1. 25 Jun, 2019 1 commit
  2. 06 Jun, 2019 1 commit
    • Nathan Harris's avatar
      Rename `NIORedis` to `RedisNIO` · e81f9546
      Nathan Harris authored
      The SSWG has identified a fast approaching reality of namespace clashes in SPM within the ecosystem and has proposed a rule on names that `NIORedis` no longer complies with.
      All references to `NIORedis` have been switched to `RedisNIO` as this module name is unique (at least within GitHub's public repositories).
      The goals for this name are as follows:
      1. To indicate that this is a Redis client library that is built with SwiftNIO
      2. That it is a lower level library, as it directly exposes SwiftNIO as an implementation detail
          2a. The idea being that a higher level library (`Redis`) will be used, and to "go one level deeper" in the stack, you append the "deeper" `NIO` postfix
      3. It follows a naming pattern adopted by Vapor who has expressed their desire to adopt this library as their Redis implementation
      A repository, package name, and module name that are unique across GitHub's public repositories that achives the goals outlined above.
  3. 01 May, 2019 1 commit
  4. 30 Apr, 2019 1 commit
    • Nathan Harris's avatar
      Standardize Error Handling · 46e96bd9
      Nathan Harris authored
      `RedisError` was being used in many places in an ad-hoc fashion that made it unclear as to what source of errors it exactly represents.
      In addition, it doesn't follow community conventions of handling known "classes" of errors with enums rather than static struct instances.
      All errors that are generated and thrown within the library are specified as either `RESPDecoder.Error` or `NIORedisError`.
      `RedisError` is simplified to represent an error message sent by a Redis instance that conforms to `LocalizedError`.
  5. 01 Apr, 2019 1 commit
    • Nathan Harris's avatar
      Replace `Foundation.Data` with `[UInt8]` type everywhere · 3c53d440
      Nathan Harris authored
      `Foundation.Data` is known to be more expensive than is necessary for this low level of a library, and has some quirks with its usage.
      This library now works with byte arrays (`[UInt8]`) directly, and all references to `Foundation` now explicitly import the exact types they need.
  6. 28 Mar, 2019 2 commits
    • Nathan Harris's avatar
      Remove `authorize` convenience command method · 2b7b2130
      Nathan Harris authored
      As this command is embedded in the creation of a `RedisConnection` and you authorize an entire connection to a Redis instance - this command serves no purpose and could make it easier for users to shoot themselves in the foot.
      `authorize(with:)` convenience method is removed, and the `RedisConnection.connect` method now sends a raw command
    • Nathan Harris's avatar
      Simplify `RedisCommandExecutor` and `RedisConnection` · 9f049eb4
      Nathan Harris authored
      `RedisCommandExecutor` was a complex and "wordy" name that was not 100% clear as to how it relates to other types.
      `RedisConnection` also has not had a strong use case shown for it to exists as a separate protocol - using up a great name for the "out of the box" implementation.
      `RedisClient` instead of `RedisCommandExecutor` is more clear as to what it is, in Redis terminology, a communication client.
      `RedisConnection` as a concrete class provides an identifiable basic block for making connections to Redis.
      `RedisConnection` also saw some fixes to `close()` while having some names and comment blocks tweaked for updated naming.
  7. 25 Mar, 2019 1 commit
  8. 21 Mar, 2019 2 commits
  9. 20 Mar, 2019 3 commits
  10. 19 Mar, 2019 2 commits
  11. 12 Mar, 2019 1 commit
    • Nathan Harris's avatar
      Housekeeping of code · 571d7bce
      Nathan Harris authored
      - Move: `String.convertedToData()` to `NIORedisTests` as a test utility
      - Change: URLs in code comments to be Markdown links
      - Change: Code comments to be more correct
  12. 07 Feb, 2019 1 commit
  13. 10 Jan, 2019 1 commit
  14. 09 Jan, 2019 1 commit
  15. 22 Dec, 2018 2 commits