re-enable next-dev-tests (#47087)

### What?

enables the next-dev-tests crate integration tests from trubopack

### Why?

to unblock the move PR we temporarily disabled the tests

### How?

Fix the new location and fix the expect dependency

Fixes WEB-708

---------

Co-authored-by: Justin Ridgewell <justin@ridgewell.name>
This commit is contained in:
Tobias Koppers 2023-03-14 16:05:19 +01:00 committed by GitHub
parent e6bca73d87
commit c27b546908
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
28 changed files with 363 additions and 96 deletions

View file

@ -12,7 +12,11 @@ RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 \
libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 \
libxdamage1 libxss1 libxtst6 libappindicator1 libnss3 libasound2 \
libatk1.0-0 libc6 libdrm-dev libgbm-dev ca-certificates fonts-liberation lsb-release xdg-utils wget
libatk1.0-0 libc6 libdrm-dev libgbm-dev ca-certificates fonts-liberation lsb-release xdg-utils wget \
# Chromium for running Turbopack benchmarks
chromium \
# Used for plotters graph visualizations in turbopack benchmarks
libfontconfig1-dev
# [Optional] Uncomment if you want to install an additional version of node using nvm
# ARG EXTRA_NODE_VERSION=10

View file

@ -816,6 +816,7 @@ jobs:
lint,
check-examples,
test-native,
test-native-integration,
checkPrecompiled,
testIntegration,
testUnit,
@ -1130,6 +1131,47 @@ jobs:
- run: cd packages/next-swc && cargo test --workspace --exclude next-dev-tests
if: ${{ steps.swc-change.outputs.SWC_CHANGE == 'yup' }}
test-native-integration:
name: Integration Test Native Code
runs-on: ubuntu-latest-16-core-oss
needs: build
env:
CARGO_PROFILE_RELEASE_LTO: false
steps:
- uses: actions/cache@v3
timeout-minutes: 5
id: restore-build
with:
path: ./*
key: ${{ github.sha }}-${{ github.run_number }}
- run: echo "SWC_CHANGE<<EOF" >> $GITHUB_OUTPUT; echo "$(node scripts/run-for-change.js --type next-swc --exec echo 'yup')" >> $GITHUB_OUTPUT; echo 'EOF' >> $GITHUB_OUTPUT
id: swc-change
- run: echo "${{ steps.swc-change.outputs.SWC_CHANGE }}"
- name: Install
if: ${{ steps.swc-change.outputs.SWC_CHANGE == 'yup' }}
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.RUST_TOOLCHAIN }}
profile: minimal
- name: Install nextest
uses: taiki-e/install-action@nextest
- name: Build tests
timeout-minutes: 60
run: cd packages/next-swc && cargo nextest run -p next-dev-tests --release --no-run
if: ${{ steps.swc-change.outputs.SWC_CHANGE == 'yup' }}
- name: Run tests
timeout-minutes: 20
run: cd packages/next-swc && cargo nextest run -p next-dev-tests --release --no-fail-fast
if: ${{ steps.swc-change.outputs.SWC_CHANGE == 'yup' }}
test-wasm:
name: Test the wasm build
runs-on: ubuntu-latest

View file

@ -1,5 +1,6 @@
[env]
CARGO_WORKSPACE_DIR = { value = "", relative = true }
PNPM_WORKSPACE_DIR = { value = "../../", relative = true }
[build]

View file

@ -0,0 +1,9 @@
[[profile.default.overrides]]
filter = "package(next-dev-tests)"
# Default is 100ms. Extending this addresses false positives in the
# next-dev integration tests.
leak-timeout = "500ms"
retries = 2
slow-timeout = "60s"
threads-required = 2
failure-output = "immediate-final"

View file

@ -3183,6 +3183,7 @@ dependencies = [
"anyhow",
"chromiumoxide",
"console-subscriber",
"dunce",
"futures",
"httpmock",
"lazy_static",

View file

@ -24,6 +24,7 @@ anyhow = { workspace = true }
chromiumoxide = { workspace = true, features = [
"tokio-runtime",
], default-features = false }
dunce = { workspace = true }
futures = { workspace = true }
httpmock = { workspace = true, features = ["standalone"] }
lazy_static = { workspace = true }

View file

@ -4,7 +4,7 @@
"version": "0.0.1",
"main": "./harness.ts",
"dependencies": {
"expect": "27.5.1",
"expect": "24.5.0",
"jest-circus": "27.5.1",
"jest-circus-browser": "^1.0.7"
}

View file

@ -2,6 +2,8 @@
#![cfg(test)]
extern crate test_generator;
use dunce::canonicalize;
use regex::{Captures, Regex, Replacer};
use std::{
env,
fmt::Write,
@ -32,19 +34,22 @@ use serde::Deserialize;
use test_generator::test_resources;
use tokio::{
net::TcpSocket,
sync::mpsc::{channel, Sender},
sync::mpsc::{unbounded_channel, UnboundedSender},
task::JoinSet,
};
use tungstenite::{error::ProtocolError::ResetWithoutClosingHandshake, Error::Protocol};
use turbo_tasks::{
debug::{ValueDebug, ValueDebugStringReadRef},
primitives::BoolVc,
primitives::{BoolVc, StringVc},
NothingVc, RawVc, ReadRef, State, TransientInstance, TransientValue, TurboTasks,
};
use turbo_tasks_fs::{DiskFileSystemVc, FileSystem};
use turbo_tasks_fs::{DiskFileSystemVc, FileSystem, FileSystemPathVc};
use turbo_tasks_memory::MemoryBackend;
use turbo_tasks_testing::retry::retry_async;
use turbopack_core::issue::{CapturedIssues, IssueReporter, IssueReporterVc, PlainIssueReadRef};
use turbopack_core::issue::{
CapturedIssues, Issue, IssueReporter, IssueReporterVc, IssueSeverityVc, IssueVc, IssuesVc,
OptionIssueSourceVc, PlainIssueReadRef,
};
use turbopack_test_utils::snapshot::snapshot_issues;
fn register() {
@ -157,6 +162,7 @@ fn test_skipped_fails(resource: &str) {
async fn run_test(resource: &str) -> JestRunResult {
register();
let path = Path::new(resource)
// test_resources matches and returns relative paths from the workspace root,
// but pwd in cargo tests is the crate under test.
@ -171,20 +177,21 @@ async fn run_test(resource: &str) -> JestRunResult {
);
let package_root = PathBuf::from(env!("CARGO_MANIFEST_DIR"));
let workspace_root = package_root
let cargo_workspace_root = package_root
.parent()
.unwrap()
.parent()
.unwrap()
.to_path_buf();
let test_dir = workspace_root.join(resource);
let test_dir = cargo_workspace_root.join(resource);
let workspace_root = canonicalize(PathBuf::from(env!("PNPM_WORKSPACE_DIR"))).unwrap();
let project_dir = test_dir.join("input");
let requested_addr = get_free_local_addr().unwrap();
let mock_dir = path.join("__httpmock__");
let mock_server_future = get_mock_server_future(&mock_dir);
let (issue_tx, mut issue_rx) = channel(u16::MAX as usize);
let (issue_tx, mut issue_rx) = unbounded_channel();
let issue_tx = TransientInstance::new(issue_tx);
let tt = TurboTasks::new(MemoryBackend::default());
@ -241,7 +248,7 @@ async fn run_test(resource: &str) -> JestRunResult {
snapshot_issues(
issues.iter().cloned(),
issues_fs.root(),
&workspace_root.to_string_lossy(),
&cargo_workspace_root.to_string_lossy(),
)
.await?;
@ -469,14 +476,14 @@ async fn get_mock_server_future(mock_dir: &Path) -> Result<(), String> {
#[turbo_tasks::value(shared)]
struct TestIssueReporter {
#[turbo_tasks(trace_ignore, debug_ignore)]
pub issue_tx: State<Sender<(PlainIssueReadRef, ValueDebugStringReadRef)>>,
pub issue_tx: State<UnboundedSender<(PlainIssueReadRef, ValueDebugStringReadRef)>>,
}
#[turbo_tasks::value_impl]
impl TestIssueReporterVc {
#[turbo_tasks::function]
fn new(
issue_tx: TransientInstance<Sender<(PlainIssueReadRef, ValueDebugStringReadRef)>>,
issue_tx: TransientInstance<UnboundedSender<(PlainIssueReadRef, ValueDebugStringReadRef)>>,
) -> Self {
TestIssueReporter {
issue_tx: State::new((*issue_tx).clone()),
@ -495,10 +502,78 @@ impl IssueReporter for TestIssueReporter {
) -> Result<BoolVc> {
let issue_tx = self.issue_tx.get_untracked().clone();
for (issue, path) in captured_issues.iter_with_shortest_path() {
let plain = issue.into_plain(path);
issue_tx.send((plain.await?, plain.dbg().await?)).await?;
let plain = NormalizedIssue(issue).cell().as_issue().into_plain(path);
issue_tx.send((plain.await?, plain.dbg().await?))?;
}
Ok(BoolVc::cell(false))
}
}
struct StackTraceReplacer;
impl Replacer for StackTraceReplacer {
fn replace_append(&mut self, caps: &Captures<'_>, dst: &mut String) {
let code = caps.get(2).map_or("", |m| m.as_str());
if code.starts_with("node:") {
return;
}
let mut name = caps.get(1).map_or("", |m| m.as_str());
name = name.strip_prefix("Object.").unwrap_or(name);
write!(dst, "\n at {} ({})", name, code).unwrap();
}
}
#[turbo_tasks::value(transparent)]
struct NormalizedIssue(IssueVc);
#[turbo_tasks::value_impl]
impl Issue for NormalizedIssue {
#[turbo_tasks::function]
fn severity(&self) -> IssueSeverityVc {
self.0.severity()
}
#[turbo_tasks::function]
fn context(&self) -> FileSystemPathVc {
self.0.context()
}
#[turbo_tasks::function]
fn category(&self) -> StringVc {
self.0.category()
}
#[turbo_tasks::function]
fn title(&self) -> StringVc {
self.0.title()
}
#[turbo_tasks::function]
async fn description(&self) -> Result<StringVc> {
let str = self.0.description().await?;
let regex = Regex::new(r"\n at (.+) \((.+)\)").unwrap();
Ok(StringVc::cell(
regex.replace_all(&str, StackTraceReplacer).to_string(),
))
}
#[turbo_tasks::function]
fn detail(&self) -> StringVc {
self.0.detail()
}
#[turbo_tasks::function]
fn documentation_link(&self) -> StringVc {
self.0.documentation_link()
}
#[turbo_tasks::function]
fn source(&self) -> OptionIssueSourceVc {
self.0.source()
}
#[turbo_tasks::function]
fn sub_issues(&self) -> IssuesVc {
self.0.sub_issues()
}
}

View file

@ -1,6 +1,6 @@
PlainIssue {
severity: Warning,
context: "[project]/node_modules/.pnpm/postcss@8.4.20/node_modules/postcss/lib/previous-map.js",
context: "[project]/node_modules/.pnpm/postcss@8.4.14/node_modules/postcss/lib/previous-map.js",
category: "parse",
title: "lint TP1004 fs.existsSync(???*0*) is very dynamic",
description: "- *0* arguments[0]\n ⚠\u{fe0f} function calls are not analysed yet",
@ -9,7 +9,7 @@ PlainIssue {
source: Some(
PlainIssueSource {
asset: PlainAsset {
ident: "[project]/node_modules/.pnpm/postcss@8.4.20/node_modules/postcss/lib/previous-map.js",
ident: "[project]/node_modules/.pnpm/postcss@8.4.14/node_modules/postcss/lib/previous-map.js",
},
start: SourcePos {
line: 87,
@ -26,13 +26,13 @@ PlainIssue {
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/pages/index.jsx",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/pages/index.jsx",
),
description: "Next.js pages directory",
},
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/styles/globals.css",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/styles/globals.css",
),
description: "PostCSS processing",
},

View file

@ -1,6 +1,6 @@
PlainIssue {
severity: Warning,
context: "[project]/node_modules/.pnpm/postcss@8.4.20/node_modules/postcss/lib/previous-map.js",
context: "[project]/node_modules/.pnpm/postcss@8.4.14/node_modules/postcss/lib/previous-map.js",
category: "parse",
title: "lint TP1004 fs.readFileSync(???*0*, \"utf-8\") is very dynamic",
description: "- *0* arguments[0]\n ⚠\u{fe0f} function calls are not analysed yet",
@ -9,7 +9,7 @@ PlainIssue {
source: Some(
PlainIssueSource {
asset: PlainAsset {
ident: "[project]/node_modules/.pnpm/postcss@8.4.20/node_modules/postcss/lib/previous-map.js",
ident: "[project]/node_modules/.pnpm/postcss@8.4.14/node_modules/postcss/lib/previous-map.js",
},
start: SourcePos {
line: 89,
@ -26,13 +26,13 @@ PlainIssue {
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/pages/index.jsx",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/pages/index.jsx",
),
description: "Next.js pages directory",
},
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/styles/globals.css",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/styles/globals.css",
),
description: "PostCSS processing",
},

View file

@ -1,6 +1,6 @@
PlainIssue {
severity: Warning,
context: "[project]/node_modules/.pnpm/postcss@8.4.20/node_modules/postcss/lib/input.js",
context: "[project]/node_modules/.pnpm/postcss@8.4.14/node_modules/postcss/lib/input.js",
category: "parse",
title: "lint TP1006 path.resolve(???*0*) is very dynamic",
description: "- *0* ???*1*[\"from\"]\n ⚠\u{fe0f} unknown object\n- *1* opts\n ⚠\u{fe0f} pattern without value",
@ -9,7 +9,7 @@ PlainIssue {
source: Some(
PlainIssueSource {
asset: PlainAsset {
ident: "[project]/node_modules/.pnpm/postcss@8.4.20/node_modules/postcss/lib/input.js",
ident: "[project]/node_modules/.pnpm/postcss@8.4.14/node_modules/postcss/lib/input.js",
},
start: SourcePos {
line: 43,
@ -26,13 +26,13 @@ PlainIssue {
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/pages/index.jsx",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/pages/index.jsx",
),
description: "Next.js pages directory",
},
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/styles/globals.css",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/tailwind/basic/input/styles/globals.css",
),
description: "PostCSS processing",
},

View file

@ -1,21 +0,0 @@
PlainIssue {
severity: Warning,
context: "[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Warning!\n at Object.module.exports (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/node_modules/emit-loader/index.js:2:20)\n at LOADER_EXECUTION (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4134)\n at runSyncOrAsync (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4145)\n at iterateNormalLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5782)\n at <unknown> (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5426)\n at readResource (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:55:17)\n at <unknown> (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:6160)\n at processResource (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)\n at iteratePitchingLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)\n at iteratePitchingLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4764)\n at <unknown> (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4896)\n at handleResult (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:1424)\n at loadLoader (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:963)\n at iteratePitchingLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4794)\n at runLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)\n at <unknown> (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:35:9)\n at <anonymous>\n at Module.transform (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:28:12)\n at <unknown> (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]__c3ef78._.js:13:212)\n at Module.run (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_ipc_evaluate.ts_f5e151._.js:172:45)\n at processTicksAndRejections (node:internal/process/task_queues:96:5)\n",
detail: "",
documentation_link: "",
source: None,
sub_issues: [],
processing_path: Some(
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
),
description: "Next.js pages directory",
},
],
),
}

View file

@ -0,0 +1,21 @@
PlainIssue {
severity: Error,
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Error!\n at module.exports (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/node_modules/emit-loader/index.js:4:18)\n at LOADER_EXECUTION (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4134)\n at runSyncOrAsync (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4145)\n at iterateNormalLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:5782)\n at <unknown> (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:5426)\n at readResource (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:55:17)\n at <unknown> (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:6160)\n at processResource (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)\n at iteratePitchingLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)\n at iteratePitchingLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4764)\n at <unknown> (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4896)\n at handleResult (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:1424)\n at loadLoader (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:963)\n at iteratePitchingLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4794)\n at runLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)\n at <unknown> (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:35:9)\n at <anonymous>\n at Module.transform (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:28:12)\n at <unknown> (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]__c3ef78._.js:13:212)\n at Module.run (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_ipc_evaluate.ts_f5e151._.js:172:45)\n",
detail: "",
documentation_link: "",
source: None,
sub_issues: [],
processing_path: Some(
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
),
description: "Next.js pages directory",
},
],
),
}

View file

@ -1,6 +1,6 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Error!\n",
@ -12,7 +12,7 @@ PlainIssue {
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
),
description: "Next.js pages directory",
},

View file

@ -0,0 +1,21 @@
PlainIssue {
severity: Warning,
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Warning!\n at module.exports (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/node_modules/emit-loader/index.js:2:20)\n at LOADER_EXECUTION (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4134)\n at runSyncOrAsync (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4145)\n at iterateNormalLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:5782)\n at <unknown> (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:5426)\n at readResource (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:55:17)\n at <unknown> (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:6160)\n at processResource (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)\n at iteratePitchingLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)\n at iteratePitchingLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4764)\n at <unknown> (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4896)\n at handleResult (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:1424)\n at loadLoader (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:963)\n at iteratePitchingLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:4794)\n at runLoaders (packages/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)\n at <unknown> (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:35:9)\n at <anonymous>\n at Module.transform (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:28:12)\n at <unknown> (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]__c3ef78._.js:13:212)\n at Module.run (packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_ipc_evaluate.ts_f5e151._.js:172:45)\n",
detail: "",
documentation_link: "",
source: None,
sub_issues: [],
processing_path: Some(
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
),
description: "Next.js pages directory",
},
],
),
}

View file

@ -1,6 +1,6 @@
PlainIssue {
severity: Warning,
context: "[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Warning!\n",
@ -12,7 +12,7 @@ PlainIssue {
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
"[project]/packages/next-swc/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
),
description: "Next.js pages directory",
},

View file

@ -1,21 +0,0 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Error!\n at Object.module.exports (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/node_modules/emit-loader/index.js:4:18)\n at LOADER_EXECUTION (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4134)\n at runSyncOrAsync (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4145)\n at iterateNormalLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5782)\n at <unknown> (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5426)\n at readResource (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:55:17)\n at <unknown> (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:6160)\n at processResource (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:5308)\n at iteratePitchingLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4667)\n at iteratePitchingLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4764)\n at <unknown> (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4896)\n at handleResult (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:1424)\n at loadLoader (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:963)\n at iteratePitchingLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:4794)\n at runLoaders (node_modules/.pnpm/next@13.2.4-canary.7_pjwopsidmaokadturxaafygjp4/node_modules/next/dist/compiled/loader-runner/LoaderRunner.js:1:8590)\n at <unknown> (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:35:9)\n at <anonymous>\n at Module.transform (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_transforms_webpack-loaders.ts_fa48d1._.js:28:12)\n at <unknown> (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]__c3ef78._.js:13:212)\n at Module.run (crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/.next/build/webpack_loaders/chunks/[turbopack-node]_ipc_evaluate.ts_f5e151._.js:172:45)\n at processTicksAndRejections (node:internal/process/task_queues:96:5)\n",
detail: "",
documentation_link: "",
source: None,
sub_issues: [],
processing_path: Some(
[
PlainIssueProcessingPathItem {
context: Some(
"[project]/crates/next-dev-tests/tests/integration/next/webpack-loaders/emitted-errors/input/pages/index.js",
),
description: "Next.js pages directory",
},
],
),
}

View file

@ -1,10 +1,10 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/turbopack/basic/comptime/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/turbopack/basic/comptime/input/index.js",
category: "resolve",
title: "Error resolving commonjs request",
description: "unable to resolve relative \"./not-existing-file\"",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./not-existing-file\"\nPath where resolving has started: [project]/crates/next-dev-tests/tests/integration/turbopack/basic/comptime/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./not-existing-file\"\nPath where resolving has started: [project]/packages/next-swc/crates/next-dev-tests/tests/integration/turbopack/basic/comptime/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
documentation_link: "",
source: None,
sub_issues: [],

View file

@ -1,10 +1,10 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js",
category: "resolve",
title: "Error resolving EcmaScript Modules request",
description: "unable to resolve relative \"./empty?import3-in-chunk2\"",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?import3-in-chunk2\"\nPath where resolving has started: [project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js\nType of request: EcmaScript Modules request\nImport map: No import map entry\n",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?import3-in-chunk2\"\nPath where resolving has started: [project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js\nType of request: EcmaScript Modules request\nImport map: No import map entry\n",
documentation_link: "",
source: None,
sub_issues: [],

View file

@ -1,10 +1,10 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js",
category: "resolve",
title: "Error resolving EcmaScript Modules request",
description: "unable to resolve relative \"./empty?import1-in-chunk1\"",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?import1-in-chunk1\"\nPath where resolving has started: [project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js\nType of request: EcmaScript Modules request\nImport map: No import map entry\n",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?import1-in-chunk1\"\nPath where resolving has started: [project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js\nType of request: EcmaScript Modules request\nImport map: No import map entry\n",
documentation_link: "",
source: None,
sub_issues: [],

View file

@ -1,10 +1,10 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js",
category: "resolve",
title: "Error resolving EcmaScript Modules request",
description: "unable to resolve relative \"./empty?import2-in-chunk1\"",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?import2-in-chunk1\"\nPath where resolving has started: [project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js\nType of request: EcmaScript Modules request\nImport map: No import map entry\n",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?import2-in-chunk1\"\nPath where resolving has started: [project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/named-chunks/input/index.js\nType of request: EcmaScript Modules request\nImport map: No import map entry\n",
documentation_link: "",
source: None,
sub_issues: [],

View file

@ -1,10 +1,10 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/parsing/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/parsing/input/index.js",
category: "resolve",
title: "Error resolving commonjs request",
description: "unable to resolve relative \"./empty?require.ensure:test\"",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?require.ensure:test\"\nPath where resolving has started: [project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/parsing/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: relative \"./empty?require.ensure:test\"\nPath where resolving has started: [project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/parsing/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
documentation_link: "",
source: None,
sub_issues: [],

View file

@ -1,10 +1,10 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js",
category: "resolve",
title: "Error resolving commonjs request",
description: "unable to resolve dynamic",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: dynamic\nPath where resolving has started: [project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: dynamic\nPath where resolving has started: [project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
documentation_link: "",
source: None,
sub_issues: [],

View file

@ -1,6 +1,6 @@
PlainIssue {
severity: Warning,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js",
category: "parse",
title: "lint TP1002 require([\"./b\"]) is very dynamic",
description: "",
@ -9,7 +9,7 @@ PlainIssue {
source: Some(
PlainIssueSource {
asset: PlainAsset {
ident: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js",
ident: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js",
},
start: SourcePos {
line: 13,

View file

@ -1,10 +1,10 @@
PlainIssue {
severity: Error,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js",
category: "resolve",
title: "Error resolving commonjs request",
description: "unable to resolve dynamic",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: dynamic\nPath where resolving has started: [project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies-context/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
detail: "It was not possible to find the requested file.\nParsed request as written in source code: dynamic\nPath where resolving has started: [project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js\nType of request: commonjs request\nImport map: No import map entry\n",
documentation_link: "",
source: None,
sub_issues: [],

View file

@ -1,6 +1,6 @@
PlainIssue {
severity: Warning,
context: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js",
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js",
category: "parse",
title: "lint TP1002 require([\"./c\"]) is very dynamic",
description: "",
@ -9,7 +9,7 @@ PlainIssue {
source: Some(
PlainIssueSource {
asset: PlainAsset {
ident: "[project]/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js",
ident: "[project]/packages/next-swc/crates/next-dev-tests/tests/integration/webpack/chunks/__skipped__/weak-dependencies/input/index.js",
},
start: SourcePos {
line: 5,

View file

@ -2,14 +2,14 @@
"name": "next-dev-tests",
"private": true,
"devDependencies": {
"@babel/preset-typescript": "7.18.6",
"@babel/core": "7.18.0",
"@babel/preset-typescript": "7.18.6",
"@turbo/pack-test-harness": "*",
"autoprefixer": "10.4.4",
"postcss": "8.4.14",
"babel-loader": "9.1.2",
"loader-runner": "4.3.0",
"next": "*",
"postcss": "8.4.14",
"react-test-renderer": "18.2.0",
"tailwindcss": "1.1.3"
}

View file

@ -1020,11 +1020,11 @@ importers:
packages/next-swc/crates/next-dev-tests/test-harness:
specifiers:
expect: 27.5.1
expect: 24.5.0
jest-circus: 27.5.1
jest-circus-browser: ^1.0.7
dependencies:
expect: 27.5.1
expect: 24.5.0
jest-circus: 27.5.1
jest-circus-browser: 1.0.7
@ -4881,6 +4881,15 @@ packages:
resolution: {integrity: sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==}
engines: {node: '>=8'}
/@jest/console/24.9.0:
resolution: {integrity: sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==}
engines: {node: '>= 6'}
dependencies:
'@jest/source-map': 24.9.0
chalk: 2.4.2
slash: 2.0.0
dev: false
/@jest/console/27.0.6:
resolution: {integrity: sha512-fMlIBocSHPZ3JxgWiDNW/KPj6s+YRd0hicb33IrmelCcjXo/pXPwvuiKFmZz+XuqI/1u7nbUK10zSsWL/1aegg==}
engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
@ -5044,6 +5053,15 @@ packages:
'@sinclair/typebox': 0.24.20
dev: true
/@jest/source-map/24.9.0:
resolution: {integrity: sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==}
engines: {node: '>= 6'}
dependencies:
callsites: 3.1.0
graceful-fs: 4.2.10
source-map: 0.6.1
dev: false
/@jest/source-map/27.5.1:
resolution: {integrity: sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==}
engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
@ -5052,6 +5070,15 @@ packages:
graceful-fs: 4.2.10
source-map: 0.6.1
/@jest/test-result/24.9.0:
resolution: {integrity: sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==}
engines: {node: '>= 6'}
dependencies:
'@jest/console': 24.9.0
'@jest/types': 24.9.0
'@types/istanbul-lib-coverage': 2.0.3
dev: false
/@jest/test-result/27.0.6:
resolution: {integrity: sha512-ja/pBOMTufjX4JLEauLxE3LQBPaI2YjGFtXexRAjt1I/MbfNlMx0sytSX3tn5hSLzQsR3Qy2rd0hc1BWojtj9w==}
engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
@ -5128,6 +5155,15 @@ packages:
transitivePeerDependencies:
- supports-color
/@jest/types/24.9.0:
resolution: {integrity: sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==}
engines: {node: '>= 6'}
dependencies:
'@types/istanbul-lib-coverage': 2.0.3
'@types/istanbul-reports': 1.1.2
'@types/yargs': 13.0.12
dev: false
/@jest/types/26.6.2:
resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==}
engines: {node: '>= 10.14.2'}
@ -7074,6 +7110,13 @@ packages:
dependencies:
'@types/istanbul-lib-coverage': 2.0.3
/@types/istanbul-reports/1.1.2:
resolution: {integrity: sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==}
dependencies:
'@types/istanbul-lib-coverage': 2.0.3
'@types/istanbul-lib-report': 1.1.1
dev: false
/@types/istanbul-reports/3.0.0:
resolution: {integrity: sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==}
dependencies:
@ -7360,6 +7403,10 @@ packages:
resolution: {integrity: sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==}
dev: true
/@types/stack-utils/1.0.1:
resolution: {integrity: sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==}
dev: false
/@types/stack-utils/2.0.0:
resolution: {integrity: sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==}
@ -7420,6 +7467,12 @@ packages:
/@types/yargs-parser/13.1.0:
resolution: {integrity: sha512-gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg==}
/@types/yargs/13.0.12:
resolution: {integrity: sha512-qCxJE1qgz2y0hA4pIxjBR+PelCH0U5CK1XJXFwCNqfmliatKp47UCXXE9Dyk1OXBDLvsCF57TqQEJaeLfDYEOQ==}
dependencies:
'@types/yargs-parser': 13.1.0
dev: false
/@types/yargs/15.0.14:
resolution: {integrity: sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==}
dependencies:
@ -11089,6 +11142,11 @@ packages:
streamsearch: 0.1.2
dev: true
/diff-sequences/24.9.0:
resolution: {integrity: sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew==}
engines: {node: '>= 6'}
dev: false
/diff-sequences/26.6.2:
resolution: {integrity: sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==}
engines: {node: '>= 10.14.2'}
@ -12340,6 +12398,20 @@ packages:
resolution: {integrity: sha512-ed3+tr5ujbIYXZ8Pl/VgIphwJQ0q5tBLGGdn7Zvwt1WyPBRX83xjT5pT77P/GkuQbctx0K2ZNSSan7eruJqTCQ==}
dev: true
/expect/24.5.0:
resolution: {integrity: sha512-p2Gmc0CLxOgkyA93ySWmHFYHUPFIHG6XZ06l7WArWAsrqYVaVEkOU5NtT5i68KUyGKbkQgDCkiT65bWmdoL6Bw==}
engines: {node: '>= 6'}
dependencies:
'@jest/types': 24.9.0
ansi-styles: 3.2.1
jest-get-type: 24.9.0
jest-matcher-utils: 24.9.0
jest-message-util: 24.9.0
jest-regex-util: 24.9.0
transitivePeerDependencies:
- supports-color
dev: false
/expect/26.6.2:
resolution: {integrity: sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==}
engines: {node: '>= 10.14.2'}
@ -15176,6 +15248,16 @@ packages:
- utf-8-validate
dev: true
/jest-diff/24.9.0:
resolution: {integrity: sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==}
engines: {node: '>= 6'}
dependencies:
chalk: 2.4.2
diff-sequences: 24.9.0
jest-get-type: 24.9.0
pretty-format: 24.9.0
dev: false
/jest-diff/26.6.2:
resolution: {integrity: sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==}
engines: {node: '>= 10.14.2'}
@ -15262,6 +15344,11 @@ packages:
jest-matcher-utils: 27.5.1
dev: true
/jest-get-type/24.9.0:
resolution: {integrity: sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==}
engines: {node: '>= 6'}
dev: false
/jest-get-type/26.3.0:
resolution: {integrity: sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==}
engines: {node: '>= 10.14.2'}
@ -15349,6 +15436,16 @@ packages:
pretty-format: 27.5.1
dev: true
/jest-matcher-utils/24.9.0:
resolution: {integrity: sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA==}
engines: {node: '>= 6'}
dependencies:
chalk: 2.4.2
jest-diff: 24.9.0
jest-get-type: 24.9.0
pretty-format: 24.9.0
dev: false
/jest-matcher-utils/26.6.2:
resolution: {integrity: sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==}
engines: {node: '>= 10.14.2'}
@ -15368,6 +15465,22 @@ packages:
jest-get-type: 27.5.1
pretty-format: 27.5.1
/jest-message-util/24.9.0:
resolution: {integrity: sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==}
engines: {node: '>= 6'}
dependencies:
'@babel/code-frame': 7.18.6
'@jest/test-result': 24.9.0
'@jest/types': 24.9.0
'@types/stack-utils': 1.0.1
chalk: 2.4.2
micromatch: 3.1.10
slash: 2.0.0
stack-utils: 1.0.5
transitivePeerDependencies:
- supports-color
dev: false
/jest-message-util/26.6.2:
resolution: {integrity: sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==}
engines: {node: '>= 10.14.2'}
@ -15450,6 +15563,11 @@ packages:
dependencies:
jest-resolve: 27.5.1
/jest-regex-util/24.9.0:
resolution: {integrity: sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==}
engines: {node: '>= 6'}
dev: false
/jest-regex-util/26.0.0:
resolution: {integrity: sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==}
engines: {node: '>= 10.14.2'}
@ -20406,6 +20524,16 @@ packages:
engines: {node: '>=6'}
dev: true
/pretty-format/24.9.0:
resolution: {integrity: sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==}
engines: {node: '>= 6'}
dependencies:
'@jest/types': 24.9.0
ansi-regex: 4.1.0
ansi-styles: 3.2.1
react-is: 16.13.1
dev: false
/pretty-format/26.6.2:
resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==}
engines: {node: '>= 10'}
@ -22545,9 +22673,15 @@ packages:
/stable/0.1.8:
resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==}
deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility'
dev: true
/stack-utils/1.0.5:
resolution: {integrity: sha512-KZiTzuV3CnSnSvgMRrARVCj+Ht7rMbauGDK0LdVFRGyenwdylpajAp4Q0i6SX8rEmbTpMMf6ryq2gb8pPq2WgQ==}
engines: {node: '>=8'}
dependencies:
escape-string-regexp: 2.0.0
dev: false
/stack-utils/2.0.5:
resolution: {integrity: sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==}
engines: {node: '>=10'}