envilder 0.9.2 → 0.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +204 -278
- package/ROADMAP.md +5 -5
- package/docs/CHANGELOG.md +9 -513
- package/docs/changelogs/cli.md +498 -0
- package/docs/changelogs/gha.md +74 -0
- package/docs/changelogs/sdk-dotnet.md +80 -0
- package/docs/changelogs/sdk-nodejs.md +22 -0
- package/docs/changelogs/sdk-python.md +82 -0
- package/lib/envilder/core/application/pushEnvToSecrets/PushEnvToSecretsCommandHandler.js +3 -3
- package/lib/envilder/core/application/pushEnvToSecrets/PushEnvToSecretsCommandHandler.js.map +1 -1
- package/lib/sdks/nodejs/src/application/envilder-client.d.ts +29 -0
- package/lib/sdks/nodejs/src/application/envilder-client.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/application/envilder-client.js +60 -0
- package/lib/sdks/nodejs/src/application/envilder-client.js.map +1 -0
- package/lib/sdks/nodejs/src/application/envilder.d.ts +64 -0
- package/lib/sdks/nodejs/src/application/envilder.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/application/envilder.js +168 -0
- package/lib/sdks/nodejs/src/application/envilder.js.map +1 -0
- package/lib/sdks/nodejs/src/application/map-file-parser.d.ts +14 -0
- package/lib/sdks/nodejs/src/application/map-file-parser.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/application/map-file-parser.js +55 -0
- package/lib/sdks/nodejs/src/application/map-file-parser.js.map +1 -0
- package/lib/sdks/nodejs/src/application/secret-validation.d.ts +18 -0
- package/lib/sdks/nodejs/src/application/secret-validation.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/application/secret-validation.js +32 -0
- package/lib/sdks/nodejs/src/application/secret-validation.js.map +1 -0
- package/lib/sdks/nodejs/src/domain/envilder-options.d.ts +7 -0
- package/lib/sdks/nodejs/src/domain/envilder-options.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/domain/envilder-options.js +2 -0
- package/lib/sdks/nodejs/src/domain/envilder-options.js.map +1 -0
- package/lib/sdks/nodejs/src/domain/map-file-config.d.ts +7 -0
- package/lib/sdks/nodejs/src/domain/map-file-config.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/domain/map-file-config.js +2 -0
- package/lib/sdks/nodejs/src/domain/map-file-config.js.map +1 -0
- package/lib/sdks/nodejs/src/domain/parsed-map-file.d.ts +6 -0
- package/lib/sdks/nodejs/src/domain/parsed-map-file.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/domain/parsed-map-file.js +2 -0
- package/lib/sdks/nodejs/src/domain/parsed-map-file.js.map +1 -0
- package/lib/sdks/nodejs/src/domain/ports/secret-provider.d.ts +18 -0
- package/lib/sdks/nodejs/src/domain/ports/secret-provider.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/domain/ports/secret-provider.js +2 -0
- package/lib/sdks/nodejs/src/domain/ports/secret-provider.js.map +1 -0
- package/lib/sdks/nodejs/src/domain/secret-provider-type.d.ts +5 -0
- package/lib/sdks/nodejs/src/domain/secret-provider-type.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/domain/secret-provider-type.js +6 -0
- package/lib/sdks/nodejs/src/domain/secret-provider-type.js.map +1 -0
- package/lib/sdks/nodejs/src/index.d.ts +12 -0
- package/lib/sdks/nodejs/src/index.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/index.js +11 -0
- package/lib/sdks/nodejs/src/index.js.map +1 -0
- package/lib/sdks/nodejs/src/infrastructure/aws/aws-ssm-secret-provider.d.ts +17 -0
- package/lib/sdks/nodejs/src/infrastructure/aws/aws-ssm-secret-provider.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/infrastructure/aws/aws-ssm-secret-provider.js +56 -0
- package/lib/sdks/nodejs/src/infrastructure/aws/aws-ssm-secret-provider.js.map +1 -0
- package/lib/sdks/nodejs/src/infrastructure/azure/azure-key-vault-secret-provider.d.ts +15 -0
- package/lib/sdks/nodejs/src/infrastructure/azure/azure-key-vault-secret-provider.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/infrastructure/azure/azure-key-vault-secret-provider.js +68 -0
- package/lib/sdks/nodejs/src/infrastructure/azure/azure-key-vault-secret-provider.js.map +1 -0
- package/lib/sdks/nodejs/src/infrastructure/secret-provider-factory.d.ts +5 -0
- package/lib/sdks/nodejs/src/infrastructure/secret-provider-factory.d.ts.map +1 -0
- package/lib/sdks/nodejs/src/infrastructure/secret-provider-factory.js +42 -0
- package/lib/sdks/nodejs/src/infrastructure/secret-provider-factory.js.map +1 -0
- package/package.json +17 -8
package/ROADMAP.md
CHANGED
|
@@ -31,15 +31,15 @@ or directly inside application code at runtime.
|
|
|
31
31
|
| **Azure Key Vault** | Multi-backend via `$config` map-file section ([#90](https://github.com/macalbert/envilder/pull/90)) |
|
|
32
32
|
| **Documentation website** | [envilder.com](https://envilder.com) |
|
|
33
33
|
| **Onboarding documentation** | [Setup guide](./docs/requirements-installation.md) |
|
|
34
|
+
| **.NET SDK** (`Envilder`) | First runtime SDK — load secrets into `IConfiguration` or `EnvilderClient`. AWS SSM + Azure Key Vault. [Documentation](./src/sdks/dotnet/README.md) |
|
|
35
|
+
| **Python SDK** (`envilder`) | Runtime library for Python — Django, FastAPI, data pipelines. Sync API with `EnvilderClient`, `MapFileParser`, `SecretProviderFactory`. AWS SSM + Azure Key Vault. Published to PyPI. [Documentation](./src/sdks/python/README.md) |
|
|
36
|
+
| **Node.js SDK** (`@envilder/sdk`) | Runtime library for Node.js — load secrets directly into `process.env` from a map-file. AWS SSM + Azure Key Vault. Published to npm. [Documentation](./src/sdks/nodejs/README.md) |
|
|
34
37
|
|
|
35
38
|
### 🔥 Up Next
|
|
36
39
|
|
|
37
40
|
| Feature | Priority | Notes |
|
|
38
41
|
|---------|----------|-------|
|
|
39
|
-
| **TypeScript SDK** (`@envilder/sdk`) | 🔴 High | Native runtime library — load secrets directly into `process.env` from a map-file. No `.env` file needed. Published to npm |
|
|
40
|
-
| **Python SDK** (`envilder`) | 🔴 High | Runtime library for Python — Django/FastAPI/data pipelines. Published to PyPI |
|
|
41
42
|
| **Go SDK** (`envilder`) | 🔴 High | Runtime library for Go — cloud-native apps, Kubernetes tooling. Published as Go module |
|
|
42
|
-
| **.NET SDK** (`Envilder`) | 🔴 High | Runtime library for .NET — enterprise apps, Azure-native shops. Published to NuGet |
|
|
43
43
|
| **Java SDK** (`envilder`) | 🔴 High | Runtime library for Java/Kotlin — Spring Boot, Android backends. Published to Maven Central |
|
|
44
44
|
| **Map-file JSON Schema** | 🔴 High | Formal spec for the map-file format at `spec/` — serves as the contract between all SDKs and tools |
|
|
45
45
|
| **SDK conformance tests** | 🔴 High | Language-agnostic test fixtures (JSON input → expected output) that all SDKs must pass |
|
|
@@ -82,7 +82,7 @@ All five SDKs are developed **in parallel** — same map-file contract, same con
|
|
|
82
82
|
|
|
83
83
|
| SDK | Package | Registry |
|
|
84
84
|
|-----|---------|----------|
|
|
85
|
-
| **
|
|
85
|
+
| **Node.js** | `@envilder/sdk` | npm |
|
|
86
86
|
| **Python** | `envilder` | PyPI |
|
|
87
87
|
| **Go** | `envilder` | Go module |
|
|
88
88
|
| **.NET** | `Envilder` | NuGet |
|
|
@@ -92,7 +92,7 @@ All five SDKs are developed **in parallel** — same map-file contract, same con
|
|
|
92
92
|
|
|
93
93
|
- **One map-file spec** — formal JSON Schema at `spec/` is the source of truth for all SDKs
|
|
94
94
|
- **Conformance tests** — language-agnostic fixtures that every SDK must pass
|
|
95
|
-
- **Independent versioning** — each SDK has its own semver (`sdk-
|
|
95
|
+
- **Independent versioning** — each SDK has its own semver (`sdk-node@1.2.0`, `sdk-py@0.3.0`)
|
|
96
96
|
- **Shared test infrastructure** — LocalStack (AWS) and Lowkey Vault (Azure) via Docker Compose serve all SDKs
|
|
97
97
|
|
|
98
98
|
---
|
package/docs/CHANGELOG.md
CHANGED
|
@@ -1,515 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
# Changelog
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Each Envilder component maintains its own changelog:
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
* **deps:** Move `@types/node` from `dependencies` to `devDependencies` to prevent it from being bundled as a runtime dependency
|
|
14
|
-
* **e2e:** Use unique SSM paths per CLI test run to prevent race conditions between parallel test executions
|
|
15
|
-
|
|
16
|
-
### Dependencies
|
|
17
|
-
|
|
18
|
-
* Bump `brace-expansion` from 5.0.4 to 5.0.5 (security patch)
|
|
19
|
-
* Bump `@azure/core-rest-pipeline` and `@azure/identity` group updates
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## [0.8.0] - 2026-03-22
|
|
24
|
-
|
|
25
|
-
### Added
|
|
26
|
-
|
|
27
|
-
* **`$config` section in map files** — Map files now support an optional `$config` key to declare provider and connection
|
|
28
|
-
details inline (e.g., `"provider": "azure"`, `"vaultUrl": "https://..."`, `"profile": "dev-account"`)
|
|
29
|
-
* New CLI flag `--vault-url <url>` — Azure Key Vault URL, overrides `$config.vaultUrl` in the map file
|
|
30
|
-
* New GitHub Action input `vault-url` — Azure Key Vault URL, overrides `$config.vaultUrl` in the map file
|
|
31
|
-
* Precedence chain: CLI flags / GHA inputs > `$config` in map file > defaults
|
|
32
|
-
* Backward compatible: existing map files without `$config` continue to work (defaults to AWS provider)
|
|
33
|
-
* **Azure Key Vault support** — Use `--provider=azure` (CLI) or `provider: azure` (GitHub Action) to pull/push secrets
|
|
34
|
-
from Azure Key Vault ([#90](https://github.com/macalbert/envilder/pull/90))
|
|
35
|
-
* New infrastructure adapter: `AzureKeyVaultSecretProvider` implementing `ISecretProvider`
|
|
36
|
-
* New CLI option `--provider <name>` to select cloud provider (`aws` or `azure`, default: `aws`)
|
|
37
|
-
* New GitHub Action input `provider` for selecting the cloud provider
|
|
38
|
-
* Azure authentication via `DefaultAzureCredential` (supports Azure CLI, managed identity, etc.)
|
|
39
|
-
* Automatic secret name normalization for Azure Key Vault naming constraints
|
|
40
|
-
|
|
41
|
-
### Changed
|
|
42
|
-
|
|
43
|
-
* **CLI flag `--ssm-path` renamed to `--secret-path`** — The old flag is still accepted as a deprecated alias and
|
|
44
|
-
prints a warning. It will be removed in a future release.
|
|
45
|
-
* `configureInfrastructureServices()` now receives a single `MapFileConfig` object instead of separate parameters
|
|
46
|
-
* CLI and GHA entry points read `$config` from the map file and merge with CLI flags / GHA inputs
|
|
47
|
-
* Extracted shared `ContainerConfiguration` module (`src/envilder/apps/shared/`) for DI setup reused by CLI and GitHub Action
|
|
48
|
-
* Both `Startup.ts` files (CLI and GHA) now delegate to shared `configureInfrastructureServices()` and `configureApplicationServices()`
|
|
49
|
-
* Updated CLI description to include Azure Key Vault examples
|
|
50
|
-
* Updated `action.yml` description and inputs to reflect multi-provider support
|
|
51
|
-
|
|
52
|
-
### Dependencies
|
|
53
|
-
|
|
54
|
-
* Added `@azure/keyvault-secrets`
|
|
55
|
-
* Added `@azure/identity`
|
|
56
|
-
* Added `@azure/core-rest-pipeline`
|
|
57
|
-
|
|
58
|
-
### Documentation
|
|
59
|
-
|
|
60
|
-
* Updated all documentation to reflect `$config` map-file section and `--vault-url` flag
|
|
61
|
-
* Updated architecture diagrams and DI code snippets
|
|
62
|
-
* Updated GitHub Action examples to use `vault-url` input
|
|
63
|
-
* Updated ROADMAP to mark Azure Key Vault as fully implemented
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
## [0.7.12] - 2026-03-22
|
|
68
|
-
|
|
69
|
-
### Fixed
|
|
70
|
-
|
|
71
|
-
* **ssm:** Upgrade AWS SDK to resolve fast-xml-parser CVEs ([#128](https://github.com/macalbert/envilder/pull/128))
|
|
72
|
-
|
|
73
|
-
### Changed
|
|
74
|
-
|
|
75
|
-
* **ci:** Upgrade `dorny/test-reporter` to v3 for Node.js 24 support ([#127](https://github.com/macalbert/envilder/pull/127))
|
|
76
|
-
* **dx:** Add AI workflow agents, prompts, and lefthook pre-commit hook ([#125](https://github.com/macalbert/envilder/pull/125))
|
|
77
|
-
|
|
78
|
-
### Dependencies
|
|
79
|
-
|
|
80
|
-
* Bump `undici` from 7.22.0 to 7.24.1 ([#126](https://github.com/macalbert/envilder/pull/126))
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## [0.7.11] - 2026-03-08
|
|
85
|
-
|
|
86
|
-
### Security
|
|
87
|
-
|
|
88
|
-
* Bump AWS SDK packages to resolve `fast-xml-parser` vulnerability ([#124](https://github.com/macalbert/envilder/pull/124))
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## [0.7.10] - 2026-03-02
|
|
93
|
-
|
|
94
|
-
### Changed
|
|
95
|
-
|
|
96
|
-
* **ci:** Update CI configuration for improved build reliability
|
|
97
|
-
* Bump AWS SDK SSM to 3.1000.0 and align CI/publish workflows ([#123](https://github.com/macalbert/envilder/pull/123))
|
|
98
|
-
|
|
99
|
-
### Dependencies
|
|
100
|
-
|
|
101
|
-
* Bump `@aws-sdk/credential-providers` from 3.995.0 to 3.1000.0 ([#122](https://github.com/macalbert/envilder/pull/122))
|
|
102
|
-
* Bump `@types/node` from 25.3.0 to 25.3.3 ([#121](https://github.com/macalbert/envilder/pull/121))
|
|
103
|
-
* Bump `minimatch` ([#119](https://github.com/macalbert/envilder/pull/119))
|
|
104
|
-
|
|
105
|
-
---
|
|
106
|
-
|
|
107
|
-
## [0.7.9] - 2026-02-22
|
|
108
|
-
|
|
109
|
-
### Fixed
|
|
110
|
-
|
|
111
|
-
* **security:** Patch transitive dependency vulnerabilities ([#118](https://github.com/macalbert/envilder/pull/118))
|
|
112
|
-
* **ci:** Simplify npm publish command in workflow
|
|
113
|
-
|
|
114
|
-
### Documentation
|
|
115
|
-
|
|
116
|
-
* Updated GitHub Action docs to reference v0.7.9
|
|
117
|
-
|
|
118
|
-
---
|
|
119
|
-
|
|
120
|
-
## [0.7.8] - 2026-02-05
|
|
121
|
-
|
|
122
|
-
### Fixed
|
|
123
|
-
|
|
124
|
-
* **deps:** Upgrade AWS SDK to resolve `fast-xml-parser` DoS vulnerability ([#116](https://github.com/macalbert/envilder/pull/116))
|
|
125
|
-
|
|
126
|
-
### Dependencies
|
|
127
|
-
|
|
128
|
-
* Bump `@isaacs/brace-expansion` ([#115](https://github.com/macalbert/envilder/pull/115))
|
|
129
|
-
* Bump `@secretlint/secretlint-rule-preset-recommend` ([#114](https://github.com/macalbert/envilder/pull/114))
|
|
130
|
-
* Bump `commander` from 14.0.2 to 14.0.3 ([#113](https://github.com/macalbert/envilder/pull/113))
|
|
131
|
-
* Bump `@aws-sdk/client-ssm` from 3.958.0 to 3.980.0 ([#112](https://github.com/macalbert/envilder/pull/112))
|
|
132
|
-
* Bump `secretlint` from 11.2.5 to 11.3.1 ([#110](https://github.com/macalbert/envilder/pull/110))
|
|
133
|
-
* Bump `@commitlint/cli` from 20.3.0 to 20.4.0 ([#111](https://github.com/macalbert/envilder/pull/111))
|
|
134
|
-
|
|
135
|
-
---
|
|
136
|
-
|
|
137
|
-
## [0.7.7] - 2026-01-27
|
|
138
|
-
|
|
139
|
-
### Added
|
|
140
|
-
|
|
141
|
-
* **push:** AWS throttling retry logic and duplicate SSM path validation ([#109](https://github.com/macalbert/envilder/pull/109))
|
|
142
|
-
|
|
143
|
-
### Fixed
|
|
144
|
-
|
|
145
|
-
* **ci:** Streamline `npm publish` workflow to prevent failures ([#106](https://github.com/macalbert/envilder/pull/106))
|
|
146
|
-
* **ci-publish:** Update publish command in workflow
|
|
147
|
-
|
|
148
|
-
### Dependencies
|
|
149
|
-
|
|
150
|
-
* Bump `lodash` ([#108](https://github.com/macalbert/envilder/pull/108))
|
|
151
|
-
* Bump `diff` ([#107](https://github.com/macalbert/envilder/pull/107))
|
|
152
|
-
|
|
153
|
-
---
|
|
154
|
-
|
|
155
|
-
## [0.7.6] - 2026-01-16
|
|
156
|
-
|
|
157
|
-
### Fixed
|
|
158
|
-
|
|
159
|
-
* **ci:** Align npm publish script with CI workflow expectations to prevent failures
|
|
160
|
-
* Removed redundant validation steps (lint, build, test) from publish script that were already executed in CI
|
|
161
|
-
|
|
162
|
-
### Changed
|
|
163
|
-
|
|
164
|
-
* Simplified npm publish script from full validation pipeline to `npm pack --dry-run && npm publish`
|
|
165
|
-
* Updated README badge links - npm downloads now links to npmcharts for visual statistics
|
|
166
|
-
* Converted README badges from HTML to standard Markdown format for better maintainability
|
|
167
|
-
* Updated GitHub Action version references from v0.7.2 to v0.7.6 in documentation
|
|
168
|
-
|
|
169
|
-
### Removed
|
|
170
|
-
|
|
171
|
-
* **ci:** Deleted deprecated `publish-action.yml` workflow
|
|
172
|
-
|
|
173
|
-
---
|
|
174
|
-
|
|
175
|
-
## [0.7.5] - 2026-01-15
|
|
176
|
-
|
|
177
|
-
### Documentation
|
|
178
|
-
|
|
179
|
-
* Remove changelog generation instructions from documentation ([#104](https://github.com/macalbert/envilder/pull/104))
|
|
180
|
-
* Update GitHub Copilot instructions
|
|
181
|
-
|
|
182
|
-
### Dependencies
|
|
183
|
-
|
|
184
|
-
* Bump undici to address security vulnerability ([#105](https://github.com/macalbert/envilder/pull/105))
|
|
185
|
-
|
|
186
|
-
---
|
|
187
|
-
|
|
188
|
-
## [0.7.4] - 2026-01-02
|
|
189
|
-
|
|
190
|
-
### Changed
|
|
191
|
-
|
|
192
|
-
* **ci:** Update npm publish command to include `--no-git-checks` flag
|
|
193
|
-
|
|
194
|
-
### Dependencies
|
|
195
|
-
|
|
196
|
-
* Bump @commitlint/cli from 20.1.0 to 20.2.0 ([#103](https://github.com/macalbert/envilder/pull/103))
|
|
197
|
-
* Bump testcontainers from 11.9.0 to 11.11.0 ([#102](https://github.com/macalbert/envilder/pull/102))
|
|
198
|
-
* Bump @types/node from 24.10.1 to 25.0.3 ([#101](https://github.com/macalbert/envilder/pull/101))
|
|
199
|
-
* Bump @testcontainers/localstack from 11.9.0 to 11.11.0 ([#100](https://github.com/macalbert/envilder/pull/100))
|
|
200
|
-
* Bump @commitlint/config-conventional ([#99](https://github.com/macalbert/envilder/pull/99))
|
|
201
|
-
|
|
202
|
-
---
|
|
203
|
-
|
|
204
|
-
## [0.7.3] - 2025-11-29
|
|
205
|
-
|
|
206
|
-
### Changed
|
|
207
|
-
|
|
208
|
-
* **ci:** Update Node.js version to 24 in workflow
|
|
209
|
-
* Update publish command to use pnpm
|
|
210
|
-
* Add repository field to package.json
|
|
211
|
-
* Standardize quotes in publish-npm.yml
|
|
212
|
-
|
|
213
|
-
### Dependencies
|
|
214
|
-
|
|
215
|
-
* Bump actions/checkout from 5 to 6 ([#98](https://github.com/macalbert/envilder/pull/98))
|
|
216
|
-
* Bump glob from 11.1.0 to 13.0.0 ([#97](https://github.com/macalbert/envilder/pull/97))
|
|
217
|
-
* Bump pnpm/action-setup from 2 to 4 ([#92](https://github.com/macalbert/envilder/pull/92))
|
|
218
|
-
* Bump @commitlint/cli from 19.8.1 to 20.1.0 ([#94](https://github.com/macalbert/envilder/pull/94))
|
|
219
|
-
* Bump glob in the npm_and_yarn group ([#96](https://github.com/macalbert/envilder/pull/96))
|
|
220
|
-
|
|
221
|
-
---
|
|
222
|
-
|
|
223
|
-
## [0.7.1] - 2025-11-16
|
|
224
|
-
|
|
225
|
-
### Documentation
|
|
226
|
-
|
|
227
|
-
* Update README and ROADMAP for GitHub Action integration ([#95](https://github.com/macalbert/envilder/pull/95))
|
|
228
|
-
* Update GitHub Action version from v1 to v0.7.1
|
|
229
|
-
* Fix example version for GitHub Action
|
|
230
|
-
|
|
231
|
-
### Changed
|
|
232
|
-
|
|
233
|
-
* **ci:** Update workflow to use pnpm for dependency management
|
|
234
|
-
|
|
235
|
-
### Tests
|
|
236
|
-
|
|
237
|
-
* Increase timeout for E2E tests to 60 seconds
|
|
238
|
-
|
|
239
|
-
---
|
|
240
|
-
|
|
241
|
-
## [0.7.0] - 2025-11-16
|
|
242
|
-
|
|
243
|
-
### Added
|
|
244
|
-
|
|
245
|
-
* **githubAction:** Add end-to-end tests for GitHub Actions simulation
|
|
246
|
-
* **githubAction:** Update action paths and add new GitHub Action implementation
|
|
247
|
-
* **packaging:** Add project build and uninstall functionality
|
|
248
|
-
|
|
249
|
-
### Fixed
|
|
250
|
-
|
|
251
|
-
* **githubAction:** Correct author name in action.yml
|
|
252
|
-
* **githubAction:** Correct build command from `ppnpm` to `pnpm`
|
|
253
|
-
* **githubAction:** Correct path to `GitHubAction.js` in validation step
|
|
254
|
-
* **githubAction:** Remove source map generation from `build:gha` script
|
|
255
|
-
* **githubAction:** Update action references in documentation and code
|
|
256
|
-
|
|
257
|
-
### Changed
|
|
258
|
-
|
|
259
|
-
* Move GitHub Action to `github-action/` subfolder
|
|
260
|
-
|
|
261
|
-
### Breaking Changes
|
|
262
|
-
|
|
263
|
-
* Action path changed from `macalbert/envilder@v1` to `macalbert/envilder/github-action@v1`
|
|
264
|
-
|
|
265
|
-
---
|
|
266
|
-
|
|
267
|
-
## [0.6.6] - 2025-11-02
|
|
268
|
-
|
|
269
|
-
### Changed
|
|
270
|
-
|
|
271
|
-
* Updated AWS credentials configuration in workflows
|
|
272
|
-
* Bumped vite from 7.1.10 to 7.1.11
|
|
273
|
-
* Bumped @types/node from 24.7.2 to 24.9.2
|
|
274
|
-
* Bumped @biomejs/biome from 2.2.6 to 2.3.2
|
|
275
|
-
* Bumped GitHub/codeql-action from 3 to 4
|
|
276
|
-
* Bumped actions/setup-node from 5 to 6
|
|
277
|
-
* Bumped vitest from 3.2.4 to 4.0.6
|
|
278
|
-
|
|
279
|
-
### Documentation
|
|
280
|
-
|
|
281
|
-
* Added Snyk badge for known vulnerabilities in README
|
|
282
|
-
|
|
283
|
-
## [0.6.5] - 2025-10-15
|
|
284
|
-
|
|
285
|
-
### Added
|
|
286
|
-
|
|
287
|
-
* Enabled npm trusted publishing with OIDC authentication
|
|
288
|
-
|
|
289
|
-
### Changed
|
|
290
|
-
|
|
291
|
-
* Bumped tmp from 0.2.3 to 0.2.4
|
|
292
|
-
* Bumped @types/node from 22.16.3 to 24.3.0
|
|
293
|
-
* Bumped @testcontainers/localstack from 11.2.1 to 11.5.1
|
|
294
|
-
* Bumped testcontainers from 11.2.1 to 11.5.1
|
|
295
|
-
* Bumped @aws-sdk/credential-providers from 3.844.0 to 3.879.0
|
|
296
|
-
* Bumped secretlint from 10.2.1 to 11.2.0
|
|
297
|
-
* Bumped @biomejs/biome from 2.1.3 to 2.2.4
|
|
298
|
-
* Bumped @secretlint/secretlint-rule-preset-recommend from 10.2.1 to 11.2.4
|
|
299
|
-
* Bumped vite from 7.0.4 to 7.1.5
|
|
300
|
-
* Bumped commander from 14.0.0 to 14.0.1
|
|
301
|
-
* Bumped inversify from 7.6.1 to 7.10.2
|
|
302
|
-
* Updated actions/checkout from 4 to 5
|
|
303
|
-
* Updated actions/setup-node from 4 to 5
|
|
304
|
-
* Updated actions/upload-pages-artifact from 3 to 4
|
|
305
|
-
* Updated aws-actions/configure-aws-credentials from 4 to 5
|
|
306
|
-
|
|
307
|
-
## [0.6.4] - 2025-08-02
|
|
308
|
-
|
|
309
|
-
### Changed
|
|
310
|
-
|
|
311
|
-
* Bumped typescript from 5.8.3 to 5.9.2
|
|
312
|
-
* Bumped secretlint from 10.2.0 to 10.2.1
|
|
313
|
-
* Bumped @types/glob from 8.1.0 to 9.0.0
|
|
314
|
-
* Bumped @secretlint/secretlint-rule-preset-recommend from 10.2.0 to 10.2.1
|
|
315
|
-
* Bumped @biomejs/biome from 2.1.1 to 2.1.3
|
|
316
|
-
|
|
317
|
-
## [0.6.3] - 2025-07-20
|
|
318
|
-
|
|
319
|
-
### Changed
|
|
320
|
-
|
|
321
|
-
* Bump version to 0.6.3 in package.json
|
|
322
|
-
|
|
323
|
-
---
|
|
324
|
-
|
|
325
|
-
## [0.6.2] - 2025-07-20
|
|
326
|
-
|
|
327
|
-
### Changed
|
|
328
|
-
|
|
329
|
-
* **di:** Implement .NET-Style DIP Startup Pattern for dependency injection — improved separation of concerns in DI configuration ([#59](https://github.com/macalbert/envilder/pull/59))
|
|
330
|
-
|
|
331
|
-
---
|
|
332
|
-
|
|
333
|
-
## [0.6.1] - 2025-07-13
|
|
334
|
-
|
|
335
|
-
### Added
|
|
336
|
-
|
|
337
|
-
* **Push Mode** functionality to upload environment variables to AWS SSM Parameter Store
|
|
338
|
-
* File-based approach for pushing multiple variables from `.env` files
|
|
339
|
-
* Single-variable approach for direct command line uploads
|
|
340
|
-
* Support for working with different AWS profiles when pushing secrets
|
|
341
|
-
* Comprehensive test coverage for all Push Mode functionality
|
|
342
|
-
|
|
343
|
-
### Security
|
|
344
|
-
|
|
345
|
-
* Implemented secure parameter handling to protect sensitive values
|
|
346
|
-
* Maintained AWS IAM best practices for least privilege
|
|
347
|
-
* Added safeguards against accidental overwrites of critical parameters
|
|
348
|
-
|
|
349
|
-
### Changed
|
|
350
|
-
|
|
351
|
-
* Designed clean, modular command structure for Push Mode operations
|
|
352
|
-
* Added new domain models and handlers to support Push feature
|
|
353
|
-
* Maintained separation of concerns between infrastructure and application layers
|
|
354
|
-
* Ensured backward compatibility with existing Pull Mode features
|
|
355
|
-
|
|
356
|
-
### Documentation
|
|
357
|
-
|
|
358
|
-
* Added comprehensive examples for all new Push Mode commands
|
|
359
|
-
* Created visual diagrams explaining Push Mode data flow
|
|
360
|
-
* Documented options and parameters for Push Mode operations
|
|
361
|
-
|
|
362
|
-
---
|
|
363
|
-
|
|
364
|
-
## [0.6.0] - 2025-07-13
|
|
365
|
-
|
|
366
|
-
### Added
|
|
367
|
-
|
|
368
|
-
* **push:** Introduced Push Mode — sync local `.env` variables to AWS SSM Parameter Store ([#57](https://github.com/macalbert/envilder/pull/57))
|
|
369
|
-
|
|
370
|
-
---
|
|
371
|
-
|
|
372
|
-
## [0.5.6] - 2025-07-06
|
|
373
|
-
|
|
374
|
-
### Added
|
|
375
|
-
|
|
376
|
-
* Introduced new logger interface for seamless integration of custom logging implementations
|
|
377
|
-
|
|
378
|
-
### Changed
|
|
379
|
-
|
|
380
|
-
* Updated several packages to latest versions for improved security and performance
|
|
381
|
-
|
|
382
|
-
### Documentation
|
|
383
|
-
|
|
384
|
-
* Added video guide to README demonstrating CLI usage
|
|
385
|
-
* Enhanced user onboarding materials
|
|
386
|
-
|
|
387
|
-
## [0.5.5] - 2025-06-29
|
|
388
|
-
|
|
389
|
-
### Changed
|
|
390
|
-
|
|
391
|
-
* Moved `EnvilderBuilder` from `domain` to `application/builders` directory
|
|
392
|
-
* Updated import paths across codebase for better organization
|
|
393
|
-
* Enhanced code architecture alignment with domain-driven design principles
|
|
394
|
-
|
|
395
|
-
### Fixed
|
|
396
|
-
|
|
397
|
-
* Fixed glob pattern and path handling in test cleanup functions
|
|
398
|
-
* Corrected file path resolution in end-to-end tests
|
|
399
|
-
* Improved error handling during test file deletions
|
|
400
|
-
|
|
401
|
-
### Documentation
|
|
402
|
-
|
|
403
|
-
* Extensively updated README with clearer structure and table of contents
|
|
404
|
-
* Added feature status table to clarify implemented vs planned features
|
|
405
|
-
* Simplified installation and usage instructions
|
|
406
|
-
* Revamped pull request template for better contributor experience
|
|
407
|
-
* Removed outdated environment-specific parameter examples
|
|
408
|
-
|
|
409
|
-
## [0.5.4] - 2025-06-10
|
|
410
|
-
|
|
411
|
-
### Added
|
|
412
|
-
|
|
413
|
-
* Added unit tests for error handling with missing CLI arguments
|
|
414
|
-
* Enhanced unit test reporting with JUnit format for better CI integration
|
|
415
|
-
|
|
416
|
-
### Changed
|
|
417
|
-
|
|
418
|
-
* Refactored `EnvFileManager` and related interfaces to use async/await
|
|
419
|
-
* Improved error handling and modularized secret processing in `Envilder`
|
|
420
|
-
* Enhanced error handling for missing secrets with clearer feedback
|
|
421
|
-
* Renamed methods, test suite descriptions, and filenames for consistency
|
|
422
|
-
* Extracted package.json version retrieval into dedicated `PackageJsonFinder` class
|
|
423
|
-
* Modularized and simplified `escapeEnvValue` method and related tests
|
|
424
|
-
* Updated dependencies for better reliability
|
|
425
|
-
* Improved test cleanup for more reliable test runs
|
|
426
|
-
* Added and reorganized permissions in CI workflow
|
|
427
|
-
* Updated `.gitattributes` for better language stats on GitHub
|
|
428
|
-
|
|
429
|
-
## [0.5.3] - 2025-06-07
|
|
430
|
-
|
|
431
|
-
### Added
|
|
432
|
-
|
|
433
|
-
* Modular CLI for environment variable synchronization with pluggable secret providers
|
|
434
|
-
* Builder pattern for flexible CLI configuration and usage
|
|
435
|
-
* Extensive unit, integration, and end-to-end tests
|
|
436
|
-
* AWS integration testing using Localstack with Testcontainers
|
|
437
|
-
* Expanded tests for environment file escaping and builder configuration
|
|
438
|
-
|
|
439
|
-
### Changed
|
|
440
|
-
|
|
441
|
-
* **BREAKING**: Full TypeScript migration from JavaScript
|
|
442
|
-
* Introduced modular, layered architecture with clear separation
|
|
443
|
-
* Restructured CLI internals for improved maintainability
|
|
444
|
-
* Test structure now mirrors production code structure
|
|
445
|
-
* Migrated CI/CD workflows and scripts from Yarn to npm
|
|
446
|
-
* Updated ignore files and configuration
|
|
447
|
-
|
|
448
|
-
### Documentation
|
|
449
|
-
|
|
450
|
-
* Updated documentation to focus on npm commands
|
|
451
|
-
* Improved workflow and script documentation
|
|
452
|
-
|
|
453
|
-
## [0.5.2] - 2025-05-18
|
|
454
|
-
|
|
455
|
-
### Added
|
|
456
|
-
|
|
457
|
-
* Comprehensive E2E validation test in CI/CD pipeline
|
|
458
|
-
* Validation includes: build, `npm pack`, local install, and CLI command execution
|
|
459
|
-
* Ensures package integrity and command-line operability before release
|
|
460
|
-
|
|
461
|
-
## [0.5.1] - 2025-05-16
|
|
462
|
-
|
|
463
|
-
### Fixed
|
|
464
|
-
|
|
465
|
-
* CLI command not recognized after global install (`npm install -g envilder`)
|
|
466
|
-
* Fixed missing compiled `lib/` files in published package
|
|
467
|
-
|
|
468
|
-
---
|
|
469
|
-
|
|
470
|
-
> **Note:** Versions below 0.5.1 are deprecated on npm and no longer supported.
|
|
471
|
-
> They are preserved here for historical reference only.
|
|
472
|
-
|
|
473
|
-
---
|
|
474
|
-
|
|
475
|
-
## [0.3.0] - 2025-05-09 [DEPRECATED]
|
|
476
|
-
|
|
477
|
-
### Added
|
|
478
|
-
|
|
479
|
-
* Support for working with different AWS accounts and configurations via AWS profiles
|
|
480
|
-
|
|
481
|
-
### Changed
|
|
482
|
-
|
|
483
|
-
* Bumped @secretlint/secretlint-rule-preset-recommend from 9.3.0 to 9.3.2
|
|
484
|
-
* Bumped @types/node from 22.14.1 to 22.15.3
|
|
485
|
-
* Bumped commander from 12.1.0 to 13.1.0
|
|
486
|
-
* Bumped vite from 6.2.6 to 6.3.4
|
|
487
|
-
* Bumped @aws-sdk/client-ssm from 3.787.0 to 3.799.0
|
|
488
|
-
|
|
489
|
-
## [0.2.3] - 2025-04-12 [DEPRECATED]
|
|
490
|
-
|
|
491
|
-
### Changed
|
|
492
|
-
|
|
493
|
-
* Updated multiple dependencies including:
|
|
494
|
-
* @types/node from 22.7.5 to 22.10.3
|
|
495
|
-
* @aws-sdk/client-ssm from 3.670.0 to 3.716.0
|
|
496
|
-
* @biomejs/biome from 1.9.3 to 1.9.4
|
|
497
|
-
* nanoid from 3.3.7 to 3.3.8
|
|
498
|
-
* @secretlint/secretlint-rule-preset-recommend from 8.5.0 to 9.0.0
|
|
499
|
-
* secretlint from 8.5.0 to 9.0.0
|
|
500
|
-
|
|
501
|
-
## [0.2.1] - 2024-10-16 [DEPRECATED]
|
|
502
|
-
|
|
503
|
-
### Added
|
|
504
|
-
|
|
505
|
-
* Code coverage reporting and deployment to GitHub Pages
|
|
506
|
-
* CodeQL workflow for security analysis
|
|
507
|
-
* Preserve existing `.env` file and update values if present
|
|
508
|
-
|
|
509
|
-
### Documentation
|
|
510
|
-
|
|
511
|
-
* Updated README.md with improved documentation
|
|
512
|
-
|
|
513
|
-
## [0.1.4] - 2024-10-01 [DEPRECATED]
|
|
514
|
-
|
|
515
|
-
Initial public release of Envilder.
|
|
5
|
+
| Component | Changelog | Package |
|
|
6
|
+
|-----------|-----------|---------|
|
|
7
|
+
| CLI | [cli.md](changelogs/cli.md) | [npm](https://www.npmjs.com/package/envilder) |
|
|
8
|
+
| GitHub Action | [gha.md](changelogs/gha.md) | [Marketplace](https://github.com/marketplace/actions/envilder) |
|
|
9
|
+
| .NET SDK | [sdk-dotnet.md](changelogs/sdk-dotnet.md) | [NuGet](https://www.nuget.org/packages/Envilder) |
|
|
10
|
+
| Python SDK | [sdk-python.md](changelogs/sdk-python.md) | [PyPI](https://pypi.org/project/envilder) |
|
|
11
|
+
| Node.js SDK | [sdk-nodejs.md](changelogs/sdk-nodejs.md) | [npm](https://www.npmjs.com/package/@envilder/sdk) |
|