In case the overlayfs-tools are built using meson, a test triggers
during meson setup phase during do_configure task. The test invokes
"sudo", which may not be present on the build machine. Skip the test
at meson setup phase. Tests should be executed separately on demand
using "meson test" command instead, and invoking "sudo" and expecting
it to work during do_configure is unusual.
"
ERROR: overlayfs-tools-v2025.01-r0 do_configure: meson setup failed
...
| Run-time dependency musl-fts found: NO (tried pkgconfig)
| Library m found: YES
| Program test_cases/run_tests.py found: YES (/home/oe/build-some-target/tmp/work/arm64-distro-linux/overlayfs-tools/v2025.01/sources/overlayfs-tools-v2025.01/test_cases/run_tests.py)
|
| ../sources/overlayfs-tools-v2025.01/meson.build:94:0: ERROR: Program 'sudo' not found or not executable
|
| A full log can be found at /home/oe/build-some-target/tmp/work/arm64-distro-linux/overlayfs-tools/v2025.01/build/meson-logs/meson-log.txt
|
| Last 10 lines of meson-log.txt:
| Code:
| int main(void) { return 0; }
"
Signed-off-by: Marek Vasut <marek.vasut@mailbox.org>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.13.0:
- Document explicit proxy evaluation and identity checks with None.
- Fixed some broken tests on Python 3.15.
- Added configuration for Windows ARM64 wheels.
- Added Python 3.15 wheels.
- Dropped support for EOL Python 3.10 and 3.9.
- Dropped wheel building for Python 3.13 free-threading
(experimental and unsupported by cibuildwheel anymore; details).
- Fixed typo in __annotations__ (basically it was broken).
License-Update: Copyright years updated
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 3.7:
Highlights:
- The isomorphism checking suite of tools has been upgraded. The
VF2++ functions now provide subgraph isomorphism and subgraph
monomorphism checking.
- Leiden based community detection algorithms are now supported via
leiden_communities and leiden_partitions. This provides an
alternative, often improved, community detection algorithm
compared to the Louvain functions.
- The pygraphviz library is now provided via pip with wheels that
include the GraphViz binaries. This should make the NetworkX
interface to pygraphviz easier to use for graph layout and
rendering.
API Changes:
- Expire random lobster dep.
- API: Expire deprecations of could-be isomorphism aliases.
- Proposal to deprecate bfs_predecessors.
- Change maximal_independent_set to return set instead of list
.
- Add centroid as alias to barycenter.
- API: Deprecate p2g module.
Enhancements:
- Adding the Tree Optimization in Floyd Warshall.
- Kruskal MST early break for efficiency.
- create new generator that returns a random k-lift of a d-regular
graph.
- Floyd Warshall: Adding support for weight parameter as a callable.
- [ENH] Flow algorithms: Add support for callable capacity
parameter.
- fix: add suggestions from #8021 and #8029 to is_aperiodic.
- Improve chordal code readability by removing helper function.
- FEAT: Added basic random walk utilities #8378.
- Implement Constant-Potts Model (for use with Leiden community
detection).
- The isomorphism checking suite of tools has been upgraded. The
VF2++ functions now provide subgraph isomorphism and subgraph
monomorphism checking.
- Adding optional sp arg to closeness_centrality.
- perf: replace built-in sum() with np.sum() in pagerank and katz.
- ENH: Add format parameter to adjacency_matrix.
- Proposal: Add density to nx.describe defaults.
- Add utility to extract faces from PlanarEmbedding.
- Improving views exceptions.
- Optimize _build_paths_from_predecessors stack logic for 30-40%
speedup.
- EHN: Add nonedge argument to from_numpy_array and complete the
roundtrip.
- State-of-the-art implementation of Tarjan's algorithm.
- Add description and keywords support to GEXF reader/writer.
- DOC: more barycenter and centroid equivalence.
- ENH: Add Barber's bipartite modularity quality function.
- Leiden based community detection algorithms are now supported via
leiden_communities and leiden_partitions. This provides an
alternative, often improved, community detection algorithm
compared to the Louvain functions.
- ENH: Add Shen's overlapping modularity quality function.
- ENH: leiden test and doc_string improvements.
- Add butterflies() to bipartite cluster module.
- Avoid O(E) lookup in nx.display -issue8639.
- Add HITS algorithm benchmark to benchmark suite.
- Add DAG antichain width.
- escape tuple labels in generate_gml.
- Speed up the residual flow reset in edmonds_karp and simplify the
minimum_cut partition.
- Avoid building the flow dict in maximum_flow_value.
- ENH: add n_samples parameter to rich_club_coefficient for
multi-sample averaging.
- Simplifying _build_paths_from_predecessors - 10% faster.
- {label=Highlight} The isomorphism checking suite of tools has
been upgraded. The ISMAGS symmetry aware isomorphism and subgraph
isomorphism checking tools now support directed and multigraph
Graphs. And, now in addition to support for (induced) subgraph
isomorphisms, they support (non-induced subgraph) monomorphism.
- ENH: adding magnetic_laplacian_matrix.
- ENH: Speed up connectivity checks in random_reference and
lattice_reference.
- [BUG][PERF] Fix ISMAGS directed matching and monomorphism
overhead.
- Add: Shrikhande graph.
Bug Fixes:
- Bug: Floyd Warshall: resolved self positive loop bug.
- Bugfix for spring layouts with empty list of fixed nodes.
- Fixed diameter/radius error for null graphs.
- Floyd warshall: raises error if negative cycle is found.
- BUG: fix ISMAGS self-loops error.
- Fix cost function in min_weighted_dominating_set.
- Fix sparse heuristic not applied to diagonal blocks in
stochastic_block_model.
- BUG: fix SpanningTreeIterator AttributeError when using next()
directly.
- Fix all_node_cuts: correct Even-Tarjan reduction for Kanevsky's
algorithm.
- fix multigraph isomorphism tests and fix support in ISMAGS and in
VF2pp.
- BUG: Make argmap._lazy_compile thread-safe.
- reject out-of-range bytes in graph6/sparse6 decoders.
- Fix: bug with mean degree part of
geometric_soft_configuration_model.
- Fix k_components losing or truncating k-components.
- Fix ISMAGS ignoring matches when graph has extra node/edge colors
(gh-8738).
- BUG: reverse the map returned by vf2pp functions.
- BUG: Fix node connectivity and node cuts for digraphs.
- BUG: Use power iteration as the default HITS implementation.
- BUG: group betweenness gives incorrect values for undirected
connected graph.
- BUG: Group betweenness centrality counts paths incorrectly for
directed but not strongly connected.
- BUG: Group betweenness skips adjustments if any sigma is zero.
- BUG: Handle KeyErrors in directed not strongly-connected
group_betweenness_centrality.
- BUG: correct normalization of group betweenness centrality when
endpoints is true.
- [BUG][PERF] Fix ISMAGS directed matching and monomorphism
overhead.
- BUG: Fix vf2 handling of isomorphism_iter with isolated subgraph
nodes.
- fix: handle empty candidate sets in
ISMAGS.largest_common_subgraph.
- BUG: Hold the graph weakly in cached edge and degree views.
Documentation:
- Improving FP recommendations.
- DOC: add Reporting Views reference page and include in toctree.
- Betweenness documentation definitions should match default
behavior.
- docs: clarify chordal_cycle_graph degree for multigraph vs simple
graph.
- DOC: dedup graph setup in fp tutorial cells.
- Clarify decorator usage in backend implementations.
- DOC: Warn that env vars must be set before importing networkx.
- Update PGF/TikZ link.
- Consolidate reportviews documentation.
- Document betweenness normalizations correctly.
- DOC: Add nx-guides cross-link to plot_lca example.
- DOC: Update link to football data.
- Clarify that bfs_predecessors() does not actually search through
predecessors.
- Add example to filter multiedges in edge_subgraph docstring.
- Doc: Add nx_pydot to DOT file documentation.
- Adopt scikit-learn's agentic AI policy.
- Clarify a note on graph ordering in graph_atlas_g docstring.
- DOC: Update import convention for bipartite docstring examples.
- DOC: Use dict(G.degree) in examples.
- Fix typo: thrid-party to third-party in tutorial.
- Fix: minor typo in docstring.
- DOC: Add docstring examples to random_walk.
- DOC: first step to add football.zip to examples directory.
- DOC: Add football example using url to our own examples github
folder.
- DOC: Remove Good First Issue references from docs.
- DOC: Add note about from_scipy_sparse_array treating zeros as
explicit zeros.
- Update maximal_independent_set docstring.
- Add examples to degree_histogram docstring.
- Gallery: Fix and update basic_properties example.
- Added example for SpanningTreeIterator to find min spanning trees.
- Gallery: Update basic read/write example.
- Gallery: split simple graph example into two separate ones.
- Fix broken links in quotient_graph docstring and other minor doc
warnings.
- Gallery: Improve plot_dag example.
- Gallery: Improve plot_degree_sequence example.
- Enhance has_cycle docstring with usage examples.
- DOC: Remove redundant sphinx links.
- DOC: clarify lazy exception behavior in topological_sort
generator.
- Fixed incorrect description of modularity formula for directed
graphs.
- DOC: clarify remaining readwrite generator docstrings.
- DOC: Add note about connectionstyle effectiveness.
- DOC: more barycenter and centroid equivalence.
- DOC: Add xref to nx-guides to gallery overview.
- DOC: Add conference information to visualization in football
example.
- leiden: fix "wen" + duplicate "the the" in q_add comment.
- Fix star graph node count in dual_barabasi_albert_graph comment.
- DOC: update to roadmap.
- DOC: Clarify degree_centrality behavior for directed graphs.
- DOC: Fixups for Leiden docstrings.
- DOC: Update install guide.
- Louvain updates to docs and code readability.
- DOC: Add Hiveplotlib to Drawing Docs and External Examples
Gallery.
- Clarify attribute behavior in relabel_nodes when multiple nodes
map to the same target.
- MAINT: update code of conduct form link to match NumFOCUS link.
- Warn when PageRank convergence check is ineffective.
- DOC: fix lattice_reference niter default (5, not 1).
- Fix typos in comments and docstrings.
- DOC: Add example of floating point handling for maximum_flow
capacity.
- DOC: minor tweaks to biconnected docstring examples.
- BUG: fix bfs_successors yielding empty tuple for zero-successor
source.
- DOC: clarify method='unweighted' behavior in all_shortest_paths
helpers.
- Fix docstring parameters that are not in the signature.
- Raise NetworkXError on unknown attribute class in GEXF reader.
- DOC: add example of immediate post-dominators.
- Fix four docstring parameter names that do not match the
signature.
- DOC: Add details about steiner tree approxmation for disconnected
graphs.
- DOC: Fix broken link in leiden_partitions.
- DOC: Fixup communicability.
- DOC: document bfs_layout raises.
- Add and correct ISMAGS method docs.
- DOC: Fix write graphml docstring examples.
- DOC: Fix edgelist docstring examples.
- DOC: Fix TeX docstring examples.
- DOC: Fixing adjlist docstring examples.
- DOC: Fix gexf docstring examples.
- DOC: Fixing bipartite.write_edgelist docstring examples.
- DOC: Fix pajek docstring examples.
- DOC: Update bipartite.read_edgelist docstring examples.
- DOC: Fix multiadjlist docstring examples.
- DOC: Fix gml docstring examples.
- [BUG][PERF] Fix ISMAGS directed matching and monomorphism
overhead.
- DOC: Fix Parameters indentation in generate_gexf.
- Expose *Matcher classes to get them into the objects inventory.
Maintenance:
- Relaxes check for undirected edge node ordering when backends are
used for networkx tests.
- Revert "pin python 3.14 to be version 3.14.0 until dataclasses
are fixed".
- MAINT: Single implementation for different returns.
- CI: Build docs in parallel.
- BENCH: Add minimum spanning tree to benchmarks.
- fix: circular_ladder_graph edge cases for n < 2.
- Fix/refactor dag root to leaf.
- fix: preserve string positions in to_agraph conversion.
- BUG: forceatlas2 layout with nonarray complete initial positions.
- Add benchmarks for is_chordal.
- Explicitly install nx after deps.
- Minor improvements to chordal_graph_treewidth.
- DOC: Eliminate sphinx build warnings.
- CI: Bump dispatch workflow python version.
- Update minimum dependencies (SPEC 0) and drop python 3.11.
- Remove _hits_scipy code that has been deprecated.
- DOC: footnote -> hyperlink.
- Linting exceptions.
- BUGFIX: spring energy and ARF layouts with zero iterations.
- Expire random lobster dep.
- MAINT: Reuse could_be_isomorphic in fast_/faster_ variants.
- API: Expire deprecations of could-be isomorphism aliases.
- MAINT: Bump linters.
- CI: Use pixi for CI platform/OS independent tasks.
- CI: Explicitly add pip as a dep while resolving doc env.
- Minor random_walks test refactor.
- Refactor random walk implementation.
- Minor update to zip examples.
- TST: Dedup and refactor closeness centrality tests.
- MAINT: clarify error when RandomState is used with random API.
- MAINT: remove unused functions and imports.
- MAINT: Minor readability tweaks to pagerank.
- Raise ValueError in write_gexf for mixed typed attributes.
- BUG: Handle small graphs in information_centrality.
- CI: fix benchmark PR workflow checkout.
- Followup that fixes import order.
- MAINT: remove unused imports and dead helpers.
- MAINT: Handle insufficient degree Pearson samples.
- Optimize VF2 GMState frontier update by removing full core scan.
- MAINT: Avoid subgraph views in strategy_connected_sequential.
- Cleanup butterflies tests.
- Remove unused dsum variable from havel_hakimi_graph.
- CI: networkx default deps were leaking into the pixi default env.
- DOC/CI: Update github label requirements for user experience.
- CI: Redo benchmarks to use pixi around asv.
- MAINT: Fix ci permissions.
- MAINT: Minor touchups to lexicographical_toplogical_sort.
- MAINT: Rm MANIFEST.in.
- CI: Add image comparison tests to pre-release workflows.
- MAINT: Avoid subgraph views in is_forest.
- TST, MAINT: explict graphviz check for test_pydot.
- CI: Fix circleci artifact redirector permissions.
- write xsd:boolean true/false for dynamic gexf attvalues.
- escape quotes and backslashes in pajek make_qstr.
- Louvain updates to docs and code readability.
- Align boruvka_mst_edges keys default with kruskal/prim and fix
docstring typo.
- TST: Test maintenance for test_clique.py.
- Optimize Leiden data handling.
- MAINT: Avoid Louvain infinite loops.
- MAINT: avoid timeouts on circleci.
- MAINT: bump copyright year before release.
- BENCH: Add clustering to algorithm benchmarks.
- CI: Add back --doctest-modules flag to base tests.
- Prune nested components in k_components reconstruction and add
tests the private helpers.
- Fix reverse to preserve all attributes in dispatch conversions.
- Clear the dispatch cache in remove_{node,edge}_attributes.
- Fix "accidentally quadratic" use of list as queue in
full_rary_tree.
- MAINT: allow isomorphism match helpers to be lists or not.
- fix: correct typo in test variable name.
- Allow spectral_layout to handle dim>=len(G). Added dim tests.
- META: Add agents.md.
- MNT: Use linalg.eigh to compute HITS eigenvalues.
- TST: parameterizing with iterables is deprecated in pytest.
- TST: Cleanup & modernize the minimum cuts test suite.
- MAINT: Refactor communicability tests.
- ENH: Use linear algebra to compute communicability.
- MNT: Raise warnings to errors while running pytest.
- MAINT: sparse.eye is deprecated, use eye_array.
- BUG: Fix _hits_numpy inf/NaN when eigh returns negated
eigenvector.
- Fix typo while dispatching vf2pp.
- Support for Py3.15.
- Update minimum dependencies (SPEC 0).
Other:
- TST: Common tests for all isomorphism algorithms.
- TST: Add test cases for len(G) != 3.
- TST: shorten leiden tests.
- TST: Update pytest-mpl baselines for matplotlib v3.11.
- Adding regression test for duplicate shortest-paths.
License-Update: Copyright years updated
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 4.7.0:
- Fix language: node hooks during commit with -a or inside a
submodule.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.26.2:
Major changes
- check(), +/-, comparisons and to_reduced_units() now use the
active context, e.g. adding kN and kg in a context relating force
and mass (#1951, #1748, #1002, #1067)
- <number> / <offset or logarithmic unit> (e.g. 1 / ureg.degC) now
raises OffsetUnitCalculusError; Unit * bool and Quantity * str
now raise TypeError
- Add a deprecation warning to ApplicationRegistry.__getitem__()
matching direct registry item access
- Improve and test / and * between Quantity and Unit, supporting
more edge cases; improve their type annotations as well
- Preserve the registry's Quantity type in wraps annotations for a
single return unit, allowing array results to be indexed
- Improve type annotations for Unit: / and ** keep the unit type,
and __copy__/__deepcopy__ keep the registry subclass
Units and parsing
- Update definition of US survey units to reflect the 2022 revision
by NIST/NGS
- Fix fathom to equal two international yards; the old value is now
survey_fathom
- Fix the angular mil so one turn is 6400 mil
- Parse $ as a unit symbol like £, and raise DefinitionSyntaxError
for unknown operators such as & instead of ignoring them
- Raise DefinitionSyntaxError instead of an internal TypeError for
addition or subtraction in unit expressions, e.g. kilo-watt
- Reject invalid unit aliases at definition time while preserving
Unicode and degree aliases
Formatting changes
- Add TypstFormatter and ZeroFormatter to allow formatting to plain
Typst and zero package
- Format temperature units as valid LaTeX (~L) and siunitx (Lx),
e.g. \degreeCelsius
- str() and format() of a Unit now use the registry's fmt_locale,
like Quantities
- Keep the row layout of multi-dimensional arrays in
Quantity._repr_html_, as repr does
- Fix babel not localizing unit names containing underscores, e.g.
kilowatt_hour
- Fix formatting a unit with only negative exponents, e.g. 1 /
second, raising IndexError when a locale is set
- Restore the previous numeric locale when localized formatting
raises an exception
NumPy
- Support the numpy.vecdot, numpy.matvec and numpy.vecmat ufuncs
and numpy.linalg.vecdot on Quantities
- Support numpy.repeat on Quantities
- numpy.sum/numpy.nansum now raise DimensionalityError for a bare
non-zero initial on a dimensioned Quantity, like numpy.max
- Fix numpy.sum/numpy.nansum not converting a Quantity initial
value, unlike numpy.max/numpy.min
- Fix numpy.nanmax/numpy.nanmin raising ValueError on a Quantity
initial value, unlike numpy.max/numpy.min
- Fix numpy.clip not converting the units of the numpy 2.1 min/max
keywords
- Fix recursion in numpy.average with dimensionless Quantity
weights and returned=False
- Fix assigning offset-unit quantities (e.g. degC into a kelvin
array) via __setitem__
- Fix numpy.linspace(..., retstep=True) on Quantities failing to
return separate samples and step; offset temperature steps use
delta units
- Fix numpy.block raising TypeError for nested lists of Quantities,
e.g. numpy.block([[a, b], [c, d]])
- Fix numpy.percentile, numpy.nanpercentile, numpy.quantile, and
numpy.nanquantile raising RecursionError when q is a Quantity
- Fix numpy.tensordot, numpy.cross and the other multiplicative
functions rejecting positional arguments after the two arrays,
e.g. numpy.tensordot(a, b, 1)
- Fix numpy.mod, numpy.remainder, numpy.fmod and numpy.floor_divide
ignoring the units of the divisor when both operands have the
same dimensionality, e.g. np.mod(7 m, 200 cm) returned 7 m
- Fix numpy.unwrap raising TypeError on the period keyword; a
Quantity period or discont is converted to the units of the input
- Fix numpy.diff and numpy.ediff1d not converting the units of
Quantity prepend/append and to_end/to_begin values
- Fix numpy.ptp returning an absolute temperature instead of a
delta for offset units
Bugfixes
- Fix converting logarithmic units defined with a compound
reference, e.g. volt / ampere, which dropped all but one
reference unit
- Fix compound logarithmic units, e.g. Quantity(-161, "dBm/Hz"),
becoming an undefined delta_ unit that could not be converted
- Fix logarithmic unit conversion and hashing with Decimal
magnitudes and non_int_type=Decimal, with or without NumPy
- Fix UnitRegistry.wraps() converting only the first variadic
positional argument and failing on empty *args; preserve
keyword-only arguments and defaults
- Fix UnitRegistry.check() validating the wrong arguments of
functions with *args, **kwargs or keyword-only parameters, and
failing to call functions with positional-only defaults
- Fix 1 * unit skipping auto_reduce_dimensions and
autoconvert_to_preferred, so it disagreed with every other
magnitude
- Fix to_preferred raising a spurious DimensionalityError for some
preferred units
- Fix RecursionError in find_connected_nodes for long chains of
contexts
- Fix in-place **= changing a Quantity's units when the magnitude
update fails, e.g. a fractional power of an integer array
- Fix Quantity.dimensionality being stale after an in-place
operation changes the units
- Fix Quantity.to_compact() raising OffsetUnitCalculusError for
offset units like degree_Celsius with magnitude below 1
Documentation
- Document is_compatible_with in the tutorial
- Document defining units with a custom Converter
- Document that Unit equality compares definitions, not values,
e.g. kph != km/hour (#1433, #1876)
- Document how to compare angles that differ by a full turn, e.g.
-140 degree and 220 degree, using the modulo operator
Development and packaging
- Remove the babel <= 2.8 upper bound from the babel extra
- Fix CI never comparing the matplotlib test figures with the
baseline images: --mpl was lost with the Travis config in 2021
- Fix CI installing the numpy matrix pin outside the pixi env on
Windows/macOS, so those legs ran the no-numpy test suite
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 5.1.0:
- [Feature]: Added support for the mlkem768x25519-sha256 post-quantum
hybrid key exchange method described in draft-ietf-sshm-mlkem-hybrid-kex.
It pairs ML-KEM-768 (FIPS 203) with X25519 and is interoperable with
OpenSSH 10.0+. The new method is enabled automatically when the
installed cryptography library exposes ML-KEM (which requires
OpenSSL 3.5+, AWS-LC, or BoringSSL); it is preferred over the
existing classical methods when available.
See paramiko.kex_mlkem.KexMLKEM768X25519.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 3.7.0:
- Add support for Python 3.14 and 3.15.
- Drop support for Python 3.7, 3.8, and 3.9.
- Fix get_leaking_objects with an objects argument to not ignore
references from other sources. Closes#82.
- Fix get_leaking_objects([]) causing an UnboundLocalError.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 4.0.0:
The release 4.0.0 defines the foundation that enables AI contributions
and will improve the maintenance of oauthlib by using AI agents, skills,
code for both contributors and maintainers. It includes devcontainer,
skills and cleanup of instructions.
Important: this release contains 2 breaking changes:
- Removed JSONP support from token revocation endpoint
- Client authentication validation reorganized across grants:
the grant_type parameter is now validated before client
authentication.
- Replace pyenv with uv in documentation and tooling
- Improve github action to publish package
- Add pre-commit to run linters, formatters, etc. on code changes
- Fix client authentication for DeviceCodeGrant when getting a
token
- Add project URLs to this project's PyPI page
- Fix a typo in ServiceApplicationClient docstring.
- Correct grammar in function help
- Add Python 3.14 to the testing
- Initial python/uv/tox devcontainer
- Fix ruff checks about unused variables
- Drop EOL Python 3.8 from CI
- Set Open Collective username to 'oauthlib'
- pre-commit autoupdate 2026_02_21
- Remove a trailing whitespace fo fix failing pre-commit
- Fix typos discovered by typos
- Add resource to Request._params
- Release 3.4.0: Add OAuthLib Maintainer agent
- Remove JSONP support from token revocation
- Improve PKCE code comparison
- Release 4.0.0: bump and update changelog
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.11.0:
New Features:
- feat(certifi): optionally use certifi certificates
- feat(nodeenv): accept npm-style semver ranges in --node
- feat(nodeenv): add --prefer-system to use system node when
available
- feat(nodeenv): add --isolate-npm to keep npm config inside the
environment
- feat(nodeenv): install local packages from a requirements file
- feat(nodeenv): write the posix activate on Windows for git-bash
Fixed bugs:
- fix: repair Windows CI (ZipFile.extractall filter, test_smoke
layout)
- fix(nodeenv): replace leftover debug print with logger.debug
- fix(nodeenv): stop -p from reinstalling node that is already
there
- fix(nodeenv): let -p target a virtualenv nodeenv isn't installed
in
- fix(nodeenv): report the url and proxy instead of a traceback
- fix(nodeenv): keep the python virtualenv's scripts under -p on
Windows
- fix(nodeenv): report a missing node archive instead of a
traceback
- fix(nodeenv): detect musl regardless of the host triplet vendor
- fix(nodeenv): read npm's parseable listing in freeze
- fix: allow zsh to source bin/activate
- fix(nodeenv): link nodejs.exe without mklink
Improvements:
- FEAT: Check if activate is called as script.
- address deprecation warning in tarfile.TarFile.extract all in
Python …
- chore(ci): run the activation scripts in sh, dash, bash, zsh and
fish
- chore(ci): give the integration smoke tests a home and stop
running them 20 times
- feat(nodeenv): clean "src" directory by default
Documentation:
- docs(readme): document file:// mirrors as a local download source
- docs(changes): backfill the changelog from 1.3.2 to 1.10.0
Other Changes:
- chore(release): bump nodeenv version to 1.11.0
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.2.3:
- Fix memory leaks in the C extension when map key validation or
container hooks fail. See GHSA-j586-36cw-2gc2.
- wheels: also build for pyodide using emscripten.
- Support packing Python 3.15 frozentdict (PEP 814)
- Reject negative array and map header sizes
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 3.16.0:
- Add support for SSD1363
- Remove deprecation notice in framebuffer mixin
- Make page_address_offset configurable for SH1106 displays
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.6.0:
- Fix caching of functions whose source cannot be retrieved, such
as functions defined in a notebook cell. Their identity fell back
to str(hash(func.__code__)), which is salted by PYTHONHASHSEED
and so differed between processes. A worker reading the
func_code.py written by another one concluded that the function
had changed and wiped the whole cache directory for it, discarding
results computed by its peers. func_code.py is also no longer
rewritten in place, so a reader can no longer catch it
half-written and draw the same conclusion.
- Drop python 3.9 support. The oldest supported Python version is
now Python 3.10.
- Fix eval_expr (used to evaluate the pre_dispatch argument of
Parallel) to raise a ValueError as documented instead of leaking
a ZeroDivisionError for expressions that divide or take a modulo
by zero.
- MemorizedResult now forwards mmap_mode to its store backend, so a
cached array reconstructed from a location is memory-mapped as
requested instead of being loaded fully into memory.
- Unvendor cloudpickle to more quickly benefit from maintenance
releases of cloudpickle
- Fix Memory.cache for functions with a keyword-only argument that
has a default declared before a keyword-only argument without a
default.
- Fix behavior of filter_args on some precise cases.
- Fix a concurrency error that could happen with unordered
generator.
- Fix: dump() now accepts any input os.PathLike object to be
consistent with load.
- The documentation now uses pydata sphinx theme. Furthermore,
optional dependencies test and docs have been added to
pyproject.toml.
Extend RDEPENDS with the missing runtime dependencies:
python3-cloudpickle.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.20.1:
- Avoid loading an executable path from project.json
- Avoid changing the global recursion limit
- Support for async pytest fixtures
- Work better with PEP 695 type parameter syntax
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 9.17.1:
- Have builin-lazy magics have a lower priority than registered on
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.36.1:
- Defer generating source representations until they are needed,
improving performance when comparing matching snapshots with
updates disabled.
- Speed up snapshot conversion for literal constants, especially in
large lists and dictionaries.
- Built-in literal values are always managed; attempting to
register their types as unmanaged raises TypeError.
- Scope unmanaged type registrations to the current snapshot
context, inheriting registrations from the parent context.
- Speed up snapshot comparisons by avoiding unnecessary deep copies
of immutable built-in values.
- Speed up snapshot conversion by reading AST constant values
directly instead of compiling and evaluating them.
- Respect show-updates in the short report, hiding snapshot
representation change messages when it is disabled.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 2.38.1:
- Correct v2 format argument type hints
- Drop Python 3.10, fix PyAV gc stall, temporarily pin pillow on
pypy
- Bump multidict from 6.7.1 to 6.9.1
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 3.4.0:
Backwards-incompatible. The django stats app writes to its own sqlite
database by default (huey-stats.db in settings.BASE_DIR), instead of
DATABASES['default']. To keep recording in your main Django database,
specify the database explicitly:
HUEY_STATS['database'] takes a db-url or a peewee Database, or use
HUEY_STATS['filename'] to set the sqlite path. See the Django docs
section for building a peewee database from your existing DATABASES
entry.
The admin *Events* log is now rendered from the stats database through
peewee, rather than being a ModelAdmin via ORM. It is now linked from
the dashboard's *Recent events* heading.
Consumer:
- Add --shutdown-timeout option to bound graceful shutdown time.
- Add --graceful-signal option to allow making SIGTERM the graceful
shutdown signal (e.g. -g TERM).
User-facing APIs:
- Add ttl to lock_task() and put_if_empty() so locks expire on
their own. Supported by memory and redis storages, others raise
NotImplementedError. RedisHuey requires server hash-field TTL
support (redis 7.4+ or valkey 9+), RedisExpireHuey works on any
version.
- Add timeout parameter to aget_result().
Small stuff:
- Ensure one raising signal receiver does not prevent the remaining
receivers from running.
- Fix crontab ranges with a step (0-30/5) and wrap-around ranges
(22-2, day_of_week='1-7'). Raise ValueError when a field matches
no values.
- Pass failed chord members to the callback as huey.Error and
skipped (revoked, expired, cancelled) members as huey.SKIPPED
instead of a raw exception or None.
- Delete chord partial results explicitly on completion, so they no
longer linger until expiry on RedisExpireStorage.
- Write the error of a failed pipeline stage to every skipped
downstream stage, so their Result handles raise instead of
blocking.
- Accept an explicit id in TaskWrapper.s(), matching schedule().
Storage:
- Skip messages that fail to deserialize in Huey.pending() and
Huey.scheduled(), logging the error, as read_schedule() already
does.
- Add clean_name option to RedisHuey (default to True). Specify
False to stop stripping non-alphanumeric characters from the
storage namespace. The default will change in a future release.
- Reduce Redis round-trips for peek_data, pop_data and delete_data,
and make RedisExpireStorage.incr() set the TTL atomically w/ the
increment.
- Skip the exclusive lock in SqliteStorage.dequeue() when the queue
is empty, so idle consumers no longer block producers and the
scheduler.
- Batch the SqliteStorage.read_schedule() delete to avoid sqlite's
parameter limit when many tasks come due at once. Same fix in
SqlHuey.
- Order SqliteStorage.read_schedule() and SqlHuey.read_schedule()
by (timestamp, id), matching PostgresStorage.
- Add queue to the sqlite task index (task_queue_priority_id) so
queues sharing a file no longer scan each other's rows. The old
task_priority_id index is dropped when the schema is initialized.
I'll get rid of the temporary in-band drop in a few releases.
- Add peek_many() to the storage API. Revocation checks now fetch
the task and task-class keys in one round trip.
- Return str keys from result_items() on every storage backend.
Redis and File storage previously returned bytes.
Stats:
- Better handling for timeout, locked, rate-limited and retrying in
stats recorder.
- Log dropped events in the stats recorder instead of failing
silently.
- Fix stats recorder max_events pruning to count rows per queue.
With multiple queues sharing a stats db, each queue retained only
a fraction of the configured cap.
- Add inflight_hours option to stats recorder, replacing the
hardcoded 6 hour in-flight cutoff.
- Require the change_hueydashboard permission for the django admin
dashboard's revoke, restore and flush controls. Previously any
staff user who could view the dashboard could also flush the
queue.
- Add huey[stats] extra which installs ol' peewee.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 2.15.1:
Highlights:
- Flat CPU usage for long-lived clients on Linux:
On Linux, the default SSL context is now configured once instead of
on every handshake. With OpenSSL older than 3.4, each handshake
added a duplicate certificate lookup path, so CPU usage per request
grew over the lifetime of a reused client. Certificate verification
is unchanged, and Windows and macOS still use truststore.
httpx2:
Fixed:
- Configure the default SSL context once on Linux, instead of on
every handshake. With OpenSSL older than 3.4, CPU usage grew over
the lifetime of a reused client (#1253).
httpcore2:
Fixed:
- Configure the default SSL context once on Linux, instead of on
every handshake. With OpenSSL older than 3.4, CPU usage grew over
the lifetime of a reused client (#1253).
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.9.0:
- Upgrade llhttp to 9.4.3
- Build CPython 3.15 wheels
- Add RISC-V 64-bit wheels
- Add Windows ARM64 support in CI
- Build PPC64LE wheels
- Modernize test and release workflows
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.84.0:
- Fix -Werror=unused-result error triggered by Cythonized code.
- Release Python 3.15 wheels publicly.
- Fixed reference cycles.
- fix: remove ghost key in grpc.aio.Metadata.delitem when last
value is deleted.
- Fix the StatusCode Enums to be int.
- Fixed the parenthesis placement.
- Removed UsageError exception from registered method.
- Added registered methods support in AsyncIO stack.
- AIO Part 4 - Typehints fixes and add Pyright for aio/_channel.py.
- grpc-status: Relax protobuf dependency lower bound to allow 6.x.
- Observability plugin fixes
Fixes:
WARNING: python3-grpcio-reflection-1.84.0-r0 do_check_backend:
QA Issue: inherits setuptools3 but has pyproject.toml specifying
backend setuptools.build_meta, use the correct class [pep517-backend]
License-Update: Use LICENSE file
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.84.0:
- Fix -Werror=unused-result error triggered by Cythonized code.
- Release Python 3.15 wheels publicly.
- Fixed reference cycles.
- fix: remove ghost key in grpc.aio.Metadata.delitem when last
value is deleted.
- Fix the StatusCode Enums to be int.
- Fixed the parenthesis placement.
- Removed UsageError exception from registered method.
- Added registered methods support in AsyncIO stack.
- AIO Part 4 - Typehints fixes and add Pyright for aio/_channel.py.
- grpc-status: Relax protobuf dependency lower bound to allow 6.x.
- Observability plugin fixes.
Fixes:
WARNING: python3-grpcio-channelz-1.84.0-r0 do_check_backend:
QA Issue: inherits setuptools3 but has pyproject.toml specifying
backend setuptools.build_meta, use the correct class [pep517-backend]
License-Update: Use LICENSE file
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 4.5.8:
Bugs corrected:
- Stdout: CSV data blocks use the first list item's fields instead
of each item's own #3746
- Stdout: raw selector with a dotted item key
(network.eth0.100.bytes_recv) raises UnboundLocalError #3748
- Folders: a second configured FolderList appends its entries to
the first instance #3750
- JSON export: --stop-after leaves an empty file, the last sample
is lost on shutdown #3752
- DuckDB export turns the string 'False' into TRUE #3754
- InfluxDB export truncates dotted list item identifiers (VLAN
interfaces lose their tags) #3756
- IP plugin: a non-object public IP response raises AttributeError
in the main thread #3758
- CSV export: rows are shifted under another device's column when
the field order changes #3760
- Export: exporters mutate the live plugin statistics when merging
limits #3766
- Elasticsearch export: a mapping type per plugin is rejected by ES
6/7/8+, only the first plugin is stored #3780
- Exports: an optional key missing from the config overwrote the
module default with None #3781
- MQTT export: crash at startup when port or callback_api_version
is omitted #3777
- Uptime: export the SNMP uptime instead of the local one #3779
- Cloud: do not report a platform whose metadata API returns
nothing (OpenStack reported on Amazon EC2) #3778
- IRQ: divide the interrupt count by the refresh time (Rate/s was
multiplied by the refresh time) #3771
- Programs: KeyError when a process stat is listed in [processlist]
disable_stats #3776
- Containers: WebUI throws on a restarting container whose cpu/mem
stats are empty #3768
- WebUI: the browser caches glances.js heuristically, revalidate
the static files #3763
- Processes: io_old keeps one entry per pid ever seen (slow memory
leak on hosts spawning short-lived processes)
- Smart: a missing smartctl (pySMART >= 1.4) crashes the server at
startup
Enhancements:
- WebUI: make the container table sortable by status #3763
- Processlist: only build curses rows for the processes that fit on
screen (performance) #3762
Continuous integration and documentation:
- Mark regression test assertions for Bandit
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 26.9.0:
- Fix gevent.event.AsyncResult re-raising an exception with a
traceback that kept growing by the frames of every previous get()
call, instead of starting fresh from the traceback captured when
set_exception() was called.
- Make gevent's file objects properly report the full mode string.
Previously a ‘b’ or ‘t’ suffix could be missing.
- ThreadPool workers no longer call the profile and trace setters
when no hooks are configured. This matches threading.Thread and
avoids unnecessary PEP 578 audit events and thread coordination.
- An exception while preparing a ThreadPool worker to run a task,
such as an audit hook rejecting sys.setprofile(), no longer
leaves the caller blocked or leaks a pool slot. The exception is
raised in the greenlet waiting on apply() or spawn(), and the
failed worker is replaced if other tasks are waiting.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.26.3:
- Fixed: Version.bump() ignored the increment when a stage had no
revision.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 3.18.3:
- Restore order_by_precedence from 3.18.1 to fix broken return
value
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 45.1.0:
- When parsing DBC, make sure there are no unused VAL_ and
SIG_VALTYPE_ entries
- sym: write a leading 0 for multiplexer ids that start with A-F
- message: index signals by multiplexer when creating codecs
- message: copy message bits with list() in the overlap check
- plot: read candump -l lines annotated by cantools decode
- DBC: don't fail the load when VFrameFormat has no default
- try to fix the pypy test
- database: do not refresh messages twice when loading a database
- plot: accept decoded choice names from cantools decode
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 7.2.4:
- Restore autospec calls to @cachedmethod decorated methods.
- Improve branch coverage of unit tests.
- Minor type stub improvements.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Add SYSTEMD_SERVICE variable to register wireplumber.service with
systemd to enable automatic service startup and management.
Signed-off-by: Paresh Bhagat <p-bhagat@ti.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
When the migration from autotools to cmake happened, the libnl
PACKAGECONFIG was kept, but -DENABLE_NETLINK=ON was in EXTRA_OECMAKE
unconditionally.
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
avahi is included in PACKAGECONFIG if zeroconf is in DISTRO_FEATURES.
The update to 0.3.63 enabled it unconditionally a second time.
Fixes: c4d52888a0 ("pipewire: update 0.3.62 -> 0.3.63")
Signed-off-by: Einar Jon Gunnarsson <tolvupostur@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
yelp is ported to GTK 4 and libadwaita and builds with meson only now.
Drop the autotools build class, autotools-brokensep, gtk-doc and the
configure workaround. DEPENDS move from gtk+3, libhandy and webkitgtk3 to
gtk4, libadwaita and webkitgtk (WebKitGTK 6.0); appstream-glib is no
longer used. The lzma and bzip2 support become PACKAGECONFIG options.
AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
yelp-xsl builds with meson only now; drop the autotools build class. It
needs libxml2 and xsltproc, and msgfmt also for the native build, which
the gettext class gives only gettext-minimal-native.
AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
gnome-commander 2 is ported to GTK 4 and its main program to Rust, built
by cargo from meson; the plugins and libgcmd stay C. The license is now
GPL-3.0-or-later, with the documentation under GFDL-1.3-or-later and
some files under CC0-1.0, as listed in LICENSES/.
Add a patch that passes the target triple from a cross file property to
cargo and keeps the RUSTFLAGS of the build, which the cargo environment
replaced (Upstream-Status: Pending). cargo_common is inherited first so
that meson's do_configure is the one used. libgcmd.so is unversioned and
needed at run time, so it stays in the main package; the GIR is built
unconditionally, and the redundant rpath to libdir is removed. samba
support is gone upstream.
AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
gnome-user-share is written in Rust now, built by cargo from meson. Fetch
from git (the 48.x releases are on the gnome-48 branch) with the crates
from gnome-user-share-crates.inc, and set up cargo the way papers and
loupe do. Add a patch that passes the target triple from a cross file
property to cargo and picks the binary from the per-target directory
(Upstream-Status: Pending). Drop the libc feature test macro patch, the
C code is gone.
AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
gnome-tweaks is ported to GTK 4 and libadwaita. Update DEPENDS and
RDEPENDS and package the new D-Bus service file. The python path patch is
dropped: meson installs the python module into the configured
site-packages directory itself.
AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
gthumb 4 is ported to GTK 4, libadwaita and Vala. Update DEPENDS (gtk4,
libadwaita, libportal, gstreamer, lcms and libpng are required now; bison,
json-glib and gsettings-desktop-schemas are gone) and the PACKAGECONFIG
options to the new meson options. The help moved out of the tarball, so
gnome-help and itstool are dropped. GTK 4 needs opengl.
AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
gspell builds with meson only now; drop the autotools build class and map
the introspection and gtk-doc options, without the demo app and tests.
The license is LGPL-2.1-or-later as stated in LICENSES/, the text is
unchanged.
AI-Generated: Uses Claude Code (Claude Opus 5.5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>