mirror of
https://github.com/arsvendg/Stirling-PDF.git
synced 2026-07-16 11:23:10 +02:00
chore(frontend): replace platform-specific update:minor script with cross-platform Node.js implementation (#6155)
This commit is contained in:
@@ -80,7 +80,7 @@
|
|||||||
"web-vitals": "^5.1.0"
|
"web-vitals": "^5.1.0"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"update:minor": "npm outdated || npm update --before=$(date -v-7d +%Y-%m-%d) && (npm audit fix --before=$(date -v-7d +%Y-%m-%d) || true) && npm test",
|
"update:minor": "node scripts/update-minor.js",
|
||||||
"update:major": "npx npm-check-updates -u && npm install",
|
"update:major": "npx npm-check-updates -u && npm install",
|
||||||
"update:interactive": "npx npm-check-updates -i",
|
"update:interactive": "npx npm-check-updates -i",
|
||||||
"update:minor-strict": "npx npm-check-updates -u --target minor && npm install"
|
"update:minor-strict": "npx npm-check-updates -u --target minor && npm install"
|
||||||
|
|||||||
@@ -0,0 +1,54 @@
|
|||||||
|
#!/usr/bin/env node
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Cross-platform update:minor script
|
||||||
|
* Calculates date from 7 days ago and runs npm update/audit with that date
|
||||||
|
*/
|
||||||
|
|
||||||
|
const { spawn } = require("child_process");
|
||||||
|
|
||||||
|
// Calculate date from 7 days ago in YYYY-MM-DD format
|
||||||
|
const date = new Date();
|
||||||
|
date.setDate(date.getDate() - 7);
|
||||||
|
const beforeDate = date.toISOString().split("T")[0];
|
||||||
|
|
||||||
|
console.log(`Updating packages modified before: ${beforeDate}`);
|
||||||
|
|
||||||
|
let lastExitCode = 0;
|
||||||
|
|
||||||
|
// Run npm outdated first
|
||||||
|
const outdated = spawn("npm", ["outdated"], { stdio: "inherit", shell: true });
|
||||||
|
|
||||||
|
outdated.on("close", (_code) => {
|
||||||
|
// npm outdated returns exit code 1 if updates are available, so we ignore it
|
||||||
|
|
||||||
|
// Run npm update with before date
|
||||||
|
const update = spawn("npm", ["update", `--before=${beforeDate}`], {
|
||||||
|
stdio: "inherit",
|
||||||
|
shell: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
update.on("close", (updateCode) => {
|
||||||
|
// Track update failures
|
||||||
|
if (updateCode !== 0) {
|
||||||
|
lastExitCode = updateCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Run npm audit fix with before date
|
||||||
|
const audit = spawn("npm", ["audit", "fix", `--before=${beforeDate}`], {
|
||||||
|
stdio: "inherit",
|
||||||
|
shell: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
audit.on("close", (auditCode) => {
|
||||||
|
// Track audit failures (but don't override critical update failures)
|
||||||
|
if (auditCode !== 0 && lastExitCode === 0) {
|
||||||
|
lastExitCode = auditCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update complete - report with tracked exit code
|
||||||
|
console.log("\nPackage update complete!");
|
||||||
|
process.exit(lastExitCode);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user