10 KiB
Changelog
2026-02-03 - 4.2.1 - fix(package.json)
replace main and typings with exports field pointing to ./dist_ts/index.js
- Added package.json exports field mapping "." to ./dist_ts/index.js to declare the package entrypoint.
- Removed main (dist_ts/index.js) and typings (dist_ts/index.d.ts) entries.
- Note: switching to exports improves Node resolution but removing the typings entry may affect TypeScript consumers expecting index.d.ts.
2026-02-01 - 4.2.0 - feat(tsmdb)
implement TsmDB Mongo-wire-compatible server, add storage/engine modules and reorganize exports
- Add full TsmDB implementation under ts/ts_tsmdb: wire protocol, server, command router, handlers, engines (Query, Update, Aggregation, Index, Transaction, Session), storage adapters (Memory, File), OpLog, WAL, utils and types.
- Remove legacy ts/tsmdb implementation and replace with new ts_tsmdb module exports.
- Introduce ts/ts_mongotools module and move SmartMongo class there; update top-level exports in ts/index.ts to export SmartMongo, tsmdb (from ts_tsmdb) and LocalTsmDb.
- Add LocalTsmDb convenience class (ts/ts_local) to start a file-backed TsmDB and return a connected MongoClient.
- Refactor plugin imports into per-module plugins files and add utilities (checksum, persistence, query planner, index engine).
2026-02-01 - 4.1.1 - fix(tsmdb)
add comprehensive unit tests for tsmdb components: checksum, query planner, index engine, session, and WAL
- Add new tests: test.tsmdb.checksum.ts — CRC32 and document checksum utilities (add/verify/remove)
- Add new tests: test.tsmdb.queryplanner.ts — QueryPlanner plans, index usage, selectivity, explain output, and edge cases
- Add new tests: test.tsmdb.indexengine.ts — Index creation, unique/sparse options, candidate selection, and constraints
- Add new tests: test.tsmdb.session.ts — Session lifecycle, touch/refresh/close, extractSessionId handling
- Add new tests: test.tsmdb.wal.ts — WAL initialization, LSN increments, logging/recovery for inserts/updates/deletes, binary and nested data handling
- Tests only — no production API changes; increases test coverage
- Recommend patch bump from 4.1.0 to 4.1.1
2026-02-01 - 4.1.0 - feat(readme)
expand README with storage integrity, WAL, query planner, session & transaction docs; update test script to enable verbose logging and increase timeout
- Updated npm test script to run tstest with --verbose, --logfile and --timeout 60 to improve test output and avoid timeouts.
- Extensive README additions: file storage adapter examples with checksum options, write-ahead logging (WAL) usage and recovery, query planner examples, index and query execution details, session and transaction examples and features.
- Wire protocol / features table updated to include Transactions and Sessions and added admin commands (dbStats, collStats).
- Architecture diagram and component list updated to include QueryPlanner, SessionEngine, TransactionEngine and WAL; storage layer annotated with checksums and WAL.
- Minor example import tweak: MongoClient import now includes Db type in test examples.
2026-02-01 - 4.0.0 - BREAKING CHANGE(storage,engine,server)
add session & transaction management, index/query planner, WAL and checksum support; integrate index-accelerated queries and update storage API (findByIds) to enable index optimizations
- Add SessionEngine with session lifecycle, auto-abort of transactions on expiry and session tracking in CommandRouter and AdminHandler.
- Introduce TransactionEngine integrations in CommandRouter and AdminHandler; handlers now support start/commit/abort transaction workflows.
- Add IndexEngine enhancements including a simple B-tree and hash map optimizations; integrate index usage into Find/Count/Insert/Update/Delete handlers for index-accelerated queries and index maintenance on mutations.
- Add QueryPlanner to choose IXSCAN vs COLLSCAN and provide explain plans.
- Add WAL (write-ahead log) for durability, with LSNs, checkpoints and recovery APIs.
- Add checksum utilities and FileStorageAdapter support for checksums (enableChecksums/strictChecksums), with verification on read and optional strict failure behavior.
- IStorageAdapter interface changed to include findByIds; MemoryStorageAdapter and FileStorageAdapter implement findByIds to support index lookups.
- Exported API additions: WAL, QueryPlanner, SessionEngine, checksum utilities; CommandRouter now caches IndexEngines and exposes transaction/session engines.
- Breaking change: the IStorageAdapter interface change requires third-party storage adapters to implement the new findByIds method.
2026-02-01 - 3.0.0 - BREAKING CHANGE(tsmdb)
rename CongoDB to TsmDB and relocate/rename wire-protocol server implementation and public exports
- Project refactor renames the in-memory wire-protocol server from CongoDB -> TsmDB (identifiers, files and namespaces changed).
- ts/index.ts now exports tsmdb instead of congodb (public API change; consumers must update imports).
- All congodb sources under ts/congodb were removed and equivalent implementations added under ts/tsmdb (errors, engines, storage adapters, server, handlers, WireProtocol, types).
- Readme and usage examples updated to reference TsmDB/tsmdb and example code updated accordingly.
- Tests renamed/updated from test.congodb.ts -> test.tsmdb.ts to exercise the new tsmdb export and server.
2026-01-31 - 2.2.0 - feat(readme)
update README with expanded documentation covering CongoDB and SmartMongo, installation, quick start examples, architecture, usage examples, and legal/company information
- Completely expanded README: added detailed overview for SmartMongo and new CongoDB (wire-protocol server)
- Added Quick Start examples for both SmartMongo and CongoDB (TypeScript/ESM snippets)
- Included installation instructions for npm and pnpm and issue reporting/security guidance
- Added architecture diagram, example tests, and storage/engine descriptions
- Clarified license, trademark, and company contact information
- Large non-functional documentation-only change (+398 -44)
2026-01-31 - 2.1.0 - feat(congodb)
implement CongoDB MongoDB wire-protocol compatible in-memory server and APIs
- Add full congodb module: CongoServer, WireProtocol, CommandRouter and handlers (Hello, Insert, Find, Update, Delete, Aggregate, Index, Admin).
- Implement query/update/aggregation/index/transaction engines (QueryEngine, UpdateEngine, AggregationEngine, IndexEngine, TransactionEngine) and OpLog for change stream support.
- Add storage adapters: in-memory (MemoryStorageAdapter) and file-backed (FileStorageAdapter) with persistence and oplog support.
- Introduce types/interfaces and rich error classes (CongoErrors) plus congodb.plugins re-exports (bson, mingo, smartfs, smartpath, smartrx).
- Add many server-side utilities: IndexEngine, Aggregation helpers ($lookup, $graphLookup, $merge, $facet, $unionWith), cursor management and command routing.
- Add integration tests for CongoDB using official mongodb MongoClient (test/test.congodb.ts) and update unit test entry (test/test.ts) to use tstest tapbundle.
- Export congodb from ts/index.ts and update package.json: bump devDependencies, add runtime deps (mongodb, bson, mingo, mingo), add new @push.rocks/* deps and dev tool versions.
- Update readme.hints.md with CongoDB architecture, usage examples and supported commands.
- Update npmextra.json metadata and release/registry config and reorganize tsdoc mappings.
2025-11-17 - 2.0.14 - fix(smartmongo.plugins)
Use default import for mongodb-memory-server (Deno compatibility), update hints and bump package version to 2.0.13
- Replace namespace import with default import for mongodb-memory-server to ensure compatibility with Deno (ts/smartmongo.plugins.ts).
- Add readme.hints.md documenting the Deno compatibility change and the reason for using a default import.
- Bump package.json version to 2.0.13.
- Note: ts/00_commitinfo_data.ts still lists version 2.0.12 and may need to be updated to match package.json.
2025-04-06 - 2.0.12 - fix(ci/config)
Update CI workflow environment variables, refine package metadata, and improve configuration settings
- Updated workflow YAML files to use new IMAGE and npmci package names
- Adjusted package.json homepage, added bugs field and pnpm overrides
- Minor formatting improvements in readme.md and .gitignore
- Enhanced tsconfig with baseUrl and paths for improved module resolution
2025-04-06 - 2.0.11 - fix(dependencies)
Update dependency names and versions in CI workflows and package configuration
- Rename devDependency packages from '@gitzone/' to '@git.zone/' for consistency
- Bump '@types/node' from '^20.4.8' to '^22.14.0'
- Upgrade 'mongodb-memory-server' from '^8.14.0' to '^10.1.4'
- Add 'packageManager' field in package.json
- Introduce pnpm-workspace.yaml with 'onlyBuiltDependencies' configuration
2024-05-29 - 2.0.10 - misc
Various updates to project configuration and documentation.
- update description
- update tsconfig
- update npmextra.json: githost (applied on three occasions)
2023-08-08 - 2.0.9 - core
Core fix.
- fix(core): update
2023-08-08 - 2.0.8 - core
Core fix.
- fix(core): update
2023-08-08 - 2.0.7 - core & org
Combined changes for core stability and organization improvements.
- fix(core): update
- switch to new org scheme (recorded twice)
2022-06-08 - 2.0.6 - core
Core fix.
- fix(core): update
2022-06-08 - 2.0.5 - core
Core fix.
- fix(core): update
2022-06-06 - 2.0.4 - core
Core fix.
- fix(core): update
2022-06-06 - 2.0.3 - core
Core fix.
- fix(core): update
2022-06-03 - 2.0.2 - core
Core fix.
- fix(core): update
2022-05-19 - 2.0.1 - core
Core fix.
- fix(core): update
2022-05-18 - 2.0.0 - core
Core fix.
- fix(core): update
2022-05-17 - 1.0.9 - core
Breaking change for module format.
- BREAKING CHANGE(core): switch to esm
2022-05-17 - 1.0.8 - core
Core fix.
- fix(core): update
2021-12-21 - 1.0.7 - core
Core fix.
- fix(core): update
2021-12-20 - 1.0.6 - core
Core fix.
- fix(core): update
2021-12-20 - 1.0.5 - core
Core fix.
- fix(core): update
2021-12-20 - 1.0.4 - core
Core fix.
- fix(core): update
2021-12-20 - 1.0.3 - core
Core fix.
- fix(core): update
2021-12-20 - 1.0.2 - no notable changes
These version bumps did not include additional modifications.
- version update only
2021-12-20 - 1.0.1 - core
Core fix.
- fix(core): update