view-ignored 0.6.0 → 0.7.1

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.
Files changed (47) hide show
  1. package/out/browser_scan.d.ts +1 -1
  2. package/out/browser_scan.js +14 -9
  3. package/out/browser_stream.d.ts +1 -1
  4. package/out/browser_stream.js +14 -9
  5. package/out/patterns/extractor.d.ts +16 -10
  6. package/out/patterns/gitignore.d.ts +1 -1
  7. package/out/patterns/gitignore.js +1 -1
  8. package/out/patterns/ignores.d.ts +30 -1
  9. package/out/patterns/jsrjson.d.ts +2 -2
  10. package/out/patterns/jsrjson.js +2 -2
  11. package/out/patterns/matcherContext.d.ts +8 -8
  12. package/out/patterns/matcherContextPatch.d.ts +2 -2
  13. package/out/patterns/matcherContextPatch.js +16 -11
  14. package/out/patterns/matcherStream.d.ts +9 -9
  15. package/out/patterns/matcherStream.js +1 -1
  16. package/out/patterns/packagejson.d.ts +1 -1
  17. package/out/patterns/packagejson.js +1 -1
  18. package/out/patterns/pattern.d.ts +6 -6
  19. package/out/patterns/pattern.js +2 -2
  20. package/out/patterns/patternMatcher.d.ts +3 -3
  21. package/out/patterns/resolveSources.d.ts +4 -4
  22. package/out/patterns/resolveSources.js +16 -18
  23. package/out/patterns/signedPattern.d.ts +21 -12
  24. package/out/patterns/signedPattern.js +60 -25
  25. package/out/patterns/source.d.ts +7 -7
  26. package/out/patterns/source.js +1 -1
  27. package/out/patterns/stringCompile.d.ts +1 -1
  28. package/out/patterns/stringCompile.js +1 -1
  29. package/out/scan.d.ts +1 -1
  30. package/out/scan.js +1 -1
  31. package/out/stream.d.ts +1 -1
  32. package/out/stream.js +1 -1
  33. package/out/targets/git.d.ts +1 -1
  34. package/out/targets/git.js +1 -1
  35. package/out/targets/jsr.d.ts +1 -1
  36. package/out/targets/jsr.js +1 -1
  37. package/out/targets/npm.d.ts +1 -1
  38. package/out/targets/npm.js +1 -1
  39. package/out/targets/target.d.ts +3 -3
  40. package/out/targets/vsce.d.ts +1 -1
  41. package/out/targets/vsce.js +1 -1
  42. package/out/targets/yarn.d.ts +1 -1
  43. package/out/targets/yarn.js +1 -1
  44. package/out/types.d.ts +11 -11
  45. package/out/walk.d.ts +1 -0
  46. package/out/walk.js +4 -7
  47. package/package.json +1 -1
@@ -1,5 +1,4 @@
1
1
  import { dirname, relative, resolve } from "node:path";
2
- import { normalizeCwd } from "../normalizeCwd.js";
3
2
  import { patternCompile } from "./pattern.js";
4
3
  /**
5
4
  * Compiles the {@link SignedPattern} (forced).
@@ -8,7 +7,7 @@ import { patternCompile } from "./pattern.js";
8
7
  *
9
8
  * @see {@link patternCompile}
10
9
  *
11
- * @since 0.0.6
10
+ * @since 0.6.0
12
11
  */
13
12
  export function signedPatternCompile(signedPattern) {
14
13
  signedPattern.compiled = {
@@ -20,10 +19,10 @@ export function signedPatternCompile(signedPattern) {
20
19
  /**
21
20
  * Populates the {@link MatcherContext.external} map with {@link Source} objects.
22
21
  *
23
- * @since 0.0.6
22
+ * @since 0.6.0
24
23
  */
25
24
  export async function resolveSources(options) {
26
- const { fs, ctx, cwd, target, root } = options;
25
+ const { fs, ctx, cwd, target, root, signal } = options;
27
26
  let dir = options.dir;
28
27
  if (ctx.external.has(dir)) {
29
28
  return;
@@ -34,6 +33,7 @@ export async function resolveSources(options) {
34
33
  dir = dirname(dir);
35
34
  // find source from an ancestor [dir < ... < cwd]
36
35
  while (true) {
36
+ signal?.throwIfAborted();
37
37
  source = ctx.external.get(dir);
38
38
  if (source !== undefined) {
39
39
  // if cache is found populate descendants [cwd > ... > dir]
@@ -57,6 +57,7 @@ export async function resolveSources(options) {
57
57
  {
58
58
  let c = dirname(cwd);
59
59
  while (true) {
60
+ signal?.throwIfAborted();
60
61
  preCwdSegments.push(c);
61
62
  if (c === "/" || c === root)
62
63
  break;
@@ -65,40 +66,37 @@ export async function resolveSources(options) {
65
66
  }
66
67
  preCwdSegments.reverse();
67
68
  }
68
- source = await findSourceForAbsoluteDirs(preCwdSegments, ctx, fs, target);
69
+ source = await findSourceForAbsoluteDirs(preCwdSegments, ctx, fs, target, signal);
69
70
  if (typeof source === "object") {
70
71
  for (const noSourceDir of noSourceDirList) {
72
+ signal?.throwIfAborted();
71
73
  ctx.external.set(noSourceDir, source);
72
74
  }
73
75
  }
74
- const rels = noSourceDirList.map((rel) => normalizeCwd(resolve(process.cwd(), relative(normalizeCwd(rel), normalizeCwd(cwd)))));
75
- source = await findSourceForAbsoluteDirs(rels, ctx, fs, target);
76
+ const rels = noSourceDirList.map((rel) => resolve(cwd, rel).replaceAll("\\", "/").replace(/\w:/, ""));
77
+ source = await findSourceForAbsoluteDirs(rels, ctx, fs, target, signal);
76
78
  if (source !== undefined) {
77
79
  for (const noSourceDir of noSourceDirList) {
80
+ signal?.throwIfAborted();
78
81
  ctx.external.set(noSourceDir, source);
79
82
  }
80
83
  }
81
84
  }
82
- async function findSourceForAbsoluteDirs(paths, ctx, fs, target) {
83
- let source;
85
+ async function findSourceForAbsoluteDirs(paths, ctx, fs, target, signal) {
84
86
  for (const parent of paths) {
85
87
  for (const extractor of target.extractors) {
88
+ signal?.throwIfAborted();
86
89
  const s = await tryExtractor(parent, fs, ctx, extractor);
87
90
  if (typeof s === "object" && s.error) {
88
91
  ctx.failed.push(s);
89
- continue;
92
+ return s;
90
93
  }
91
- source = s;
92
- if (source === "none") {
93
- continue;
94
+ if (typeof s === "object") {
95
+ return s;
94
96
  }
95
- break;
96
- }
97
- if (source !== undefined) {
98
- break;
99
97
  }
100
98
  }
101
- return source;
99
+ return "none";
102
100
  }
103
101
  async function tryExtractor(cwd, fs, ctx, extractor) {
104
102
  const abs = resolve(cwd, extractor.path);
@@ -10,7 +10,7 @@ import type { Source } from "./source.js";
10
10
  * @see {@link signedPatternCompile} compiles the signed pattern.
11
11
  * Use this or an extractor's method to compile.
12
12
  *
13
- * @since 0.0.6
13
+ * @since 0.6.0
14
14
  */
15
15
  export type SignedPattern = {
16
16
  /**
@@ -18,7 +18,7 @@ export type SignedPattern = {
18
18
  *
19
19
  * @see {@link signedPatternIgnores} provides the ignoring algorithm.
20
20
  *
21
- * @since 0.0.6
21
+ * @since 0.6.0
22
22
  */
23
23
  include: Pattern;
24
24
  /**
@@ -26,7 +26,7 @@ export type SignedPattern = {
26
26
  *
27
27
  * @see {@link signedPatternIgnores} provides the ignoring algorithm.
28
28
  *
29
- * @since 0.0.6
29
+ * @since 0.6.0
30
30
  */
31
31
  exclude: Pattern;
32
32
  /**
@@ -34,7 +34,7 @@ export type SignedPattern = {
34
34
  *
35
35
  * @see {@link signedPatternIgnores} provides the ignoring algorithm.
36
36
  *
37
- * @since 0.0.6
37
+ * @since 0.6.0
38
38
  */
39
39
  compiled: null | {
40
40
  /**
@@ -42,7 +42,7 @@ export type SignedPattern = {
42
42
  *
43
43
  * @see {@link signedPatternIgnores} provides the ignoring algorithm.
44
44
  *
45
- * @since 0.0.6
45
+ * @since 0.6.0
46
46
  */
47
47
  include: PatternMinimatch[];
48
48
  /**
@@ -50,7 +50,7 @@ export type SignedPattern = {
50
50
  *
51
51
  * @see {@link signedPatternIgnores} provides the ignoring algorithm.
52
52
  *
53
- * @since 0.0.6
53
+ * @since 0.6.0
54
54
  */
55
55
  exclude: PatternMinimatch[];
56
56
  };
@@ -58,10 +58,19 @@ export type SignedPattern = {
58
58
  /**
59
59
  * @see {@link signedPatternIgnores}
60
60
  *
61
- * @since 0.0.6
61
+ * @since 0.6.0
62
62
  */
63
63
  export type SignedPatternMatch = {
64
- kind: "none" | "no-match" | "invalid-internal-pattern" | "missing-source" | "broken-source" | "invalid-pattern";
64
+ kind: "none" | "missing-source";
65
+ ignored: boolean;
66
+ } | {
67
+ kind: "no-match" | "broken-source" | "invalid-pattern";
68
+ ignored: boolean;
69
+ source: Source;
70
+ } | {
71
+ kind: "invalid-internal-pattern";
72
+ pattern: string;
73
+ error: Error;
65
74
  ignored: boolean;
66
75
  } | {
67
76
  kind: "internal";
@@ -76,7 +85,7 @@ export type SignedPatternMatch = {
76
85
  /**
77
86
  * @see {@link signedPatternIgnores}
78
87
  *
79
- * @since 0.0.6
88
+ * @since 0.6.0
80
89
  */
81
90
  export interface SignedPatternIgnoresOptions extends PatternFinderOptions {
82
91
  /**
@@ -86,13 +95,13 @@ export interface SignedPatternIgnoresOptions extends PatternFinderOptions {
86
95
  * "dir/subdir"
87
96
  * "dir/subdir/index.js"
88
97
  *
89
- * @since 0.0.6
98
+ * @since 0.6.0
90
99
  */
91
100
  entry: string;
92
101
  /**
93
102
  * The internal pattern. Should be compiled.
94
103
  *
95
- * @since 0.0.6
104
+ * @since 0.6.0
96
105
  */
97
106
  internal: SignedPattern;
98
107
  }
@@ -112,6 +121,6 @@ export interface SignedPatternIgnoresOptions extends PatternFinderOptions {
112
121
  * b. Check external include patterns. If matched, return false.
113
122
  * 4. If no patterns matched, return the inverted state.
114
123
  *
115
- * @since 0.0.6
124
+ * @since 0.6.0
116
125
  */
117
126
  export declare function signedPatternIgnores(options: SignedPatternIgnoresOptions): Promise<SignedPatternMatch>;
@@ -3,59 +3,95 @@ import { patternMinimatchTest } from "./pattern.js";
3
3
  import { resolveSources } from "./resolveSources.js";
4
4
  function patternRegExpTest(path, rs) {
5
5
  for (const r of rs) {
6
- if (patternMinimatchTest(r, path)) {
7
- return r.pattern;
6
+ try {
7
+ if (patternMinimatchTest(r, path)) {
8
+ return [r.pattern, undefined];
9
+ }
10
+ }
11
+ catch (err) {
12
+ return [r.pattern, err];
8
13
  }
9
14
  }
10
- return "";
15
+ return ["", undefined];
11
16
  }
12
17
  function signedPatternCompiledMatchInternal(options, path) {
13
18
  let patternMatch = "";
19
+ let err;
14
20
  const kind = "internal";
15
21
  const signedPattern = options.internal;
16
22
  const compiled = signedPattern.compiled; // no null
17
23
  try {
18
- patternMatch = patternRegExpTest(path, compiled.exclude);
24
+ ;
25
+ [patternMatch, err] = patternRegExpTest(path, compiled.exclude);
26
+ if (err) {
27
+ throw err;
28
+ }
19
29
  if (patternMatch) {
20
30
  // return true
21
31
  return { kind, pattern: patternMatch, ignored: true };
22
32
  }
23
- patternMatch = patternRegExpTest(path, compiled.include);
33
+ ;
34
+ [patternMatch, err] = patternRegExpTest(path, compiled.include);
35
+ if (err) {
36
+ throw err;
37
+ }
24
38
  if (patternMatch) {
25
39
  // return false
26
40
  return { kind, pattern: patternMatch, ignored: false };
27
41
  }
28
42
  }
29
- catch {
30
- return { kind: "invalid-internal-pattern", ignored: false };
43
+ catch (error) {
44
+ return {
45
+ kind: "invalid-internal-pattern",
46
+ pattern: patternMatch,
47
+ error: error,
48
+ ignored: false,
49
+ };
31
50
  }
32
- return { kind: "no-match", ignored: true };
51
+ return null;
33
52
  }
34
53
  function signedPatternCompiledMatchExternal(options, path, source) {
35
54
  let patternMatch = "";
55
+ let err;
36
56
  const kind = "external";
37
57
  const signedPattern = source.pattern;
38
58
  const compiled = signedPattern.compiled; // no null
39
59
  try {
40
60
  if (source.inverted) {
41
- patternMatch = patternRegExpTest(path, compiled.exclude);
61
+ ;
62
+ [patternMatch, err] = patternRegExpTest(path, compiled.exclude);
63
+ if (err) {
64
+ throw err;
65
+ }
42
66
  if (patternMatch) {
43
67
  // return true
44
68
  return { kind, source, pattern: patternMatch, ignored: true };
45
69
  }
46
- patternMatch = patternRegExpTest(path, compiled.include);
70
+ ;
71
+ [patternMatch, err] = patternRegExpTest(path, compiled.include);
72
+ if (err) {
73
+ throw err;
74
+ }
47
75
  if (patternMatch) {
48
76
  // return false
49
77
  return { kind, source, pattern: patternMatch, ignored: false };
50
78
  }
51
79
  }
52
80
  else {
53
- patternMatch = patternRegExpTest(path, compiled.include);
81
+ ;
82
+ [patternMatch, err] = patternRegExpTest(path, compiled.include);
83
+ if (err) {
84
+ throw err;
85
+ }
54
86
  if (patternMatch) {
55
87
  // return false
56
88
  return { kind, source, pattern: patternMatch, ignored: false };
57
89
  }
58
- patternMatch = patternRegExpTest(path, compiled.exclude);
90
+ ;
91
+ [patternMatch, err] = patternRegExpTest(path, compiled.exclude);
92
+ if (err) {
93
+ throw err;
94
+ }
59
95
  if (patternMatch) {
60
96
  // return true
61
97
  return { kind, source, pattern: patternMatch, ignored: true };
@@ -64,10 +100,10 @@ function signedPatternCompiledMatchExternal(options, path, source) {
64
100
  }
65
101
  catch (err) {
66
102
  source.error = err;
67
- options.ctx.failed.push(source);
68
- return { kind: "invalid-pattern", ignored: false };
103
+ options.ctx?.failed.push(source);
104
+ return { kind: "invalid-pattern", ignored: false, source };
69
105
  }
70
- return { kind: "no-match", ignored: source.inverted };
106
+ return { kind: "no-match", ignored: source.inverted, source };
71
107
  }
72
108
  /**
73
109
  * Checks whether a given entry should be ignored based on internal and external patterns.
@@ -85,26 +121,25 @@ function signedPatternCompiledMatchExternal(options, path, source) {
85
121
  * b. Check external include patterns. If matched, return false.
86
122
  * 4. If no patterns matched, return the inverted state.
87
123
  *
88
- * @since 0.0.6
124
+ * @since 0.6.0
89
125
  */
90
126
  export async function signedPatternIgnores(options) {
91
127
  const parent = dirname(options.entry);
92
- let source = options.ctx.external.get(parent);
128
+ let source = options.ctx?.external.get(parent);
93
129
  if (source === undefined) {
94
- const failedPrev = options.ctx.failed.length;
95
130
  await resolveSources({ ...options, dir: parent, root: options.root });
96
- if (failedPrev < options.ctx.failed.length) {
97
- return { kind: "broken-source", ignored: false };
98
- }
99
131
  source = options.ctx.external.get(parent);
100
132
  }
133
+ if (source === undefined || source === "none") {
134
+ return { kind: "missing-source", ignored: true };
135
+ }
136
+ if (typeof source === "object" && source.error) {
137
+ return { kind: "broken-source", ignored: true, source };
138
+ }
101
139
  let internalMatch = signedPatternCompiledMatchInternal(options, options.entry);
102
- if (internalMatch.kind !== "no-match") {
140
+ if (internalMatch !== null) {
103
141
  return internalMatch;
104
142
  }
105
- if (source === undefined || source === "none") {
106
- return { kind: "no-match", ignored: false };
107
- }
108
143
  const externalMatch = signedPatternCompiledMatchExternal(options, options.entry, source);
109
144
  return externalMatch;
110
145
  }
@@ -2,7 +2,7 @@ import type { SignedPattern } from "./signedPattern.js";
2
2
  /**
3
3
  * Represents a source of external patterns.
4
4
  *
5
- * @since 0.0.6
5
+ * @since 0.6.0
6
6
  */
7
7
  export type Source = {
8
8
  /**
@@ -12,19 +12,19 @@ export type Source = {
12
12
  * @see {@link PatternMatcher}
13
13
  * @see {@link signedPatternIgnores}
14
14
  *
15
- * @since 0.0.6
15
+ * @since 0.6.0
16
16
  */
17
17
  pattern: SignedPattern;
18
18
  /**
19
19
  * Name of the source file.
20
20
  *
21
- * @since 0.0.6
21
+ * @since 0.6.0
22
22
  */
23
23
  name: string;
24
24
  /**
25
25
  * Relative path to the source file.
26
26
  *
27
- * @since 0.0.6
27
+ * @since 0.6.0
28
28
  */
29
29
  path: string;
30
30
  /**
@@ -35,7 +35,7 @@ export type Source = {
35
35
  * @see {@link PatternMatcher}
36
36
  * @see {@link signedPatternIgnores}
37
37
  *
38
- * @since 0.0.6
38
+ * @since 0.6.0
39
39
  */
40
40
  inverted: boolean;
41
41
  /**
@@ -43,7 +43,7 @@ export type Source = {
43
43
  *
44
44
  * @see {@link ExtractorFn}
45
45
  *
46
- * @since 0.0.6
46
+ * @since 0.6.0
47
47
  */
48
48
  error?: Error;
49
49
  };
@@ -52,6 +52,6 @@ export type Source = {
52
52
  * Strips the leading '!' for include patterns,
53
53
  * and adds to exclude patterns otherwise.
54
54
  *
55
- * @since 0.0.6
55
+ * @since 0.6.0
56
56
  */
57
57
  export declare function sourcePushNegatable(source: Source, pattern: string): void;
@@ -3,7 +3,7 @@
3
3
  * Strips the leading '!' for include patterns,
4
4
  * and adds to exclude patterns otherwise.
5
5
  *
6
- * @since 0.0.6
6
+ * @since 0.6.0
7
7
  */
8
8
  export function sourcePushNegatable(source, pattern) {
9
9
  let exclude = source.pattern.exclude, include = source.pattern.include;
@@ -4,6 +4,6 @@ import type { PatternMinimatch, Pattern } from "./pattern.js";
4
4
  *
5
5
  * @see {@link patternCompile}
6
6
  *
7
- * @since 0.0.6
7
+ * @since 0.6.0
8
8
  */
9
9
  export declare function stringCompile(pattern: string, _?: number, array?: Pattern): PatternMinimatch;
@@ -4,7 +4,7 @@ import { makeRe } from "minimatch";
4
4
  *
5
5
  * @see {@link patternCompile}
6
6
  *
7
- * @since 0.0.6
7
+ * @since 0.6.0
8
8
  */
9
9
  export function stringCompile(pattern, _ = -1, array = []) {
10
10
  const original = pattern;
package/out/scan.d.ts CHANGED
@@ -12,6 +12,6 @@ export type * from "./types.js";
12
12
  * @param options Scan options.
13
13
  * @returns A promise that resolves to a {@link MatcherContext} containing the scan results.
14
14
  *
15
- * @since 0.0.6
15
+ * @since 0.6.0
16
16
  */
17
17
  export declare function scan(options: ScanOptions): Promise<MatcherContext>;
package/out/scan.js CHANGED
@@ -12,7 +12,7 @@ import { scan as browserScan } from "./browser_scan.js";
12
12
  * @param options Scan options.
13
13
  * @returns A promise that resolves to a {@link MatcherContext} containing the scan results.
14
14
  *
15
- * @since 0.0.6
15
+ * @since 0.6.0
16
16
  */
17
17
  export function scan(options) {
18
18
  const { cwd = process.cwd(), fs = nodefs } = options;
package/out/stream.d.ts CHANGED
@@ -4,6 +4,6 @@ export type * from "./types.js";
4
4
  /**
5
5
  * @see {@link scan}
6
6
  *
7
- * @since 0.0.6
7
+ * @since 0.6.0
8
8
  */
9
9
  export declare function scanStream(options: ScanOptions): MatcherStream;
package/out/stream.js CHANGED
@@ -4,7 +4,7 @@ import { scanStream as browserStream } from "./browser_stream.js";
4
4
  /**
5
5
  * @see {@link scan}
6
6
  *
7
- * @since 0.0.6
7
+ * @since 0.6.0
8
8
  */
9
9
  export function scanStream(options) {
10
10
  const { cwd = process.cwd(), fs = nodefs } = options;
@@ -1,5 +1,5 @@
1
1
  import type { Target } from "./target.js";
2
2
  /**
3
- * @since 0.0.6
3
+ * @since 0.6.0
4
4
  */
5
5
  export declare const Git: Target;
@@ -16,7 +16,7 @@ const internal = {
16
16
  };
17
17
  signedPatternCompile(internal);
18
18
  /**
19
- * @since 0.0.6
19
+ * @since 0.6.0
20
20
  */
21
21
  export const Git = {
22
22
  extractors,
@@ -1,5 +1,5 @@
1
1
  import type { Target } from "./target.js";
2
2
  /**
3
- * @since 0.0.6
3
+ * @since 0.6.0
4
4
  */
5
5
  export declare const JSR: Target;
@@ -24,7 +24,7 @@ const internal = {
24
24
  };
25
25
  signedPatternCompile(internal);
26
26
  /**
27
- * @since 0.0.6
27
+ * @since 0.6.0
28
28
  */
29
29
  export const JSR = {
30
30
  extractors,
@@ -1,5 +1,5 @@
1
1
  import type { Target } from "./target.js";
2
2
  /**
3
- * @since 0.0.6
3
+ * @since 0.6.0
4
4
  */
5
5
  export declare const NPM: Target;
@@ -38,7 +38,7 @@ const internal = {
38
38
  };
39
39
  signedPatternCompile(internal);
40
40
  /**
41
- * @since 0.0.6
41
+ * @since 0.6.0
42
42
  */
43
43
  export const NPM = {
44
44
  extractors,
@@ -3,14 +3,14 @@ import type { Ignores } from "../patterns/ignores.js";
3
3
  /**
4
4
  * Contains the matcher used for scanning.
5
5
  *
6
- * @since 0.0.6
6
+ * @since 0.6.0
7
7
  */
8
8
  export interface Target {
9
9
  /**
10
10
  * The set of extractors.
11
11
  * Required for context-patching APIs (ctx add/remove path).
12
12
  *
13
- * @since 0.0.6
13
+ * @since 0.6.0
14
14
  */
15
15
  extractors: Extractor[];
16
16
  /**
@@ -18,7 +18,7 @@ export interface Target {
18
18
  *
19
19
  * @see {@link Ignores}
20
20
  *
21
- * @since 0.0.6
21
+ * @since 0.6.0
22
22
  */
23
23
  ignores: Ignores;
24
24
  }
@@ -1,5 +1,5 @@
1
1
  import type { Target } from "./target.js";
2
2
  /**
3
- * @since 0.0.6
3
+ * @since 0.6.0
4
4
  */
5
5
  export declare const VSCE: Target;
@@ -20,7 +20,7 @@ const internal = {
20
20
  };
21
21
  signedPatternCompile(internal);
22
22
  /**
23
- * @since 0.0.6
23
+ * @since 0.6.0
24
24
  */
25
25
  export const VSCE = {
26
26
  extractors,
@@ -1,5 +1,5 @@
1
1
  import type { Target } from "./target.js";
2
2
  /**
3
- * @since 0.0.6
3
+ * @since 0.6.0
4
4
  */
5
5
  export declare const Yarn: Target;
@@ -44,7 +44,7 @@ const internal = {
44
44
  };
45
45
  signedPatternCompile(internal);
46
46
  /**
47
- * @since 0.0.6
47
+ * @since 0.6.0
48
48
  */
49
49
  export const Yarn = {
50
50
  extractors,