Skip to content

Commit 1dc00a7

Browse files
authored
Merge branch 'master' into bfops/wasm-test
2 parents 6b01a1a + cfa619f commit 1dc00a7

24 files changed

Lines changed: 784 additions & 486 deletions

File tree

crates/bench/benches/index.rs

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
use core::{any::type_name, hash::BuildHasherDefault, hint::black_box, iter::repeat_with, mem, time::Duration};
1+
use core::{
2+
any::type_name, hash::BuildHasherDefault, hash::Hash, hint::black_box, iter::repeat_with, mem, time::Duration,
3+
};
24
use criterion::{
35
criterion_group, criterion_main,
46
measurement::{Measurement as _, WallTime},
@@ -14,13 +16,9 @@ use rand::{
1416
use spacetimedb_lib::AlgebraicValue;
1517
use spacetimedb_sats::{layout::Size, product, u256};
1618
use spacetimedb_table::indexes::{PageIndex, PageOffset, RowPointer, SquashedOffset};
17-
use spacetimedb_table::table_index::uniquemap::UniqueMap;
18-
use spacetimedb_table::table_index::Index as _;
19-
use spacetimedb_table::table_index::{
20-
unique_direct_index::{ToFromUsize, UniqueDirectIndex},
21-
KeySize,
22-
};
23-
use std::hash::Hash;
19+
use spacetimedb_table::table_index::unique_btree_index::UniqueBTreeIndex;
20+
use spacetimedb_table::table_index::unique_direct_index::{ToFromUsize, UniqueDirectIndex};
21+
use spacetimedb_table::table_index::{Index as _, KeySize};
2422

2523
fn time<R>(body: impl FnOnce() -> R) -> Duration {
2624
let start = WallTime.start();
@@ -201,7 +199,7 @@ trait Index: Clone {
201199
}
202200

203201
#[derive(Clone)]
204-
struct IBTree<K: KeySize<MemoStorage: Clone + Default>>(UniqueMap<K>);
202+
struct IBTree<K: KeySize<MemoStorage: Clone + Default>>(UniqueBTreeIndex<K>);
205203
impl<K: KeySize<MemoStorage: Clone + Default> + Clone + Eq + Hash + Ord> Index for IBTree<K> {
206204
type K = K;
207205
fn new() -> Self {

crates/cli/src/subcommands/dev.rs

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -470,8 +470,23 @@ pub async fn exec(mut config: Config, args: &ArgMatches) -> Result<(), anyhow::E
470470

471471
let spacetime_config = loaded_config.as_ref().map(|lc| &lc.config);
472472
let using_spacetime_config = spacetime_config.is_some();
473-
let generate_configs_from_file: Vec<HashMap<String, serde_json::Value>> =
474-
spacetime_config.and_then(|c| c.generate.clone()).unwrap_or_default();
473+
let generate_configs_from_file: Vec<HashMap<String, serde_json::Value>> = {
474+
let mut entries = spacetime_config.and_then(|c| c.generate.clone()).unwrap_or_default();
475+
// Inherit top-level `module-path` into generate entries that don't specify their own.
476+
// Without this, `generate` entries fall back to the hardcoded "spacetimedb" default
477+
// even when the top-level config has a module-path set.
478+
if let Some(top_level_module_path) = spacetime_config
479+
.and_then(|c| c.additional_fields.get("module-path"))
480+
.cloned()
481+
{
482+
for entry in &mut entries {
483+
entry
484+
.entry("module-path".to_string())
485+
.or_insert(top_level_module_path.clone());
486+
}
487+
}
488+
entries
489+
};
475490

476491
// Re-resolve publish targets now that config files may have been created by init.
477492
if publish_configs.is_empty() {

0 commit comments

Comments
 (0)