Releases: codeminity/ts-platform
Releases · codeminity/ts-platform
Release list
@codeminity/request-core@0.8.0
🔒 Security
- Add
isInsecureUrlandwarnIfInsecureUrlas new public exports: a one-time-per-origin console warning when credentials (anAuthorizationheader, or a cookie inCOOKIEmode) are about to be sent over a non-HTTPS connection, excluding loopback addresses (localhost,127.0.0.1,::1). - Every published release now gets a cryptographically signed git tag (via
gitsign, keyless/OIDC-based — no static signing key) and an automatically created GitHub Release with install instructions and the relevant changelog excerpt.
🛠 Improvements
- Add
GOVERNANCE.md,CODE_OF_CONDUCT.md, andASSURANCE_CASE.md(threat model, trust boundaries, secure design rationale, and how common implementation weaknesses are countered). - Add a Developer Certificate of Origin (DCO) requirement and a "Development Setup" section to
CONTRIBUTING.md. - Add a public
ROADMAP.mdand earn the OpenSSF Best Practices badge.
Install
pnpm add @codeminity/request-core@0.8.0npm install @codeminity/request-core@0.8.0yarn add @codeminity/request-core@0.8.0@codeminity/request-core@0.7.1
🐛 Fixes
- Externalize
vitestfrom the./test-utilsbuild so it's no longer bundled intodist/test-utils.js— this had grown the file from ~1KB to 554KB and inlinedvitest's own transitive dependencymagic-string, including its source URLs, into the published package.
🛠 Improvements
- Add
dependency-cruiser-based architecture enforcement (no circular dependencies; a category's owncorepackage may never depend on its sibling adapters) as an automated CI gate, replacing a documentation-only rule. - Add Socket.dev supply-chain security scanning, both as a local
validate:socketcommand and a CI gate. - Add real-browser (Playwright) end-to-end testing and mutation testing (Stryker) covering all three packages, with mutation score at 100%.
- Bump
pnpmto v11.18.0,@types/nodeto v26.1.2, andgithub/codeql-actionto v4.37.4.
Install
pnpm add @codeminity/request-core@0.7.1npm install @codeminity/request-core@0.7.1yarn add @codeminity/request-core@0.7.1@codeminity/request-core@0.7.0
🚀 Features
- Add
dependencies(a spy-friendly re-export ofhandleRefreshTokenthrough a mutable object, for adapter test suites) andemitterCallback/EventCallbacks<TEvent, TOutcome>(generic "callonEventthenonError, swallowing callback errors") as new public exports — protocol-agnostic primitives previously duplicated identically inside@codeminity/axiosand@codeminity/fetch.
🛠 Improvements
- Bump
turboto v2.10.7 andglobalsto v17.8.0.
Install
pnpm add @codeminity/request-core@0.7.0npm install @codeminity/request-core@0.7.0yarn add @codeminity/request-core@0.7.0@codeminity/request-core@0.6.0
📚 Documentation
- Add real TSDoc summaries to every public export (
AuthConfig,RefreshQueue,RetryConfig,TokenMode,TokenModeEnum,ErrorEventEnum,createRefreshQueue,delay,handleRefreshToken) — previously each carried only a bare@publictag with no description. - Broaden the documentation validator to scan every Markdown file in the repository (not just
README.mdanddocs/guides/*.md), and derive the list of packages to type-check doc examples against dynamically from each package'spackage.jsoninstead of a hardcoded list. - Document the npm Trusted Publisher (OIDC) release authentication flow and provenance attestation in
SECURITY.mdandCONTRIBUTING.md.
⚙️ CI
- Enforce strict API Extractor validation:
verify:packagesno longer runs with--local, so a stale or drifted public API report now fails the build instead of being silently rewritten; all extractor messages (includingae-forgotten-export) are now treated as errors.
Install
pnpm add @codeminity/request-core@0.6.0npm install @codeminity/request-core@0.6.0yarn add @codeminity/request-core@0.6.0@codeminity/request-core@0.5.1
🛠 Improvements
- Patch high-severity transitive dependency advisories by updating
postcssandbrace-expansionthroughpnpm.overrides. - Upgrade ESLint to v10.8.0.
- Update development tooling and GitHub Actions to their latest compatible versions.
- Upgrade the workspace to pnpm v11.17.0.
🧪 Testing
- Add coverage for the
./test-utilspublic export. - Improve coverage configuration by excluding the package entry file from coverage metrics.
📚 Documentation
- Fix incorrect
TokenModeEnumusage in the README. - Introduce automated validation for TypeScript code blocks in documentation.
- Update documentation examples to ensure all TypeScript snippets remain valid and synchronized with the current public API.
⚙️ CI
- Run documentation validation as part of the CI and release workflows to prevent invalid TypeScript examples from being merged.
Install
pnpm add @codeminity/request-core@0.5.1npm install @codeminity/request-core@0.5.1yarn add @codeminity/request-core@0.5.1@codeminity/request-core@0.5.0
🚀 Features
- Add a public
./test-utilssubpath export (createAuthConfig,createRefreshQueuemock) so adapter packages can share factory-based test fixtures instead of duplicating them, without pullingvitestinto the main production bundle.
🛠 Improvements
- Restructure
src/from type-based folders (enums/,handlers/,interfaces/,types/,utils/) to feature-based folders (auth/,retry/,errors/), with tests colocated next to their implementation. - Fix
verify:packagesto resolve unreleased internal workspace dependencies from local tarballs instead of the npm registry, so a package can be verified before it's ever published. - Add automated typecheck coverage for the workspace
scripts/folder (previously never typechecked). - Add a cross-platform (Ubuntu/Windows/macOS) CI test matrix.
- Patch a high-severity
brace-expansionDoS advisory viapnpm.overrides(transitive dependency ofeslint/api-extractor). - Bump
pnpm,@changesets/cli, andglobby.
🐛 Fixes
- Fix a real type-safety bug in the package-verification tooling where a packed tarball's path could be
undefinedundernoUncheckedIndexedAccess. - Fix
createAuthConfig's mock to correctly allow explicitundefinedoverrides (simulating a missing dependency) underexactOptionalPropertyTypes.
🧪 Testing
- Add missing coverage for
TokenModeEnumandErrorEventEnum. - Generalize the tarball-isolation regression test from 2 hardcoded packages to 100 arbitrarily-named, arbitrarily-located packages, proving
verify:packagesscales to any future package added underpackages/**.
📚 Documentation
- Full documentation refresh: package structure diagrams, public API listings (previously missing exported enums/types), and the new
/test-utilsexport are now documented acrossREADME.md,ARCHITECTURE.md, andCONTRIBUTING.md. - Clarify this package is adapter-internal only and not meant for direct installation by application developers.
Install
pnpm add @codeminity/request-core@0.5.0npm install @codeminity/request-core@0.5.0yarn add @codeminity/request-core@0.5.0@codeminity/request-core@0.4.0
🛠 Improvements
- Add automated package verification workflow for all workspace packages.
- Add package discovery support to verify packages dynamically without package-specific configuration.
- Add publint validation to ensure published packages follow npm package best practices.
- Add API Extractor validation to track and validate public package APIs.
- Add tarball verification by packing packages, installing generated artifacts, and validating runtime imports.
- Improve CI and release workflows with package verification gates.
- Improve package boundary validation and publishing confidence.
🧪 Testing
- Add verification tests for package discovery, package validation, publint execution, and API validation.
- Improve test coverage enforcement with CI coverage thresholds.
- Add deterministic mocks and isolated verification test flows.
- Validate all workspace packages through automated verification commands.
📚 Documentation
- Add package verification guidance to contributing documentation.
- Clarify monorepo package dependency model and public API boundaries.
- Document verification requirements for publishing packages.
Install
pnpm add @codeminity/request-core@0.4.0npm install @codeminity/request-core@0.4.0yarn add @codeminity/request-core@0.4.0@codeminity/request-core@0.3.0
🛠 Improvements
- Update supported Node.js versions to
^22.13.0 || >=24.0.0. - Improve TypeScript project structure and shared package boundaries.
- Strengthen package publishing configuration and export validation.
- Improve CI quality gates with dependency auditing and coverage validation.
- Remove obsolete workspace release exclusions.
🧪 Testing
- Run code coverage as part of CI and release workflows.
- Improve API validation script with full type safety.
- Improve linting support for workspace scripts without relaxing project rules.
📚 Documentation
- Export public configuration types for a more discoverable API.
- Update Node.js version requirements.
Install
pnpm add @codeminity/request-core@0.3.0npm install @codeminity/request-core@0.3.0yarn add @codeminity/request-core@0.3.0@codeminity/request-core@0.2.0
🛠 Improvements
- Skip the refresh queue when refresh dependencies are not configured.
- Improve refresh lifecycle handling and recovery after failed refresh attempts.
- Prevent refresh failure callbacks from masking the original refresh error.
- Improve package validation by resolving package entry files from the actual package path.
- Standardize package metadata and improve build configuration.
- Add workspace-wide type checking support.
- Update supported Node.js versions.
- Upgrade project tooling (Turbo, ESLint, TypeScript ESLint, pnpm).
🧪 Testing
- Add Vitest coverage support.
- Add refresh queue concurrency and failure recovery tests.
- Improve test isolation for workspace environments.
- Add regression coverage for refresh lifecycle behavior.
📚 Documentation
- Add Changeset requirements to the contribution workflow.
- Improve project documentation and release guidance.
Install
pnpm add @codeminity/request-core@0.2.0npm install @codeminity/request-core@0.2.0yarn add @codeminity/request-core@0.2.0@codeminity/request-core@0.1.1
🛠 Improvements
- Update @types/node dependency
- Upgrade pnpm version used in CI and release workflows
Install
pnpm add @codeminity/request-core@0.1.1npm install @codeminity/request-core@0.1.1yarn add @codeminity/request-core@0.1.1