diff --git a/.gitea/workflows/default_nottags.yaml b/.gitea/workflows/default_nottags.yaml index 9f4e743..0bae651 100644 --- a/.gitea/workflows/default_nottags.yaml +++ b/.gitea/workflows/default_nottags.yaml @@ -6,8 +6,8 @@ on: - '**' env: - IMAGE: registry.gitlab.com/hosttoday/ht-docker-node:npmci - NPMCI_COMPUTED_REPOURL: https://${{gitea.repository_owner}}:${{secrets.GITEA_TOKEN}}@gitea.lossless.digital/${{gitea.repository}}.git + IMAGE: code.foss.global/host.today/ht-docker-node:npmci + NPMCI_COMPUTED_REPOURL: https://${{gitea.repository_owner}}:${{secrets.GITEA_TOKEN}}@/${{gitea.repository}}.git NPMCI_TOKEN_NPM: ${{secrets.NPMCI_TOKEN_NPM}} NPMCI_TOKEN_NPM2: ${{secrets.NPMCI_TOKEN_NPM2}} NPMCI_GIT_GITHUBTOKEN: ${{secrets.NPMCI_GIT_GITHUBTOKEN}} @@ -26,7 +26,7 @@ jobs: - name: Install pnpm and npmci run: | pnpm install -g pnpm - pnpm install -g @shipzone/npmci + pnpm install -g @ship.zone/npmci - name: Run npm prepare run: npmci npm prepare diff --git a/.gitea/workflows/default_tags.yaml b/.gitea/workflows/default_tags.yaml index e27ad69..821d33f 100644 --- a/.gitea/workflows/default_tags.yaml +++ b/.gitea/workflows/default_tags.yaml @@ -6,8 +6,8 @@ on: - '*' env: - IMAGE: registry.gitlab.com/hosttoday/ht-docker-node:npmci - NPMCI_COMPUTED_REPOURL: https://${{gitea.repository_owner}}:${{secrets.GITEA_TOKEN}}@gitea.lossless.digital/${{gitea.repository}}.git + IMAGE: code.foss.global/host.today/ht-docker-node:npmci + NPMCI_COMPUTED_REPOURL: https://${{gitea.repository_owner}}:${{secrets.GITEA_TOKEN}}@/${{gitea.repository}}.git NPMCI_TOKEN_NPM: ${{secrets.NPMCI_TOKEN_NPM}} NPMCI_TOKEN_NPM2: ${{secrets.NPMCI_TOKEN_NPM2}} NPMCI_GIT_GITHUBTOKEN: ${{secrets.NPMCI_GIT_GITHUBTOKEN}} @@ -26,7 +26,7 @@ jobs: - name: Prepare run: | pnpm install -g pnpm - pnpm install -g @shipzone/npmci + pnpm install -g @ship.zone/npmci npmci npm prepare - name: Audit production dependencies @@ -54,7 +54,7 @@ jobs: - name: Prepare run: | pnpm install -g pnpm - pnpm install -g @shipzone/npmci + pnpm install -g @ship.zone/npmci npmci npm prepare - name: Test stable @@ -82,7 +82,7 @@ jobs: - name: Prepare run: | pnpm install -g pnpm - pnpm install -g @shipzone/npmci + pnpm install -g @ship.zone/npmci npmci npm prepare - name: Release @@ -104,7 +104,7 @@ jobs: - name: Prepare run: | pnpm install -g pnpm - pnpm install -g @shipzone/npmci + pnpm install -g @ship.zone/npmci npmci npm prepare - name: Code quality diff --git a/.gitignore b/.gitignore index ef13c79..0b26089 100644 --- a/.gitignore +++ b/.gitignore @@ -3,7 +3,6 @@ # artifacts coverage/ public/ -pages/ # installs node_modules/ @@ -17,4 +16,4 @@ node_modules/ dist/ dist_*/ -# custom \ No newline at end of file +#------# custom \ No newline at end of file diff --git a/.serena/cache/typescript/document_symbols_cache_v23-06-25.pkl b/.serena/cache/typescript/document_symbols_cache_v23-06-25.pkl new file mode 100644 index 0000000..34904b9 Binary files /dev/null and b/.serena/cache/typescript/document_symbols_cache_v23-06-25.pkl differ diff --git a/.serena/memories/coding_standards.md b/.serena/memories/coding_standards.md new file mode 100644 index 0000000..76aab15 --- /dev/null +++ b/.serena/memories/coding_standards.md @@ -0,0 +1,32 @@ +# Coding Standards for npmextra + +## Naming Conventions +- **Interfaces**: Prefix with `I` (e.g., `IAppDataOptions`, `ITestOptions`) +- **Types**: Prefix with `T` (e.g., `TKeyValueStore`) +- **Filenames**: Always lowercase (e.g., `npmextra.classes.appdata.ts`) +- **Module structure**: `npmextra...ts` pattern + +## Import/Export Patterns +- Use ES module syntax (`import`/`export`) +- Import all dependencies through `npmextra.plugins.ts` +- Reference with full path: `plugins.moduleName.className()` +- Export all public APIs through `index.ts` + +## TypeScript Patterns +- Use generic types for flexibility (``) +- Leverage TypeScript utility types from `@tsclass/tsclass` +- Use async/await for asynchronous operations +- Use Promises with smartpromise utilities + +## Testing Standards +- Import expect from `@git.zone/tstest/tapbundle` +- Test files end with `export default tap.start()` +- Use descriptive test names with `tap.test()` +- Test file naming: `test.*.ts` pattern + +## Code Quality +- Make focused, goal-oriented changes +- Preserve necessary complexity +- Remove redundancy carefully +- Keep async patterns where they add value +- No comments unless explicitly requested \ No newline at end of file diff --git a/.serena/memories/project_overview.md b/.serena/memories/project_overview.md new file mode 100644 index 0000000..6907d8a --- /dev/null +++ b/.serena/memories/project_overview.md @@ -0,0 +1,30 @@ +# npmextra Project Overview + +## Purpose +npmextra is a utility library that enhances npm with additional configuration and tool management capabilities. It provides a key-value store for project setups and centralized configuration management through npmextra.json files. + +## Tech Stack +- TypeScript (ES modules) +- Node.js +- Dependencies: + - @push.rocks/qenv - Environment variable management + - @push.rocks/smartfile - File system operations + - @push.rocks/smartjson - JSON handling + - @push.rocks/smartlog - Logging + - @push.rocks/smartpath - Path utilities + - @push.rocks/smartpromise - Promise utilities + - @push.rocks/smartrx - Reactive programming + - @push.rocks/taskbuffer - Task management + - @tsclass/tsclass - TypeScript utilities + +## Main Components +1. **Npmextra** - Main class for managing npmextra.json configurations +2. **KeyValueStore** - Persistent key-value storage system +3. **AppData** - Advanced data management with environment variable mapping + +## Project Structure +- `ts/` - TypeScript source files +- `test/` - Test files using @git.zone/tstest +- `dist_ts/` - Compiled JavaScript output +- `npmextra.json` - Project configuration +- `package.json` - Node.js package configuration \ No newline at end of file diff --git a/.serena/memories/suggested_commands.md b/.serena/memories/suggested_commands.md new file mode 100644 index 0000000..cb02828 --- /dev/null +++ b/.serena/memories/suggested_commands.md @@ -0,0 +1,31 @@ +# Suggested Commands for npmextra Development + +## Build Commands +- `pnpm run build` - Build the TypeScript project (uses tsbuild) +- `pnpm test` - Run tests using tstest + +## Development Commands +- `pnpm install` - Install dependencies +- `pnpm install --save-dev ` - Add development dependencies +- `tsx