All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog (https://keepachangelog.com/en/1.0.0/), and this project adheres to Semantic Versioning (https://semver.org/spec/v2.0.0.html).
- Published a dedicated
tsops/clientry point so command-line tooling can keep using Node built-ins without affecting bundlers. - Added the
@tsops/core/configexport for consumers who need direct access todefineConfigwithout touching Node-specific modules. - Introduced the
@tsops/nodepackage with Node-only adapters (Docker,Kubectl,DefaultCommandRunner,ProcessEnvironmentProvider,GitEnvironmentProvider) and acreateNodeTsOpsfactory.
- The top-level
tsopsexport now providesdefineConfigdirectly without importingnode:fs, sonpm install tsopsis enough for both config helpers and the CLI. @tsops/coreno longer ships Node-bound implementations;TsOpsnow expects injectedDockerClient/KubectlClientports so configs stay platform-neutral.
- Documentation and starter configs now avoid using helper callbacks inside root-level
secrets/configMaps, removing the confusingenvtyping issues those helpers triggered.
- Type exports:
defineConfignow returns the publicTsOpsConfigWithRuntimeshape so external projects avoid.pnpmpath references.
- Tests: Vitest v3 setup and comprehensive config test (
tests/config.test.ts). - CONTRIBUTING guide with API consistency checklist.
- Docs: two-app example on the homepage (
docs/index.md).
- Type inference:
getApp(appName)now narrowsappNametokeyof appsvia generics fix. dnsdocs clarified: default without protocol; options addscheme://.- Documentation updated to recommend
networkfor external host.
hostin app definitions (usenetwork). Temporary compatibility may remain.
- ESLint parser config for tests via tests tsconfig (docs only).
- Initial public APIs:
defineConfig, runtime helpers, resolvers, k8s builders.