Commit graph

36 commits

Author SHA1 Message Date
93483572d8 **chore(scripts): prefix internal scripts with underscore for consistency**
- Updated `package.json` in `web-service-package`, `cli-package`, and the root project to prefix internal NPM scripts with an underscore (`_`), such as `_version`, `_deploy`, `_dry-run`, etc.
- Adjusted all relevant build, versioning, deployment, and test scripts to follow this convention.
- Updated `.gitignore` to include `/brainy-models-package/node_modules/` for effective exclusion.

**Purpose**: Standardize the naming of internal scripts to better differentiate them from user-facing commands and maintain consistency across packages.
2025-08-01 16:22:18 -07:00
b3e6e12bb5 **refactor(core): remove redundant dimensions property in BrainyData initialization**
- **Core**:
  - Removed the `dimensions` property from `BrainyData` initialization in `server.ts` as it was unused and redundant.
  - Simplified code structure and reduced potential confusion by avoiding unnecessary arguments in object initialization.

**Purpose**: Improve code clarity and maintainability by removing unused properties from the `BrainyData` setup, aligning with standardized dimension handling approaches.
2025-07-25 13:53:19 -07:00
ff95e24b16 chore(release): bump version to 0.18.0
- Updated version to `0.18.0` in `cli-package/package.json` and `package-lock.json`.
- Upgraded `@soulcraft/brainy` dependency to `^0.17.0` for compatibility with recent changes.
- Synced package dependencies and resolved lockfile integrity for deployment.

**Purpose**: Prepare for release by synchronizing versioning across the CLI package and updating dependencies for compatibility.
2025-07-22 16:06:54 -07:00
086d27deec **chore(release): bump versions for web-service and CLI packages**
- **Version Updates**:
  - Updated `web-service-package/package.json` and `package-lock.json` from `0.15.0` to `0.16.0`.
  - Updated `cli-package/package.json` and `package-lock.json` from `0.16.0` to `0.17.0`.

- **Purpose**:
  - Prepares both packages for their respective new releases, ensuring version consistency across project dependencies.
2025-07-22 11:07:10 -07:00
8189b45f48 **chore(release): bump version to 0.16.0 and enhance project scripts**
- **Version Updates**:
  - Updated `cli-package/package.json` and `package-lock.json` from `0.15.0` to `0.16.0`.

- **NPM Script Enhancements**:
  - Added version-related scripts (`version`, `version:patch`, `version:minor`, `version:major`) to `web-service-package` and `cli-package`.
  - Introduced `deploy` and `dry-run` scripts to streamline build and deployment workflows.

- **Script Cleanup**:
  - Removed redundant `build:cli`, `deploy:cli`, and `deploy:web-service` scripts from the root `package.json`.

**Purpose**: Prepares for release 0.16.0 while introducing reusable and optimized build/release scripts, improving the development and deployment experience.
2025-07-22 10:53:52 -07:00
a03874fef2 **refactor(core): remove generate-version script and update prebuild/version workflows**
- **Removal of `generate-version.js`**:
  - Deleted `scripts/generate-version.js` as it is no longer required for version handling.
  - Removed associated output files, including `src/utils/version.ts`.

- **Prebuild and Version Process Updates**:
  - Updated `prebuild` and `version` scripts in `package.json` to reflect the new workflow:
    - Replaced `generate-version.js` with simplified echo commands for version updates and build steps.
  - Adjusted deployment scripts (`deploy:cli` and `deploy:web-service`) to align with the removal of the script.

- **Documentation and Config Updates**:
  - Cleaned up `README.md` by removing unused version badge references.
  - Updated `cli-package/package.json` to specify a version range (`^0.15.0`) for `@soulcraft/brainy`.

**Purpose**: This refactor simplifies the version handling process by removing outdated scripts, reducing maintenance overhead, and aligning workflows with project conventions. Improves clarity and consistency in both configuration and documentation.
2025-07-22 10:43:19 -07:00
e1865e7808 chore(release): bump version to 0.15.0
- Updated `VERSION` in `version.ts` to `0.15.0`.
- Updated `npm` badge in `README.md` to reflect version `0.15.0`.
- Updated `version` field and dependency reference in `cli-package/package.json` to `0.15.0`.

**Purpose**: Prepare for release by synchronizing version across source files, documentation, and package dependencies.
2025-07-21 14:00:49 -07:00
7c827b81a5 chore(release): bump version to 0.14.0
- Updated `VERSION` in `version.ts` to `0.14.0`.
- Updated `npm` badge in `README.md` to reflect version `0.14.0`.
- Updated `version` field and dependency reference in `cli-package/package.json` to `0.14.0`.

Purpose: Prepare for release by synchronizing version across source files and documentation.
2025-07-18 12:01:54 -07:00
22ccd5a162 Bump version to 0.13.0 2025-07-18 10:41:36 -07:00
e3567ed838 **chore(release): bump version to 0.12.0**
- Updated the version in `README.md`, `package.json`, and `version.ts` to `0.12.0` to reflect the new release.
- Adjusted dependency reference for `@soulcraft/brainy` in `cli-package/package.json` to use version `0.12.0`.

**Purpose**: Prepares for the 0.12.0 release, ensuring all version references are consistent across documentation and configuration files.
2025-07-16 13:51:56 -07:00
af41232b8e **chore(release): bump version to 0.11.0**
- Updated version to `0.11.0` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.11.0` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.

This release ensures consistent versioning across the project and prepares for the distribution of changes in version `0.11.0`.
2025-07-11 12:15:39 -07:00
f0db5b471f **feat(tests): add tests for TextEncoder, TensorFlow.js, and fallback mechanisms**
- Introduced `test-fallback-function.js` and `test-fallback-simple.js` to validate `executeInThread` fallback functionality with both named and anonymous compute-intensive functions.
- Added `test-tensorflow-textencoder.js` for TensorFlow.js and TextEncoder tests in a Node.js environment.
- Created `test-tensorflow-textencoder.html` for browser-based TensorFlow.js and TextEncoder tests.
- Implemented cross-environment test support in `cli-package/src/test-tensorflow-textencoder.ts` for CLI functionality.
- Enhanced `src/utils/embedding.ts`, `textEncoding.ts`, and `brainy-wrapper.js` to include updated global `TextEncoder` and `TextDecoder` utilities for compatibility and worker improvements.
- Standardized and expanded utility methods in `PlatformNode` for broader support, including `isFloat32Array` and `isTypedArray` checks.
- Updated Node.js requirement to `>= 24.4.0` across documentation and configuration files for compatibility improvements.

This update introduces comprehensive testing for fallback mechanisms, TensorFlow.js, and TextEncoder across multiple environments, ensuring robustness and compatibility.
2025-07-11 11:11:56 -07:00
00039f836f **chore(release): bump version to 0.10.0 and refactor project structure**
- Updated version to `0.10.0` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Removed `CHANGELOG.md` from the root and `cli-package`, as GitHub auto-generates release notes.
- Refactored `brainy-wrapper.js` to simplify utility methods (`isFloat32Array` and `isTypedArray`) by moving them to instance-level definitions.
- Standardized Node.js version requirement to `>= 24.3.0` across documentation and configuration files.
- Improved `textEncoding.ts` by introducing a unified `Platform` class for cross-environment compatibility (Node.js and browser).
- Restructured scripts:
  - Replaced outdated commands (e.g., `test-cli` -> `test:cli` and `test-all` -> `test:all`) for consistency.
  - Removed changelog updates from `scripts/create-github-release.js` as part of simplification.
- Enhanced `patch-textencoder.js` to also patch `worker.js` for both `TextEncoder` and `TextDecoder`.

This release improves compatibility with Node.js 24, simplifies the deployment/changelog process, and refines text encoding and worker functionalities.
2025-07-07 10:19:04 -07:00
d30344a8e2 chore(version): bump version to 0.9.37 and update references
- Updated version to `0.9.37` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.37` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.
- Added release details for version `0.9.37` in `CHANGELOG.md`.

This update ensures consistent versioning across the project and documents the latest release.
2025-07-07 09:25:03 -07:00
0c334df1bc **chore(version): bump version to 0.9.36 and update references**
- Updated version to `0.9.36` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.36` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.
- Added release details for version `0.9.36` in `CHANGELOG.md`.

This update ensures consistent versioning across the project and documents the latest release.
2025-07-04 12:33:28 -07:00
4cbc9ae4db **chore(version): bump version to 0.9.35 and update references**
- Updated version to `0.9.35` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.35` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.
- Enhanced GitHub release script (`scripts/create-github-release.js`) to check and push tags to remote if they exist locally.

This update ensures consistent versioning across the project and improves release automation with better tag management.
2025-07-04 12:32:21 -07:00
6d13a6737e **chore(release): enhance deployment workflows with GitHub release automation**
- Added functionality to auto-generate GitHub releases:
  - Included `scripts/create-github-release.js` to automate release creation with notes.
  - Modified `scripts/publish-cli.js` to create GitHub releases after publishing packages.
  - Updated `package.json` to call the GitHub release script during `deploy` and `deploy:cli` commands.
- Introduced `CHANGELOG.md` for both main and CLI packages:
  - Enabled auto-updating of CHANGELOG.md from GitHub release notes.
  - Added a new `scripts/update-changelog.js` script to synchronize release details with changelogs.
  - Ensured `CHANGELOG.md` files are included in the published packages.
- Improved documentation visibility by displaying release notes on npmjs.com.

This update streamlines the release process, ensuring consistent documentation, and aligns npm releases with corresponding GitHub releases for better transparency.
2025-07-04 12:29:38 -07:00
cc3350c578 **chore(deps): update dependencies and Node.js version requirements**
- Updated Node.js version requirement to `>=24.3.0` in `README.md` and `package-lock.json`.
- Upgraded `TypeScript` to version `5.4.5` and synced references.
- Updated multiple dependencies, including:
  - `@aws-sdk/client-s3` to `^3.540.0`.
  - `uuid` to `^9.0.1`.
  - Development tools such as `eslint` to `^8.57.0`, `typescript-eslint` plugins to `^7.4.0`, and more.
- Refreshed transitive dependencies with up-to-date versions for consistency and performance.

This update ensures compatibility with the latest Node.js features, aligns TypeScript references, and keeps the project dependencies up-to-date for improved stability and functionality.
2025-07-04 12:19:48 -07:00
be59d0c633 **chore(version): bump version to 0.9.34 and update references**
- Updated version to `0.9.34` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.34` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.

This update ensures consistent versioning across the project and aligns dependencies with the latest release.
2025-07-04 11:39:29 -07:00
5b2ea4bb1f **chore(version): bump version to 0.9.33 and update references**
- Updated version to `0.9.33` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.33` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.
- Refactored `TextEncoder` and `TextDecoder` implementations in `src/utils/tensorflowUtils.ts`:
  - Added dynamic environment-aware loading for improved Node.js and browser compatibility.
  - Enhanced fallback mechanisms for environments without global support.

This update ensures consistent versioning across the project and improves the robustness of utility methods for broader environment compatibility.
2025-07-04 11:35:19 -07:00
30ae9d2138 chore(version): bump version to 0.9.32 and update references
- Updated version to `0.9.32` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.32` in the CLI package for consistency.
- Renamed npm scripts `publish` to `deploy` and `publish:cli` to `deploy:cli`, aligning terminology with deployment workflows.
- Updated npm version badge in `README.md` to reflect the new version.

This update ensures consistent versioning across the project, aligns CLI and main package references, and enhances clarity in deployment script naming.
2025-07-02 16:56:21 -07:00
fa286fdb7c chore(version): bump version to 0.9.31 and update package references
- Updated version to `0.9.31` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.31` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.

This update ensures consistent versioning across the project and aligns references between main and CLI packages.
2025-07-02 16:54:21 -07:00
ac82c55a6b **feat: enhance threading compatibility and refactor module loading**
- Refactored `TextEncoder` and `TextDecoder` in `src/utils/tensorflowUtils.ts` to handle environments without global availability, logging warnings and providing fallback implementations.
- Enhanced threading utilities in `src/utils/environment.ts`:
  - Introduced `areWorkerThreadsAvailableSync()` and `isThreadingAvailableAsync()` for synchronous and asynchronous checks.
  - Improved compatibility across browser and Node.js environments.
- Migrated `fileSystemStorage.ts` to use dynamic imports for Node.js modules, removing synchronous loading mechanisms to align with ES module standards.
- Updated `cli-package/package.json` keywords to include `browser` and `container`, improving discoverability.
- Added `worker_threads` as an external dependency in `cli-package/rollup.config.js` and `rollup.config.js`.
- Updated `.gitignore` to ignore all `tgz` files dynamically under main and CLI package.

This update improves threading compatibility, enhances environment-specific support, and aligns with modern module loading practices.
2025-07-02 16:52:44 -07:00
be56ea52b7 **chore(version): bump version to 0.9.30 and enhance publishing instructions**
- Updated version to `0.9.30` in `package.json`, `cli-package/package.json`, `src/utils/version.ts`, and `README.md`.
- Synced `@soulcraft/brainy` dependency version to `0.9.30` for CLI package consistency.
- Modified npm version badge in `README.md` to reflect the new version.
- Added detailed publishing instructions in `docs/publishing-cli.md` to guide users on publishing both, main, or CLI packages.
- Introduced new npm scripts `publish:cli` and `build:cli` for streamlined package-specific operations.

This update ensures cohesive versioning, provides clearer publishing guidelines, and improves maintainability with new build/publish scripts.
2025-07-02 16:33:30 -07:00
dabd76e5a3 **chore(version): bump version to 0.9.30 and update package references**
- Updated version to `0.9.30` in `package.json` and `cli-package/package.json`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.30` in the CLI package for consistency.
- Updated repository URL format to use `git+https` for both `package.json` files.

This update ensures consistent versioning across the project, maintains alignment between main and CLI package dependencies, and standardizes repository URL formatting.
2025-07-02 16:27:53 -07:00
a448d44372 **chore(version): bump version to 0.9.29 and update package references**
- Updated version to `0.9.29` in `package.json`, `cli-package/package.json`, `README.md`, and `src/utils/version.ts`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.29` in CLI package for consistency.
- Updated npm version badge in `README.md` to reflect `0.9.29`.

This update ensures consistent versioning across the project and maintains alignment between main and CLI package dependencies.
2025-07-02 16:22:43 -07:00
51b70b14a2 **chore(version): bump version to 0.9.28 and update package references**
- Updated version to `0.9.28` in `package.json`, `cli-package/package.json`, `README.md`, and `src/utils/version.ts`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.28` in CLI package for consistency.
- Updated npm version badge in `README.md` to reflect `0.9.28`.

This update ensures consistent versioning across the project and maintains alignment between main and CLI package dependencies.
2025-07-02 16:22:27 -07:00
bf1d7e2ce6 **chore(version): bump version to 0.9.27 and update package references**
- Updated version to `0.9.27` in `package.json`, `cli-package/package.json`, `README.md`, and `src/utils/version.ts`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.27` in CLI package for consistency.
- Updated npm version badge in `README.md` to reflect `0.9.27`.

This update ensures accurate versioning across the project and maintains alignment between main and CLI package dependencies.
2025-07-02 16:20:52 -07:00
5edea683c6 **feat: improve TensorFlow.js compatibility and remove unnecessary patches**
- Removed outdated Node.js v24 compatibility patches for `TextEncoder` and `TextDecoder` in `cli-wrapper.js` and other modules since TensorFlow.js now supports Node.js v24+ natively.
- Introduced a utility module `src/utils/tensorflowUtils.ts` for TensorFlow.js compatibility, defining global `PlatformNode` and related utilities.
- Enhanced `fileSystemStorage.ts` with improved Node.js module loading mechanisms for better compatibility across environments.
- Simplified dependency requirements by reducing the minimum Node.js version to `>=23.0.0`.
- Updated `package.json`, `cli-package/package.json`, and `README.md` versions to `0.9.25`.
- Harmonized `cli-package` and main package dependencies to ensure version alignment.
- Improved global compatibility with TensorFlow.js in mixed Node.js environments.

This update modernizes TensorFlow.js integration, reduces maintenance efforts, and aligns compatibility with current Node.js and TensorFlow.js capabilities.
2025-07-02 16:16:19 -07:00
72c9e371b3 **feat(cli): add local testing script for CLI and update versions**
- Introduced `scripts/test-cli-locally.js` to streamline local testing of the CLI package before publishing.
   - Builds main and CLI packages, creates local tarballs, and installs the CLI package globally for testing.
   - Ensures version synchronization between main and CLI packages during testing.
- Updated `cli-package/package.json` version to `0.9.23` and synchronized `@soulcraft/brainy` dependency to `0.9.22`.
- Patched `TextEncoder` fallback for Node.js v24 in `cli-wrapper.js` to ensure overall CLI compatibility.
- Added new `test-cli` npm script to `package.json`.

This update simplifies the CLI local testing process, maintains version alignment, and improves readiness for Node.js v24.
2025-07-02 12:54:50 -07:00
34cac5628c **chore(version): bump version to 0.9.21 and update package references**
- Updated version to `0.9.21` in `README.md`, `package.json`, `cli-package/package.json`, and `src/utils/version.ts`.
- Updated npm version badge in `README.md` to reflect `0.9.21`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.21` in CLI package for consistency.

This release ensures accurate versioning across the project and aligns dependencies with the latest version.
2025-07-02 12:29:19 -07:00
b89c8710a0 **chore(version): bump version to 0.9.20 and update package configurations**
- Updated version to `0.9.20` across `package.json`, `cli-package/package.json`, `src/utils/version.ts`, and `cli-package/package-lock.json`.
- Updated npm version badge in `README.md` to reflect `0.9.20`.
- Adjusted `package.json` to include additional files in the distribution bundle, such as `dist/unified.js`, `dist/brainy.min.js`, and other key directories.
- Updated `@soulcraft/brainy` dependency to `0.9.20` in CLI package to align dependencies with the latest version.
- Resolved dependency integrity updates in `package-lock.json`.
- Improved dependency management for better version consistency and distribution.

This release ensures up-to-date versioning, improved distribution content management, and enhanced dependency alignment.
2025-07-02 12:28:00 -07:00
40850ff54a **chore(cli): add package-lock.json for Brainy CLI dependencies**
- Introduced `package-lock.json` for the `@soulcraft/brainy-cli` package to manage dependencies explicitly.
- Ensures reproducible installs and aligns the CLI with the latest project dependencies.
- Supports dependency resolution, locking versions, and maintaining consistency across development and CI/CD environments.
2025-07-02 12:18:03 -07:00
6abc0ee5c1 **chore(version): bump version to 0.9.18 and update build configurations**
- Updated version to `0.9.18` in `package.json`, `cli-package/package.json`, and `src/utils/version.ts`.
- Updated npm badge in `README.md` to reflect version `0.9.18`.
- Adjusted `publish-cli.js` to synchronize publishing of the main and CLI packages with enhanced build steps.
- Introduced `tsconfig.json` updates to include type paths (`types.d.ts`) in CLI for better type handling.
- Refined CLI scripts for improved TypeScript annotations and better code structure.
- Removed `@types/omelette` and `omelette` dependencies along with associated CLI configurations to simplify the codebase.
- Updated `.gitignore` to exclude CLI `dist` directory for cleaner repository management.
- Added `deploy:both` npm script for combined publishing of main and CLI packages.

This release ensures version consistency, improves CLI workflows, and enhances type handling while decluttering unused dependencies.
2025-07-02 12:15:35 -07:00
3f4266ae4f **refactor(cli): remove unused Brainy CLI implementation**
- Deleted the entire `src/cli.ts` file, effectively removing the Brainy CLI component.
- The change streamlines the codebase by eliminating unused and redundant code related to the CLI.
- This refactor supports maintaining a cleaner and more focused project architecture.
2025-07-02 11:55:44 -07:00
7e3e6654a9 **feat(cli, scripts): introduce CLI package and automated publishing process**
- Added a new `@soulcraft/brainy-cli` package to provide a dedicated CLI interface for the Brainy database.
- Implemented a CLI wrapper script (`cli-wrapper.js`) to manage global package execution and version handling.
- Introduced `scripts/publish-cli.js` to automate synchronized publishing of the main package and CLI, ensuring version consistency.
- Created documentation for CLI usage and publishing workflow (`publishing-cli.md`).
- Updated `package.json` to include CLI-related build and deploy scripts.
- Adjusted `README.md` to document the CLI package, usage instructions, and build separation.

This feature introduces a standalone CLI package, improves deployment automation, and enhances documentation to align with the updated architecture.
2025-07-02 11:32:06 -07:00