Skip to content

Conversation

@ypriverol
Copy link
Contributor

@ypriverol ypriverol commented Jan 23, 2026

PR Type

Enhancement


Description

  • Remove unused statistics module with plotly dependency

  • Eliminate plotly from all dependency files

  • Reduce installation conflicts for users

  • Bump version to 0.0.12


Diagram Walkthrough

flowchart LR
  A["pridepy/statistics/"] -->|removed| B["Eliminate plotly dependency"]
  C["pyproject.toml"] -->|remove plotly| B
  D["requirements.txt"] -->|remove plotly| B
  E["environment.yml"] -->|remove plotly| B
  F["recipe/meta.yaml"] -->|remove plotly| B
  B -->|result| G["Cleaner dependencies"]
Loading

File Walkthrough

Relevant files
Enhancement
statistics.py
Remove unused statistics module entirely                                 

pridepy/statistics/statistics.py

  • Entire file removed (48 lines deleted)
  • Contained unused Statistics class with plotly-based plotting methods
  • Methods plot_monthly_submissions() and
    plot_submissions_by_instrument() were never integrated into CLI
+0/-48   
Dependencies
pyproject.toml
Remove plotly dependency and bump version                               

pyproject.toml

  • Remove plotly = "^5.18.0" dependency
  • Bump version from 0.0.11 to 0.0.12
  • Reduces dependency conflicts for users
+1/-2     
requirements.txt
Remove plotly from requirements                                                   

requirements.txt

  • Remove plotly from requirements list
  • Simplifies dependency management
+0/-1     
environment.yml
Remove plotly from conda environment                                         

environment.yml

  • Remove plotly from conda dependencies
  • Maintains consistency with other dependency files
+0/-1     
meta.yaml
Remove plotly and update conda recipe version                       

recipe/meta.yaml

  • Remove plotly~=5.22.0 from run requirements
  • Update version from 0.0.8 to 0.0.12
  • Aligns conda recipe with project dependencies
+1/-2     

Summary by CodeRabbit

Release Notes

  • Chores
    • Bumped version to 0.0.12
    • Removed Plotly dependency across all dependency configurations
    • Removed statistics module that provided submission analytics and chart generation

✏️ Tip: You can customize this high-level summary in your review settings.

claude and others added 4 commits January 23, 2026 09:47
The caret constraint (^5.18.0) was limiting plotly to <6.0.0, causing
dependency conflicts for users who want to use plotly 6.x. The codebase
only uses stable, basic plotly APIs (go.Bar and plotly.offline.plot)
that are compatible with both plotly 5.x and 6.x.

https://claude.ai/code/session_01VuwA6zF7mR9zPdgY2Fn8Nn
The statistics module was orphaned code that was never integrated into
the CLI or exported from the package. Removing it eliminates the plotly
dependency entirely, reducing install conflicts for users.

Removed:
- pridepy/statistics/ directory
- plotly from pyproject.toml, requirements.txt, environment.yml, recipe/meta.yaml

https://claude.ai/code/session_01VuwA6zF7mR9zPdgY2Fn8Nn
…y-W3MX1

Remove plotting capabilities of pridepy because they are not exposed on the commandline and not needed
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 23, 2026

📝 Walkthrough

Walkthrough

The PR removes the Plotly visualization library and the Statistics module that generated charts from PRIDE submission data across configuration and source files, simplifying dependencies and code.

Changes

Cohort / File(s) Summary
Dependency manifest files
environment.yml, pyproject.toml, recipe/meta.yaml, requirements.txt
Removed plotly dependency across all package management configurations. Version bumped to 0.0.12 in pyproject.toml and recipe/meta.yaml.
Statistics module
pridepy/statistics/statistics.py
Removed entire Statistics class (48 lines) including plot_monthly_submissions() and plot_submissions_by_instrument() methods that relied on Plotly for chart generation and API calls.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 Dependencies trimmed, the burden grows light,
Plotly charts fade from our codebase sight.
Simpler, cleaner, a leaner design—
Less is more when the branches align! ✨

🚥 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 'Remove plotting capabilities' directly matches the main change: removal of the entire Statistics module with Plotly-based visualization and all Plotly dependencies across multiple configuration files.
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

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.

@qodo-code-review
Copy link
Contributor

PR Compliance Guide 🔍

Below is a summary of compliance checks for this PR:

Security Compliance
🟢
No security concerns identified No security vulnerabilities detected by AI analysis. Human verification advised for critical code.
Ticket Compliance
🎫 No ticket provided
  • Create ticket/issue
Codebase Duplication Compliance
Codebase context is not defined

Follow the guide to enable codebase context checks.

Custom Compliance
🟢
Generic: Comprehensive Audit Trails

Objective: To create a detailed and reliable record of critical system actions for security analysis
and compliance.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Meaningful Naming and Self-Documenting Code

Objective: Ensure all identifiers clearly express their purpose and intent, making code
self-documenting

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Robust Error Handling and Edge Case Management

Objective: Ensure comprehensive error handling that provides meaningful context and graceful
degradation

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Error Handling

Objective: To prevent the leakage of sensitive system information through error messages while
providing sufficient detail for internal debugging.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Secure Logging Practices

Objective: To ensure logs are useful for debugging and auditing without exposing sensitive
information like PII, PHI, or cardholder data.

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Generic: Security-First Input Validation and Data Handling

Objective: Ensure all data inputs are validated, sanitized, and handled securely to prevent
vulnerabilities

Status: Passed

Learn more about managing compliance generic rules or creating your own custom rules

Compliance status legend 🟢 - Fully Compliant
🟡 - Partial Compliant
🔴 - Not Compliant
⚪ - Requires Further Human Verification
🏷️ - Compliance label

@qodo-code-review
Copy link
Contributor

PR Code Suggestions ✨

No code suggestions found for the PR.

@ypriverol ypriverol merged commit fcf736e into master Jan 23, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants