labcode 0.4.0__tar.gz → 0.6.0__tar.gz
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.
- {labcode-0.4.0 → labcode-0.6.0}/PKG-INFO +3 -3
- {labcode-0.4.0 → labcode-0.6.0}/labcode.egg-info/PKG-INFO +3 -3
- {labcode-0.4.0 → labcode-0.6.0}/labcode.egg-info/requires.txt +2 -2
- labcode-0.6.0/labcode.egg-info/scm_version.json +8 -0
- {labcode-0.4.0 → labcode-0.6.0}/pyproject.toml +18 -6
- labcode-0.4.0/labcode.egg-info/scm_version.json +0 -8
- {labcode-0.4.0 → labcode-0.6.0}/.github/workflows/ci.yml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/.github/workflows/publish.yml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/.gitignore +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/LICENSE +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/MANIFEST.in +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/README.md +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/SPECIFICATIONS.md +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/README.md +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/plate_line.boundary.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/plate_line.observation.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/plate_line.plan.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/plate_line.svg +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/sila2_plate_cycle.boundary.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/sila2_plate_cycle.observation.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/sila2_plate_cycle.plan.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/outputs/sila2_plate_cycle.svg +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/plate_line.boundary.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/plate_line.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/plate_line.workflow.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/preflight_sila2_env.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/render_plate_line.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/render_sila2_plate_cycle.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/run_all_sila2_examples.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/run_sila2_plate_cycle.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/run_sila2_plate_cycle_no_atc.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/run_sila2_seal.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_plate_cycle.boundary.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_plate_cycle.workflow.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_plate_cycle.wrapped.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_plate_cycle_no_atc.boundary.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_plate_cycle_no_atc.workflow.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_plate_cycle_no_atc.wrapped.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_seal.boundary.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_seal.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_seal.workflow.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/examples/sila2_seal.wrapped.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/__init__.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/__main__.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/_child.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/backend.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/cli.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/dialect.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/extension.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/idgen.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/objectid.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/otel.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/otel_sila2.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/probe.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/py.typed +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/record.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/run_cli.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/runner.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/sila2.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/sila2_commands.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode/sila2_instrument.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode.egg-info/SOURCES.txt +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode.egg-info/dependency_links.txt +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode.egg-info/entry_points.txt +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode.egg-info/scm_file_list.json +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/labcode.egg-info/top_level.txt +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/setup.cfg +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/fixtures/device_script.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/fixtures/device_script.workflow.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/fixtures/replenishment.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/fixtures/reroute_device.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/fixtures/reroute_transporter.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/fixtures/transport.env.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/fixtures/transport.workflow.yaml +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_backend.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_cli.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_dialect.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_objectid.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_otel.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_otel_child.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_otel_grpc.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_otel_sila2.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_probe.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_record.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_recording.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_run_cli.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_sila2.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_sila2_commands.py +0 -0
- {labcode-0.4.0 → labcode-0.6.0}/tests/test_sila2_instrument.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: labcode
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.6.0
|
|
4
4
|
Summary: labcode -- a dialect wrapper over the Object-Flow Programming Language toolchain
|
|
5
5
|
Author-email: Kazunari Kaizu <kwaizu@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -21,8 +21,8 @@ Requires-Python: >=3.10
|
|
|
21
21
|
Description-Content-Type: text/markdown
|
|
22
22
|
License-File: LICENSE
|
|
23
23
|
Requires-Dist: ofplang-validate<0.3,>=0.2
|
|
24
|
-
Requires-Dist: ofplang-schedule<0.
|
|
25
|
-
Requires-Dist: ofplang-run<0.
|
|
24
|
+
Requires-Dist: ofplang-schedule<0.11,>=0.9
|
|
25
|
+
Requires-Dist: ofplang-run<0.10,>=0.8
|
|
26
26
|
Provides-Extra: test
|
|
27
27
|
Requires-Dist: pytest>=7.0; extra == "test"
|
|
28
28
|
Requires-Dist: opentelemetry-sdk>=1.20; extra == "test"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: labcode
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.6.0
|
|
4
4
|
Summary: labcode -- a dialect wrapper over the Object-Flow Programming Language toolchain
|
|
5
5
|
Author-email: Kazunari Kaizu <kwaizu@gmail.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -21,8 +21,8 @@ Requires-Python: >=3.10
|
|
|
21
21
|
Description-Content-Type: text/markdown
|
|
22
22
|
License-File: LICENSE
|
|
23
23
|
Requires-Dist: ofplang-validate<0.3,>=0.2
|
|
24
|
-
Requires-Dist: ofplang-schedule<0.
|
|
25
|
-
Requires-Dist: ofplang-run<0.
|
|
24
|
+
Requires-Dist: ofplang-schedule<0.11,>=0.9
|
|
25
|
+
Requires-Dist: ofplang-run<0.10,>=0.8
|
|
26
26
|
Provides-Extra: test
|
|
27
27
|
Requires-Dist: pytest>=7.0; extra == "test"
|
|
28
28
|
Requires-Dist: opentelemetry-sdk>=1.20; extra == "test"
|
|
@@ -41,10 +41,16 @@ classifiers = [
|
|
|
41
41
|
# `dispatch_replenishment` seam and the `kind: replenishment` the child harness has to
|
|
42
42
|
# recognise as side-effect only.
|
|
43
43
|
#
|
|
44
|
-
# `ofplang-schedule>=0.8`
|
|
45
|
-
#
|
|
46
|
-
#
|
|
47
|
-
#
|
|
44
|
+
# `ofplang-schedule>=0.9` and `ofplang-run>=0.8` are required together, not merely
|
|
45
|
+
# tested against: the runner now carries the plan itself from one replan to the next
|
|
46
|
+
# instead of rebuilding a status, and the scheduler is what makes that possible -- it
|
|
47
|
+
# derives what a stopped job is still holding rather than being told, takes
|
|
48
|
+
# `carry_levels_to_now` so a departing job's draws are not handed back, and replans a
|
|
49
|
+
# pending refill rather than refusing the document carrying one. Pairing an older
|
|
50
|
+
# scheduler with this runner has every replan refused, and a refused replan stops
|
|
51
|
+
# every job of the run. The `>=0.8` floor it replaces was required because `lc run`
|
|
52
|
+
# passes `--max-transport-legs` through (schedule SPEC §6.4.1) and a job may leave a
|
|
53
|
+
# running plan (§6.11). The `>=0.5` floor before that was required because an environment may
|
|
48
54
|
# declare a route that needs no transporter (`transporter: null`, schedule §4.6/§5.4) and
|
|
49
55
|
# this dialect accepts a `sila2` script on one, but an older scheduler refuses the
|
|
50
56
|
# environment with `wrong_type` before there is a plan to run -- and `ofplang-run>=0.6` is
|
|
@@ -55,6 +61,12 @@ classifiers = [
|
|
|
55
61
|
# workflow acceptance of 0.1.3. CI resolves the siblings from PyPI, so every run of this suite and
|
|
56
62
|
# every real-lab example already happens on it, and run's own floor requires it anyway
|
|
57
63
|
# (an older scheduler reports a running refill free before it is).
|
|
64
|
+
#
|
|
65
|
+
# 🔴 The `<0.11` / `<0.10` bounds are bounds, not floors. schedule 0.10 refuses two jobs
|
|
66
|
+
# binding one boundary spot where it used to warn, and run 0.9 records a backend's
|
|
67
|
+
# refusal as the activity failing instead of letting it escape `run()`. Both change what
|
|
68
|
+
# happens to a document or a run this package hands over, not anything this package
|
|
69
|
+
# calls, so the floors stay where they are and only the bounds move to admit them.
|
|
58
70
|
dependencies = [
|
|
59
71
|
# Upper bounds are deliberate. A sibling's minor version is where a
|
|
60
72
|
# specification revision lands, and a revision may reject documents an earlier one
|
|
@@ -64,8 +76,8 @@ dependencies = [
|
|
|
64
76
|
# bounds cannot protect what is already on PyPI without one, which is why they go
|
|
65
77
|
# in now rather than at the first breakage.
|
|
66
78
|
"ofplang-validate>=0.2,<0.3",
|
|
67
|
-
"ofplang-schedule>=0.
|
|
68
|
-
"ofplang-run>=0.
|
|
79
|
+
"ofplang-schedule>=0.9,<0.11",
|
|
80
|
+
"ofplang-run>=0.8,<0.10",
|
|
69
81
|
]
|
|
70
82
|
|
|
71
83
|
[project.urls]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|