Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from clockworklabs:master #2

Open
wants to merge 328 commits into
base: master
Choose a base branch
from
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Apr 9, 2024

  1. Configuration menu
    Copy the full SHA
    5203b01 View commit details
    Browse the repository at this point in the history

Commits on Apr 10, 2024

  1. Configuration menu
    Copy the full SHA
    8902b08 View commit details
    Browse the repository at this point in the history
  2. disable iter metrics (#1074)

    * disable iter metrics
    
    * not comment out for non-iters
    
    * remove explicit drop as clippy cried
    Shubham8287 committed Apr 10, 2024
    Configuration menu
    Copy the full SHA
    b928387 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    abdaf88 View commit details
    Browse the repository at this point in the history

Commits on Apr 11, 2024

  1. core: Make init_module_host consistent with update_module_host (#977

    )
    
    `spawn_module_host` was changed in #904 to ensure that the supplied
    program is indeed the database's current program. There are, however,
    uses which would call `spawn_module_host`, followed by either
    `init_database` or `update_database` on the returned `ModuleHost`.
    
    This would fail because the condition is not met.
    
    While we cannot prevent misuse, this patch documents the various
    lifecycle methods, and adjusts the signature of `init_module_host` to be
    (somewhat) consistent with `update_module_host`. Namely, it will
    optionally return the result of the `init` reducer call.
    kim committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    29c997c View commit details
    Browse the repository at this point in the history
  2. Durability: Traits and implementation in terms of commitlog (#922)

    Defines traits intended to abstract over the kind of persistence a
    database utilizes. The only implementation is (host-)local durability in
    terms of the new commitlog crate.
    
    The trait definitions may not be considered stable yet, but are in their
    tentative form needed for further integration of the new commitlog.
    kim committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    02be002 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    29970d2 View commit details
    Browse the repository at this point in the history
  4. Swap the location of tags in the BFLATN encoding (#1063)

    * Swap the location of tags to go before variant data in the BFLATN encoding
    
    * Fix a comment
    
    * Apply suggestions from code review (@gefjon @Centril)
    
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Co-authored-by: Phoebe Goldman <phoebe@clockworklabs.io>
    Signed-off-by: james gilles <jameshgilles@gmail.com>
    
    * Implement memcpy consolidation for sums
    
    * Vanquish clippy
    
    ---------
    
    Signed-off-by: james gilles <jameshgilles@gmail.com>
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Co-authored-by: Phoebe Goldman <phoebe@clockworklabs.io>
    3 people committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    b9cee3d View commit details
    Browse the repository at this point in the history
  5. core: Integrate new commitlog + durability (#926)

    This patch attempts to integrate the new commitlog with the minimum
    changes.
    
    Most of the diff comes from deletions of the legacy log and the need to
    adjust tests due to the requirement for a tokio runtime when a durable
    database is used in tests.
    
    The "meat" of the patch are the `RelationalDB` constructors,
    `RelationalDB::commit_tx`, and the replay logic in
    `locking_tx_datastore`.
    
    While `DataKey` is gone, there is still some redundant data being passed
    around, which will be addressed in the follow-up patch.
    kim committed Apr 11, 2024
    Configuration menu
    Copy the full SHA
    4704855 View commit details
    Browse the repository at this point in the history

Commits on Apr 12, 2024

  1. core: More compact TxData (#950)

    `TxData` is the representation of a transaction after it was committed,
    and is passed around for evaluation of subscription queries and sending
    the result to clients.
    
    With the new commitlog, it can be represented more compactly, such that
    copies for writing to the log can be avoided.
    
    Note that this patch stops short of refactoring `DatabaseUpdate`, which
    is another representation of the same information as sent to clients.
    This means that `ProductValue`s need to be cloned from `TxData`, just as
    before.
    kim committed Apr 12, 2024
    Configuration menu
    Copy the full SHA
    be67d1a View commit details
    Browse the repository at this point in the history
  2. core,commitlog: Re-instantiate commitlog disk usage reporting (#955)

    Disk usage reporting was left unimplemented in previous patches of the
    series, as its semantics are slightly different from before.
    
    Namely, inspecting the size of the commitlog now requires to `stat(2)`
    the segment files, and is thus fallible.
    
    Also, a size reporting function is only defined for local durability
    (i.e. the commitlog). The behaviour when the database is in a follower
    state is left unspecified.
    kim committed Apr 12, 2024
    Configuration menu
    Copy the full SHA
    838e869 View commit details
    Browse the repository at this point in the history
  3. Table: skip alignment checks in eq_row_in_page and hash_row_in_page (#…

    …1085)
    
    * Table: skip alignment checks in eq_row_in_page and hash_row_in_page
    
    * Whoops, those comments can stay the same.
    kazimuth committed Apr 12, 2024
    Configuration menu
    Copy the full SHA
    1c2e63e View commit details
    Browse the repository at this point in the history
  4. core: Don't persist empty transactions (#1086)

    Fix a minor bug where completely empty transactions would still be
    written to the commitlog. The bug is minor because, once we start
    logging inputs, all transactions will be non-empty.
    
    The check is done in relational DB rather than the durability crate,
    because in principle empty transactions are permissible, and may be used
    in the future (e.g. to confirm a certain offset).
    kim committed Apr 12, 2024
    Configuration menu
    Copy the full SHA
    4cd17d7 View commit details
    Browse the repository at this point in the history

Commits on Apr 13, 2024

  1. Configuration menu
    Copy the full SHA
    d6815eb View commit details
    Browse the repository at this point in the history

Commits on Apr 15, 2024

  1. Fix iai-callgrind rustc version mismatch (#1025)

    * Fix iai-callgrind rustc version mismatch
    
    * Two spaces
    
    * Future-proof
    kazimuth committed Apr 15, 2024
    Configuration menu
    Copy the full SHA
    f423838 View commit details
    Browse the repository at this point in the history

Commits on Apr 16, 2024

  1. nuke DataKey (#1093)

    Centril committed Apr 16, 2024
    Configuration menu
    Copy the full SHA
    5e78223 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b428844 View commit details
    Browse the repository at this point in the history
  3. Make Table::clone_structure cheaper by: (#1090)

    - Arcing `TableSchema`, and this has benefits elsewhere too.
    - Arc<[_]>ing the visitor program instructions.
    
    The data behind the Arcs very rarely change,
    which is the perfect case for an Arc.
    Centril committed Apr 16, 2024
    Configuration menu
    Copy the full SHA
    f560101 View commit details
    Browse the repository at this point in the history

Commits on Apr 17, 2024

  1. Slow query log (#1052)

    * Slow query log
    
    * Addressing some PR comments
    mamcx committed Apr 17, 2024
    Configuration menu
    Copy the full SHA
    7d5eb15 View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2024

  1. core: Store inputs (reducer info + args) in commitlog (#1091)

    Prerequisite for auto-disconnect after a database crash, requested for
    analytics purposes.
    kim committed Apr 18, 2024
    Configuration menu
    Copy the full SHA
    2894d36 View commit details
    Browse the repository at this point in the history
  2. slow query log: only use Instant::now when needed + refactor (#1110)

    * slow query log: only use Instant::now when needed + refactor
    
    * address Joshua's review
    Centril committed Apr 18, 2024
    Configuration menu
    Copy the full SHA
    ce7d9b0 View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2024

  1. fix(1115): Identify subscribers by Identity AND Address (#1121)

    Closes #1115.
    
    Previously subscribers were only identified by their Identity.
    However the same Identity can be associated to different Addresses.
    joshua-spacetime committed Apr 19, 2024
    Configuration menu
    Copy the full SHA
    18bf7ee View commit details
    Browse the repository at this point in the history
  2. Re-instantiate replay progress reporting (#1096)

    * durability: Introduce a method to obtain the max tx offset of a history
    
    Useful for reporting replay progress.
    Include note that it is somewhat similar to `std::iter::Iterator::size_hint`.
    
    * core: Re-instantiate replay progress reporting
    
    The percentage is calculated as starting from the zero offset, although
    that may change in the future.
    kim committed Apr 19, 2024
    Configuration menu
    Copy the full SHA
    bee6ae1 View commit details
    Browse the repository at this point in the history
  3. cli: Suggest to make new identity the default for server (#1109)

    When a server key rotation is suspected, suggest to make the new
    identity the default.
    
    This usually happens during development using an ephemeral instance. If
    one follows the instructions, the `default_identity` is not set for the
    existing server, which makes the CLI generate a fresh identity every
    time.
    
    See also: #333
    kim committed Apr 19, 2024
    Configuration menu
    Copy the full SHA
    dcfbf68 View commit details
    Browse the repository at this point in the history
  4. commitlog: Support traversal without opening the log (#1103)

    Traversing the commitlog without also making it available for writing
    would still require upfront I/O imposed by the `open` constructor.
    
    Avoid that by introducing free-standing functions which start traversal
    right away.
    kim committed Apr 19, 2024
    Configuration menu
    Copy the full SHA
    06d5481 View commit details
    Browse the repository at this point in the history
  5. Default commitlog to info logs (#1123)

    Co-authored-by: John Detter <no-reply@boppygames.gg>
    jdetter and John Detter committed Apr 19, 2024
    Configuration menu
    Copy the full SHA
    c9381af View commit details
    Browse the repository at this point in the history

Commits on Apr 22, 2024

  1. Configuration menu
    Copy the full SHA
    8f85da5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9797695 View commit details
    Browse the repository at this point in the history
  3. core: AnyBytes from boxed slice (#1133)

    Avoids an unnecessary roundtrip through `Vec<u8>` in private#731.
    kim committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    3c6b60a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    db6f156 View commit details
    Browse the repository at this point in the history
  5. Build uses -S for skip clippy (#1129)

    Co-authored-by: John Detter <no-reply@boppygames.gg>
    jdetter and John Detter committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    64fe230 View commit details
    Browse the repository at this point in the history
  6. Use -s to specify server for spacetime identity list -s <server> (#1130)

    Co-authored-by: John Detter <no-reply@boppygames.gg>
    jdetter and John Detter committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    06f766f View commit details
    Browse the repository at this point in the history
  7. Fixes an inconsistency issue with spacetime server fingerprint -s <se…

    …rver> (#1131)
    
    Co-authored-by: John Detter <no-reply@boppygames.gg>
    jdetter and John Detter committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    2712844 View commit details
    Browse the repository at this point in the history
  8. Remove Column.col_id field (#1136)

    * Remove redundant field Column.col_id
    
    * remove redundant fn Header::ty
    
    * - move extract_table_field to only use (#1137)
    
    - remove unused get_index_by_field
    Centril committed Apr 22, 2024
    Configuration menu
    Copy the full SHA
    e1064ee View commit details
    Browse the repository at this point in the history

Commits on Apr 24, 2024

  1. - Ignore discriminants in Hash for AlgebraicValue (#1057)

    - Nix len-prefixing in `Hash for ProductValue`
    - Ignore discriminants in `Hash for ArrayValue`
    Centril committed Apr 24, 2024
    Configuration menu
    Copy the full SHA
    8b12d3f View commit details
    Browse the repository at this point in the history
  2. Reduce unwrap noise in CLI generate code (#1142)

    This adds a non-fallible `write_fmt` method to `CodeIndenter<String>` (since we know it should never fail), which allows to use `write!` and `writeln!` without `.unwrap()` everywhere, making code a lot less noisy.
    RReverser committed Apr 24, 2024
    Configuration menu
    Copy the full SHA
    d3db4a1 View commit details
    Browse the repository at this point in the history
  3. Fix codegen tests (#1146)

    While working on the new C# codegen, I accidentally noticed that those tests were passing even when they clearly should've been failing due to changed output.
    
    After running with `--nocapture`, I found out it's because the tests are silently skipped and reported as successful when `rust_wasm_test.wasm` isn't built.
    
    This further led to finding that `rust_wasm_test.wasm` is never built - the relevant module results in `rust_wasm_test_module.wasm` instead - so these tests have been incorrectly passing for ages.
    
    This PR changes them to actually build the module as part of testing and updates the snapshots to latest master.
    RReverser committed Apr 24, 2024
    Configuration menu
    Copy the full SHA
    45f6cd6 View commit details
    Browse the repository at this point in the history
  4. Define Hash + Eq for BSATN (#1112)

    * add hash_bsatn + move proptest generators to sats crate
    
    * add eq_bsatn
    Centril committed Apr 24, 2024
    Configuration menu
    Copy the full SHA
    cb0c09b View commit details
    Browse the repository at this point in the history

Commits on Apr 25, 2024

  1. NFC: format C# module SDK code (#1149)

    While looking through the large diffs while splitting out small PRs out of my refactor branch, I noticed that quite a lot of noise is from me working on a formatted code and using primary constructors while the one in master is not.
    
    As such, I'm splitting out just those automated / non-functional changes into a separate PR to make subsequent functional diffs easier to read.
    RReverser committed Apr 25, 2024
    Configuration menu
    Copy the full SHA
    cdf4620 View commit details
    Browse the repository at this point in the history
  2. impl Eq for RowRef (#1135)

    Centril committed Apr 25, 2024
    Configuration menu
    Copy the full SHA
    516dfe3 View commit details
    Browse the repository at this point in the history
  3. Tests use explicit --server local (#1150)

    * [bfops/tests-use-explicit-server]: fix?
    
    * [bfops/tests-use-explicit-server]: empty
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Apr 25, 2024
    Configuration menu
    Copy the full SHA
    fbaa5ae View commit details
    Browse the repository at this point in the history
  4. CLI - Small refactor to default server configs (#1151)

    * [bfops/tests-use-explicit-server]: fix?
    
    * [bfops/tests-use-explicit-server]: empty
    
    * [bfops/default-server-inline]: do thing
    
    * [bfops/default-server-inline]: fix
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Apr 25, 2024
    Configuration menu
    Copy the full SHA
    a6d81dc View commit details
    Browse the repository at this point in the history
  5. CLI - Set default server to testnet (#1078)

    * refactor!: Change DEFAULT_HOST_NICKNAME to "testnet"
    
    - from "local"
    - Suggested by Tyler
    
    * refactor!: Change more const to default testnet srv
    
    * [bfops/tests-use-explicit-server]: fix?
    
    * [bfops/tests-use-explicit-server]: empty
    
    * [dylan/refactor/set-default-server-to-testnet]: fix?
    
    * [bfops/default-server-inline]: do thing
    
    * [bfops/default-server-inline]: fix
    
    * [dylan/refactor/set-default-server-to-testnet]: fix
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    dylanh724 committed Apr 25, 2024
    Configuration menu
    Copy the full SHA
    2085691 View commit details
    Browse the repository at this point in the history
  6. Fail CI on smoketest failures (#1155)

    * Fail CI on smoketest failures
    
    * Fix smoketests
    coolreader18 committed Apr 25, 2024
    Configuration menu
    Copy the full SHA
    44c9e89 View commit details
    Browse the repository at this point in the history
  7. NFC: inline format args in generate code (#1153)

    CLI `generate` code is a particularly heavy user of format-based macros, and so it benefits most from inlining format args where possible.
    
    This is done by adding `#![warn(clippy::uninlined_format_args)]` + running `cargo clippy --fix` followed by `cargo fmt`, so shouldn't require manual review.
    
    This is a follow-up to #1142 and, like that PR, is mainly done to make generate's code a bit cleaner and diffs simpler.
    RReverser committed Apr 25, 2024
    Configuration menu
    Copy the full SHA
    175ca25 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2024

  1. Configuration menu
    Copy the full SHA
    d2b98e0 View commit details
    Browse the repository at this point in the history
  2. Simplify C# source generator csproj (#1143)

    * Simplify source generator csproj
    
    Apparently custom scripts are no longer necessary, so removing to make maintenance simpler (noticed this while working on yet another source generator).
    
    * Add smoketest based on Ingvar's comment, + run smoketests on Windows
    
    * Whoops, don't mkdtemp outside of debugging
    
    * Make smoketest sillier
    
    * Finish up a print statement
    
    * Revert "Make smoketest sillier"
    
    This reverts commit 135b05b.
    
    * Resolve versioning issue in a non-silly, professional way.
    
    ---------
    
    Co-authored-by: James Gilles <jameshgilles@gmail.com>
    RReverser and kazimuth committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    84a7f83 View commit details
    Browse the repository at this point in the history
  3. Ignore const members in C# types (#1175)

    Const members shouldn't count as table or type fields in `[SpacetimeDB.Type]`.
    RReverser committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    48c0b4d View commit details
    Browse the repository at this point in the history
  4. Disallow calling random lifecycle reducers (#1114)

    * Disallow calling random lifecycle reducers
    
    * Add lifecycle reducer smoketest
    coolreader18 committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    0c7530f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0fa8312 View commit details
    Browse the repository at this point in the history
  6. fix(1170): Use scope guard to decrement reducer queue length (#1172)

    Fixes #1170.
    
    Also updates the bucket values for the queue length histogram.
    Also removes the max queue length metric, since the histogram should suffice.
    joshua-spacetime committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    fc3ff30 View commit details
    Browse the repository at this point in the history
  7. fix(1173): Record wait time for all reducers (#1174)

    Fixes #1173.
    
    Previously we were only recording this metric for scheduled reducers.
    We were also recording it before we acquired access to the module instance.
    Now we record it for all reducers after we acquire access to the module instance.
    
    This patch also removes max wait time since the histogram should suffice.
    joshua-spacetime committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    ac647a0 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2024

  1. NFC: few more C# shorthand syntax conversions (#1176)

    * NFC: few more C# shorthand conversions
    
    For some reason these automated refactoring conversions didn't get included in #1149.
    
    * Also remove unused usings
    
    * Restore a using that was erroneously marked as unused
    RReverser committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    5cc05b1 View commit details
    Browse the repository at this point in the history
  2. 1. Add Hash for RowRef + make it consistent with PV. (#1163)

    2. Make `RowRef::row_hash` use the above.
    3. Make `Table::insert` return a `RowRef`.
    4. Use less unsafe because of 1-3.
    5. Use `second-stack` to reuse temporary allocations in hashing and serialization.
    Centril committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    fd44242 View commit details
    Browse the repository at this point in the history
  3. NFC: reuse common parts of C# generation (#1187)

    Reuse the `indented_block` helper more and add new `CsharpAutogen` helper structure for consistent header / footer structure and reduced boilerplate.
    RReverser committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    27a7b67 View commit details
    Browse the repository at this point in the history
  4. Redefine FieldName as (TableId, ColId) (#1165)

    * redefine FieldName as (TableId, ColId)
    
    * fix & refactor tests + move MemTable/Header test helpers test code
    Centril committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    e144c40 View commit details
    Browse the repository at this point in the history
  5. impl PartialEq<ProductValue> for RowRef (#1164)

    * impl PartialEq<ProductValue> for RowRef
    
    * Apply Phoebe's suggestions
    
    Co-authored-by: Phoebe Goldman <phoebe@clockworklabs.io>
    Signed-off-by: Mazdak Farrokhzad <twingoow@gmail.com>
    
    ---------
    
    Signed-off-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Co-authored-by: Phoebe Goldman <phoebe@clockworklabs.io>
    Centril and gefjon committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    2c07b3b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b55121c View commit details
    Browse the repository at this point in the history
  7. Implement RelValue: Eq + Hash (#1107)

    * impl Eq + Hash for RelValue
    
    * Use Hash for RelValue in incr-eval
    
    * naming: spell out pv, rv, and tro
    Centril committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    0142e14 View commit details
    Browse the repository at this point in the history
  8. Fix soundness hole in Table::delete + don't make & immedately drop …

    …PVs in the method (#1162)
    
    * impl Eq + Hash for RelValue
    
    * Use Hash for RelValue in incr-eval
    
    * naming: spell out pv, rv, and tro
    
    * fix soundness hole in Table::delete + don't make + drop PVs
    
    * Clarify `Table::delete`'s callback `before`
    
    Co-authored-by: Phoebe Goldman <phoebe@clockworklabs.io>
    Signed-off-by: Mazdak Farrokhzad <twingoow@gmail.com>
    
    ---------
    
    Signed-off-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Co-authored-by: Phoebe Goldman <phoebe@clockworklabs.io>
    Centril and gefjon committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    e526c8c View commit details
    Browse the repository at this point in the history

Commits on May 1, 2024

  1. Add PR status check that fails unless based on master (#1180)

    * [bfops/block-pr-chain]: empty
    
    * [bfops/block-pr-chain]: workflow
    
    * [bfops/block-pr-chain]: fix
    
    * [bfops/block-pr-chain]: update
    
    * [bfops/block-pr-chain]: update
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 1, 2024
    Configuration menu
    Copy the full SHA
    6810821 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2024

  1. Configuration menu
    Copy the full SHA
    7c52ef5 View commit details
    Browse the repository at this point in the history
  2. perf(JoinInner): use AVs for keys instead of PVs (#1194)

    * perf(JoinInner): use AVs for keys instead of PVs
    
    * Remove stale comment.
    
    Co-authored-by: james gilles <jameshgilles@gmail.com>
    Signed-off-by: Mazdak Farrokhzad <twingoow@gmail.com>
    
    ---------
    
    Signed-off-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Co-authored-by: james gilles <jameshgilles@gmail.com>
    Centril and kazimuth committed May 2, 2024
    Configuration menu
    Copy the full SHA
    e258262 View commit details
    Browse the repository at this point in the history
  3. Make Page always fully init (#1193)

    * Make `Page` always fully init
    
    Per discussion on the snapshotting proposal,
    this PR changes the type of `Page.row_data` to `[u8; _]`,
    where previously it was `[MaybeUninit<u8>; _]`.
    
    This turns out to be shockingly easy,
    as our serialization codepaths never write padding bytes into a page.
    The only place pages ever became `poison` was the initial allocation;
    changing this to `alloc_zeroed` causes the `row_data` to always be valid at `[u8; _]`.
    
    The majority of this diff is replacing `MaybeUninit`-specific operators
    with their initialized equivalents,
    and updating comments and documentation to reflect the new requirements.
    
    This change also revealed a bug in the benchmarks
    introduced when we swapped the order of sum tags and payloads
    ( #1063 ),
    where benchmarks used a hardcoded offset for the tag which had not been updated.
    
    * Update blake3
    
    Blake3 only supports running under Miri as of 1.15.1, the latest version.
    Prior versions hard-depended on SIMD intrinsics which Miri doesn't support.
    
    * Address Mazdak's review.
    
    Still pending his agreeing with me that `poison` is a better name than `uninit`.
    
    * "Poison" -> "uninit"
    
    Against my best wishes, for consistency with the broader Rust community's poor choices.
    
    * Remove unnecessary `unsafe` blocks
    
    * More unnecessary `unsafe`; remove forgotten SAFETY comments
    gefjon committed May 2, 2024
    Configuration menu
    Copy the full SHA
    484ba82 View commit details
    Browse the repository at this point in the history

Commits on May 3, 2024

  1. Remove C# GetArgsAsObjectArray (#1188)

    * Remove C# GetArgsAsObjectArray
    
    This is a weird "duck-typed" API that has one usage in BitCraft, but it's easy to replace with either real reflection or strong-typed interfaces.
    
    * Update csharp.rs
    
    Signed-off-by: Ingvar Stepanyan <me@rreverser.com>
    
    ---------
    
    Signed-off-by: Ingvar Stepanyan <me@rreverser.com>
    RReverser committed May 3, 2024
    Configuration menu
    Copy the full SHA
    165f750 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9ce8fc8 View commit details
    Browse the repository at this point in the history
  3. Fix unsoundness in AlgebraicValue::type_of by making it partial (#1189

    )
    
    * cleanup bsatn ser/de roundtrip test
    
    * fmt::Display for FieldExpr: don't use type_of
    
    * make type_of partial and sound
    
    * type_of: address review feedback
    Centril committed May 3, 2024
    Configuration menu
    Copy the full SHA
    fcc326b View commit details
    Browse the repository at this point in the history

Commits on May 7, 2024

  1. From.{join => joins} + remove Option layer + Remove RelOps::try_fold (#…

    …1208)
    
    * refactor From sql ast type
    
    * remove RelOps.:try_fold (dead code)
    Centril committed May 7, 2024
    Configuration menu
    Copy the full SHA
    6dce129 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1be912b View commit details
    Browse the repository at this point in the history

Commits on May 8, 2024

  1. C#: rename DbEventArgs to ReducerContext (#1191)

    * C#: rename DbEventArgs to ReducerContext
    
    This is no longer an event type, so remove subclassing and rename to match the Rust API.
    
    * Update ReducerContext argument name
    RReverser committed May 8, 2024
    Configuration menu
    Copy the full SHA
    fe44011 View commit details
    Browse the repository at this point in the history
  2. Bump to Rust 1.78 (#1205)

    * Bump to rust 1.78
    
    * Fix lints
    coolreader18 committed May 8, 2024
    Configuration menu
    Copy the full SHA
    3b754f1 View commit details
    Browse the repository at this point in the history

Commits on May 9, 2024

  1. spacetime build uses --project-path param (#1212)

    * `spacetime build` uses `--project-path` param
    
    * Fix smoketests
    
    * Another small fix
    
    * Another fix
    
    ---------
    
    Co-authored-by: John Detter <no-reply@boppygames.gg>
    jdetter and John Detter committed May 9, 2024
    Configuration menu
    Copy the full SHA
    b275dbf View commit details
    Browse the repository at this point in the history

Commits on May 10, 2024

  1. remove some dead code (#1210)

    Centril committed May 10, 2024
    Configuration menu
    Copy the full SHA
    78696e5 View commit details
    Browse the repository at this point in the history
  2. CrudExpr::{Delete, Insert, Update}: only DbTables are possible, so cl…

    …eanup InMem path (#1211)
    
    * remove dead code wrt. Table
    
    * simplify DbProgram: Insert/Update/Delete only use DbTables
    
    * consistency: move CrudExpr::Update logic to own function
    
    * use TxMode::unwrap_mut more
    Centril committed May 10, 2024
    Configuration menu
    Copy the full SHA
    4e444bd View commit details
    Browse the repository at this point in the history
  3. Remove RowUpdate event from C# (#1190)

    We talked about this for a while, so decided to do this in a separate PR.
    RReverser committed May 10, 2024
    Configuration menu
    Copy the full SHA
    e252b0c View commit details
    Browse the repository at this point in the history
  4. Switch to a better API for tagged enums for C# (#1177)

    With C# records - which are available since C# 9, so covers Unity requirements as well - we can use subclassing and pattern matching to get sum types that look a lot more like Rust tagged enums.
    
    This is a breaking change but IMO worth it for the better API going forward.
    RReverser committed May 10, 2024
    Configuration menu
    Copy the full SHA
    125ca70 View commit details
    Browse the repository at this point in the history

Commits on May 13, 2024

  1. Configuration menu
    Copy the full SHA
    9a827f2 View commit details
    Browse the repository at this point in the history
  2. commitlog: Allow folds to not allocate Mutations values (#1215)

    The documentation promised to not collect payload values during folds
    (i.e. replaying), but the code did so anyway. This patch makes it so
    only values required to satisfy the `Visitor` trait are allocated when
    folding.
    kim committed May 13, 2024
    Configuration menu
    Copy the full SHA
    61613ca View commit details
    Browse the repository at this point in the history
  3. Fix #1180: Add PR status check that fails unless based on master (#1213)

    * [bfops/fix-github-action]: fix?
    
    * [bfops/fix-github-action]: empty
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 13, 2024
    Configuration menu
    Copy the full SHA
    669d487 View commit details
    Browse the repository at this point in the history
  4. Split up #735: auth.rs refactors (#871)

    * [zeke/noa-router-shuffle]: bring over auth.rs changes from #735
    
    * [zeke/noa-router-shuffle]: review
    bfops committed May 13, 2024
    Configuration menu
    Copy the full SHA
    4cdb660 View commit details
    Browse the repository at this point in the history
  5. Create a lockfile when opening config files (#1196)

    * Create a lockfile when opening config files
    
    In the past, we've had issues where multiple concurrent CLI processes
    would race to read and write the CLI config file,
    leading to data loss.
    
    We considered using `flock`/`LockFileEx` and blocking until the file became available,
    but unfortunately it's not possible to atomically create and lock a nonexistent file,
    which we need to do in the case where the configuration doesn't yet exist.
    
    Instead, we opt for a classic lockfile-based scheme:
    Before opening a config file `foo.conf`, attempt to exclusively create `foo.lock`,
    and panic if the exclusive creation fails.
    Once it becomes clear that we will not write the config any more,
    i.e. in `Config::drop`,
    delete the lockfile, allowing another process to operate.
    
    This means that attempting to run multiple concurrent Spacetime CLI processes
    with the same config file is now a hard error.
    
    * Fix CI failures
    
    This commit fixes two CI failures:
    
    - `spacetime start`, and a few other CLI subcommands, do not access their `Config` at all,
      but the CLI constructs it unconditionally in `main`,
      which made it an error to run any CLI command while `spacetime start` was running.
      This is fixed by having subcommands which don't need a `Config`
      drop it before doing anything.
    - Contrary to my assumption,
      the test configuration created by `Config::new_with_localhost` does get `drop`ped,
      because the test harness `clone`s is and passes an owned version to the CLI.
      This was causing it to attempt to delete the empty path, which failed.
      This is fixed by having the home configuration be `Option`al,
      and setting it to `None` in tests.
    
    * Clap before config because they suppress destructors
    
    Perform Clap argument parsing as the very first thing in a CLI process,
    before locking the config,
    because Clap calls `exit` directly on error rather than panicing
    (presumably to have more control over error output),
    which prevents destructors from running,
    leaving stale lockfiles.
    
    * Encapsulate lockfile logic in a type
    
    Also deduplicate logic for finding config file paths.
    
    * Define `create_parent_dir` helper with comments
    
    * Replace `drop` calls with more explicit `Config::release_lock`.
    gefjon committed May 13, 2024
    Configuration menu
    Copy the full SHA
    f6573c4 View commit details
    Browse the repository at this point in the history
  6. Bump version to 0.9.0 (#1055)

    * [bfops/bump-version]:
    
    * [bfops/bump-version]: bump lockfile
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 13, 2024
    Configuration menu
    Copy the full SHA
    c7f191f View commit details
    Browse the repository at this point in the history

Commits on May 14, 2024

  1. Add CODEOWNERS for rust-toolchain.toml (#1221)

    * [bfops/codeowners]: do thing
    
    * [bfops/codeowners]: empty
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 14, 2024
    Configuration menu
    Copy the full SHA
    52c6df6 View commit details
    Browse the repository at this point in the history
  2. Fix select * from * (#1218)

    * Add SDK test for `SELECT * FROM *`
    
    Which doesn't pass, because we broke it.
    
    * Fix select * from *
    
    ---------
    
    Co-authored-by: Phoebe Goldman <phoebe@goldman-tribe.org>
    coolreader18 and gefjon committed May 14, 2024
    Configuration menu
    Copy the full SHA
    b3ea0f5 View commit details
    Browse the repository at this point in the history
  3. [bfops/cli-identity-refactor]: do thing (#1169)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 14, 2024
    Configuration menu
    Copy the full SHA
    08ecaf8 View commit details
    Browse the repository at this point in the history
  4. Add CODEOWNERS for LICENSE.txt (#1225)

    * [bfops/codeowners]: empty
    
    * [bfops/codeowners]: update CODEOWNERS
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 14, 2024
    Configuration menu
    Copy the full SHA
    7d41e76 View commit details
    Browse the repository at this point in the history
  5. Add CODEOWNERS for CODEOWNERS (#1226)

    * [bfops/codeowners]: empty
    
    * [bfops/codeowners]: update CODEOWNERS
    
    * [bfops/codeowners]: update
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 14, 2024
    Configuration menu
    Copy the full SHA
    70de033 View commit details
    Browse the repository at this point in the history
  6. spacetime publish: Add confirmation for -c (#1038)

    * [bfops/confirm-publish-clear]: spacetime publish: add confirmation for -c
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: rename
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: fix?
    
    * [bfops/confirm-publish-clear]: fix smoketests
    
    * [bfops/confirm-publish-clear]: review
    
    * [bfops/confirm-publish-clear]: fix rest of smoketests?
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 14, 2024
    Configuration menu
    Copy the full SHA
    8ab55d2 View commit details
    Browse the repository at this point in the history
  7. Make identity naming more consistent + fix bugs (#1140)

    * Prevent importing an identity with a name that already exists in the
    config
    
    * Make identity naming more consistent
    
    * Fix clippy lints
    
    * Several bug fixes and UX improvements
    
    * Prevent someone from adding the same identity twice
    
    * Fix lint
    
    * [jdetter/make-identity-naming-more-consistent]: review
    
    * [jdetter/make-identity-naming-more-consistent]: review
    
    * [jdetter/make-identity-naming-more-consistent]: review
    
    * Reverted file
    
    ---------
    
    Co-authored-by: John Detter <no-reply@boppygames.gg>
    Co-authored-by: Zeke Foppa <github.com/bfops>
    jdetter and John Detter committed May 14, 2024
    Configuration menu
    Copy the full SHA
    f13a143 View commit details
    Browse the repository at this point in the history
  8. feat(1229): Double client channel capacity (#1230)

    Closes #1229.
    
    And log warning when client channel capacity is exceeded.
    joshua-spacetime committed May 14, 2024
    Configuration menu
    Copy the full SHA
    401ffe2 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    5154f79 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2024

  1. Configuration menu
    Copy the full SHA
    9546a22 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5bf6b6c View commit details
    Browse the repository at this point in the history

Commits on May 16, 2024

  1. Always send TransactionUpdate to the sender (#1111)

    * Always send TransactionUpdate to the sender
    
    This commit changes transaction update broadcast to always send an
    update to the sender, even if the sender is not subscribed to any
    data that was committed. In such case the transaction update is sent
    with an empty database update.
    
    * Remove debug printlns
    
    * Update code after rebase
    
    * Fix test
    
    * Update crates/core/src/subscription/module_subscription_manager.rs
    
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Signed-off-by: Piotr Sarnacki <drogus@gmail.com>
    
    * Extract sending message with error handing in module_subscription_manager
    
    * Bring back a new line
    
    * SDK test that the client is notified of a reducer it called
    
    * cleanup subscription code a bit
    
    * Fix merge problem
    
    * Lint + fmt
    
    * Fix test
    
    ---------
    
    Signed-off-by: Piotr Sarnacki <drogus@gmail.com>
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Co-authored-by: Phoebe Goldman <phoebe@goldman-tribe.org>
    3 people committed May 16, 2024
    Configuration menu
    Copy the full SHA
    d08e984 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2024

  1. row_count field to table (#1242)

    * rowcount
    
    * added tests
    Shubham8287 committed May 17, 2024
    Configuration menu
    Copy the full SHA
    0c0567e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    267cf65 View commit details
    Browse the repository at this point in the history

Commits on May 18, 2024

  1. Remove unreachable branches from C# generate (#1247)

    These branches are already inside of `if is_unique {} else { ... }` branch, so `is_unique` can never be `true`.
    RReverser committed May 18, 2024
    Configuration menu
    Copy the full SHA
    c665503 View commit details
    Browse the repository at this point in the history

Commits on May 20, 2024

  1. - Table::get_fixed_row -> RowRef::get_row_data (#1250)

    - Document some table methods
    Centril committed May 20, 2024
    Configuration menu
    Copy the full SHA
    0b89165 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d188f96 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e109385 View commit details
    Browse the repository at this point in the history
  4. Atomically downgrade lock when committing tx to prevent deadlock (#1252)

    * Atomically downgrade lock when committing tx to prevent deadlock
    
    * Address review
    coolreader18 committed May 20, 2024
    Configuration menu
    Copy the full SHA
    f0c182e View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4759584 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    91f7e8c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    ebc9218 View commit details
    Browse the repository at this point in the history

Commits on May 21, 2024

  1. core: Collapse DBIC into HostController (#1186)

    Make it so `HostController` manages both the module host (wasm
    machinery) and the database (`RelationalDB` / `DatabaseInstanceContext`)
    of spacetime databases deployed to a server.
    
    The `DatabaseInstanceContextController` (DBIC) is removed in the
    process.
    
    This allows to make database accesses panic-safe, in that uncaught
    panics will cause all resouces to be released and the database to be
    restarted on subsequent access. This is a prerequisite for #985.
    
    It also allows to move towards storage of the module binary directly in
    the database / commitlog. This patch, however, makes some contortions in
    order to **not** introduce a breaking change just yet.
    kim committed May 21, 2024
    Configuration menu
    Copy the full SHA
    2de1475 View commit details
    Browse the repository at this point in the history

Commits on May 22, 2024

  1. core: Reserve sequence range for system tables (#1265)

    Reserves an unreasonably large number of sequence values for use by system
    tables. This means that user-created tables will draw id values starting
    from the reserved range + 1, as opposed to number of values taken by
    system tables + 1.
    
    Adding new system tables is thus unlikely to interfere with already-assigned
    values in existing databases.
    kim committed May 22, 2024
    Configuration menu
    Copy the full SHA
    edbca25 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    670625e View commit details
    Browse the repository at this point in the history
  3. 1. Privatize st_*_schema functions, only used in system_tables() no…

    …w. (#1263)
    
    2. Only call system_tables() once in bootstrap_system_tables.
    3. Take `TableId` by value more
    4. Rename `table_exists` -> `table_name`
    5. Dedup `table_name` by using `get_schema()`.
    6. Other misc deduping.
    Centril committed May 22, 2024
    Configuration menu
    Copy the full SHA
    9257208 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6b1a3d3 View commit details
    Browse the repository at this point in the history
  5. Consistent filtering rules for Rust bindings (#1280)

    * Implement consistent filtering rules proposal
    
    Mostly already consistent with the proposal, except:
     - Remove filtering functions for custom Hash type.
     - Allow filtering over `i128` and `u128` fields.
     - Allow filtering over `Address` fields.
    
    * Update crates/bindings-macro/src/lib.rs
    
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Signed-off-by: Ingvar Stepanyan <me@rreverser.com>
    
    ---------
    
    Signed-off-by: Ingvar Stepanyan <me@rreverser.com>
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    RReverser and Centril committed May 22, 2024
    Configuration menu
    Copy the full SHA
    552b18b View commit details
    Browse the repository at this point in the history
  6. recv-style abi (#1002)

    * Bump module abi version
    
    * recv abi module side
    
    * recv abi host side
    
    * Update csharp module sdk
    
    * Fix name
    
    * Address comments
    coolreader18 committed May 22, 2024
    Configuration menu
    Copy the full SHA
    471f4ff View commit details
    Browse the repository at this point in the history

Commits on May 23, 2024

  1. feat(1231): Basic query cardinality estimation (#1273)

    * feat(1231): Basic query cardinality estimation
    
    This patch implements basic cardinality estimation for QueryExpr.
    It utilizes table cardinalities and number of distinct values for index related operators.
    
    * estimation tests: dedup + define constants for readability
    
    * row_est: simplify with slice patterns
    
    * fn ndv -> fn num_distinict_values
    
    * simplify TypedIndex::num_keys
    
    * is_range -> is_point (invert) + fuse arms in row_est
    
    * estimation: fix logic for IndexJoin
    
    ---------
    
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    joshua-spacetime and Centril committed May 23, 2024
    Configuration menu
    Copy the full SHA
    88a8ada View commit details
    Browse the repository at this point in the history
  2. Simplify btree_index module with more idiomatic Rust (#1285)

    * simplify btree_index module, more idiomatic Rust
    
    * test
    Centril committed May 23, 2024
    Configuration menu
    Copy the full SHA
    25513b3 View commit details
    Browse the repository at this point in the history
  3. Disconnect dangling clients (#1132)

    When replaying the commitlog, keep track of unpaired connect/disconnect
    calls and call disconnect when instantiating the module.
    kim committed May 23, 2024
    Configuration menu
    Copy the full SHA
    48a2b98 View commit details
    Browse the repository at this point in the history

Commits on May 24, 2024

  1. CI workflows support workflow_dispatch event (#1289)

    * [bfops/ci-dispatch]: workflow update
    
    * [bfops/ci-dispatch]: empty
    
    * [bfops/ci-dispatch]: update
    
    * [bfops/ci-dispatch]: update
    
    * [bfops/ci-dispatch]: update
    
    * [bfops/ci-dispatch]: update
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 24, 2024
    Configuration menu
    Copy the full SHA
    93b9d76 View commit details
    Browse the repository at this point in the history
  2. Remove incremental-joins.md (#1296)

    * [bfops/rm-include-str]: empty
    
    * [bfops/rm-include-str]: do thing
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 24, 2024
    Configuration menu
    Copy the full SHA
    8c3fa75 View commit details
    Browse the repository at this point in the history
  3. Fix workflow_dispatch for ci.yml (#1295)

    * [bfops/fix-workflow-dispatch]: fix
    
    * [bfops/fix-workflow-dispatch]: empty
    
    * [bfops/fix-workflow-dispatch]: fix?
    
    * [bfops/fix-workflow-dispatch]: fix?
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 24, 2024
    Configuration menu
    Copy the full SHA
    0bf5d74 View commit details
    Browse the repository at this point in the history
  4. Add table smoketest + more smoketest logging (#1272)

    * Add smoketest to add table without migration, currently failing
    
    * Add more logging to smoketests, add_table_pseudomigration passing
    
    * Fix test failing for the wrong reason
    kazimuth committed May 24, 2024
    Configuration menu
    Copy the full SHA
    7c90990 View commit details
    Browse the repository at this point in the history
  5. Shub/st connected clients (#1288)

    * trait modification
    
    * st clients
    
    * error handling
    
    * fix
    
    * make connect transactional
    
    * handle empty reducer
    
    * test
    
    * fix tests
    Shubham8287 committed May 24, 2024
    Configuration menu
    Copy the full SHA
    8ecee76 View commit details
    Browse the repository at this point in the history
  6. Let ProgramStorage::external be async (#1291)

    * Let ProgramStorage::external be async
    
    * Remove core::object_db
    
    * Remove odb_rocksdb feature
    
    * Fix typo
    
    * More resilient conflict avoidance
    coolreader18 committed May 24, 2024
    Configuration menu
    Copy the full SHA
    55b7cbe View commit details
    Browse the repository at this point in the history

Commits on May 27, 2024

  1. due cleanup (#1301)

    Shubham8287 committed May 27, 2024
    Configuration menu
    Copy the full SHA
    1f23316 View commit details
    Browse the repository at this point in the history

Commits on May 28, 2024

  1. fix(1297): spacetime logs -f should not start at the very beginning (

    …#1298)
    
    * [bfops/logs-f]: do thing
    
    * [bfops/logs-f]: empty
    
    * [bfops/logs-f]: review
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 28, 2024
    Configuration menu
    Copy the full SHA
    8096ab6 View commit details
    Browse the repository at this point in the history
  2. merge_apply_inserts/deletes: do metrics work once per table, not pe…

    …r row (#1286)
    
    * merge_apply_inserts: bulk update metrics
    
    * merge_apply_deletes: bulk update metrics
    Centril committed May 28, 2024
    Configuration menu
    Copy the full SHA
    0e74bee View commit details
    Browse the repository at this point in the history
  3. Consistent filtering in Rust client + minor fixes (#1275)

    * Extend codegen tests to Rust
    
    * Replace cursive-chat module_bindings with symlink
    
    * Implement consistent filtering rules for Rust
    
    * Fixup
    
    * Regenerate tests
    
    * Fix non-deterministic import order
    
    * cargo fmt
    
    * Fix chat examples
    
    * Change symlinks to files themselves
    
    * Revert accidental change
    
    This needs to wait for server-side API break to be implemented as well.
    RReverser committed May 28, 2024
    Configuration menu
    Copy the full SHA
    f5a13b6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a7c7575 View commit details
    Browse the repository at this point in the history
  5. Update C# codegen to consistent filtering rules (#1277)

    * Update C# codegen to consistent filtering rules
    
    - Limit types as per proposal.
    - Add `Query` client-side SDK helper for API parity with server-side modules (on client-side it's a simple wrapper around Iter + Where).
    - Change return type of `FilterBy` to always be iterable, with new `FindBy` function for unique fields.
    - Simplify the way primary keys are handled - must go with clockworklabs/spacetimedb-csharp-sdk#93 for the client SDK counterpart.
    
    * Add using for System.Linq
    
    * Update snapshot
    RReverser committed May 28, 2024
    Configuration menu
    Copy the full SHA
    307dfee View commit details
    Browse the repository at this point in the history
  6. Implement consistent filtering rules for TypeScript (#1276)

    - Limit types to those defined in the consistent filtering proposal (#1256).
    - Make `filterBy` a lazy iterable for consistency and performance reasons.
    - Add `findBy` for unique fields as per proposal.
    RReverser committed May 28, 2024
    Configuration menu
    Copy the full SHA
    ac0c097 View commit details
    Browse the repository at this point in the history
  7. CLI - Fix Lockfile error message format strings (#1302)

    * [bfops/lockfile-err]: do thing
    
    * [bfops/lockfile-err]: empty
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 28, 2024
    Configuration menu
    Copy the full SHA
    be74474 View commit details
    Browse the repository at this point in the history
  8. CLI - Drop Config lock earlier for spacetime logs (#1303)

    * [bfops/lockfiles]: do thing
    
    * [bfops/lockfiles]: empty
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 28, 2024
    Configuration menu
    Copy the full SHA
    3b33f22 View commit details
    Browse the repository at this point in the history
  9. 1. Reduce visibilities, preparing to extract datastore crate (#1306)

    2. More direct imports, preparing to extract datastore crate
    3. Remove some dead code
    Centril committed May 28, 2024
    Configuration menu
    Copy the full SHA
    c8225db View commit details
    Browse the repository at this point in the history
  10. Commitlog: panic on fsync failure (#985)

    * commitlog: Panic on fsync failure
    
    Errors returned by `fsync(2)` are particularly nefarious, as it is
    mostly undefined what the state of the page cache is in this case.
    
    Since the log is synced asynchronously and not after every write, it is
    impossible to know up to which commit data can be considered durable --
    except by reading the most recent segment from disk.
    
    Therefore, the reasonable thing to do is to prevent any further use of
    the log, and force users to re-load it from disk.
    
    Note that this is only half of the solution: an application restart may
    still read data from the page cache, which could be gone after a system
    restart.
    
    To fix this, we would need to employ direct I/O (i.e. `O_DIRECT`), which
    however is beyond the scope of this patch as it invalidates the use of
    most of `std::io`.
    
    * commitlog: Handle duplicate commits when iterating
    
    We cannot exclude the possibility of a false failure in I/O operations.
    In particular, `EIO` errors are difficult to attribute to a particular
    write, as they happen asynchronously during flush of the page cache.
    
    Because we do not bypass the page cache, the possibility exists that a
    particular commit is lost when it isn't, or that it is considered
    durable when it isn't. The former could lead to duplicate commits
    appearing in the log, while the latter could lead to a matching offset
    number, but with different commit payload.
    
    This patch thus ignores duplicates, and introduces a new error variant
    in the event the offset matches but the checksum doesn't.
    
    * durability: Manage the flush-and-sync task in this crate
    
    Since syncing the commitlog may now panic, it is more obvious to handle
    all async tasks here, so as to be able to handle the panic cases.
    
    Namely, if the `FlushAndSyncTask` panics, the `PersisterTask` is
    aborted. This will lead to the channel receiver being dropped, which in
    turn will cause the next `append_tx` call to panic.
    
    * commitlog: Remove async flush-and-sync
    
    Due to panic behaviour, it is now preferable to manage periodic sync at
    the use site of the commitlog crate.
    
    Hence remove `flush_and_sync_every` method, and with it the dependency
    on tokio.
    kim committed May 28, 2024
    Configuration menu
    Copy the full SHA
    2c3fc66 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    4ac49e5 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    2d045b6 View commit details
    Browse the repository at this point in the history

Commits on May 29, 2024

  1. Bump version to 0.9.3 (#1224)

    * [bfops/bump-version]: empty
    
    * [bfops/bump-version]: version bump
    
    * [bfops/bump-version]: update
    
    * [bfops/bump-version]: bump C# module versions too
    
    * [bfops/bump-version]: bump 0.9.3
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed May 29, 2024
    Configuration menu
    Copy the full SHA
    0bc42bf View commit details
    Browse the repository at this point in the history

Commits on May 30, 2024

  1. feat(1231): Add a configurable row limit for queries (#1293)

    Closes #1231.
    
    Queries that are estimated to exceed this row limit are rejected.
    And the same holds for subscriptions.
    joshua-spacetime committed May 30, 2024
    Configuration menu
    Copy the full SHA
    6512f35 View commit details
    Browse the repository at this point in the history

Commits on May 31, 2024

  1. NFC: use record struct for auto-equality in C# (#1318)

    The new `record struct` construct is the same as `struct`, but automatically derives equality and hashing by walking through the fields - exactly what we need for those 2 types.
    RReverser committed May 31, 2024
    Configuration menu
    Copy the full SHA
    c76c3a0 View commit details
    Browse the repository at this point in the history
  2. Fix FilterBy regression in C# (#1309)

    * Fix FilterBy regression in C#
    
    Fixes regression accidentally introduced in #1277: if FindBy returns null, FilterBy will return an iterable with a single null item instead of an empty iterable.
    
    * Fix snapshots
    RReverser committed May 31, 2024
    Configuration menu
    Copy the full SHA
    9e1e66f View commit details
    Browse the repository at this point in the history
  3. Bump ABI version for C# AOT (#1311)

    Looks like these constants got missed during upgrade, making AOT version ABI-incompatible.
    
    Unfortunately, there's no way to use a central constant here, so we probably should add it to some "steps to do during ABI version bump" doc.
    RReverser committed May 31, 2024
    Configuration menu
    Copy the full SHA
    24d1750 View commit details
    Browse the repository at this point in the history
  4. Implement new rand api (#1283)

    * Implement new rand api
    
    * Address comments
    coolreader18 committed May 31, 2024
    Configuration menu
    Copy the full SHA
    f8beb69 View commit details
    Browse the repository at this point in the history
  5. metric for table size (#1319)

    * table size metric
    
    * feld blob_store_bytes in table
    
    * address comments
    
    * NumBlobBytes type
    
    * table size metrics: adjust comments, visibility + harden test
    
    ---------
    
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    Shubham8287 and Centril committed May 31, 2024
    Configuration menu
    Copy the full SHA
    cf4b9aa View commit details
    Browse the repository at this point in the history
  6. Automated bot tests (#1255)

    * Add script to dispatch bot tests to BitCraftBots
    
    * Make sure results are named correctly, whoops
    
    * Move results to a private bucket, whoops
    
    * Pull in various fixes
    
    * Safer for merge, don't run bot tests on every PR...
    
    * Fix tracing patch
    
    * Remove accidental file
    
    * Test commit
    
    * Test
    
    * Test
    
    * Fix results upload
    
    * Address review comments
    kazimuth committed May 31, 2024
    Configuration menu
    Copy the full SHA
    6384452 View commit details
    Browse the repository at this point in the history

Commits on Jun 1, 2024

  1. Restrict multi-col index scans to = (OpCmp::Eq) on all columns (#…

    …1316)
    
    * add test test_multi_column_two_ranges, which should fail but doesn't
    
    * restrict multi-col index scans to OpCmp::Eq
    Centril committed Jun 1, 2024
    Configuration menu
    Copy the full SHA
    74bcecd View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2024

  1. Configuration menu
    Copy the full SHA
    a854945 View commit details
    Browse the repository at this point in the history
  2. Tables only become public explicitly via `#[spacetimedb(table(public)…

    …)]` (#1278)
    
    * make user tables private by default and define privacy via attribute
    
    * switch to spacetimedb(table(public)) syntax
    
    * accept codegen snap changes
    
    * sdk: use public in define_tables!
    
    * bindings-macro: adjust some doc comments
    
    * sdk-test-connect-disconnect: make Connected/Disconnected public tables
    
    * Make Public Private again
    Centril committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    5e47b61 View commit details
    Browse the repository at this point in the history
  3. IndexJoin/JoinInner: store ColId (#1166)

    * IndexJoin/JoinInner: store ColId
    
    * QueryExpr: carry full Header info for resulting query
    
    * refactor and dedup build_query
    Centril committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    f6b39c0 View commit details
    Browse the repository at this point in the history
  4. More trace logs for TX locking (#1253)

    * [bfops/logtrace]: do thing
    
    * [bfops/logtrace]: empty
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    2b66851 View commit details
    Browse the repository at this point in the history
  5. Split ColumnOp into one with row indices and one with FieldName &…

    … other enabled changes (#1207)
    
    * 1. Split ColumnOp into ColumnOp & FieldOp, former storing ColId
    2. Shrink SqlAst to 80 bytes, so it can be passed in registers
    3. Store end-result Header in IndexSemiJoin
    4. Remove operational use of Header in ColumnOp & build_query
    5. Simplify RowRef::{get, project, project_owned}
    
    * Make parts of build_query actually infallible.
    
    1. Make IndexSemiJoin::filter infallible.
    2. Make ColumnOp::compare and friends infallible.
    3. Make RowRef::{get, project, project_owned} infallible.
    
    * Make RelOps::next itself infallible
    
    * 1. with_select{_cmp}: ensure type safety o query exec cannot panic
    2. Document RelValue::{get, read_or_take_column, project_owned}
    3. Refactor optimize_select
    4. Ensure in optimize_select that conditions are merged with preceding selects
    
    * remove RelOps::{head, row_count}; head is redundant & row_count is useless
    
    * remove Relation trait; it does not carry its weight
    
    * make build_query infallible
    
    * simplify IndexSemiJoin, make it slightly less branchy
    
    * simplify try_index_join
    
    * split IndexSemiJoin into Left & Right parts
    
    * move get_field_pos to test code
    
    * move test version of build_query to test code
    Centril committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    89aecd1 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    be9c958 View commit details
    Browse the repository at this point in the history
  7. Fix commitlog fold_transactions_from ignoring requested offset (#1330)

    * Fix commitlog `fold_transactions_from` ignoring requested offset
    
    Prior to this commit, `fold_transactions_from` on a durability backed by a commitlog
    would discard the requested offset and unconditionally yield all txes in the relevant segments.
    
    This commit changes that behavior so that `fold_transactions_from`
    skips commitlog commits (which contain many txes) less than the reqested offset,
    and skips txes using `consume_record`.
    
    * Add `Decoder::skip_record`
    
    Lucky I asked Kim whether I was using `consume_record` and `decode_record` correctly,
    because I wasn't.
    
    This commit adds methods to `Decoder` and `Visitor` for skipping records and rows,
    causing them to be extracted from the reader but not folded.
    
    * Fix test
    
    Add new methods to `Decoder` and `Visitor` hidden away in a test I missed.
    gefjon committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    18aa1d4 View commit details
    Browse the repository at this point in the history
  8. Jeremie/notify sql (#1198)

    * Notify subscriptions from SQL code path
    
    * Remove blocking_broadcast_event
    
    (From another PR, but helps tests to pass)
    
    * Update from review
    
    * Update from rebase
    
    * cargo fmt
    
    * cargo fmt
    
    * cargo fmt
    
    * update space.rs
    lcodes committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    da23401 View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2024

  1. Impl Serialize, Deserialize for Page (#1335)

    * Impl `Serialize`, `Deserialize` for `Page`
    
    Snapshotting needs to write `Page`s to files and read them back again.
    To that effect, this commit implements `Serialize` and `Deserialize` for `Page`.
    
    * Address Mazdak's review
    
    - Fix soundness in `FixedBitSet` by moving an assert.
    - Add commentary to test.
    - Add commentary to `spacetimedb-lib` dependency.
    gefjon committed Jun 4, 2024
    Configuration menu
    Copy the full SHA
    a214f78 View commit details
    Browse the repository at this point in the history
  2. Create new crate fs-utils; move Lockfile and create_parent_dir (#…

    …1334)
    
    * Create new crate `fs-utils`; move `Lockfile` and `create_parent_dir`
    
    The snapshot crate will need to create lockfiles.
    Rather than duplicating code to do so, we choose to move our definition of `Lockfile`
    into a crate that can be depended on by both `cli` and `snapshot`.
    No existing crate seems like an obvious choice for this
    -- a `Lockfile` is not really a data structure, so `data-structures` seems wrong --
    so we add a new crate, `fs-utils`.
    Currently this contains only `Lockfile` and `create_parent_dir`,
    but a follow-up PR will add `DirTrie`, a Git-like on-disk object store.
    
    * Deduplicate `map_err` closure
    
    * Zeke's nit: simplify control flow
    
    Co-authored-by: Zeke Foppa <196249+bfops@users.noreply.github.com>
    Signed-off-by: Phoebe Goldman <phoebe@goldman-tribe.org>
    
    ---------
    
    Signed-off-by: Phoebe Goldman <phoebe@goldman-tribe.org>
    Co-authored-by: Zeke Foppa <196249+bfops@users.noreply.github.com>
    gefjon and bfops committed Jun 4, 2024
    Configuration menu
    Copy the full SHA
    db34ff6 View commit details
    Browse the repository at this point in the history
  3. Make both TX offset counters agree (#1332)

    * Make both TX offset counters agree
    
    Prior to this commit, `CommittedState::next_tx_offset` got out of sync
    with the commitlog/durability's notion of the tx offset,
    because the former counted all committed TXes,
    while the latter excluded certain empty TXes
    (namely, empty TXes
    which were not `__identity_connected__` or `__identity_disconnected__` reducers).
    
    With this commit, the skipping logic is moved earlier into `CommittedState`,
    so that it can maintain a counter consistent with that used by the commitlog.
    
    * Remove duplicated increment
    gefjon committed Jun 4, 2024
    Configuration menu
    Copy the full SHA
    697a581 View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2024

  1. commitlog: Make bitflip test a proptest (#1333)

    * commitlog: Make bitflip test a proptest
    
    The test sometimes fails. As a proptest, we'll be able to seed it with
    failing inputs.
    
    Fixes: #1167
    
    * commitlog: Fix the bitflip test
    
    Turns out we sometimes flipped a bit in the CRC32 itself, which makes
    things go wrong in not the expected way.
    kim committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    ff851ae View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f08644f View commit details
    Browse the repository at this point in the history
  3. Define DirTrie, a git-like on-disk object store (#1336)

    * Define `DirTrie`, a git-like on-disk object store
    
    * Remove unused iteration code; add simple tests
    
    * Address Mazdak's review
    gefjon committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    f9cc84e View commit details
    Browse the repository at this point in the history
  4. Add the snapshot crate, which implements snapshotting at a low level (

    #1340)
    
    * Add the `snapshot` crate, which implements snapshotting at a low level
    
    - Requires making `BlobHash` be `Serialize` and `Deserialize`.
      For arcane macro-ology reasons, this requires writing `BlobHash::SIZE`
      instead of `Self::SIZE` (it gets embedded in a visitor struct or something).
    - Requires adding two new operators to `BlobStore`.
    - Adds a return value to `Page::save_content_hash`, for convenience.
    - Impls `DerefMut` for `Pages`.
    - **Scary change:** adds `Table::pages_mut`.
      I think possibly this operator should be `unsafe`,
      since write access to the `Pages` allows an undisciplined caller
      to violate the `Table`'s assumptions by corrupting a `Page`.
      It seems like an anti-pattern to mark a method `unsafe` on the grounds that
      misusing its return value can cause UB,
      but I don't see a plausible alternative
      without making most methods on `Page` unsafe.
      Open to feedback on this one!
    
    * Nix `Table::pages_mut`
    
    * Address Mazdak's feedback
    
    * Use `thiserror` rather than `anyhow` for better error hygiene
    gefjon committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    8c5f40d View commit details
    Browse the repository at this point in the history
  5. Fix bug with Lockfile sticking around (#1341)

    * [bfops/fix-config-lock]: do thing
    
    * [bfops/fix-config-lock]: review
    
    * [bfops/fix-config-lock]: review
    
    * [bfops/fix-config-lock]: fix
    
    * [bfops/fix-config-lock]: TODOs
    
    * [bfops/fix-config-lock]: review
    
    * [bfops/fix-config-lock]: review
    
    * [bfops/fix-config-lock]: review
    
    * [bfops/fix-config-lock]: review
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    b06b2e5 View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2024

  1. chore: fix typos (#1241)

    * chore: fix typos
    
    Signed-off-by: snoppy <michaleli@foxmail.com>
    
    * Update lib.rs
    
    Signed-off-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
    
    ---------
    
    Signed-off-by: snoppy <michaleli@foxmail.com>
    Signed-off-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
    Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
    xiaoxianBoy and cloutiertyler committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    335c5b6 View commit details
    Browse the repository at this point in the history
  2. Fix Config.save failing if /tmp is on a different filesystem (#1346)

    * [bfops/fix-config-saving]:  do thing
    
    * [bfops/fix-config-saving]: review
    
    * [bfops/fix-config-saving]: fix smoketests
    
    * [bfops/fix-config-saving]: use create_new to avoid race condition
    
    ---------
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    8f3f6bd View commit details
    Browse the repository at this point in the history
  3. feat(1329): System table for system variables (#1342)

    Closes #1329.
    
    Used to persist global parameters for slow query logging and cardinality limits.
    joshua-spacetime committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    b3339c8 View commit details
    Browse the repository at this point in the history
  4. [bfops/update-quickstart]: do thing (#1348)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    4af892a View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2024

  1. Shared C# codegen for BSATN (#1312)

    Signed-off-by: Ingvar Stepanyan <me@rreverser.com>
    Co-authored-by: james gilles <jameshgilles@gmail.com>
    Co-authored-by: John Detter <no-reply@boppygames.gg>
    3 people committed Jun 7, 2024
    Configuration menu
    Copy the full SHA
    d1033b5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a543994 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    61ee5de View commit details
    Browse the repository at this point in the history

Commits on Jun 9, 2024

  1. Configuration menu
    Copy the full SHA
    b525247 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2024

  1. Configuration menu
    Copy the full SHA
    ccaad88 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1044ebc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c2831d0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d11c83e View commit details
    Browse the repository at this point in the history
  5. Bump version to 0.10.0 (#1349)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 10, 2024
    Configuration menu
    Copy the full SHA
    2d09485 View commit details
    Browse the repository at this point in the history
  6. Fix output of binary, Identity, Address for SQL output and the 'Dis…

    …play' of them to show a full hex value (#1087)
    mamcx committed Jun 10, 2024
    Configuration menu
    Copy the full SHA
    114aa99 View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2024

  1. Configuration menu
    Copy the full SHA
    6c45e76 View commit details
    Browse the repository at this point in the history
  2. core: Determine dangling clients from st_clients (#1366)

    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    kim and Centril committed Jun 11, 2024
    Configuration menu
    Copy the full SHA
    299789a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0fa94ce View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cb2fbb9 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2024

  1. Configuration menu
    Copy the full SHA
    2ea93c2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0b99e10 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e73ea79 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2b7b19e View commit details
    Browse the repository at this point in the history
  5. Fix auth regression (#1413)

    Signed-off-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
    Co-authored-by: Tyler Cloutier <cloutiertyler@users.noreply.github.com>
    coolreader18 and cloutiertyler committed Jun 12, 2024
    Configuration menu
    Copy the full SHA
    6e052cb View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2024

  1. Configuration menu
    Copy the full SHA
    220ff47 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    220c488 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    44832f2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9e0d1c9 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4b7eff6 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    910f605 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    e808c1e View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    814dd5b View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2024

  1. Impl subscribe subcommand & subscription smoketests (#1343)

    Signed-off-by: Kim Altintop <kim@eagain.io>
    Co-authored-by: Kim Altintop <kim@eagain.io>
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    3 people committed Jun 14, 2024
    Configuration menu
    Copy the full SHA
    66112bb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b1442fc View commit details
    Browse the repository at this point in the history
  3. Update tools/publish-crates.sh (#1426)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 14, 2024
    Configuration menu
    Copy the full SHA
    cceb8c0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    19b7815 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    8a3364e View commit details
    Browse the repository at this point in the history

Commits on Jun 17, 2024

  1. Configuration menu
    Copy the full SHA
    1d89643 View commit details
    Browse the repository at this point in the history
  2. Bump version to 0.10.1 (#1443)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 17, 2024
    Configuration menu
    Copy the full SHA
    dcc70b8 View commit details
    Browse the repository at this point in the history

Commits on Jun 18, 2024

  1. Configuration menu
    Copy the full SHA
    c94a551 View commit details
    Browse the repository at this point in the history
  2. Restructure NuGet packaging (#1440)

    Signed-off-by: Zeke Foppa <196249+bfops@users.noreply.github.com>
    Signed-off-by: Ingvar Stepanyan <me@rreverser.com>
    Co-authored-by: Zeke Foppa <196249+bfops@users.noreply.github.com>
    RReverser and bfops committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    137f26d View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2024

  1. Configuration menu
    Copy the full SHA
    a93bd49 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    384591a View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2024

  1. Configuration menu
    Copy the full SHA
    60c438d View commit details
    Browse the repository at this point in the history

Commits on Jun 21, 2024

  1. Configuration menu
    Copy the full SHA
    c19c0d4 View commit details
    Browse the repository at this point in the history

Commits on Jun 24, 2024

  1. Configuration menu
    Copy the full SHA
    4c0185d View commit details
    Browse the repository at this point in the history
  2. CLI - Update help text suggesting spacetime server fingerprint to h…

    …ave the correct `-s` param (#1457)
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jun 24, 2024
    Configuration menu
    Copy the full SHA
    637a654 View commit details
    Browse the repository at this point in the history

Commits on Jun 25, 2024

  1. Fix inconsistent auth/identity creation (#735)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    coolreader18 committed Jun 25, 2024
    Configuration menu
    Copy the full SHA
    8be8fc1 View commit details
    Browse the repository at this point in the history

Commits on Jun 26, 2024

  1. Fixed exceptions in C# SDK when someone disconnects or when a transac…

    …tion originates from CLI (#1461)
    
    Co-authored-by: Steve Boytsun <steve@clockwokrlabs.io>
    SteveBoytsun and Steve Boytsun committed Jun 26, 2024
    Configuration menu
    Copy the full SHA
    81085b0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2399e74 View commit details
    Browse the repository at this point in the history

Commits on Jul 1, 2024

  1. Automated Discord post when a PR merges (#1470)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    e536a6d View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2024

  1. Fix C# module smoketests (#1475)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    b2eb08c View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2024

  1. Configuration menu
    Copy the full SHA
    c8259bf View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cbff725 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2024

  1. CLI: Put some common params in a central place (#1484)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 9, 2024
    Configuration menu
    Copy the full SHA
    e913e8c View commit details
    Browse the repository at this point in the history
  2. Implement a temporary type check validation on sql compiling (#1456)

    Signed-off-by: Mario Montoya <mamcx@elmalabarista.com>
    Co-authored-by: Mazdak Farrokhzad <twingoow@gmail.com>
    mamcx and Centril committed Jul 9, 2024
    Configuration menu
    Copy the full SHA
    2ad91b6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f91dcda View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2024

  1. Configuration menu
    Copy the full SHA
    80b6466 View commit details
    Browse the repository at this point in the history
  2. CLI: Use --server and --identity args consistently instead of ano…

    …nymous args (#1482)
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    3266aa4 View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2024

  1. Configuration menu
    Copy the full SHA
    595181e View commit details
    Browse the repository at this point in the history

Commits on Jul 12, 2024

  1. Configuration menu
    Copy the full SHA
    6f0f20b View commit details
    Browse the repository at this point in the history
  2. Protobufectomy: server (#1077)

    Co-authored-by: Phoebe Goldman <phoebe@goldman-tribe.org>
    Co-authored-by: Jeremie Pelletier <jeremiep@gmail.com>
    3 people committed Jul 12, 2024
    Configuration menu
    Copy the full SHA
    10b151b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3934485 View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2024

  1. C# smoketests use nuget.config (#1500)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 15, 2024
    Configuration menu
    Copy the full SHA
    75acefc View commit details
    Browse the repository at this point in the history
  2. CI - SpacetimeDB PRs run the C# SDK tests (#1503)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 15, 2024
    Configuration menu
    Copy the full SHA
    50b050f View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2024

  1. Timer Table Implementation (#1449)

    Co-authored-by: Ingvar Stepanyan <me@rreverser.com>
    Shubham8287 and RReverser committed Jul 16, 2024
    Configuration menu
    Copy the full SHA
    276387d View commit details
    Browse the repository at this point in the history
  2. CI - Post-to-discord workflow only fires if the PR merged to master (

    …#1520)
    
    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 16, 2024
    Configuration menu
    Copy the full SHA
    2b291b0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    cadf986 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2024

  1. Moving recovery code APIs under /identity and using POST (#1492)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    lcodes committed Jul 17, 2024
    Configuration menu
    Copy the full SHA
    3e6f91b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    04a7508 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f81f2a7 View commit details
    Browse the repository at this point in the history

Commits on Jul 18, 2024

  1. Configuration menu
    Copy the full SHA
    ee7b096 View commit details
    Browse the repository at this point in the history
  2. Add some helper scripts (#1501)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    kazimuth committed Jul 18, 2024
    Configuration menu
    Copy the full SHA
    0ed26a7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7e421bb View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2024

  1. Configuration menu
    Copy the full SHA
    8338b53 View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2024

  1. Bump version to 0.11.0 (#1531)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 22, 2024
    Configuration menu
    Copy the full SHA
    417adb8 View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2024

  1. ST sequences: respect allocated amount on restart (#1532)

    Co-authored-by: Kim Altintop <kim@eagain.io>
    gefjon and kim committed Jul 24, 2024
    Configuration menu
    Copy the full SHA
    1d26575 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e9daae9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    45b2cee View commit details
    Browse the repository at this point in the history
  4. spacetime generate - make the source args optional (#1537)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    bfops committed Jul 24, 2024
    Configuration menu
    Copy the full SHA
    1ce62da View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2024

  1. Configuration menu
    Copy the full SHA
    30c000f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    afddf01 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7500ea3 View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2024

  1. Configuration menu
    Copy the full SHA
    769992c View commit details
    Browse the repository at this point in the history
  2. spacetime server add - Remove trailing /s from server URIs (#1552)

    Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
    bfops and bfops committed Jul 26, 2024
    Configuration menu
    Copy the full SHA
    cd5e50a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    216ed04 View commit details
    Browse the repository at this point in the history
  4. Add ErrorStream combinator (#1543)

    Co-authored-by: James Gilles <jgilles@clockworklabs.io>
    kazimuth and James Gilles committed Jul 26, 2024
    Configuration menu
    Copy the full SHA
    c046c0b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3451cab View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2024

  1. Configuration menu
    Copy the full SHA
    8508207 View commit details
    Browse the repository at this point in the history
  2. Fix flaky subscription smoketests (#1536)

    Co-authored-by: Zeke Foppa <github.com/bfops>
    Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
    bfops and bfops committed Jul 29, 2024
    Configuration menu
    Copy the full SHA
    e5cfb1e View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2024

  1. Configuration menu
    Copy the full SHA
    21058e0 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2024

  1. Configuration menu
    Copy the full SHA
    4ffeff7 View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2024

  1. Configuration menu
    Copy the full SHA
    5c585b6 View commit details
    Browse the repository at this point in the history