Hi All,
On behalf of the NumPy team I am pleased to announce that NumPy 1.18.3 has
been released. This release contains various bug/regression fixes for the
1.18 series
The Python versions supported in this release are 3.5-3.8. Downstream
developers should use Cython >= 0.29.15 for Python 3.8 support and OpenBLAS
>= 3.7 to avoid errors on the Skylake architecture. Wheels for this
release can be downloaded from PyPI <https://pypi.org/project/numpy/1.18.3>,
source archives and release notes are available from Github
<https://github.com/numpy/numpy/releases/tag/v1.18.3>.
*Highlights*
Fix for the method='eigh' and method='cholesky' options in
numpy.random.multivariate_normal. Those were producing samples from the
wrong distribution.
*Contributors*
A total of 6 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Charles Harris
- Max Balandat +
- @Mibu287 +
- Pan Jan +
- Sebastian Berg
- @panpiort8 +
*Pull requests merged*
A total of 5 pull requests were merged for this release.
- #15916: BUG: Fix eigh and cholesky methods of
numpy.random.multivariate_normal
- #15929: BUG,MAINT: Remove incorrect special case in string to number...
- #15930: BUG: Guarantee array is in valid state after memory error
occurs...
- #15954: BUG: Check that pvals is 1D in _generator.multinomial.
- #16017: BUG: Alpha parameter must be 1D in _generator.dirichlet
Cheers,
Charles Harris
We received the very sad news today, that Oier Echaniz Beneitez has
passed away, after a long-term illness (not as a result of COVID-19):
https://www.europython-society.org/post/615744838396215296/farewell-to-oier…
Oier was one of the initiators for bringing EuroPython to Bilbao in
2015 and co-chaired the conference in both 2015 and 2016, together
with Fabio.
Oier giving the EuroPython 2015 welcome speech together with Fabio
Pliger: https://www.youtube.com/watch?v=NrLKOEhnb7w
He was one of the most enthusiastic and engaged organizers of the
conference, served on the EuroPython Society board from 2015 - 2017
and founded and chaired the local Python organization in San Sebastian
(PySS, pronounced “peace”). Oier also started the pyjok.es project,
together with Alexandre Savio and Ben Nuttall, inaugurating the first
Python Jokes-as-a-Service of its kind.
https://pyjok.es/
His humour and friendly approach to everything, even when things
turned bad on him, were inspiring and created a great atmosphere for
everyone who worked with him. Oier’s love for pyntxos was famous and
I’m sure all of you who attended the EuroPython conferences in Bilbao
will never forget.
https://ep2015.europython.eu/en/events/social-event/
“Oier was an exceptionally funny guy with a wonderful sense of
humour. He was kind, caring and considerate, and worked hard for PySS
and EuroPython. I have fond, happy memories of any time I spent with
him and know he’ll be greatly missed.” — Ben Nuttall
“Oier put so much enthusiasm in everything we did, in our first quests
together and then doing all the activities of ACPySS. He was not only
an active member of the Python community but also very involved in the
local cancer research and care community. We knew his end was going to
come sooner rather than later, and these last 2 years have been quite
harsh on him. His amazing will to live was what kept him going for so
long and we are sure that the Python community motivated him to keep
on. Rest in PySS, my friend.” — Alexandre Savio
* Our good friend: We’ll miss you! *
May the good vibes and pyntxos always be with you.
Thank you for all the good times,
--
Your friends from the EuroPython community
Talk voting is your chance to tell us what you’d like to see at
EuroPython 2020. We will leave talk voting open until:
Sunday, April 26 23:59:59 CEST
In order to vote, please log in to the website and then navigate to
the talk voting page:
* EuroPython 2020 Talk Voting *
https://ep2020.europython.eu/events/talk-voting/
How talk voting works
---------------------
The talk voting page lists all submitted proposals, including talks,
helpdesks and posters. The proposals are sorted in random order.
In order to vote, have a look at the title/abstract and then indicate
your personal interest in attending this session. We have simplified
the voting process and you may choose between these four options:
- must see
- want to see
- maybe
- not interested
The talks you haven’t voted for are marked “No vote”. Your votes are
automatically saved to the backend without the need to click on a save
or submit button.
Who can participate?
--------------------
Any registered attendee of the current EuroPython (*) as well as any
attendee of one of the past EuroPython conferences going back to 2015
can vote. If you have submitted a proposal this year, you are also
eligible to vote.
Talk Selection
--------------
After the talk voting phase, the EuroPython Program Workgroup (WG)
will use the votes to select the talks and build a schedule.
The talk voting is a good and strong indicator what attendees are
interested to see. Submissions are also selected based on editorial
criteria to e.g. increase diversity, give a chance to less mainstream
topics as well as avoid too much of the same topic.
In general, the Program WG will try to give as many speakers a chance
to talk as possible. If speakers have submitted multiple talks, the
one with the highest rating will most likely get selected.
(*) We will start ticket sales in the coming days to give you a chance
to participate in talk voting as well.
Help spread the word
--------------------
Please help us spread this message by sharing it on your social
networks as widely as possible. Thank you !
Link to the blog post:
https://blog.europython.eu/post/615363800716263424/europython-2020-talk-vot…
Tweet:
https://twitter.com/europython/status/1249994570236076032
Thanks,
--
EuroPython 2020 Team
https://ep2020.europython.eu/https://www.europython-society.org/
I am please to announce the availability of the first beta release of the
"plum-py" package.
This package provides classes and utility functions to efficiently pack and
unpack bytes similar to what the standard library `struct` module offers.
This package expands significantly on that capability with much more
powerful and convenient access and control of bytes within a buffer
(including handling variable size/type relationships within the buffer
data).
The package provides a large number of fundamental types (e.g.
numbers, structures, arrays, etc.) for specifying buffer data structure.
Each type conforms to a "plug-and-play" architecture facilitating the
ability to be combined in any way, including deeply nested structures of
arbitrary
type. You may also write your own custom types that conform to
the "plug-and-play" architecture API and use them in combination with any
of the fundamental types provided.
Docs: https://plum-py.readthedocs.io/en/latest/index.html
PyPi: https://pypi.org/project/plum-py/
Repo: https://gitlab.com/dangass/plum
License: MIT
With Regards,
Dan Gass
(dan.gass at gmail)
Dear Pythonistas,
today, I'm happy to announce the first alpha release of Cython 3.0.
https://cython.org/https://pypi.org/project/Cython/3.0a1/
It took us a while to get to this point, well more than a year's time, but
we received a lot of help along the way, most notably from David Woods,
Jeroen Demeyer and Matti Picus. Thanks a lot, and also to the many other
contributors! For this release, we already have 182 closed issues and
merged PRs, including 109 PRs contributed by non-core devs!
** What is Cython?
In case you didn't hear about Cython before, it's the most widely used
statically optimising Python compiler out there. It translates Python (2/3)
code to C, and makes it as easy as Python itself to tune the code all the
way down into fast native code.
** What is Cython 3.0?
Cython 3.0 is our effort to bring Cython up to date with modern Python 3,
after an 18 year long development history. According to the Python mailing
list archive [1] and Greg's download directory [2], Cython's predecessor
Pyrex 0.1 was announced and released to the public on April 4th, 2002.
Cython is finally coming of age. :)
** So, what's new?
Too much. Way too much for this announcement. Cython 3.0 comes with a very
long list of new features, bug fixes and modernisations, a few of which are
backwards incompatible, but in a good way. See the latest changelog:
https://github.com/cython/cython/blob/master/CHANGES.rst
Here's a short teaser list anyway:
- Python 3 semantics by default, legacy Python 2 semantics via directive.
- No more deprecated NumPy C-API usage.
- Unicode module names, imports, and identifiers (PEP-3131, PEP-489).
- Support for the fast vectorcall protocol (PEP-590).
- Inlined properties on external cdef classes.
- Faster dispatch for fused functions.
- First steps towards supporting CPython's stable ABI (PEP-384).
** How alpha is it?
Well. It's not complete yet [3]. It still has some known issues. There are
still some unmerged PRs waiting. Support for the limited API is … limited.
But, it's in a good shape and probably ready enough for you to make use of
all those cool new features. Please give it a try and report back if you
find issues that we can still improve on in the upcoming pre-releases. PRs
very welcome!
As always, if it works for you, use it. Generate your C code locally with
it, test it, then ship it to your users, preferably even as ready-made
binary wheels. Once the code is compiled, they don't even have to know that
you've used an alpha version. :)
Have fun,
Stefan
[1] https://mail.python.org/pipermail/python-list/2002-April/126661.html
[2] https://www.csse.canterbury.ac.nz/greg.ewing/python/Pyrex/oldtar/
[3] https://github.com/cython/cython/milestone/58
Greetings,
2.7.18 release candidate 1, a testing release for the last release of the Python 2.7 series, is now available for download. The CPython core developers stopped applying routine bugfixes to the 2.7 branch on January 1. 2.7.18 will includes fixes that were made between the release of 2.7.17 and the end of 2019. A final—very final!—release is expected in 2 weeks.
Downloads are at:
https://www.python.org/downloads/release/python-2718rc1/
The full changelog is at
https://raw.githubusercontent.com/python/cpython/v2.7.18rc1/Misc/NEWS.d/2.7…
Test it out, and let us know if there are any critical problems at
https://bugs.python.org/
(This is the last chance!)
All the best,
Benjamin
Hello All:
I'm proud to release version 2.0.0beta0 of the Roundup issue tracker
which has been possible due to the help of several contributors. This
release contains some major changes, so make sure to read
`docs/upgrading.txt
<http://www.roundup-tracker.org/dev-docs/upgrading.html>`_ to bring
your tracker up to date. The changes, as usual, include some new
features and many bug fixes.
You can download it with:
pip download roundup==2.0.0beta0
then unpack and test/install the tarball.
Among the notable improvements from the 1.6.1 release are:
Roundup is multilingual and will run under either Python 3 or
Python 2. If you want to use Python 3, you *must read* the Python 3
Support section in the upgrading doc. Depending on the database
backend you may have to export/import the tracker. Also you will
need to make sure your tracker's Python code is Python 3
compliant. Thanks to Joseph Myers with help from Christof Meerwald.
Roundup has a rest API to go along with the existing xmlrpc
API. See doc/rest.txt for details on configuring, authorizing
access (per role) and making a request. Thanks to Ralf
Schlatterbeck who integrated and updated Chau Nguyen's GSOC code.
PGP encryption is now done using the gpg module and not the
obsolete pyme library. Thanks to Christof Meerwald.
Use of mod_python is deprecated. Apache mod_wsgi documentation
has been updated along with gunicorn and uwsgi and is the
preferred mechanism.
jinja templates updated to bootstrap 4.4.1. Templates use
autoescape and translation library. Support for messages
written in markdown added. SimpleMDE used as markdown editor to
provide preview features. Thanks to Christof Meerwald.
The file CHANGES.txt has a detailed list of feature additions and bug
fixes for each release. The most recent changes from there are at the
end of this announcement. Also see the information in
doc/upgrading.txt.
How You Can Help
================
We are looking for one or two front end developers to kick the tires
on the rest interface. The rest interface is available by running
demo.py as described below. If you are interested in helping please
contact "rouilj+rit at ieee.org".
The Zope deployment mode has not had any testing under Python 3. We
are looking for community involvement to help get this deployment
mode validated. It may also have issues under Python 2. If you are
interested in helping with this please see:
https://issues.roundup-tracker.org/issue2141835
Email input using POP and IMAP modes need testing under Python 3
and Python 2.
We have new documentation for deploying with apache and mod_wsgi. It
needs testing and enhancement.
There are other documentation issues at:
https://issues.roundup-tracker.org/issue?@columns=title,id,activity,status&…
If you find bugs, please report them to issues AT roundup-tracker.org
or create an account at https://issues.roundup-tracker.org and open a
new ticket. If you have patches to fix the issues they can be attached
to the email or uploaded to the tracker.
Upgrading
=========
If you're upgrading from an older version of Roundup you *must* follow
all the "Software Upgrade" guidelines given in the doc/upgrading.txt
documentation.
Roundup requires Python 2 newer than version 2.7.2 or Python 3 newer
than or equal to version 3.4 for correct operation.
The wsgi, server and cgi web deployment modes are the ones with the
most testing.
To give Roundup a try, just download (see below), unpack and run::
python demo.py
Release info and download page:
https://pypi.org/project/roundup
Source and documentation is available at the website:
http://roundup-tracker.org/
Mailing lists - the place to ask questions:
https://sourceforge.net/p/roundup/mailman/
About Roundup
=============
Roundup is a simple-to-use and install issue-tracking system with
command-line, web and e-mail interfaces. It is based on the winning design
from Ka-Ping Yee in the Software Carpentry "Track" design competition.
Note: Ping is not responsible for this project. The contact for this
project is richard(a)users.sourceforge.net.
Roundup manages a number of issues (with flexible properties such as
"description", "priority", and so on) and provides the ability to:
(a) submit new issues,
(b) find and edit existing issues, and
(c) discuss issues with other participants.
The system facilitates communication among the participants by managing
discussions and notifying interested parties when issues are edited. One of
the major design goals for Roundup that it be simple to get going. Roundup
is therefore usable "out of the box" with any Python 2.7.2+ (or 3.4+)
installation. It doesn't even need to be "installed" to be operational,
though an install script is provided.
It comes with five issue tracker templates
* a classic bug/feature tracker
* a more extensive devel tracker for bug/features etc.
* a responsive version of the devel tracker
* a jinja2 version of the devel template (work in progress)
* a minimal skeleton
and supports four database back-ends (anydbm, sqlite, mysql and postgresql).
Recent Changes
==============
Features:
- Allow to pass additional headers to nosymessage, nice if a message
needs to be marked as urgent or similar, e.g., Outlook uses an
"Importance" header, when set to "high" it highlights the message.
(Ralf Schlatterbeck)
- issue2550926 - Original author adding a second message shouldn't set
status to 'chatting'. See upgrading.txt for details. (John Rouillard)
- issue2550919 - Anti-bot signup using 4 second delay. New config.ini
param [web] registration_delay must be set to 0 if template
user.register.html is not modified. See upgrading.txt for details.
- Reimplement -u <login>[:<password>]. This opens the database as the
user and applies expected permissions. It also creates history
entries for the user. Note that the password is unused, no mention
of it is in the spec that I can find, so not sure what it was
supposed to be used for as the CLI has full access to the files so a
password check is not useful. An edge case is when the login has a :
in it. In this case it may not work as expected. So don't do that.
- Implement Cache-Control headers for static files. Allows tracker
admin to control caching for css, js and other static files. See
customizing.html. The use is documented in the section describing
how to use interfaces.py.
- issue2551071 Update jinja template to bootstrap 4. Updated to 4.4.1.
The pull request has been around for a while. (Patch: Paul Spooren;
templates merged and additional changes by Christof Meerwald; other
merged by John Rouillard)
- Add config option 'http_auth_convert_realm_to_lowercase'
If usernames consist of a name and a domain/realm part of the form
user@realm and we're using REMOTE_USER for authentication (e.g. via
Kerberos), convert the realm part of the incoming REMOTE_USER to
lowercase before matching against the roundup username. This allows
roundup usernames to be lowercase (including the realm) and still
follow the Kerberos convention of using an uppercase realm. In
addition this is compatible with Active Directory which stores the
username with realm as UserPrincipalName in lowercase.
- Cleaned up the WSGI interface implementation by separating the
request handler from the request displatcher. Also allow
customisation of tracker instance creation via an overridable
"get_tracker" context manager.
- Allow transitive properties in @fields in REST API. These transitive
properties may not cross Multilinks, e.g., when querying 'issue' the
property 'messages.author' is not allowed (because 'messages' is a
multilink). A multilink at the end (e.g. messages in the example) is
fine.
- Added markdown rendering using markdown, markdown2 or mistune; use
SimpleMDE markdown editor in jinja2 template (Christof Meerwald)
- Allow filtering by multiple date ranges or empty date. Date ranges are
separated by comma, an empty date is represented by '-'
- issue2551083 - Replace BaseException and Exception as base classes
with new RoundupException (inheriting from Exception) for most
roundup exceptions. (John Rouillard and Ralf Schlatterbeck on
request from Robert Klonner.)
Fixed:
- issue2550996 - Give better error message when running with -c
(install as windows service) and pywin32 is not importable. Could use
better testing on a windows box. (John Rouillard)
- issue2550921 - Can create login name with , in it. Confuses nosy
list editing. Also can embed html tags. Updated userauditor.py
to prevent this. See updating.txt. (John Rouillard)
- issue1344046 - Search for "All text" can't find some Unicode words
(John Rouillard, Ezio Melotti)
- issue1195739 - search in russian does not work (John Rouillard, Ezio
Melotti)
- issue2550920 - Registration with confirmation detects duplcate name
when using validation. Added option to allow detection of duplicate
username when the user tries to register. Previously user was
rejected when confirming registration. (John Rouillard)
- French translation gave errors with Python 3 because of ISO-8859-1
character in .mo file header. (Joseph Myers)
- Fix representation of boolean html attributes to be 'required'
rather than the xhtml form of 'required="required"'. Specify
(reverted attribute value same as attribute name or) attribute
value of None, to output attribute as boolean. (John Rouillard)
Reverted (part of) this change. It breaks rendering of non-boolean
attributes (like name="name"). So only value of None renders
attribute properly as boolean. (Ralf Schlatterbeck)
- issue2551076 - in responsive template, default searches for bugs and
tasks sets status=new default should be "don't care". (Report:
Ludwig Reiter; Fix: John Rouillard)
- issue2551077 - In "jinja2" template: cannot login if German language
is used. Fixed three places where the value of a hidden @action
input field was translated. (Reported by Ludwig Reiter. John
Rouillard)
- Document security issues in xmlrpc interface in doc/xmlrpc.txt.
- Enable autoescape in the jinja2 template and use the i18n extension
for translations. (Report: John Rouillard; Fix: Christof Meerwald)
- Cleanup code by linting using flake8. (John Rouillard)
- Cleanup code by security linting using bandit. (John Rouillard)
- issue2550912 - fixed missing query string in __came_from for jinja2
template. (Christof Meerwald)
- issue2551019 - handle character set conversions for CSV export
action in Python 3. (Christof Meerwald)
- issue2551051: Return a 403 on non-existing or non-searchable
transitive properties when queried via REST-API (same behavior for
sorting and searching).
- Fixed ReStructuredText encoding with Python 3.
--
-- rouilj
John Rouillard
===========================================================================
My employers don't acknowledge my existence much less my opinions.
PyCA cryptography 2.9 has been released to PyPI. cryptography includes
both high level recipes and low level interfaces to common
cryptographic algorithms such as symmetric ciphers, asymmetric
algorithms, message digests, X509, key derivation functions, and much
more. We support Python 2.7, Python 3.5+, and PyPy.
Changelog (https://cryptography.io/en/latest/changelog/#v2-9):
* BACKWARDS INCOMPATIBLE: Support for Python 3.4 has been removed due
to low usage and maintenance burden.
* BACKWARDS INCOMPATIBLE: Support for OpenSSL 1.0.1 has been removed.
Users on older version of OpenSSL will need to upgrade.
* BACKWARDS INCOMPATIBLE: Support for LibreSSL 2.6.x has been removed.
* Removed support for calling public_bytes() with no arguments, as per
our deprecation policy. You must now pass encoding and format.
* BACKWARDS INCOMPATIBLE: Reversed the order in which rfc4514_string()
returns the RDNs as required by RFC 4514.
* Updated Windows, macOS, and manylinux wheels to be compiled with
OpenSSL 1.1.1f.
* Added support for parsing single_extensions in an OCSP response.
* NameAttribute values can now be empty strings.
-Paul Kehrer (reaperhulk)