Skip to content

Releases: ndebuhr/sim

v0.13.0

07 Jan 19:25
Compare
Choose a tag to compare

Commits

  • 2202de1: Add support for randomness customization (Tin Svagelj) #13
  • 0830470: Add set_rng to Simulation (Tin Svagelj) #13
  • e5bbbd7: Fix test and clippy regressions (Neal DeBuhr)
  • a52589b: Merge branch 'Caellian-main' (Neal DeBuhr)
  • 382030f: Increment minor version - bump to v0.13.0 (Neal DeBuhr)

v0.12.0

07 May 17:00
Compare
Choose a tag to compare

Commits

  • c9aef35: Refactor event rule tests - use a dedicated subdirectory for JSON test data (Neal DeBuhr)
  • fff4631: Include optional features when calculating code coverage (Neal DeBuhr)
  • 6a162b5: Add a coupled model for hierarchical model construction (Neal DeBuhr)
  • 411508f: Clean up code formatting in simx (Neal DeBuhr)
  • d747038: Refactor coupled model methods (Neal DeBuhr)
  • 2658be8: Enable event rules derivation for coupled models (Neal DeBuhr)
  • d138446: Refactor conditional use declarations in the event rules tests (Neal DeBuhr)
  • c1f77c1: Refactor wildcard use declarations in integration tests (Neal DeBuhr)
  • 8aec089: Improve error handling in non-wasm integration tests (Neal DeBuhr)
  • a565a61: Miscellaneous refactoring (Neal DeBuhr)
  • f22f683: Increment minor version - bump to v0.12.0 (Neal DeBuhr)

v0.11.0

22 Feb 02:47
Compare
Choose a tag to compare

Commits

  • 0e62d32: Fix needless borrows - where expressions are borrowing a reference that is immediately dereferenced by the compiler (ndebuhr)
  • c8a4aed: Refactor a complex stopwatch model iterator (ndebuhr)
  • 5397ef1: Loosen dependency version requirements, for lazy_static, wasm-bindgen, console_error_panic_hook, wee_alloc, and wasm-bindgen-test (ndebuhr)
  • 18da9f3: Exclude the console_error_panic_hook feature, by default - a panic hook is unnecessary for non-WASM projects (Neal DeBuhr)
  • f9f9a6c: Integrate SimX (https://github.com/ndebuhr/simx) into the core sim repository, as a workspace member (Neal DeBuhr)
  • e8e2c3b: Update the outdated wee_alloc Cargo.toml comment and do not use wee_alloc when running CI tests (Neal DeBuhr)
  • d8c3f8d: Fix a typo in the batcher_event_rules test error handling (Neal DeBuhr)
  • 7bf2aef: Strip whitespace in event rule tests, to circumvent discrepancies between stable and nightly rust abstract syntax tree serialization (Neal DeBuhr)
  • 20e0614: Use formatted/pretty JSON for event rule tests since whitespace is stripped during the tests anyway (Neal DeBuhr)
  • 44aa4cc: Apply a cfg attribute to explicitly scope the strip_whitespace feature-limited function (used in event rule tests) (Neal DeBuhr)
  • c8d0da4: Remove to_string methods when they are redundantly used in a format macro (Neal DeBuhr)
  • 6d9b1bf: Increment minor version - bump to v0.11.0 (Neal DeBuhr)

v0.10.0

26 Jul 15:10
Compare
Choose a tag to compare

Commits

  • 5bb9246: Refine the organization of random variable, simulator, and error handling modules (ndebuhr)
  • d5447d2: Use match expressions in the internal and external transition functions, for easier interpretation of state space and state variable conditionals (ndebuhr)
  • 2706961: Refactoring - small, miscellaneous code quality improvements (ndebuhr)
  • c94ebe9: Separate model technical specifications from model reporting mechanisms by expanding/splitting traits (ndebuhr)
  • bcbbff5: Use a consistent mechanism of record keeping and record fetching across models (ndebuhr)
  • 964d0d5: Increment version - bump to v0.10.0 (ndebuhr)

v0.9.2

05 Jul 19:12
Compare
Choose a tag to compare

Commits

  • dfd5d02: Remove units from the Stopwatch status reporting - the time basis does not need to be seconds, so it does not make sense to hard code that in the status reporting (ndebuhr)
  • 2a70d21: Add Stopwatch model documentation (ndebuhr)
  • f4a1728: Add a separate Stopwatch status for when no job durations have been measured (ndebuhr)
  • a3259d4: Increment version - bump to v0.9.2 (ndebuhr)

v0.9.1

02 Jul 02:22
Compare
Choose a tag to compare

Commits

  • 9eba3fe: Update the Processor model output port ID, for better alignment with conventions across the other models (ndebuhr)
  • af65069: Use up-to-date and succinct content in the README usage instructions (ndebuhr)
  • 593d8e9: Update README documentation links (ndebuhr)
  • 7a50169: Add a Stopwatch model (ndebuhr)
  • aa14825: Increment version - bump to v0.9.1 (ndebuhr)

v0.9.0

24 Jun 19:39
Compare
Choose a tag to compare

Commits

  • ef09203: Upgrade to GitHub-native Dependabot (dependabot-preview[bot]) #9
  • e758483: Preregister the Batcher model for use in WASM simulations (ndebuhr)
  • 1f6560a: Refactoring - clean up error handling, make iterators more succinct, and alphabetize Cargo dependencies (ndebuhr)
  • d92695c: Update the Generator model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • 0de618b: Add custom model tests (ndebuhr)
  • e7e1bfc: Update the Load Balancer model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • f99ede3: Update the Parallel Gateway model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • 4dbeb75: Update the Processor model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • c78640c: Run web tests in both the cargo and wasm-pack test suites (ndebuhr)
  • f9a8838: Add the step_n_with_custom_passive_model_wasm test to the cargo test suite (ndebuhr)
  • 1d34b29: Update the Stochastic Gate model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • e37dbab: Update the Storage model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • 02d21a0: Remove residual default port utility functions, which are no longer needed after models restructuring (ndebuhr)
  • fa18274: Modify the AsModel trait definition to strictly require Moore machine outputs (ndebuhr)
  • c1a62a6: Increment version - bump to v0.9.0 (ndebuhr)

v0.8.0

23 May 14:35
Compare
Choose a tag to compare

Commits

  • Ignore .DS_Store files #8 (Kyrylo Polezhaiev)
  • [26a9611]: Replace inner concrete model enum with trait object and dynamic dispatch (Kyrylo Polezhaiev) #8
  • [e574d6d]: Erase dead code (Kyrylo Polezhaiev) #8
  • Partially implement Visitor for whole Model #8 (Kyrylo Polezhaiev)
  • Ignore .vscode/ subfolder #8 (Kyrylo Polezhaiev)
  • Add partial field deserializer #8 (Kyrylo Polezhaiev)
  • Group all concrete-model-specific fields in hash map #8 (Kyrylo Polezhaiev)
  • Hardcode deserialization for Generator, ExclusiveGateway, Processor and Storage #8 (Kyrylo Polezhaiev)
  • Simplify unwrapping of extra fields #8 (Kyrylo Polezhaiev)
  • Decouple serialized struct, hardcode type strings for all the models #8 (Kyrylo Polezhaiev)
  • Serialize using type of inner concrete model #8 (Kyrylo Polezhaiev)
  • Partially implement serialization #8 (Kyrylo Polezhaiev)
  • Implement cloning of box with concrete Model object #8 (Kyrylo Polezhaiev)
  • Map serde_json errors to general de::Error #8 (Kyrylo Polezhaiev)
  • Store extra model representation fields (related to concrete model) as YAML value #8 (Kyrylo Polezhaiev)
  • Simplify concrete model creation #8 (Kyrylo Polezhaiev)
  • Decouple #8 (Kyrylo Polezhaiev)
  • Add list of Model constructors #8 (Kyrylo Polezhaiev)
  • Decouple constructor functions #8 (Kyrylo Polezhaiev)
  • Lazy ref and cache list of possible concrete model variants #8 (Kyrylo Polezhaiev)
  • [4135a9d]: Convert some of the standard Rust integration tests in simulations.rs to equivalent WASM browser tests in web.rs, for improved ongoing verification of WASM target compatibility (ndebuhr)
  • Expose method to insert new constructor, guard list of constructors with mutex #8 (Kyrylo Polezhaiev)
  • [0c177b5]: model_factory, generator: Decouple Generator deserialization (Kyrylo Polezhaiev) #8
  • Decouple ExclusiveGateway, Processor and Storage deserializers #8 (Kyrylo Polezhaiev)
  • Add deserializers for Gate, LoadBalancer, ParallelGateway and StochasticGate #8 (Kyrylo Polezhaiev)
  • Unify deserializers #8 (Kyrylo Polezhaiev)
  • Temporary make utils module public #8 (Kyrylo Polezhaiev)
  • [bdacf9e]: Merge branch 'main' into wip/model-trait (Kyrylo Polezhaiev) #8
  • Add dummy proc-macro sub-crate #8 (Kyrylo Polezhaiev)
  • [2a9f876]: sim_derive, models: Group generated functions in SerializableModel trait (Kyrylo Polezhaiev) #8
  • [bac6655]: Format code better using cargo fmt (Kyrylo Polezhaiev) #8
  • Add register macro to ease registering of custom models by crate users #8 (Kyrylo Polezhaiev)
  • Specify versions of dependencies #8 (Kyrylo Polezhaiev)
  • Format code using cargo fmt #8 (Kyrylo Polezhaiev)
  • Fix error handling for case when requested model is not registered #8 (Kyrylo Polezhaiev)
  • [85b3549]: Refactoring - use incoming message references across the simulator-model boundary (ndebuhr)
  • [803c51b]: Refactoring - use the dedicated copied method, instead of an explicit closure for copying elements (ndebuhr)
  • [830b288]: Update the Exclusive Gateway model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • [b4d5592]: Optimizing - run events_int only if a model actually has events to execute (ndebuhr)
  • [eabb64d]: Improve the Exclusive Gateway model - better status reporting, cleaner phase matching, and expanded invalid model state error handling (ndebuhr)
  • [e53f5ac]: Update the Gate model to better align with the DEVS formalism - use Moore machine style outputs and decouple conditionality from state changes (ndebuhr)
  • [331ff15]: Add a Batcher model (ndebuhr)
  • [6befe0d]: Refactoring - clean up the repository structure by clearly separating sim from sim_derive (shared documentation, shared licenses, and a simple virtual manifest at the root) (ndebuhr)
  • [b6920be]: Expand the metadata in the sim_derive Cargo.toml file and remove residual (unused) excludes from the sim Cargo.toml file (ndebuhr)
  • [4f0c465]: Update the sim_derive package description (ndebuhr)
  • [4ae48a9]: Move the README logo image out of the repository (ndebuhr)
  • [b3ff0d3]: Increment version - bump to v0.8.0 (ndebuhr)

v0.7.0

03 Apr 13:31
Compare
Choose a tag to compare

Commits

  • [a434aed]: Expand constructor and accessor methods for core simulation structs (ndebuhr)
  • [870e7f4]: Convert the test simulations to integration tests - making them better examples that only use the public API (ndebuhr)
  • [8d0a58d]: Simulator and model clocks refactoring - maintain a single simulation clock at the simulator level (ndebuhr)
  • [ee8f354]: Separate the simulator code into three smaller modules - simulator, web simulator, and couplings (ndebuhr)
  • [1c9aef2]: Refactoring - bundle simulator services (currently, a simulation clock and uniform RNG) for cleaner model interfaces (ndebuhr)
  • [bdbb890]: Increment version - bump to v0.7.0 (ndebuhr)

v0.6.0

22 Mar 00:50
Compare
Choose a tag to compare

Commits

  • [b622399]: Have serialization add the 'type' field appropriately (Tomasz Kurcz) #1
  • [5c729d4]: Simplify the whole model serialization story (Tomasz Kurcz) #2
  • [5d277a3]: Relax the enum_dispatch version requirements (Tomasz Kurcz) #2
  • [9df24cf]: Move id out of specific model types and into the general wrapper struct (Tomasz Kurcz) #2
  • [5557b45]: Remove dependency added by accident (Tomasz Kurcz) #2
  • [b3fb72f]: Refactoring - remove unnecessary nesting for the test simulations module (ndebuhr)
  • [b5c7515]: Merge branch 'main' into serialization-overhaul (Neal) #2
  • [8545f23]: Use dependency caching to improve build times in CI and Codecov workflows (ndebuhr)
  • [d321c21]: Fix a yaml formatting issue in the CI workflow (ndebuhr)
  • [ce4919c]: Split CI dependency caching - use a separate cache for each rust channel (ndebuhr)
  • [ed4c13f]: Use some re-exports for a cleaner, more convenient public API (ndebuhr)
  • [0e3f50b]: Update the documentation around Model, AsModel, and ModelType (ndebuhr)
  • [fbfba1d]: Increment version - bump to v0.6.0 (ndebuhr)