Lea 3.4.0 is now released!
What is Lea?
Lea is a Python module aiming at working with discrete probability
distributions in an intuitive way.
It allows you modeling a broad range of random phenomena: gambling, weather,
finance, etc. More generally, Lea may be used for any finite set of discrete
values having known probability: numbers, booleans, date/times, symbols,.
Each probability distribution is modeled as a plain object, which can be
named, displayed, queried or processed to produce new probability
Lea also provides advanced functions and Probabilistic Programming (PP)
features; these include conditional probabilities, joint probability
distributions, Bayesian networks, Markov chains and symbolic computation.
All probability calculations in Lea are performed by a new exact algorithm,
the Statues algorithm, which is based on variable binding and recursive
generators. For problems intractable through exact methods, Lea provides
on-demand approximate algorithms, namely MC rejection sampling and
Beside the above-cited functions, Lea provides some machine learning
functions, including Maximum-Likelihood and Expectation-Maximization
Lea can be used for AI, education (probability theory & PP), generation of
random samples, etc.
LGPL - Python 2.6+ / Python 3 supported
For a 5 minutes tour. check out the poster presented at PROBPROG2020
What's new in Lea 3.4.0?
Lea 3.4.0 includes two important improvements over 3.3.x:
1) Introduction of "evidence contexts", allowing to factorize conditions
when calculating conditional probabilities
2) Optimize calculation for several queries, which were intractable in an
exact way with previous Lea versions
This version contains also a couple of improvements on
To learn more...
Lea 3 on PyPI -> http://pypi.org/project/lea
Lea project page -> http://bitbucket.org/piedenis/lea
Documentation -> http://bitbucket.org/piedenis/lea/wiki/Home
Statues algorithm ->
With the hope that Lea can make this universe less erratic,
PyCon ZA 2020 will take place on the 8th & 9th of October, 2020. This
year, due to the ongoing uncertainty of when conference facilities
will be allowed to open, we will be running PyCon ZA as an online
We are looking for the following presentations:
- Keynotes (45 minute long talks on a subject of general interest)
- Talks (30 minute long talks on more specific topics)
If you would like to give a presentation, please register at
https://za.pycon.org/ and submit your proposal, following the
instructions at https://za.pycon.org/talks/submit-talk/ . We have a
number of tracks available, including: Data Science, Teaching and
Learning with Python, Web, Scientific Computing, Testing and Other
(which includes all talks that don't fall under the mentioned tracks).
We hope to notify accepted presenters by no later than the 31st of
Speakers will be expected to be available after the presentation for a
short Q&A session. Shared sessions are also possible. The
presentations will be in English.
PyCon ZA offers a mentorship program for inexperienced speakers. If
you would like assistance preparing your submission, email
team(a)za.pycon.org with a rough draft of your talk proposal and we'll
find a suitable experienced speaker to act as a mentor.
If you want to present something else at PyCon ZA, please contact the
organising committee at team(a)za.pycon.org .
We’re researching which software platforms will be most suitable for
running PyCon ZA. As soon as we have finalised this decision, we’ll
make it public and update potential presenters. If you have experience
with presenting on particular platforms, we'd love to hear from you at
On behalf of the PyCon ZA organising committee
I'm happy to announce that iPOPO has been relased in v1.0.1.
What is iPOPO
iPOPO is a Service-Oriented Component Model (SOCM) based on Pelix,
a dynamic service platform. Both are inspired on two popular Java
technologies for the development of long-lived applications:
the iPOJO component model and the OSGi Service Platform.
iPOPO enables to conceive long-running and modular IT services.
It is based on the concepts specified by OSGi:
- Bundle: a Python module imported using Pelix and associated to a
context. A bundle has a life-cycle (install, start, updated, stop,
- Service: a Python object registered in a service registry,
associated to a specification and to properties.
- Component: the instance of a class described/manipulated by iPOPO
Components are bound together by the specification(s) of the service(s)
they provide. The required services are injected into components by iPOPO.
For more information about those concepts, see
iPOPO provides many services out-of-the-box, like an HTTP server,
local and remote shell, remote services...
iPOPO is released under the terms of Apache Software License 2.0
What's new in 1.0.1
This release adds few features and only concerns the v1 branch.
* Added a RequiresBroadcast decorator, which injects a proxy that broadcasts
calls to all services matched by the requirement.
It also transparently ignores calls when no service matches the requirement.
* ConfigurationAdmin default persistence can now be disabled by setting the
pelix.configadmin.persistence.default.disable framework property to any
See #113 for more details: https://github.com/tcalmant/ipopo/issues/113
* Added a to_record() method in LogEntry objects.
This converts the Pelix entry to a logging.LogRecord object, which can then
be formatted using standard formatters.
Note that some information is missing, like the place the log record is from
(file path and line).
You can take a look at the documentation at https://ipopo.readthedocs.io/
iPOPO is available on PyPI: https://pypi.python.org/pypi/iPOPO
Source is available on GitHub: https://github.com/tcalmant/ipopo
Feel free to send feedback on your experience of Pelix/iPOPO, via the
User list : http://groups.google.com/group/ipopo-users
Development list : http://groups.google.com/group/ipopo-dev
I’m happy to announce the release of attrs 20.3.0!
attrs is the direct ancestor – and the inspiration for – dataclasses in the standard library and remains the more powerful option for creating regular classes without getting bogged down with writing identical boilerplate again and again: <https://www.attrs.org/>
Heartfelt thanks to my generous sponsors <https://github.com/sponsors/hynek>, companies subscribing on Tidelift <https://tidelift.com/subscription/pkg/pypi-attrs>, and people who bought me a coffee on <https://ko-fi.com/the_hynek>! Support like that makes me merge PRs and release software on a Saturday afternoon! <3
The main features of this release are:
- Field transformers! We now offer an official way to hook into the creation of fields/attributes and allow you to modify or even drop them: <https://www.attrs.org/en/stable/extending.html#automatic-field-transformati…>. This should allow more exciting things to be built in the future and be another tool for people building higher-level toolkits on top of attrs.
- If you clicked that link you’ve already noticed: attrs is now using the beautiful Sphinx theme “furo” by Pradyun Gedam. You can check it out at <https://github.com/pradyunsg/furo>. YOUR docs can look good too!
- attr.define(), attr.frozen(), attr.mutable(), and attr.field()
This release does not change change anything about them and they are
already used widely in production though.
If you wish to use them together with mypy, you can simply drop this
plugin into your project.
Feel free to provide feedback to them in the linked issue #668.
We will release the attrs namespace once we have the feeling that
the APIs have properly settled. #668
- attr.s() now has a field_transformer hook that is called for all
Attributes and returns a (modified or updated) list of Attribute
instances. attr.asdict() has a value_serializer hook that can change
the way values are converted. Both hooks are meant to help with data
(de-)serialization workflows. #653
- kw_only=True now works on Python 2. #700
- raise from now works on frozen classes on PyPy. #703, #712
- attr.asdict() and attr.astuple() now treat frozensets like sets with
regards to the retain_collection_types argument. #704
- The type stubs for attr.s() and attr.make_class() are not missing
the collect_by_mro argument anymore. #711
On behalf of the SciPy development team I'm pleased to announce
the release of SciPy 1.5.4, which is a bug fix release that includes
Python 3.9 wheels and a more complete fix for build issues on XCode 12.
Sources and binary wheels can be found at:
and at: https://github.com/scipy/scipy/releases/tag/v1.5.4
One of a few ways to install this release with pip:
pip install scipy==1.5.4
SciPy 1.5.4 Release Notes
SciPy 1.5.4 is a bug-fix release with no new features
compared to 1.5.3. Importantly, wheels are now available
for Python 3.9 and a more complete fix has been applied for
issues building with XCode 12.
* Peter Bell
* CJ Carey
* Andrew McCluskey +
* Andrew Nelson
* Tyler Reddy
* Eli Rykoff +
* Ian Thomas +
A total of 7 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully
Issues closed for 1.5.4
* `#12763 <https://github.com/scipy/scipy/issues/12763>`__:
ndimage.fourier_ellipsoid segmentation fault
* `#12789 <https://github.com/scipy/scipy/issues/12789>`__:
TestConvolve2d.test_large_array failing on Windows ILP64 CI job
* `#12857 <https://github.com/scipy/scipy/issues/12857>`__: sparse A[0,:] =
ndarray is ok, A[:,0] = ndarray ValueError from...
* `#12860 <https://github.com/scipy/scipy/issues/12860>`__: BUG: Build
failure with Xcode 12
* `#12935 <https://github.com/scipy/scipy/issues/12935>`__: Failure to
build with Python 3.9.0 on macOS
* `#12966 <https://github.com/scipy/scipy/issues/12966>`__: MAINT:
lint_diff.py on some backport PRs
* `#12988 <https://github.com/scipy/scipy/issues/12988>`__: BUG: Highly
multi-dimensional \`gaussian_kde\` giving \`-inf\`...
Pull requests for 1.5.4
* `#12790 <https://github.com/scipy/scipy/pull/12790>`__: TST: Skip
TestConvolve2d.test_large_array if not enough memory
* `#12851 <https://github.com/scipy/scipy/pull/12851>`__: BUG: sparse: fix
inner indexed assignment of a 1d array
* `#12875 <https://github.com/scipy/scipy/pull/12875>`__: BUG: segfault in
ndimage.fourier_ellipsoid with length-1 dims
* `#12937 <https://github.com/scipy/scipy/pull/12937>`__: CI: macOS3.9
* `#12957 <https://github.com/scipy/scipy/pull/12957>`__: MAINT: fixes
XCode 12/ python 3.9.0 build for 1.5.x maint branch
* `#12959 <https://github.com/scipy/scipy/pull/12959>`__: CI: add Windows
Python 3.9 to CI
* `#12974 <https://github.com/scipy/scipy/pull/12974>`__: MAINT: Run
lint_diff.py against the merge target and only for...
* `#12978 <https://github.com/scipy/scipy/pull/12978>`__: DOC:
next_fast_len output doesn't match docstring
* `#12979 <https://github.com/scipy/scipy/pull/12979>`__: BUG:
fft.next_fast_len should accept keyword arguments
* `#12989 <https://github.com/scipy/scipy/pull/12989>`__: BUG: improved the
stability of kde for highly (1000s) multi-dimension...
* `#13017 <https://github.com/scipy/scipy/pull/13017>`__: BUG: Add explicit
cast to _tmp sum.
* `#13022 <https://github.com/scipy/scipy/pull/13022>`__: TST: xfail
The engines of the secret release manager machine have finished producing a
new pre-release. Go get it here:
*Major new features of the 3.10 series, compared to 3.9*
Python 3.10 is still in development. This releasee, 3.10.0a2 is the second
of six planned alpha releases. Alpha releases are intended to make it
easier to test the current state of new features and bug fixes and to test
the release process. During the alpha phase, features may be added up until
the start of the beta phase (2021-05-03) and, if necessary, may be modified
or deleted up until the release candidate phase (2021-10-04). Please keep
in mind that this is a preview release and its use is not recommended for
Many new features for Python 3.10 are still being planned and written.
Among the new major new features and changes so far:
PEP 623 -- Remove wstr from Unicode
PEP 604 -- Allow writing union types as X | Y
PEP 612 -- Parameter Specification Variables
PEP 626 -- Precise line numbers for debugging and other tools.
(Hey, fellow core developer, if a feature you find important is missing
from this list, let Pablo know.)
The next pre-release of Python 3.10 will be 3.10.0a3, currently scheduled
*And now for something completely different *
The cardinality (the number of elements) of infinite sets can be one of the
most surprising results of set theory. For example, there are the same
amount of even natural numbers than natural numbers (which can be even or
odd). There is also the same amount of rational numbers than natural
numbers. But on the other hand, there are more real numbers between 0 and 1
than natural numbers! All these sets have infinite cardinality but turn out
that some of these infinities are bigger than others. These infinite
cardinalities normally are represented using aleph numbers. Infinite sets
are strange beasts indeed.
Regards from cold London,
Pablo Galindo Salgado
On behalf of the NumPy team I am pleased to announce the release of NumPy
1.19.4. NumPy 1.19.4 is a quick release to revert the OpenBLAS library
version. It was hoped that the 0.3.12 OpenBLAS version used in 1.19.3
would work around the Microsoft fmod bug, but problems in some docker
environments turned up. Instead, 1.19.4 will use the older library and run
a sanity check on import, raising an error if the problem is detected.
Microsoft is aware of the problem and has promised a fix, users should
upgrade when it becomes available.
This release supports Python 3.6-3.9. NumPy Wheels for this release can be
downloaded from PyPI <https://pypi.org/project/numpy/1.19.4/>, source
archives, release notes, and wheel hashes are available on Github
<https://github.com/numpy/numpy/releases/tag/v1.19.4>. Linux users will
need pip >= 0.19.3 in order to install manylinux2010 and manylinux2014
A total of 1 people contributed to this release. People with a "+" by their
names contributed a patch for the first time.
- Charles Harris
*Pull requests merged*
A total of 2 pull requests were merged for this release.
- #17679: MAINT: Add check for Windows 10 version 2004 bug.
- #17680: REV: Revert OpenBLAS to 1.19.2 version for 1.19.4