@vercel/client 18.2.12 → 18.2.15

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.
@@ -120,6 +120,22 @@ async function getUserIgnore(cwd) {
120
120
  }
121
121
  return (0, import_ignore.default)().add(clearRelative(ignoreFile));
122
122
  }
123
+ const FILEPATHMAP_VERCELIGNORE_EXCEPTIONS = [
124
+ "node_modules",
125
+ ".next",
126
+ ".yarn/cache",
127
+ ".pnp*",
128
+ ".venv",
129
+ "venv",
130
+ "__pycache__",
131
+ "/target"
132
+ ];
133
+ const filePathMapVercelignoreExceptions = (0, import_ignore.default)().add(
134
+ FILEPATHMAP_VERCELIGNORE_EXCEPTIONS.join("\n")
135
+ );
136
+ function isFilePathMapIgnoreException(posixRel) {
137
+ return filePathMapVercelignoreExceptions.ignores(posixRel);
138
+ }
123
139
  async function buildFileTree(path, {
124
140
  isDirectory,
125
141
  prebuilt,
@@ -158,17 +174,24 @@ async function buildFileTree(path, {
158
174
  for (const v of Object.values(config.filePathMap)) {
159
175
  const absPath = (0, import_path.join)(path, v);
160
176
  const rel = (0, import_path.relative)(path, absPath);
177
+ const posixRel = rel.split(import_path.sep).join("/");
161
178
  if (rel.startsWith("..") || (0, import_path.isAbsolute)(rel)) {
162
179
  debug(
163
180
  `Ignoring "filePathMap" entry "${v}": resolves outside the deployment root`
164
181
  );
165
182
  continue;
166
183
  }
167
- if (userIg && userIg.ignores(rel)) {
168
- debug(
169
- `Ignoring "filePathMap" entry "${v}": matched by a rule in .vercelignore/.nowignore`
170
- );
171
- continue;
184
+ if (userIg && userIg.ignores(posixRel)) {
185
+ if (isFilePathMapIgnoreException(posixRel)) {
186
+ debug(
187
+ `Keeping "filePathMap" entry "${v}": matches a default-ignored dependency/output path`
188
+ );
189
+ } else {
190
+ debug(
191
+ `Ignoring "filePathMap" entry "${v}": matched by a rule in .vercelignore/.nowignore`
192
+ );
193
+ continue;
194
+ }
172
195
  }
173
196
  refs.add(absPath);
174
197
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vercel/client",
3
- "version": "18.2.12",
3
+ "version": "18.2.15",
4
4
  "main": "dist/index.js",
5
5
  "typings": "dist/index.d.ts",
6
6
  "homepage": "https://vercel.com",
@@ -37,9 +37,9 @@
37
37
  "querystring": "^0.2.0",
38
38
  "sleep-promise": "8.0.1",
39
39
  "tar-fs": "1.16.3",
40
+ "@vercel/build-utils": "14.3.0",
40
41
  "@vercel/error-utils": "2.2.1",
41
- "@vercel/routing-utils": "6.5.0",
42
- "@vercel/build-utils": "14.1.1"
42
+ "@vercel/routing-utils": "6.5.0"
43
43
  },
44
44
  "scripts": {
45
45
  "build": "node ../../utils/build.mjs",