Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pin pyramid-tm to latest version 1.1.1 #46

Merged
merged 1 commit into from
Feb 26, 2017
Merged

Conversation

pyup-bot
Copy link
Collaborator

pyramid-tm is not pinned to a specific version.

I'm pinning it to the latest version 1.1.1 for now.

These links might come in handy: PyPI | Changelog | Homepage

Changelog

1.1.1

^^^^^^^^^^^^^^^^^^

  • Include Changes in the main docs.

1.1.0

^^^^^^^^^^^^^^^^^^

  • Support transaction 2.x.

1.0.2

^^^^^^^^^^^^^^^^^^

1.0.1

^^^^^^^^^^^^^^^^^^

1.0

^^^^^^^^^^^^^^^^

  • Drop Python 2.6, 3.2 and 3.3 support.
  • Add Python 3.5 support.

0.12.1

^^^^^^^^^^^^^^^^^^^

  • Fix compatibility with 1.2 and 1.3 again. This wasn't fully fixed in the

0.12

^^^^^^^^^^^^^^^^^

  • Restore compatibility with Pyramid 1.2 and 1.3.

0.11

^^^^^^^^^^^^^^^^^

0.10

^^^^^^^^^^^^^^^^^

0.9

^^^^^^^^^^^^^^^^

0.8

^^^^^^^^^^^^^^^^

  • Fix unit tests under Pyramid 1.5.

0.7

^^^^^^^^^^^^^^^^

  • Write unauthenticated userid and request.path_info as transaction
    metadata via t.setUser and t.note respectively during a commit.

0.6

^^^^^^^^^^^^^^^^

  • Disuse the confusing and bug-ridden generator-plus-context-manager "attempts"
    mechanism from the transaction package for retrying retryable exceptions
    (e.g. ZODB ConflictError). Use a simple while loop plus a counter and
    imperative logic instead.

0.5

^^^^^^^^^^^^^^^^

Bug Fixes

  • When a non-retryable exception was raised as the result of a call to
    transaction.manager.commit, the exception was not reraised properly.
    Symptom: an unrecoverable exception such as Unsupported: Storing blobs in <somestorage> is not supported. would be swallowed inappropriately.

0.4

^^^^^^^^^^^^^^^^

Bug Fixes

Testing

  • No longer tested under Python 2.5 by tox.ini (and therefore no longer
    tested under 2.5 by the Pylons Jenkins server). The package may still work
    under 2.5, but automated tests will no longer show breakage when it changes
    in ways that break 2.5 support.
  • Squash test deprecation warnings under Python 3.2.

0.3

^^^^^^^^^^^^^^^^

Features

  • The transaction manager has been converted to a Pyramid 1.2 "tween"
    (instead of an event subscriber). It will be slotted directly "below" the
    exception view handler, meaning it will have a chance to handle exceptions
    before they are turned into responses. This means it's best to "raise
    HTTPFound(...)" instead of "return HTTPFound(...)" if you want an HTTP
    exception to abort the transaction.
  • The transaction manager will now retry retryable exceptions (such as a ZODB
    conflict error) if tm.attempts is configured to be more than the
    default of 1. See the Retrying section of the documentation.
  • Python 3.2 compatibility (requires Pyramid 1.3dev+).

Backwards Incompatibilities

  • Incompatible with Pyramid < 1.2a1. Use pyramid_tm version 0.2 if you
    need compatibility with an older Pyramid installation.
  • The default_commit_veto commit veto callback is no longer configured
    into the system by default. Use tm.commit_veto = pyramid_tm.default_commit_veto in the deployment settings to add it.
    This is for parity with repoze.tm2, which doesn't configure in a commit
    veto by default either.
  • The default_commit_veto no longer checks for the presence of the
    X-Tm-Abort header when attempting to figure out whether the transaction
    should be aborted (although it still checks for the X-Tm header). Use
    version 0.2 or a custom commit veto function if your application depends on
    the X-Tm-Abort header.
  • A commit veto is now called with two arguments: request and
    response. The request is the webob request that caused the
    transaction manager to become active. The response is the response
    returned by the Pyramid application. This call signature is incompatible
    with older versions. The call signature of a pyramid_tm 0.2 and older
    commit veto accepted three arguments: environ, status, and
    headers. If you're using a custom commit_veto function, you'll
    need to either convert your existing function to use the new calling
    convention or use a wrapper to make it compatible with the new calling
    convention. Here's a simple wrapper function
    (bwcompat_commit_veto_wrapper) that will allow you to use your existing
    custom commit veto function::
def bwcompat_commit_veto_wrapper(request, response):
    return my_custom_commit_veto(request.environ, response.status,
                                 response.headerlist)

Deprecations

  • The pyramid_tm.commit_veto configuration setting is now canonically
    spelled as tm.commit_veto. The older spelling will continue to work,
    but may raise a deprecation error when used.

0.2

^^^^^^^^^^^^^^^^

  • A new header X-Tm is now honored by the default_commit_veto commit
    veto hook. If this header exists in the headerlist, its value must be a
    string. If its value is commit, the transaction will be committed
    regardless of the status code or the value of X-Tm-Abort. If the value
    of the X-Tm header is abort (or any other string value except
    commit), the transaction will be aborted, regardless of the status code
    or the value of X-Tm-Abort.

0.1

^^^^^^^^^^^^^^^^

  • Initial release, based on repoze.tm2

Got merge conflicts? Close this PR and delete the branch. I'll create a new PR for you.

Happy merging! 馃

@nicfit nicfit merged commit 574edd2 into master Feb 26, 2017
@nicfit nicfit deleted the pyup-pin-pyramid-tm-1.1.1 branch February 26, 2017 07:57
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.

None yet

2 participants