Remove argparse dependency (#3906)

This commit is contained in:
Bart Louwers
2025-10-23 17:44:33 +02:00
committed by GitHub
parent d572046fd2
commit 1dfc16736a
10 changed files with 43 additions and 85 deletions

View File

@@ -273,7 +273,6 @@ npm_link_all_packages(
js_binary(
name = "generate-style-code-script",
data = [
":node_modules/argparse",
":node_modules/csscolorparser",
":style-code",
":style-spec",
@@ -283,9 +282,6 @@ js_binary(
js_binary(
name = "generate-shader-code-script",
data = [
":node_modules/argparse",
],
entry_point = "shaders/generate_shader_code.mjs",
)

15
package-lock.json generated
View File

@@ -22,10 +22,8 @@
"@mapbox/mapbox-gl-styles": "2.1.1",
"@mapbox/mvt-fixtures": "3.10.0",
"@octokit/rest": "^20.1.0",
"@types/argparse": "^2.0.16",
"@types/ejs": "^3.1.5",
"@types/node": "^22.9.0",
"argparse": "^2.0.1",
"csscolorparser": "^1.0.3",
"ejs": "^3.1.10",
"express": "^4.19.2",
@@ -2063,13 +2061,6 @@
"node": ">=16.0.0"
}
},
"node_modules/@types/argparse": {
"version": "2.0.16",
"resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-2.0.16.tgz",
"integrity": "sha512-aMqBra2JlqpFeCWOinCtpRpiCkPIXH8hahW2+FkGzvWjfE5sAqtOcrjN5DRcMnTQqFDe6gb1CVYuGnBH0lhXwA==",
"dev": true,
"license": "MIT"
},
"node_modules/@types/ejs": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/@types/ejs/-/ejs-3.1.5.tgz",
@@ -2115,12 +2106,6 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
"node_modules/arr-union": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",

View File

@@ -19,10 +19,8 @@
"@mapbox/flow-remove-types": "^2.0.0",
"@mapbox/mvt-fixtures": "3.10.0",
"@octokit/rest": "^20.1.0",
"@types/argparse": "^2.0.16",
"@types/ejs": "^3.1.5",
"@types/node": "^22.9.0",
"argparse": "^2.0.1",
"csscolorparser": "^1.0.3",
"ejs": "^3.1.10",
"express": "^4.19.2",

View File

@@ -330,7 +330,6 @@ js_binary(
data = [
"scripts/style-spec-cocoa-conventions-v8.json",
"scripts/style-spec-overrides-v8.json",
"//:node_modules/argparse",
"//:node_modules/csscolorparser",
"//:node_modules/lodash",
"//:style-code",

View File

@@ -1,4 +1,4 @@
import { ArgumentParser } from "argparse";
import { parseArgs } from "node:util";
import path from "node:path";
import _ from "lodash";
import colorParser from "csscolorparser";
@@ -29,16 +29,16 @@ function setupGlobalEjsHelpers() {
setupGlobalEjsHelpers();
// Parse command line
const args = (() => {
const parser = new ArgumentParser({
description: "MapLibre Shader Tools"
});
parser.add_argument("--out", "--o", {
help: "Directory root to write generated code.",
required: false
});
return parser.parse_args();
})();
const args = parseArgs({
options: {
out: {
type: 'string',
short: 'o',
description: 'Directory root to write generated code.'
}
},
allowPositionals: false
});
const prefix = 'MLN';
const suffix = 'StyleLayer';

View File

@@ -23,7 +23,6 @@
"@octokit/plugin-retry": "^7.1.0",
"@octokit/rest": "^20.1.0",
"@types/node": "^22.9.0",
"argparse": "^2.0.1",
"csscolorparser": "^1.0.3",
"d3-queue": "3.0.7",
"diff": "5.2.0",
@@ -2353,12 +2352,6 @@
"node": ">=4"
}
},
"node_modules/argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
"node_modules/array-buffer-byte-length": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz",

View File

@@ -34,7 +34,6 @@
"@octokit/plugin-retry": "^7.1.0",
"@octokit/rest": "^20.1.0",
"@types/node": "^22.9.0",
"argparse": "^2.0.1",
"csscolorparser": "^1.0.3",
"d3-queue": "3.0.7",
"diff": "5.2.0",

16
pnpm-lock.yaml generated
View File

@@ -42,18 +42,12 @@ importers:
'@octokit/rest':
specifier: ^20.1.0
version: 20.1.2
'@types/argparse':
specifier: ^2.0.16
version: 2.0.17
'@types/ejs':
specifier: ^3.1.5
version: 3.1.5
'@types/node':
specifier: ^22.9.0
version: 22.18.12
argparse:
specifier: ^2.0.1
version: 2.0.1
csscolorparser:
specifier: ^1.0.3
version: 1.0.3
@@ -572,9 +566,6 @@ packages:
resolution: {integrity: sha512-4aUIteuyxtBUhVdiQqcDhKFitwfd9hqoSDYY2KRXiWtgoWJ9Bmise+KfEPDiVHWeJepvF8xJO9/9+WDIciMFFw==}
engines: {node: '>=18.0.0'}
'@types/argparse@2.0.17':
resolution: {integrity: sha512-fueJssTf+4dW4HODshEGkIZbkLKHzgu1FvCI4cTc/MKum/534Euo3SrN+ilq8xgyHnOjtmg33/hee8iXLRg1XA==}
'@types/ejs@3.1.5':
resolution: {integrity: sha512-nv+GSx77ZtXiJzwKdsASqi+YQ5Z7vwHsTP0JY2SiQgjGckkBRKZnk8nIM+7oUZ1VCtuTz0+By4qVR7fqzp/Dfg==}
@@ -589,9 +580,6 @@ packages:
resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
engines: {node: '>=4'}
argparse@2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
array-buffer-byte-length@1.0.2:
resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
engines: {node: '>= 0.4'}
@@ -2445,8 +2433,6 @@ snapshots:
dependencies:
tslib: 2.8.1
'@types/argparse@2.0.17': {}
'@types/ejs@3.1.5': {}
'@types/node@22.18.12':
@@ -2462,8 +2448,6 @@ snapshots:
dependencies:
color-convert: 1.9.3
argparse@2.0.1: {}
array-buffer-byte-length@1.0.2:
dependencies:
call-bound: 1.0.4

View File

@@ -1,4 +1,4 @@
import { ArgumentParser } from "argparse";
import { parseArgs } from "node:util";
import * as path from "node:path";
import spec from "./style-spec.mjs";
import colorParser from "csscolorparser";
@@ -7,14 +7,17 @@ import { camelize, camelizeWithLeadingLowercase, readAndCompile, writeIfModified
// Parse command line
const args = (() => {
const parser = new ArgumentParser({
description: "MapLibre Shader Tools"
const { values } = parseArgs({
args: process.argv.slice(2),
options: {
out: {
type: 'string',
short: 'o'
}
},
allowPositionals: false
});
parser.add_argument("--out", "--o", {
help: "Directory root to write generated code.",
required: false
});
return parser.parse_args();
return values;
})();
function parseCSSColor(/** @type {string} **/ str) {

View File

@@ -1,6 +1,6 @@
console.log("Generating shaders...");
import { ArgumentParser } from "argparse";
import { parseArgs } from "node:util";
import path from "node:path";
import fs from "node:fs";
@@ -194,25 +194,26 @@ const strip = (source) => {
};
// Parse command line
const args = (() => {
const parser = new ArgumentParser({
description: "MapLibre Shader Tools"
});
parser.add_argument("--out", "--o", {
help: "Directory root to write generated code.",
required: false
});
parser.add_argument("--compress", "--c", {
help: "Compress shader text with zlib and output byte arrays instead of strings",
required: false
});
parser.add_argument("--strip", "--s", {
help: "Strip comments, new lines and whitespace",
required: false,
action: "store_true"
});
return parser.parse_args();
})();
const args = parseArgs({
options: {
out: {
type: 'string',
short: 'o',
description: 'Directory root to write generated code.'
},
compress: {
type: 'string',
short: 'c',
description: 'Compress shader text with zlib and output byte arrays instead of strings'
},
strip: {
type: 'boolean',
short: 's',
description: 'Strip comments, new lines and whitespace'
}
},
allowPositionals: false
});
// Generate shader source headers