mirror of
https://github.com/standardnotes/server
synced 2026-04-20 20:02:34 -04:00
Compare commits
212 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 84cbeaf3be | |||
| 578ce0e74e | |||
| 532be7c358 | |||
| d406272f07 | |||
| 9de3352885 | |||
| 8575d20f7b | |||
| 102d4b1e8a | |||
| 1a57c247b2 | |||
| dbb0e4a974 | |||
| 5c02435ee4 | |||
| 0a1e555b13 | |||
| be668d7d7a | |||
| 87e50ec941 | |||
| 6d7ca1b926 | |||
| 00bfaaa53d | |||
| f939caf2d9 | |||
| 0f3615ee65 | |||
| 567bcf26b5 | |||
| 9d49764b84 | |||
| 5c9f493b67 | |||
| 4fe8e9a79f | |||
| f975dd9697 | |||
| 10832f7001 | |||
| 86b050865f | |||
| 6f07aaf87a | |||
| 634e8bd2d0 | |||
| 6853dfbf66 | |||
| 136cf252a1 | |||
| cad28ebba5 | |||
| 460fdf9eaf | |||
| bec1b502ad | |||
| 70bbf11db5 | |||
| c00c7becae | |||
| 89dc6c19bf | |||
| 972a91d59f | |||
| 045358ddbf | |||
| c7217a92ba | |||
| 3da7a21cde | |||
| 351e18f638 | |||
| 4f2129c4e0 | |||
| d7a1c667dd | |||
| 4de0bfa36d | |||
| 0443de88ce | |||
| f830bac873 | |||
| 517ae5ded9 | |||
| 6062f85000 | |||
| e2205c3849 | |||
| 0b46eff16e | |||
| df67982bca | |||
| d44866b3c0 | |||
| 6ee18bffe6 | |||
| a881dd2d79 | |||
| b767e1f072 | |||
| e3cb1faba4 | |||
| 5c5f988055 | |||
| c7d2adf091 | |||
| a4ad37f309 | |||
| 73c2cc1222 | |||
| 9380900aaf | |||
| 02f4d5c717 | |||
| 1f4b26d269 | |||
| e253825da6 | |||
| 2bddd947ba | |||
| b7173346d2 | |||
| 01641975c0 | |||
| 7abd80cdba | |||
| aeb5ea1874 | |||
| d2a371b92c | |||
| 3ea3b24bb6 | |||
| 0c3bc0cae6 | |||
| d56410984a | |||
| 4dd2eb9349 | |||
| 709aec5eeb | |||
| f1aa431c22 | |||
| 86d0e565ed | |||
| 92bb447cac | |||
| 08966e7af7 | |||
| 2c732ff713 | |||
| 1493b7c478 | |||
| efd816a627 | |||
| f24c4c27fc | |||
| 88a5de766c | |||
| a0e523e64c | |||
| 69ce3eb2a8 | |||
| 99b8273e2d | |||
| a95b6d61e7 | |||
| 1a349e1641 | |||
| f1b6fa55df | |||
| 6c95ab8a1c | |||
| 5987b0899c | |||
| 664a92132b | |||
| 26b13ed6d4 | |||
| be7c66b145 | |||
| 7e8d7f6874 | |||
| c1805ee2ac | |||
| eff1d642cf | |||
| a05d7afe00 | |||
| c2650646d1 | |||
| f73e4adf5a | |||
| 7c67a5a0f9 | |||
| 6dde9209af | |||
| 264fd4c36e | |||
| 4c0bc82090 | |||
| f3598fa5a1 | |||
| 8097d7239d | |||
| 7962b245b5 | |||
| ce0450becf | |||
| 0762ed1127 | |||
| 3563a0b64a | |||
| 0342cdcfc0 | |||
| b1cb6a1d21 | |||
| 615e4184f6 | |||
| 54091f23da | |||
| e4a8324db2 | |||
| 01bb55be39 | |||
| e551a364f6 | |||
| 7e65f85377 | |||
| e6a21606a3 | |||
| f275b48770 | |||
| de4fcf9a4c | |||
| a1455d281f | |||
| cfbe2bbac6 | |||
| 398c10ce4b | |||
| c7d21b092d | |||
| 031fa71e7d | |||
| 948e843ad6 | |||
| 7b0ea0a069 | |||
| 8887b6e642 | |||
| 597ff13393 | |||
| 4ab61b94a4 | |||
| e19652d62a | |||
| a341e78909 | |||
| 48e52ac48c | |||
| 6dbb87708f | |||
| d15d51eae6 | |||
| 0058368681 | |||
| 746c821698 | |||
| 3f2d8c902c | |||
| 3637db2563 | |||
| 8ac84c59af | |||
| a2b1323568 | |||
| d35391288d | |||
| d5c1b76de0 | |||
| 4600a49e88 | |||
| 96a2a67aa6 | |||
| bb380b5794 | |||
| 47004fd20a | |||
| c9bf024109 | |||
| 529795d393 | |||
| 79ae07623f | |||
| 6bdb524489 | |||
| 480693fb9f | |||
| e150930072 | |||
| edd92ef81a | |||
| 49cd5be352 | |||
| b1665779b5 | |||
| a82192db42 | |||
| 589b740f49 | |||
| 3c10de3e5d | |||
| 41a04062c9 | |||
| db9d10c302 | |||
| 5596d04040 | |||
| 341f69e301 | |||
| ef0464690b | |||
| 199ebeb4ea | |||
| c949670d4c | |||
| 9dcd583b58 | |||
| 097e320490 | |||
| c9bfda91f4 | |||
| 2d6a3ebf45 | |||
| d0d4bd23fb | |||
| edb0a768d0 | |||
| 4cc647ac07 | |||
| bcd1d830e6 | |||
| 2597324876 | |||
| 69b404f5d4 | |||
| e94b0d0b02 | |||
| ed1bf37287 | |||
| 3946f56261 | |||
| fc53dab007 | |||
| e836abdef7 | |||
| 826482b1f0 | |||
| 45bd00919c | |||
| 4e1bae6daf | |||
| 8f23c8ab3f | |||
| 4d32f26631 | |||
| c11abe1bd3 | |||
| 4d12566b0d | |||
| 2200dca69d | |||
| d41dd3bdda | |||
| c5c24b3ac9 | |||
| 462ade2145 | |||
| bfef16ce37 | |||
| aa4351c8e9 | |||
| 2dff6a2ed3 | |||
| 7808cc8ed2 | |||
| 5b84f078c6 | |||
| cf5f44a4a5 | |||
| ed05ea553f | |||
| 4418c38878 | |||
| 6391a01b57 | |||
| 9dbcec198d | |||
| 78fbeb595f | |||
| d894a87e87 | |||
| 4f62cac213 | |||
| ce081274da | |||
| fd997f4849 | |||
| 3ddd671c47 | |||
| c19de13cac | |||
| f65809ef30 | |||
| 2823ed8612 | |||
| 420bf9ec54 |
+6
-1
@@ -17,6 +17,9 @@ SYNCING_SERVER_LOG_LEVEL=debug
|
||||
FILES_SERVER_LOG_LEVEL=debug
|
||||
REVISIONS_SERVER_LOG_LEVEL=debug
|
||||
API_GATEWAY_LOG_LEVEL=debug
|
||||
COOKIE_DOMAIN=localhost
|
||||
COOKIE_SECURE=false
|
||||
COOKIE_PARTITIONED=false
|
||||
|
||||
MYSQL_DATABASE=standard_notes_db
|
||||
MYSQL_USER=std_notes_user
|
||||
@@ -27,4 +30,6 @@ AUTH_JWT_SECRET=f95259c5e441f5a4646d76422cfb3df4c4488842901aa50b6c51b8be2e0040e9
|
||||
AUTH_SERVER_ENCRYPTION_SERVER_KEY=1087415dfde3093797f9a7ca93a49e7d7aa1861735eb0d32aae9c303b8c3d060
|
||||
VALET_TOKEN_SECRET=4b886819ebe1e908077c6cae96311b48a8416bd60cc91c03060e15bdf6b30d1f
|
||||
|
||||
SYNCING_SERVER_CONTENT_SIZE_TRANSFER_LIMIT=1000000
|
||||
SYNCING_SERVER_CONTENT_SIZE_TRANSFER_LIMIT=100000
|
||||
|
||||
HTTP_REQUEST_PAYLOAD_LIMIT_MEGABYTES=1
|
||||
|
||||
@@ -42,26 +42,26 @@ jobs:
|
||||
workspace_name: ${{ inputs.workspace_name }}
|
||||
secrets: inherit
|
||||
|
||||
deploy-web:
|
||||
if: ${{ inputs.deploy_web }}
|
||||
# deploy-web:
|
||||
# if: ${{ inputs.deploy_web }}
|
||||
|
||||
needs: publish
|
||||
# needs: publish
|
||||
|
||||
name: Deploy Web
|
||||
uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
with:
|
||||
service_name: ${{ inputs.service_name }}
|
||||
docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
secrets: inherit
|
||||
# name: Deploy Web
|
||||
# uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
# with:
|
||||
# service_name: ${{ inputs.service_name }}
|
||||
# docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
# secrets: inherit
|
||||
|
||||
deploy-worker:
|
||||
if: ${{ inputs.deploy_worker }}
|
||||
# deploy-worker:
|
||||
# if: ${{ inputs.deploy_worker }}
|
||||
|
||||
needs: publish
|
||||
# needs: publish
|
||||
|
||||
name: Deploy Worker
|
||||
uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
with:
|
||||
service_name: ${{ inputs.service_name }}-worker
|
||||
docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
secrets: inherit
|
||||
# name: Deploy Worker
|
||||
# uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
||||
# with:
|
||||
# service_name: ${{ inputs.service_name }}-worker
|
||||
# docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
||||
# secrets: inherit
|
||||
|
||||
@@ -46,7 +46,7 @@ jobs:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
@@ -70,7 +70,8 @@ jobs:
|
||||
echo "ACCESS_TOKEN_AGE=4" >> packages/home-server/.env
|
||||
echo "REFRESH_TOKEN_AGE=10" >> packages/home-server/.env
|
||||
echo "REVISIONS_FREQUENCY=2" >> packages/home-server/.env
|
||||
echo "CONTENT_SIZE_TRANSFER_LIMIT=1000000" >> packages/home-server/.env
|
||||
echo "CONTENT_SIZE_TRANSFER_LIMIT=100000" >> packages/home-server/.env
|
||||
echo "HTTP_REQUEST_PAYLOAD_LIMIT_MEGABYTES=1" >> packages/home-server/.env
|
||||
echo "DB_HOST=localhost" >> packages/home-server/.env
|
||||
echo "DB_PORT=3306" >> packages/home-server/.env
|
||||
echo "DB_DATABASE=standardnotes" >> packages/home-server/.env
|
||||
@@ -93,11 +94,11 @@ jobs:
|
||||
run: for i in {1..30}; do curl -s http://localhost:3123/healthcheck && break || sleep 1; done
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -a no-sandbox -a disable-setuid-sandbox -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
|
||||
- name: Archive failed run logs
|
||||
if: ${{ failure() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: home-server-failure-logs-${{ inputs.suite }}-${{ matrix.db_type }}-${{ matrix.cache_type }}
|
||||
retention-days: 5
|
||||
|
||||
@@ -17,6 +17,8 @@ jobs:
|
||||
name: (Self Hosting) E2E Test Suite
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
service_proxy_type: [http, grpc]
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
services:
|
||||
@@ -29,7 +31,7 @@ jobs:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
@@ -42,16 +44,24 @@ jobs:
|
||||
env:
|
||||
DB_TYPE: mysql
|
||||
CACHE_TYPE: redis
|
||||
SERVICE_PROXY_TYPE: ${{ matrix.service_proxy_type }}
|
||||
|
||||
- name: Output Server Logs to File
|
||||
run: docker compose -f docker-compose.ci.yml logs -f > logs/docker-compose.log 2>&1 &
|
||||
env:
|
||||
DB_TYPE: mysql
|
||||
CACHE_TYPE: redis
|
||||
SERVICE_PROXY_TYPE: ${{ matrix.service_proxy_type }}
|
||||
|
||||
- name: Wait for server to start
|
||||
run: docker/is-available.sh http://localhost:3123 $(pwd)/logs
|
||||
|
||||
- name: Run E2E Test Suite
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
run: yarn dlx mocha-headless-chrome --timeout 3600000 -a no-sandbox -a disable-setuid-sandbox -f http://localhost:9001/mocha/test.html?suite=${{ inputs.suite }}
|
||||
|
||||
- name: Archive failed run logs
|
||||
if: ${{ failure() }}
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: self-hosted-failure-logs-${{ inputs.suite }}
|
||||
retention-days: 5
|
||||
|
||||
@@ -13,14 +13,14 @@ jobs:
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
@@ -41,14 +41,14 @@ jobs:
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
@@ -73,14 +73,14 @@ jobs:
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
key: ${{ runner.os }}-build-${{ github.sha }}
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
@@ -4,6 +4,9 @@ on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
|
||||
permissions:
|
||||
id-token: write
|
||||
|
||||
jobs:
|
||||
build:
|
||||
if: contains(github.event.head_commit.message, 'chore(release)') == false
|
||||
@@ -13,7 +16,7 @@ jobs:
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
@@ -41,7 +44,7 @@ jobs:
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
@@ -73,7 +76,7 @@ jobs:
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
@@ -131,7 +134,7 @@ jobs:
|
||||
|
||||
- name: Cache build
|
||||
id: cache-build
|
||||
uses: actions/cache@v3
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
packages/**/dist
|
||||
@@ -151,7 +154,7 @@ jobs:
|
||||
git_commit_gpgsign: true
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
registry-url: 'https://registry.npmjs.org'
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
Generated
+55
-20
@@ -1,9 +1,9 @@
|
||||
import fs from 'fs';
|
||||
import { URL as URL$1, fileURLToPath, pathToFileURL } from 'url';
|
||||
import path from 'path';
|
||||
import moduleExports, { Module } from 'module';
|
||||
import { createHash } from 'crypto';
|
||||
import { EOL } from 'os';
|
||||
import moduleExports, { isBuiltin } from 'module';
|
||||
import assert from 'assert';
|
||||
|
||||
const SAFE_TIME = 456789e3;
|
||||
@@ -16,14 +16,16 @@ const PortablePath = {
|
||||
const npath = Object.create(path);
|
||||
const ppath = Object.create(path.posix);
|
||||
npath.cwd = () => process.cwd();
|
||||
ppath.cwd = () => toPortablePath(process.cwd());
|
||||
ppath.resolve = (...segments) => {
|
||||
ppath.cwd = process.platform === `win32` ? () => toPortablePath(process.cwd()) : process.cwd;
|
||||
if (process.platform === `win32`) {
|
||||
ppath.resolve = (...segments) => {
|
||||
if (segments.length > 0 && ppath.isAbsolute(segments[0])) {
|
||||
return path.posix.resolve(...segments);
|
||||
} else {
|
||||
return path.posix.resolve(ppath.cwd(), ...segments);
|
||||
}
|
||||
};
|
||||
};
|
||||
}
|
||||
const contains = function(pathUtils, from, to) {
|
||||
from = pathUtils.normalize(from);
|
||||
to = pathUtils.normalize(to);
|
||||
@@ -37,17 +39,13 @@ const contains = function(pathUtils, from, to) {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
npath.fromPortablePath = fromPortablePath;
|
||||
npath.toPortablePath = toPortablePath;
|
||||
npath.contains = (from, to) => contains(npath, from, to);
|
||||
ppath.contains = (from, to) => contains(ppath, from, to);
|
||||
const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/;
|
||||
const UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/;
|
||||
const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/;
|
||||
const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/;
|
||||
function fromPortablePath(p) {
|
||||
if (process.platform !== `win32`)
|
||||
return p;
|
||||
function fromPortablePathWin32(p) {
|
||||
let portablePathMatch, uncPortablePathMatch;
|
||||
if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP))
|
||||
p = portablePathMatch[1];
|
||||
@@ -57,9 +55,7 @@ function fromPortablePath(p) {
|
||||
return p;
|
||||
return p.replace(/\//g, `\\`);
|
||||
}
|
||||
function toPortablePath(p) {
|
||||
if (process.platform !== `win32`)
|
||||
return p;
|
||||
function toPortablePathWin32(p) {
|
||||
p = p.replace(/\\/g, `/`);
|
||||
let windowsPathMatch, uncWindowsPathMatch;
|
||||
if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP))
|
||||
@@ -68,6 +64,10 @@ function toPortablePath(p) {
|
||||
p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`;
|
||||
return p;
|
||||
}
|
||||
const toPortablePath = process.platform === `win32` ? toPortablePathWin32 : (p) => p;
|
||||
const fromPortablePath = process.platform === `win32` ? fromPortablePathWin32 : (p) => p;
|
||||
npath.fromPortablePath = fromPortablePath;
|
||||
npath.toPortablePath = toPortablePath;
|
||||
function convertPath(targetPathUtils, sourcePath) {
|
||||
return targetPathUtils === npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath);
|
||||
}
|
||||
@@ -902,6 +902,12 @@ class ProxiedFS extends FakeFS {
|
||||
}
|
||||
}
|
||||
|
||||
function direntToPortable(dirent) {
|
||||
const portableDirent = dirent;
|
||||
if (typeof dirent.path === `string`)
|
||||
portableDirent.path = npath.toPortablePath(dirent.path);
|
||||
return portableDirent;
|
||||
}
|
||||
class NodeFS extends BasePortableFakeFS {
|
||||
constructor(realFs = fs) {
|
||||
super();
|
||||
@@ -1228,15 +1234,31 @@ class NodeFS extends BasePortableFakeFS {
|
||||
async readdirPromise(p, opts) {
|
||||
return await new Promise((resolve, reject) => {
|
||||
if (opts) {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject));
|
||||
if (opts.recursive && process.platform === `win32`) {
|
||||
if (opts.withFileTypes) {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(direntToPortable)), reject));
|
||||
} else {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback((value) => resolve(value), reject));
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback((results) => resolve(results.map(npath.toPortablePath)), reject));
|
||||
}
|
||||
} else {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject));
|
||||
}
|
||||
} else {
|
||||
this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject));
|
||||
}
|
||||
});
|
||||
}
|
||||
readdirSync(p, opts) {
|
||||
if (opts) {
|
||||
if (opts.recursive && process.platform === `win32`) {
|
||||
if (opts.withFileTypes) {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(direntToPortable);
|
||||
} else {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), opts).map(npath.toPortablePath);
|
||||
}
|
||||
} else {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p), opts);
|
||||
}
|
||||
} else {
|
||||
return this.realFs.readdirSync(npath.fromPortablePath(p));
|
||||
}
|
||||
@@ -1372,10 +1394,8 @@ class VirtualFS extends ProxiedFS {
|
||||
|
||||
const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10));
|
||||
const WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13;
|
||||
const HAS_LAZY_LOADED_TRANSLATORS = major > 19 || major === 19 && minor >= 3;
|
||||
const HAS_LAZY_LOADED_TRANSLATORS = major === 20 && minor < 6 || major === 19 && minor >= 3;
|
||||
|
||||
const builtinModules = new Set(Module.builtinModules || Object.keys(process.binding(`natives`)));
|
||||
const isBuiltinModule = (request) => request.startsWith(`node:`) || builtinModules.has(request);
|
||||
function readPackageScope(checkPath) {
|
||||
const rootSeparatorIndex = checkPath.indexOf(npath.sep);
|
||||
let separatorIndex;
|
||||
@@ -1963,7 +1983,7 @@ async function resolvePrivateRequest(specifier, issuer, context, nextResolve) {
|
||||
}
|
||||
async function resolve$1(originalSpecifier, context, nextResolve) {
|
||||
const { findPnpApi } = moduleExports;
|
||||
if (!findPnpApi || isBuiltinModule(originalSpecifier))
|
||||
if (!findPnpApi || isBuiltin(originalSpecifier))
|
||||
return nextResolve(originalSpecifier, context, nextResolve);
|
||||
let specifier = originalSpecifier;
|
||||
const url = tryParseURL(specifier, isRelativeRegexp.test(specifier) ? context.parentURL : void 0);
|
||||
@@ -2022,10 +2042,24 @@ async function resolve$1(originalSpecifier, context, nextResolve) {
|
||||
|
||||
if (!HAS_LAZY_LOADED_TRANSLATORS) {
|
||||
const binding = process.binding(`fs`);
|
||||
const originalfstat = binding.fstat;
|
||||
const originalReadFile = binding.readFileUtf8 || binding.readFileSync;
|
||||
if (originalReadFile) {
|
||||
binding[originalReadFile.name] = function(...args) {
|
||||
try {
|
||||
return fs.readFileSync(args[0], {
|
||||
encoding: `utf8`,
|
||||
flag: args[1]
|
||||
});
|
||||
} catch {
|
||||
}
|
||||
return originalReadFile.apply(this, args);
|
||||
};
|
||||
} else {
|
||||
const binding2 = process.binding(`fs`);
|
||||
const originalfstat = binding2.fstat;
|
||||
const ZIP_MASK = 4278190080;
|
||||
const ZIP_MAGIC = 704643072;
|
||||
binding.fstat = function(...args) {
|
||||
binding2.fstat = function(...args) {
|
||||
const [fd, useBigint, req] = args;
|
||||
if ((fd & ZIP_MASK) === ZIP_MAGIC && useBigint === false && req === void 0) {
|
||||
try {
|
||||
@@ -2047,6 +2081,7 @@ if (!HAS_LAZY_LOADED_TRANSLATORS) {
|
||||
}
|
||||
return originalfstat.apply(this, args);
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
const resolve = resolve$1;
|
||||
|
||||
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Vendored
BIN
Binary file not shown.
BIN
Binary file not shown.
Vendored
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user