behavior_machines 0.2.0-aarch64-linux → 0.4.0-aarch64-linux

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 561c15a3beee651173160465ba098d460f888e37c453dd2b215286c7d166e5f5
4
- data.tar.gz: 969301ef5923cfb71f3338a9f493a75fc97adeb627dc8aaaeb4c4e7ae8306c66
3
+ metadata.gz: 9c3b84c9a93bfe6eceed9b33edec1a8e6f05850d49f0fd1140edbea869add414
4
+ data.tar.gz: 8080777b2d48c8ef99b25615c455ad5a6b6f2dee06da05feefa5a50394c23b23
5
5
  SHA512:
6
- metadata.gz: 440211fca6fdf3c3daffe2e355a8e55a4eca1955f4a8cbb56b34c7c0db14d3b2be5da3aa7ace4ab5a2b0d250d8ffeaead0acaad156e90c8f0f3eaf158c0590b9
7
- data.tar.gz: d1a1fefedee8a695c4f5a2378cadc9976c3267a3118fdf7b6eb038143ccb6c301952959a63583e3aa11a0b45bfa1d177fdc5173a13de9097f4bc617055f8cb01
6
+ metadata.gz: dc74f924395e1b5c7d47c567ab7ade7c3d1c977efd01e44a8c8fdf87fad4e1d5046e8a998e79eddf58276043c7c58b633dc066a69b526501b2b0980817e31fc2
7
+ data.tar.gz: 10c977e0c1e46f56fdcf8a4b3ff69af18460a601242c5b21a7f89aea68c9a497d1b03ea06b2e4f90afb00691d47d702f4cd74c6108b583bc9803bff46b2d768d
data/README.md CHANGED
@@ -122,6 +122,24 @@ $ BEHAVIOR_MACHINES_NATIVE=1 ruby app.rb
122
122
  Leaves stay Ruby, so the gain is limited to the tree walk itself. The test
123
123
  suite runs against both backends (`bundle exec rake test:both`).
124
124
 
125
+ ## Releases
126
+
127
+ Release Please manages the Ruby gem and both publishable Rust crates. Use
128
+ conventional commits and merge its release PR to update versions, changelogs,
129
+ the release manifest, and workspace dependency requirements. Do not push
130
+ hand-written version bumps or changelog entries.
131
+
132
+ The release manifest records the last released version of each package, not
133
+ the next planned version. Circuit is registered at its published `0.1.0`;
134
+ its one-time `release-as` override requests `0.3.0` in the next release PR.
135
+ Remove that override from `release-please-config.json` after the release so
136
+ later versions are calculated from conventional commits.
137
+
138
+ Crate-only releases do not trigger Ruby gem publishing. The workflow creates
139
+ GitHub releases for the crates but does not upload them to crates.io. After
140
+ merging the release PR and checking out its release tag, run the Rust tests
141
+ and a `cargo publish --dry-run` for the relevant crate before publishing.
142
+
125
143
  ## License
126
144
 
127
145
  BSD-3-Clause. See [LICENSE](LICENSE).
@@ -37,6 +37,7 @@ module BehaviorMachines
37
37
  # `ticked(node_id, status)` and `halted(node_id)`; node ids number the
38
38
  # definition in pre-order, and children report before their parent.
39
39
  def tick(ctx = nil, now: BehaviorMachines.now, observer: nil)
40
+ DeadlineMachines.check!
40
41
  now = BehaviorMachines.check_time(now)
41
42
  exclusive { @engine.tick(ctx, now, Observers.wrap(observer)) }
42
43
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module BehaviorMachines
4
- VERSION = '0.2.0'
4
+ VERSION = '0.4.0'
5
5
  end
@@ -7,6 +7,8 @@ require_relative 'behavior_machines/definition'
7
7
  require_relative 'behavior_machines/engine'
8
8
  require_relative 'behavior_machines/tree'
9
9
  require_relative 'behavior_machines/machine'
10
+ require 'deadline_machines'
11
+
10
12
  require_relative 'behavior_machines/native_extension'
11
13
 
12
14
  # Behavior trees with explicit halt semantics, following the behavior-tree
@@ -15,8 +17,8 @@ module BehaviorMachines
15
17
  STATUSES = %i[success failure running].freeze
16
18
 
17
19
  class << self
18
- # The current monotonic time in nanoseconds.
19
- def now = Process.clock_gettime(Process::CLOCK_MONOTONIC, :nanosecond)
20
+ # The current monotonic time in nanoseconds, from the family's clock.
21
+ def now = DeadlineMachines.clock.now_ns
20
22
 
21
23
  # Whether the native backend is loaded (opt-in, see NativeExtension).
22
24
  def native_available? = NativeExtension.loaded?
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: behavior_machines
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.4.0
5
5
  platform: aarch64-linux
6
6
  authors:
7
7
  - Abdelkader Boudih
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-14 00:00:00.000000000 Z
11
+ date: 2026-11-01 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: deadline_machines
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0.1'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: state_machines
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -17,7 +31,7 @@ dependencies:
17
31
  - - ">="
18
32
  - !ruby/object:Gem::Version
19
33
  version: '0.202'
20
- type: :runtime
34
+ type: :development
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
@@ -90,13 +104,13 @@ files:
90
104
  - lib/behavior_machines/tree.rb
91
105
  - lib/behavior_machines/version.rb
92
106
  - lib/behavior_machines_native/behavior_machines_native.so
93
- homepage: https://github.com/seuros/behavior-machines
107
+ homepage: https://github.com/seuros/behavior_machines
94
108
  licenses:
95
109
  - BSD-3-Clause
96
110
  metadata:
97
- homepage_uri: https://github.com/seuros/behavior-machines
98
- source_code_uri: https://github.com/seuros/behavior-machines
99
- bug_tracker_uri: https://github.com/seuros/behavior-machines/issues
111
+ homepage_uri: https://github.com/seuros/behavior_machines
112
+ source_code_uri: https://github.com/seuros/behavior_machines
113
+ bug_tracker_uri: https://github.com/seuros/behavior_machines/issues
100
114
  rubygems_mfa_required: 'true'
101
115
  cargo_crate_name: behavior_machines_native
102
116
  cargo_manifest_path: ext/behavior_machines_native/ffi/Cargo.toml