Skip to content

Snowpylot-bump#49

Merged
pillowbeast merged 2 commits into
mainfrom
snowpylot-bump
Apr 20, 2026
Merged

Snowpylot-bump#49
pillowbeast merged 2 commits into
mainfrom
snowpylot-bump

Conversation

@pillowbeast

@pillowbeast pillowbeast commented Apr 20, 2026

Copy link
Copy Markdown
Collaborator

Bumped Snowpylot Version

Summary by CodeRabbit

Release Notes - Version 3.1.6

  • Chores
    • Package version updated to 3.1.6 across all configuration files and documentation
    • Snowpylot dependency migrated from Git-based pinned version to PyPI-based versioned requirement (≥1.1.5)
    • Release workflow enhanced with verbose output during package publication process

Copilot AI review requested due to automatic review settings April 20, 2026 13:45
@coderabbitai

coderabbitai Bot commented Apr 20, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

Version release for package 3.1.6 across metadata files, replacing snowpylot's pinned Git dependency with a versioned PyPI requirement (>=1.1.5), and adding verbose output to the release workflow.

Changes

Cohort / File(s) Summary
Version Metadata Updates
CITATION.cff, demo/demo.ipynb, src/weac/__init__.py
Updated version strings from 3.1.5 to 3.1.6 across citation, documentation, and package initialization files.
Project Configuration & Dependencies
pyproject.toml
Bumped project version to 3.1.6, updated bumpversion configuration, and replaced pinned Git-based snowpylot dependency with versioned PyPI requirement snowpylot>=1.1.5.
Release Workflow
.github/workflows/release.yml
Added --verbose flag to uv run twine upload dist/* command for more detailed PyPI upload output.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • Bump version 3.0.2 #33: Performs coordinated version bumps across the same metadata files (CITATION.cff, demo notebook, pyproject.toml, package init).
  • Bump version: 2.6.4 → 3.0.0 #27: Updates package version and modifies the same release-related files in a similar coordinated manner.
  • Packaging/hotfix #29: Involves packaging metadata updates and version bumping in overlapping file sets.
🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning The title 'Snowpylot-bump' refers to only one aspect of the changeset (the snowpylot dependency update) but does not capture the main change, which is a version bump to 3.1.6 affecting multiple files. Consider a more comprehensive title like 'Bump version to 3.1.6 and update snowpylot dependency' to better reflect all significant changes in the changeset.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
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 docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch snowpylot-bump

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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@pyproject.toml`:
- Line 26: Update the unbounded dependency spec for snowpylot to use a
compatible upper bound (e.g. change "snowpylot>=1.1.5" to a caret/range-style
pin like "snowpylot>=1.1.5,<2.0.0" or "snowpylot~=1.1.5") in pyproject.toml so
major breaking releases are excluded; follow the same pinning style used for
numpy (e.g. numpy>=2.3.5,<2.4.0) to protect code that depends on snowpylot APIs
referenced in src/weac/utils/snowpilot_parser.py (caaml_parser,
snowpylot.layer.Layer, snowpylot.snow_pit.SnowPit,
snowpylot.snow_profile.DensityObs, and tuple-shaped attributes like
thickness/depth_top/grain_form_primary.grain_size_avg).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 3bf7b14e-c7b5-4dd2-9492-d3f0d7522c0e

📥 Commits

Reviewing files that changed from the base of the PR and between 72062a5 and 7103c75.

⛔ Files ignored due to path filters (1)
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (5)
  • .github/workflows/release.yml
  • CITATION.cff
  • demo/demo.ipynb
  • pyproject.toml
  • src/weac/__init__.py

Comment thread pyproject.toml
"pydantic>=2.11.7",
# Required for SLF CAAML parsing; can upgrade once version >=1.1.5 is released
"snowpylot @ git+https://github.com/connellymk/snowpylot.git@e1a0d7c3f16a05ea97f75e97bdacece86ac4704b",
"snowpylot>=1.1.5",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick | 🔵 Trivial

Consider adding an upper bound on snowpylot.

The spec snowpylot>=1.1.5 is unbounded, so any future 2.x (potentially breaking) release will be accepted at install time. The WEAC codebase depends on a fairly specific surface of the snowpylot API (caaml_parser, snowpylot.layer.Layer, snowpylot.snow_pit.SnowPit, snowpylot.snow_profile.DensityObs, plus tuple-shaped attributes like thickness, depth_top, grain_form_primary.grain_size_avg, etc. — see src/weac/utils/snowpilot_parser.py), which makes it vulnerable to silent breakage on a major bump.

Given the other pinning style in this file (e.g. numpy>=2.3.5,<2.4.0), a compatible-range constraint would be safer:

📦 Proposed constraint
-    "snowpylot>=1.1.5",
+    "snowpylot>=1.1.5,<2",
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
"snowpylot>=1.1.5",
"snowpylot>=1.1.5,<2",
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@pyproject.toml` at line 26, Update the unbounded dependency spec for
snowpylot to use a compatible upper bound (e.g. change "snowpylot>=1.1.5" to a
caret/range-style pin like "snowpylot>=1.1.5,<2.0.0" or "snowpylot~=1.1.5") in
pyproject.toml so major breaking releases are excluded; follow the same pinning
style used for numpy (e.g. numpy>=2.3.5,<2.4.0) to protect code that depends on
snowpylot APIs referenced in src/weac/utils/snowpilot_parser.py (caaml_parser,
snowpylot.layer.Layer, snowpylot.snow_pit.SnowPit,
snowpylot.snow_profile.DensityObs, and tuple-shaped attributes like
thickness/depth_top/grain_form_primary.grain_size_avg).

@pillowbeast pillowbeast merged commit bfa7230 into main Apr 20, 2026
9 checks passed
@pillowbeast pillowbeast deleted the snowpylot-bump branch April 20, 2026 13:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Bumps WEAC to v3.1.6 and switches the snowpylot dependency from a git-pinned revision to the published PyPI release, aligning packaging and lockfile metadata for a new release.

Changes:

  • Update WEAC version from 3.1.5 → 3.1.6 across package metadata and demo notebook text.
  • Replace snowpylot git dependency with snowpylot>=1.1.5 from PyPI and regenerate uv.lock.
  • Increase verbosity of the PyPI publish step in the GitHub Actions release workflow.

Reviewed changes

Copilot reviewed 5 out of 6 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
uv.lock Locks snowpylot to PyPI distribution metadata for v1.1.5 (sdist/wheel) instead of a git source.
src/weac/init.py Bumps library __version__ to 3.1.6.
pyproject.toml Bumps project version and updates dependency spec to snowpylot>=1.1.5.
demo/demo.ipynb Updates referenced release version text to 3.1.6.
CITATION.cff Updates citation version to 3.1.6 (but leaves release date unchanged).
.github/workflows/release.yml Adds --verbose to twine upload in the release workflow.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CITATION.cff
orcid: "https://orcid.org/0000-0001-8320-8672"
version: 3.1.5
version: 3.1.6
date-released: 2021-12-30
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
run: uv run twine upload dist/*
run: uv run twine upload dist/* --verbose
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