Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-hepunits for openSUSE:Factory 
checked in at 2026-07-06 12:31:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-hepunits (Old)
 and      /work/SRC/openSUSE:Factory/.python-hepunits.new.1982 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-hepunits"

Mon Jul  6 12:31:30 2026 rev:7 rq:1363818 version:2.4.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-hepunits/python-hepunits.changes  
2026-04-20 16:11:28.065574012 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-hepunits.new.1982/python-hepunits.changes    
    2026-07-06 12:34:00.610889933 +0200
@@ -1,0 +2,11 @@
+Sun Jul  5 08:53:44 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 2.4.6:
+  * chore(deps): update pre-commit hooks
+  * chore(deps): bump astral-sh/setup-uv from 8.0.0 to 8.1.0 in
+    the actions group
+  * chore: removal of duplicates and trivial Python 3
+    modernisation in the docs
+  * chore: add an AGENTS file
+
+-------------------------------------------------------------------

Old:
----
  hepunits-2.4.5.tar.gz

New:
----
  hepunits-2.4.6.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-hepunits.spec ++++++
--- /var/tmp/diff_new_pack.07XeY2/_old  2026-07-06 12:34:01.302913976 +0200
+++ /var/tmp/diff_new_pack.07XeY2/_new  2026-07-06 12:34:01.302913976 +0200
@@ -19,7 +19,7 @@
 %global modname hepunits
 
 Name:           python-hepunits
-Version:        2.4.5
+Version:        2.4.6
 Release:        0
 Summary:        Units and constants in the HEP system of units
 License:        BSD-3-Clause

++++++ hepunits-2.4.5.tar.gz -> hepunits-2.4.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/.github/workflows/main.yml 
new/hepunits-2.4.6/.github/workflows/main.yml
--- old/hepunits-2.4.5/.github/workflows/main.yml       2020-02-02 
01:00:00.000000000 +0100
+++ new/hepunits-2.4.6/.github/workflows/main.yml       2020-02-02 
01:00:00.000000000 +0100
@@ -44,7 +44,7 @@
           python-version: ${{ matrix.python-version }}
           allow-prereleases: true
 
-      - uses: astral-sh/[email protected]
+      - uses: astral-sh/[email protected]
 
       - name: Install package
         run: uv pip install --system -e .[test]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/.gitignore 
new/hepunits-2.4.6/.gitignore
--- old/hepunits-2.4.5/.gitignore       2020-02-02 01:00:00.000000000 +0100
+++ new/hepunits-2.4.6/.gitignore       2020-02-02 01:00:00.000000000 +0100
@@ -72,3 +72,7 @@
 /pip-wheel-metadata/*
 /src/hepunits/version.py
 /src/hepunits/_version.py
+
+# Symlink to AGENTS.md
+CLAUDE.md
+.claude/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/.pre-commit-config.yaml 
new/hepunits-2.4.6/.pre-commit-config.yaml
--- old/hepunits-2.4.5/.pre-commit-config.yaml  2020-02-02 01:00:00.000000000 
+0100
+++ new/hepunits-2.4.6/.pre-commit-config.yaml  2020-02-02 01:00:00.000000000 
+0100
@@ -18,14 +18,14 @@
       - id: check-yaml
 
   - repo: https://github.com/astral-sh/ruff-pre-commit
-    rev: "v0.15.10"
+    rev: "v0.15.17"
     hooks:
       - id: ruff-check
         args: ["--fix", "--show-fixes"]
       - id: ruff-format
 
   - repo: https://github.com/pre-commit/mirrors-mypy
-    rev: v1.20.1
+    rev: v2.1.0
     hooks:
       - id: mypy
         files: src
@@ -39,7 +39,7 @@
         args: ["-L", "HEP"]
 
   - repo: https://github.com/rbubley/mirrors-prettier
-    rev: "v3.8.2"
+    rev: "v3.8.4"
     hooks:
       - id: prettier
         types_or: [yaml, markdown, html, css, scss, javascript, json]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/AGENTS.md new/hepunits-2.4.6/AGENTS.md
--- old/hepunits-2.4.5/AGENTS.md        1970-01-01 01:00:00.000000000 +0100
+++ new/hepunits-2.4.6/AGENTS.md        2020-02-02 01:00:00.000000000 +0100
@@ -0,0 +1,70 @@
+# AGENTS.md
+
+This file provides guidance to agents when working with code in this 
repository.
+
+## Commands
+
+```bash
+uv run pytest                       # run the test suite
+uv run pytest tests/units           # run a single directory
+uv run pytest tests/test_pint.py::test_name   # run a single test
+nox -s tests                        # tests in an isolated env (installs 
.[test])
+nox -s lint                         # runs pre-commit across all files
+prek -a --quiet                     # lint directly (ruff, mypy, etc.)
+```
+
+`pytest` is configured with `filterwarnings = ["error"]` and `xfail_strict`, 
so any
+warning fails the suite. Pint is an optional test dependency pinned `<0.25.1`.
+
+## Architecture
+
+`hepunits` defines units and constants in the **HEP System of Units** (the 
CLHEP
+convention used by GEANT4/Gaudi), _not_ SI. The base units are: length=mm, 
time=ns,
+energy=MeV, charge=eplus. Everything else is derived as a plain `float` 
relative to
+these bases — there is no quantity/dimension type. A "value with units" is 
just a
+number; you attach units by multiplying (`500 * keV`) and read them back by 
dividing
+(`x / GeV`).
+
+Dependency order of the core modules (each imports only from those above it):
+
+1. `units/prefixes.py` — SI and binary prefixes (`kilo`, `milli`, `mebi`, ...) 
as floats.
+2. `units/units.py` — base units set to `1.0`, then every other unit derived
+   arithmetically from them and from prefixes (imported as `_pre`). This is 
the root of
+   truth for numeric values; e.g. `meter = _pre.kilo * millimeter`,
+   `kilogram = joule * second**2 / meter2`.
+3. `constants/constants.py` — physical constants (`c_light`, `hbar`, 
`Avogadro`, ...)
+   computed from the units. Imports `from ..units.units import ...`.
+4. Top-level `__init__.py` re-exports everything flat, so `from hepunits 
import GeV` and
+   `from hepunits.units import GeV` both work.
+
+The `units/__init__.py` and `constants/__init__.py` re-export from their 
submodules; the
+`.units`/`.constants` subpackage `__init__` files exist mainly to provide 
these flat
+namespaces.
+
+`pint.py` is the only module with logic beyond definitions: optional Pint 
interop via
+`to_clhep` / `from_clhep`. It maps Pint base dimensions to CLHEP base-unit 
strings in
+`_clhep_base_units`. Importing it without Pint installed raises `ImportError`.
+
+## The `__all__` invariant
+
+Every public module maintains an explicit `__all__` and a `__dir__` returning 
it.
+`tests/test_missing_all.py` enforces two things mechanically:
+
+- **`test_missing_all`**: a module's `__all__` must exactly equal its public 
namespace
+  (every non-underscore name defined or imported in the module).
+- **`test_exported`**: every name in a submodule's `__all__` must also appear 
in its
+  parent's `__all__`, all the way up to the top-level `hepunits.__all__`.
+
+**When you add or rename any unit, constant, or prefix, you must update 
`__all__` (and the
+matching import lists) in every module up the chain** — the defining module, 
its package
+`__init__`, and the top-level `__init__.py`. The lists are kept alphabetically 
sorted
+(ruff `RUF022` style). Skipping a level fails the test suite.
+
+## Conventions
+
+- Python 3.9+; mypy runs in `strict` mode over `src` (targeting 3.13). Keep 
things typed.
+- Ruff enforces a broad rule set including no `print` (`T20`) and `pathlib` 
over `os.path`.
+- Version is derived from VCS tags via `hatch-vcs` into 
`src/hepunits/_version.py` (do
+  not edit that file).
+- Numeric values follow the PDG review (currently 2020/2022); cite the source 
in a comment
+  when adding a constant, matching the existing `# exact value, taken from PDG 
2022` style.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/PKG-INFO new/hepunits-2.4.6/PKG-INFO
--- old/hepunits-2.4.5/PKG-INFO 2020-02-02 01:00:00.000000000 +0100
+++ new/hepunits-2.4.6/PKG-INFO 2020-02-02 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: hepunits
-Version: 2.4.5
+Version: 2.4.6
 Summary: Units and constants in the HEP system of units
 Project-URL: Homepage, https://github.com/scikit-hep/hepunits
 Author-email: Eduardo Rodrigues <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/src/hepunits/__init__.py 
new/hepunits-2.4.6/src/hepunits/__init__.py
--- old/hepunits-2.4.5/src/hepunits/__init__.py 2020-02-02 01:00:00.000000000 
+0100
+++ new/hepunits-2.4.6/src/hepunits/__init__.py 2020-02-02 01:00:00.000000000 
+0100
@@ -383,7 +383,6 @@
     "electronvolt2",
     "eminus",
     "eplus",
-    "eplus",
     "erg",
     "exa",
     "exaelectronvolt",
@@ -429,7 +428,6 @@
     "invpb",
     "invub",
     "joule",
-    "joule",
     "kBq",
     "kG",
     "kGs",
@@ -441,7 +439,6 @@
     "k_Boltzmann",
     "keV",
     "kelvin",
-    "kelvin",
     "kg",
     "kibi",
     "kilo",
@@ -465,7 +462,6 @@
     "lux",
     "lx",
     "m",
-    "m",
     "m2",
     "m3",
     "mA",
@@ -519,7 +515,6 @@
     "mm3",
     "mol",
     "mole",
-    "mole",
     "mrad",
     "ms",
     "nA",
@@ -562,7 +557,6 @@
     "ronto",
     "rontogram",
     "s",
-    "s",
     "second",
     "siemens",
     "sievert",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/src/hepunits/_version.py 
new/hepunits-2.4.6/src/hepunits/_version.py
--- old/hepunits-2.4.5/src/hepunits/_version.py 2020-02-02 01:00:00.000000000 
+0100
+++ new/hepunits-2.4.6/src/hepunits/_version.py 2020-02-02 01:00:00.000000000 
+0100
@@ -18,7 +18,7 @@
 commit_id: str | None
 __commit_id__: str | None
 
-__version__ = version = '2.4.5'
-__version_tuple__ = version_tuple = (2, 4, 5)
+__version__ = version = '2.4.6'
+__version_tuple__ = version_tuple = (2, 4, 6)
 
 __commit_id__ = commit_id = None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/src/hepunits/constants/constants.py 
new/hepunits-2.4.6/src/hepunits/constants/constants.py
--- old/hepunits-2.4.5/src/hepunits/constants/constants.py      2020-02-02 
01:00:00.000000000 +0100
+++ new/hepunits-2.4.6/src/hepunits/constants/constants.py      2020-02-02 
01:00:00.000000000 +0100
@@ -17,9 +17,9 @@
     >>> from hepunits.units     import picosecond, micrometer
     >>> tau_Bs = 1.5 * picosecond    # a particle lifetime, say the Bs meson's
     >>> ctau_Bs = c_light * tau_Bs   # ctau of the particle, ~450 microns
-    >>> print ctau_Bs                # result in HEP units, so mm ;-)
+    >>> print(ctau_Bs)               # result in HEP units, so mm ;-)
     0.449688687
-    >>> print ctau_Bs / micrometer   # result in micrometers
+    >>> print(ctau_Bs / micrometer)  # result in micrometers
     449.688687
 
 """
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hepunits-2.4.5/src/hepunits/units/units.py 
new/hepunits-2.4.6/src/hepunits/units/units.py
--- old/hepunits-2.4.5/src/hepunits/units/units.py      2020-02-02 
01:00:00.000000000 +0100
+++ new/hepunits-2.4.6/src/hepunits/units/units.py      2020-02-02 
01:00:00.000000000 +0100
@@ -488,7 +488,6 @@
     "MJ",
     "MV",
     "MW",
-    "MW",
     "A",
     "Bq",
     "C",

Reply via email to