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

zopefoundation / transaction
100%
master: 100%

Build:
Build:
LAST BUILD BRANCH: config-with-pure-python-template-b3663390
DEFAULT BRANCH: master
Repo Added 09 Oct 2018 02:51PM UTC
Files 13
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

LAST BUILD ON BRANCH issue82
branch: issue82
CHANGE BRANCH
x
Reset
  • issue82
  • 2.3.0
  • 2.4.0
  • 3.0.0
  • 3.1.0
  • 4.0
  • 5.0
  • abort_hooks_#77
  • all-repos_autofix_all-repos-sed
  • config-with-pure-python
  • config-with-pure-python-template-07964f30
  • config-with-pure-python-template-1c2b77e5
  • config-with-pure-python-template-6f8d8c51
  • config-with-pure-python-template-a8ae60f1
  • config-with-pure-python-template-b21fbbf2
  • config-with-pure-python-template-b3663390
  • docs-take-2
  • exc-docs
  • fix-deprecation-warning-in-test-suite
  • fix-lint
  • fix-sphinx-8
  • fix-typos
  • fix_tm_run#58
  • icemac-patch-1
  • issue66
  • lint
  • master
  • modern-openssl-please
  • modernize-python-versions
  • py37
  • remove-deprecations
  • wrapped-thread-local-208

pending completion
293

Pull #84

travis-ci

web-flow
Transaction._free drops more references, and Transaction.abort() is a little safer.

Specifically, free the manager and synchronizers, plus a few other
dictionaries that could be arbitrary size and contain arbitrary data.

And abort() always invokes _free() even in the case of exceptions.
commit() still doesn't so that the synchronizers are available for the
expected abort().

But take care about when and how abort frees its manager: not only
does this preserve backwards compatibility, but it lets it be
safe to abort a transaction object more than once. A happy side-effect
of only freeing the manager there is that synchronizers can access
data they set in afterCompletion().

From discussion in #82
Pull Request #84: Transaction._free drops more references, and Transaction.abort() is a bit safer

93 of 93 new or added lines in 2 files covered. (100.0%)

3456 of 3456 relevant lines covered (100.0%)

6.99 hits per line

Relevant lines Covered
Build:
Build:
3456 RELEVANT LINES 3456 COVERED LINES
6.99 HITS PER LINE
Source Files on issue82
  • List 0
  • Changed 5
  • Source Changed 2
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
293 issue82 Transaction._free drops more references, and Transaction.abort() is a little safer. Specifically, free the manager and synchronizers, plus a few other dictionaries that could be arbitrary size and contain arbitrary data. And abort() always invok... Pull #84 05 Sep 2019 04:04PM UTC web-flow travis-ci pending completion  
292 issue82 Transaction._free drops more references, and Transaction.abort() is a little safer. Specifically, free the manager and synchronizers, plus a few other dictionaries that could be arbitrary size and contain arbitrary data. And abort() always invok... push 05 Sep 2019 04:02PM UTC jamadden travis-ci pending completion  
291 issue82 Transaction._free drops more references, and Transaction.abort() is a little safer. Specifically, free the manager and synchronizers, plus a few other dictionaries that could be arbitrary size and contain arbitrary data. And abort() always invok... push 05 Sep 2019 03:37PM UTC jamadden travis-ci pending completion  
290 issue82 Be careful about when abort frees its manager. This behaves more like older code did. Also explicitly allow access to Transaction.data() by afterCompletion synchronizers. push 05 Sep 2019 03:24PM UTC jamadden travis-ci pending completion  
289 issue82 Transaction._free drops more references. Specifically, synchronizers and its manager. And abort() always invokes _free() even in the case of exceptions. commit() still doesn't so that the synchronizers are available for the expected abort(). Fi... push 05 Sep 2019 12:04PM UTC jamadden travis-ci pending completion  
See All Builds (397)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc