@guidanti/duet 1.8.0 → 1.9.0

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.
package/README.md CHANGED
@@ -40,7 +40,7 @@ Setup also creates six starter instruction files under `~/.duet/instructions/`,
40
40
 
41
41
  ## What your runtimes are called
42
42
 
43
- A managed runtime is named by the version it publishes: `~/.duet/installations/1.8.0/`. That name is what `duet select`, `duet remove` and every report use, and `duet --version` prints the version alone. The build identity -- a digest of the exact bytes installed -- is kept where it is load-bearing instead of in the name: the runtime's own manifest, every run's pin, and the reports whose job is to say which build this is (`duet self-check`, `duet status --installations`, and `duet select` listing what is there, interactively on a terminal and read-only under `--json`).
43
+ A managed runtime is named by the version it publishes: `~/.duet/installations/1.9.0/`. That name is what `duet select`, `duet remove` and every report use, and `duet --version` prints the version alone. The build identity -- a digest of the exact bytes installed -- is kept where it is load-bearing instead of in the name: the runtime's own manifest, every run's pin, and the reports whose job is to say which build this is (`duet self-check`, `duet status --installations`, and `duet select` listing what is there, interactively on a terminal and read-only under `--json`).
44
44
 
45
45
  Runtimes installed before this release are named `<version>+<build id>`, and they keep that name: they stay listed, stay selectable and stay runnable, nothing is renamed, and no run is repinned. Select one by its full name. A bare version that *is* the name of a runtime selects that runtime; a bare version that is not a name, and that two older runtimes share, is ambiguous and refuses with both names printed for you to choose from. `duet remove` takes an exact name only.
46
46
 
@@ -56,9 +56,9 @@ That removes this package and the `duet` npm linked onto your PATH. It removes n
56
56
 
57
57
  ## This build
58
58
 
59
- - version `1.8.0`, build `646869928c864ea4`
60
- - artifact `duet-1.8.0-py3-none-any.whl`
61
- - `sha256=41b3258715af0b49865c4b4151eac320019abf3dae66815e9626ab571c9bfe96`
59
+ - version `1.9.0`, build `00bad774e066ab13`
60
+ - artifact `duet-1.9.0-py3-none-any.whl`
61
+ - `sha256=126f6a3b8139990f2ac0008947c0417ff92b5e45558f9d0d7f35525816897f26`
62
62
 
63
63
  ## Permission to use duet
64
64
 
@@ -0,0 +1,15 @@
1
+ {
2
+ "build_id": "00bad774e066ab13",
3
+ "name": "duet",
4
+ "schema": 1,
5
+ "source": {
6
+ "clean": true,
7
+ "commit": "6bb9a3be09ef3fff1846c4a65ce495c893f96fec"
8
+ },
9
+ "verification": {
10
+ "contract": 2
11
+ },
12
+ "version": "1.9.0",
13
+ "wheel": "duet-1.9.0-py3-none-any.whl",
14
+ "wheel_sha256": "126f6a3b8139990f2ac0008947c0417ff92b5e45558f9d0d7f35525816897f26"
15
+ }
package/bin/duet CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/bin/sh
2
- # Generated by duet.npm for @guidanti/duet 1.8.0.
2
+ # Generated by duet.npm for @guidanti/duet 1.9.0.
3
3
  #
4
4
  # This is the whole of what npm puts on your PATH. It invokes no
5
5
  # Node, no npm and no source checkout: it finds the managed
@@ -34,8 +34,8 @@ duet: there is no executable duet dispatcher at $dispatcher.
34
34
  file is written. This message cannot tell you which of those
35
35
  happened, and it says nothing about what is installed under
36
36
  $root or which release is selected there.
37
- Install or retry: npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet
38
- See why it failed: npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet --foreground-scripts
37
+ Install or retry: npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet
38
+ See why it failed: npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet --foreground-scripts
39
39
  If scripts are off: npm config get ignore-scripts
40
40
  Run setup by hand: /bin/sh "$here/lib/setup.sh"
41
41
  A successful setup installs this package's release and makes it
@@ -55,14 +55,14 @@ set_up_here() {
55
55
  [ -f "$1" ] || return 1
56
56
  while IFS= read -r line; do
57
57
  case "$line" in
58
- *'"wheel_sha256": "41b3258715af0b49865c4b4151eac320019abf3dae66815e9626ab571c9bfe96"'*) return 0 ;;
58
+ *'"wheel_sha256": "126f6a3b8139990f2ac0008947c0417ff92b5e45558f9d0d7f35525816897f26"'*) return 0 ;;
59
59
  esac
60
60
  done < "$1"
61
61
  return 1
62
62
  }
63
63
  if ! set_up_here "$root/npm.json"; then
64
64
  cat >&2 <<INCOMPLETE
65
- duet: @guidanti/duet 1.8.0 is installed and no setup record under
65
+ duet: @guidanti/duet 1.9.0 is installed and no setup record under
66
66
  $root names the artifact it carries.
67
67
  That record names the one artifact its own setup installed, so
68
68
  this reads the same whether none has been written here, a setup
@@ -75,8 +75,8 @@ duet: @guidanti/duet 1.8.0 is installed and no setup record under
75
75
  dispatcher decides that from the pin of the run you named and the
76
76
  selected default, and every run still reaches the build it was
77
77
  started on.
78
- Retry the setup: npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet
79
- See why it failed: npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet --foreground-scripts
78
+ Retry the setup: npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet
79
+ See why it failed: npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet --foreground-scripts
80
80
  If scripts are off: npm config get ignore-scripts
81
81
  Run setup by hand: /bin/sh "$here/lib/setup.sh"
82
82
  npm runs no install script for a package it decides is already up
package/duet-npm.json CHANGED
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "artifact": {
3
- "build_id": "646869928c864ea4",
4
- "sidecar": "duet-1.8.0.artifact.json",
3
+ "build_id": "00bad774e066ab13",
4
+ "sidecar": "duet-1.9.0.artifact.json",
5
5
  "verification": {
6
6
  "contract": 2
7
7
  },
8
- "wheel": "duet-1.8.0-py3-none-any.whl",
9
- "wheel_sha256": "41b3258715af0b49865c4b4151eac320019abf3dae66815e9626ab571c9bfe96"
8
+ "wheel": "duet-1.9.0-py3-none-any.whl",
9
+ "wheel_sha256": "126f6a3b8139990f2ac0008947c0417ff92b5e45558f9d0d7f35525816897f26"
10
10
  },
11
11
  "contents": {
12
12
  "LICENSE.md": "cbc7853b308655c45a049a2c8c53c0a5e556cee29229d80209cbe82a896b1d0e",
13
13
  "NOTICE.md": "8cf095fd1e5abc0c29634b010890189a9a8a340f96358db93635650dbdf5ed89",
14
- "README.md": "d6dfb6578fcc618c5e0f16287cffcf59c395b7092b3065ea755be912da641a40",
15
- "artifact/duet-1.8.0-py3-none-any.whl": "41b3258715af0b49865c4b4151eac320019abf3dae66815e9626ab571c9bfe96",
16
- "artifact/duet-1.8.0.artifact.json": "a9ab64af12e028b13f910bc6d3be7a15d78faa1390252a89b4145b9482d9642c",
17
- "bin/duet": "95a9762078fd565fa00d42a0cb5d2b4ca07e2fcd591facdb6e7b575517e79d8a",
18
- "lib/setup.py": "d5a541812753e0d4fd395a8d3cbe6a7ecebeefb2b0b8cac92745a60070935e49",
19
- "lib/setup.sh": "36d67424731e66c34333f0873dd3851563a2dc2c2890696f55ee9a4f4781f7de",
20
- "package.json": "d80756c675be0a36ac2ad4759c86261eb404b70c1d461e7631a93657791554d9"
14
+ "README.md": "dd80dc22bce122ca3f5af3d2afd9242f634d1db1f41a003ae38f22a21c8b768c",
15
+ "artifact/duet-1.9.0-py3-none-any.whl": "126f6a3b8139990f2ac0008947c0417ff92b5e45558f9d0d7f35525816897f26",
16
+ "artifact/duet-1.9.0.artifact.json": "084e7f915434f5ac70e9775fb077aa2bb7e18429a665bc90b00f7c647d53d8ee",
17
+ "bin/duet": "67c43a86457b9c38abd6f0a9e33b4bf2f2b78ffce0d59dcc5c17445dc0d318b3",
18
+ "lib/setup.py": "cb1e1efde7ec58dd14b2eb73097391858a063ffafdf5e362df3a901bc170795f",
19
+ "lib/setup.sh": "8b86b06c2c9e683a791b7e284ce1cdfc883e88c0defb39f7e471839d5397b396",
20
+ "package.json": "d8b7cd0fb9351cf1767ae4518ca77fc87679d40dcdc61305e3db7ea0ad148849"
21
21
  },
22
22
  "notices": [
23
23
  "LICENSE.md",
@@ -27,7 +27,7 @@
27
27
  "schema": 1,
28
28
  "source": {
29
29
  "clean": true,
30
- "commit": "5d13ae499990e613e949e7501c13d3aad8808426"
30
+ "commit": "6bb9a3be09ef3fff1846c4a65ce495c893f96fec"
31
31
  },
32
- "version": "1.8.0"
32
+ "version": "1.9.0"
33
33
  }
package/lib/setup.py CHANGED
@@ -1,4 +1,4 @@
1
- """Generated by duet.npm for @guidanti/duet 1.8.0.
1
+ """Generated by duet.npm for @guidanti/duet 1.9.0.
2
2
 
3
3
  The install script's Python half: check the bundled artifact against
4
4
  the digest this file was generated with, import the installer out of
@@ -10,12 +10,12 @@ import os
10
10
  import sys
11
11
 
12
12
  PACKAGE = '@guidanti/duet'
13
- PACKAGE_VERSION = '1.8.0'
13
+ PACKAGE_VERSION = '1.9.0'
14
14
  HERE = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
15
- WHEEL = os.path.join(HERE, 'artifact', 'duet-1.8.0-py3-none-any.whl')
16
- SIDECAR = os.path.join(HERE, 'artifact', 'duet-1.8.0.artifact.json')
17
- WHEEL_SHA256 = '41b3258715af0b49865c4b4151eac320019abf3dae66815e9626ab571c9bfe96'
18
- REINSTALL = ('The files in this installed package are not the ones it was published with, and npm runs nothing for a package it decides is already up to date. Remove it and install it again:', ' npm uninstall --global @guidanti/duet', ' npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet', "That install names this package's own version, so a release you installed deliberately is the release you get back.", 'That uninstall takes this package and the duet npm linked onto your PATH. It takes nothing under ~/.duet: every managed runtime, every run and every piece of evidence stays where it is.')
15
+ WHEEL = os.path.join(HERE, 'artifact', 'duet-1.9.0-py3-none-any.whl')
16
+ SIDECAR = os.path.join(HERE, 'artifact', 'duet-1.9.0.artifact.json')
17
+ WHEEL_SHA256 = '126f6a3b8139990f2ac0008947c0417ff92b5e45558f9d0d7f35525816897f26'
18
+ REINSTALL = ('The files in this installed package are not the ones it was published with, and npm runs nothing for a package it decides is already up to date. Remove it and install it again:', ' npm uninstall --global @guidanti/duet', ' npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet', "That install names this package's own version, so a release you installed deliberately is the release you get back.", 'That uninstall takes this package and the duet npm linked onto your PATH. It takes nothing under ~/.duet: every managed runtime, every run and every piece of evidence stays where it is.')
19
19
 
20
20
 
21
21
  def refuse(message, *lines):
package/lib/setup.sh CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/bin/sh
2
- # Generated by duet.npm for @guidanti/duet 1.8.0.
2
+ # Generated by duet.npm for @guidanti/duet 1.9.0.
3
3
  #
4
4
  # npm runs this once, after it has unpacked the package. It finds an
5
5
  # interpreter that can run the installer and hands over to it; the
@@ -66,7 +66,7 @@ duet: DUET_SETUP_PYTHON names $DUET_SETUP_PYTHON, which duet will not run as an
66
66
  Install Python from https://www.python.org/downloads/macos/
67
67
  An explicit interpreter is an instruction, so duet does not look elsewhere when it is unusable.
68
68
  Nothing was installed and nothing was selected. Unset it or name another, then run:
69
- npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet
69
+ npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet
70
70
  npm runs no install script for a package it decides is already up to date, so that install can do nothing at all. While this package is installed, its own setup script always runs setup, for the release it carries:
71
71
  /bin/sh "$here/lib/setup.sh"
72
72
  OVERRIDE
@@ -109,8 +109,8 @@ if [ -z "$found" ]; then
109
109
  duet: no usable Python was found, and duet does not install one.
110
110
  duet needs CPython >=3.9 on macOS (arm64), able to create a virtual environment.
111
111
  Install Python from https://www.python.org/downloads/macos/
112
- Then run: npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet
113
- Or name one yourself: DUET_SETUP_PYTHON=/path/to/python3 npm install --global @guidanti/duet@1.8.0 --allow-scripts=@guidanti/duet
112
+ Then run: npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet
113
+ Or name one yourself: DUET_SETUP_PYTHON=/path/to/python3 npm install --global @guidanti/duet@1.9.0 --allow-scripts=@guidanti/duet
114
114
  npm runs no install script for a package it decides is already up to date, so that install can do nothing at all. While this package is installed, its own setup script always runs setup, for the release it carries:
115
115
  /bin/sh "$(npm root -g)/@guidanti/duet/lib/setup.sh"
116
116
  Nothing was installed, nothing was selected, and no existing duet installation was changed.
package/package.json CHANGED
@@ -23,5 +23,5 @@
23
23
  "scripts": {
24
24
  "postinstall": "/bin/sh lib/setup.sh"
25
25
  },
26
- "version": "1.8.0"
26
+ "version": "1.9.0"
27
27
  }
@@ -1,15 +0,0 @@
1
- {
2
- "build_id": "646869928c864ea4",
3
- "name": "duet",
4
- "schema": 1,
5
- "source": {
6
- "clean": true,
7
- "commit": "5d13ae499990e613e949e7501c13d3aad8808426"
8
- },
9
- "verification": {
10
- "contract": 2
11
- },
12
- "version": "1.8.0",
13
- "wheel": "duet-1.8.0-py3-none-any.whl",
14
- "wheel_sha256": "41b3258715af0b49865c4b4151eac320019abf3dae66815e9626ab571c9bfe96"
15
- }