Awesome
FSharp.Control.Redis.Streams
FSharp.Control.Redis.Streams is a library dedicated to bridging Redis Streams with .NET Streaming technologies.
Currently Supported:
Builds
MacOS/Linux | Windows |
---|---|
No Redis 5.0 Support On Windows | |
No Redis 5.0 Support On Windows |
Nuget
Package Name | Stable | Prerelease |
---|---|---|
FSharp.Control.Redis.Streams | ||
FSharp.Control.Redis.Streams.Akka | ||
FSharp.Control.Redis.Streams.Hopac | ||
FSharp.Control.Redis.Streams.Reactive |
Developing
Building
Make sure the following requirements are installed in your system:
- dotnet SDK 2.0 or higher
- Mono if you're on Linux or macOS.
- docker-compose
Stand up redis via docker:
docker-compose up
Build:
> build.cmd // on windows
$ ./build.sh // on unix
Environment Variables
CONFIGURATION
will set the configuration of the dotnet commands. If not set it will default to Release.CONFIGURATION=Debug ./build.sh
will result in things likedotnet build -c Debug
GITHUB_TOKEN
will be used to upload release notes and nuget packages to github.- Be sure to set this before releasing
DISABLE_COVERAGE
Will disable running code coverage metrics. AltCover can have severe performance degradation so it worth disabling when looking to do a quicker feedback loop.DISABLE_COVERAGE=1 ./build.sh
Watch Tests
The WatchTests
target will use dotnet-watch to watch for changes in your lib or tests and re-run your tests on all TargetFrameworks
./build.sh WatchTests
Releasing
git add .
git commit -m "Scaffold"
git remote add origin origin https://github.com/user/MyCoolNewLib.git
git push -u origin master
paket config add-token "https://www.nuget.org" 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a
-
- You can then set the
GITHUB_TOKEN
to upload release notes and artifacts to github - Otherwise it will fallback to username/password
- You can then set the
-
Then update the
RELEASE_NOTES.md
with a new version, date, and release notes ReleaseNotesHelper
#### 0.2.0 - 2017-04-20
* FEATURE: Does cool stuff!
* BUGFIX: Fixes that silly oversight
- You can then use the
Release
target. This will:- make a commit bumping the version:
Bump version to 0.2.0
and add the release notes to the commit - publish the package to nuget
- push a git tag
- make a commit bumping the version:
./build.sh Release
Code formatting
To format code run the following target
./build.sh FormatCode
This uses Fantomas to do code formatting. Please report code formatting bugs to that repository.