Skip to content

V3#23

Merged
SerhiyGreench merged 24 commits into
masterfrom
v3
Jul 8, 2026
Merged

V3#23
SerhiyGreench merged 24 commits into
masterfrom
v3

Conversation

@SerhiyGreench

Copy link
Copy Markdown
Contributor

No description provided.

SerhiyGreench and others added 23 commits July 6, 2026 19:30
- Make tsc idempotent: clean compiled artifacts before every build via a
  clean-compiled helper routed through build/prepare/test, fixing TS5055
  ("would overwrite input file") on repeated builds and npm install.
- Drop the `open` dependency; the doc and benchmark flows now print a
  file:// link instead of auto-launching a browser.
- Add typedoc.json (name, excludes, externalSymbolLinkMappings) for a
  zero-warning docs build; the doc script prints a file:// link.
- Remove obsolete @access/@constructor JSDoc tags (redundant with TS
  visibility keywords).
- Add TypeScript-mapped coverage (--enable-source-maps) and a
  test-coverage-html report script that prints a file:// link.
- Remove redundant mocha/nyc/typescript package.json blocks.
- Make isThenable generic so downstream stricter configs compile.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S7M9ZZCRc9SUFAchcuPLw6
- Make @Profile work as both a standard (TC39) and a legacy
  (experimentalDecorators) decorator via runtime mode detection, so
  services that must keep legacy decorators (e.g. sequelize-typescript
  consumers) can still use it alongside @imqueue/rpc's standard decorators.
- Restore the public uuid() helper (src/uuid.ts) and its export, dropped
  during the earlier modernization; downstream services rely on it via
  @imqueue/rpc re-export.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S7M9ZZCRc9SUFAchcuPLw6
Remove the Coveralls coverage-upload step and run `npm test` instead of
`npm run test-lcov`; the workflow is now a simple lint/format + test gate.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S7M9ZZCRc9SUFAchcuPLw6
- Address PR review comments: env-configurable IMQ_SEND_INIT_TIMEOUT,
  fix JSDoc/example indentation, restore readable Lua script formatting
- Migrate all Node built-in imports to the node: prefix across src/test/
  benchmark
- Add test/mocks/mockBuiltin helper registering mocks under both the bare
  and node: specifiers; fix mock load order and node:-prefixed dgram/os
  mocks that broke the RedisQueue/UDPWorker specs
- Add scripts/strip-comment-coverage.mjs: dependency-free lcov post-processor
  that drops comment/blank/type-only/import lines (via source maps + the TS
  scanner) and Node's unreliable function/branch records, so genhtml reports
  accurate coverage with no warnings/errors; wire into test-lcov
- Add tests bringing line coverage to 100% (2351/2351), covering error
  paths, signal/exit handlers, reconnection, read loops and worker respawn
The free()/freeAndRaise() tests spawned real workers whose destroyWorker()
waited the full 5s stop-acknowledgement timeout, pushing the spec file past
the 15s per-file test timeout in CI. Stub destroyWorker() and use a fake
worker entry so free()'s own logic is exercised without the real teardown
wait. Also import the missing Mock type in the spec.
@SerhiyGreench
SerhiyGreench merged commit beab476 into master Jul 8, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant