Skip to content

Chore/trunk based dev - #67

Closed
Snailedlt wants to merge 26 commits into
masterfrom
chore/trunk-based-dev
Closed

Snailedlt wants to merge 26 commits into
masterfrom
chore/trunk-based-dev

Conversation

@Snailedlt

Copy link
Copy Markdown
Owner

temp pr

Snailedlt and others added 8 commits March 8, 2026 00:33
- auto_build_merge.yml: stripped to validate + squash merge only (no build)
- build_icons.yml: emergency fallback, commits directly to master (no PR)
- version_and_release.yml: deprecated, workflow_dispatch only
- CLAUDE.md: added project guide for Claude Code

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Artifact 'pr_num' downloads to ./pr_num/pr_num.txt, not ./peek-pr-num/pr_num.txt.
This caused step 5 to fail, skipping all comment steps.

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Remove dependency on IMGUR_CLIENT_ID secret
- Upload screenshots to 'screenshots' branch under pr-{num}/ subdirectory
- Serve images via raw.githubusercontent.com (public, no auth needed)
- Rewrite comment steps using github-script (removes jungwinter/comment
  and juliangruber/read-file-action dependencies)
- Fix pr_num reading using bash instead of read-file-action
- Fix failure comment using github-script instead of literal env.MESSAGE

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
* feat: add claude icon SVGs (original, plain)

* feat: add claude entry to devicon.json

---------

Co-authored-by: Smyile <84925446+davidetacchini@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

RANGE='HEAD' gives git diff nothing to compare against.
Use 'first-commit..HEAD' to cover all history on first run.
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

Priority order for determining range:
1. Last 'build:' prefixed commit (normal case)
2. Last vX.Y.Z release tag (first run after migration)
3. First commit in repo (truly fresh repo with no releases)
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

- Add 'Install Firefox' step via apt before Icomoon build
- Add 'Make geckodriver executable' step (chmod +x)
- Auto-create 'build-failed' label if it doesn't exist before creating issue
- Fix core.setFailed message (remove em dash)
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

Wrap get_merged_pull_reqs_since_last_release in try-except so that
if the GitHub API call fails (e.g. in test environments where the
hardcoded devicons/devicon URL returns errors), we fall back to
find_new_icons_in_devicon_json which compares devicon.json vs icomoon.json directly.
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

- Replace apt-get firefox (snap, broken with geckodriver) with
  browser-actions/setup-firefox (proper .deb binary)
- Switch from icomoon_build.py to icomoon_build_githubless.py which
  needs no GitHub token and uses devicon.json vs icomoon.json diff directly
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

- Take screenshot on page load so we can see icomoon.io current state
- Try original 'icon-menu' selector first (6s), fall back to 'input[type=file]'
- Take screenshot when fallback is triggered and on failure
- Upload screenshots as build artifact in build_nightly.yml
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

element.screenshot() fails with 'Unable to capture screenshot' when
the element contains a cross-origin canvas (icomoon.io uses canvas
for icon rendering). driver.save_screenshot() bypasses this.
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

The Angular app on icomoon.io can be slow to initialize.
LONG_WAIT_IN_SEC (25s) was too short on slow runners.
90s gives enough headroom for the page to fully render.
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

github-actions Bot and others added 3 commits May 16, 2026 15:30
* new icon: vlang (original, plain)

Adds the V programming language icon with two variants:
- original: two-tone blue V logo (#536B8A / #5D87BF)
- plain: single-color version (#5D87BF)

Closes devicons#853

Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix and optimize vlang-plain icon

* Refactor SVG paths for VLang original icon

---------

Co-authored-by: Claude <noreply@anthropic.com>
select_all_icons_in_top_set and deselect_all_icons_in_top_set use
fragile icomoon.io UI selectors that fail intermittently. These are
only needed for screenshots/visual ordering, not for actual font
generation. Wrap in try-except so the build continues even if they fail.
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

github-actions Bot and others added 3 commits May 16, 2026 16:29
…tion

deselect_all succeeded but select_all failed intermittently, leaving
0 icons selected and generating an empty font. Icons from uploaded
icomoon.json and new SVGs are selected by default in icomoon.io,
so deselecting is not needed for correct font generation.
Screenshots will show all icons (not just new ones) but font is correct.
@Snailedlt
Snailedlt force-pushed the chore/trunk-based-dev branch from dad8c75 to 69b07f7 Compare May 16, 2026 16:36
@github-actions

Copy link
Copy Markdown

Hi there,

I'm Devicons' Peek Bot and it seems we've ran into a problem.

util.find_object_added_in_pr: Couldn't find an icon matching the name in the PR title.
PR title is: 'Chore/trunk based dev'

Make sure that:

  • Your SVGs are named and added correctly to the /icons folder as seen here.
  • Your icon information has been added to the devicon.json as seen here
  • Your PR title follows the format seen here

I will retry once everything is fixed. If I still fail or there are other error, the maintainers will investigate.

Best of luck,
Peek Bot ☺️

Snailedlt and others added 2 commits May 16, 2026 19:25
Peek bot (icomoon_peek.py / PeekSeleniumRunner):
- Fix click_hamburger_input to target the first set header dynamically
  instead of the hardcoded #setH2 id, which was pointing at the wrong
  (IcoMoon Free) set and causing select_all to select the wrong icons.
- Remove new_svgs.png full-panel overview from peek_svgs — the per-SVG
  edit_svg shots (new_svg_*.png) taken during upload are already scoped
  correctly and are not affected by the set-selector bug.
- Remove new_icons.png full-panel overview from peek_icons and cap the
  glyphSet0 iteration to num_svgs entries as a hard guard against
  default-set icons bleeding into the font preview.
- PR comment no longer references the two removed overview images.

Build runner (BuildSeleniumRunner):
- Call deselect_all_icons_in_top_set before uploading new SVGs so that
  only new icons are selected for the build screenshot. download_icomoon_fonts
  calls select_all before font generation, so the full set is still used.
- Remove non-fatal try/except wrappers now that the hamburger selector fix
  makes the operations reliable.

build_nightly.yml:
- Split single job into build + release. The release job targets the
  production GitHub Environment so maintainers receive an approval request
  before the version bump and GitHub release are published.
- Release is now published (not draft) once approved.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
….json diff

icomoon_build_githubless.py: when devicon.json has no icons absent from
icomoon.json, return cleanly (exit 0) instead of calling sys.exit with a
message string (which exits 1 and triggers a false build-failure alert).

build_nightly.yml: change build_ok to require that icomoon.json was actually
modified during the run. The build script only writes to icomoon.json when new
icons are processed, so a clean git diff on that file is a reliable signal
that something was built. This prevents a version bump + release when commits
touch icons/ but contain no new icons (e.g. SVG attribute tweaks).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@Snailedlt

Copy link
Copy Markdown
Owner Author

Superseded by #68, which has the same migration without the fork-testing commits. Keeping the branch for reference for now.

@Snailedlt Snailedlt closed this Oct 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant