mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-02-08 06:46:35 +00:00
* fix(ci): replace broad permissions with specific scopes in workflows
Replace read-all/write-all with minimum required permission scopes
across all GitHub Actions workflows to follow the principle of least
privilege (SonarCloud rule githubactions:S8234).
* fix(shell): use [[ instead of [ for conditional tests
Replace single brackets with double brackets in bash conditional
expressions across 14 files (28 changes). All scripts use bash
shebangs so [[ is safe everywhere (SonarCloud rule shelldre:S7688).
* fix(shell): add explicit return statements to functions
Add return 0 as the last statement in ~46 shell functions across
17 files that previously relied on implicit return codes
(SonarCloud rule shelldre:S7682).
* fix(shell): assign positional parameters to local variables
Replace direct $1/$2/$3 usage with named local variables in _log(),
msg(), msg_err(), msg_done(), msg_run(), msg_ok(), and array_diff()
(SonarCloud rule shelldre:S7679).
* fix(python): replace dict() constructor with literal
Use {} instead of dict() for empty dictionary initialization
(SonarCloud rule python:S7498).
* fix(shell): fix husky shebang and tolerate npm outdated exit code
* docs(shell): add function docstring comments
* fix(shell): fix heredoc indentation in x-sonarcloud
* feat(python): add ruff linter and formatter configuration
* fix(ci): align megalinter config with biome, ruff, and shfmt settings
* fix(ci): disable black and yaml-prettier in megalinter config
* chore(ci): update ruff-pre-commit to v0.15.0 and fix hook name
* fix(scripts): check for .git dir before skipping clone in install-fonts
* fix(shell): address code review issues in scripts and shared.sh
- Guard wezterm show-keys failure in create-wezterm-keymaps.sh
- Stop masking git failures with return 0 in install-cheat-purebashbible.sh
- Add missing shared.sh source in install-xcode-cli-tools.sh
- Replace exit 1 with return 1 in sourced shared.sh
* fix(scripts): address code review and security findings
- Guard wezterm show-keys failure in create-wezterm-keymaps.sh
- Stop masking git failures with return 0 in install-cheat-purebashbible.sh
- Add missing shared.sh source in install-xcode-cli-tools.sh
- Replace exit 1 with return 1 in sourced shared.sh
- Remove shell=True subprocess calls in x-git-largest-files.py
* style(shell): apply shfmt formatting and add args to pre-commit hook
* fix(python): suppress bandit false positives in x-git-largest-files
* fix(python): add nosemgrep suppression for check_output call
* feat(format): add prettier for YAML formatting
Install prettier, add .prettierrc.json config (200-char width, 2-space
indent, LF endings), .prettierignore, yarn scripts (lint:prettier,
fix:prettier, format:yaml), and pre-commit hook scoped to YAML files.
* style(yaml): apply prettier formatting
* fix(scripts): address remaining code review findings
- Python: use list comprehension to filter empty strings instead of
slicing off the last element
- create-wezterm-keymaps: write to temp file and mv for atomic updates
- install-xcode-cli-tools: fix shellcheck source directive path
* fix(python): sort imports alphabetically in x-git-largest-files
* fix(lint): disable PYTHON_ISORT in MegaLinter, ruff handles it
* chore(git): add __pycache__ to gitignore
* fix(python): rename ambiguous variable l to line (E741)
* style: remove trailing whitespace and blank lines
* style(fzf): apply shfmt formatting
* style(shell): apply shfmt formatting
* docs(plans): add design documents
* style(docs): add language specifier to fenced code block
* feat(lint): add markdown-table-formatter to dev tooling
Add markdown-table-formatter as a dev dependency with yarn scripts
(lint:md-table, fix:md-table) and a local pre-commit hook to
automatically format markdown tables on commit.
386 lines
13 KiB
YAML
386 lines
13 KiB
YAML
# This file is generated by running "yarn install" inside your project.
|
|
# Manual changes might be lost - proceed with caution!
|
|
|
|
__metadata:
|
|
version: 8
|
|
cacheKey: 10c0
|
|
|
|
"@biomejs/biome@npm:^2.3.1":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/biome@npm:2.3.11"
|
|
dependencies:
|
|
"@biomejs/cli-darwin-arm64": "npm:2.3.11"
|
|
"@biomejs/cli-darwin-x64": "npm:2.3.11"
|
|
"@biomejs/cli-linux-arm64": "npm:2.3.11"
|
|
"@biomejs/cli-linux-arm64-musl": "npm:2.3.11"
|
|
"@biomejs/cli-linux-x64": "npm:2.3.11"
|
|
"@biomejs/cli-linux-x64-musl": "npm:2.3.11"
|
|
"@biomejs/cli-win32-arm64": "npm:2.3.11"
|
|
"@biomejs/cli-win32-x64": "npm:2.3.11"
|
|
dependenciesMeta:
|
|
"@biomejs/cli-darwin-arm64":
|
|
optional: true
|
|
"@biomejs/cli-darwin-x64":
|
|
optional: true
|
|
"@biomejs/cli-linux-arm64":
|
|
optional: true
|
|
"@biomejs/cli-linux-arm64-musl":
|
|
optional: true
|
|
"@biomejs/cli-linux-x64":
|
|
optional: true
|
|
"@biomejs/cli-linux-x64-musl":
|
|
optional: true
|
|
"@biomejs/cli-win32-arm64":
|
|
optional: true
|
|
"@biomejs/cli-win32-x64":
|
|
optional: true
|
|
bin:
|
|
biome: bin/biome
|
|
checksum: 10c0/b9764070c3d1583466a8861d37dc480c18103f7bb52115db0f265a38e6343d69792c9beea094e0b3db0905cb365b9a82ad2a0f3f05b7f04873a8f9b444263140
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-darwin-arm64@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-darwin-arm64@npm:2.3.11"
|
|
conditions: os=darwin & cpu=arm64
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-darwin-x64@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-darwin-x64@npm:2.3.11"
|
|
conditions: os=darwin & cpu=x64
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-linux-arm64-musl@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-linux-arm64-musl@npm:2.3.11"
|
|
conditions: os=linux & cpu=arm64 & libc=musl
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-linux-arm64@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-linux-arm64@npm:2.3.11"
|
|
conditions: os=linux & cpu=arm64 & libc=glibc
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-linux-x64-musl@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-linux-x64-musl@npm:2.3.11"
|
|
conditions: os=linux & cpu=x64 & libc=musl
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-linux-x64@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-linux-x64@npm:2.3.11"
|
|
conditions: os=linux & cpu=x64 & libc=glibc
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-win32-arm64@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-win32-arm64@npm:2.3.11"
|
|
conditions: os=win32 & cpu=arm64
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@biomejs/cli-win32-x64@npm:2.3.11":
|
|
version: 2.3.11
|
|
resolution: "@biomejs/cli-win32-x64@npm:2.3.11"
|
|
conditions: os=win32 & cpu=x64
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@isaacs/balanced-match@npm:^4.0.1":
|
|
version: 4.0.1
|
|
resolution: "@isaacs/balanced-match@npm:4.0.1"
|
|
checksum: 10c0/7da011805b259ec5c955f01cee903da72ad97c5e6f01ca96197267d3f33103d5b2f8a1af192140f3aa64526c593c8d098ae366c2b11f7f17645d12387c2fd420
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@isaacs/brace-expansion@npm:^5.0.1":
|
|
version: 5.0.1
|
|
resolution: "@isaacs/brace-expansion@npm:5.0.1"
|
|
dependencies:
|
|
"@isaacs/balanced-match": "npm:^4.0.1"
|
|
checksum: 10c0/e5d67c7bbf1f17b88132a35bc638af306d48acbb72810d48fa6e6edd8ab375854773108e8bf70f021f7ef6a8273455a6d1f0c3b5aa2aff06ce7894049ab77fb8
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"@types/node@npm:^24.0.1":
|
|
version: 24.10.9
|
|
resolution: "@types/node@npm:24.10.9"
|
|
dependencies:
|
|
undici-types: "npm:~7.16.0"
|
|
checksum: 10c0/e9e436fcd2136bddb1bbe3271a89f4653910bcf6ee8047c4117f544c7905a106c039e2720ee48f28505ef2560e22fb9ead719f28bf5e075fdde0c1120e38e3b2
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"bats@npm:^1.12.0":
|
|
version: 1.13.0
|
|
resolution: "bats@npm:1.13.0"
|
|
bin:
|
|
bats: bin/bats
|
|
checksum: 10c0/7f697d6305d80d328d620bd58c658f7830fbed57e28a43f18771d89fb6f941a131b440ab18d951fd15fdd23f3c687687d607d7fc03ac4c99f4725e64d2432832
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"debug@npm:^4.3.4":
|
|
version: 4.4.3
|
|
resolution: "debug@npm:4.4.3"
|
|
dependencies:
|
|
ms: "npm:^2.1.3"
|
|
peerDependenciesMeta:
|
|
supports-color:
|
|
optional: true
|
|
checksum: 10c0/d79136ec6c83ecbefd0f6a5593da6a9c91ec4d7ddc4b54c883d6e71ec9accb5f67a1a5e96d00a328196b5b5c86d365e98d8a3a70856aaf16b4e7b1985e67f5a6
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"deep-is@npm:^0.1.3":
|
|
version: 0.1.4
|
|
resolution: "deep-is@npm:0.1.4"
|
|
checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"editorconfig-checker@npm:^6.1.0":
|
|
version: 6.1.1
|
|
resolution: "editorconfig-checker@npm:6.1.1"
|
|
bin:
|
|
ec: dist/index.js
|
|
editorconfig-checker: dist/index.js
|
|
checksum: 10c0/0a46ce93e2821041c4b4bbf2ab9dc30e1b4eb03d3f20e5b14bbe45767f6f2aafd5e1310ea737c15402d8e193f702a421a814041e072584250e8a7d5e63d83741
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"fast-levenshtein@npm:^2.0.6":
|
|
version: 2.0.6
|
|
resolution: "fast-levenshtein@npm:2.0.6"
|
|
checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"find-package-json@npm:^1.2.0":
|
|
version: 1.2.0
|
|
resolution: "find-package-json@npm:1.2.0"
|
|
checksum: 10c0/85d6c97afb9f8f0deb0d344a1c4eb8027347cf4d61666c28d3ac3f913e916684441218682b3dd6f8ad570e5d43c96a7db521f70183d70df559d07e1f99cdc635
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"fs-extra@npm:^11.1.1":
|
|
version: 11.3.3
|
|
resolution: "fs-extra@npm:11.3.3"
|
|
dependencies:
|
|
graceful-fs: "npm:^4.2.0"
|
|
jsonfile: "npm:^6.0.1"
|
|
universalify: "npm:^2.0.0"
|
|
checksum: 10c0/984924ff4104e3e9f351b658a864bf3b354b2c90429f57aec0acd12d92c4e6b762cbacacdffb4e745b280adce882e1f980c485d9f02c453f769ab4e7fc646ce3
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"glob@npm:^13.0.0":
|
|
version: 13.0.1
|
|
resolution: "glob@npm:13.0.1"
|
|
dependencies:
|
|
minimatch: "npm:^10.1.2"
|
|
minipass: "npm:^7.1.2"
|
|
path-scurry: "npm:^2.0.0"
|
|
checksum: 10c0/af7b863dec8dff74f61d7d6e53104e1f6bbdd482157a196cade8ed857481e876ec35181b38a059b2a7b93ea3b08248f4ff0792fef6dc91814fd5097a716f48e4
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0":
|
|
version: 4.2.11
|
|
resolution: "graceful-fs@npm:4.2.11"
|
|
checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"ivuorinen-dotfiles@workspace:.":
|
|
version: 0.0.0-use.local
|
|
resolution: "ivuorinen-dotfiles@workspace:."
|
|
dependencies:
|
|
"@biomejs/biome": "npm:^2.3.1"
|
|
"@types/node": "npm:^24.0.1"
|
|
bats: "npm:^1.12.0"
|
|
editorconfig-checker: "npm:^6.1.0"
|
|
markdown-table-formatter: "npm:^1.7.0"
|
|
prettier: "npm:^3.8.1"
|
|
typescript: "npm:^5.8.3"
|
|
languageName: unknown
|
|
linkType: soft
|
|
|
|
"jsonfile@npm:^6.0.1":
|
|
version: 6.2.0
|
|
resolution: "jsonfile@npm:6.2.0"
|
|
dependencies:
|
|
graceful-fs: "npm:^4.1.6"
|
|
universalify: "npm:^2.0.0"
|
|
dependenciesMeta:
|
|
graceful-fs:
|
|
optional: true
|
|
checksum: 10c0/7f4f43b08d1869ded8a6822213d13ae3b99d651151d77efd1557ced0889c466296a7d9684e397bd126acf5eb2cfcb605808c3e681d0fdccd2fe5a04b47e76c0d
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"levn@npm:^0.4.1":
|
|
version: 0.4.1
|
|
resolution: "levn@npm:0.4.1"
|
|
dependencies:
|
|
prelude-ls: "npm:^1.2.1"
|
|
type-check: "npm:~0.4.0"
|
|
checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"lru-cache@npm:^11.0.0":
|
|
version: 11.2.5
|
|
resolution: "lru-cache@npm:11.2.5"
|
|
checksum: 10c0/cc98958d25dddf1c8a8cbdc49588bd3b24450e8dfa78f32168fd188a20d4a0331c7406d0f3250c86a46619ee288056fd7a1195e8df56dc8a9592397f4fbd8e1d
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"markdown-table-formatter@npm:^1.7.0":
|
|
version: 1.7.0
|
|
resolution: "markdown-table-formatter@npm:1.7.0"
|
|
dependencies:
|
|
debug: "npm:^4.3.4"
|
|
find-package-json: "npm:^1.2.0"
|
|
fs-extra: "npm:^11.1.1"
|
|
glob: "npm:^13.0.0"
|
|
markdown-table-prettify: "npm:^3.6.0"
|
|
optionator: "npm:^0.9.4"
|
|
bin:
|
|
markdown-table-formatter: lib/index.js
|
|
checksum: 10c0/0f0d5eaec2c3bb9c60328ffbb4652305845def5387f4c87dd6e83559ef793961353af64ae44bce9cda3394469e419e046ae42fe7e9cafd47414b42deaa28f3b7
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"markdown-table-prettify@npm:^3.6.0":
|
|
version: 3.7.0
|
|
resolution: "markdown-table-prettify@npm:3.7.0"
|
|
bin:
|
|
markdown-table-prettify: cli/index.js
|
|
checksum: 10c0/f387b1ca81ceaa201bda2ce1db8e4d392a4d4ac3d7bb3173c7d9e3d9ca389e31d247eee2ccd2fa30f3132ae2447dc51285fb68636cdaf825633a43a499f41cd6
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"minimatch@npm:^10.1.2":
|
|
version: 10.1.2
|
|
resolution: "minimatch@npm:10.1.2"
|
|
dependencies:
|
|
"@isaacs/brace-expansion": "npm:^5.0.1"
|
|
checksum: 10c0/0cccef3622201703de6ecf9d772c0be1d5513dcc038ed9feb866c20cf798243e678ac35605dac3f1a054650c28037486713fe9e9a34b184b9097959114daf086
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"minipass@npm:^7.1.2":
|
|
version: 7.1.2
|
|
resolution: "minipass@npm:7.1.2"
|
|
checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"ms@npm:^2.1.3":
|
|
version: 2.1.3
|
|
resolution: "ms@npm:2.1.3"
|
|
checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"optionator@npm:^0.9.4":
|
|
version: 0.9.4
|
|
resolution: "optionator@npm:0.9.4"
|
|
dependencies:
|
|
deep-is: "npm:^0.1.3"
|
|
fast-levenshtein: "npm:^2.0.6"
|
|
levn: "npm:^0.4.1"
|
|
prelude-ls: "npm:^1.2.1"
|
|
type-check: "npm:^0.4.0"
|
|
word-wrap: "npm:^1.2.5"
|
|
checksum: 10c0/4afb687a059ee65b61df74dfe87d8d6815cd6883cb8b3d5883a910df72d0f5d029821f37025e4bccf4048873dbdb09acc6d303d27b8f76b1a80dd5a7d5334675
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"path-scurry@npm:^2.0.0":
|
|
version: 2.0.1
|
|
resolution: "path-scurry@npm:2.0.1"
|
|
dependencies:
|
|
lru-cache: "npm:^11.0.0"
|
|
minipass: "npm:^7.1.2"
|
|
checksum: 10c0/2a16ed0e81fbc43513e245aa5763354e25e787dab0d539581a6c3f0f967461a159ed6236b2559de23aa5b88e7dc32b469b6c47568833dd142a4b24b4f5cd2620
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"prelude-ls@npm:^1.2.1":
|
|
version: 1.2.1
|
|
resolution: "prelude-ls@npm:1.2.1"
|
|
checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"prettier@npm:^3.8.1":
|
|
version: 3.8.1
|
|
resolution: "prettier@npm:3.8.1"
|
|
bin:
|
|
prettier: bin/prettier.cjs
|
|
checksum: 10c0/33169b594009e48f570471271be7eac7cdcf88a209eed39ac3b8d6d78984039bfa9132f82b7e6ba3b06711f3bfe0222a62a1bfb87c43f50c25a83df1b78a2c42
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"type-check@npm:^0.4.0, type-check@npm:~0.4.0":
|
|
version: 0.4.0
|
|
resolution: "type-check@npm:0.4.0"
|
|
dependencies:
|
|
prelude-ls: "npm:^1.2.1"
|
|
checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"typescript@npm:^5.8.3":
|
|
version: 5.9.3
|
|
resolution: "typescript@npm:5.9.3"
|
|
bin:
|
|
tsc: bin/tsc
|
|
tsserver: bin/tsserver
|
|
checksum: 10c0/6bd7552ce39f97e711db5aa048f6f9995b53f1c52f7d8667c1abdc1700c68a76a308f579cd309ce6b53646deb4e9a1be7c813a93baaf0a28ccd536a30270e1c5
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"typescript@patch:typescript@npm%3A^5.8.3#optional!builtin<compat/typescript>":
|
|
version: 5.9.3
|
|
resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin<compat/typescript>::version=5.9.3&hash=5786d5"
|
|
bin:
|
|
tsc: bin/tsc
|
|
tsserver: bin/tsserver
|
|
checksum: 10c0/ad09fdf7a756814dce65bc60c1657b40d44451346858eea230e10f2e95a289d9183b6e32e5c11e95acc0ccc214b4f36289dcad4bf1886b0adb84d711d336a430
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"undici-types@npm:~7.16.0":
|
|
version: 7.16.0
|
|
resolution: "undici-types@npm:7.16.0"
|
|
checksum: 10c0/3033e2f2b5c9f1504bdc5934646cb54e37ecaca0f9249c983f7b1fc2e87c6d18399ebb05dc7fd5419e02b2e915f734d872a65da2e3eeed1813951c427d33cc9a
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"universalify@npm:^2.0.0":
|
|
version: 2.0.1
|
|
resolution: "universalify@npm:2.0.1"
|
|
checksum: 10c0/73e8ee3809041ca8b818efb141801a1004e3fc0002727f1531f4de613ea281b494a40909596dae4a042a4fb6cd385af5d4db2e137b1362e0e91384b828effd3a
|
|
languageName: node
|
|
linkType: hard
|
|
|
|
"word-wrap@npm:^1.2.5":
|
|
version: 1.2.5
|
|
resolution: "word-wrap@npm:1.2.5"
|
|
checksum: 10c0/e0e4a1ca27599c92a6ca4c32260e8a92e8a44f4ef6ef93f803f8ed823f486e0889fc0b93be4db59c8d51b3064951d25e43d434e95dc8c960cc3a63d65d00ba20
|
|
languageName: node
|
|
linkType: hard
|