• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

zopefoundation / BTrees / 31156006456
94%
master: 94%

Build:
Build:
LAST BUILD BRANCH: remove-byvalue-except-ii-226
DEFAULT BRANCH: master
Ran 07 Aug 2026 07:08AM UTC
Jobs 1
Files 25
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

07 Aug 2026 07:00AM UTC coverage: 93.906% (+0.03%) from 93.877%
31156006456

Pull #229

github

icemac
Remove byValue() except from the II and LL families (#226)

byValue() could crash the interpreter for families with object values: a
value whose comparison method mutated the bucket freed the array the C code
was iterating over.

Rather than hardening that code, remove the long deprecated method
everywhere except the II and LL families, which are the modules reachable as
family32.II and family64.II -- the only ones known to be used (by
Products.ZCatalog.Catalog.search) and immune to the crash, since their
values are C integers whose comparison never runs Python code.

The declaration moves from IDictionaryIsh to the new IByValue interface.

The surviving pure-Python implementation now matches the C one: it
normalizes the values by dividing them by min before sorting and returns a
list.
Pull Request #229: Remove byValue() except from the II and LL families (#226)

643 of 675 branches covered (95.26%)

Branch coverage included in aggregate %.

83 of 86 new or added lines in 4 files covered. (96.51%)

7724 of 8235 relevant lines covered (93.79%)

6.56 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
98.56
-0.55% src/BTrees/tests/testBTrees.py
Jobs
ID Job ID Ran Files Coverage
1 31156006456.1 07 Aug 2026 07:08AM UTC 25
93.91
GitHub Action Run
Source Files on build 31156006456
  • Tree
  • List 25
  • Changed 6
  • Source Changed 6
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #31156006456
  • Pull Request #229
  • PR Base - master (#30749367238)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc