Skip to content

Add automatic workflows#3

Merged
dodu94 merged 4 commits intomainfrom
add-automatic-workflows
Feb 11, 2026
Merged

Add automatic workflows#3
dodu94 merged 4 commits intomainfrom
add-automatic-workflows

Conversation

@dodu94
Copy link
Member

@dodu94 dodu94 commented Feb 11, 2026

Now that the repo is public add:

  • codecoverage support
  • PyPi support
  • automatic testing and deploying

Summary by CodeRabbit

  • Chores

    • Added standardized GitHub issue templates (bug, feature, docs) and a pull request template
    • Added CI workflows for Linux and Windows testing (Python 3.10–3.13) and a release publish workflow
    • Enabled dynamic versioning and packaging config updates; updated .gitignore
  • Documentation

    • Updated README with PyPI installation, upgrade commands, and quickstart/GUI usage notes

@coderabbitai
Copy link

coderabbitai bot commented Feb 11, 2026

Warning

Rate limit exceeded

@dodu94 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 15 minutes and 45 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

Walkthrough

Adds GitHub issue and PR templates, new GitHub Actions workflows for Linux/Windows testing and package publish, enables setuptools_scm dynamic versioning in pyproject.toml, updates README installation guidance to use PyPI, and tweaks .gitignore to include generated version file.

Changes

Cohort / File(s) Summary
Issue Templates
.github/ISSUE_TEMPLATE/bug_report.md, .github/ISSUE_TEMPLATE/feature_request.md, .github/ISSUE_TEMPLATE/improve-documentation.md
Adds structured issue templates with YAML front matter and standardized sections for bug reports, feature requests, and documentation improvements.
Pull Request Template
.github/PULL_REQUEST_TEMPLATE.md
Adds a PR template with description, issue reference, change type checkboxes, and contributor checklist.
CI / Workflows
.github/workflows/AutomatedTests_linux.yml, .github/workflows/AutomatedTests_win.yml, .github/workflows/build_publish.yml
Adds Linux and Windows test workflows (Python 3.10–3.13) with pytest and coverage; adds release-triggered package build/publish workflow to PyPI.
Project config
pyproject.toml
Enables dynamic versioning (dynamic = ["version"]), activates [project.urls], enables setuptools_scm write_to (src/_version.py), and updates package-data key to em_interp.
Docs & packaging
README.md, .gitignore
README updated to prefer PyPI install and add GUI start example; .gitignore updated to include src/_version.py.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

🐰 I hopped through files with glee and cheer,
Templates, workflows—everything clear,
Versions now fetched from a tiny file,
Tests run on platforms across each mile,
PyPI awaits—oh what a year! 🥕

🚥 Pre-merge checks | ✅ 3
✅ 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 'Add automatic workflows' directly aligns with the PR objective to add automatic testing, deployment, and codecoverage workflows.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch add-automatic-workflows

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.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 7

🤖 Fix all issues with AI agents
In @.github/ISSUE_TEMPLATE/bug_report.md:
- Around line 26-29: The bug report template contains the wrong product name
("F4Enix version") in the Desktop section; update the text in
.github/ISSUE_TEMPLATE/bug_report.md so that the line reading "F4Enix version"
is replaced with "EM-interpolator version" (preserve surrounding formatting and
list items), and run a quick proofread of that file to catch any other
copy-paste artifacts.

In @.github/ISSUE_TEMPLATE/improve-documentation.md:
- Line 14: Capitalize the first word of the sentence "let us know if you ended
up finding the information you were looking for in another (unexpected) section
of the doc." by changing "let" to "Let" so the sentence begins with a capital
letter; locate that exact sentence in the document and update it accordingly
(ensure any trailing punctuation or spacing remains unchanged).

In @.github/workflows/AutomatedTests_linux.yml:
- Line 49: The pytest coverage invocation references the old package path
(--cov=src/f4enix); update that argument to the current source directory
(--cov=src/em_interp) in the GitHub Actions step that runs pytest so coverage is
collected from the renamed package (change the pytest command containing "pytest
--cov=src/f4enix --cov-config=".coveragerc" --cov-report xml" to use
--cov=src/em_interp).

In @.github/workflows/build_publish.yml:
- Around line 17-21: Replace the outdated actions/setup-python@v4 with
actions/setup-python@v5 in the workflow and ensure the checkout step uses a full
clone by adding fetch-depth: 0 to the actions/checkout step so setuptools_scm
can read full git history for correct versioning during python -m build; locate
the checkout and setup-python steps in the workflow (the entries currently
referencing "uses: actions/checkout@v4" and "uses: actions/setup-python@v4") and
update them accordingly.

In `@pyproject.toml`:
- Around line 34-35: The write_to path in pyproject.toml currently writes the
generated version file to src/_version.py which is outside the importable
package; update the [tool.setuptools_scm] write_to value to point inside the
package (e.g. src/em_interp/_version.py) so the generated _version.py is placed
next to the em_interp package and can be imported as from em_interp._version
import version; ensure the target directory/em_interp exists as a package so the
generated file will be included in the installed distribution.

In `@README.md`:
- Line 2: The Linux badge image URL in the README is pointing to the wrong
GitHub organization; update the badge image source so it matches the other
badges by replacing the org segment "Radiation-Transport" with "Fusion4Energy"
in the markdown line that starts with "[![Testing linux](" so the image URL and
link reference the same Fusion4Energy/EM-interpolator repository.
- Line 17: Update the README sentence that currently reads "and upgraded it to
the latest version with" to use the correct verb form "upgrade" (i.e., change
"upgraded" → "upgrade") so the phrase becomes "and upgrade it to the latest
version with"; locate this text in the README and replace the single word while
preserving the surrounding sentence structure.
🧹 Nitpick comments (3)
.github/workflows/AutomatedTests_win.yml (1)

6-9: Consider adding a push trigger for the main branch.

Currently CI only runs on pull requests. Post-merge breakage (e.g., from merge conflicts or direct pushes) won't be caught. Consider adding push: branches: [main] alongside the PR trigger for parity with typical CI setups.

Proposed change
 on:
-  # Triggers the workflow on push or pull request events but only for the master branch
   pull_request:
     branches: [main]
+  push:
+    branches: [main]
 
   # Allows you to run this workflow manually from the Actions tab
   workflow_dispatch:
.github/workflows/build_publish.yml (1)

28-31: The comment about SHA pinning is noted but not applied.

Lines 1–3 recommend pinning actions to a commit SHA, yet all actions are referenced by mutable tags (@v4, @release/v1). If the team wants supply-chain hardening, pin to SHAs. Otherwise, remove the misleading comment.

pyproject.toml (1)

29-32: Project URLs added — Documentation link points to the repository.

Consider updating the Documentation URL to point to actual documentation (e.g., a ReadTheDocs page) if/when one is available.

@codecov
Copy link

codecov bot commented Feb 11, 2026

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

ℹ️ You can also turn on project coverage checks and project coverage reporting on Pull Request comment

Thanks for integrating Codecov - We've got you covered ☂️

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In @.github/ISSUE_TEMPLATE/bug_report.md:
- Line 28: Update the project name capitalization in the template entry "-
em-interpolator version" to "EM-interpolator version" so the project name
matches the repository; locate the literal string "- em-interpolator version" in
the bug report template and replace it with "EM-interpolator version" to ensure
consistent naming across docs.

Copy link
Collaborator

@DrGarciaBlanco DrGarciaBlanco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated test added to project.
Now it's possible to report bugs or new features in the code.

@dodu94 dodu94 merged commit 6ada762 into main Feb 11, 2026
10 checks passed
@dodu94 dodu94 deleted the add-automatic-workflows branch February 11, 2026 13:06
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