-
Notifications
You must be signed in to change notification settings - Fork 43
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
spiff lib upgrade #1139
spiff lib upgrade #1139
Conversation
Warning Rate Limit Exceeded@jasquat has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 0 minutes and 0 seconds before requesting another review. How to resolve this issue?After the wait time has elapsed, a review can be triggered using the 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. WalkthroughThe recent updates to the spiffworkflow-backend focus on managing dependencies by downgrading Changes
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? TipsChatThere are 3 ways to chat with CodeRabbit:
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 as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
…rade # Conflicts: # spiffworkflow-backend/poetry.lock # spiffworkflow-backend/src/spiffworkflow_backend/services/process_instance_processor.py
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 3
Configuration used: .coderabbit.yaml
Files selected for processing (8)
- spiffworkflow-backend/poetry.lock (3 hunks)
- spiffworkflow-backend/pyproject.toml (2 hunks)
- spiffworkflow-backend/src/spiffworkflow_backend/models/message_instance.py (1 hunks)
- spiffworkflow-backend/src/spiffworkflow_backend/services/process_instance_processor.py (1 hunks)
- spiffworkflow-backend/src/spiffworkflow_backend/services/script_unit_test_runner.py (1 hunks)
- spiffworkflow-backend/tests/data/random_fact/random_fact_set.bpmn (1 hunks)
- spiffworkflow-backend/tests/spiffworkflow_backend/integration/test_json_file_data_store.py (1 hunks)
- spiffworkflow-backend/tests/spiffworkflow_backend/unit/test_process_instance_processor.py (1 hunks)
Files skipped from review due to trivial changes (1)
- spiffworkflow-backend/tests/spiffworkflow_backend/integration/test_json_file_data_store.py
Additional comments: 9
spiffworkflow-backend/tests/data/random_fact/random_fact_set.bpmn (1)
- 1-51: The BPMN process definition in
random_fact_set.bpmn
is well-structured and follows best practices for defining a simple process with a start event, a script task, and an end event. The use ofcamunda:inputOutput
andcamunda:inputParameter
in the script task is appropriate for defining input parameters, though it's worth noting that the parameterFact.type
is defined but not used within the script. This might be intentional for future use or an oversight. If it's not required, consider removing it to avoid confusion.spiffworkflow-backend/src/spiffworkflow_backend/models/message_instance.py (1)
- 117-117: Replacing
_evaluate
withenvironment.evaluate
in thepayload_matches_expected_values
method is a positive change that leverages the existingexpression_engine
's environment for evaluating expressions. This approach is more consistent and maintainable, ensuring that all evaluations use the same environment and evaluation logic. Ensure that theexpression_engine
and itsenvironment
are properly initialized and configured to handle the expressions used in correlation key retrieval.spiffworkflow-backend/pyproject.toml (2)
- 29-29: Updating the
SpiffWorkflow
dependency to track themain
branch instead of a specific commit is a significant change that implies a desire to always use the latest version. While this can ensure access to the newest features and fixes, it also introduces the risk of instability if breaking changes or bugs are introduced in themain
branch. Consider whether this aligns with the project's stability and reliability requirements. If stability is a priority, you might want to pin the dependency to a specific release or commit that has been tested and verified.Consider the implications of tracking the
main
branch for theSpiffWorkflow
dependency and evaluate whether a more stable approach, such as pinning to a specific release, would be more appropriate for the project's needs.
- 107-107: Downgrading
pytest-xdist
to version3.3.1
due to compatibility issues with versions3.4
and higher is a prudent decision to ensure test suite stability. However, it's important to periodically review this decision and test newer versions ofpytest-xdist
as they are released. Future versions may resolve the compatibility issues, allowing you to benefit from new features and improvements.Periodically re-evaluate the compatibility of newer
pytest-xdist
versions to determine if the project can safely upgrade and take advantage of improvements.spiffworkflow-backend/tests/spiffworkflow_backend/unit/test_process_instance_processor.py (2)
- 34-51: The test method
test_script_engine_can_use_custom_scripts
is well-structured and correctly tests the functionality of using custom scripts within theProcessInstanceProcessor
. It follows best practices for unit testing by setting up the necessary environment, executing the process, and asserting the expected outcome.- 52-52: Given the extensive nature of the provided file and the detailed review required for each test method, I've demonstrated the review process with an initial test method. Each test method should be reviewed similarly, focusing on correctness, logic, syntax, performance, maintainability, and adherence to best practices. Ensure that each test method accurately reflects the intended functionality, uses appropriate assertions, and handles any setup or teardown operations cleanly.
spiffworkflow-backend/poetry.lock (3)
- 2219-2225: The downgrade of
pytest-xdist
from3.5.0
to3.3.1
is noted. While this change addresses compatibility issues, it's important to verify that this downgrade does not negatively impact the execution of parallel tests or introduce regressions with other dependencies.- 2977-2978: The update to point the
spiffworkflow
package to themain
branch is acknowledged. While this ensures access to the latest developments, consider implementing a strategy to mitigate potential risks associated with tracking themain
branch, such as specifying a more stable branch or tag for critical deployments.- 3454-3454: The update to the
content-hash
in themetadata
section is a standard procedure following the changes made to the dependencies. This ensures the integrity and consistency of the dependency graph.
spiffworkflow-backend/src/spiffworkflow_backend/services/process_instance_processor.py
Show resolved
Hide resolved
spiffworkflow-backend/src/spiffworkflow_backend/services/script_unit_test_runner.py
Outdated
Show resolved
Hide resolved
… variable w/ burnettk
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 0
Configuration used: .coderabbit.yaml
Files selected for processing (1)
- spiffworkflow-backend/src/spiffworkflow_backend/services/script_unit_test_runner.py (1 hunks)
Files skipped from review as they are similar to previous changes (1)
- spiffworkflow-backend/src/spiffworkflow_backend/services/script_unit_test_runner.py
upgrade spiff lib.
Summary by CodeRabbit
New Features
Bug Fixes
pytest-xdist
by downgrading its version.Refactor
TestJSONFileDataStore
toTestJsonFileDataStore
.Chores