Serge Barral
59d2af51ba
Expose the Protobuf simulation service to WASM/JS
2024-05-27 23:33:02 +02:00
Serge Barral
77e6e569ff
Add same-thread executor support
2024-05-27 23:12:45 +02:00
Jauhien Piatlicki
88d954dde5
Merge pull request #10 from asynchronics/feature-named-model-instances
...
Feature: named model instances
2024-05-17 14:50:43 +02:00
Jaŭhien Piatlicki
195bcdceba
Add instance name to model contexts
2024-05-10 14:32:07 +02:00
Jauhien Piatlicki
4b5195f981
Merge pull request #5 from asynchronics/feature-submodels
...
Add test and improve example
2024-05-10 10:01:50 +02:00
Jaŭhien Piatlicki
02eec1b277
Add test and improve example
2024-05-08 11:20:33 +02:00
Serge Barral
287b3b713c
Merge pull request #9 from asynchronics/fix/ci-failures
...
Fix comments
2024-05-07 12:49:57 +02:00
Serge Barral
2fa159a87f
Fix comments
2024-05-07 12:44:42 +02:00
Serge Barral
8467b35f03
Merge pull request #7 from asynchronics/fix/ci-failures
...
Fix/ci failures
2024-05-07 01:58:05 +02:00
Serge Barral
af3d68e76f
Force the waker VTable to be uniquely instantiated
...
From Rust 1.78, `Waker::will_wake` tests equality by comparing the VTable
pointers rather than the content of the VTable.
Unfortunately, this exposes some instability in the code generation
which sometimes causes several VTables to be instantiated in memory for
the same generic parameters. This can in turn defeat `Waker::will_wake`
if e.g. `Waker::clone` and `Waker::wake_by_*` end up with different
pointers.
The problemt is hopefully addressed by preventing inlining of the VTable
generation function. A test has been added to try to detect regression,
though the test may not be 100% reliable.
2024-05-07 01:37:47 +02:00
Serge Barral
e4b108c6b7
Satisfy newest clippy
2024-05-06 16:45:07 +02:00
Serge Barral
a24e5df62e
Merge pull request #4 from asynchronics/feature-submodels
...
Implement clonable outputs and add submodels example
2024-04-30 10:19:46 +02:00
Jaŭhien Piatlicki
0734dc2fac
Implement clonable outputs and add submodels example
2024-04-29 21:00:12 +02:00
Serge Barral
e7c0c5f217
Merge pull request #3 from asynchronics/fix/grpc-and-codegen-format
...
Fix/grpc and codegen format
2024-04-26 16:14:59 +02:00
Serge Barral
9b4f69c17e
gRPC: small fix + minor changes
2024-04-26 16:10:00 +02:00
Serge Barral
4de071eaf3
Merge pull request #2 from asynchronics/feature/improved-ci
...
Feature/improved ci
2024-04-26 13:55:20 +02:00
Serge Barral
9956c4fa3f
CI: add --all-features and force check on dev
2024-04-26 13:43:06 +02:00
Jauhien Piatlicki
97b173a081
Merge pull request #1 from asynchronics/feature-submodels
...
Add setup step
2024-04-26 11:55:03 +02:00
Jaŭhien Piatlicki
7526ffbcea
Add setup step.
2024-04-26 11:48:11 +02:00
Serge Barral
e84e802f09
Initial (g)RPC implementation
2024-04-25 11:12:54 +02:00
Serge Barral
c984202005
Prepare release v0.2.2
2024-04-04 13:44:10 +02:00
Serge Barral
2c6cecc1b2
Merge pull request #23 from asynchronics/fix/update-multishot-dependency
...
Update `multishot` crate dependency
2024-04-04 13:39:20 +02:00
Serge Barral
8d3427daaf
Fix CI script
2024-04-04 13:37:21 +02:00
Serge Barral
23160ff347
Update multishot
crate dependency
...
A soundness issue was discovered in the `multishot` dependency that
was fixed in 0.3.2.
2024-04-04 13:29:57 +02:00
Serge Barral
bc788443b3
Merge pull request #20 from us-irs/serde-dependency-fix
...
small fix for new serde dependency
2024-03-13 11:39:23 +01:00
8e16f8c9b2
small fix for new serde dependency
2024-03-13 11:10:26 +01:00
Serge Barral
f5f0721663
Merge pull request #19 from us-irs/add-serde-feature
...
Add optional serde feature
2024-03-12 18:15:16 +01:00
dc576013e5
Add optional serde support and make MonotonicTime serializable
2024-03-12 18:11:06 +01:00
Serge Barral
b96ffe7770
Prepare release v0.2.1 (3rd attempt)
2024-03-06 19:52:33 +01:00
Serge Barral
b1a6ae829f
Prepare release v0.2.1 (2nd attempt)
2024-03-06 19:41:34 +01:00
Serge Barral
d2f165abc7
Prepare release v0.2.1
2024-03-06 16:40:43 +01:00
Serge Barral
1be2f48a00
Revert "Merge pull request #12 from asynchronics/feature/event-sinks"
...
This reverts commit 7e881afb638ccc0dbcfc7b539fc152dc923d63e1, reversing
changes made to 9d78e4f72a4c6ff459fc386b2f25beae40b94429.
2024-03-06 16:16:55 +01:00
Serge Barral
43e41012d2
Merge pull request #15 from us-irs/feature/clock-send-bound
...
Add send bound for Clock trait
2024-03-06 14:48:30 +01:00
47af3455ff
Add send bound for Clock trait
2024-03-06 12:27:34 +01:00
Serge Barral
7e881afb63
Merge pull request #12 from asynchronics/feature/event-sinks
...
Small changes and cleanups to prepare the RPC work.
Apart from some internal refactoring, this PR introduces improved `EventSlot` and `EventQueue` (the later was renamed from `EventStream`) which can be connected to several outputs at the same time. They are now unified under the common `EventSink` public trait. The new `Output::connect_sink` replaces and generalizes the former `Output::connect_slot` and `Output::connect_stream` to any type implementing `EventSink`.
2024-02-19 13:47:18 +01:00
Serge Barral
863f995f1b
Small changes and cleanups to prepare the RPC work
2024-02-19 13:20:02 +01:00
Serge Barral
9d78e4f72a
Merge pull request #9 from asynchronics/feature/clock
...
Add support for custom/real-time clocks
2023-08-29 12:58:03 +02:00
Serge Barral
41a38445ee
Correct minor typos
2023-08-29 12:56:57 +02:00
Serge Barral
ef703f5b7e
Add support for custom/real-time clocks
2023-08-29 12:46:40 +02:00
Serge Barral
fe3fd372e7
Prepare release v0.2.0
2023-08-15 17:16:16 +02:00
Serge Barral
f6808adaf9
Mark EventKey
as must_use
2023-08-15 16:07:17 +02:00
Serge Barral
e31597b14d
Merge pull request #7 from asynchronics/feature/schedule-fn-overloading
...
Overload `schedule_*event` methods
2023-08-14 15:58:05 +02:00
Serge Barral
22516fe190
Overload schedule_*event
methods
...
The `schedule_*event_in` and `schedule_*event_at` pairs of methods are
each merged into a single overloaded method accepting either a relative
`Duration`or an absolute `MonotonicTime`.
2023-08-14 15:47:08 +02:00
Serge Barral
a036630c4e
Merge pull request #6 from asynchronics/feature/periodic-events
...
Feature/periodic events
2023-08-14 14:23:44 +02:00
Serge Barral
6ffa685c90
Exclude non-loom test when asynchronix_loom
set
2023-08-14 14:18:46 +02:00
Serge Barral
484b74b3ec
Add tests for periodic/key events
2023-08-14 12:31:35 +02:00
Serge Barral
b0f7e69039
Implement periodic events
2023-07-28 16:18:10 +02:00
Serge Barral
f6c714937a
Update leap second data
2023-07-28 16:16:01 +02:00
Serge Barral
7c52f4b8b5
Merge pull request #5 from asynchronics/feature/better-event-cancellation
...
Feature/better event cancellation
2023-07-21 14:52:21 +02:00
Serge Barral
aeb243d3ec
Simplify priority queue implementation
...
Following to the modification of the event cancellation logic, the
simulator no longer needs to remove key-value pairs from the priority
queue. For this reason, a standard binary heap can now be used.
2023-07-21 14:23:26 +02:00