Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .devcontainer/post-create.sh
Original file line number Diff line number Diff line change
Expand Up @@ -84,10 +84,10 @@ fi

echo "==> Dependencies"

# Corepack prompts before fetching the pinned pnpm, which fails where there is
# no terminal to answer it.
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
corepack enable
# No corepack: node is unbundling it, and pnpm does the job it was here for.
# The pnpm feature installs whatever is current, and pnpm reads
# `packageManager` and fetches that version itself -- which since pnpm 11 is
# what `pmOnFail: download` does by default.
pnpm install

# ------------------------------------------------------------------------------
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,11 @@ jobs:
node-version-file: 'package.json'
- name: Install
run: |
# Corepack prompts before fetching the pinned pnpm, and there is
# no terminal here to answer it. packageManager names the version.
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
corepack enable
# No corepack: node is unbundling it, and pnpm reads
# `packageManager` and fetches that version itself. Installing the
# named one rather than the newest saves fetching pnpm twice.
npm install --global "pnpm@$(node -p "require('./package.json').packageManager.replace('pnpm@','').split('+')[0]")"
pnpm --version
pnpm install
echo "$(pwd)/node_modules/.bin" >> $GITHUB_PATH
- name: Build
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/lint-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,11 @@ jobs:
node-version-file: 'package.json'
- name: Install
run: |
# Corepack prompts before fetching the pinned pnpm, and there is
# no terminal here to answer it. packageManager names the version.
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
corepack enable
# No corepack: node is unbundling it, and pnpm reads
# `packageManager` and fetches that version itself. Installing the
# named one rather than the newest saves fetching pnpm twice.
npm install --global "pnpm@$(node -p "require('./package.json').packageManager.replace('pnpm@','').split('+')[0]")"
pnpm --version
pnpm install
echo "$(pwd)/node_modules/.bin" >> $GITHUB_PATH
- name: Build
Expand Down
3 changes: 3 additions & 0 deletions .markdownlint-cli2.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
"ignores": [
"_site/",
"node_modules/",
// The package store, which lives in the project because hard links
// cannot cross a filesystem. It holds other people's files.
".pnpm-store/",
"**/COPYING.md",
// Generated by compile.siteifyHealthFiles from OpenINF/.github;
// fixes here are overwritten on the next build.
Expand Down
4 changes: 4 additions & 0 deletions .remarkignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,7 @@ collections/_pages/vision.md
# Placeholder posts. The prose is Latin filler, so the natural-language
# rules have nothing useful to say about it.
collections/_posts/*lorem-ipsum*.md

# The package store, which lives in the project because hard links cannot
# cross a filesystem. It holds other people's files.
.pnpm-store/
15 changes: 11 additions & 4 deletions build/utils.mts
Original file line number Diff line number Diff line change
Expand Up @@ -76,10 +76,17 @@ const expandDotPattern = (pattern: string) => {
*/
export async function glob(patterns: string | string[]) {
const include = [];
// Matching dot names is what puts `.git/` in reach of a plain `**`, and no
// task has any business reading it. Excluded directories are pruned whole,
// dot entries included, so callers need not widen their own exclusions.
const exclude = ['.git/**'];
// Matching dot names is what puts these in reach of a plain `**`, and no
// task has any business reading either. Excluded directories are pruned
// whole, dot entries included, so callers need not widen their own
// exclusions.
//
// `.pnpm-store/` is the package store, which lives in the project because
// the home directory is on another filesystem and hard links cannot cross
// one. It holds other people's files, including the copy of pnpm that
// `packageManager` asks for, so a check that reads it is checking the
// registry rather than this repository.
const exclude = ['.git/**', '.pnpm-store/**'];

for (const pattern of [patterns].flat()) {
if (pattern.startsWith('!')) {
Expand Down
7 changes: 6 additions & 1 deletion cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,10 @@
"path": "./project-terms.txt"
}
],
"ignorePaths": ["_site/**", "node_modules/**", "**/COPYING.md"]
"ignorePaths": [
"_site/**",
"node_modules/**",
".pnpm-store/**",
"**/COPYING.md"
]
}
Loading