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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scheduled monthly dependency update for September #265

Closed
wants to merge 78 commits into from

Conversation

pyup-bot
Copy link
Collaborator

@pyup-bot pyup-bot commented Sep 1, 2023

Update beautifulsoup4 from 4.8.0 to 4.12.2.

Changelog

4.11.1

This release was done to ensure that the unit tests are packaged along
with the released source. There are no functionality changes in this
release, but there are a few other packaging changes:

* The Japanese and Korean translations of the documentation are included.
* The changelog is now packaged as CHANGELOG, and the license file is
packaged as LICENSE. NEWS.txt and COPYING.txt are still present,
but may be removed in the future.
* TODO.txt is no longer packaged, since a TODO is not relevant for released
code.

4.11.0

* Ported unit tests to use pytest.

* Added special string classes, RubyParenthesisString and RubyTextString,
to make it possible to treat ruby text specially in get_text() calls.
[bug=1941980]

* It's now possible to customize the way output is indented by
providing a value for the 'indent' argument to the Formatter
constructor. The 'indent' argument works very similarly to the
argument of the same name in the Python standard library's
json.dump() function. [bug=1955497]

* If the charset-normalizer Python module
(https://pypi.org/project/charset-normalizer/) is installed, Beautiful
Soup will use it to detect the character sets of incoming documents.
This is also the module used by newer versions of the Requests library.
For the sake of backwards compatibility, chardet and cchardet both take
precedence if installed. [bug=1955346]

* Added a workaround for an lxml bug
(https://bugs.launchpad.net/lxml/+bug/1948551) that causes
problems when parsing a Unicode string beginning with BYTE ORDER MARK.
[bug=1947768]

* Issue a warning when an HTML parser is used to parse a document that
looks like XML but not XHTML. [bug=1939121]

* Do a better job of keeping track of namespaces as an XML document is
parsed, so that CSS selectors that use namespaces will do the right
thing more often. [bug=1946243]

* Some time ago, the misleadingly named "text" argument to find-type
methods was renamed to the more accurate "string." But this supposed
"renaming" didn't make it into important places like the method
signatures or the docstrings. That's corrected in this
version. "text" still works, but will give a DeprecationWarning.
[bug=1947038]

* Fixed a crash when pickling a BeautifulSoup object that has no
tree builder. [bug=1934003]

* Fixed a crash when overriding multi_valued_attributes and using the
html5lib parser. [bug=1948488]

* Standardized the wording of the MarkupResemblesLocatorWarning
warnings to omit untrusted input and make the warnings less
judgmental about what you ought to be doing. [bug=1955450]

* Removed support for the iconv_codec library, which doesn't seem
to exist anymore and was never put up on PyPI. (The closest
replacement on PyPI, iconv_codecs, is GPL-licensed, so we can't use
it--it's also quite old.)

4.10.0

* This is the first release of Beautiful Soup to only support Python
3. I dropped Python 2 support to maintain support for newer versions
(58 and up) of setuptools. See:
https://github.com/pypa/setuptools/issues/2769 [bug=1942919]

* The behavior of methods like .get_text() and .strings now differs
depending on the type of tag. The change is visible with HTML tags
like <script>, <style>, and <template>. Starting in 4.9.0, methods
like get_text() returned no results on such tags, because the
contents of those tags are not considered 'text' within the document
as a whole.

But a user who calls script.get_text() is working from a different
definition of 'text' than a user who calls div.get_text()--otherwise
there would be no need to call script.get_text() at all. In 4.10.0,
the contents of (e.g.) a <script> tag are considered 'text' during a
get_text() call on the tag itself, but not considered 'text' during
a get_text() call on the tag's parent.

Because of this change, calling get_text() on each child of a tag
may now return a different result than calling get_text() on the tag
itself. That's because different tags now have different
understandings of what counts as 'text'. [bug=1906226] [bug=1868861]

* NavigableString and its subclasses now implement the get_text()
method, as well as the properties .strings and
.stripped_strings. These methods will either return the string
itself, or nothing, so the only reason to use this is when iterating
over a list of mixed Tag and NavigableString objects. [bug=1904309]

* The 'html5' formatter now treats attributes whose values are the
empty string as HTML boolean attributes. Previously (and in other
formatters), an attribute value must be set as None to be treated as
a boolean attribute. In a future release, I plan to also give this
behavior to the 'html' formatter. Patch by Isaac Muse. [bug=1915424]

* The 'replace_with()' method now takes a variable number of arguments,
and can be used to replace a single element with a sequence of elements.
Patch by Bill Chandos. [rev=605]

* Corrected output when the namespace prefix associated with a
namespaced attribute is the empty string, as opposed to
None. [bug=1915583]

* Performance improvement when processing tags that speeds up overall
tree construction by 2%. Patch by Morotti. [bug=1899358]

* Corrected the use of special string container classes in cases when a
single tag may contain strings with different containers; such as
the <template> tag, which may contain both TemplateString objects
and Comment objects. [bug=1913406]

* The html.parser tree builder can now handle named entities
found in the HTML5 spec in much the same way that the html5lib
tree builder does. Note that the lxml HTML tree builder doesn't handle
named entities this way. [bug=1924908]

* Added a second way to pass specify encodings to UnicodeDammit and
EncodingDetector, based on the order of precedence defined in the
HTML5 spec, starting at:
https://html.spec.whatwg.org/multipage/parsing.html#parsing-with-a-known-character-encoding

Encodings in 'known_definite_encodings' are tried first, then
byte-order-mark sniffing is run, then encodings in 'user_encodings'
are tried. The old argument, 'override_encodings', is now a
deprecated alias for 'known_definite_encodings'.

This changes the default behavior of the html.parser and lxml tree
builders, in a way that may slightly improve encoding
detection but will probably have no effect. [bug=1889014]

* Improve the warning issued when a directory name (as opposed to
the name of a regular file) is passed as markup into the BeautifulSoup
constructor. [bug=1913628]

4.9.3

* Implemented a significant performance optimization to the process of
searching the parse tree. Patch by Morotti. [bug=1898212]

4.9.2

* Fixed a bug that caused too many tags to be popped from the tag
stack during tree building, when encountering a closing tag that had
no matching opening tag. [bug=1880420]

* Fixed a bug that inconsistently moved elements over when passing
a Tag, rather than a list, into Tag.extend(). [bug=1885710]

* Specify the soupsieve dependency in a way that complies with
PEP 508. Patch by Mike Nerone. [bug=1893696]

* Change the signatures for BeautifulSoup.insert_before and insert_after
(which are not implemented) to match PageElement.insert_before and
insert_after, quieting warnings in some IDEs. [bug=1897120]

4.9.1

* Added a keyword argument 'on_duplicate_attribute' to the
BeautifulSoupHTMLParser constructor (used by the html.parser tree
builder) which lets you customize the handling of markup that
contains the same attribute more than once, as in:
<a href="url1" href="url2"> [bug=1878209]

* Added a distinct subclass, GuessedAtParserWarning, for the warning
issued when BeautifulSoup is instantiated without a parser being
specified. [bug=1873787]

* Added a distinct subclass, MarkupResemblesLocatorWarning, for the
warning issued when BeautifulSoup is instantiated with 'markup' that
actually seems to be a URL or the path to a file on
disk. [bug=1873787]

* The new NavigableString subclasses (Stylesheet, Script, and
TemplateString) can now be imported directly from the bs4 package.

* If you encode a document with a Python-specific encoding like
'unicode_escape', that encoding is no longer mentioned in the final
XML or HTML document. Instead, encoding information is omitted or
left blank. [bug=1874955]

* Fixed test failures when run against soupselect 2.0. Patch by Tomáš
Chvátal. [bug=1872279]

4.9.0

* Added PageElement.decomposed, a new property which lets you
check whether you've already called decompose() on a Tag or
NavigableString.

* Embedded CSS and Javascript is now stored in distinct Stylesheet and
Script tags, which are ignored by methods like get_text() since most
people don't consider this sort of content to be 'text'. This
feature is not supported by the html5lib treebuilder. [bug=1868861]

* Added a Russian translation by 'authoress' to the repository.

* Fixed an unhandled exception when formatting a Tag that had been
decomposed.[bug=1857767]

* Fixed a bug that happened when passing a Unicode filename containing
non-ASCII characters as markup into Beautiful Soup, on a system that
allows Unicode filenames. [bug=1866717]

* Added a performance optimization to PageElement.extract(). Patch by
Arthur Darcet.

4.8.2

* Added Python docstrings to all public methods of the most commonly
used classes.

* Added a Chinese translation by Deron Wang and a Brazilian Portuguese
translation by Cezar Peixeiro to the repository.

* Fixed two deprecation warnings. Patches by Colin
Watson and Nicholas Neumann. [bug=1847592] [bug=1855301]

* The html.parser tree builder now correctly handles DOCTYPEs that are
not uppercase. [bug=1848401]

* PageElement.select() now returns a ResultSet rather than a regular
list, making it consistent with methods like find_all().

4.8.1

* When the html.parser or html5lib parsers are in use, Beautiful Soup
will, by default, record the position in the original document where
each tag was encountered. This includes line number (Tag.sourceline)
and position within a line (Tag.sourcepos).  Based on code by Chris
Mayo. [bug=1742921]

* When instantiating a BeautifulSoup object, it's now possible to
provide a dictionary ('element_classes') of the classes you'd like to be
instantiated instead of Tag, NavigableString, etc.

* Fixed the definition of the default XML namespace when using
lxml 4.4. Patch by Isaac Muse. [bug=1840141]

* Fixed a crash when pretty-printing tags that were not created
during initial parsing. [bug=1838903]

* Copying a Tag preserves information that was originally obtained from
the TreeBuilder used to build the original Tag. [bug=1838903]

* Raise an explanatory exception when the underlying parser
completely rejects the incoming markup. [bug=1838877]

* Avoid a crash when trying to detect the declared encoding of a
Unicode document. [bug=1838877]

* Avoid a crash when unpickling certain parse trees generated
using html5lib on Python 3. [bug=1843545]
Links

Update contourpy from 1.0.6 to 1.1.0.

Changelog

1.1.0

-------------------

This release features a change in the build system from ``distutils``, which
is scheduled for removal in Python 3.12, to `meson`_ and `meson-python`_.
It includes the building of wheels for ppc64le and s390x (on x86_64 only) and
removes building of all 32-bit wheels and macOS universal2 wheels.

This release supports Python 3.8 to 3.11.

Thanks to new contributor :user:`eli-schwartz`.

Build system improvements:

* New meson build system (:pr:`183`, :pr:`226`, :pr:`232`, :pr:`249`, :pr:`250`)
* Drop building universal2 wheels (:pr:`225`)
* Add build_config to store and show build configuration info (:pr:`227`)
* Build ppc64le and s390x wheels (:pr:`246`)

Code improvements:

* Rearrange functions alphabetically (:pr:`219`)
* Remove unused mpl2005 and mpl2014 code (:pr:`234`, :pr:`237`)
* Improve mpl2014 chunk count error handling (:pr:`238`)

Documentation improvements:

* Improve API docs (:pr:`220`, :pr:`221`, :pr:`222`)
* Update benchmarks (:pr:`233`)
* Add meson-specific build docs (:pr:`245`)
* Add simpler README for PyPI (:pr:`247`)

CI improvements:

* Replace flake8 with ruff (:pr:`211`)
* Building and testing on cirrus CI (:pr:`213`)
* Run mypy in CI (:pr:`230`)
* Set up code coverage in CI (:pr:`235`, :pr:`236`, :pr:`183`)
* New internal API, codebase and debug renderer tests (:pr:`239`, :pr:`241`, :pr:`244`)
* Use correct version of chromium for Bokeh image tests (:pr:`243`)
* Add tests for musllinux (on x86_64), ppc64le and s390x (:pr:`246`)

1.0.7

-------------------

This release adds type annotations and moves project metadata to pyproject.toml (PEP 621).
Documentation now uses the Sphinx Furo theme, supporting dark and light modes. There are no
functional changes.

Type annotations:

* Add type annotations (:pr:`199`, :pr:`200`, :pr:`201`, :pr:`202`)
* Complete mypy configuration (:pr:`206`)

Documentation improvements:

* Support dark mode (:pr:`185`, :pr:`188`)
* Use sphinx copy button (:pr:`189`)
* Add conda monthly download badges to README (:pr:`192`)
* Furo sphinx theme (:pr:`195`)

Code improvements:

* Improved if statement (:pr:`186`)
* Test nonfinite z and decreasing zlevel for filled (:pr:`190`)
* Add abstract base class Renderer (:pr:`198`)
* Replace mpl scatter call with plot instead (:pr:`203`)
* Use absolute imports (:pr:`204`)
* Minor improvement to get_boundary_start_point (:pr:`205`)

Build system and CI improvements:

* Switch from setup.cfg to pyproject.toml (:pr:`181`)
* Add git pre-commit (:pr:`191`)
* Test improvements (:pr:`193`, :pr:`194`, :pr:`197`)
* CI improvements (:pr:`179`, :pr:`180`, :pr:`184`)
Links

Update eppy from 0.5.60 to 0.5.63.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update fonttools from 4.38.0 to 4.42.1.

Changelog

4.42.1

----------------------------

- [t1Lib] Fixed several Type 1 issues (3238, 3240).
- [otBase/packer] Allow sharing tables reached by different offset sizes (3241, 3236).
- [varLib/merger] Fix Cursive attachment merging error when all anchors are NULL (3248, 3247).
- [ttLib] Fixed warning when calling ``addMultilingualName`` and ``ttFont`` parameter was not
passed on to ``findMultilingualName`` (3253).

4.42.0

----------------------------

- [varLib] Use sentinel value 0xFFFF to mark a glyph advance in hmtx/vmtx as non
participating, allowing sparse masters to contain glyphs for variation purposes other
than {H,V}VAR (3235).
- [varLib/cff] Treat empty glyphs in non-default masters as missing, thus not participating
in CFF2 delta computation, similarly to how varLib already treats them for gvar (3234).
- Added varLib.avarPlanner script to deduce 'correct' avar v1 axis mappings based on
glyph average weights (3223).

4.41.1

----------------------------

- [subset] Fixed perf regression in v4.41.0 by making ``NameRecordVisitor`` only visit
tables that do contain nameID references (3213, 3214).
- [varLib.instancer] Support instancing fonts containing null ConditionSet offsets in
FeatureVariationRecords (3211, 3212).
- [statisticsPen] Report font glyph-average weight/width and font-wide slant.
- [fontBuilder] Fixed head.created date incorrectly set to 0 instead of the current
timestamp, regression introduced in v4.40.0 (3210).
- [varLib.merger] Support sparse ``CursivePos`` masters (3209).

4.41.0

----------------------------

- [fontBuilder] Fixed bug in setupOS2 with default panose attribute incorrectly being
set to a dict instead of a Panose object (3201).
- [name] Added method to ``removeUnusedNameRecords`` in the user range (3185).
- [varLib.instancer] Fixed issue with L4 instancing (moving default) (3179).
- [cffLib] Use latin1 so we can roundtrip non-ASCII in {Full,Font,Family}Name (3202).
- [designspaceLib] Mark <source name="..."> as optional in docs (as it is in the code).
- [glyf-1] Fixed drawPoints() bug whereby last cubic segment becomes quadratic (3189, 3190).
- [fontBuilder] Propagate the 'hidden' flag to the fvar Axis instance (3184).
- [fontBuilder] Update setupAvar() to also support avar 2, fixing ``_add_avar()`` call
site (3183).
- Added new ``voltLib.voltToFea`` submodule (originally Tiro Typeworks' "Volto") for
converting VOLT OpenType Layout sources to FEA format (3164).

4.40.0

----------------------------

- Published native binary wheels to PyPI for all the python minor versions and platform
and architectures currently supported that would benefit from this. They will include
precompiled Cython-accelerated modules (e.g. cu2qu) without requiring to compile them
from source. The pure-python wheel and source distribution will continue to be
published as always (pip will automatically chose them when no binary wheel is
available for the given platform, e.g. pypy). Use ``pip install --no-binary=fonttools fonttools``
to expliclity request pip to install from the pure-python source.
- [designspaceLib|varLib] Add initial support for specifying axis mappings and build
``avar2`` table from those (3123).
- [feaLib] Support variable ligature caret position (3130).
- [varLib|glyf] Added option to --drop-implied-oncurves; test for impliable oncurve
points either before or after rounding (3146, 3147, 3155, 3156).
- [TTGlyphPointPen] Don't error with empty contours, simply ignore them (3145).
- [sfnt] Fixed str vs bytes remnant of py3 transition in code dealing with de/compiling
WOFF metadata (3129).
- [instancer-solver] Fixed bug when moving default instance with sparse masters (3139, 3140).
- [feaLib] Simplify variable scalars that don’t vary (3132).
- [pens] Added filter pen that explicitly emits closing line when lastPt != movePt (3100).
- [varStore] Improve optimize algorithm and better document the algorithm (3124, 3127).
Added ``quantization`` option (3126).
- Added CI workflow config file for building native binary wheels (3121).
- [fontBuilder] Added glyphDataFormat=0 option; raise error when glyphs contain cubic
outlines but glyphDataFormat was not explicitly set to 1 (3113, 3119).
- [subset] Prune emptied GDEF.MarkGlyphSetsDef and remap indices; ensure GDEF is
subsetted before GSUB and GPOS (3114, 3118).
- [xmlReader] Fixed issue whereby DSIG table data was incorrectly parsed (3115, 2614).
- [varLib/merger] Fixed merging of SinglePos with pos=0 (3111, 3112).
- [feaLib] Demote "Feature has not been defined" error to a warning when building aalt
and referenced feature is empty (3110).
- [feaLib] Dedupe multiple substitutions with classes (3105).

4.39.4

----------------------------

- [varLib.interpolatable] Allow for sparse masters (3075)
- [merge] Handle differing default/nominalWidthX in CFF (3070)
- [ttLib] Add missing main.py file to ttLib package (3088)
- [ttx] Fix missing composite instructions in XML (3092)
- [ttx] Fix split tables option to work on filenames containing '%' (3096)
- [featureVars] Process lookups for features other than rvrn last (3099)
- [feaLib] support multiple substitution with classes (3103)

4.39.3

----------------------------

- [sbix] Fixed TypeError when compiling empty glyphs whose imageData is None, regression
was introduced in v4.39 (3059).
- [ttFont] Fixed AttributeError on python <= 3.10 when opening a TTFont from a tempfile
SpooledTemporaryFile, seekable method only added on python 3.11 (3052).

4.39.2

----------------------------

- [varLib] Fixed regression introduced in 4.39.1 whereby an incomplete 'STAT' table
would be built even though a DesignSpace v5 did contain 'STAT' definitions (3045, 3046).

4.39.1

----------------------------

- [avar2] Added experimental support for reading/writing avar version 2 as specified in
this draft proposal: https://github.com/harfbuzz/boring-expansion-spec/blob/main/avar2.md
- [glifLib] Wrap underlying XML library exceptions with GlifLibError when parsing GLIFs,
and also print the name and path of the glyph that fails to be parsed (3042).
- [feaLib] Consult avar for normalizing user-space values in ConditionSets and in
VariableScalars (3042, 3043).
- [ttProgram] Handle string input to Program.fromAssembly() (3038).
- [otlLib] Added a config option to emit GPOS 7 lookups, currently disabled by default
because of a macOS bug (3034).
- [COLRv1] Added method to automatically compute ClipBoxes (3027).
- [ttFont] Fixed getGlyphID to raise KeyError on missing glyphs instead of returning
None. The regression was introduced in v4.27.0 (3032).
- [sbix] Fixed UnboundLocalError: cannot access local variable 'rawdata' (3031).
- [varLib] When building VF, do not overwrite a pre-existing ``STAT`` table that was built
with feaLib from FEA feature file. Also, added support for building multiple VFs
defined in Designspace v5 from ``fonttools varLib`` script (3024).
- [mtiLib] Only add ``Debg`` table with lookup names when ``FONTTOOLS_LOOKUP_DEBUGGING``
env variable is set (3023).

4.39.0

----------------------------

- [mtiLib] Optionally add `Debg` debug info for MTI feature builds (3018).
- [ttx] Support reading input file from standard input using special `-` character,
similar to existing `-o -` option to write output to standard output (3020).
- [cython] Prevent ``cython.compiled`` raise AttributeError if cython not installed
properly (3017).
- [OS/2] Guard against ZeroDivisionError when calculating xAvgCharWidth in the unlikely
scenario no glyph has non-zero advance (3015).
- [subset] Recompute xAvgCharWidth independently of --no-prune-unicode-ranges,
previously the two options were involuntarily bundled together (3012).
- [fontBuilder] Add ``debug`` parameter to addOpenTypeFeatures method to add source
debugging information to the font in the ``Debg`` private table (3008).
- [name] Make NameRecord `__lt__` comparison not fail on Unicode encoding errors (3006).
- [featureVars] Fixed bug in ``overlayBox`` (3003, 3005).
- [glyf] Added experimental support for cubic bezier curves in TrueType glyf table, as
outlined in glyf v1 proposal (2988):
https://github.com/harfbuzz/boring-expansion-spec/blob/main/glyf1-cubicOutlines.md
- Added new qu2cu module and related qu2cuPen, the reverse of cu2qu for converting
TrueType quadratic splines to cubic bezier curves (2993).
- [glyf] Added experimental support for reading and writing Variable Composites/Components
as defined in glyf v1 spec proposal (2958):
https://github.com/harfbuzz/boring-expansion-spec/blob/main/glyf1-varComposites.md.
- [pens]: Added `addVarComponent` method to pen protocols' base classes, which pens can implement
to handle varcomponents (by default they get decomposed) (2958).
- [misc.transform] Added DecomposedTransform class which implements an affine transformation
with separate translate, rotation, scale, skew, and transformation-center components (2598)
- [sbix] Ensure Glyph.referenceGlyphName is set; fixes error after dumping and
re-compiling sbix table with 'dupe' glyphs (2984).
- [feaLib] Be cleverer when merging chained single substitutions into same lookup
when they are specified using the inline notation (2150, 2974).
- [instancer] Clamp user-inputted axis ranges to those of fvar (2959).
- [otBase/subset] Define ``__getstate__`` for BaseTable so that a copied/pickled 'lazy'
object gets its own OTTableReader to read from; incidentally fixes a bug while
subsetting COLRv1 table containing ClipBoxes on python 3.11 (2965, 2968).
- [sbix] Handle glyphs with "dupe" graphic type on compile correctly (2963).
- [glyf] ``endPointsOfContours`` field should be unsigned! Kudos to behdad for
spotting one of the oldest bugs in FT. Probably nobody has ever dared to make
glyphs with more than 32767 points... (2957).
- [feaLib] Fixed handling of ``ignore`` statements with unmarked glyphs to match
makeotf behavior, which assumes the first glyph is marked (2950).
- Reformatted code with ``black`` and enforce new code style via CI check (2925).
- [feaLib] Sort name table entries following OT spec prescribed order in the builder (2927).
- [cu2quPen] Add Cu2QuMultiPen that converts multiple outlines at a time in
interpolation compatible way; its methods take a list of tuples arguments
that would normally be passed to individual segment pens, and at the end it
dispatches the converted outlines to each pen (2912).
- [reverseContourPen/ttGlyphPen] Add outputImpliedClosingLine option (2913, 2914,
2921, 2922, 2995).
- [gvar] Avoid expanding all glyphs unnecessarily upon compile (2918).
- [scaleUpem] Fixed bug whereby CFF2 vsindex was scaled; it should not (2893, 2894).
- [designspaceLib] Add DS.getAxisByTag and refactor getAxis (2891).
- [unicodedata] map Zmth<->math in ot_tag_{to,from}_script (1737, 2889).
- [woff2] Support encoding/decoding OVERLAP_SIMPLE glyf flags (2576, 2884).
- [instancer] Update OS/2 class and post.italicAngle when default moved (L4)
- Dropped support for Python 3.7 which reached EOL, fontTools requires 3.8+.
- [instancer] Fixed instantiateFeatureVariations logic when a rule range becomes
default-applicable (2737, 2880).
- [ttLib] Add main to ttFont and ttCollection that just decompile and re-compile the
input font (2869).
- [featureVars] Insert 'rvrn' lookup at the beginning of LookupList, to work around bug
in Apple implementation of 'rvrn' feature which the spec says it should be processed
early whereas on macOS 10.15 it follows lookup order (2140, 2867).
- [instancer/mutator] Remove 'DSIG' table if present.
- [svgPathPen] Don't close path in endPath(), assume open unless closePath() (2089, 2865).
Links

Update future from 0.18.2 to 0.18.3.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update kiwisolver from 1.4.4 to 1.4.5.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update lxml from 4.9.1 to 4.9.3.

Changelog

4.9.3

==================

Bugs fixed
----------

* ``lxml.objectify`` accepted non-decimal numbers like ``²²²`` as integers.

* A memory leak in ``lxml.html.clean`` was resolved by switching to Cython 0.29.34+.

* GH348: URL checking in the HTML cleaner was improved.
Patch by Tim McCormack.

* GH371, GH373: Some regex strings were changed to raw strings to fix Python warnings.
Patches by Jakub Wilk and Anthony Sottile.

Other changes
-------------

* Wheels include zlib 1.2.13, libxml2 2.10.3 and libxslt 1.1.38
(zlib 1.2.12, libxml2 2.10.3 and libxslt 1.1.37 on Windows).

* Built with Cython 0.29.36 to adapt to changes in Python 3.12.

4.9.2

==================

Bugs fixed
----------

* CVE-2022-2309: A Bug in libxml2 2.9.1[0-4] could let namespace declarations
from a failed parser run leak into later parser runs.  This bug was worked around
in lxml and resolved in libxml2 2.10.0.
https://gitlab.gnome.org/GNOME/libxml2/-/issues/378

Other changes
-------------

* LP1981760: ``Element.attrib`` now registers as ``collections.abc.MutableMapping``.

* lxml now has a static build setup for macOS on ARM64 machines (not used for building wheels).
Patch by Quentin Leffray.
Links

Update matplotlib from 3.6.2 to 3.7.2.

Changelog

3.7.2

This is the second bugfix release of the 3.7.x series.

This release contains several bug-fixes and adjustments:

* Avoid modifying input masks in `pcolor`/`pcolormesh`
* Fix 3D set_aspect error cases
* Fix IPython's `%pylab` mode detection
* Fix `Figure.get_constrained_layout_pads()`
* Fix `Legend.set_draggable()` with `update="bbox"`
* Fix `TransformedBbox.{,full_}contains`
* Fix clipping of `bar_label` text
* Fix colorbar size when saving with explicit `bbox_inches`
* Fix errors when an input is entirely NaN
* Fix leaks of exception tracebacks and `LayoutGrid` objects
* Fix non-interpolated imshow in PDF export
* Fix palettized image optimization in PDF export
* Fix pgf tests with TeXLive 2022
* Fix removal of `Axes` that contain widgets that are grabbing the mouse
* Fix removal of draggable artists
* Fix subslice optimization for long, fully nan lines
* Fix tight layout if Figure has an existing layout manager
* Fix window extent of AnnotationBbox before first draw
* Fix wspace and hspace in subfigures
* Improve Qt compatibility
* Improve compatibility with Python 3.12
* Prevent under the hood downcasting of values in `xcorr`
* Remove some NumPy function overrides from `pylab`
* Remove warning with symlog scales on mouseover

3.7.1

This is the first bugfix release of the 3.7.x series.

This release contains several bug-fixes and adjustments:

* Ensure Qhull license is included in binary wheels
* Fix application of rcParams on Axes labels
* Fix compatibility with Pandas datetime unit converter
* Fix compatibility with latest GTK4
* Fix import of styles with relative path
* Fix Lasso unresponsiveness when clicking and immediately releasing
* Fix pickling of draggable legends
* Fix RangeSlider.set_val when new value is outside existing value
* Fix size of Tk spacers when changing display DPI
* Fix wrapped text in constrained layout
* Improve compatibility with third-party backends
* Improve error if animation save path does not exist

3.6.3

This is the third bugfix release of the 3.6.x series.

This release contains several bug-fixes and adjustments:

* Fix Artist removal from `axes_grid1` Axes classes
* Fix `inset_locator` in subfigures
* Fix `scatter` on masked arrays with units
* Fix colorbar ticks with log norm contours
* Fix deprecation warnings in GTK4 backend
* Fix using relative paths in `HTMLWriter`
* Improve failure message from rcParams string validation for tuple inputs
* Improve performance of QtAgg backends
* No longer modify `pil_kwargs` argument to `imsave` and `savefig`
Links

Update munch from 2.5.0 to 4.0.0.

Changelog

4.0.0

------------------

* Remove six dependency

3.0.0

------------------

* Fix munchify for tuples of lists  
* Require Python >=3.6 and upgrade syntax - thanks EwoutH
* Update __init__.py  to work with non standard version - thanks mboisson
* Allow importing even when VERSION read fails - thanks mdornseif and dangillet
* Add imports to README  
* replace pkg_resources with importlib.metadata - thanks dhellmann  
* Added RecursiveMunch object - thanks GuillaumeRochette
Links

Update numpy from 1.23.4 to 1.25.2.

Changelog

1.25.2

discovered after the 1.25.1 release. This is the last planned release in
the 1.25.x series, the next release will be 1.26.0, which will use the
meson build system and support Python 3.12. The Python versions
supported by this release are 3.9-3.11.

Contributors

A total of 13 people contributed to this release. People with a \"+\" by
their names contributed a patch for the first time.

-   Aaron Meurer
-   Andrew Nelson
-   Charles Harris
-   Kevin Sheppard
-   Matti Picus
-   Nathan Goldbaum
-   Peter Hawkins
-   Ralf Gommers
-   Randy Eckenrode +
-   Sam James +
-   Sebastian Berg
-   Tyler Reddy
-   dependabot\[bot\]

Pull requests merged

A total of 19 pull requests were merged for this release.

-   [24148](https://github.com/numpy/numpy/pull/24148): MAINT: prepare 1.25.x for further development
-   [24174](https://github.com/numpy/numpy/pull/24174): ENH: Improve clang-cl compliance
-   [24179](https://github.com/numpy/numpy/pull/24179): MAINT: Upgrade various build dependencies.
-   [24182](https://github.com/numpy/numpy/pull/24182): BLD: use `-ftrapping-math` with Clang on macOS
-   [24183](https://github.com/numpy/numpy/pull/24183): BUG: properly handle negative indexes in ufunc_at fast path
-   [24184](https://github.com/numpy/numpy/pull/24184): BUG: PyObject_IsTrue and PyObject_Not error handling in setflags
-   [24185](https://github.com/numpy/numpy/pull/24185): BUG: histogram small range robust
-   [24186](https://github.com/numpy/numpy/pull/24186): MAINT: Update meson.build files from main branch
-   [24234](https://github.com/numpy/numpy/pull/24234): MAINT: exclude min, max and round from `np.__all__`
-   [24241](https://github.com/numpy/numpy/pull/24241): MAINT: Dependabot updates
-   [24242](https://github.com/numpy/numpy/pull/24242): BUG: Fix the signature for np.array_api.take
-   [24243](https://github.com/numpy/numpy/pull/24243): BLD: update OpenBLAS to an intermeidate commit
-   [24244](https://github.com/numpy/numpy/pull/24244): BUG: Fix reference count leak in str(scalar).
-   [24245](https://github.com/numpy/numpy/pull/24245): BUG: fix invalid function pointer conversion error
-   [24255](https://github.com/numpy/numpy/pull/24255): BUG: Factor out slow `getenv` call used for memory policy warning
-   [24292](https://github.com/numpy/numpy/pull/24292): CI: correct URL in cirrus.star
-   [24293](https://github.com/numpy/numpy/pull/24293): BUG: Fix C types in scalartypes
-   [24294](https://github.com/numpy/numpy/pull/24294): BUG: do not modify the input to ufunc_at
-   [24295](https://github.com/numpy/numpy/pull/24295): BUG: Further fixes to indexing loop and added tests

Checksums

MD5

 33518ccb4da8ee11f1dee4b9fef1e468  numpy-1.25.2-cp310-cp310-macosx_10_9_x86_64.whl
 b5cb0c3b33ef6d93ec2888f25b065636  numpy-1.25.2-cp310-cp310-macosx_11_0_arm64.whl
 ae027dd38bd73f09c07220b2f516f148  numpy-1.25.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 88cf69dc3c0d293492c4c7e75dccf3d8  numpy-1.25.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 3e4e3ad02375ba71ae2cd05ccd97aba4  numpy-1.25.2-cp310-cp310-musllinux_1_1_x86_64.whl
 f52bb644682deb26c35ddec77198b65c  numpy-1.25.2-cp310-cp310-win32.whl
 4944cf36652be7560a6bcd0d5d56e8ea  numpy-1.25.2-cp310-cp310-win_amd64.whl
 5a56e639defebb7b871c8c5613960ca3  numpy-1.25.2-cp311-cp311-macosx_10_9_x86_64.whl
 3988b96944e7218e629255214f2598bd  numpy-1.25.2-cp311-cp311-macosx_11_0_arm64.whl
 302d65015ddd908a862fb3761a2a0363  numpy-1.25.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 e54a2e23272d1c5e5b278bd7e304c948  numpy-1.25.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 961d390e8ccaf11b1b0d6200d2c8b1c0  numpy-1.25.2-cp311-cp311-musllinux_1_1_x86_64.whl
 e113865b90f97079d344100c41226fbe  numpy-1.25.2-cp311-cp311-win32.whl
 834a147aa1adaec97655018b882232bd  numpy-1.25.2-cp311-cp311-win_amd64.whl
 fb55f93a8033bde854c8a2b994045686  numpy-1.25.2-cp39-cp39-macosx_10_9_x86_64.whl
 d96e754217d29bf045e082b695667e62  numpy-1.25.2-cp39-cp39-macosx_11_0_arm64.whl
 beab540edebecbb257e482dd9e498b44  numpy-1.25.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 e0d608c9e09cd8feba48567586cfefc0  numpy-1.25.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 fe1fc32c8bb005ca04b8f10ebdcff6dd  numpy-1.25.2-cp39-cp39-musllinux_1_1_x86_64.whl
 41df58a9935c8ed869c92307c95f02eb  numpy-1.25.2-cp39-cp39-win32.whl
 a4371272c64493beb8b04ac46c4c1521  numpy-1.25.2-cp39-cp39-win_amd64.whl
 bbe051cbd5f8661dd054277f0b0f0c3d  numpy-1.25.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
 3f68e6b4af6922989dc0133e37db34ee  numpy-1.25.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 fc89421b79e8800240999d3a1d06a4d2  numpy-1.25.2-pp39-pypy39_pp73-win_amd64.whl
 cee1996a80032d47bdf1d9d17249c34e  numpy-1.25.2.tar.gz

SHA256

 db3ccc4e37a6873045580d413fe79b68e47a681af8db2e046f1dacfa11f86eb3  numpy-1.25.2-cp310-cp310-macosx_10_9_x86_64.whl
 90319e4f002795ccfc9050110bbbaa16c944b1c37c0baeea43c5fb881693ae1f  numpy-1.25.2-cp310-cp310-macosx_11_0_arm64.whl
 dfe4a913e29b418d096e696ddd422d8a5d13ffba4ea91f9f60440a3b759b0187  numpy-1.25.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 f08f2e037bba04e707eebf4bc934f1972a315c883a9e0ebfa8a7756eabf9e357  numpy-1.25.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 bec1e7213c7cb00d67093247f8c4db156fd03075f49876957dca4711306d39c9  numpy-1.25.2-cp310-cp310-musllinux_1_1_x86_64.whl
 7dc869c0c75988e1c693d0e2d5b26034644399dd929bc049db55395b1379e044  numpy-1.25.2-cp310-cp310-win32.whl
 834b386f2b8210dca38c71a6e0f4fd6922f7d3fcff935dbe3a570945acb1b545  numpy-1.25.2-cp310-cp310-win_amd64.whl
 c5462d19336db4560041517dbb7759c21d181a67cb01b36ca109b2ae37d32418  numpy-1.25.2-cp311-cp311-macosx_10_9_x86_64.whl
 c5652ea24d33585ea39eb6a6a15dac87a1206a692719ff45d53c5282e66d4a8f  numpy-1.25.2-cp311-cp311-macosx_11_0_arm64.whl
 0d60fbae8e0019865fc4784745814cff1c421df5afee233db6d88ab4f14655a2  numpy-1.25.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 60e7f0f7f6d0eee8364b9a6304c2845b9c491ac706048c7e8cf47b83123b8dbf  numpy-1.25.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 bb33d5a1cf360304754913a350edda36d5b8c5331a8237268c48f91253c3a364  numpy-1.25.2-cp311-cp311-musllinux_1_1_x86_64.whl
 5883c06bb92f2e6c8181df7b39971a5fb436288db58b5a1c3967702d4278691d  numpy-1.25.2-cp311-cp311-win32.whl
 5c97325a0ba6f9d041feb9390924614b60b99209a71a69c876f71052521d42a4  numpy-1.25.2-cp311-cp311-win_amd64.whl
 b79e513d7aac42ae918db3ad1341a015488530d0bb2a6abcbdd10a3a829ccfd3  numpy-1.25.2-cp39-cp39-macosx_10_9_x86_64.whl
 eb942bfb6f84df5ce05dbf4b46673ffed0d3da59f13635ea9b926af3deb76926  numpy-1.25.2-cp39-cp39-macosx_11_0_arm64.whl
 3e0746410e73384e70d286f93abf2520035250aad8c5714240b0492a7302fdca  numpy-1.25.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 d7806500e4f5bdd04095e849265e55de20d8cc4b661b038957354327f6d9b295  numpy-1.25.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 8b77775f4b7df768967a7c8b3567e309f617dd5e99aeb886fa14dc1a0791141f  numpy-1.25.2-cp39-cp39-musllinux_1_1_x86_64.whl
 2792d23d62ec51e50ce4d4b7d73de8f67a2fd3ea710dcbc8563a51a03fb07b01  numpy-1.25.2-cp39-cp39-win32.whl
 76b4115d42a7dfc5d485d358728cdd8719be33cc5ec6ec08632a5d6fca2ed380  numpy-1.25.2-cp39-cp39-win_amd64.whl
 1a1329e26f46230bf77b02cc19e900db9b52f398d6722ca853349a782d4cff55  numpy-1.25.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
 4c3abc71e8b6edba80a01a52e66d83c5d14433cbcd26a40c329ec7ed09f37901  numpy-1.25.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 1b9735c27cea5d995496f46a8b1cd7b408b3f34b6d50459d9ac8fe3a20cc17bf  numpy-1.25.2-pp39-pypy39_pp73-win_amd64.whl
 fd608e19c8d7c55021dffd43bfe5492fab8cc105cc8986f813f8c3c048b38760  numpy-1.25.2.tar.gz

1.25.1

discovered after the 1.25.0 release. The Python versions supported by
this release are 3.9-3.11.

Contributors

A total of 10 people contributed to this release. People with a \"+\" by
their names contributed a patch for the first time.

-   Andrew Nelson
-   Charles Harris
-   Developer-Ecosystem-Engineering
-   Hood Chatham
-   Nathan Goldbaum
-   Rohit Goswami
-   Sebastian Berg
-   Tim Paine +
-   dependabot\[bot\]
-   matoro +

Pull requests merged

A total of 14 pull requests were merged for this release.

-   [23968](https://github.com/numpy/numpy/pull/23968): MAINT: prepare 1.25.x for further development
-   [24036](https://github.com/numpy/numpy/pull/24036): BLD: Port long double identification to C for meson
-   [24037](https://github.com/numpy/numpy/pull/24037): BUG: Fix reduction `return NULL` to be `goto fail`
-   [24038](https://github.com/numpy/numpy/pull/24038): BUG: Avoid undefined behavior in array.astype()
-   [24039](https://github.com/numpy/numpy/pull/24039): BUG: Ensure `__array_ufunc__` works without any kwargs passed
-   [24117](https://github.com/numpy/numpy/pull/24117): MAINT: Pin urllib3 to avoid anaconda-client bug.
-   [24118](https://github.com/numpy/numpy/pull/24118): TST: Pin pydantic\<2 in Pyodide workflow
-   [24119](https://github.com/numpy/numpy/pull/24119): MAINT: Bump pypa/cibuildwheel from 2.13.0 to 2.13.1
-   [24120](https://github.com/numpy/numpy/pull/24120): MAINT: Bump actions/checkout from 3.5.2 to 3.5.3
-   [24122](https://github.com/numpy/numpy/pull/24122): BUG: Multiply or Divides using SIMD without a full vector can\...
-   [24127](https://github.com/numpy/numpy/pull/24127): MAINT: testing for IS_MUSL closes #24074
-   [24128](https://github.com/numpy/numpy/pull/24128): BUG: Only replace dtype temporarily if dimensions changed
-   [24129](https://github.com/numpy/numpy/pull/24129): MAINT: Bump actions/setup-node from 3.6.0 to 3.7.0
-   [24134](https://github.com/numpy/numpy/pull/24134): BUG: Fix private procedures in f2py modules

Checksums

MD5

 d09d98643db31e892fad11b8c2b7af22  numpy-1.25.1-cp310-cp310-macosx_10_9_x86_64.whl
 d5b8d3b0424e2af41018f35a087c4500  numpy-1.25.1-cp310-cp310-macosx_11_0_arm64.whl
 1007893b1a8bfd97d445a63d29d33642  numpy-1.25.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 6a62d7a6cee310b41dc872aa7f3d7e8b  numpy-1.25.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 e81f6264aecfa2269c5d29d10c362cbc  numpy-1.25.1-cp310-cp310-musllinux_1_1_x86_64.whl
 ab8ecd125ca86eac0b3ada67ab66dad6  numpy-1.25.1-cp310-cp310-win32.whl
 5466bebeaafcc3d6e1b98858d77ff945  numpy-1.25.1-cp310-cp310-win_amd64.whl
 f31b059256ae09b7b83df63f52d8371e  numpy-1.25.1-cp311-cp311-macosx_10_9_x86_64.whl
 099f74d654888869704469c321af845d  numpy-1.25.1-cp311-cp311-macosx_11_0_arm64.whl
 20d04dccd2bfca5cfd88780d1dc9a3f8  numpy-1.25.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 61dfd7c00638e83a7af59b86615ee9d2  numpy-1.25.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 4eb459c3d9479c4da2fdf20e4c4085d0  numpy-1.25.1-cp311-cp311-musllinux_1_1_x86_64.whl
 5e84e797866c68ba65fa89a4bf4ba8ce  numpy-1.25.1-cp311-cp311-win32.whl
 87bb1633b2e8029dbfa1e59f7ab22625  numpy-1.25.1-cp311-cp311-win_amd64.whl
 3fcf2eb5970d848a26abdff1b10228e7  numpy-1.25.1-cp39-cp39-macosx_10_9_x86_64.whl
 d71e1cbe18fe05944219e5a5be1796bf  numpy-1.25.1-cp39-cp39-macosx_11_0_arm64.whl
 5b457e10834c991bca84aae7eaa49f34  numpy-1.25.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 5cbb4c2f2892fafdf6f34fcb37c9e743  numpy-1.25.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 7d9d1ae23cf5420652088bfe8e048d89  numpy-1.25.1-cp39-cp39-musllinux_1_1_x86_64.whl
 7e5bed491b85f0d7c718d6809f9b3ed2  numpy-1.25.1-cp39-cp39-win32.whl
 838e97b751bebadf47e2196b2c88ffa2  numpy-1.25.1-cp39-cp39-win_amd64.whl
 9ba95d8d6004d9659d7728fe93f67be9  numpy-1.25.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
 fbccb20254a2dc85bdec549a03b8eb56  numpy-1.25.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 95e36689e6dd078caf11e7e2a2d5f5f1  numpy-1.25.1-pp39-pypy39_pp73-win_amd64.whl
 768d0ebf15e2242f4c7ca7565bb5dd3e  numpy-1.25.1.tar.gz

SHA256

 77d339465dff3eb33c701430bcb9c325b60354698340229e1dff97745e6b3efa  numpy-1.25.1-cp310-cp310-macosx_10_9_x86_64.whl
 d736b75c3f2cb96843a5c7f8d8ccc414768d34b0a75f466c05f3a739b406f10b  numpy-1.25.1-cp310-cp310-macosx_11_0_arm64.whl
 4a90725800caeaa160732d6b31f3f843ebd45d6b5f3eec9e8cc287e30f2805bf  numpy-1.25.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 6c6c9261d21e617c6dc5eacba35cb68ec36bb72adcff0dee63f8fbc899362588  numpy-1.25.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 0def91f8af6ec4bb94c370e38c575855bf1d0be8a8fbfba42ef9c073faf2cf19  numpy-1.25.1-cp310-cp310-musllinux_1_1_x86_64.whl
 fd67b306320dcadea700a8f79b9e671e607f8696e98ec255915c0c6d6b818503  numpy-1.25.1-cp310-cp310-win32.whl
 c1516db588987450b85595586605742879e50dcce923e8973f79529651545b57  numpy-1.25.1-cp310-cp310-win_amd64.whl
 6b82655dd8efeea69dbf85d00fca40013d7f503212bc5259056244961268b66e  numpy-1.25.1-cp311-cp311-macosx_10_9_x86_64.whl
 e8f6049c4878cb16960fbbfb22105e49d13d752d4d8371b55110941fb3b17800  numpy-1.25.1-cp311-cp311-macosx_11_0_arm64.whl
 41a56b70e8139884eccb2f733c2f7378af06c82304959e174f8e7370af112e09  numpy-1.25.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 d5154b1a25ec796b1aee12ac1b22f414f94752c5f94832f14d8d6c9ac40bcca6  numpy-1.25.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 38eb6548bb91c421261b4805dc44def9ca1a6eef6444ce35ad1669c0f1a3fc5d  numpy-1.25.1-cp311-cp311-musllinux_1_1_x86_64.whl
 791f409064d0a69dd20579345d852c59822c6aa087f23b07b1b4e28ff5880fcb  numpy-1.25.1-cp311-cp311-win32.whl
 c40571fe966393b212689aa17e32ed905924120737194b5d5c1b20b9ed0fb171  numpy-1.25.1-cp311-cp311-win_amd64.whl
 3d7abcdd85aea3e6cdddb59af2350c7ab1ed764397f8eec97a038ad244d2d105  numpy-1.25.1-cp39-cp39-macosx_10_9_x86_64.whl
 1a180429394f81c7933634ae49b37b472d343cccb5bb0c4a575ac8bbc433722f  numpy-1.25.1-cp39-cp39-macosx_11_0_arm64.whl
 d412c1697c3853c6fc3cb9751b4915859c7afe6a277c2bf00acf287d56c4e625  numpy-1.25.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 20e1266411120a4f16fad8efa8e0454d21d00b8c7cee5b5ccad7565d95eb42dd  numpy-1.25.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 f76aebc3358ade9eacf9bc2bb8ae589863a4f911611694103af05346637df1b7  numpy-1.25.1-cp39-cp39-musllinux_1_1_x86_64.whl
 247d3ffdd7775bdf191f848be8d49100495114c82c2bd134e8d5d075fb386a1c  numpy-1.25.1-cp39-cp39-win32.whl
 1d5d3c68e443c90b38fdf8ef40e60e2538a27548b39b12b73132456847f4b631  numpy-1.25.1-cp39-cp39-win_amd64.whl
 35a9527c977b924042170a0887de727cd84ff179e478481404c5dc66b4170009  numpy-1.25.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
 0d3fe3dd0506a28493d82dc3cf254be8cd0d26f4008a417385cbf1ae95b54004  numpy-1.25.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 012097b5b0d00a11070e8f2e261128c44157a8689f7dedcf35576e525893f4fe  numpy-1.25.1-pp39-pypy39_pp73-win_amd64.whl
 9a3a9f3a61480cc086117b426a8bd86869c213fc4072e606f01c4e4b66eb92bf  numpy-1.25.1.tar.gz

1.25.0

The NumPy 1.25.0 release continues the ongoing work to improve the
handling and promotion of dtypes, increase the execution speed, and
clarify the documentation. There has also been work to prepare for the
future NumPy 2.0.0 release, resulting in a large number of new and
expired deprecation. Highlights are:

-   Support for MUSL, there are now MUSL wheels.
-   Support the Fujitsu C/C++ compiler.
-   Object arrays are now supported in einsum
-   Support for inplace matrix multiplication (`=`).

We will be releasing a NumPy 1.26 when Python 3.12 comes out. That is
needed because distutils has been dropped by Python 3.12 and we will be
switching to using meson for future builds. The next mainline release
will be NumPy 2.0.0. We plan that the 2.0 series will still support
downstream projects built against earlier versions of NumPy.

The Python versions supported in this release are 3.9-3.11.

Deprecations

-   `np.core.MachAr` is deprecated. It is private API. In names defined
 in `np.core` should generally be considered private.

 ([gh-22638](https://github.com/numpy/numpy/pull/22638))

-   `np.finfo(None)` is deprecated.

 ([gh-23011](https://github.com/numpy/numpy/pull/23011))

-   `np.round_` is deprecated. Use `np.round` instead.

 ([gh-23302](https://github.com/numpy/numpy/pull/23302))

-   `np.product` is deprecated. Use `np.prod` instead.

 ([gh-23314](https://github.com/numpy/numpy/pull/23314))

-   `np.cumproduct` is deprecated. Use `np.cumprod` instead.

 ([gh-23314](https://github.com/numpy/numpy/pull/23314))

-   `np.sometrue` is deprecated. Use `np.any` instead.

 ([gh-23314](https://github.com/numpy/numpy/pull/23314))

-   `np.alltrue` is deprecated. Use `np.all` instead.

 ([gh-23314](https://github.com/numpy/numpy/pull/23314))

-   Only ndim-0 arrays are treated as scalars. NumPy used to treat all
 arrays of size 1 (e.g., `np.array([3.14])`) as scalars. In the
 future, this will be limited to arrays of ndim 0 (e.g.,
 `np.array(3.14)`). The following expressions will report a
 deprecation warning:

  python
 a = np.array([3.14])
 float(a)   better: a[0] to get the numpy.float or a.item()

 b = np.array([[3.14]])
 c = numpy.random.rand(10)
 c[0] = b   better: c[0] = b[0, 0]
 

 ([gh-10615](https://github.com/numpy/numpy/pull/10615))

-   `numpy.find_common_type` is now deprecated and its use
 should be replaced with either `numpy.result_type` or
 `numpy.promote_types`. Most users leave the second
 `scalar_types` argument to `find_common_type` as `[]` in which case
 `np.result_type` and `np.promote_types` are both faster and more
 robust. When not using `scalar_types` the main difference is that
 the replacement intentionally converts non-native byte-order to
 native byte order. Further, `find_common_type` returns `object`
 dtype rather than failing promotion. This leads to differences when
 the inputs are not all numeric. Importantly, this also happens for
 e.g. timedelta/datetime for which NumPy promotion rules are
 currently sometimes surprising.

 When the `scalar_types` argument is not `[]` things are more
 complicated. In most cases, using `np.result_type` and passing the
 Python values `0`, `0.0`, or `0j` has the same result as using
 `int`, `float`, or `complex` in `scalar_types`.

 When `scalar_types` is constructed, `np.result_type` is the correct
 replacement and it may be passed scalar values like
 `np.float32(0.0)`. Passing values other than 0, may lead to
 value-inspecting behavior (which `np.find_common_type` never used
 and NEP 50 may change in the future). The main possible change in
 behavior in this case, is when the array types are signed integers
 and scalar types are unsigned.

 If you are unsure about how to replace a use of `scalar_types` or
 when non-numeric dtypes are likely, please do not hesitate to open a
 NumPy issue to ask for help.

 ([gh-22539](https://github.com/numpy/numpy/pull/22539))

Expired deprecations

-   `np.core.machar` and `np.finfo.machar` have been removed.

 ([gh-22638](https://github.com/numpy/numpy/pull/22638))

-   `+arr` will now raise an error when the dtype is not numeric (and
 positive is undefined).

 ([gh-22998](https://github.com/numpy/numpy/pull/22998))

-   A sequence must now be passed into the stacking family of functions
 (`stack`, `vstack`, `hstack`, `dstack` and `column_stack`).

 ([gh-23019](https://github.com/numpy/numpy/pull/23019))

-   `np.clip` now defaults to same-kind casting. Falling back to unsafe
 casting was deprecated in NumPy 1.17.

 ([gh-23403](https://github.com/numpy/numpy/pull/23403))

-   `np.clip` will now propagate `np.nan` values passed as `min` or
 `max`. Previously, a scalar NaN was usually ignored. This was
 deprecated in NumPy 1.17.

 ([gh-23403](https://github.com/numpy/numpy/pull/23403))

-   The `np.dual` submodule has been removed.

 ([gh-23480](https://github.com/numpy/numpy/pull/23480))

-   NumPy now always ignores sequence behavior for an array-like
 (defining one of the array protocols). (Deprecation started NumPy
 1.20)

 ([gh-23660](https://github.com/numpy/numpy/pull/23660))

-   The niche `FutureWarning` when casting to a subarray dtype in
 `astype` or the array creation functions such as `asarray` is now
 finalized. The behavior is now always the same as if the subarray
 dtype was wrapped into a single field (which was the workaround,
 previously). (FutureWarning since NumPy 1.20)

 ([gh-23666](https://github.com/numpy/numpy/pull/23666))

-   `==` and `!=` warnings have been finalized. The `==` and `!=`
 operators on arrays now always:

 -   raise errors that occur during comparisons such as when the
     arrays have incompatible shapes
     (`np.array([1, 2]) == np.array([1, 2, 3])`).

 -   return an array of all `True` or all `False` when values are
     fundamentally not comparable (e.g. have different dtypes). An
     example is `np.array(["a"]) == np.array([1])`.

     This mimics the Python behavior of returning `False` and `True`
     when comparing incompatible types like `"a" == 1` and
     `"a" != 1`. For a long time these gave `DeprecationWarning` or
     `FutureWarning`.

 ([gh-22707](https://github.com/numpy/numpy/pull/22707))

-   Nose support has been removed. NumPy switched to using pytest in
 2018 and nose has been unmaintained for many years. We have kept
 NumPy\'s nose support to avoid breaking downstream projects who
 might have been using it and not yet switched to pytest or some
 other testing framework. With the arrival of Python 3.12, unpatched
 nose will raise an error. It is time to move on.

 *Decorators removed*:

 -   raises
 -   slow
 -   setastest
 -   skipif
 -   knownfailif
 -   deprecated
 -   parametrize
 -   \_needs_refcount

 These are not to be confused with pytest versions with similar
 names, e.g., pytest.mark.slow, pytest.mark.skipif,
 pytest.mark.parametrize.

 *Functions removed*:

 -   Tester
 -   import_nose
 -   run_module_suite

 ([gh-23041](https://github.com/numpy/numpy/pull/23041))

-   The `numpy.testing.utils` shim has been removed. Importing from the
 `numpy.testing.utils` shim has been deprecated since 2019, the shim
 has now been removed. All imports should be made directly from
 `numpy.testing`.

 ([gh-23060](https://github.com/numpy/numpy/pull/23060))

-   The environment variable to disable dispatching has been removed.
 Support for the `NUMPY_EXPERIMENTAL_ARRAY_FUNCTION` environment
 variable has been removed. This variable disabled dispatching with
 `__array_function__`.

 ([gh-23376](https://github.com/numpy/numpy/pull/23376))

-   Support for `y=` as an alias of `out=` has been removed. The `fix`,
 `isposinf` and `isneginf` functions allowed using `y=` as a
 (deprecated) alias for `out=`. This is no longer supported.

 ([gh-23376](https://github.com/numpy/numpy/pull/23376))

Compatibility notes

-   The `busday_count` method now correctly handles cases where the
 `begindates` is later in time than the `enddates`. Previously, the
 `enddates` was included, even though the documentation states it is
 always excluded.

 ([gh-23229](https://github.com/numpy/numpy/pull/23229))

-   When comparing datetimes and timedelta using `np.equal` or
 `np.not_equal` numpy previously allowed the comparison with
 `casting="unsafe"`. This operation now fails. Forcing the output
 dtype using the `dtype` kwarg can make the operation succeed, but we
 do not recommend it.

 ([gh-22707](https://github.com/numpy/numpy/pull/22707))

-   When loading data from a file handle using `np.load`, if the handle
 is at the end of file, as can happen when reading multiple arrays by
 calling `np.load` repeatedly, numpy previously raised `ValueError`
 if `allow_pickle=False`, and `OSError` if `allow_pickle=True`. Now
 it raises `EOFError` instead, in both cases.

 ([gh-23105](https://github.com/numpy/numpy/pull/23105))

`np.pad` with `mode=wrap` pads with strict multiples of original data

Code based on earlier version of `pad` that uses `mode="wrap"` will
return different results when the padding size is larger than initial
array.

`np.pad` with `mode=wrap` now always fills the space with strict
multiples of original data even if the padding size is larger than the
initial array.

([gh-22575](https://github.com/numpy/numpy/pull/22575))

Cython `long_t` and `ulong_t` removed

`long_t` and `ulong_t` were aliases for `longlong_t` and `ulonglong_t`
and confusing (a remainder from of Python 2). This change may lead to
the errors:

 'long_t' is not a type identifier
 'ulong_t' is not a type identifier

We recommend use of bit-sized types such as `cnp.int64_t` or the use of
`cnp.intp_t` which is 32 bits on 32 bit systems and 64 bits on 64 bit
systems (this is most compatible with indexing). If C `long` is desired,
use plain `long` or `npy_long`. `cnp.int_t` is also `long` (NumPy\'s
default integer). However, `long` is 32 bit on 64 bit windows and we may
wish to adjust this even in NumPy. (Please do not hesitate to contact
NumPy developers if you are curious about this.)

([gh-22637](https://github.com/numpy/numpy/pull/22637))

Changed error message and type for bad `axes` argument to `ufunc`

The error message and type when a wrong `axes` value is passed to
`ufunc(..., axes=[...])` has changed. The message is now more
indicative of the problem, and if the value is mismatched an
`AxisError` will be raised. A `TypeError` will still be raised for
invalidinput types.

([gh-22675](https://github.com/numpy/numpy/pull/22675))

Array-likes that define `__array_ufunc__` can now override ufuncs if used as `where`

If the `where` keyword argument of a `numpy.ufunc`{.interpreted-text
role="class"} is a subclass of `numpy.ndarray`{.interpreted-text
role="class"} or is a duck type that defines
`numpy.class.__array_ufunc__`{.interpreted-text role="func"} it can
override the behavior of the ufunc using the same mechanism as the input
and output arguments. Note that for this to work properly, the
`where.__array_ufunc__` implementation will have to unwrap the `where`
argument to pass it into the default implementation of the `ufunc` or,
for `numpy.ndarray`{.interpreted-text role="class"} subclasses before
using `super().__array_ufunc__`.

([gh-23240](https://github.com/numpy/numpy/pull/23240))

Compiling against the NumPy C API is now backwards compatible by default

NumPy now defaults to exposing a backwards compatible subset of the
C-API. This makes the use of `oldest-supported-numpy` unnecessary.
Libraries can override the default minimal version to be compatible with
using:

 define NPY_TARGET_VERSION NPY_1_22_API_VERSION

before including NumPy or by passing the equivalent `-D` option to the
compiler. The NumPy 1.25 default is `NPY_1_19_API_VERSION`. Because the

1.24.4

discovered after the 1.24.3 release. It is the last planned
release in the 1.24.x cycle. The Python versions supported by
this release are 3.8-3.11.

Contributors

A total of 4 people contributed to this release. People with a \"+\" by
their names contributed a patch for the first time.

-   Bas van Beek
-   Charles Harris
-   Sebastian Berg
-   Hongyang Peng +

Pull requests merged

A total of 6 pull requests were merged for this release.

-   [23720](https://github.com/numpy/numpy/pull/23720): MAINT, BLD: Pin rtools to version 4.0 for Windows builds.
-   [23739](https://github.com/numpy/numpy/pull/23739): BUG: fix the method for checking local files for 1.24.x
-   [23760](https://github.com/numpy/numpy/pull/23760): MAINT: Copy rtools installation from install-rtools.
-   [23761](https://github.com/numpy/numpy/pull/23761): BUG: Fix masked array ravel order for A (and somewhat K)
-   [23890](https://github.com/numpy/numpy/pull/23890): TYP,DOC: Annotate and document the `metadata` parameter of\...
-   [23994](https://github.com/numpy/numpy/pull/23994): MAINT: Update rtools installation

Checksums

MD5

 25049e3aee79dde29e7a498d3ad13379  numpy-1.24.4-cp310-cp310-macosx_10_9_x86_64.whl
 579b5c357c918feaef4af03af8afb721  numpy-1.24.4-cp310-cp310-macosx_11_0_arm64.whl
 c873a14fa4f0210884db9c05e2904286  numpy-1.24.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 110a13ac016286059f0658b52b3646c0  numpy-1.24.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 fa67218966c0aef4094867cad7703648  numpy-1.24.4-cp310-cp310-win32.whl
 6ee768803d8ebac43ee0a04e628a69f9  numpy-1.24.4-cp310-cp310-win_amd64.whl
 0c918c16b58cb7f6773ea7d76e0bdaff  numpy-1.24.4-cp311-cp311-macosx_10_9_x86_64.whl
 20506ae8003faf097c6b3a8915b4140e  numpy-1.24.4-cp311-cp311-macosx_11_0_arm64.whl
 902df9d5963e89d88a1939d94207857f  numpy-1.24.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 2543611d802c141c8276e4868b4d9619  numpy-1.24.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 37b23a4e4e148d61dd3a515ac5dbf7ec  numpy-1.24.4-cp311-cp311-win32.whl
 25e9f6bee2b65ff2a87588e717f15165  numpy-1.24.4-cp311-cp311-win_amd64.whl
 f39a0cc3655a482af7d300bcaff5978e  numpy-1.24.4-cp38-cp38-macosx_10_9_x86_64.whl
 9ed27941388fdb392e8969169f3fc600  numpy-1.24.4-cp38-cp38-macosx_11_0_arm64.whl
 dee3f0c7482f1dc8bd1cd27b9b028a2c  numpy-1.24.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 2cc0967af29df3caef9fb3520f14e071  numpy-1.24.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 8572a3a0973fa78355bcb5f737745b47  numpy-1.24.4-cp38-cp38-win32.whl
 771c63f2ef0d31466bbb12362a532265  numpy-1.24.4-cp38-cp38-win_amd64.whl
 5713d9dc3dff287fb72121fe1960c48d  numpy-1.24.4-cp39-cp39-macosx_10_9_x86_64.whl
 4e6718e3b655219a2a733b4fa242ca32  numpy-1.24.4-cp39-cp39-macosx_11_0_arm64.whl
 31487f9a52ef81f8f88ec7fce8738dad  numpy-1.24.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 ea597b30187e55eb16ee31631e66f60d  numpy-1.24.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 98adbf30c67154056474001c125f6188  numpy-1.24.4-cp39-cp39-win32.whl
 49c444b0e572ef45f1d92c106a36004e  numpy-1.24.4-cp39-cp39-win_amd64.whl
 cdddfdeac437b0f20b4e366f00b5c42e  numpy-1.24.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
 3778338c15628caa3abd61e6f7bd46ec  numpy-1.24.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 e16bd49d5295dc1b01ed50d76229fb54 

@pyup-bot
Copy link
Collaborator Author

pyup-bot commented Oct 1, 2023

Closing this in favor of #266

@pyup-bot pyup-bot closed this Oct 1, 2023
@jamiebull1 jamiebull1 deleted the pyup-scheduled-update-2023-09-01 branch October 1, 2023 16:38
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.

1 participant