Dashboard › fossilize › Session 1DWlTiuCY6H3
1DWlTiuCY6H3k54JAExplore the /home/byk/Code/superset repository to understand its Craft-based publishing setup. I need to find:
Return complete file contents for craft configs and workflow files, not just summaries.
I'll systematically explore the Superset repository for all Craft-related publishing setup. Let me run multiple searches in parallel.
/home/byk/Code/superset/.craft.yml
/home/byk/Code/superset/.craft.yml
No files found
/home/byk/Code/superset/.github/workflows/publish.yml /home/byk/Code/superset/.github/workflows/release.yml /home/byk/Code/superset/.github/workflows/ci.yml
/home/byk/Code/superset/CHANGELOG.md
No files found
No files found
Good, found the key files. Let me now read all of them in parallel, plus search for craft references in content and check package.json.
<path>/home/byk/Code/superset/.craft.yml</path> <type>file</type> <content> 1: minVersion: '2.21.1' 2: changelog: 3: policy: auto 4: versioning: 5: policy: auto 6: artifactProvider: 7: name: github 8: config: 9: artifacts: 10: CI: npm-tarball 11: targets: 12: - name: npm 13: access: public 14: oidc: true 15: - name: github (End of file - total 15 lines) </content>
<path>/home/byk/Code/superset/.github/workflows/publish.yml</path>
<type>file</type>
<content>
1: name: Publish
2: on:
3: issues:
4: types: [labeled]
5:
6: jobs:
7: publish:
8: if: github.event.label.name == 'accepted' && github.event.issue.state == 'open'
9: runs-on: ubuntu-latest
10: name: Publish release
11: environment: production
12: permissions:
13: contents: write
14: id-token: write
15: issues: write
16: timeout-minutes: 15
17: steps:
18: - uses: actions/create-github-app-token@v3
19: id: app-token
20: with:
21: app-id: ${{ vars.APP_ID }}
22: private-key: ${{ secrets.APP_PRIVATE_KEY }}
23:
24: - name: Parse publish request
25: id: inputs
26: env:
27: ISSUE_TITLE: ${{ github.event.issue.title }}
28: run: |
29: # Title format: "publish: owner/repo@VERSION"
30: VERSION=$(echo "$ISSUE_TITLE" | grep -oP '@\K[^\s]+$')
31: ...
<path>/home/byk/Code/superset/.github/workflows/release.yml</path>
<type>file</type>
<content>
1: name: Release
2: on:
3: workflow_dispatch:
4: inputs:
5: version:
6: description: Version to release (or "auto")
7: required: false
8: force:
9: description: Force a release even when there are release-blockers
10: type: boolean
11: default: false
12:
13: jobs:
14: release:
15: runs-on: ubuntu-latest
16: name: Release a new version
17: environment: production
18: permissions:
19: contents: write
20: issues: write
21: steps:
22: - uses: actions/create-github-app-token@v3
23: id: app-token
24: with:
25: app-id: ${{ vars.APP_ID }}
26: private-key: ${{ secrets.APP_PRIVATE_KEY }}
27:
28: - uses: actions/checkout@v6
29: with:
30: token: ${{ steps.app-token.outputs.token }}
31: fetch-depth: 0
32:
33: - uses: ...
<path>/home/byk/Code/superset/.github/workflows/ci.yml</path>
<type>file</type>
<content>
1: name: CI
2:
3: on:
4: push:
5: branches: [master, 'release/**']
6: pull_request:
7: branches: [master]
8:
9: jobs:
10: test:
11: runs-on: ubuntu-latest
12: strategy:
13: matrix:
14: node: ['20', '22']
15: name: Node ${{ matrix.node }}
16: steps:
17: - uses: actions/checkout@v6
18: - uses: pnpm/action-setup@v4
19: - uses: actions/setup-node@v6
20: with:
21: node-version: ${{ matrix.node }}
22: cache: pnpm
23: - name: Install
24: run: pnpm install --frozen-lockfile
25: - name: Test
26: run: pnpm test
27:
28: coverage:
29: name: Coverage
30: needs: test
31: runs-on: ubuntu-latest
32: steps:
33: - uses: actions/checkout@v6
34: - uses: pnpm/action-setup@v4
35: - uses: actions/setup-node@v6
36: with:
37: node-version: '22'
38: ...
<path>/home/byk/Code/superset/CHANGELOG.md</path> <type>file</type> <content> 1: # Changelog 2: 3: ## 3.0.3 4: 5: ### Bug Fixes 🐛 6: 7: - Patch 8 open Dependabot security alerts by @BYK in [#29](https://github.com/BYK/superset/pull/29) 8: 9: ## 3.0.2 10: 11: ### Bug Fixes 🐛 12: 13: - Patch flatted CVE-2026-32141 unbounded recursion DoS by @BYK in [#27](https://github.com/BYK/superset/pull/27) 14: 15: ## 3.0.1 16: 17: ### Bug Fixes 🐛 18: 19: - Update README badges for renamed CI workflow and Codecov by @BYK in [f96c1c6b](https://github.com/BYK/superset/commit/f96c1c6b7a2455cb582d5a7fe9d292d35e079a88) 20: 21: ## 3.0.0 22: 23: ### New Features ✨ 24: 25: - Upgrade to Craft v2 publishing pipeline by @BYK in [bfe96d36](https://github.com/BYK/superset/commit/bfe96d36968322756f37fff5a08aaa1a34c6f75a) 26: 27: ### Bug Fixes 🐛 28: 29: - Update codecov action to v5 with token support by @BYK in ...
<path>/home/byk/Code/superset/package.json</path>
<type>file</type>
<content>
1: {
2: "name": "superset",
3: "version": "3.0.3",
4: "description": "A library that provides the missing Set methods such as map and filter.",
5: "main": "index.js",
6: "packageManager": "pnpm@10.28.0",
7: "engines": {
8: "node": ">= 20.0.0"
9: },
10: "pnpm": {
11: "overrides": {
12: "serialize-javascript": ">=7.0.5",
13: "diff": ">=8.0.3",
14: "flatted": ">=3.4.0",
15: "brace-expansion@^1": "~1.1.13",
16: "brace-expansion@^2": "~2.0.3",
17: "brace-expansion@^5": ">=5.0.5",
18: "yaml": ">=2.8.3",
19: "picomatch@^2": "~2.3.2",
20: "picomatch@^4": ">=4.0.4"
21: }
22: },
23: "devDependencies": {
24: "@stylistic/eslint-plugin": "^4.4.1",
25: "c8": "^10.1.3",
26: "chai": "^4.5.0",
27: "eslint": "^9.28.0",
28: "globals": "^16.1.0",
29: "mocha": "^11.5.0",
30: "remark-cli": "^12.0.1",
31: ...
Found 6 matches
/home/byk/Code/superset/.github/workflows/publish.yml:
Line 54: CRAFT_URL=$(curl -fsSL https://api.github.com/repos/getsentry/craft/releases/latest \
Line 55: | jq -r '.assets[] | select(.name == "craft") | .browser_download_url')
Line 56: sudo curl -fsSL -o /usr/local/bin/craft "$CRAFT_URL"
Line 57: sudo chmod +x /usr/local/bin/craft
Line 60: run: craft publish "${{ steps.inputs.outputs.version }}" --no-input --no-status-check
/home/byk/Code/superset/.github/workflows/release.yml:
Line 33: - uses: getsentry/craft@v2
Now let me also check for version management files and any additional configuration.
/home/byk/Code/superset/.remarkrc.mjs
/home/byk/Code/superset/.npmignore
Found 48 matches
/home/byk/Code/superset/.github/workflows/publish.yml:
Line 7: publish:
Line 10: name: Publish release
Line 24: - name: Parse publish request
Line 29: # Title format: "publish: owner/repo@VERSION"
Line 32: echo "::error::Could not parse version from issue title: $ISSUE_TITLE"
Line 35: echo "version=$VERSION" >> "$GITHUB_OUTPUT"
Line 39: ref: release/${{ steps.inputs.outputs.version }}
Line 50: node-version: 24
Line 54: CRAFT_URL=$(curl -fsSL https://api.github.com/repos/getsentry/craft/releases/latest \
Line 60: run: craft publish "${{ steps.inputs.outputs.version }}" --no-input --no-status-check
Line 70: --comment "Published **${{ steps.inputs.outputs.version }}** successfully.
/home/byk/Code/superset/pnpm-lock.yaml:
Line 24: version: 4.4.1(eslint@9.39.4)(typescript@6.0.2)
Line 27: version: 10.1.3
Line 30: ...
Here is a complete summary of the Craft-based publishing setup in the /home/byk/Code/superset repository.
File: /home/byk/Code/superset/.craft.yml
minVersion: '2.21.1'
changelog:
policy: auto
versioning:
policy: auto
artifactProvider:
name: github
config:
artifacts:
CI: npm-tarball
targets:
- name: npm
access: public
oidc: true
- name: github
What this means:
minVersion: '2.21.1' -- Requires Craft CLI version 2.21.1 or newer.changelog.policy: auto -- Craft auto-generates the changelog from commit messages/PR titles when preparing a release.versioning.policy: auto -- Craft automatically determines the next version (likely from conventional commits or PR labels).artifactProvider -- Artifacts come from GitHub Actions. It looks for the npm-tarball artifact uploaded by the CI workflow (see the artifacts job in ci.yml).npm -- Publishes to the npm registry with public access, using OIDC token authentication (no npm secret needed).github -- Creates a GitHub Release.File: /home/byk/Code/superset/.github/workflows/ci.yml (69 lines)
name: CI
on:
push:
branches: [master, 'release/**']
pull_request:
branches: [master]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node: ['20', '22']
name: Node ${{ matrix.node }}
steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node }}
cache: pnpm
- name: Install
run: pnpm install --frozen-lockfile
- name: Test
run: pnpm test
coverage:
name: Coverage
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: pnpm/action-setup@v4
- ...