Helge Heß
5ed088b48a
Merge branch 'develop'
2019-03-27 19:13:14 +01:00
Helge Heß
44b14b7149
Fix Swift 4.x warnings
...
... public in fileprivate and such.
2019-03-27 19:08:44 +01:00
Helge Heß
94c52948ee
Merge branch 'develop'
2019-03-27 14:56:56 +01:00
Helge Heß
644b39b12d
Can't work w/o proper Swift 5 badge
...
Add it.
2019-03-27 14:25:29 +01:00
Helge Heß
59355c9d9c
Swift 5: ContiguousCollection => Collection
...
Not quite sure whether this produces a performance
regression.
2019-03-27 14:23:33 +01:00
Helge Heß
681548ab70
Swift 5 / NIO 2: self.add(name:handler:) -> addHandler
...
Also the first/last enum.
2019-03-27 14:22:46 +01:00
Helge Heß
3005e79cb3
Swift 5 / NIO 2: write(xyz:) -> writeXYZ()
...
Same for write(integer:). Use fileprivate shim w/
NIO 2 API.
2019-03-27 14:22:25 +01:00
Helge Heß
e208929877
Swift 5: Add Package\@swift-5.swift
...
Compile module against NIO 2 when Swift 5 is available.
2019-03-27 12:59:41 +01:00
Helge Heß
98abedac3a
Merge branch 'develop'
2019-03-26 19:09:49 +01:00
Helge Heß
8de66b76e9
Travis: Tie to Swift 4.2
...
Do not build w/ Xcode 9.x. Doesn't know about #compiler
2019-03-26 19:09:14 +01:00
Helge Heß
f2b3614b8b
Merge branch 'develop'
2019-03-26 19:01:25 +01:00
Helge Heß
20dc5d534b
Swift 5: public public
...
Fix warnings when compiling w/ Swift 5 compiler in 4.x
mode.
2019-03-26 18:59:51 +01:00
Helge Heß
b191d630fd
Whitespace ...
...
...
2019-03-26 18:57:17 +01:00
Helge Heß
ad86e6ca55
Update NIO version to 1.13.2
...
... not 2 yet, probably need a branch for this.
2019-03-26 18:56:25 +01:00
Helge Heß
2b9593bf91
Travis: Build against 5.0
...
... also update 4.2.3 and drop some older
swifts, which we don't really care about?
2019-03-26 18:55:27 +01:00
Helge Heß
49c0b96348
README: Fix badge
...
... point to right travis.
2018-07-26 12:40:27 +02:00
Helge Heß
33b3f08053
Merge branch 'develop'
2018-07-26 12:04:37 +02:00
Helge Heß
612b356679
Travis: Use 4.1.1 instead of 4.1.0
...
... only the latest is the greatest.
2018-07-26 12:04:06 +02:00
Helge Heß
85cab3c4ce
Travis: Use 4.1.1 instead of 4.1.0
...
... only the latest is the greatest.
2018-07-26 12:03:18 +02:00
Helge Heß
cc2abf7518
Merge branch 'develop'
2018-07-26 11:59:35 +02:00
Helge Heß
42ada111a4
Traivs: Add Xcode 9.4 and Linux 4.2 snap
...
Test builds on more platforms.
2018-07-26 11:58:39 +02:00
Helge Heß
60cc0feb25
Drop Redis client
...
This module is going to be just the plain NIO Redis
protocol implementation. The "opinionated" client
is dropped from the module. Get it over at Noze.io.
2018-07-26 11:48:13 +02:00
Helge Heß
2a962938ce
Merge branch 'develop'
2018-06-09 11:17:39 +02:00
Helge Hess
c3720e219d
Add a CONTRIBUTING.md, fix indent
...
... beautz is in the eye of the beholder.
2018-06-09 10:40:03 +02:00
Helge Heß
1a55bd2031
Merge pull request #4 from vkill/feature/add-tests
...
Add some tests
2018-06-09 10:27:32 +02:00
vkill
a31aca0cda
Add some tests
2018-06-02 23:10:20 +08:00
Helge Heß
35a408ee60
Update NIO to 1.8.0
...
... and don't use deprecated API anymore.
2018-05-31 17:29:56 +02:00
Helge Heß
57a3f2dea4
Beautz is in the eye of the beholder
...
... maybe. Maybe not.
2018-05-31 17:22:45 +02:00
Helge Heß
de26ed6b35
Make RESPError CustomStringConvertible
...
... so that we get something useful when printing the error.
2018-05-31 17:19:38 +02:00
Helge Heß
fb3afb9721
Share event-loop-group between client connections
...
... if the client is free-standing (not invoked from
an existing eventloop), use a shared group.
2018-04-20 11:21:38 +02:00
Helge Heß
3d4e01cc77
Merge branch 'develop' of github.com:NozeIO/swift-nio-redis into develop
2018-04-20 11:20:18 +02:00
Helge Heß
0d55e7e3c4
Reuse currentEventLoop for client connection
...
If the user didn't specify an explicit eventLoop,
use the currentEventLoop. If there is none, create
a new, 1-threaded EventLoopGroup as a fallback.
2018-04-20 11:19:21 +02:00
Helge Hess
301af0f4d6
Do not hardcode host
2018-04-19 20:33:18 +02:00
Helge Heß
fb801ec102
Use Setty 1.5.0
...
https://github.com/apple/swift-nio/releases/tag/1.5.0
2018-04-19 16:56:51 +02:00
Helge Heß
542cfc17b4
Move byte buffer stuff to own file
...
Maybe I should submit that to NIO itself.
2018-04-16 17:19:53 +02:00
Helge Heß
e7372d4173
Merge branch 'develop'
2018-04-14 11:17:16 +02:00
Helge Heß
db37a8da9c
Rename RedisChannelHandler to RESPChannelHandler
...
Fix name.
2018-04-14 11:16:20 +02:00
Helge Heß
aaf1b706c4
OMG - indent wrong!!!
...
No lint no fun.
2018-04-13 18:24:07 +02:00
Helge Heß
a904c4bae6
Merge branch 'develop'
2018-04-13 18:17:59 +02:00
Helge Heß
dae92a76ac
Perf: Use more BB(integerAsString:)
...
... faster.
2018-04-13 18:15:57 +02:00
Helge Heß
9fe1bce783
itoa
2018-04-13 18:11:11 +02:00
Helge Heß
9011f2097c
Reduce size of RESPValue from 49 to 25
...
By backing RESPError fields in a class.
This way it isn't taking up storage in
each and every RESPValue.
25 is still > 24 though :-)
(thanks to @weissi for the suggestion)
2018-04-13 16:50:21 +02:00
Helge Heß
7339dbdcd6
Merge branch 'develop'
2018-04-13 15:55:42 +02:00
Helge Heß
5b78b9db82
And a public init
...
... empty, just to make init public ...
2018-04-13 15:39:56 +02:00
Helge Heß
4631728dab
Open up more functions
...
... that we wanna override.
2018-04-13 15:35:31 +02:00
Helge Heß
4672c49331
Make RESPChannelHandler work as a base-class
...
... so that we subclass it.
Intention: workaround NIOAny wrapping overhead.
2018-04-13 15:32:04 +02:00
Helge Heß
8e12a8a910
Keep array context values around
...
... this may be a no-op optimization,
but well.
It is actually trigger to do the right thing here.
In this version we flush the `values` array, which
transfers ownership of the array buffer to the
RESPValue.
But that buffer is never going to be modified, so
it would be nice to keep it alive. But if we do
keep it alive, we also keep the RESPValues alive,
which may point to full ByteBuffer's, which is
not desirable.
Whatever you do in Swift, you loose ;-)
2018-04-13 15:04:02 +02:00
Helge Heß
9c42e91687
Use array for ParserState
...
Disadvantage is that we cannot reuse the
Contiguous value array for the top-level
item.
(we could try to cache the struct in an
ivar w/ a few hops).
Another option would be to use a fixed
size array or even a buffer-bptr to avoid
the range checks.
2018-04-13 14:36:46 +02:00
Helge Heß
0f6b7baa77
Move RESPParser to own file/struct
...
Instead of being embedded in the RedisChannel,
move the parser out, into an own struct.
This way we may be able to avoid NIO channel
pipeline overhead (NIOAny wrapping).
2018-04-13 13:45:19 +02:00
Helge Heß
ed657cd709
Merge branch 'develop'
2018-04-12 16:19:40 +02:00