Skip to content

Conversation

@user27182
Copy link
Contributor

@user27182 user27182 commented Sep 27, 2025

AutoReport currently erroneously includes optional deps as required deps, e.g. from main:

import scooby
print(scooby.AutoReport('pyvista'))
--------------------------------------------------------------------------------
                      pyvista : 0.46.3
                   matplotlib : 3.10.6
                        numpy : 2.3.3
                       pillow : 11.3.0
                        pooch : 1.8.2
                       scooby : 0.1.dev225+g4f89e5d7b.d20250927
            typing-extensions : 4.15.0
                         vtk! : Module not found
                          vtk : 9.5.2
pyvista[colormaps,io,jupyter] : Module not found
                    cmcrameri : Module not found
                      cmocean : Module not found
                     colorcet : Module not found
                      imageio : Module not found
                       meshio : Module not found
                   ipywidgets : Module not found
         jupyter-server-proxy : Module not found
                 nest_asyncio : Module not found
                 trame-client : Module not found
                 trame-server : Module not found
                    trame-vtk : Module not found
                trame-vuetify : Module not found
                        trame : Module not found
--------------------------------------------------------------------------------

This PR fixes this by adding a separate_extras option to get_distribution_dependencies to properly distiguish core from optional deps.

--------------------------------------------------------------------------------
           pyvista : 0.46.3
        matplotlib : 3.10.6
             numpy : 2.3.3
            pillow : 11.3.0
             pooch : 1.8.2
            scooby : 0.1.dev225+g4f89e5d7b.d20250927
 typing-extensions : 4.15.0
               vtk : 9.5.2
--------------------------------------------------------------------------------

Note: This PR was originally considered to be a feature (new separate_extras option), but I think AutoReport classifying optional deps as core can be considered a bug, so overall it may be OK to label this as a bugfix and possibly patched as v0.10.3

@codecov
Copy link

codecov bot commented Sep 27, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 79.10%. Comparing base (e760360) to head (87a1bcf).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #131      +/-   ##
==========================================
+ Coverage   78.50%   79.10%   +0.60%     
==========================================
  Files           5        5              
  Lines         521      536      +15     
==========================================
+ Hits          409      424      +15     
  Misses        112      112              
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@user27182 user27182 changed the title Add separate extras option to get_distribution_dependencies Fix optional dependencies in AutoReport Sep 27, 2025
@akaszynski akaszynski marked this pull request as ready for review October 31, 2025 18:12
@akaszynski
Copy link
Collaborator

akaszynski commented Oct 31, 2025

There's a ton of ' --> " changes that snuck in due to my local ruff autoformatter... I'm going to leave these in and I'm going to create a followup that moves us off of black and into ruff. @banesullivan, hope you're fine with that.

@akaszynski akaszynski force-pushed the feat/separate_extras branch from 1f24cbd to 87a1bcf Compare October 31, 2025 18:33
@akaszynski
Copy link
Collaborator

@user27182, if this is good to go, let's merge this in lieu of #130 and get a release out.

@akaszynski akaszynski merged commit abac70c into banesullivan:main Oct 31, 2025
16 checks passed
@user27182
Copy link
Contributor Author

get a release out.

Maybe also consider reviewing #135 and #137 before a release? A use case I want to support in the pyvista repo is to be able to do scooby --report pyvistaqt, scooby --report mne, etc. for generating the integration test reports (they currently all generate a pyvista report instead). #137 specifically should enable this.

@akaszynski
Copy link
Collaborator

Maybe also consider reviewing #135 and #137 before a release? A use case I want to support in the pyvista repo is to be able to do scooby --report pyvistaqt, scooby --report mne, etc. for generating the integration test reports (they currently all generate a pyvista report instead). #137 specifically should enable this.

Will do!

@akaszynski akaszynski mentioned this pull request Nov 1, 2025
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.

2 participants