Skip to content

Conversation

@jsiirola
Copy link
Member

Fixes # .

Summary/Motivation:

This PR was motivated by two new features in the Config system:

  • ConfigDict.add() should accept keyword arguments so that users can specify modifiers like visibility without explicitly creating the ConfigValue
  • ConfigDict should derive from MutableMapping so that methods like update() are defined / available.

As part of implementing that, this PR made a number of other improvements

  • [Performance] Split ConfigBase.__call__ so that the ConfigDict-specific logic is in an overload method on ConfigDict
  • [Performance] Avoid unnecessary calls to generate_documentation()
  • [Performance] re-use method documenter in document_class_CONFIG
  • [bugfix] fix logic when trapping recursion errors in domain pickler
  • [feature] Expose additional classes from enum (Flag, IntFlag, EnumType)
  • Update / expand unit testing
  • Significant update / expansion on documentation

Changes proposed in this PR:

  • (see above)

Legal Acknowledgement

By contributing to this software project, I have read the contribution guide and agree to the following terms and conditions for my contribution:

  1. I agree my contributions are submitted under the BSD license.
  2. I represent I am authorized to make the contributions and grant the license. If my employer has rights to intellectual property that includes these contributions, I represent that I have received permission to make contributions and grant the required license on behalf of that employer.

@codecov
Copy link

codecov bot commented Nov 21, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.43%. Comparing base (a079b25) to head (a7d7b5a).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3790      +/-   ##
==========================================
+ Coverage   89.41%   89.43%   +0.01%     
==========================================
  Files         909      909              
  Lines      105579   105586       +7     
==========================================
+ Hits        94407    94426      +19     
+ Misses      11172    11160      -12     
Flag Coverage Δ
builders 29.10% <72.88%> (-0.02%) ⬇️
default 86.05% <89.83%> (?)
expensive 35.75% <76.27%> (?)
linux 86.74% <100.00%> (-2.45%) ⬇️
linux_other 86.74% <100.00%> (+0.01%) ⬆️
osx 82.89% <89.83%> (+<0.01%) ⬆️
win 84.99% <89.83%> (+<0.01%) ⬆️
win_other 84.99% <89.83%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@blnicho blnicho self-requested a review December 2, 2025 19:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

2 participants