add ability to call self-signed or invalid certificate clients

This commit is contained in:
Joel Male
2021-02-26 13:58:33 +10:00
parent 528d756289
commit 9380ee26ff
3852 changed files with 253796 additions and 137756 deletions
+4
View File
@@ -1,5 +1,9 @@
# `v8-module-cache` Changelog
## 2020-10-28, Version 2.2.0
* Added `V8_COMPILE_CACHE_CACHE_DIR` option [#23](https://github.com/zertosh/v8-compile-cache/pull/23).
## 2020-05-30, Version 2.1.1
* Stop using process.umask() [#28](https://github.com/zertosh/v8-compile-cache/pull/28).
+3 -1
View File
@@ -26,9 +26,11 @@ The ability to tap into V8 to produce/consume this cache was introduced in [Node
Set the environment variable `DISABLE_V8_COMPILE_CACHE=1` to disable the cache.
Cache directory is defined by environment variable `V8_COMPILE_CACHE_CACHE_DIR` or defaults to `<os.tmpdir()>/v8-compile-cache-<V8_VERSION>`.
## Internals
The caches are stored in `$TMP/v8-compile-cache/V8_VERSION`, where there are `.BLOB` and `.MAP` files corresponding to the entry module that required `v8-compile-cache`. The cache is _entry module specific_ because it is faster to load the entire code cache into memory at once, than it is to read it from disk on a file-by-file basis.
Cache files are suffixed `.BLOB` and `.MAP` corresponding to the entry module that required `v8-compile-cache`. The cache is _entry module specific_ because it is faster to load the entire code cache into memory at once, than it is to read it from disk on a file-by-file basis.
## Benchmarks
+10 -9
View File
@@ -1,13 +1,14 @@
{
"name": "v8-compile-cache",
"version": "2.1.1",
"version": "2.2.0",
"description": "Require hook for automatic V8 compile cache persistence",
"main": "v8-compile-cache.js",
"scripts": {
"bench": "bench/run.sh",
"lint": "eslint --max-warnings=0 .",
"test": "tap test/*-test.js",
"posttest": "npm run lint"
"eslint": "eslint --max-warnings=0 .",
"tap": "tap test/*-test.js",
"test": "npm run tap",
"posttest": "npm run eslint"
},
"author": "Andres Suarez <zertosh@gmail.com>",
"repository": {
@@ -20,14 +21,14 @@
"license": "MIT",
"dependencies": {},
"devDependencies": {
"babel-core": "6.23.1",
"eslint": "^3.15.0",
"flow-parser": "0.38.0",
"babel-core": "6.26.3",
"eslint": "^7.12.1",
"flow-parser": "0.136.0",
"rimraf": "^2.5.4",
"rxjs": "5.2.0",
"rxjs": "6.6.3",
"semver": "^5.3.0",
"tap": "^10.1.1",
"temp": "^0.8.3",
"yarn": "0.20.3"
"yarn": "1.22.10"
}
}
+8 -4
View File
@@ -86,8 +86,6 @@ class FileSystemBlobStore {
try {
fs.writeFileSync(this._blobFilename, blobToStore);
fs.writeFileSync(this._mapFilename, mapToStore);
} catch (error) {
throw error;
} finally {
fs.unlinkSync(this._lockFilename);
}
@@ -301,7 +299,8 @@ function slashEscape(str) {
'\x00': 'z0',
'z': 'zZ',
};
return str.replace(/[\\:\/\x00z]/g, match => (ESCAPE_LOOKUP[match]));
const ESCAPE_REGEX = /[\\:/\x00z]/g; // eslint-disable-line no-control-regex
return str.replace(ESCAPE_REGEX, match => ESCAPE_LOOKUP[match]);
}
function supportsCachedData() {
@@ -311,6 +310,11 @@ function supportsCachedData() {
}
function getCacheDir() {
const v8_compile_cache_cache_dir = process.env.V8_COMPILE_CACHE_CACHE_DIR;
if (v8_compile_cache_cache_dir) {
return v8_compile_cache_cache_dir;
}
// Avoid cache ownership issues on POSIX systems.
const dirname = typeof process.getuid === 'function'
? 'v8-compile-cache-' + process.getuid()
@@ -348,7 +352,7 @@ if (!process.env.DISABLE_V8_COMPILE_CACHE && supportsCachedData()) {
nativeCompileCache.setCacheStore(blobStore);
nativeCompileCache.install();
process.once('exit', code => {
process.once('exit', () => {
if (blobStore.isDirty()) {
blobStore.save();
}