-
Notifications
You must be signed in to change notification settings - Fork 420
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’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
restore a subset of the rand module #708
Conversation
Codecov Report
@@ Coverage Diff @@
## master #708 +/- ##
==========================================
+ Coverage 96.86% 97.03% +0.16%
==========================================
Files 16 18 +2
Lines 5647 5667 +20
Branches 392 394 +2
==========================================
+ Hits 5470 5499 +29
+ Misses 118 112 -6
+ Partials 59 56 -3
Continue to review full report at Codecov.
|
The error stuff appers unused? |
e4287c8
to
5cc4c2c
Compare
src/OpenSSL/rand.py
Outdated
from OpenSSL._util import lib as _lib | ||
|
||
|
||
_builtin_bytes = bytes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This isn't needed, just use bytes
below.
src/OpenSSL/rand.py
Outdated
return _lib.RAND_status() | ||
|
||
|
||
def cleanup(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we really need this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably not. As of 1.1.0 this is already a noop
tests/test_rand.py
Outdated
# It's hard to know what it is actually going to return. Different | ||
# OpenSSL random engines decide differently whether they have enough | ||
# entropy or not. | ||
assert rand.status() in (0, 1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Surely this should actually always be 1
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it's possible to trigger a 0 when calling cleanup and not adding enough back...? I don't know. This is just a restoration of the code that was previously there, but this test is not particularly useful. I'd be fine changing it to assert 1. Plus as an added bonus we'll get to find out some insane edge case if it turns out 1 isn't always true in the tests.
6e8869e
to
723c80c
Compare
723c80c
to
6afda82
Compare
169: Scheduled weekly dependency update for week 48 r=mithrandi a=pyup-bot ## Updates Here's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need. <table align="center"> <tr> <td><b>hypothesis</b></td> <td align="center">3.38.0</td> <td align="center">»</td> <td align="center">3.38.5</td> <td> <a href="https://pypi.python.org/pypi/hypothesis">PyPI</a> | <a href="https://pyup.io/changelogs/hypothesis/">Changelog</a> | <a href="https://github.com/HypothesisWorks/hypothesis/issues">Repo</a> </td> <tr> <td><b>pyasn1-modules</b></td> <td align="center">0.1.5</td> <td align="center">»</td> <td align="center">0.2.1</td> <td> <a href="https://pypi.python.org/pypi/pyasn1-modules">PyPI</a> | <a href="https://pyup.io/changelogs/pyasn1-modules/">Changelog</a> | <a href="https://github.com/etingof/pyasn1-modules">Repo</a> </td> <tr> <td><b>pyasn1</b></td> <td align="center">0.3.7</td> <td align="center">»</td> <td align="center">0.4.2</td> <td> <a href="https://pypi.python.org/pypi/pyasn1">PyPI</a> | <a href="https://pyup.io/changelogs/pyasn1/">Changelog</a> | <a href="https://github.com/etingof/pyasn1">Repo</a> </td> <tr> <td><b>pyopenssl</b></td> <td align="center">17.3.0</td> <td align="center">»</td> <td align="center">17.4.0</td> <td> <a href="https://pypi.python.org/pypi/pyopenssl">PyPI</a> | <a href="https://pyup.io/changelogs/pyopenssl/">Changelog</a> | <a href="https://pyopenssl.org/">Homepage</a> | <a href="http://pythonhosted.org/pyOpenSSL/">Docs</a> </td> <tr> <td><b>pyrsistent</b></td> <td align="center">0.14.0</td> <td align="center">»</td> <td align="center">0.14.1</td> <td> <a href="https://pypi.python.org/pypi/pyrsistent">PyPI</a> | <a href="https://pyup.io/changelogs/pyrsistent/">Changelog</a> | <a href="http://github.com/tobgu/pyrsistent/">Repo</a> </td> </tr> </table> ## Changelogs ### hypothesis 3.38.0 -> 3.38.5 >### 3.38.5 >------------------- >This fixes the repr of strategies using lambda that are defined inside >decorators to include the lambda source. >This would mostly have been visible when using the >:ref:`statistics <statistics>` functionality - lambdas used for e.g. filtering >would have shown up with a ``<unknown>`` as their body. This can still happen, >but it should happen less often now. >------------------- >### 3.38.4 >------------------- >This release updates the reported :ref:`statistics <statistics>` so that they >show approximately what fraction of your test run time is spent in data >generation (as opposed to test execution). >This work was funded by `Smarkets <https://smarkets.com/>`_. >------------------- >### 3.38.3 >------------------- >This is a documentation release, which ensures code examples are up to date >by running them as doctests in CI (:issue:`711`). >------------------- >### 3.38.2 >------------------- >This release changes the behaviour of the :attr:`~hypothesis.settings.deadline` >setting when used with :func:`~hypothesis.strategies.data`: Time spent inside >calls to ``data.draw`` will no longer be counted towards the deadline time. >As a side effect of some refactoring required for this work, the way flaky >tests are handled has changed slightly. You are unlikely to see much difference >from this, but some error messages will have changed. >This work was funded by `Smarkets <https://smarkets.com/>`_. >------------------- >### 3.38.1 >------------------- >This patch has a variety of non-user-visible refactorings, removing various >minor warts ranging from indirect imports to typos in comments. >------------------- ### pyopenssl 17.3.0 -> 17.4.0 >### 17.4.0 >------------------- >Backward-incompatible changes: >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >*none* >Deprecations: >^^^^^^^^^^^^^ >*none* >Changes: >^^^^^^^^ >- Re-added a subset of the ``OpenSSL.rand`` module. > This subset allows conscientious users to reseed the OpenSSL CSPRNG after fork. > `708 <https://github.com/pyca/pyopenssl/pull/708>`_ >- Corrected a use-after-free when reusing an issuer or subject from an ``X509`` object after the underlying object has been mutated. > `709 <https://github.com/pyca/pyopenssl/pull/709>`_ >---- ### pyrsistent 0.14.0 -> 0.14.1 >### 0.14.1 > * Equality check performance improvements for pvectors and pmaps. Thanks dtomas for this! > * Avoid calling factories multiple times for fields that do not change, see PR 120 for for > details. Thanks teepark for this! That's it for now! Happy merging! 🤖
162: Scheduled weekly dependency update for week 48 r=mithrandi a=pyup-bot ## Updates Here's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need. <table align="center"> <tr> <td><b>pyasn1-modules</b></td> <td align="center">0.1.5</td> <td align="center">»</td> <td align="center">0.2.1</td> <td> <a href="https://pypi.python.org/pypi/pyasn1-modules">PyPI</a> | <a href="https://pyup.io/changelogs/pyasn1-modules/">Changelog</a> | <a href="https://github.com/etingof/pyasn1-modules">Repo</a> </td> <tr> <td><b>pyasn1</b></td> <td align="center">0.3.7</td> <td align="center">»</td> <td align="center">0.4.2</td> <td> <a href="https://pypi.python.org/pypi/pyasn1">PyPI</a> | <a href="https://pyup.io/changelogs/pyasn1/">Changelog</a> | <a href="https://github.com/etingof/pyasn1">Repo</a> </td> <tr> <td><b>pyopenssl</b></td> <td align="center">17.3.0</td> <td align="center">»</td> <td align="center">17.4.0</td> <td> <a href="https://pypi.python.org/pypi/pyopenssl">PyPI</a> | <a href="https://pyup.io/changelogs/pyopenssl/">Changelog</a> | <a href="https://pyopenssl.org/">Homepage</a> | <a href="http://pythonhosted.org/pyOpenSSL/">Docs</a> </td> <tr> <td><b>pyrsistent</b></td> <td align="center">0.14.0</td> <td align="center">»</td> <td align="center">0.14.1</td> <td> <a href="https://pypi.python.org/pypi/pyrsistent">PyPI</a> | <a href="https://pyup.io/changelogs/pyrsistent/">Changelog</a> | <a href="http://github.com/tobgu/pyrsistent/">Repo</a> </td> </tr> </table> ## Changelogs ### pyopenssl 17.3.0 -> 17.4.0 >### 17.4.0 >------------------- >Backward-incompatible changes: >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >*none* >Deprecations: >^^^^^^^^^^^^^ >*none* >Changes: >^^^^^^^^ >- Re-added a subset of the ``OpenSSL.rand`` module. > This subset allows conscientious users to reseed the OpenSSL CSPRNG after fork. > `708 <https://github.com/pyca/pyopenssl/pull/708>`_ >- Corrected a use-after-free when reusing an issuer or subject from an ``X509`` object after the underlying object has been mutated. > `709 <https://github.com/pyca/pyopenssl/pull/709>`_ >---- ### pyrsistent 0.14.0 -> 0.14.1 >### 0.14.1 > * Equality check performance improvements for pvectors and pmaps. Thanks dtomas for this! > * Avoid calling factories multiple times for fields that do not change, see PR 120 for for > details. Thanks teepark for this! That's it for now! Happy merging! 🤖
120: Scheduled weekly dependency update for week 48 r=mithrandi a=pyup-bot ## Updates Here's a list of all the updates bundled in this pull request. I've added some links to make it easier for you to find all the information you need. <table align="center"> <tr> <td><b>pyasn1-modules</b></td> <td align="center">0.1.5</td> <td align="center">»</td> <td align="center">0.2.1</td> <td> <a href="https://pypi.python.org/pypi/pyasn1-modules">PyPI</a> | <a href="https://pyup.io/changelogs/pyasn1-modules/">Changelog</a> | <a href="https://github.com/etingof/pyasn1-modules">Repo</a> </td> <tr> <td><b>pyasn1</b></td> <td align="center">0.3.7</td> <td align="center">»</td> <td align="center">0.4.2</td> <td> <a href="https://pypi.python.org/pypi/pyasn1">PyPI</a> | <a href="https://pyup.io/changelogs/pyasn1/">Changelog</a> | <a href="https://github.com/etingof/pyasn1">Repo</a> </td> <tr> <td><b>pyopenssl</b></td> <td align="center">17.3.0</td> <td align="center">»</td> <td align="center">17.4.0</td> <td> <a href="https://pypi.python.org/pypi/pyopenssl">PyPI</a> | <a href="https://pyup.io/changelogs/pyopenssl/">Changelog</a> | <a href="https://pyopenssl.org/">Homepage</a> | <a href="http://pythonhosted.org/pyOpenSSL/">Docs</a> </td> </tr> </table> ## Changelogs ### pyopenssl 17.3.0 -> 17.4.0 >### 17.4.0 >------------------- >Backward-incompatible changes: >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >*none* >Deprecations: >^^^^^^^^^^^^^ >*none* >Changes: >^^^^^^^^ >- Re-added a subset of the ``OpenSSL.rand`` module. > This subset allows conscientious users to reseed the OpenSSL CSPRNG after fork. > `708 <https://github.com/pyca/pyopenssl/pull/708>`_ >- Corrected a use-after-free when reusing an issuer or subject from an ``X509`` object after the underlying object has been mutated. > `709 <https://github.com/pyca/pyopenssl/pull/709>`_ >---- That's it for now! Happy merging! 🤖
fixes #706
We should bikeshed on the changelog language probably.