Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: release v0.8.0 #189

Closed
wants to merge 1 commit into from
Closed

chore: release v0.8.0 #189

wants to merge 1 commit into from

Conversation

sd2k
Copy link
Collaborator

@sd2k sd2k commented Dec 9, 2024

🤖 New release

  • augurs: 0.7.0 -> 0.8.0
  • augurs-changepoint: 0.7.0 -> 0.8.0
  • augurs-core: 0.7.0 -> 0.8.0
  • augurs-clustering: 0.7.0 -> 0.8.0
  • augurs-dtw: 0.7.0 -> 0.8.0
  • augurs-ets: 0.7.0 -> 0.8.0
  • augurs-mstl: 0.7.0 -> 0.8.0
  • augurs-forecaster: 0.7.0 -> 0.8.0 (⚠️ API breaking changes)
  • augurs-outlier: 0.7.0 -> 0.8.0
  • augurs-prophet: 0.7.0 -> 0.8.0 (✓ API compatible changes)
  • augurs-seasons: 0.7.0 -> 0.8.0

⚠️ augurs-forecaster breaking changes

--- failure enum_marked_non_exhaustive: enum marked #[non_exhaustive] ---

Description:
A public enum has been marked #[non_exhaustive]. Pattern-matching on it outside of its crate must now include a wildcard pattern like `_`, or it will fail to compile.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#attr-adding-non-exhaustive
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/enum_marked_non_exhaustive.ron

Failed in:
  enum Transform in /tmp/.tmpjdcWYF/augurs/crates/augurs-forecaster/src/transforms.rs:48
  enum Transform in /tmp/.tmpjdcWYF/augurs/crates/augurs-forecaster/src/transforms.rs:48
Changelog

augurs

0.6.0 - 2024-11-08

Added

  • add wasmtime based optimizer for dependency-free Rust impl

augurs-changepoint

0.7.0 - 2024-11-25

Other

  • update Cargo.toml dependencies

augurs-core

0.5.1 - 2024-10-24

Other

  • define lints in Cargo.toml instead of each crate's lib.rs (#138)

augurs-clustering

0.5.2 - 2024-10-25

Other

  • add benchmark for Prophet (#140)

augurs-dtw

0.6.0 - 2024-11-08

Added

  • [breaking] split JS package into separate crates (#149)

augurs-ets

0.7.0 - 2024-11-25

Other

  • update Cargo.toml dependencies

augurs-mstl

0.7.0 - 2024-11-25

Other

  • update Cargo.toml dependencies

augurs-forecaster

0.8.0 - 2024-12-16

Added

Fixed

Other

augurs-outlier

0.7.0 - 2024-11-25

Other

  • update Cargo.toml dependencies

augurs-prophet

0.8.0 - 2024-12-16

Added

Fixed

Other

augurs-seasons

0.7.0 - 2024-11-25

Other

  • update Cargo.toml dependencies


This PR was generated with release-plz.

Summary by CodeRabbit

  • New Features

    • Updated workspace package version to 0.8.0, ensuring consistency across dependencies.
    • Added a Forecaster wrapper for Prophet in version 0.8.0.
    • Introduced a 'transforms' JavaScript crate to the augurs JS bindings.
    • Added power transformation logic to forecaster transforms.
  • Bug Fixes

    • Fixed explicit link to a method in the chrono library.
    • Made Transform enum non-exhaustive.
  • Documentation

    • Updated changelogs for versions 0.8.0 and 0.7.0, detailing significant changes and fixes.

Copy link
Contributor

coderabbitai bot commented Dec 9, 2024

Caution

Review failed

The pull request is closed.

Walkthrough

The pull request includes updates to the Cargo.toml file, where the workspace package version has been incremented from 0.7.0 to 0.8.0, along with similar updates for all workspace dependencies. Each dependency listed under [workspace.dependencies] has been updated from version 0.7.0 to 0.8.0. Additionally, the CHANGELOG.md for the augurs-prophet and augurs-forecaster crates has been modified to reflect the new version 0.8.0, detailing updates to dependencies and previous version entries.

Changes

File Change Summary
Cargo.toml Updated workspace package version from 0.7.0 to 0.8.0. Updated all dependencies from 0.7.0 to 0.8.0.
crates/augurs-prophet/CHANGELOG.md Added entry for version 0.8.0, including new feature and dependency updates.
crates/augurs-forecaster/CHANGELOG.md Added entry for version 0.8.0, highlighting new power transformation logic.

Possibly related PRs

🐇 In the garden, we hop with glee,
Versions updated, oh what a spree!
Dependencies aligned, all in a row,
With 0.8.0, we’re ready to go!
Changelogs sing of changes so bright,
Hopping along, everything feels right! 🌼


📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1399b96 and a421dcd.

📒 Files selected for processing (3)
  • Cargo.toml (2 hunks)
  • crates/augurs-forecaster/CHANGELOG.md (1 hunks)
  • crates/augurs-prophet/CHANGELOG.md (1 hunks)

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR. (Beta)
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@github-actions github-actions bot force-pushed the release-plz-2024-12-09T16-33-29Z branch 3 times, most recently from d1b5600 to 5dbd1b3 Compare December 10, 2024 16:54
@sd2k sd2k changed the title chore: release v0.7.1 chore: release v0.8.0 Dec 11, 2024
@github-actions github-actions bot force-pushed the release-plz-2024-12-09T16-33-29Z branch from 5dbd1b3 to 9804604 Compare December 11, 2024 08:36
Copy link
Contributor

@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: 0

🧹 Outside diff range and nitpick comments (1)
crates/augurs-prophet/CHANGELOG.md (1)

14-14: Consider documenting the impact of the Forecaster wrapper

While the addition of the Forecaster wrapper is noted, it would be helpful to briefly describe its purpose and impact.

Consider expanding the changelog entry to include a brief description:

- add Forecaster wrapper for Prophet (#191)
+ add Forecaster wrapper for Prophet to provide a unified forecasting interface (#191)
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Reviewing files that changed from the base of the PR and between 5dbd1b3 and 9804604.

📒 Files selected for processing (3)
  • Cargo.toml (2 hunks)
  • crates/augurs-forecaster/CHANGELOG.md (1 hunks)
  • crates/augurs-prophet/CHANGELOG.md (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • crates/augurs-forecaster/CHANGELOG.md
🔇 Additional comments (4)
Cargo.toml (2)

21-21: LGTM: Workspace package version updated to 0.8.0

The workspace package version has been correctly updated to 0.8.0.


32-41: Verify breaking changes in augurs-forecaster

While the version updates are consistent across all packages, the PR objectives mention breaking changes in augurs-forecaster due to new enum variants. This warrants special attention for downstream dependencies.

Let's check for any dependent packages that might be affected:

crates/augurs-prophet/CHANGELOG.md (2)

10-22: LGTM: Well-structured changelog entry for 0.8.0

The changelog entry follows the proper format and includes all necessary sections with appropriate PR references.


22-22: Verify compatibility with updated statrs dependency

The update of statrs from 0.17.1 to 0.18.0 should be verified for any breaking changes.

Let's check for any potential breaking changes:

✅ Verification successful

Dependency update appears safe to proceed

The codebase uses only basic distribution constructors (new()) and sampling methods from statrs, specifically for Normal, Poisson, and Laplace distributions. These are fundamental statistical distributions with stable APIs that are unlikely to have breaking changes. The usage is straightforward and defensive with proper error handling through expect(). The update from 0.17.1 to 0.18.0 is a minor version bump, which should maintain backward compatibility according to semver.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for statrs usage in the codebase
rg "use.*statrs|from.*statrs"

# Look for any potential breaking changes in statrs 0.18.0
gh api repos/statrs-dev/statrs/releases/tags/v0.18.0 --jq .body

Length of output: 354


Script:

#!/bin/bash
# Let's check the actual usage of statrs in the code
rg -A 5 "statrs" crates/augurs-prophet/src/prophet/predict.rs

# Let's also check the Cargo.toml to see the dependency specification
cat crates/augurs-prophet/Cargo.toml

Length of output: 3075


Script:

#!/bin/bash
# Let's check the actual implementation to see how statrs distributions are used
rg -A 10 "Laplace|Normal|Poisson" crates/augurs-prophet/src/prophet/predict.rs

# Let's also check git history for the specific change
git show --stat $(git log --format=%H -1 --grep="#187")

Length of output: 2124

@github-actions github-actions bot force-pushed the release-plz-2024-12-09T16-33-29Z branch 2 times, most recently from adde9d2 to 2d9c11b Compare December 12, 2024 08:55
Copy link
Contributor

@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: 2

🧹 Outside diff range and nitpick comments (1)
crates/augurs-forecaster/CHANGELOG.md (1)

21-21: Consider moving power transformation entry to Added section.

The addition of power transformation logic appears to be a new feature and would be more appropriate under the "Added" section rather than "Other".

Consider moving this entry to the "Added" section to better reflect the nature of the change.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between adde9d2 and 2d9c11b.

📒 Files selected for processing (3)
  • Cargo.toml (2 hunks)
  • crates/augurs-forecaster/CHANGELOG.md (1 hunks)
  • crates/augurs-prophet/CHANGELOG.md (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
  • Cargo.toml
  • crates/augurs-prophet/CHANGELOG.md
🔇 Additional comments (1)
crates/augurs-forecaster/CHANGELOG.md (1)

9-10: LGTM: Version header and comparison link are correctly formatted.

The version header follows the Keep a Changelog format and includes a proper comparison link.

Comment on lines +11 to +14
### Added

- add 'transforms' JS crate and include in augurs JS bindings (#195)

Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Document breaking changes in the Added section.

The PR objectives mention that augurs-forecaster has breaking changes due to a non-exhaustive enum. This should be clearly marked as breaking in the changelog.

Apply this diff to clearly indicate the breaking change:

 ### Added
 
- - add 'transforms' JS crate and include in augurs JS bindings (#195)
+ - [**breaking**] add 'transforms' JS crate and include in augurs JS bindings (#195)
📝 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
### Added
- add 'transforms' JS crate and include in augurs JS bindings (#195)
### Added
- [**breaking**] add 'transforms' JS crate and include in augurs JS bindings (#195)


### Fixed

- make Transform enum non-exhaustive (#194)
Copy link
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Document impact of non-exhaustive Transform enum.

The change to make Transform enum non-exhaustive is a breaking change that requires pattern matching to include a wildcard pattern. This impact should be documented to help users update their code.

Apply this diff to add migration instructions:

- - make Transform enum non-exhaustive (#194)
+ - [**breaking**] make Transform enum non-exhaustive (#194) - requires adding a wildcard pattern (`_`) to Transform enum matches
📝 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
- make Transform enum non-exhaustive (#194)
- [**breaking**] make Transform enum non-exhaustive (#194) - requires adding a wildcard pattern (`_`) to Transform enum matches

@github-actions github-actions bot force-pushed the release-plz-2024-12-09T16-33-29Z branch from 2d9c11b to 92423b5 Compare December 12, 2024 10:30
Copy link
Contributor

@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

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2d9c11b and 92423b5.

📒 Files selected for processing (3)
  • Cargo.toml (2 hunks)
  • crates/augurs-forecaster/CHANGELOG.md (1 hunks)
  • crates/augurs-prophet/CHANGELOG.md (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
  • Cargo.toml
  • crates/augurs-prophet/CHANGELOG.md
🔇 Additional comments (3)
crates/augurs-forecaster/CHANGELOG.md (3)

9-10: LGTM: Version entry follows the Keep a Changelog format.

The version entry and GitHub comparison link are correctly formatted.


11-14: Document breaking changes in the Added section.

The PR objectives mention that augurs-forecaster has breaking changes. This should be clearly marked as breaking in the changelog.


15-17: Document impact of non-exhaustive Transform enum.

The change to make Transform enum non-exhaustive is a breaking change that requires pattern matching to include a wildcard pattern. This impact should be documented to help users update their code.

Comment on lines +19 to +22
### Other

- precalculate offset and scale factor for min-max scale transformer (#196)
- Add power transformation logic to forecaster transforms ([#185](https://github.com/grafana/augurs/pull/185))
Copy link
Contributor

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion

Improve changelog organization by properly categorizing changes.

The entries in the "Other" section appear to be functional changes that should be categorized more specifically:

  • "precalculate offset..." is a performance enhancement that should go under "Changed" or "Fixed"
  • "Add power transformation..." is a new feature that should go under "Added"

Apply this diff to reorganize the changes:

 ### Added
 - add 'transforms' JS crate and include in augurs JS bindings (#195)
+- Add power transformation logic to forecaster transforms ([#185](https://github.com/grafana/augurs/pull/185))
 
-### Fixed
+### Changed
 - make Transform enum non-exhaustive (#194)
+- precalculate offset and scale factor for min-max scale transformer (#196)
-
-### Other
-
-- precalculate offset and scale factor for min-max scale transformer (#196)
-- Add power transformation logic to forecaster transforms ([#185](https://github.com/grafana/augurs/pull/185))
📝 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
### Other
- precalculate offset and scale factor for min-max scale transformer (#196)
- Add power transformation logic to forecaster transforms ([#185](https://github.com/grafana/augurs/pull/185))
### Added
- add 'transforms' JS crate and include in augurs JS bindings (#195)
- Add power transformation logic to forecaster transforms ([#185](https://github.com/grafana/augurs/pull/185))
### Changed
- make Transform enum non-exhaustive (#194)
- precalculate offset and scale factor for min-max scale transformer (#196)

@sd2k
Copy link
Collaborator Author

sd2k commented Dec 12, 2024

Published a canary version of the JS package as @bsull/augurs@0.8.0-canary.0ca1b037

@github-actions github-actions bot force-pushed the release-plz-2024-12-09T16-33-29Z branch 2 times, most recently from 2314e0d to 1399b96 Compare December 16, 2024 10:41
@github-actions github-actions bot force-pushed the release-plz-2024-12-09T16-33-29Z branch from 1399b96 to a421dcd Compare December 16, 2024 10:56
@sd2k sd2k closed this Dec 16, 2024
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