@squidcloud/cli 1.0.461 → 1.0.462
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/dist/index.js
CHANGED
|
@@ -37377,7 +37377,7 @@ module.exports = /*#__PURE__*/JSON.parse('{"name":"seek-bzip","version":"1.0.6",
|
|
|
37377
37377
|
(module) {
|
|
37378
37378
|
|
|
37379
37379
|
"use strict";
|
|
37380
|
-
module.exports = /*#__PURE__*/JSON.parse('{"name":"@squidcloud/cli","version":"1.0.
|
|
37380
|
+
module.exports = /*#__PURE__*/JSON.parse('{"name":"@squidcloud/cli","version":"1.0.462","description":"The Squid CLI","main":"dist/index.js","scripts":{"start":"node dist/index.js","start-ts":"ts-node -r tsconfig-paths/register src/index.ts","prebuild":"rimraf dist","build":"webpack --mode=production","build:dev":"webpack --mode=development","lint":"eslint","link":"npm run build && chmod 755 dist/index.js && npm link","watch":"webpack --watch","deploy":"npm run build && npm pack --silent | xargs -I {} mv {} package.tgz && npm install -g package.tgz && rm -rf package.tgz","publish:public":"npm run build && npm publish --access public"},"files":["dist/**/*"],"bin":{"squid":"dist/index.js"},"keywords":[],"author":"","license":"ISC","engines":{"node":">=18.0.0"},"dependencies":{"@squidcloud/local-backend":"^1.0.462","adm-zip":"^0.5.16","copy-webpack-plugin":"^12.0.2","decompress":"^4.2.1","logpipes":"^1.11.0","nodemon":"^3.1.9","terser-webpack-plugin":"^5.3.10","ts-loader":"^9.5.1","ts-node":"^10.9.2","tsconfig-paths":"^4.2.0","tsconfig-paths-webpack-plugin":"^4.1.0","webpack":"^5.101.3","zip-webpack-plugin":"^4.0.1"},"devDependencies":{"@types/adm-zip":"^0.5.7","@types/decompress":"^4.2.7","@types/node":"^20.19.9","terminal-link":"^3.0.0"}}');
|
|
37381
37381
|
|
|
37382
37382
|
/***/ }
|
|
37383
37383
|
|
|
@@ -305,8 +305,31 @@ const result = await squid.withLock('payment-processing', async (lock) => {
|
|
|
305
305
|
await processPayment();
|
|
306
306
|
return 'success';
|
|
307
307
|
});
|
|
308
|
+
|
|
309
|
+
// With options: acquisition timeout and max hold time
|
|
310
|
+
const lock = await squid.acquireLock('payment-processing', {
|
|
311
|
+
acquisitionTimeoutMillis: 5000, // Max time to wait for lock (default: 2000ms)
|
|
312
|
+
maxHoldTimeMillis: 30000, // Auto-release after 30s (default: no limit)
|
|
313
|
+
});
|
|
314
|
+
|
|
315
|
+
// withLock also accepts options as third argument
|
|
316
|
+
const result = await squid.withLock('payment-processing', async (lock) => {
|
|
317
|
+
await processPayment();
|
|
318
|
+
return 'success';
|
|
319
|
+
}, { acquisitionTimeoutMillis: 5000, maxHoldTimeMillis: 30000 });
|
|
308
320
|
```
|
|
309
321
|
|
|
322
|
+
**DistributedLockOptions:**
|
|
323
|
+
- `acquisitionTimeoutMillis` (number, default: 2000) - Max time in ms to wait for the lock to be acquired. Rejects if lock cannot be acquired within this time.
|
|
324
|
+
- `maxHoldTimeMillis` (number, default: no limit) - Max time in ms the lock can be held before automatic release. If not set, the lock is held until explicitly released or the connection is lost.
|
|
325
|
+
|
|
326
|
+
**DistributedLock methods:**
|
|
327
|
+
- `release()` - Release the lock
|
|
328
|
+
- `isReleased()` - Check if already released
|
|
329
|
+
- `observeRelease()` - Observable that emits when lock is released (including unexpected release due to connection loss)
|
|
330
|
+
- `resourceId` - The mutex name
|
|
331
|
+
- `lockId` - Unique lock instance ID
|
|
332
|
+
|
|
310
333
|
To secure lock access, see [security.md](security.md) for `@secureDistributedLock`.
|
|
311
334
|
|
|
312
335
|
## Web
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@squidcloud/cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.462",
|
|
4
4
|
"description": "The Squid CLI",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"node": ">=18.0.0"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@squidcloud/local-backend": "^1.0.
|
|
31
|
+
"@squidcloud/local-backend": "^1.0.462",
|
|
32
32
|
"adm-zip": "^0.5.16",
|
|
33
33
|
"copy-webpack-plugin": "^12.0.2",
|
|
34
34
|
"decompress": "^4.2.1",
|