@dotenvx/dotenvx 1.51.3 → 1.51.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/CHANGELOG.md CHANGED
@@ -2,7 +2,13 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
- [Unreleased](https://github.com/dotenvx/dotenvx/compare/v1.51.3...main)
5
+ [Unreleased](https://github.com/dotenvx/dotenvx/compare/v1.51.4...main)
6
+
7
+ ## [1.51.4](https://github.com/dotenvx/dotenvx/compare/v1.51.3...v1.51.4) (2025-12-29)
8
+
9
+ ### Changed
10
+
11
+ * Change description of `dotenvx-ops` to better reflect its tooling as operational primitives on top of dotenvx for production use cases. ([#721](https://github.com/dotenvx/dotenvx/pull/723))
6
12
 
7
13
  ## [1.51.3](https://github.com/dotenvx/dotenvx/compare/v1.51.2...v1.51.3) (2025-12-29)
8
14
 
@@ -47,7 +53,7 @@ All notable changes to this project will be documented in this file. See [standa
47
53
  ```
48
54
  _______________________________________________________________________
49
55
  | |
50
- | Dotenvx Ops: Commercial Tooling for Dotenvx |
56
+ | dotenvx-ops: production grade dotenvx–with operational primitives |
51
57
  | |
52
58
  | ░▒▓██████▓▒░░▒▓███████▓▒░ ░▒▓███████▓▒░ |
53
59
  | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ |
@@ -57,8 +63,6 @@ All notable changes to this project will be documented in this file. See [standa
57
63
  | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░ |
58
64
  | ░▒▓██████▓▒░░▒▓█▓▒░ ░▒▓███████▓▒░ |
59
65
  | |
60
- | Use dotenvx across your team, infrastructure, agents, and more. |
61
- | |
62
66
  | Learn more at https://dotenvx.com/ops |
63
67
  |_______________________________________________________________________|
64
68
  ```
package/README.md CHANGED
@@ -2590,7 +2590,7 @@ This is known as *Decryption at Access* and is written about in [the whitepaper]
2590
2590
 
2591
2591
  [![dotenvx-ops](https://dotenvx.com/dotenvx-ops-banner.png?v=2)](https://dotenvx.com/ops)
2592
2592
 
2593
- > [Dotenvx Ops](https://dotenvx.com/ops) is optional commercial tooling for [dotenvx](https://github.com/dotenvx/dotenvx).
2593
+ > [Dotenvx Ops](https://dotenvx.com/ops) is production grade [dotenvx](https://github.com/dotenvx/dotenvx)–with operational primitives.
2594
2594
 
2595
2595
  *Use dotenvx across your team, infrastructure, agents, and more.*
2596
2596
 
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.51.3",
2
+ "version": "1.51.4",
3
3
  "name": "@dotenvx/dotenvx",
4
4
  "description": "a secure dotenv–from the creator of `dotenv`",
5
5
  "author": "@motdotla",
@@ -62,12 +62,13 @@ function encrypt () {
62
62
  for (const processedEnv of processedEnvs) {
63
63
  if (processedEnv.privateKeyAdded) {
64
64
  logger.success(`✔ key added to .env.keys (${processedEnv.privateKeyName})`)
65
+ logger.help('⮕ optional: [dotenvx ops backup] to securely backup private key')
65
66
 
66
67
  if (!isIgnoringDotenvKeys()) {
67
- logger.help('⮕ next run [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
68
+ logger.help('⮕ next run: [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
68
69
  }
69
70
 
70
- logger.help(`⮕ next run [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx run -- yourcommand] to test decryption locally`)
71
+ logger.help(`⮕ next run: [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx run -- yourcommand] to test decryption locally`)
71
72
  }
72
73
  }
73
74
  } catch (error) {
@@ -65,12 +65,13 @@ function rotate () {
65
65
  for (const processedEnv of processedEnvs) {
66
66
  if (processedEnv.privateKeyAdded) {
67
67
  logger.success(`✔ key added to .env.keys (${processedEnv.privateKeyName})`)
68
+ logger.help('⮕ optional: [dotenvx ops backup] to securely backup private key')
68
69
 
69
70
  if (!isIgnoringDotenvKeys()) {
70
- logger.help('⮕ next run [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
71
+ logger.help('⮕ next run: [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
71
72
  }
72
73
 
73
- logger.help(`⮕ next run [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx get] to test decryption locally`)
74
+ logger.help(`⮕ next run: [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx get] to test decryption locally`)
74
75
  }
75
76
  }
76
77
  } catch (error) {
@@ -67,12 +67,13 @@ function set (key, value) {
67
67
  for (const processedEnv of processedEnvs) {
68
68
  if (processedEnv.privateKeyAdded) {
69
69
  logger.success(`✔ key added to ${processedEnv.envKeysFilepath} (${processedEnv.privateKeyName})`)
70
+ logger.help('⮕ optional: [dotenvx ops backup] to securely backup private key')
70
71
 
71
72
  if (!isIgnoringDotenvKeys()) {
72
- logger.help('⮕ next run [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
73
+ logger.help('⮕ next run: [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
73
74
  }
74
75
 
75
- logger.help(`⮕ next run [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx get ${key}] to test decryption locally`)
76
+ logger.help(`⮕ next run: [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx get ${key}] to test decryption locally`)
76
77
  }
77
78
  }
78
79
  } catch (error) {
@@ -22,14 +22,14 @@ function executeDynamic (program, command, rawArgs) {
22
22
 
23
23
  const result = childProcess.spawnSync(`dotenvx-${command}`, forwardedArgs, { stdio: 'inherit', env })
24
24
  if (result.error) {
25
- if (command === 'pro') {
26
- logger.warn(`[INSTALLATION_NEEDED] install dotenvx-${command} to use [dotenvx-${command}] commands 🏆`)
27
- logger.warn('[DEPRECATION NOTICE] dotenvx-pro to be sunsetted soon (2026) and its featureset to be rolled into dotenvx-ops')
28
- logger.help('? see installation instructions [https://github.com/dotenvx/dotenvx-pro]')
25
+ if (command === 'radar') {
26
+ logger.warn(`[INSTALLATION_NEEDED] install dotenvx-${command} to use [dotenvx ${command}] 📡`)
27
+ logger.warn('[DEPRECATION NOTICE] dotenvx-radar to be sunsetted soon (2026) and its featureset to be rolled into dotenvx-ops')
28
+ logger.help('? see installation instructions [https://dotenvx.com/radar]')
29
29
  } else if (command === 'ops') {
30
30
  const ops = ` _______________________________________________________________________
31
31
  | |
32
- | Dotenvx Ops: Commercial Tooling for Dotenvx |
32
+ | dotenvx-ops: production grade dotenvx–with operational primitives |
33
33
  | |
34
34
  | ░▒▓██████▓▒░░▒▓███████▓▒░ ░▒▓███████▓▒░ |
35
35
  | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ |
@@ -39,8 +39,6 @@ function executeDynamic (program, command, rawArgs) {
39
39
  | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░ |
40
40
  | ░▒▓██████▓▒░░▒▓█▓▒░ ░▒▓███████▓▒░ |
41
41
  | |
42
- | Use dotenvx across your team, infrastructure, agents, and more. |
43
- | |
44
42
  | Learn more at https://dotenvx.com/ops |
45
43
  | |
46
44
  | --------------------------------------------------------------------- |
@@ -50,32 +48,8 @@ function executeDynamic (program, command, rawArgs) {
50
48
  console.log(ops)
51
49
  console.log('')
52
50
  logger.warn(`[INSTALLATION_NEEDED] install dotenvx-${command} to use [dotenvx ${command}] 🏰`)
53
- logger.help('? see installation instructions [https://dotenvx.com/ops]')
54
- } else if (command === 'radar') {
55
- const radar = ` _______________________________________________________________________
56
- | |
57
- | Dotenvx Radar: Env Observability |
58
- | |
59
- | ░▒▓███████▓▒░ ░▒▓██████▓▒░░▒▓███████▓▒░ ░▒▓██████▓▒░░▒▓███████▓▒░ |
60
- | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░ |
61
- | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░ |
62
- | ░▒▓███████▓▒░░▒▓████████▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓████████▓▒░▒▓███████▓▒░ |
63
- | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░ |
64
- | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░ |
65
- | ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓███████▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░ |
66
- | |
67
- | Observe, version, and back up your environment variables at runtime. |
68
- | |
69
- | Purchase lifetime access at https://dotenvx.com/radar |
70
- | |
71
- | --------------------------------------------------------------------- |
72
- | - thank you for using dotenvx! - @motdotla |
73
- |_______________________________________________________________________|`
74
-
75
- console.log(radar)
76
- console.log('')
77
- logger.warn(`[INSTALLATION_NEEDED] install dotenvx-${command} to use [dotenvx ${command}] 📡`)
78
- logger.help('? see installation instructions [https://dotenvx.com/radar]')
51
+ logger.help('⮕ next run: [curl -sfS https://dotenvx.sh/ops | sh]')
52
+ logger.help('⮕ see more: [https://dotenvx.com/ops]')
79
53
  } else {
80
54
  logger.info(`error: unknown command '${command}'`)
81
55
  }
package/src/lib/main.js CHANGED
@@ -235,12 +235,13 @@ const set = function (key, value, options = {}) {
235
235
  for (const processedEnv of processedEnvs) {
236
236
  if (processedEnv.privateKeyAdded) {
237
237
  logger.success(`✔ key added to ${processedEnv.envKeysFilepath} (${processedEnv.privateKeyName})`)
238
+ logger.help('⮕ optional: [dotenvx ops backup] to securely backup private key')
238
239
 
239
240
  if (!isIgnoringDotenvKeys()) {
240
- logger.help('⮕ next run [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
241
+ logger.help('⮕ next run: [dotenvx ext gitignore --pattern .env.keys] to gitignore .env.keys')
241
242
  }
242
243
 
243
- logger.help(`⮕ next run [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx get ${key}] to test decryption locally`)
244
+ logger.help(`⮕ next run: [${processedEnv.privateKeyName}='${processedEnv.privateKey}' dotenvx get ${key}] to test decryption locally`)
244
245
  }
245
246
  }
246
247