@jdeighan/env 8.0.1 → 8.0.5
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/package.json +3 -3
- package/src/EnvLoaderEx.coffee +9 -9
- package/src/EnvLoaderEx.js +10 -15
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jdeighan/env",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "8.0.
|
|
4
|
+
"version": "8.0.5",
|
|
5
5
|
"description": "enhanced syntax for .env files",
|
|
6
6
|
"main": "./src/EnvLoaderEx.js",
|
|
7
7
|
"exports": {
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
},
|
|
32
32
|
"homepage": "https://github.com/johndeighan/env#readme",
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@jdeighan/coffee-utils": "^4.0.
|
|
35
|
-
"@jdeighan/string-input": "^8.0.
|
|
34
|
+
"@jdeighan/coffee-utils": "^4.0.14",
|
|
35
|
+
"@jdeighan/string-input": "^8.0.4",
|
|
36
36
|
"coffeescript": "^2.6.1",
|
|
37
37
|
"cross-env": "^7.0.3"
|
|
38
38
|
}
|
package/src/EnvLoaderEx.coffee
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
# EnvLoaderEx.coffee
|
|
2
2
|
|
|
3
|
-
import
|
|
4
|
-
import {dirname, resolve, parse as parse_fname} from 'path'
|
|
3
|
+
import pathlib from 'path'
|
|
5
4
|
|
|
6
5
|
import {
|
|
7
|
-
undef, pass, error, rtrim, isArray, isFunction, rtrunc, escapeStr,
|
|
6
|
+
assert, undef, pass, error, rtrim, isArray, isFunction, rtrunc, escapeStr,
|
|
8
7
|
} from '@jdeighan/coffee-utils'
|
|
9
8
|
import {log} from '@jdeighan/coffee-utils/log'
|
|
10
9
|
import {debug} from '@jdeighan/coffee-utils/debug'
|
|
@@ -301,7 +300,7 @@ export loadEnvFrom = (searchDir, rootName='DIR_ROOT', hOptions={}) ->
|
|
|
301
300
|
lPaths = [path] # --- build an array of paths
|
|
302
301
|
if ! hOptions.onefile
|
|
303
302
|
# --- search upward for .env files, but process top down
|
|
304
|
-
while path = pathTo('.env', resolve(rtrunc(path, 5), '..'), "up")
|
|
303
|
+
while path = pathTo('.env', pathlib.resolve(rtrunc(path, 5), '..'), "up")
|
|
305
304
|
debug "found .env file: #{path}"
|
|
306
305
|
lPaths.unshift path
|
|
307
306
|
|
|
@@ -314,7 +313,7 @@ export loadEnvFrom = (searchDir, rootName='DIR_ROOT', hOptions={}) ->
|
|
|
314
313
|
# Instead of loading into process.env,
|
|
315
314
|
# this loads into hPrivEnv from '@jdeighan/coffee-utils/privenv'
|
|
316
315
|
|
|
317
|
-
export loadPrivEnvFrom = (
|
|
316
|
+
export loadPrivEnvFrom = (rootDir, rootName='DIR_ROOT', hInit=undef) ->
|
|
318
317
|
|
|
319
318
|
hPrivEnvCallbacks.clearAll()
|
|
320
319
|
|
|
@@ -323,14 +322,15 @@ export loadPrivEnvFrom = (searchDir, rootName='DIR_ROOT', hInit=undef) ->
|
|
|
323
322
|
for name,value of hInit
|
|
324
323
|
hPrivEnvCallbacks.setVar name, value
|
|
325
324
|
|
|
326
|
-
|
|
325
|
+
if rootName
|
|
326
|
+
hPrivEnvCallbacks.setVar rootName, rootDir
|
|
327
|
+
loadEnvFrom(rootDir, rootName, {hCallbacks: hPrivEnvCallbacks})
|
|
327
328
|
return
|
|
328
329
|
|
|
329
330
|
# ---------------------------------------------------------------------------
|
|
330
331
|
|
|
331
332
|
# --- Auto-load private environment if true env var DIR_ROOT is set
|
|
332
333
|
|
|
333
|
-
if process.env.DIR_ROOT
|
|
334
|
+
if process.env.DIR_ROOT
|
|
334
335
|
rootDir = process.env.DIR_ROOT
|
|
335
|
-
|
|
336
|
-
loadPrivEnvFrom rootDir
|
|
336
|
+
loadPrivEnvFrom process.env.DIR_ROOT
|
package/src/EnvLoaderEx.js
CHANGED
|
@@ -2,17 +2,10 @@
|
|
|
2
2
|
// EnvLoaderEx.coffee
|
|
3
3
|
var hDefCallbacks, rootDir;
|
|
4
4
|
|
|
5
|
-
import
|
|
6
|
-
strict as assert
|
|
7
|
-
} from 'assert';
|
|
8
|
-
|
|
9
|
-
import {
|
|
10
|
-
dirname,
|
|
11
|
-
resolve,
|
|
12
|
-
parse as parse_fname
|
|
13
|
-
} from 'path';
|
|
5
|
+
import pathlib from 'path';
|
|
14
6
|
|
|
15
7
|
import {
|
|
8
|
+
assert,
|
|
16
9
|
undef,
|
|
17
10
|
pass,
|
|
18
11
|
error,
|
|
@@ -319,7 +312,7 @@ export var loadEnvFrom = function(searchDir, rootName = 'DIR_ROOT', hOptions = {
|
|
|
319
312
|
lPaths = [path]; // --- build an array of paths
|
|
320
313
|
if (!hOptions.onefile) {
|
|
321
314
|
// --- search upward for .env files, but process top down
|
|
322
|
-
while (path = pathTo('.env', resolve(rtrunc(path, 5), '..'), "up")) {
|
|
315
|
+
while (path = pathTo('.env', pathlib.resolve(rtrunc(path, 5), '..'), "up")) {
|
|
323
316
|
debug(`found .env file: ${path}`);
|
|
324
317
|
lPaths.unshift(path);
|
|
325
318
|
}
|
|
@@ -334,7 +327,7 @@ export var loadEnvFrom = function(searchDir, rootName = 'DIR_ROOT', hOptions = {
|
|
|
334
327
|
// ---------------------------------------------------------------------------
|
|
335
328
|
// Instead of loading into process.env,
|
|
336
329
|
// this loads into hPrivEnv from '@jdeighan/coffee-utils/privenv'
|
|
337
|
-
export var loadPrivEnvFrom = function(
|
|
330
|
+
export var loadPrivEnvFrom = function(rootDir, rootName = 'DIR_ROOT', hInit = undef) {
|
|
338
331
|
var name, value;
|
|
339
332
|
hPrivEnvCallbacks.clearAll();
|
|
340
333
|
// --- Load any vars found in hInit
|
|
@@ -344,7 +337,10 @@ export var loadPrivEnvFrom = function(searchDir, rootName = 'DIR_ROOT', hInit =
|
|
|
344
337
|
hPrivEnvCallbacks.setVar(name, value);
|
|
345
338
|
}
|
|
346
339
|
}
|
|
347
|
-
|
|
340
|
+
if (rootName) {
|
|
341
|
+
hPrivEnvCallbacks.setVar(rootName, rootDir);
|
|
342
|
+
}
|
|
343
|
+
loadEnvFrom(rootDir, rootName, {
|
|
348
344
|
hCallbacks: hPrivEnvCallbacks
|
|
349
345
|
});
|
|
350
346
|
};
|
|
@@ -352,8 +348,7 @@ export var loadPrivEnvFrom = function(searchDir, rootName = 'DIR_ROOT', hInit =
|
|
|
352
348
|
// ---------------------------------------------------------------------------
|
|
353
349
|
|
|
354
350
|
// --- Auto-load private environment if true env var DIR_ROOT is set
|
|
355
|
-
if (process.env.DIR_ROOT
|
|
351
|
+
if (process.env.DIR_ROOT) {
|
|
356
352
|
rootDir = process.env.DIR_ROOT;
|
|
357
|
-
|
|
358
|
-
loadPrivEnvFrom(rootDir);
|
|
353
|
+
loadPrivEnvFrom(process.env.DIR_ROOT);
|
|
359
354
|
}
|