Skip to content

Rafael/bump v2.5.0rc1#185

Merged
ricardoevvargas merged 40 commits intopetrobras:other_improvementsfrom
rafaelpadilla:rafael/bump_v2.4.0rc1
Apr 8, 2026
Merged

Rafael/bump v2.5.0rc1#185
ricardoevvargas merged 40 commits intopetrobras:other_improvementsfrom
rafaelpadilla:rafael/bump_v2.4.0rc1

Conversation

@rafaelpadilla
Copy link
Copy Markdown
Contributor

@rafaelpadilla rafaelpadilla commented Mar 27, 2026

⚠️ Review Order Notice

Besides new improvements, this PR includes the changes introduced in PR#181. It is recommended that the current PR be reviewed after PR#181.


Overview

This pull request introduces improvements focused on repository organization, versioning strategy, test stability, and observability of code quality.

Given the scope and impact of these changes, this pull request suggests a bump to v2.5.0.


Summary of Changes

1. Repository restructuring and notebook retrocompatibility

A comprehensive reorganization of the repository was performed to improve clarity, maintainability, and support boundaries for notebooks:

  • Notebook relocation and structure cleanup

    • Moved notebooks from 3W/docs/notebooks/3W/toolkit/demos/
    • Consolidated demo notebooks under 3W/dataset/demos/
    • Moved author-specific demos:
      • 3W/demos/AfranioMelo/3W/dataset/demos/AfranioMelo/
      • 3W/demos/AndreMachado/3W/dataset/demos/AndreMachado/
      • 3W/demos/yantavares/3W/dataset/demos/yantavares/
    • Renamed 3W/overviews/_baseline/3W/dataset/demos/_basic/
    • Renamed 3W/problems/3W/benchmarks/, for improved clarity and better understanding of its purpose.This folder will host all project benchmarks going forward. It is temporarily removed, as the existing benchmark will be rewritten and reintroduced in a new PR in the near future.
    • Removed directory: 3W/dataset/folds/
    • Restricted 3W/docs/ to .pdf files only
  • Retrocompatibility adjustments

    • Updated 3W/overviews/_baseline/main.ipynb (now 3W/dataset/demos/_basic/main.ipynb) to address the usage of the obsolete functions
    • Removed 3W/problems/01_binary_classifier_of_spurious_closure_of_dhsv/_baseline/main.ipynb for now. In a near future, we will reintroduce the DHV benchmark notebook under 3W/benchmarks/ using toolkit APIs, preserving original evaluation logic and outputs.
  • Notebook fixes

    • Notebook 3W/overviews/_baseline/main.ipynb (now 3W/dataset/demos/_basic/main.ipynb) was pointing to a deprecated function 'get_all_labels_and_files', which is now replaced with methods from the ParquetDataset` class
  • Notebook 3W/resources/introduction_to_3w_dataset_v2.0.0/introduction_to_3w_dataset_2.0.0.ipynb required nbformat package that was not included in project dependencies. Now nbformat will be added on the toolkit installation and this problem won't happen again.


2. Versioning strategy (Semantic Versioning)

A formal versioning strategy based on Semantic Versioning (SemVer) was defined and documented:

  • Introduced VERSIONING.md with clear guidelines for version bumps
  • Documented the three version streams used in the project
  • Updated README.md to reference the versioning guide
  • Established a consistent and transparent release process across the repository

3. Handling of missing metrics in sklearn_models

Defined and implemented consistent behavior for scenarios where requested evaluation metrics are not available in sklearn_models:

  • Standardized handling of missing metrics to avoid silent failures or ambiguous behavior
  • Improved robustness and predictability of model evaluation workflows

4. Code coverage integration (Coveralls)

Integrated Coveralls to improve visibility into test coverage:

  • Configured coverage reporting via GitHub Actions
  • Enabled pytest-cov to generate coverage.xml
  • Uploaded coverage reports automatically from CI
  • Added coverage badge to README.md

This change improves observability of code quality without impacting core library behavior.


Final Notes

These changes establish a stronger foundation for the project by:

  • Organizing and clarifying repository structure and responsibilities
  • Defining a clear and maintainable versioning strategy
  • Improving robustness of evaluation workflows
  • Increasing reliability of tests and CI processes
  • Enhancing visibility into code quality through coverage tracking

Together, these improvements contribute to a more maintainable, scalable, and transparent development process.

Thank you for reviewing this delivery.
🎉🥳🎊🚀✨



By creating this pull request, I confirm that I have read and fully accept and agree with one of the Petrobras' Contributor License Agreements (CLAs):

Our CLAs are based on the Apache Software Foundation's CLAs:

LuizaAndrade2025 and others added 30 commits March 1, 2026 15:59
…s_features and data_visualization/plot_multiple_series. Tests in tests/test_pipeline.py and tests/test_downloader.py ran without any warnings.
…add type checks, and preserve NaN plotting behavior.
Enable Coveralls integration and add coverage badge
[docs] Add versioning guide documentation
Exclude Jupyter notebooks from mypy and black checks
Update Notebook Structure & notebook support
@ricardoevvargas
Copy link
Copy Markdown
Collaborator

Hi, @rafaelpadilla.

I hope this PR will result in another significant contribution from the Federal University of Rio de Janeiro to the 3W Project.

We will evaluate it ASAP and will let you know here if we have any questions and/or requests for adjustments.

On behalf of the 3W Community, I thank you for this PR.

@ricardoevvargas ricardoevvargas added advance Suitable for advanced developers on hold PR or Issue in the backlog labels Mar 28, 2026
ricardoevvargas and others added 3 commits April 7, 2026 11:45
Although `load_data` returns Dict[str, DataFrame | Path], the "signal" key always holds a DataFrame, since it is produced by `read_parquet`. This change clarifies that invariant for mypy.
@ricardoevvargas ricardoevvargas changed the title Rafael/bump v2.4.0rc1 Rafael/bump v2.5.0rc1 Apr 7, 2026
@ricardoevvargas ricardoevvargas changed the base branch from main to other_improvements April 7, 2026 19:19
@rafaelpadilla
Copy link
Copy Markdown
Contributor Author

Hi @ricardoevvargas .

The points raised in this PR have been addressed and the related issues were fixed.
Please feel free to review whenever you have time.
Thanks! 🙏

@ricardoevvargas ricardoevvargas removed the on hold PR or Issue in the backlog label Apr 8, 2026
@ricardoevvargas
Copy link
Copy Markdown
Collaborator

Hi, @rafaelpadilla.

Thank you.

Once again and on behalf of the 3W Community, I thank you for this PR.

@ricardoevvargas ricardoevvargas merged commit 48dda73 into petrobras:other_improvements Apr 8, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

advance Suitable for advanced developers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants