Skip to content

Conversation

@drogus
Copy link
Collaborator

@drogus drogus commented Jun 28, 2023

Description of Changes

In the TypeScript SDK we keep "entries" - an algebraic value of records. I added them because they were also used in the C# SDK, but we don't really need them. This commit changes generated filtering functions so that they compare actual instances instead of product values.

API

  • This is a breaking change to the module API
  • This is a breaking change to the ClientAPI

If the API is breaking, please state below what will break

drogus added 3 commits June 28, 2023 08:54
In the TypeScript SDK we keep "entries" - an algebraic value of records.
I added them because they were also used in the C# SDK, but we don't
really need them. This commit changes generated filtering functions so
that they compare actual instances instead of product values.
@drogus drogus enabled auto-merge (squash) June 29, 2023 14:35
@drogus drogus disabled auto-merge June 29, 2023 17:44
@drogus drogus enabled auto-merge (squash) June 30, 2023 23:21
Copy link
Contributor

@dbrinkmanncw dbrinkmanncw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good

writeln!(output).unwrap();

<<<<<<< Updated upstream
=======
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

diff markers?

@drogus drogus merged commit 46b0ca1 into master Jul 1, 2023
cloutiertyler pushed a commit that referenced this pull request Aug 1, 2023
* [TypeScript] Remove entries from filtering

In the TypeScript SDK we keep "entries" - an algebraic value of records.
I added them because they were also used in the C# SDK, but we don't
really need them. This commit changes generated filtering functions so
that they compare actual instances instead of product values.
cloutiertyler pushed a commit that referenced this pull request Aug 1, 2023
* [TypeScript] Remove entries from filtering

In the TypeScript SDK we keep "entries" - an algebraic value of records.
I added them because they were also used in the C# SDK, but we don't
really need them. This commit changes generated filtering functions so
that they compare actual instances instead of product values.
@cloutiertyler cloutiertyler deleted the drogus/typescript-remove-entry branch August 1, 2023 21:56
bfops added a commit that referenced this pull request Jul 17, 2025
* doc: Onboarding impr, fixes, consistency, cleanup

refactor: Whats next cleanup, +unity, -bloat

Removed redundant text while there

refactor: Unity quickstart fixes, impr, prettify

refactor: Unity pt1 fixes, impr, prettify

fix(README): Rm "see test edits below" ref

* !exists

refactor(minor): General onboarding cleanup

* Shorter, prettier, consistent

fix(sdks/c#): Broken unitypackage url

feat(sdks/c#): Add OneTimeQuery api ref

* doc: Onboarding impr, fixes, consistency, cleanup

* fix: Rm redundant 'module_bindings' mention

* fix: Floating period, "arbitrary", "important":

- PR review change requests
- Additionally: hasUpdatedRecently fix and reformatting

* fix: Mentioned FilterBy, used FindBy

- Used FindBy since that was what the tutorial used, and also looking for a single Identity.
- Note: There may be a similar rust discrepancy in the Unity pt1 tutorial. It'll work with Filter, but just simply less consistent. Holding off on that since my Rust syntax knowledge !exists.

* fix(Unity-pt1): Rm copy+paste redundant comments

* Duplicate comments found both above and within funcs

* fix(unity): Rm unused using statement +merged info

* Removed `System.Runtime.CompilerServices`
* SpacetimeDB.Module seems to already include this (merged the info)

* refactor(minor): Code spacing for grouping/clarity

* feat: 'Standalone mode runs in foreground' memo

* At general quickstart for `spacetime start`

* refactor(unity-pt1): Standalone mode foreground memo

* Also, removed the "speed" loss mention of C#

* fix(syntaxErr): Fix err, keep FilterBy, handle null

- After a verbose discussion, we will eventually swap to FindBy for single-result queries, but not in this PR.
- For now, the syntax err is fixed by making the var nullable and suffixing a LINQ FirstOrDefault(). Approved by Tyler in Discord.
- We never *actually* created a player in the tutorial. This creates the player. Approved by Tyler in Discord.

* doc!(unity-tutorial): Add C# module parity + split

- Why?
  - Despite being a Unity tutorial (we 100% know the user knows C#), the server example used Rust.
  - This creates friction when the user is already learning multiple new things: The SpacetimeDB architecture, the CLI, the client SDK and server SDK. If they previously did not know Rust, this could add some weight to the onboarding friction.
  - The Unity tutorial could use an overview since it's quite lengthy and progressive.
  - Part1 should be split, anyway - it covers way too much for a single section to handle (especially since it jumps between client and server). Splitting between basic multiplayer + advanced makes things more-manageable and less intimidating.

- Before:
  - UNITY TUTORIAL
    - Part1 (Client + Rust Server)
    - Part2 (Resources and Scheduling)
    - Part3 (BitCraft Mini)

- After:
  - UNITY TUTORIAL - BASIC MULTIPLAYER
    - Overview
    - Part1 (Setup)
    - Part2a (Rust Server)
    - Part2b (C# Server)
    - Part3 (Client)
  - UNITY TUTORIAL - ADVANCED
    - Part4 (Resources and Scheduling)
    - Part5 (BitCraft Mini)

* Update docs/unity/part-2b-c-sharp.md

Rust -> C#

Co-authored-by: Zeke Foppa <[email protected]>

* Update docs/unity/part-2b-c-sharp.md

- `--lang=rust` to `=csharp`

Co-authored-by: Zeke Foppa <[email protected]>

* Update docs/unity/part-2b-c-sharp.md

- Rm RustRover mention

Co-authored-by: Zeke Foppa <[email protected]>

* Update docs/unity/part-2b-c-sharp.md

- Rust -> C#

Co-authored-by: Zeke Foppa <[email protected]>

* fix: "Next tutorial" mixups

* fix: Bad troubleshooting links

- Server issues shouldn't link to Client troubleshooting that has no answer

* Update docs/unity/part-2b-c-sharp.md

Co-authored-by: Zeke Foppa <[email protected]>

* Update docs/unity/part-2a-rust.md

Co-authored-by: Zeke Foppa <[email protected]>

---------

Co-authored-by: Zeke Foppa <[email protected]>
bfops pushed a commit that referenced this pull request Jul 17, 2025
* One-off query support (#49)

* SpacetimeDBURI argument in place of host and ssl enabled bool (#52)

* SpacetimeDBURI argument in place of host and ssl enabled bool

* Small cleanup

---------

Co-authored-by: John Detter <[email protected]>

* Add support for client address; re-run `spacetime generate` for quickstart client (#54)

* README.md and License.txt updates (#53)

* Update README.md

* Add license.txt

* Rename

* Add LICENSE.txt with proper case

---------

Co-authored-by: Derek Brinkmann <[email protected]>

* Add support for client address; re-run `spacetime generate` for quickstart client

Re: #299

---------

Co-authored-by: dbrinkmanncw <[email protected]>
Co-authored-by: Derek Brinkmann <[email protected]>

* Making Quickstart Work Again (#57)

* Packaged nuget package, quickstart is now working again

* Reset DBNAME

---------

Co-authored-by: John Detter <[email protected]>

* OnUnhandledReducerError (#31)

Co-authored-by: Steve <[email protected]>
Co-authored-by: Boppy <[email protected]>

---------

Co-authored-by: james gilles <[email protected]>
Co-authored-by: dbrinkmanncw <[email protected]>
Co-authored-by: John Detter <[email protected]>
Co-authored-by: Phoebe Goldman <[email protected]>
Co-authored-by: Derek Brinkmann <[email protected]>
Co-authored-by: SteveBoytsun <[email protected]>
Co-authored-by: Steve <[email protected]>
bfops pushed a commit that referenced this pull request Aug 7, 2025
* One-off query support (#49)

* SpacetimeDBURI argument in place of host and ssl enabled bool (#52)

* SpacetimeDBURI argument in place of host and ssl enabled bool

* Small cleanup

---------

Co-authored-by: John Detter <[email protected]>

* Add support for client address; re-run `spacetime generate` for quickstart client (#54)

* README.md and License.txt updates (#53)

* Update README.md

* Add license.txt

* Rename

* Add LICENSE.txt with proper case

---------

Co-authored-by: Derek Brinkmann <[email protected]>

* Add support for client address; re-run `spacetime generate` for quickstart client

Re: #299

---------

Co-authored-by: dbrinkmanncw <[email protected]>
Co-authored-by: Derek Brinkmann <[email protected]>

* Making Quickstart Work Again (#57)

* Packaged nuget package, quickstart is now working again

* Reset DBNAME

---------

Co-authored-by: John Detter <[email protected]>

* OnUnhandledReducerError (#31)

Co-authored-by: Steve <[email protected]>
Co-authored-by: Boppy <[email protected]>

---------

Co-authored-by: james gilles <[email protected]>
Co-authored-by: dbrinkmanncw <[email protected]>
Co-authored-by: John Detter <[email protected]>
Co-authored-by: Phoebe Goldman <[email protected]>
Co-authored-by: Derek Brinkmann <[email protected]>
Co-authored-by: SteveBoytsun <[email protected]>
Co-authored-by: Steve <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants