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

Update version for 0.2.0 release. #20

Merged
merged 3 commits into from
Oct 10, 2024
Merged

Conversation

davemarco
Copy link
Contributor

@davemarco davemarco commented Oct 10, 2024

Description

Update version since last commit had a breaking change for log viewer.

Summary by CodeRabbit

  • Chores
    • Updated project version from 0.1.0 to 0.2.0 in package.json and CMakeLists.txt.
    • Defined Boost library version as 1.85.0.
    • Set executable name for generated JavaScript and WebAssembly files to "ClpFfiJs".
    • Configured C++ standard to C++20 and adjusted build settings.

Copy link

coderabbitai bot commented Oct 10, 2024

Walkthrough

The package.json file for the project clp-ffi-js has been updated to reflect a new version number, changing from 0.1.0 to 0.2.0. The CMakeLists.txt file has been modified to update the project version to 0.2.0, specify the Boost library version as 1.85.0, set the executable name for generated files to ClpFfiJs, enforce the C++ standard to C++20, and adjust various build configurations and source file organization.

Changes

File Change Summary
package.json Version updated from 0.1.0 to 0.2.0
CMakeLists.txt Project version updated to 0.2.0, Boost version set to 1.85.0, executable name set to ClpFfiJs, C++ standard set to C++20, and various build configurations adjusted.

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 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.

@@ -1,6 +1,6 @@
{
"name": "clp-ffi-js",
"version": "0.1.0",
"version": "0.2.0",
Copy link
Collaborator

Choose a reason for hiding this comment

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

@kirkrodrigues I'm not too sure about our conventions - do we need to update the version number in

VERSION 0.1.0
as well?

Copy link
Member

Choose a reason for hiding this comment

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

I guess we should, yeah. One day we can hopefully make one depend on the other so we don't have duplicates.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Okay I just changed.

junhaoliao
junhaoliao previously approved these changes Oct 10, 2024
Copy link
Collaborator

@junhaoliao junhaoliao left a comment

Choose a reason for hiding this comment

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

lgtm as updating the "version" in the package.json file should be sufficient for the next release. For the PR title, how about:

Update version for 0.2.0 release.

@davemarco davemarco changed the title Update minor version to 0.2.0. Update version for 0.2.0 release. Oct 10, 2024
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: 0

🧹 Outside diff range and nitpick comments (2)
CMakeLists.txt (2)

Inconsistent Executable Names Detected

The executable name "ClpFfiJs" is not used consistently throughout the project. The following files contain variations:

  • src/clp_ffi_js/ir/StreamReaderDataContext.hpp
  • src/clp_ffi_js/ir/StreamReader.hpp
  • src/clp_ffi_js/constants.hpp
  • src/clp_ffi_js/ir/LogEventWithLevel.hpp

Please ensure that "ClpFfiJs" is used uniformly to maintain project consistency and avoid potential build issues.

🔗 Analysis chain

Line range hint 54-61: Executable name setting and C++20 standard update look good.

Setting the executable name to "ClpFfiJs" and updating the C++ standard to C++20 are positive changes for consistency and modernization. However, it's crucial to ensure that:

  1. The new executable name is used consistently throughout the project.
  2. All parts of the project are compatible with C++20.
  3. The development team is aware of and prepared to use C++20 features.

To verify these changes, you can run the following script:


Shell Script Errors Detected

The previous script failed to recognize .hpp files due to an unsupported file type specification. Please run the corrected script below to ensure comprehensive verification of the executable name consistency and C++20 compatibility:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check for consistent use of the new executable name and C++20 compatibility.

# Test 1: Check for consistent use of the new executable name
echo "Checking for consistent use of ClpFfiJs..."
inconsistent_names=$(rg -i 'clp.*ffi.*js' --type cmake --type cpp --type hpp | grep -v 'ClpFfiJs')
if [ -n "$inconsistent_names" ]; then
    echo "Warning: Inconsistent executable names found:"
    echo "$inconsistent_names"
else
    echo "Executable name is used consistently in the project."
fi

# Test 2: Check for C++20 compatibility
echo "Checking for C++20 compatibility..."
incompatible_features=$(rg -i '(c\+\+11|c\+\+14|c\+\+17)' --type cmake --type cpp --type hpp)
if [ -n "$incompatible_features" ]; then
    echo "Warning: Potential C++20 incompatibilities found:"
    echo "$incompatible_features"
else
    echo "No obvious C++20 incompatibilities found."
fi

Length of output: 669


Script:

#!/bin/bash
# Description: Check for consistent use of the new executable name and C++20 compatibility.

# Test 1: Check for consistent use of the new executable name
echo "Checking for consistent use of ClpFfiJs..."
inconsistent_names=$(rg -i 'clp.*ffi.*js' --type cmake --type cpp -g '*.hpp' | grep -v 'ClpFfiJs')
if [ -n "$inconsistent_names" ]; then
    echo "Warning: Inconsistent executable names found:"
    echo "$inconsistent_names"
else
    echo "Executable name is used consistently in the project."
fi

# Test 2: Check for C++20 compatibility
echo "Checking for C++20 compatibility..."
incompatible_features=$(rg -i '(c\+\+11|c\+\+14|c\+\+17)' --type cmake --type cpp -g '*.hpp')
if [ -n "$incompatible_features" ]; then
    echo "Warning: Potential C++20 incompatibilities found:"
    echo "$incompatible_features"
else
    echo "No obvious C++20 incompatibilities found."
fi

Length of output: 7540


Boost Version Outdated

The project is currently using Boost version 1.85.0, whereas the latest available version is 1.86.0. It is recommended to update to the latest version to leverage new features, improvements, and important bug fixes.

🔗 Analysis chain

Line range hint 37-52: Boost version update and CMake policy addition look good.

The Boost library version has been updated to 1.85.0, and the corresponding download URL has been adjusted. The addition of the CMake policy check for CMP0135 is a good practice for ensuring compatibility with newer CMake versions.

However, it's important to verify:

  1. Is this Boost version compatible with all parts of the project?
  2. Is this the latest stable version of Boost?

To verify the Boost version, you can run the following script:


To address the issues identified:

  1. Boost Version Outdated: The project is currently using Boost version 1.85.0, whereas the latest available version is 1.86.0. It's recommended to update to the latest version to benefit from the latest features and fixes.

  2. Incomplete Consistency Check: The initial consistency check failed to process .hpp files due to an unrecognized file type. To ensure all relevant files are checked, we need to update the script.

Please run the following updated script to verify Boost version details comprehensively:


To ensure the Boost version is up-to-date and consistently used across the project, please run the following updated script:


To accurately verify the Boost version consistency across all relevant files, please run the following updated script:

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Check if 1.85.0 is the latest Boost version and if it's used consistently in the project.

# Test 1: Check if 1.85.0 is the latest Boost version
echo "Checking latest Boost version..."
latest_boost_version=$(curl -s https://www.boost.org/users/download/ | grep -oP 'Version \K\d+\.\d+\.\d+' | head -n 1)
echo "Latest Boost version: $latest_boost_version"
if [ "$latest_boost_version" != "1.85.0" ]; then
    echo "Warning: The project is not using the latest Boost version."
fi

# Test 2: Check if the Boost version is used consistently in the project
echo "Checking Boost version consistency..."
inconsistent_versions=$(rg -i 'boost.*version' --type cmake --type cpp --type hpp | grep -v '1.85.0')
if [ -n "$inconsistent_versions" ]; then
    echo "Warning: Inconsistent Boost versions found:"
    echo "$inconsistent_versions"
else
    echo "Boost version is used consistently in the project."
fi

Length of output: 773


Script:

#!/bin/bash
# Description: Check if 1.85.0 is the latest Boost version and verify its consistent usage across the project.

# Test 1: Check if 1.85.0 is the latest Boost version
echo "Checking latest Boost version..."
latest_boost_version=$(curl -s https://www.boost.org/users/download/ | grep -oP 'Version \K\d+\.\d+\.\d+' | head -n 1)
echo "Latest Boost version: $latest_boost_version"
if [ "$latest_boost_version" != "1.85.0" ]; then
    echo "Warning: The project is not using the latest Boost version."
fi

# Test 2: Check if the Boost version is used consistently in the project
echo "Checking Boost version consistency..."
inconsistent_versions=$(rg -i 'boost.*version' --type cmake --type cpp --type hpp | grep -v '1.85.0')
if [ -n "$inconsistent_versions" ]; then
    echo "Warning: Inconsistent Boost versions found:"
    echo "$inconsistent_versions"
else
    echo "Boost version is used consistently in the project."
fi

Length of output: 773


Script:

#!/bin/bash
# Description: Check if 1.85.0 is the latest Boost version and verify its consistent usage across the project.

# Test 1: Check if 1.85.0 is the latest Boost version
echo "Checking latest Boost version..."
latest_boost_version=$(curl -s https://www.boost.org/users/download/ | grep -oP 'Version \K\d+\.\d+\.\d+' | head -n 1)
echo "Latest Boost version: $latest_boost_version"
if [ "$latest_boost_version" != "1.85.0" ]; then
    echo "Warning: The project is not using the latest Boost version."
fi

# Test 2: Check if the Boost version is used consistently in the project
echo "Checking Boost version consistency..."
inconsistent_versions=$(rg -i 'boost.*version' --type cmake --type cpp --type hpp --type header | grep -v '1.85.0')
if [ -n "$inconsistent_versions" ]; then
    echo "Warning: Inconsistent Boost versions found:"
    echo "$inconsistent_versions"
else
    echo "Boost version is used consistently in the project."
fi

Length of output: 787


Script:

#!/bin/bash
# Description: Check if 1.85.0 is the latest Boost version and verify its consistent usage across the project.

# Test 1: Check if 1.85.0 is the latest Boost version
echo "Checking latest Boost version..."
latest_boost_version=$(curl -s https://www.boost.org/users/download/ | grep -oP 'Version \K\d+\.\d+\.\d+' | head -n 1)
echo "Latest Boost version: $latest_boost_version"
if [ "$latest_boost_version" != "1.85.0" ]; then
    echo "Warning: The project is not using the latest Boost version."
fi

# Test 2: Check if the Boost version is used consistently in the project
echo "Checking Boost version consistency..."
inconsistent_versions=$(rg -i 'boost.*version' --type cmake --type cpp --glob '*.hpp' | grep -v '1.85.0')
if [ -n "$inconsistent_versions" ]; then
    echo "Warning: Inconsistent Boost versions found:"
    echo "$inconsistent_versions"
else
    echo "Boost version is used consistently in the project."
fi

Length of output: 749

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 6bd30cf and 9c8573b.

📒 Files selected for processing (1)
  • CMakeLists.txt (1 hunks)
🧰 Additional context used
🔇 Additional comments (1)
CMakeLists.txt (1)

17-17: Version update looks good.

The project version has been correctly updated to 0.2.0, which aligns with the PR objectives and follows semantic versioning principles. This update is appropriate given the breaking change mentioned in the PR description.

@davemarco davemarco merged commit e4fda3e into y-scope:main Oct 10, 2024
3 checks passed
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.

3 participants