## Description of Changes
This PR fixes one issue and adds regression tests for it, plus another
issue. These regression tests are run on CI. You can also run them
locally -- run a local spacetime instance and then
`tools~/run-regression-tests.sh ../SpacetimeDB`).
### Issue 1: Unsubscribe is non-functional
See
https://github.com/clockworklabs/com.clockworklabs.spacetimedbsdk/issues/279.
This was a coding mistake made during the rush to 1.0. It was easily
fixed.
### Issue 2: Indexes not tracking deletes
This was recently discovered by the BitCraft team.
The problem was introduced in
https://github.com/clockworklabs/com.clockworklabs.spacetimedbsdk/commit/cefc727b7693fe97e3dd848fef2bb17bf20c8be6
which introduced `RemoteTableHandle<EventContext,
Row>.IndexBase<Column>`. This class stores a `Dictionary<Column,
List<Row>>` to allow fast filtering. It relies on `List<Row>.Remove` to
remove elements from a list when a row delete is received.
`List<Row>.Remove` relies on `Row.Equals` to determine when elements are
equal.
`Row.Equals` formerly was not implemented for `[SpacetimeDB.Type]`s or
for generated Row types. So, this didn't work.
Now it does: it was fixed by
https://github.com/clockworklabs/SpacetimeDB/pull/239 . So all this PR
does to address this issue is add a regression test.
## API
- [x] This is an API breaking change to the SDK
The interface IDbConnection was changed; however, this changed part of
the interface is `internal`, so this should be entirely invisible to
users.
## Requires SpacetimeDB PRs
https://github.com/clockworklabs/SpacetimeDB/pull/239 (merged)
## Testsuite
*If you would like to run the your SDK changes in this PR against a
specific SpacetimeDB branch, specify that here. This can be a branch
name or a link to a PR.*
SpacetimeDB branch name: master
## Testing
*Write instructions for a test that you performed for this PR*
- [x] Added a repro for both issues
- [x] Added the repro to CI
- [x] Fixed both issues
## Description of Changes
Bumped version numbers to 1.1.0.
## API
- [ ] This is an API breaking change to the SDK
No, this just updates to the latest version.
## Requires SpacetimeDB PRs
https://github.com/clockworklabs/SpacetimeDB/pull/2518
## Testsuite
SpacetimeDB branch name: bfops/bump-version
## Testing
- [x] Existing CI passes (when pointed at the corresponding SpacetimeDB
branch)
Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
Updates package version to 1.0.1
## API
- [ ] This is an API breaking change to the SDK
## Requires SpacetimeDB PRs
No specific PR needed
## Testsuite
SpacetimeDB branch name: release/v1.0.1
## Testing
- [X] Confirmed Unity sees version as 1.0.1 after change
## Description of Changes
I don't know if the DLLs need updating, but updated the DLLs just in
case.
## API
Incorporate any chances in SpacetimeDB 1.0.1. There should be no
breaking changes.
## Requires SpacetimeDB PRs
*List any PRs here that are required for this SDK change to work*
## Testsuite
SpacetimeDB branch name: release/v1.0.1
## Testing
None. Will test in release.
---------
Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
## Description of Changes
Updated two README docs:
* README.md - Updated links to point to Blackholio repo and tutorial
docs.
* README.dotnet.md - Updated to point to new URL paths for C# SDK
Quickstart and Reference docs.
## API
- [ ] This is an API breaking change to the SDK
## Requires SpacetimeDB PRs
N/A - Docs only change
## Testsuite
N/A - Docs only change
SpacetimeDB branch name: master
## Testing
- [X] Clicked on each new link and confirm the browser can locate the
new locations.
---------
Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
Co-authored-by: John Detter <no-reply@boppygames.gg>
Adds an additional test of the `GenericEqualityComparer` function for
`Integer`, `String`, `Byte Array`, `Identity`, `User` and `TaggedEnum` type
comparisons.
This PR resolves additional checks as reported in by [Issue
230](https://github.com/clockworklabs/com.clockworklabs.spacetimedbsdk/issues/230)
that where not-yet covered elsewhere.
## API
- [ ] This is an API breaking change to the SDK
## Requires SpacetimeDB PRs
No other PR are needed for this to work.
## Testsuite
SpacetimeDB branch name: master
## Testing
- [X] Locally ran `dotnet test` against the `tests.csproj` project and
it passed all tests
## Description of Changes
*Describe what has been changed, any new features or bug fixes*
I've already pushed this out to nuget here:
<https://www.nuget.org/packages/SpacetimeDB.ClientSDK>
- We want to update our REAME on nuget.org because the README that we
released as part of 1.0.1 was very much out of date.
## API
- [ ] This is an API breaking change to the SDK
*If the API is breaking, please state below what will break*
## Requires SpacetimeDB PRs
*List any PRs here that are required for this SDK change to work*
NA
## Testsuite
*If you would like to run the your SDK changes in this PR against a
specific SpacetimeDB branch, specify that here. This can be a branch
name or a link to a PR.*
SpacetimeDB branch name: master
## Testing
*Write instructions for a test that you performed for this PR*
- [x] The README is updated.
Co-authored-by: John Detter <no-reply@boppygames.gg>
## Description of Changes
Relaxed this version number from `1.0.0` to `1.0.*`
## API
No breaking changes.
## Requires SpacetimeDB PRs
None
## Testsuite
SpacetimeDB branch name: master
## Testing
Existing CI should run `dotnet test` and confirm that this is not
broken.
---------
Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>