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

Merged
merged 4 commits into from Nov 20, 2017

Conversation

Projects
None yet
2 participants
@reaperhulk
Member

reaperhulk commented Nov 20, 2017

fixes #706

We should bikeshed on the changelog language probably.

@codecov

This comment has been minimized.

codecov bot commented Nov 20, 2017

Codecov Report

Merging #708 into master will increase coverage by 0.16%.
The diff coverage is 100%.

Impacted file tree graph

@@            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
Impacted Files Coverage Δ
tests/test_rand.py 100% <100%> (ø)
src/OpenSSL/rand.py 100% <100%> (ø)
tests/test_ssl.py 99.11% <0%> (+0.33%) ⬆️
src/OpenSSL/SSL.py 94.87% <0%> (+0.33%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4aa52c3...6afda82. Read the comment docs.

@alex

This comment has been minimized.

Member

alex commented Nov 20, 2017

The error stuff appers unused?

@reaperhulk reaperhulk force-pushed the reaperhulk:restore-rand branch from e4287c8 to 5cc4c2c Nov 20, 2017

from OpenSSL._util import lib as _lib
_builtin_bytes = bytes

This comment has been minimized.

@alex

alex Nov 20, 2017

Member

This isn't needed, just use bytes below.

return _lib.RAND_status()
def cleanup():

This comment has been minimized.

@alex

alex Nov 20, 2017

Member

Do we really need this?

This comment has been minimized.

@reaperhulk

reaperhulk Nov 20, 2017

Member

Probably not. As of 1.1.0 this is already a noop

# 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)

This comment has been minimized.

@alex

alex Nov 20, 2017

Member

Surely this should actually always be 1?

This comment has been minimized.

@reaperhulk

reaperhulk Nov 20, 2017

Member

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.

@reaperhulk reaperhulk force-pushed the reaperhulk:restore-rand branch from 6e8869e to 723c80c Nov 20, 2017

@reaperhulk reaperhulk force-pushed the reaperhulk:restore-rand branch from 723c80c to 6afda82 Nov 20, 2017

@alex

alex approved these changes Nov 20, 2017

@alex alex merged commit acbd662 into pyca:master Nov 20, 2017

3 checks passed

codecov/patch 100% of diff hit (target 96.86%)
Details
codecov/project 97.03% (+0.16%) compared to 4aa52c3
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

bors-fusion bot added a commit to fusionapp/fusion-index that referenced this pull request Nov 27, 2017

Merge #169
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">&raquo;</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">&raquo;</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">&raquo;</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">&raquo;</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">&raquo;</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 &lt;statistics&gt;` functionality - lambdas used for e.g. filtering
>would have shown up with a ``&lt;unknown&gt;`` as their body. This can still happen,
>but it should happen less often now.

>-------------------


>### 3.38.4

>-------------------

>This release updates the reported :ref:`statistics &lt;statistics&gt;` 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 &lt;https://smarkets.com/&gt;`_.

>-------------------


>### 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 &lt;https://smarkets.com/&gt;`_.

>-------------------


>### 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 &lt;https://github.com/pyca/pyopenssl/pull/708&gt;`_
>- Corrected a use-after-free when reusing an issuer or subject from an ``X509`` object after the underlying object has been mutated.
>  `709 &lt;https://github.com/pyca/pyopenssl/pull/709&gt;`_

>----








### 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! 🤖

bors-fusion bot added a commit to fusionapp/entropy that referenced this pull request Nov 27, 2017

Merge #162
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">&raquo;</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">&raquo;</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">&raquo;</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">&raquo;</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 &lt;https://github.com/pyca/pyopenssl/pull/708&gt;`_
>- Corrected a use-after-free when reusing an issuer or subject from an ``X509`` object after the underlying object has been mutated.
>  `709 &lt;https://github.com/pyca/pyopenssl/pull/709&gt;`_

>----








### 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! 🤖

bors-fusion bot added a commit to fusionapp/documint that referenced this pull request Nov 27, 2017

Merge #120
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">&raquo;</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">&raquo;</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">&raquo;</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 &lt;https://github.com/pyca/pyopenssl/pull/708&gt;`_
>- Corrected a use-after-free when reusing an issuer or subject from an ``X509`` object after the underlying object has been mutated.
>  `709 &lt;https://github.com/pyca/pyopenssl/pull/709&gt;`_

>----











That's it for now!

Happy merging! 🤖
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment