devsync-ai 0.1.0-rc.5 → 0.1.0-rc.7
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 +12 -0
- package/bin/devsync.js +5 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -77,6 +77,18 @@ npm-devsync-ai/scripts/release.sh # the workspace version; --dry-run
|
|
|
77
77
|
|
|
78
78
|
It tags main as `v<version>` and pushes the tag (and main, if you say so), waits for the release workflow, downloads its tarballs and checks their names and versions, then publishes them in the order below with `--tag next` for a prerelease (`latest` otherwise; `--dist-tag` overrides). It asks before pushing and before publishing, and a rerun skips whatever is already done.
|
|
79
79
|
|
|
80
|
+
Without GitHub Actions (the release workflow can't run), the same release builds on this machine and one Mac:
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
npm-devsync-ai/scripts/release-local.sh # gate, linux-x64 + linux-arm64 (zigbuild, glibc 2.28), npm test, pack, sums, install check
|
|
84
|
+
# on the Mac, from pack/devsync-src-<version>.tar.gz or a checkout of the same commit:
|
|
85
|
+
npm-devsync-ai/scripts/build-macos.sh --test # darwin-arm64 + darwin-x64 -> devsync-macos-<version>.tar.gz
|
|
86
|
+
# back here:
|
|
87
|
+
npm-devsync-ai/scripts/release-local.sh --macos devsync-macos-<version>.tar.gz
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
`release-local.sh` stops before anything is tagged, pushed or published, and prints the publish commands; it exits 3 while the macOS binaries are missing. The macOS binaries can't be linked from Linux: they need Apple's SDK (Security for the Keychain, CoreFoundation), whose licence allows it only on Apple hardware. Each script's header lists its steps.
|
|
91
|
+
|
|
80
92
|
By hand, publish the platform packages first, so `devsync-ai`'s optional dependencies exist when it lands:
|
|
81
93
|
|
|
82
94
|
```
|
package/bin/devsync.js
CHANGED
|
@@ -45,7 +45,10 @@ function locate(platform, arch, resolve) {
|
|
|
45
45
|
|
|
46
46
|
/** Run `binary` with `args`, passing signals on, and exit as it does. */
|
|
47
47
|
function run(binary, args) {
|
|
48
|
-
|
|
48
|
+
// Handlers go in before the spawn: the binary can print and be signalled
|
|
49
|
+
// before this process runs again, and an unhandled SIGINT would kill the
|
|
50
|
+
// launcher and orphan the binary.
|
|
51
|
+
let child = null;
|
|
49
52
|
const forward = ['SIGINT', 'SIGTERM', 'SIGHUP', 'SIGQUIT'];
|
|
50
53
|
const handlers = forward.map((sig) => {
|
|
51
54
|
const h = () => {
|
|
@@ -58,6 +61,7 @@ function run(binary, args) {
|
|
|
58
61
|
process.on(sig, h);
|
|
59
62
|
return [sig, h];
|
|
60
63
|
});
|
|
64
|
+
child = spawn(binary, args, { stdio: 'inherit' });
|
|
61
65
|
child.on('error', (e) => {
|
|
62
66
|
process.stderr.write(`devsync: can't run ${binary}: ${e.message}\n`);
|
|
63
67
|
process.exit(1);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "devsync-ai",
|
|
3
|
-
"version": "0.1.0-rc.
|
|
3
|
+
"version": "0.1.0-rc.7",
|
|
4
4
|
"description": "DevSync (devsync.ai): one terminal screen over your coding-agent sessions, and the roadmap they work from.",
|
|
5
5
|
"homepage": "https://devsync.ai",
|
|
6
6
|
"keywords": [
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
"node": ">=18"
|
|
20
20
|
},
|
|
21
21
|
"optionalDependencies": {
|
|
22
|
-
"devsync-ai-linux-x64": "0.1.0-rc.
|
|
23
|
-
"devsync-ai-linux-arm64": "0.1.0-rc.
|
|
24
|
-
"devsync-ai-darwin-x64": "0.1.0-rc.
|
|
25
|
-
"devsync-ai-darwin-arm64": "0.1.0-rc.
|
|
22
|
+
"devsync-ai-linux-x64": "0.1.0-rc.7",
|
|
23
|
+
"devsync-ai-linux-arm64": "0.1.0-rc.7",
|
|
24
|
+
"devsync-ai-darwin-x64": "0.1.0-rc.7",
|
|
25
|
+
"devsync-ai-darwin-arm64": "0.1.0-rc.7"
|
|
26
26
|
}
|
|
27
27
|
}
|