Skip to content

Conversation

@spoorcc
Copy link
Contributor

@spoorcc spoorcc commented Jan 4, 2026

Reverts #912

gh releases ci is not where it should be, the uploading of artifacts is too strict and the orginal problem i was tryig to solve was a non-problem

Summary by CodeRabbit

  • Chores
    • Updated GitHub Actions workflows to use a dedicated release management action, replacing shell-based commands for improved consistency and reliability in the release automation pipeline.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Jan 4, 2026

Walkthrough

Two GitHub Actions workflow files are refactored to replace shell-based GitHub CLI commands (gh release upload and gh release create --draft) with the softprops/action-gh-release action for unified release artifact and draft release management. The release.yml workflow gains an explicit actions/checkout step.

Changes

Cohort / File(s) Summary
Release Workflow Refactoring
.github/workflows/build.yml, .github/workflows/release.yml
Both files transition from manual gh CLI commands to softprops/action-gh-release action for release operations. In build.yml, two installer and artifact upload steps now use the action instead of inline shell gh release upload calls. In release.yml, the draft release creation workflow is replaced with the action-based approach, and an actions/checkout step is prepended before setup-python. Configuration moved to action inputs (tag_name, files, draft, preserve_order, body_path).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

development, github_actions

Suggested reviewers

  • ben-edna

Pre-merge checks

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: reverting a previous commit that switched to official GitHub tools for release creation, which is confirmed by the file changes restoring previous shell-based release mechanisms.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 942039e and 8972196.

📒 Files selected for processing (2)
  • .github/workflows/build.yml
  • .github/workflows/release.yml
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-12-25T23:53:05.742Z
Learnt from: spoorcc
Repo: dfetch-org/dfetch PR: 861
File: .github/workflows/build.yml:120-125
Timestamp: 2025-12-25T23:53:05.742Z
Learning: When building macOS PKG installers with fpm in CI, account for the known issue (fpm #1996) where --prefix can be duplicated (e.g., /opt/dfetch becomes /opt/dfetch/opt/dfetch). In the workflow at .github/workflows/build.yml, verify install paths and PATH entries do not assume a single-prefix layout. Adjust packaging scripts or fpm arguments to normalize the final install location and update PATH references accordingly. Add a test step to validate the expected runtime paths after installation.

Applied to files:

  • .github/workflows/release.yml
  • .github/workflows/build.yml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (16)
  • GitHub Check: build / build (ubuntu-latest)
  • GitHub Check: build / build (windows-latest)
  • GitHub Check: build / build (macos-latest)
  • GitHub Check: Codacy Static Code Analysis
  • GitHub Check: run / run (ubuntu-latest, 3.12)
  • GitHub Check: run / run (windows-latest, 3.9)
  • GitHub Check: run / run (windows-latest, 3.10)
  • GitHub Check: run / run (windows-latest, 3.11)
  • GitHub Check: run / run (windows-latest, 3.13)
  • GitHub Check: run / run (windows-latest, 3.14)
  • GitHub Check: run / run (macos-latest, 3.9)
  • GitHub Check: run / run (macos-latest, 3.11)
  • GitHub Check: run / run (windows-latest, 3.12)
  • GitHub Check: run / test-cygwin
  • GitHub Check: test / test
  • GitHub Check: DevContainer Build & Test
🔇 Additional comments (4)
.github/workflows/release.yml (2)

78-86: LGTM - Release creation looks correct.

The switch to softprops/action-gh-release properly configures the draft release with tag name, description from generated notes, and the LICENSE file. The action version is appropriately pinned with SHA for security.


27-27: No changes needed to the checkout action.

The script/create_release_notes.py script only reads the CHANGELOG.rst file to extract the latest release section and write it to release_notes.txt. It performs no git operations, accesses no git history or tags, and does not use GitPython or subprocess calls to git. The default fetch-depth: 1 from the checkout action is sufficient for this workflow.

Likely an incorrect or invalid review comment.

.github/workflows/build.yml (2)

216-223: LGTM - Python artifact upload configured correctly.

The Python wheel and source distribution upload is properly configured with the same pattern as the installer uploads. The needs: build-whl dependency ensures the artifacts are built before upload, and preserve_order: true maintains file ordering.


105-119: This revert addresses a critical issue with untagged releases.

The previous commit (8378580) attempted to switch from gh release create to softprops/action-gh-release, but the action creates untagged releases, breaking the asset attachment mechanism. The concurrent upload pattern (three matrix jobs uploading to a single draft release via release_id) depends on properly tagged releases for the assets to be associated correctly. While softprops/action-gh-release is designed to handle concurrent uploads, the untagged release bug prevents assets from being attached to the intended release tag, which is why the revert was necessary.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@spoorcc spoorcc merged commit d553575 into main Jan 4, 2026
37 of 38 checks passed
@spoorcc spoorcc deleted the revert-912-fix-release-mechanism branch January 4, 2026 08:26
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.

2 participants