4 Commits

Author SHA1 Message Date
0e7d416048 1.4.2
Some checks failed
CI / Type Check & Lint (push) Successful in 41s
Publish to npm / npm-publish (push) Failing after 1m5s
CI / Build Test (Current Platform) (push) Successful in 1m13s
CI / Build All Platforms (push) Successful in 2m2s
Release / build-and-release (push) Successful in 2m6s
2025-10-28 22:05:50 +00:00
23f41cc152 fix(scriptindex): Handle missing script metadata fields in ScriptIndex.search to prevent crashes 2025-10-28 22:05:50 +00:00
ad7e9b0b46 1.4.1
Some checks failed
CI / Type Check & Lint (push) Successful in 41s
Publish to npm / npm-publish (push) Failing after 1m0s
CI / Build Test (Current Platform) (push) Successful in 1m8s
Release / build-and-release (push) Successful in 1m48s
CI / Build All Platforms (push) Successful in 1m55s
2025-10-28 19:17:11 +00:00
8cf016f0d8 fix(cli): Fallback to unknown when script.slug is missing in scripts list 2025-10-28 19:17:11 +00:00
6 changed files with 21 additions and 7 deletions

View File

@@ -1,5 +1,18 @@
# Changelog
## 2025-10-28 - 1.4.2 - fix(scriptindex)
Handle missing script metadata fields in ScriptIndex.search to prevent crashes
- Add null/undefined checks for name, slug, and description in ScriptIndex.search to avoid runtime exceptions when script metadata is incomplete
- Improves robustness of scripts search against partially populated or malformed cached metadata
## 2025-10-28 - 1.4.1 - fix(cli)
Fallback to 'unknown' when script.slug is missing in scripts list
- Fixes a potential runtime error when listing scripts if a script entry lacks a slug
- Uses a safe fallback ('unknown') before calling padEnd to ensure stable output
- Modified file: ts/moxytool.cli.ts
## 2025-10-28 - 1.4.0 - feat(cli)
Improve CLI output and logging with colored header, grouped script listings, and ANSI-styled logger

View File

@@ -1,6 +1,6 @@
{
"name": "@serve.zone/moxytool",
"version": "1.4.0",
"version": "1.4.2",
"exports": "./mod.ts",
"nodeModulesDir": "auto",
"tasks": {

View File

@@ -1,6 +1,6 @@
{
"name": "@serve.zone/moxytool",
"version": "1.4.0",
"version": "1.4.2",
"description": "Proxmox administration tool for vGPU setup, VM management, and cluster configuration",
"keywords": [
"proxmox",

View File

@@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@serve.zone/moxytool',
version: '1.4.0',
version: '1.4.2',
description: 'Proxmox administration tool for vGPU setup, VM management, and cluster configuration'
}

View File

@@ -263,9 +263,9 @@ export class ScriptIndex {
return this.cache.scripts.filter((script) => {
// Search in name, description, and slug
return (
script.name.toLowerCase().includes(lowerQuery) ||
script.slug.toLowerCase().includes(lowerQuery) ||
script.description.toLowerCase().includes(lowerQuery)
(script.name && script.name.toLowerCase().includes(lowerQuery)) ||
(script.slug && script.slug.toLowerCase().includes(lowerQuery)) ||
(script.description && script.description.toLowerCase().includes(lowerQuery))
);
});
}

View File

@@ -273,7 +273,8 @@ export const runCli = async () => {
if (otherScripts.length > 0) {
logger.log('info', 'Other:');
otherScripts.forEach(script => {
logger.log('info', `${script.slug.padEnd(25)} - ${script.name} (${script.type})`);
const slug = script.slug || 'unknown';
logger.log('info', `${slug.padEnd(25)} - ${script.name} (${script.type})`);
});
}