metascope 0.7.0 → 0.7.2

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 (80) hide show
  1. package/dist/bin/chunk-Bdh3yLIe.js +1 -0
  2. package/dist/bin/cli.js +308 -284
  3. package/dist/bin/dns-CUigd8AG.js +1 -0
  4. package/dist/bin/{jiti-D2Njwwqq.js → jiti-BTBDwj9g.js} +2 -2
  5. package/dist/bin/renovate-DxDKd5Ft.js +1 -0
  6. package/dist/bin/shared-CTlQdTfh.js +5 -0
  7. package/dist/lib/file-matching.js +20 -13
  8. package/dist/lib/log.d.ts +6 -4
  9. package/dist/lib/log.js +5 -3
  10. package/dist/lib/metadata-types.d.ts +33 -21
  11. package/dist/lib/metadata-types.js +8 -9
  12. package/dist/lib/metadata.js +7 -7
  13. package/dist/lib/package.js +1 -1
  14. package/dist/lib/parsers/gemspec-parser.js +16 -14
  15. package/dist/lib/parsers/go-mod-parser.js +13 -10
  16. package/dist/lib/parsers/makefile-config-parser.js +20 -17
  17. package/dist/lib/parsers/properties-parser.js +3 -3
  18. package/dist/lib/parsers/rfc822-header-parser.js +4 -4
  19. package/dist/lib/parsers/setup-py-parser.js +3 -4
  20. package/dist/lib/source.d.ts +1 -0
  21. package/dist/lib/source.js +5 -4
  22. package/dist/lib/sources/arduino-library-properties.d.ts +10 -10
  23. package/dist/lib/sources/arduino-library-properties.js +32 -15
  24. package/dist/lib/sources/cinder-cinderblock-xml.d.ts +11 -11
  25. package/dist/lib/sources/cinder-cinderblock-xml.js +21 -9
  26. package/dist/lib/sources/codemeta-json.d.ts +66 -66
  27. package/dist/lib/sources/codemeta-json.js +27 -23
  28. package/dist/lib/sources/git-stats.js +1 -1
  29. package/dist/lib/sources/github-actions.js +9 -2
  30. package/dist/lib/sources/github.js +1 -1
  31. package/dist/lib/sources/go-go-mod.d.ts +4 -4
  32. package/dist/lib/sources/go-goreleaser-yaml.d.ts +8 -8
  33. package/dist/lib/sources/go-goreleaser-yaml.js +5 -4
  34. package/dist/lib/sources/java-pom-xml.d.ts +12 -12
  35. package/dist/lib/sources/java-pom-xml.js +38 -19
  36. package/dist/lib/sources/metadata-file.d.ts +4 -4
  37. package/dist/lib/sources/metadata-file.js +15 -12
  38. package/dist/lib/sources/node-npm-registry.js +1 -1
  39. package/dist/lib/sources/openframeworks-addon-config-mk.d.ts +7 -7
  40. package/dist/lib/sources/openframeworks-addon-config-mk.js +7 -0
  41. package/dist/lib/sources/openframeworks-install-xml.d.ts +10 -10
  42. package/dist/lib/sources/openframeworks-install-xml.js +24 -14
  43. package/dist/lib/sources/processing-library-properties.d.ts +8 -8
  44. package/dist/lib/sources/processing-library-properties.js +25 -10
  45. package/dist/lib/sources/processing-sketch-properties.d.ts +16 -16
  46. package/dist/lib/sources/processing-sketch-properties.js +51 -7
  47. package/dist/lib/sources/publiccode-yaml.d.ts +23 -23
  48. package/dist/lib/sources/publiccode-yaml.js +37 -5
  49. package/dist/lib/sources/python-pkg-info.d.ts +18 -18
  50. package/dist/lib/sources/python-pkg-info.js +2 -2
  51. package/dist/lib/sources/python-setup-cfg.d.ts +14 -14
  52. package/dist/lib/sources/python-setup-cfg.js +2 -2
  53. package/dist/lib/sources/python-setup-py.d.ts +14 -14
  54. package/dist/lib/sources/readme-file.js +9 -2
  55. package/dist/lib/sources/ruby-gemspec.d.ts +22 -22
  56. package/dist/lib/sources/ruby-gemspec.js +1 -0
  57. package/dist/lib/sources/rust-cargo-toml.d.ts +14 -14
  58. package/dist/lib/sources/rust-cargo-toml.js +29 -10
  59. package/dist/lib/sources/xcode-info-plist.d.ts +12 -12
  60. package/dist/lib/sources/xcode-info-plist.js +48 -24
  61. package/dist/lib/sources/xcode-project-pbxproj.d.ts +8 -8
  62. package/dist/lib/sources/xcode-project-pbxproj.js +22 -12
  63. package/dist/lib/templates/codemeta-json.d.ts +4 -5
  64. package/dist/lib/templates/codemeta-json.js +4 -5
  65. package/dist/lib/templates/codemeta.js +30 -30
  66. package/dist/lib/templates/metadata.d.ts +2 -2
  67. package/dist/lib/templates/metadata.js +3 -3
  68. package/dist/lib/utilities/codemeta-helpers.d.ts +3 -2
  69. package/dist/lib/utilities/codemeta-helpers.js +14 -12
  70. package/dist/lib/utilities/fetch.js +2 -2
  71. package/dist/lib/utilities/formatting.js +4 -3
  72. package/dist/lib/utilities/github.js +3 -3
  73. package/dist/lib/utilities/license-identification.d.ts +3 -1
  74. package/dist/lib/utilities/license-identification.js +21 -25
  75. package/dist/lib/utilities/schema-primitives.js +16 -13
  76. package/dist/lib/utilities/template-helpers.js +3 -3
  77. package/package.json +14 -14
  78. package/readme.md +7 -3
  79. package/dist/.DS_Store +0 -0
  80. package/dist/bin/chunk-BjEoQXZ0.js +0 -1
@@ -13,34 +13,78 @@ const processingSketchPropertiesAuthorEntrySchema = z.object({
13
13
  url: z.string().optional()
14
14
  });
15
15
  const processingSketchPropertiesSchema = z.object({
16
+ /**
17
+ * Parsed author entries with optional URLs. _Unofficial: borrowed from
18
+ * library.properties_
19
+ */
16
20
  authors: z.array(processingSketchPropertiesAuthorEntrySchema),
21
+ /** Contributed component type. */
17
22
  component: nonEmptyString,
23
+ /** Direct download URL. _Unofficial: borrowed from library.properties_ */
18
24
  download: optionalUrl,
25
+ /** Primary .pde filename for the sketch. */
19
26
  main: nonEmptyString,
27
+ /** Android app label. From `manifest.label`. */
20
28
  manifestLabel: nonEmptyString,
29
+ /**
30
+ * Android screen orientation, e.g. "unspecified". From
31
+ * `manifest.orientation`.
32
+ */
21
33
  manifestOrientation: nonEmptyString,
34
+ /** Android package name. From `manifest.package`. */
22
35
  manifestPackage: nonEmptyString,
36
+ /** Android permission list. From `manifest.permissions`. */
23
37
  manifestPermissions: z.array(z.string()),
38
+ /** Android minimum SDK level. From `manifest.sdk.min`. */
24
39
  manifestSdkMin: z.number().optional(),
40
+ /** Android target SDK level. From `manifest.sdk.target`. */
25
41
  manifestSdkTarget: z.number().optional(),
42
+ /** Android version code integer. From `manifest.version.code`. */
26
43
  manifestVersionCode: z.number().optional(),
44
+ /** Android version name string. From `manifest.version.name`. */
27
45
  manifestVersionName: nonEmptyString,
46
+ /**
47
+ * Maximum Processing revision, or 0 for no upper constraint. _Unofficial:
48
+ * borrowed from library.properties_
49
+ */
28
50
  maxRevision: z.number(),
51
+ /**
52
+ * Minimum Processing revision, or 0 for no lower constraint. _Unofficial:
53
+ * borrowed from library.properties_
54
+ */
29
55
  minRevision: z.number(),
56
+ /** Mode display name, e.g. "Java", "REPL Mode". */
30
57
  mode: nonEmptyString,
58
+ /** Mode identifier, e.g. "processing.mode.java.JavaMode". From `mode.id`. */
31
59
  modeId: nonEmptyString,
60
+ /** Sketch name. _Unofficial: borrowed from library.properties_ */
32
61
  name: nonEmptyString,
62
+ /**
63
+ * Extended description paragraph. _Unofficial: borrowed from
64
+ * library.properties_
65
+ */
33
66
  paragraph: nonEmptyString,
67
+ /**
68
+ * Human-readable version string. _Unofficial: borrowed from
69
+ * library.properties_
70
+ */
34
71
  prettyVersion: nonEmptyString,
72
+ /** Raw key-value pairs. */
35
73
  raw: z.record(z.string(), z.string()),
74
+ /** One-sentence description. _Unofficial: borrowed from library.properties_ */
36
75
  sentence: nonEmptyString,
76
+ /** Templates string. */
37
77
  templates: nonEmptyString,
78
+ /** Project URL. _Unofficial: borrowed from library.properties_ */
38
79
  url: optionalUrl,
80
+ /** Integer release counter. _Unofficial: borrowed from library.properties_ */
39
81
  version: z.number(),
82
+ /** Zip file name for contributed content. */
40
83
  zipfilename: nonEmptyString
41
84
  });
42
85
  /**
43
- * Parse a Processing `sketch.properties` content string into a structured object.
86
+ * Parse a Processing `sketch.properties` content string into a structured
87
+ * object.
44
88
  */
45
89
  function parse(content) {
46
90
  const raw = parseProperties(content);
@@ -89,13 +133,13 @@ function parse(content) {
89
133
  }
90
134
  /** Return a trimmed string, or undefined if empty/whitespace-only. */
91
135
  function nonEmpty(value) {
92
- if (value === void 0) return void 0;
136
+ if (value === void 0) return;
93
137
  const trimmed = value.trim();
94
138
  return trimmed.length > 0 ? trimmed : void 0;
95
139
  }
96
140
  /**
97
- * Strip trailing inline comments from a value.
98
- * Matches the pattern ` # comment text` (space-hash-space).
141
+ * Strip trailing inline comments from a value. Matches the pattern ` # comment
142
+ * text` (space-hash-space).
99
143
  */
100
144
  function stripInlineComment(value) {
101
145
  const index = value.indexOf(" # ");
@@ -150,7 +194,7 @@ function parseAuthors(value) {
150
194
  return results;
151
195
  }
152
196
  /**
153
- * Split plain text on ` and `, `,`, `&` to extract author names.
197
+ * Split plain text on `and`, `,`, `&` to extract author names.
154
198
  */
155
199
  function addPlainAuthors(text, results) {
156
200
  const parts = text.split(AUTHOR_SEPARATOR_REGEX).map((s) => s.trim()).filter((s) => s.length > 0 && s.toLowerCase() !== "others");
@@ -160,8 +204,8 @@ function addPlainAuthors(text, results) {
160
204
  });
161
205
  }
162
206
  /**
163
- * Validate that a sketch.properties file is a Processing sketch.
164
- * Checks for at least one known Processing sketch key.
207
+ * Validate that a sketch.properties file is a Processing sketch. Checks for at
208
+ * least one known Processing sketch key.
165
209
  */
166
210
  function isProcessingSketchProperties(content) {
167
211
  const raw = parseProperties(content);
@@ -3,9 +3,9 @@ import { z } from "zod";
3
3
 
4
4
  //#region src/lib/sources/publiccode-yaml.d.ts
5
5
  declare const publiccodeSchema: z.ZodObject<{
6
- applicationSuite: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
7
- availableLanguages: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
8
- categories: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
6
+ applicationSuite: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
7
+ availableLanguages: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
8
+ categories: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
9
9
  contacts: z.ZodArray<z.ZodObject<{
10
10
  affiliation: z.ZodOptional<z.ZodString>;
11
11
  email: z.ZodOptional<z.ZodString>;
@@ -45,27 +45,27 @@ declare const publiccodeSchema: z.ZodObject<{
45
45
  longDescription: z.ZodOptional<z.ZodString>;
46
46
  shortDescription: z.ZodOptional<z.ZodString>;
47
47
  }, z.core.$strip>>;
48
- developmentStatus: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
49
- inputTypes: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
50
- isBasedOn: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
51
- landingUrl: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
52
- license: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
48
+ developmentStatus: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
49
+ inputTypes: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
50
+ isBasedOn: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
51
+ landingUrl: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
52
+ license: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
53
53
  localisationReady: z.ZodOptional<z.ZodBoolean>;
54
- logo: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
55
- mainCopyrightOwner: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
56
- maintenanceType: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
57
- monochromeLogo: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
58
- name: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
59
- outputTypes: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
60
- platforms: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
61
- publiccodeYmlVersion: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
62
- releaseDate: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
63
- repoOwner: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
64
- roadmap: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
65
- softwareType: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
66
- softwareVersion: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
67
- url: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
68
- usedBy: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
54
+ logo: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
55
+ mainCopyrightOwner: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
56
+ maintenanceType: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
57
+ monochromeLogo: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
58
+ name: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
59
+ outputTypes: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
60
+ platforms: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
61
+ publiccodeYmlVersion: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
62
+ releaseDate: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
63
+ repoOwner: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
64
+ roadmap: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
65
+ softwareType: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
66
+ softwareVersion: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
67
+ url: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
68
+ usedBy: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
69
69
  }, z.core.$strip>;
70
70
  type Publiccode = z.infer<typeof publiccodeSchema>;
71
71
  type PubliccodeYamlData = OneOrMany<SourceRecord<Publiccode>> | undefined;
@@ -10,8 +10,8 @@ import { parse } from "yaml";
10
10
  * Source and parser for `publiccode.yml` / `publiccode.yaml` files.
11
11
  *
12
12
  * Publiccode.yml is a metadata standard for public software repositories,
13
- * primarily used in Europe (Italy, Netherlands, etc.).
14
- * See: https://yml.publiccode.tools/
13
+ * primarily used in Europe (Italy, Netherlands, etc.). See:
14
+ * https://yml.publiccode.tools/
15
15
  *
16
16
  * Extracts project metadata including name, version, license, contacts,
17
17
  * multi-language descriptions, dependencies, and categorization.
@@ -48,34 +48,63 @@ const publiccodeDescriptionSchema = z.object({
48
48
  shortDescription: z.string().optional()
49
49
  });
50
50
  const publiccodeSchema = z.object({
51
+ /** Application suite this software belongs to. */
51
52
  applicationSuite: nonEmptyString,
53
+ /** Available localization languages (BCP 47). */
52
54
  availableLanguages: stringArray,
55
+ /** Software categories (e.g. "it-security", "cloud-management"). */
53
56
  categories: stringArray,
57
+ /** Maintenance contacts. */
54
58
  contacts: z.array(publiccodeContactEntrySchema),
59
+ /** Maintenance contractors. */
55
60
  contractors: z.array(publiccodeContractorEntrySchema),
61
+ /** Software dependencies (open, proprietary, hardware). */
56
62
  dependencies: z.array(publiccodeDependencyEntrySchema),
63
+ /** Preferred description (English if available, else first language). */
57
64
  description: publiccodeDescriptionSchema.optional(),
65
+ /** All localized descriptions keyed by language code. */
58
66
  descriptions: z.record(z.string(), publiccodeDescriptionSchema),
67
+ /** Development status (concept, development, beta, stable, obsolete). */
59
68
  developmentStatus: nonEmptyString,
69
+ /** Supported input MIME types. */
60
70
  inputTypes: stringArray,
71
+ /** URL of upstream software this is based on. */
61
72
  isBasedOn: optionalUrl,
73
+ /** Landing page URL. */
62
74
  landingUrl: optionalUrl,
75
+ /** SPDX license expression. */
63
76
  license: nonEmptyString,
77
+ /** Whether the software supports localization. */
64
78
  localisationReady: z.boolean().optional(),
79
+ /** Path or URL to logo image. */
65
80
  logo: optionalUrl,
81
+ /** Main copyright holder. */
66
82
  mainCopyrightOwner: nonEmptyString,
83
+ /** Maintenance type (internal, community, contract, none). */
67
84
  maintenanceType: nonEmptyString,
85
+ /** Path or URL to monochrome logo image. */
68
86
  monochromeLogo: optionalUrl,
87
+ /** Software name. */
69
88
  name: nonEmptyString,
89
+ /** Supported output MIME types. */
70
90
  outputTypes: stringArray,
91
+ /** Supported platforms (e.g. "web", "linux", "mac"). */
71
92
  platforms: stringArray,
93
+ /** The publiccode.yml schema version. */
72
94
  publiccodeYmlVersion: nonEmptyString,
95
+ /** Release date (YYYY-MM-DD). */
73
96
  releaseDate: nonEmptyString,
97
+ /** Repository owner name. */
74
98
  repoOwner: nonEmptyString,
99
+ /** Roadmap URL. */
75
100
  roadmap: optionalUrl,
101
+ /** Software type (e.g. "standalone/web", "standalone/other"). */
76
102
  softwareType: nonEmptyString,
103
+ /** Software version string. */
77
104
  softwareVersion: nonEmptyString,
105
+ /** Repository URL. */
78
106
  url: optionalUrl,
107
+ /** Organizations using this software. */
79
108
  usedBy: stringArray
80
109
  });
81
110
  /** Coerce YAML values that may be parsed as non-strings back to strings. */
@@ -115,8 +144,11 @@ function parseDescription(data) {
115
144
  }
116
145
  /**
117
146
  * Parse a publiccode.yml / publiccode.yaml file content.
147
+ *
118
148
  * @param content - Raw YAML file content.
119
- * @returns Parsed publiccode metadata, or `undefined` if the content is invalid.
149
+ *
150
+ * @returns Parsed publiccode metadata, or `undefined` if the content is
151
+ * invalid.
120
152
  */
121
153
  function parse$1(content) {
122
154
  let data;
@@ -125,8 +157,8 @@ function parse$1(content) {
125
157
  } catch {
126
158
  return;
127
159
  }
128
- if (!isPlainObject(data)) return void 0;
129
- if (!isNonEmptyString(data.name) && !isNonEmptyString(data.url)) return void 0;
160
+ if (!isPlainObject(data)) return;
161
+ if (!isNonEmptyString(data.name) && !isNonEmptyString(data.url)) return;
130
162
  const descriptions = {};
131
163
  let description;
132
164
  if (isPlainObject(data.description)) {
@@ -4,26 +4,26 @@ import { z } from "zod";
4
4
  //#region src/lib/sources/python-pkg-info.d.ts
5
5
  /** Parsed PKG-INFO / METADATA metadata */
6
6
  declare const pkgInfoDataSchema: z.ZodObject<{
7
- author: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
8
- author_email: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
9
- classifiers: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
10
- description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
11
- description_content_type: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
12
- download_url: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
13
- home_page: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
7
+ author: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
8
+ author_email: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
9
+ classifiers: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
10
+ description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
11
+ description_content_type: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
12
+ download_url: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
13
+ home_page: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
14
14
  keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
15
- license: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
16
- long_description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
17
- maintainer: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
18
- maintainer_email: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
19
- metadata_version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
20
- name: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
21
- platforms: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
15
+ license: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
16
+ long_description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
17
+ maintainer: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
18
+ maintainer_email: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
19
+ metadata_version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
20
+ name: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
21
+ platforms: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
22
22
  project_urls: z.ZodRecord<z.ZodString, z.ZodString>;
23
- requires_dist: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
24
- requires_python: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
25
- summary: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
26
- version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
23
+ requires_dist: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
24
+ requires_python: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
25
+ summary: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
26
+ version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
27
27
  }, z.core.$strip>;
28
28
  type PkgInfo = z.infer<typeof pkgInfoDataSchema>;
29
29
  type PythonPkgInfoData = OneOrMany<SourceRecord<PkgInfo>> | undefined;
@@ -51,8 +51,8 @@ const HEADER_MAP = {
51
51
  * Parse a PKG-INFO or METADATA file and return structured metadata.
52
52
  *
53
53
  * Handles RFC 822-style headers with multi-value fields (Classifier,
54
- * Requires-Dist, Project-URL, Platform), continuation lines, and
55
- * the body section as long_description.
54
+ * Requires-Dist, Project-URL, Platform), continuation lines, and the body
55
+ * section as long_description.
56
56
  */
57
57
  function parse(source) {
58
58
  const headers = parseRfc822Headers(source);
@@ -3,23 +3,23 @@ import { z } from "zod";
3
3
 
4
4
  //#region src/lib/sources/python-setup-cfg.d.ts
5
5
  declare const setupCfgDataSchema: z.ZodObject<{
6
- author: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
7
- author_email: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
8
- classifiers: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
9
- description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
10
- download_url: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
6
+ author: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
7
+ author_email: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
8
+ classifiers: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
9
+ description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
10
+ download_url: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
11
11
  extras_require: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
12
- install_requires: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
12
+ install_requires: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
13
13
  keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
14
- license: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
15
- long_description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
16
- maintainer: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
17
- maintainer_email: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
18
- name: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
14
+ license: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
15
+ long_description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
16
+ maintainer: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
17
+ maintainer_email: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
18
+ name: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
19
19
  project_urls: z.ZodRecord<z.ZodString, z.ZodString>;
20
- python_requires: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
21
- url: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
22
- version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
20
+ python_requires: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
21
+ url: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
22
+ version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
23
23
  }, z.core.$strip>;
24
24
  /** Parsed setup.cfg metadata */
25
25
  type SetupCfg = z.infer<typeof setupCfgDataSchema>;
@@ -43,8 +43,8 @@ const STRING_ATTRS = new Set([
43
43
  /**
44
44
  * Parse a setup.cfg file and return structured metadata.
45
45
  *
46
- * Extracts fields from the `[metadata]` and `[options]` sections,
47
- * including multi-line values like classifiers and install_requires.
46
+ * Extracts fields from the `[metadata]` and `[options]` sections, including
47
+ * multi-line values like classifiers and install_requires.
48
48
  */
49
49
  function parse(source) {
50
50
  const sections = parseConfigparser(source);
@@ -4,23 +4,23 @@ import { z } from "zod";
4
4
  //#region src/lib/sources/python-setup-py.d.ts
5
5
  /** Parsed setup.py metadata */
6
6
  declare const setupPyDataSchema: z.ZodObject<{
7
- author: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
8
- author_email: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
9
- classifiers: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
10
- description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
11
- download_url: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
7
+ author: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
8
+ author_email: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
9
+ classifiers: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
10
+ description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
11
+ download_url: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
12
12
  extras_require: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
13
- install_requires: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
13
+ install_requires: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
14
14
  keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
15
- license: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
16
- long_description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
17
- maintainer: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
18
- maintainer_email: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
19
- name: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
15
+ license: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
16
+ long_description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
17
+ maintainer: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
18
+ maintainer_email: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
19
+ name: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
20
20
  project_urls: z.ZodRecord<z.ZodString, z.ZodString>;
21
- python_requires: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
22
- url: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
23
- version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
21
+ python_requires: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
22
+ url: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
23
+ version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
24
24
  }, z.core.$strip>;
25
25
  type SetupPyData = z.infer<typeof setupPyDataSchema>;
26
26
  type PythonSetupPyData = OneOrMany<SourceRecord<SetupPyData>> | undefined;
@@ -8,7 +8,9 @@ import remarkParse from "remark-parse";
8
8
  import { unified } from "unified";
9
9
  //#region src/lib/sources/readme-file.ts
10
10
  const readmeSchema = z.object({
11
+ /** YAML frontmatter key-value pairs, if present. */
11
12
  frontmatter: z.record(z.string(), z.unknown()).optional(),
13
+ /** Project name extracted from the first H1 heading. */
12
14
  name: z.string()
13
15
  });
14
16
  /**
@@ -21,7 +23,10 @@ function extractText(nodes) {
21
23
  return "";
22
24
  }).join("").trim();
23
25
  }
24
- /** Reusable markdown parser — processor config is stateless, only the AST is per-call. */
26
+ /**
27
+ * Reusable markdown parser — processor config is stateless, only the AST is
28
+ * per-call.
29
+ */
25
30
  const markdownParser = unified().use(remarkParse);
26
31
  /**
27
32
  * Extract the text content of the first H1 heading from markdown.
@@ -35,13 +40,15 @@ function extractFirstH1(markdown) {
35
40
  }
36
41
  /**
37
42
  * Parse a README file's content.
43
+ *
38
44
  * @param content - Raw file content (markdown).
45
+ *
39
46
  * @returns Parsed metadata, or `undefined` if no H1 heading is found.
40
47
  */
41
48
  function parse(content) {
42
49
  const { content: markdown, data } = matter(content);
43
50
  const name = extractFirstH1(markdown);
44
- if (!name) return void 0;
51
+ if (!name) return;
45
52
  return readmeSchema.parse({
46
53
  frontmatter: Object.keys(data).length > 0 ? data : void 0,
47
54
  name
@@ -4,9 +4,9 @@ import { z } from "zod";
4
4
  //#region src/lib/sources/ruby-gemspec.d.ts
5
5
  /** @public */
6
6
  declare const gemSpecSchema: z.ZodObject<{
7
- authors: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
8
- bindir: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
9
- cert_chain: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
7
+ authors: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
8
+ bindir: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
9
+ cert_chain: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
10
10
  dependencies: z.ZodArray<z.ZodObject<{
11
11
  name: z.ZodString;
12
12
  requirements: z.ZodArray<z.ZodString>;
@@ -15,28 +15,28 @@ declare const gemSpecSchema: z.ZodObject<{
15
15
  runtime: "runtime";
16
16
  }>;
17
17
  }, z.core.$strip>>;
18
- description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
18
+ description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
19
19
  email: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
20
- executables: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
21
- extensions: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
20
+ executables: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
21
+ extensions: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
22
22
  extra: z.ZodRecord<z.ZodString, z.ZodUnknown>;
23
- extra_rdoc_files: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
24
- files: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
25
- homepage: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
26
- license: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
27
- licenses: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
23
+ extra_rdoc_files: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
24
+ files: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
25
+ homepage: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
26
+ license: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
27
+ licenses: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
28
28
  metadata: z.ZodRecord<z.ZodString, z.ZodString>;
29
- name: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
30
- platform: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
31
- post_install_message: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
32
- rdoc_options: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
33
- require_paths: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
34
- required_ruby_version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
35
- required_rubygems_version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
36
- signing_key: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
37
- summary: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
38
- test_files: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
39
- version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
29
+ name: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
30
+ platform: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
31
+ post_install_message: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
32
+ rdoc_options: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
33
+ require_paths: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
34
+ required_ruby_version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
35
+ required_rubygems_version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
36
+ signing_key: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
37
+ summary: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
38
+ test_files: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
39
+ version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
40
40
  }, z.core.$strip>;
41
41
  type GemSpec = z.infer<typeof gemSpecSchema>;
42
42
  type RubyGemspecData = OneOrMany<SourceRecord<GemSpec>> | undefined;
@@ -21,6 +21,7 @@ const gemSpecSchema = z.object({
21
21
  email: z.union([z.string(), z.array(z.string())]).optional(),
22
22
  executables: stringArray,
23
23
  extensions: stringArray,
24
+ /** Any attributes not explicitly modeled above */
24
25
  extra: z.record(z.string(), z.unknown()),
25
26
  extra_rdoc_files: stringArray,
26
27
  files: stringArray,
@@ -11,28 +11,28 @@ declare const cargoTomlSchema: z.ZodObject<{
11
11
  name: z.ZodString;
12
12
  version: z.ZodOptional<z.ZodString>;
13
13
  }, z.core.$strip>>;
14
- categories: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
14
+ categories: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
15
15
  dependencies: z.ZodArray<z.ZodObject<{
16
16
  name: z.ZodString;
17
17
  version: z.ZodOptional<z.ZodString>;
18
18
  }, z.core.$strip>>;
19
- description: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
19
+ description: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
20
20
  devDependencies: z.ZodArray<z.ZodObject<{
21
21
  name: z.ZodString;
22
22
  version: z.ZodOptional<z.ZodString>;
23
23
  }, z.core.$strip>>;
24
- documentation: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
25
- edition: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
26
- homepage: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
27
- keywords: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
28
- license: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
29
- licenseFile: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
30
- name: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
31
- readme: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
32
- repository: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
33
- rustVersion: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
34
- version: z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>;
35
- workspaceMembers: z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>;
24
+ documentation: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
25
+ edition: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
26
+ homepage: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
27
+ keywords: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
28
+ license: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
29
+ licenseFile: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
30
+ name: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
31
+ readme: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
32
+ repository: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
33
+ rustVersion: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
34
+ version: z.ZodOptional<z.ZodPipe<z.ZodTransform<string | undefined, unknown>, z.ZodOptional<z.ZodString>>>;
35
+ workspaceMembers: z.ZodDefault<z.ZodPipe<z.ZodTransform<string[], unknown>, z.ZodArray<z.ZodString>>>;
36
36
  }, z.core.$strip>;
37
37
  type CargoToml = z.infer<typeof cargoTomlSchema>;
38
38
  type RustCargoTomlData = OneOrMany<SourceRecord<CargoToml>> | undefined;