openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
July 2023
- 1 participants
- 1988 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-dtfabric for openSUSE:Factory checked in at 2023-07-30 20:57:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-dtfabric (Old)
and /work/SRC/openSUSE:Factory/.python-dtfabric.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-dtfabric"
Sun Jul 30 20:57:58 2023 rev:7 rq:1101369 version:20221218
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-dtfabric/python-dtfabric.changes 2023-01-05 15:55:04.634913482 +0100
+++ /work/SRC/openSUSE:Factory/.python-dtfabric.new.32662/python-dtfabric.changes 2023-07-30 20:58:02.171313821 +0200
@@ -1,0 +2,10 @@
+Sun Jul 30 07:15:31 UTC 2023 - Matej Cepl <mcepl(a)suse.com>
+
+- Clean up SPEC file.
+
+-------------------------------------------------------------------
+Sun Jul 30 02:52:20 UTC 2023 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- use %sle15_python_module_pythons
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-dtfabric.spec ++++++
--- /var/tmp/diff_new_pack.bS8Vjm/_old 2023-07-30 20:58:02.915318239 +0200
+++ /var/tmp/diff_new_pack.bS8Vjm/_new 2023-07-30 20:58:02.919318262 +0200
@@ -16,9 +16,8 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
+%{?sle15_python_module_pythons}
%define modname dtfabric
-%define skip_python2 1
Name: python-dtfabric
Version: 20221218
Release: 0
@@ -28,12 +27,14 @@
URL: https://github.com/libyal/dtfabric
Source: https://github.com/libyal/dtfabric/releases/download/%{version}/dtfabric-%{…
BuildRequires: %{python_module PyYAML}
-BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
-BuildArch: noarch
+Requires: python-PyYAML
Requires(post): update-alternatives
Requires(postun):update-alternatives
+BuildArch: noarch
%python_subpackages
%description
@@ -43,10 +44,10 @@
%setup -q -n %{modname}-%{version}
%build
-%python_build
+%pyproject_wheel
%install
-%python_install
+%pyproject_install
%python_clone -a %{buildroot}%{_bindir}/validate-definitions.py
# setup.py install helpfully installs files where it shouldn’t
rm -rv %{buildroot}%{_datadir}/doc/%{modname}
@@ -68,6 +69,7 @@
%license LICENSE
%doc ACKNOWLEDGEMENTS AUTHORS README
%python_alternative %{_bindir}/validate-definitions.py
-%{python_sitelib}/*
+%{python_sitelib}/dtfabric
+%{python_sitelib}/dtfabric-%{version}*-info
%changelog
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-fastnumbers for openSUSE:Factory checked in at 2023-07-30 20:57:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-fastnumbers (Old)
and /work/SRC/openSUSE:Factory/.python-fastnumbers.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-fastnumbers"
Sun Jul 30 20:57:56 2023 rev:11 rq:1101334 version:5.0.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-fastnumbers/python-fastnumbers.changes 2022-01-23 22:24:23.937902434 +0100
+++ /work/SRC/openSUSE:Factory/.python-fastnumbers.new.32662/python-fastnumbers.changes 2023-07-30 20:57:58.647292898 +0200
@@ -1,0 +2,18 @@
+Mon Jul 10 15:53:34 UTC 2023 - ecsos <ecsos(a)opensuse.org>
+
+- Update to 5.0.1
+ * Fixed
+ - Add back missing key option in type hints for deprecated fast_* functions
+- Update to 5.0.0
+ * Added
+ - Added the map option to all try_* functions to enable very fast conversions of lists or other iterables (issues #61, #63 and #67)
+ - Added try_array to enable very fast conversions directly to numpy arrays (issues #62 and #65)
+ * Changed
+ - Move to a model where the return code is a value or error instead of a model where one has to check the error state after getting a value (issue #66)
+ - Significantly simplified the type annotations (by 4000+ lines!)
+ * Fixed
+ - Increased code coverage and fixed missing headers in codecov reaport (issue #64)
+- Add %{?sle15_python_module_pythons}
+- Ensure that SLE-15 uses gcc-12.
+
+-------------------------------------------------------------------
Old:
----
fastnumbers-3.2.1.tar.gz
New:
----
fastnumbers-5.0.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-fastnumbers.spec ++++++
--- /var/tmp/diff_new_pack.CCYZRD/_old 2023-07-30 20:57:59.363297149 +0200
+++ /var/tmp/diff_new_pack.CCYZRD/_new 2023-07-30 20:57:59.367297173 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-fastnumbers
#
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,10 +16,9 @@
#
-%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%define skip_python2 1
+%{?sle15_python_module_pythons}
Name: python-fastnumbers
-Version: 3.2.1
+Version: 5.0.1
Release: 0
Summary: Drop-in replacement for Python's int and float
License: MIT
@@ -30,8 +29,16 @@
BuildRequires: %{python_module typing-extensions}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+%if 0%{?suse_version} <= 1500
+BuildRequires: gcc12
+BuildRequires: gcc12-c++
+%else
+BuildRequires: gcc
+BuildRequires: gcc-c++
+%endif
# SECTION test requirements
BuildRequires: %{python_module hypothesis}
+BuildRequires: %{python_module numpy}
BuildRequires: %{python_module pytest >= 5}
BuildRequires: python3-testsuite
# /SECTION
@@ -53,6 +60,10 @@
%setup -q -n fastnumbers-%{version}
%build
+%if 0%{?suse_version} <= 1500
+export CC=gcc-12
+export CXX=g++-12
+%endif
export CFLAGS="%{optflags}"
%python_build
@@ -68,6 +79,7 @@
%files %{python_files}
%doc README.rst
%license LICENSE
-%{python_sitearch}/*
+%{python_sitearch}/fastnumbers
+%{python_sitearch}/fastnumbers-%{version}*-info
%changelog
++++++ fastnumbers-3.2.1.tar.gz -> fastnumbers-5.0.1.tar.gz ++++++
++++ 30604 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-django-allauth for openSUSE:Factory checked in at 2023-07-30 20:57:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-django-allauth (Old)
and /work/SRC/openSUSE:Factory/.python-django-allauth.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-django-allauth"
Sun Jul 30 20:57:54 2023 rev:8 rq:1101335 version:0.54.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-django-allauth/python-django-allauth.changes 2023-06-26 18:17:18.062792147 +0200
+++ /work/SRC/openSUSE:Factory/.python-django-allauth.new.32662/python-django-allauth.changes 2023-07-30 20:57:57.495286058 +0200
@@ -1,0 +2,8 @@
+Sat Jul 29 00:48:53 UTC 2023 - Georg Pfuetzenreuter <georg.pfuetzenreuter(a)suse.com>
+
+- Update to v0.54.0
+ * skips multiple versions, reference
+ https://github.com/pennersr/django-allauth/commits/0.54.0
+- Patch out test which cannot run without template files (missing-template-in-test.patch)
+
+-------------------------------------------------------------------
Old:
----
django-allauth-0.47.0.tar.gz
New:
----
django-allauth-0.54.0.tar.gz
missing-template-in-test.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-django-allauth.spec ++++++
--- /var/tmp/diff_new_pack.Ym5tCm/_old 2023-07-30 20:57:58.147289929 +0200
+++ /var/tmp/diff_new_pack.Ym5tCm/_new 2023-07-30 20:57:58.151289953 +0200
@@ -18,13 +18,14 @@
%{?sle15_python_module_pythons}
Name: python-django-allauth
-Version: 0.47.0
+Version: 0.54.0
Release: 0
Summary: Django authentication, registration, account management
License: MIT
Group: Development/Languages/Python
URL: https://github.com/pennersr/django-allauth
Source: https://files.pythonhosted.org/packages/source/d/django-allauth/django-alla…
+Patch: missing-template-in-test.patch
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -46,7 +47,7 @@
account management as well as 3rd party (social) account authentication.
%prep
-%setup -q -n django-allauth-%{version}
+%autosetup -p1 -n django-allauth-%{version}
# Five errors reported at https://github.com/pennersr/django-allauth/issues/2210
# Cern provider test module fails
rm allauth/socialaccount/providers/cern/tests.py
++++++ django-allauth-0.47.0.tar.gz -> django-allauth-0.54.0.tar.gz ++++++
++++ 35558 lines of diff (skipped)
++++++ missing-template-in-test.patch ++++++
--- a/allauth/account/tests.py 2023-07-29 03:13:58.816192704 +0200
+++ b/allauth/account/tests.py 2023-07-29 03:14:17.592388201 +0200
@@ -1740,7 +1740,7 @@
reverse("account_reset_password"), data={"email": "a(a)b.com"}
)
assert resp.status_code == 302
- resp = self.client.post(
- reverse("account_reset_password"), data={"email": "A(a)B.COM"}
- )
- assert resp.status_code == 429
+ #resp = self.client.post(
+ # reverse("account_reset_password"), data={"email": "A(a)B.COM"}
+ #)
+ #assert resp.status_code == 429
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-Mathics for openSUSE:Factory checked in at 2023-07-30 20:57:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Mathics (Old)
and /work/SRC/openSUSE:Factory/.python-Mathics.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-Mathics"
Sun Jul 30 20:57:53 2023 rev:16 rq:1101333 version:6.0.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Mathics/python-Mathics.changes 2023-07-26 13:24:07.068062623 +0200
+++ /work/SRC/openSUSE:Factory/.python-Mathics.new.32662/python-Mathics.changes 2023-07-30 20:57:56.195278340 +0200
@@ -1,0 +2,11 @@
+Wed Jul 26 15:24:55 UTC 2023 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 6.0.2:
+ * Change testing to facilitate openSUSE Tumbleweed distribution
+ which uses Sympy 1.12 (gh#Mathics3/mathics-core#881).
+- Drop python-Mathics-relax-module-versions.patch: No longer
+ required as upstream has removed numpy and scipy upper limits
+ from requirements.
+- Re-enable test_calculus.
+
+-------------------------------------------------------------------
Old:
----
Mathics3-6.0.1.tar.gz
python-Mathics-relax-module-versions.patch
New:
----
Mathics3-6.0.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-Mathics.spec ++++++
--- /var/tmp/diff_new_pack.4dnus6/_old 2023-07-30 20:57:56.863282306 +0200
+++ /var/tmp/diff_new_pack.4dnus6/_new 2023-07-30 20:57:56.867282330 +0200
@@ -32,15 +32,13 @@
%define skip_python311 1
%define pyname Mathics3
Name: python-Mathics%{psuffix}
-Version: 6.0.1
+Version: 6.0.2
Release: 0
Summary: A general-purpose computer algebra system
# Mathics itself is licensed as GPL-3.0 but it includes third-party software with MIT, BSD-3-Clause, and Apache-2.0 Licensing; also includes data from wikipedia licensed under CC-BY-SA-3.0 and GFDL-1.3
License: Apache-2.0 AND BSD-3-Clause AND GPL-3.0-only AND MIT
URL: https://mathics.github.io/
Source0: https://github.com/Mathics3/mathics-core/releases/download/%{version}/%{pyn…
-# PATCH-FEATURE-OPENSUSE python-Mathics-relax-module-versions.patch gh#mathics-core/issues#881 badshah400(a)gmail.com -- Relax upper limits on sympy and numpy to get packages building for Tumbleweed
-Patch0: python-Mathics-relax-module-versions.patch
BuildRequires: %{python_module Cython}
BuildRequires: %{python_module Django >= 1.8}
BuildRequires: %{python_module colorama}
@@ -117,8 +115,7 @@
%check
# Home page tests require django server up and running, test_gudermannian needs network access
# test_image: https://github.com/Mathics3/mathics-core/issues/837
-# test_calculus: https://github.com/Mathics3/mathics-core/issues/881
-%pytest_arch -k 'not (test_home_page or test_gudermannian or test_image or test_calculus)'
+%pytest_arch -k 'not (test_home_page or test_gudermannian or test_image)'
%endif
%if %{without test}
++++++ Mathics3-6.0.1.tar.gz -> Mathics3-6.0.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/CHANGES.rst new/Mathics3-6.0.2/CHANGES.rst
--- old/Mathics3-6.0.1/CHANGES.rst 2023-03-05 11:08:11.000000000 +0100
+++ new/Mathics3-6.0.2/CHANGES.rst 2023-07-23 23:23:47.000000000 +0200
@@ -3,6 +3,16 @@
CHANGES
=======
+Change testing to facilitate openSUSE Tumbleweed distribution which uses Sympy 1.12. See `Issue #881 <https://github.com/Mathics3/mathics-core/issues/881>`_.
+
+6.0.2
+-----
+
+Package update
+..............
+
+#. SymPy 1.12 accepted
+
6.0.1
-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/ChangeLog new/Mathics3-6.0.2/ChangeLog
--- old/Mathics3-6.0.1/ChangeLog 2023-03-05 09:39:57.000000000 +0100
+++ new/Mathics3-6.0.2/ChangeLog 2023-07-23 23:01:20.000000000 +0200
@@ -1,3 +1,27 @@
+2023-07-23 rocky <rb(a)dustyfeet.com>
+
+ * CHANGES.rst, mathics/version.py: Get ready for release 6.0.2
+
+2023-07-20 R. Bernstein <rocky(a)users.noreply.github.com>
+
+ * : Merge pull request #884 from Mathics3/601-get-windows-ci-working See if we can get Windows CI working again
+
+2023-07-19 R. Bernstein <rocky(a)users.noreply.github.com>
+
+ * : Merge pull request #883 from Mathics3/fix881_601 fix #881
+
+2023-03-05 rocky <rb(a)dustyfeet.com>
+
+ * admin-tools/make-dist.sh: Administrivia doc->doctest
+
+2023-03-05 rocky <rb(a)dustyfeet.com>
+
+ * CHANGES.rst: Spelling
+
+2023-03-05 R. Bernstein <rocky(a)users.noreply.github.com>
+
+ * : Merge pull request #807 from Mathics3/release-6.0.1 Get ready for release 6.0.1
+
2023-03-02 R. Bernstein <rocky(a)users.noreply.github.com>
* : Merge pull request #803 from Mathics3/combinatorica-91 Use recently-found V0.91 version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/Mathics3.egg-info/PKG-INFO new/Mathics3-6.0.2/Mathics3.egg-info/PKG-INFO
--- old/Mathics3-6.0.1/Mathics3.egg-info/PKG-INFO 2023-03-05 11:15:02.000000000 +0100
+++ new/Mathics3-6.0.2/Mathics3.egg-info/PKG-INFO 2023-07-23 23:37:36.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: Mathics3
-Version: 6.0.1
+Version: 6.0.2
Summary: A general-purpose computer algebra system.
Home-page: https://mathics.org/
Download-URL: https://github.com/Mathics/mathics-core/releases
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/Mathics3.egg-info/SOURCES.txt new/Mathics3-6.0.2/Mathics3.egg-info/SOURCES.txt
--- old/Mathics3-6.0.1/Mathics3.egg-info/SOURCES.txt 2023-03-05 11:15:02.000000000 +0100
+++ new/Mathics3-6.0.2/Mathics3.egg-info/SOURCES.txt 2023-07-23 23:37:36.000000000 +0200
@@ -52,6 +52,7 @@
mathics/autoload/formats/Text/Import.m
mathics/autoload/formats/XML/Import.m
mathics/builtin/__init__.py
+mathics/builtin/_quantities-try.py
mathics/builtin/arithmetic.py
mathics/builtin/attributes.py
mathics/builtin/base.py
@@ -75,7 +76,6 @@
mathics/builtin/patterns.py
mathics/builtin/physchemdata.py
mathics/builtin/procedural.py
-mathics/builtin/quantities-try.py
mathics/builtin/quantities.py
mathics/builtin/recurrence.py
mathics/builtin/scoping.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/Mathics3.egg-info/requires.txt new/Mathics3-6.0.2/Mathics3.egg-info/requires.txt
--- old/Mathics3-6.0.1/Mathics3.egg-info/requires.txt 2023-03-05 11:15:02.000000000 +0100
+++ new/Mathics3-6.0.2/Mathics3.egg-info/requires.txt 2023-07-23 23:37:36.000000000 +0200
@@ -1,7 +1,7 @@
Mathics-Scanner>=1.3.0
-numpy<=1.24
+numpy<1.25
llvmlite
-sympy<1.12,>=1.8
+sympy>=1.8
pillow>=9.2
mpmath>=1.2.0
palettable
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/PKG-INFO new/Mathics3-6.0.2/PKG-INFO
--- old/Mathics3-6.0.1/PKG-INFO 2023-03-05 11:15:02.929967600 +0100
+++ new/Mathics3-6.0.2/PKG-INFO 2023-07-23 23:37:37.116025200 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: Mathics3
-Version: 6.0.1
+Version: 6.0.2
Summary: A general-purpose computer algebra system.
Home-page: https://mathics.org/
Download-URL: https://github.com/Mathics/mathics-core/releases
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/mathics/builtin/_quantities-try.py new/Mathics3-6.0.2/mathics/builtin/_quantities-try.py
--- old/Mathics3-6.0.1/mathics/builtin/_quantities-try.py 1970-01-01 01:00:00.000000000 +0100
+++ new/Mathics3-6.0.2/mathics/builtin/_quantities-try.py 2023-02-27 01:35:42.000000000 +0100
@@ -0,0 +1,486 @@
+# -*- coding: utf-8 -*-
+"""
+Units and Quantities
+"""
+
+from pint import UnitRegistry
+
+from mathics.builtin.base import Builtin, Test
+from mathics.core.atoms import Atom, Integer, Integer1, Number, Real, String
+from mathics.core.attributes import (
+ A_HOLD_REST,
+ A_N_HOLD_REST,
+ A_PROTECTED,
+ A_READ_PROTECTED,
+)
+from mathics.core.convert.expression import to_mathics_list
+from mathics.core.convert.python import from_python
+from mathics.core.evaluation import Evaluation
+from mathics.core.expression import Expression
+from mathics.core.list import ListExpression
+from mathics.core.symbols import Symbol
+from mathics.core.systemsymbols import SymbolQuantity, SymbolRowBox
+
+# This tells documentation how to sort this module
+sort_order = "mathics.builtin.units-and-quantites"
+
+ureg = UnitRegistry()
+Q_ = ureg.Quantity
+
+
+def get_converted_magnitude(magnitude_expr, evaluation: Evaluation) -> float:
+ """
+ The Python "pint" library mixes in a Python numeric value as a multiplier inside
+ a Mathics Expression. here we pick out that multiplier and
+ convert it from a Python numeric to a Mathics numeric.
+ """
+ magnitude_elements = list(magnitude_expr.elements)
+ magnitude_elements[1] = from_python(magnitude_elements[1])
+ magnitude_expr._elements = tuple(magnitude_elements)
+ # FIXME: consider returning an int when that is possible
+ return magnitude_expr.evaluate(evaluation).get_float_value()
+
+
+class KnownUnitQ(Test):
+ """
+ <url>
+ :WMA link:
+ https://reference.wolfram.com/language/ref/KnownUnitQ.html</url>
+
+ <dl>
+ <dt>'KnownUnitQ[$unit$]'
+ <dd>returns True if $unit$ is a canonical unit, and False otherwise.
+ </dl>
+
+ >> KnownUnitQ["Feet"]
+ = True
+
+ >> KnownUnitQ["Foo"]
+ = False
+ """
+
+ summary_text = "tests whether its argument is a canonical unit."
+
+ def test(self, expr):
+ def validate(unit):
+ try:
+ Q_(1, unit)
+ except Exception:
+ return False
+ else:
+ return True
+
+ return validate(expr.get_string_value().lower())
+
+
+class Quantity(Builtin):
+ """
+ <url>
+ :WMA link:
+ https://reference.wolfram.com/language/ref/Quantity.html</url>
+
+ <dl>
+ <dt>'Quantity[$magnitude$, $unit$]'
+ <dd>represents a quantity with size $magnitude$ and unit specified by $unit$.
+
+ <dt>'Quantity[$unit$]'
+ <dd>assumes the magnitude of the specified $unit$ to be 1.
+ </dl>
+
+ >> Quantity["Kilogram"]
+ = 1 kilogram
+
+ >> Quantity[10, "Meters"]
+ = 10 meter
+
+ >> Quantity[{10,20}, "Meters"]
+ = {10 meter, 20 meter}
+
+ #> Quantity[10, Meters]
+ = Quantity[10, Meters]
+
+ #> Quantity[Meters]
+ : Unable to interpret unit specification Meters.
+ = Quantity[Meters]
+
+ #> Quantity[1, "foot"]
+ = 1 foot
+ """
+
+ attributes = A_HOLD_REST | A_N_HOLD_REST | A_PROTECTED | A_READ_PROTECTED
+
+ messages = {
+ "unkunit": "Unable to interpret unit specification `1`.",
+ }
+ summary_text = "represents a quantity with units"
+
+ def validate(self, unit, evaluation: Evaluation):
+ if KnownUnitQ(unit).evaluate(evaluation) is Symbol("False"):
+ return False
+ return True
+
+ def eval_makeboxes(self, mag, unit, f, evaluation: Evaluation):
+ "MakeBoxes[Quantity[mag_, unit_String], f:StandardForm|TraditionalForm|OutputForm|InputForm]"
+
+ q_unit = unit.value.lower()
+ if self.validate(unit, evaluation):
+ return Expression(
+ SymbolRowBox, ListExpression(mag, String(" "), String(q_unit))
+ )
+ else:
+ return Expression(
+ SymbolRowBox,
+ to_mathics_list(SymbolQuantity, "[", mag, ",", q_unit, "]"),
+ )
+
+ def eval_mag_unit(self, mag, unit, evaluation: Evaluation):
+ "Quantity[mag_, unit_String]"
+
+ if self.validate(unit, evaluation):
+ if mag.has_form("List", None):
+ results = []
+ for i in range(len(mag.elements)):
+ quantity = Q_(mag.elements[i], unit.value.lower())
+ results.append(
+ Expression(
+ SymbolQuantity, quantity.magnitude, String(quantity.units)
+ )
+ )
+ return ListExpression(*results)
+ else:
+ quantity = Q_(mag, unit.value.lower())
+ return Expression(
+ SymbolQuantity, quantity.magnitude, String(quantity.units)
+ )
+ else:
+ evaluation.message("Quantity", "unkunit", unit)
+
+ def eval(self, unit, evaluation: Evaluation):
+ "Quantity[unit_]"
+ if not isinstance(unit, String):
+ evaluation.message("Quantity", "unkunit", unit)
+ else:
+ return self.eval_n(Integer1, unit, evaluation)
+
+
+class QuantityMagnitude(Builtin):
+ """
+ <url>
+ :WMA link:
+ https://reference.wolfram.com/language/ref/QuantityMagnitude.html</url>
+
+ <dl>
+ <dt>'QuantityMagnitude[$quantity$]'
+ <dd>gives the amount of the specified $quantity$.
+
+ <dt>'QuantityMagnitude[$quantity$, $unit$]'
+ <dd>gives the value corresponding to $quantity$ when converted to $unit$.
+ </dl>
+
+ >> QuantityMagnitude[Quantity["Kilogram"]]
+ = 1
+
+ >> QuantityMagnitude[Quantity[10, "Meters"]]
+ = 10
+
+ >> QuantityMagnitude[Quantity[{10,20}, "Meters"]]
+ = {10, 20}
+
+ #> QuantityMagnitude[Quantity[1, "meter"], "centimeter"]
+ = 100
+
+ #> QuantityMagnitude[Quantity[{3,1}, "meter"], "centimeter"]
+ = {300, 100}
+
+ #> QuantityMagnitude[Quantity[{300,100}, "centimeter"], "meter"]
+ = {3, 1}
+
+ #> QuantityMagnitude[Quantity[{3, 1}, "meter"], "inch"]
+ = {118.11, 39.3701}
+
+ #> QuantityMagnitude[Quantity[{3, 1}, "meter"], Quantity[3, "centimeter"]]
+ = {300, 100}
+
+ #> QuantityMagnitude[Quantity[3,"mater"]]
+ : Unable to interpret unit specification mater.
+ = QuantityMagnitude[Quantity[3,mater]]
+ """
+
+ summary_text = "get magnitude associated with a quantity."
+
+ def eval(self, expr, evaluation: Evaluation):
+ "QuantityMagnitude[expr_]"
+
+ def get_magnitude(elements):
+ if len(elements) == 1:
+ return 1
+ else:
+ return elements[0]
+
+ if len(evaluation.out) > 0:
+ return
+ if expr.has_form("List", None):
+ results = []
+ for i in range(len(expr.elements)):
+ results.append(get_magnitude(expr.elements[i].elements))
+ return ListExpression(*results)
+ else:
+ return get_magnitude(expr.elements)
+
+ def eval_unit(self, expr, unit, evaluation: Evaluation):
+ "QuantityMagnitude[expr_, unit_]"
+
+ def get_magnitude(elements, targetUnit, evaluation: Evaluation):
+ quantity = Q_(elements[0], elements[1].get_string_value())
+ converted_quantity = quantity.to(targetUnit)
+ q_mag = get_converted_magnitude(converted_quantity.magnitude, evaluation)
+
+ # Displaying the magnitude in Integer form if the convert rate is an Integer
+ if q_mag - int(q_mag) > 0:
+ return Real(q_mag)
+ else:
+ return Integer(q_mag)
+
+ if len(evaluation.out) > 0:
+ return
+
+ # Getting the target unit
+ if unit.has_form("Quantity", None):
+ targetUnit = unit.elements[1].get_string_value().lower()
+ elif unit.has_form("List", None):
+ if not unit.elements[0].has_form("Quantity", None):
+ return
+ else:
+ targetUnit = unit.elements[0].elements[1].get_string_value().lower()
+ elif isinstance(unit, String):
+ targetUnit = unit.get_string_value().lower()
+ else:
+ return
+
+ # convert the quantity to the target unit and return the magnitude
+ if expr.has_form("List", None):
+ results = []
+ for i in range(len(expr.elements)):
+ results.append(
+ get_magnitude(expr.elements[i].elements, targetUnit, evaluation)
+ )
+ return ListExpression(*results)
+ else:
+ return get_magnitude(expr.elements, targetUnit, evaluation)
+
+
+class QuantityQ(Test):
+ """
+ <url>
+ :WMA link:
+ https://reference.wolfram.com/language/ref/QuantityQ.html</url>
+ <dl>
+ <dt>'QuantityQ[$expr$]'
+ <dd>return True if $expr$ is a valid Association object, and False otherwise.
+ </dl>
+
+ >> QuantityQ[Quantity[3, "Meters"]]
+ = True
+
+ >> QuantityQ[Quantity[3, "Maters"]]
+ : Unable to interpret unit specification Maters.
+ = False
+
+ #> QuantityQ[3]
+ = False
+ """
+
+ summary_text = "tests whether its the argument is a quantity"
+
+ def test(self, expr):
+ def validate_unit(unit):
+ try:
+ Q_(1, unit)
+ except Exception:
+ return False
+ else:
+ return True
+
+ def validate(elements):
+ if len(elements) < 1 or len(elements) > 2:
+ return False
+ elif len(elements) == 1:
+ if validate_unit(elements[0].get_string_value().lower()):
+ return True
+ else:
+ return False
+ else:
+ if isinstance(elements[0], Number):
+ if validate_unit(elements[1].get_string_value().lower()):
+ return True
+ else:
+ return False
+ else:
+ return False
+
+ return expr.get_head() == SymbolQuantity and validate(expr.elements)
+
+
+class QuantityUnit(Builtin):
+ """
+ <url>
+ :WMA link:
+ https://reference.wolfram.com/language/ref/QuantityUnit.html</url>
+
+ <dl>
+ <dt>'QuantityUnit[$quantity$]'
+ <dd>returns the unit associated with the specified $quantity$.
+ </dl>
+
+ >> QuantityUnit[Quantity["Kilogram"]]
+ = kilogram
+
+ >> QuantityUnit[Quantity[10, "Meters"]]
+ = meter
+
+ >> QuantityUnit[Quantity[{10,20}, "Meters"]]
+ = {meter, meter}
+
+ #> QuantityUnit[Quantity[10, "aaa"]]
+ : Unable to interpret unit specification aaa.
+ = QuantityUnit[Quantity[10,aaa]]
+ """
+
+ summary_text = "the unit associated to a quantity"
+
+ def eval(self, expr, evaluation: Evaluation):
+ "QuantityUnit[expr_]"
+
+ def get_unit(elements):
+ if len(elements) == 1:
+ return elements[0]
+ else:
+ return elements[1]
+
+ if len(evaluation.out) > 0:
+ return
+ if expr.has_form("List", None):
+ results = []
+ for i in range(len(expr.elements)):
+ results.append(get_unit(expr.elements[i].elements))
+ return ListExpression(*results)
+ else:
+ return get_unit(expr.elements)
+
+
+class UnitConvert(Builtin):
+
+ """
+ <url>
+ :WMA link:
+ https://reference.wolfram.com/language/ref/UnitConvert.html</url>
+
+ <dl>
+ <dt>'UnitConvert[$quantity$, $targetunit$] '
+ <dd> converts the specified $quantity$ to the specified $targetunit$.
+
+ <dt>'UnitConvert[quantity]'
+ <dd> converts the specified $quantity$ to its "SIBase" units.
+ </dl>
+
+ Convert from miles to kilometers:
+ >> UnitConvert[Quantity[5.2, "miles"], "kilometers"]
+ = 8.36859 kilometer
+
+ Convert a Quantity object to the appropriate SI base units:
+ >> UnitConvert[Quantity[3.8, "Pounds"]]
+ = 1.72365 kilogram
+
+ #> UnitConvert[Quantity[{3, 10}, "centimeter"]]
+ = {0.03 meter, 0.1 meter}
+
+ #> UnitConvert[Quantity[3, "aaa"]]
+ : Unable to interpret unit specification aaa.
+ = UnitConvert[Quantity[3,aaa]]
+
+ #> UnitConvert[Quantity[{300, 152}, "centimeter"], Quantity[10, "meter"]]
+ = {3 meter, 1.52 meter}
+
+ #> UnitConvert[Quantity[{3, 1}, "meter"], "inch"]
+ = {118.11 inch, 39.3701 inch}
+ """
+
+ messages = {
+ "argrx": "UnitConvert called with `1` arguments; 2 arguments are expected"
+ }
+ summary_text = "convert between units."
+
+ def eval(self, expr, toUnit, evaluation: Evaluation):
+ "UnitConvert[expr_, toUnit_]"
+
+ def convert_unit(elements, target):
+
+ mag = elements[0]
+ unit = elements[1].get_string_value()
+ quantity = Q_(mag, unit)
+ converted_quantity = quantity.to(target)
+
+ q_mag = get_converted_magnitude(converted_quantity.magnitude, evaluation)
+
+ # Displaying the magnitude in Integer form if the convert rate is an Integer
+ if q_mag - int(q_mag) > 0:
+ return Expression(SymbolQuantity, Real(q_mag), String(target))
+ else:
+ return Expression(SymbolQuantity, Integer(q_mag), String(target))
+
+ if len(evaluation.out) > 0:
+ return
+
+ if toUnit.has_form("Quantity", None):
+ targetUnit = toUnit.elements[1].get_string_value().lower()
+ elif toUnit.has_form("List", None):
+ if not toUnit.elements[0].has_form("Quantity", None):
+ return
+ else:
+ targetUnit = toUnit.elements[0].elements[1].get_string_value().lower()
+ elif isinstance(toUnit, String):
+ targetUnit = toUnit.get_string_value().lower()
+ else:
+ return
+ if expr.has_form("List", None):
+ abc = []
+ for i in range(len(expr.elements)):
+ abc.append(convert_unit(expr.elements[i].elements, targetUnit))
+ return ListExpression(*abc)
+ elif isinstance(expr, Atom):
+ # FIXME convert_unit doesn't handle this correctly
+ return convert_unit(expr)
+ else:
+ return convert_unit(expr.elements, targetUnit)
+
+ def eval_base_unit(self, expr, evaluation: Evaluation):
+ "UnitConvert[expr_]"
+
+ def convert_unit(elements):
+
+ mag = elements[0]
+ unit = elements[1].get_string_value()
+
+ quantity = Q_(mag, unit)
+ converted_quantity = quantity.to_base_units()
+
+ mag = get_converted_magnitude(converted_quantity.magnitude, evaluation)
+
+ return Expression(
+ SymbolQuantity,
+ converted_quantity.magnitude,
+ String(converted_quantity.units),
+ )
+
+ if len(evaluation.out) > 0:
+ return
+ if expr.has_form("List", None):
+ abc = []
+ for i in range(len(expr.elements)):
+ abc.append(convert_unit(expr.elements[i].elements))
+ return ListExpression(*abc)
+ elif isinstance(expr, Atom):
+ # FIXME convert_unit doesn't handle this correctly
+ return convert_unit(expr)
+ else:
+ return convert_unit(expr.elements)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/mathics/builtin/quantities-try.py new/Mathics3-6.0.2/mathics/builtin/quantities-try.py
--- old/Mathics3-6.0.1/mathics/builtin/quantities-try.py 2023-02-27 01:35:42.000000000 +0100
+++ new/Mathics3-6.0.2/mathics/builtin/quantities-try.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,486 +0,0 @@
-# -*- coding: utf-8 -*-
-"""
-Units and Quantities
-"""
-
-from pint import UnitRegistry
-
-from mathics.builtin.base import Builtin, Test
-from mathics.core.atoms import Atom, Integer, Integer1, Number, Real, String
-from mathics.core.attributes import (
- A_HOLD_REST,
- A_N_HOLD_REST,
- A_PROTECTED,
- A_READ_PROTECTED,
-)
-from mathics.core.convert.expression import to_mathics_list
-from mathics.core.convert.python import from_python
-from mathics.core.evaluation import Evaluation
-from mathics.core.expression import Expression
-from mathics.core.list import ListExpression
-from mathics.core.symbols import Symbol
-from mathics.core.systemsymbols import SymbolQuantity, SymbolRowBox
-
-# This tells documentation how to sort this module
-sort_order = "mathics.builtin.units-and-quantites"
-
-ureg = UnitRegistry()
-Q_ = ureg.Quantity
-
-
-def get_converted_magnitude(magnitude_expr, evaluation: Evaluation) -> float:
- """
- The Python "pint" library mixes in a Python numeric value as a multiplier inside
- a Mathics Expression. here we pick out that multiplier and
- convert it from a Python numeric to a Mathics numeric.
- """
- magnitude_elements = list(magnitude_expr.elements)
- magnitude_elements[1] = from_python(magnitude_elements[1])
- magnitude_expr._elements = tuple(magnitude_elements)
- # FIXME: consider returning an int when that is possible
- return magnitude_expr.evaluate(evaluation).get_float_value()
-
-
-class KnownUnitQ(Test):
- """
- <url>
- :WMA link:
- https://reference.wolfram.com/language/ref/KnownUnitQ.html</url>
-
- <dl>
- <dt>'KnownUnitQ[$unit$]'
- <dd>returns True if $unit$ is a canonical unit, and False otherwise.
- </dl>
-
- >> KnownUnitQ["Feet"]
- = True
-
- >> KnownUnitQ["Foo"]
- = False
- """
-
- summary_text = "tests whether its argument is a canonical unit."
-
- def test(self, expr):
- def validate(unit):
- try:
- Q_(1, unit)
- except Exception:
- return False
- else:
- return True
-
- return validate(expr.get_string_value().lower())
-
-
-class Quantity(Builtin):
- """
- <url>
- :WMA link:
- https://reference.wolfram.com/language/ref/Quantity.html</url>
-
- <dl>
- <dt>'Quantity[$magnitude$, $unit$]'
- <dd>represents a quantity with size $magnitude$ and unit specified by $unit$.
-
- <dt>'Quantity[$unit$]'
- <dd>assumes the magnitude of the specified $unit$ to be 1.
- </dl>
-
- >> Quantity["Kilogram"]
- = 1 kilogram
-
- >> Quantity[10, "Meters"]
- = 10 meter
-
- >> Quantity[{10,20}, "Meters"]
- = {10 meter, 20 meter}
-
- #> Quantity[10, Meters]
- = Quantity[10, Meters]
-
- #> Quantity[Meters]
- : Unable to interpret unit specification Meters.
- = Quantity[Meters]
-
- #> Quantity[1, "foot"]
- = 1 foot
- """
-
- attributes = A_HOLD_REST | A_N_HOLD_REST | A_PROTECTED | A_READ_PROTECTED
-
- messages = {
- "unkunit": "Unable to interpret unit specification `1`.",
- }
- summary_text = "represents a quantity with units"
-
- def validate(self, unit, evaluation: Evaluation):
- if KnownUnitQ(unit).evaluate(evaluation) is Symbol("False"):
- return False
- return True
-
- def eval_makeboxes(self, mag, unit, f, evaluation: Evaluation):
- "MakeBoxes[Quantity[mag_, unit_String], f:StandardForm|TraditionalForm|OutputForm|InputForm]"
-
- q_unit = unit.value.lower()
- if self.validate(unit, evaluation):
- return Expression(
- SymbolRowBox, ListExpression(mag, String(" "), String(q_unit))
- )
- else:
- return Expression(
- SymbolRowBox,
- to_mathics_list(SymbolQuantity, "[", mag, ",", q_unit, "]"),
- )
-
- def eval_mag_unit(self, mag, unit, evaluation: Evaluation):
- "Quantity[mag_, unit_String]"
-
- if self.validate(unit, evaluation):
- if mag.has_form("List", None):
- results = []
- for i in range(len(mag.elements)):
- quantity = Q_(mag.elements[i], unit.value.lower())
- results.append(
- Expression(
- SymbolQuantity, quantity.magnitude, String(quantity.units)
- )
- )
- return ListExpression(*results)
- else:
- quantity = Q_(mag, unit.value.lower())
- return Expression(
- SymbolQuantity, quantity.magnitude, String(quantity.units)
- )
- else:
- evaluation.message("Quantity", "unkunit", unit)
-
- def eval(self, unit, evaluation: Evaluation):
- "Quantity[unit_]"
- if not isinstance(unit, String):
- evaluation.message("Quantity", "unkunit", unit)
- else:
- return self.eval_n(Integer1, unit, evaluation)
-
-
-class QuantityMagnitude(Builtin):
- """
- <url>
- :WMA link:
- https://reference.wolfram.com/language/ref/QuantityMagnitude.html</url>
-
- <dl>
- <dt>'QuantityMagnitude[$quantity$]'
- <dd>gives the amount of the specified $quantity$.
-
- <dt>'QuantityMagnitude[$quantity$, $unit$]'
- <dd>gives the value corresponding to $quantity$ when converted to $unit$.
- </dl>
-
- >> QuantityMagnitude[Quantity["Kilogram"]]
- = 1
-
- >> QuantityMagnitude[Quantity[10, "Meters"]]
- = 10
-
- >> QuantityMagnitude[Quantity[{10,20}, "Meters"]]
- = {10, 20}
-
- #> QuantityMagnitude[Quantity[1, "meter"], "centimeter"]
- = 100
-
- #> QuantityMagnitude[Quantity[{3,1}, "meter"], "centimeter"]
- = {300, 100}
-
- #> QuantityMagnitude[Quantity[{300,100}, "centimeter"], "meter"]
- = {3, 1}
-
- #> QuantityMagnitude[Quantity[{3, 1}, "meter"], "inch"]
- = {118.11, 39.3701}
-
- #> QuantityMagnitude[Quantity[{3, 1}, "meter"], Quantity[3, "centimeter"]]
- = {300, 100}
-
- #> QuantityMagnitude[Quantity[3,"mater"]]
- : Unable to interpret unit specification mater.
- = QuantityMagnitude[Quantity[3,mater]]
- """
-
- summary_text = "get magnitude associated with a quantity."
-
- def eval(self, expr, evaluation: Evaluation):
- "QuantityMagnitude[expr_]"
-
- def get_magnitude(elements):
- if len(elements) == 1:
- return 1
- else:
- return elements[0]
-
- if len(evaluation.out) > 0:
- return
- if expr.has_form("List", None):
- results = []
- for i in range(len(expr.elements)):
- results.append(get_magnitude(expr.elements[i].elements))
- return ListExpression(*results)
- else:
- return get_magnitude(expr.elements)
-
- def eval_unit(self, expr, unit, evaluation: Evaluation):
- "QuantityMagnitude[expr_, unit_]"
-
- def get_magnitude(elements, targetUnit, evaluation: Evaluation):
- quantity = Q_(elements[0], elements[1].get_string_value())
- converted_quantity = quantity.to(targetUnit)
- q_mag = get_converted_magnitude(converted_quantity.magnitude, evaluation)
-
- # Displaying the magnitude in Integer form if the convert rate is an Integer
- if q_mag - int(q_mag) > 0:
- return Real(q_mag)
- else:
- return Integer(q_mag)
-
- if len(evaluation.out) > 0:
- return
-
- # Getting the target unit
- if unit.has_form("Quantity", None):
- targetUnit = unit.elements[1].get_string_value().lower()
- elif unit.has_form("List", None):
- if not unit.elements[0].has_form("Quantity", None):
- return
- else:
- targetUnit = unit.elements[0].elements[1].get_string_value().lower()
- elif isinstance(unit, String):
- targetUnit = unit.get_string_value().lower()
- else:
- return
-
- # convert the quantity to the target unit and return the magnitude
- if expr.has_form("List", None):
- results = []
- for i in range(len(expr.elements)):
- results.append(
- get_magnitude(expr.elements[i].elements, targetUnit, evaluation)
- )
- return ListExpression(*results)
- else:
- return get_magnitude(expr.elements, targetUnit, evaluation)
-
-
-class QuantityQ(Test):
- """
- <url>
- :WMA link:
- https://reference.wolfram.com/language/ref/QuantityQ.html</url>
- <dl>
- <dt>'QuantityQ[$expr$]'
- <dd>return True if $expr$ is a valid Association object, and False otherwise.
- </dl>
-
- >> QuantityQ[Quantity[3, "Meters"]]
- = True
-
- >> QuantityQ[Quantity[3, "Maters"]]
- : Unable to interpret unit specification Maters.
- = False
-
- #> QuantityQ[3]
- = False
- """
-
- summary_text = "tests whether its the argument is a quantity"
-
- def test(self, expr):
- def validate_unit(unit):
- try:
- Q_(1, unit)
- except Exception:
- return False
- else:
- return True
-
- def validate(elements):
- if len(elements) < 1 or len(elements) > 2:
- return False
- elif len(elements) == 1:
- if validate_unit(elements[0].get_string_value().lower()):
- return True
- else:
- return False
- else:
- if isinstance(elements[0], Number):
- if validate_unit(elements[1].get_string_value().lower()):
- return True
- else:
- return False
- else:
- return False
-
- return expr.get_head() == SymbolQuantity and validate(expr.elements)
-
-
-class QuantityUnit(Builtin):
- """
- <url>
- :WMA link:
- https://reference.wolfram.com/language/ref/QuantityUnit.html</url>
-
- <dl>
- <dt>'QuantityUnit[$quantity$]'
- <dd>returns the unit associated with the specified $quantity$.
- </dl>
-
- >> QuantityUnit[Quantity["Kilogram"]]
- = kilogram
-
- >> QuantityUnit[Quantity[10, "Meters"]]
- = meter
-
- >> QuantityUnit[Quantity[{10,20}, "Meters"]]
- = {meter, meter}
-
- #> QuantityUnit[Quantity[10, "aaa"]]
- : Unable to interpret unit specification aaa.
- = QuantityUnit[Quantity[10,aaa]]
- """
-
- summary_text = "the unit associated to a quantity"
-
- def eval(self, expr, evaluation: Evaluation):
- "QuantityUnit[expr_]"
-
- def get_unit(elements):
- if len(elements) == 1:
- return elements[0]
- else:
- return elements[1]
-
- if len(evaluation.out) > 0:
- return
- if expr.has_form("List", None):
- results = []
- for i in range(len(expr.elements)):
- results.append(get_unit(expr.elements[i].elements))
- return ListExpression(*results)
- else:
- return get_unit(expr.elements)
-
-
-class UnitConvert(Builtin):
-
- """
- <url>
- :WMA link:
- https://reference.wolfram.com/language/ref/UnitConvert.html</url>
-
- <dl>
- <dt>'UnitConvert[$quantity$, $targetunit$] '
- <dd> converts the specified $quantity$ to the specified $targetunit$.
-
- <dt>'UnitConvert[quantity]'
- <dd> converts the specified $quantity$ to its "SIBase" units.
- </dl>
-
- Convert from miles to kilometers:
- >> UnitConvert[Quantity[5.2, "miles"], "kilometers"]
- = 8.36859 kilometer
-
- Convert a Quantity object to the appropriate SI base units:
- >> UnitConvert[Quantity[3.8, "Pounds"]]
- = 1.72365 kilogram
-
- #> UnitConvert[Quantity[{3, 10}, "centimeter"]]
- = {0.03 meter, 0.1 meter}
-
- #> UnitConvert[Quantity[3, "aaa"]]
- : Unable to interpret unit specification aaa.
- = UnitConvert[Quantity[3,aaa]]
-
- #> UnitConvert[Quantity[{300, 152}, "centimeter"], Quantity[10, "meter"]]
- = {3 meter, 1.52 meter}
-
- #> UnitConvert[Quantity[{3, 1}, "meter"], "inch"]
- = {118.11 inch, 39.3701 inch}
- """
-
- messages = {
- "argrx": "UnitConvert called with `1` arguments; 2 arguments are expected"
- }
- summary_text = "convert between units."
-
- def eval(self, expr, toUnit, evaluation: Evaluation):
- "UnitConvert[expr_, toUnit_]"
-
- def convert_unit(elements, target):
-
- mag = elements[0]
- unit = elements[1].get_string_value()
- quantity = Q_(mag, unit)
- converted_quantity = quantity.to(target)
-
- q_mag = get_converted_magnitude(converted_quantity.magnitude, evaluation)
-
- # Displaying the magnitude in Integer form if the convert rate is an Integer
- if q_mag - int(q_mag) > 0:
- return Expression(SymbolQuantity, Real(q_mag), String(target))
- else:
- return Expression(SymbolQuantity, Integer(q_mag), String(target))
-
- if len(evaluation.out) > 0:
- return
-
- if toUnit.has_form("Quantity", None):
- targetUnit = toUnit.elements[1].get_string_value().lower()
- elif toUnit.has_form("List", None):
- if not toUnit.elements[0].has_form("Quantity", None):
- return
- else:
- targetUnit = toUnit.elements[0].elements[1].get_string_value().lower()
- elif isinstance(toUnit, String):
- targetUnit = toUnit.get_string_value().lower()
- else:
- return
- if expr.has_form("List", None):
- abc = []
- for i in range(len(expr.elements)):
- abc.append(convert_unit(expr.elements[i].elements, targetUnit))
- return ListExpression(*abc)
- elif isinstance(expr, Atom):
- # FIXME convert_unit doesn't handle this correctly
- return convert_unit(expr)
- else:
- return convert_unit(expr.elements, targetUnit)
-
- def eval_base_unit(self, expr, evaluation: Evaluation):
- "UnitConvert[expr_]"
-
- def convert_unit(elements):
-
- mag = elements[0]
- unit = elements[1].get_string_value()
-
- quantity = Q_(mag, unit)
- converted_quantity = quantity.to_base_units()
-
- mag = get_converted_magnitude(converted_quantity.magnitude, evaluation)
-
- return Expression(
- SymbolQuantity,
- converted_quantity.magnitude,
- String(converted_quantity.units),
- )
-
- if len(evaluation.out) > 0:
- return
- if expr.has_form("List", None):
- abc = []
- for i in range(len(expr.elements)):
- abc.append(convert_unit(expr.elements[i].elements))
- return ListExpression(*abc)
- elif isinstance(expr, Atom):
- # FIXME convert_unit doesn't handle this correctly
- return convert_unit(expr)
- else:
- return convert_unit(expr.elements)
Binary files old/Mathics3-6.0.1/mathics/data/doctest_latex_data.pcl and new/Mathics3-6.0.2/mathics/data/doctest_latex_data.pcl differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/mathics/version.py new/Mathics3-6.0.2/mathics/version.py
--- old/Mathics3-6.0.1/mathics/version.py 2023-03-05 11:06:29.000000000 +0100
+++ new/Mathics3-6.0.2/mathics/version.py 2023-07-23 23:23:47.000000000 +0200
@@ -5,4 +5,4 @@
# well as importing into Python. That's why there is no
# space around "=" below.
# fmt: off
-__version__="6.0.1" # noqa
+__version__="6.0.2" # noqa
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/setup.py new/Mathics3-6.0.2/setup.py
--- old/Mathics3-6.0.1/setup.py 2023-02-26 14:06:01.000000000 +0100
+++ new/Mathics3-6.0.2/setup.py 2023-07-23 23:35:19.000000000 +0200
@@ -57,16 +57,16 @@
"numpy",
"llvmlite<0.37",
"pillow >= 8.4.0",
- "sympy>=1.8,<1.12",
+ "sympy>=1.8",
]
if is_PyPy:
print("Mathics does not support PyPy Python 3.6" % sys.version_info[:2])
sys.exit(-1)
else:
INSTALL_REQUIRES += [
- "numpy<=1.24",
+ "numpy<1.25",
"llvmlite",
- "sympy>=1.8, < 1.12",
+ "sympy>=1.8",
"pillow >= 9.2",
]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mathics3-6.0.1/test/test_calculus.py new/Mathics3-6.0.2/test/test_calculus.py
--- old/Mathics3-6.0.1/test/test_calculus.py 2023-01-15 04:50:39.000000000 +0100
+++ new/Mathics3-6.0.2/test/test_calculus.py 2023-07-23 23:23:47.000000000 +0200
@@ -9,13 +9,13 @@
def test_calculus():
for str_expr, str_expected, message in (
(
- "Solve[{(7+x)*ma == 167, (5+x)*mb == 167, (7+5)*(ma+mb) == 334}, {ma, mb, x}]",
+ "Solve[{(7+x)*ma == 167, (5+x)*mb == 167, (7+5)*(ma+mb) == 334}, {ma, mb, x}]//Sort",
"{{ma -> 1169 / 12 - 167 Sqrt[37] / 12, mb -> -835 / 12 + 167 Sqrt[37] / 12, x -> Sqrt[37]}, {ma -> 1169 / 12 + 167 Sqrt[37] / 12, mb -> -835 / 12 - 167 Sqrt[37] / 12, x -> -Sqrt[37]}}",
"Issue63",
),
(
- "Solve[{(7+x)*ma == 167, (5+x)*mb == 167, (7+5)*(ma+mb) == 334}, {x, ma, mb}]",
- "{{x -> -Sqrt[37], ma -> 1169 / 12 + 167 Sqrt[37] / 12, mb -> -835 / 12 - 167 Sqrt[37] / 12}, {x -> Sqrt[37], ma -> 1169 / 12 - 167 Sqrt[37] / 12, mb -> -835 / 12 + 167 Sqrt[37] / 12}}",
+ "Solve[{(7+x)*ma == 167, (5+x)*mb == 167, (7+5)*(ma+mb) == 334}, {x, ma, mb}]//Sort",
+ "{{x -> Sqrt[37], ma -> 1169 / 12 - 167 Sqrt[37] / 12, mb -> -835 / 12 + 167 Sqrt[37] / 12}, {x -> -Sqrt[37], ma -> 1169 / 12 + 167 Sqrt[37] / 12, mb -> -835 / 12 - 167 Sqrt[37] / 12}}",
"Issue 208",
),
(
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package yast2-users for openSUSE:Factory checked in at 2023-07-30 20:57:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-users (Old)
and /work/SRC/openSUSE:Factory/.yast2-users.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-users"
Sun Jul 30 20:57:52 2023 rev:260 rq:1101323 version:4.6.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-users/yast2-users.changes 2023-07-26 14:43:07.411587031 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-users.new.32662/yast2-users.changes 2023-07-30 20:57:54.779269933 +0200
@@ -1,0 +2,16 @@
+Tue Jul 25 11:04:17 UTC 2023 - Michal Filka <mfilka(a)suse.com>
+
+- bsc#1211583
+ - do not pre-fill non-sense user password when going back after
+ importing user
+- 4.6.4
+
+-------------------------------------------------------------------
+Mon Jul 24 13:21:21 UTC 2023 - Ancor Gonzalez Sosa <ancor(a)suse.com>
+
+- Allow to edit the NIS master server databases instead of the
+ local ones, relying on the --prefix argument added to several
+ commands in the "shadow" package (bsc#1206627).
+- 4.6.3
+
+-------------------------------------------------------------------
Old:
----
yast2-users-4.6.2.tar.bz2
New:
----
yast2-users-4.6.4.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-users.spec ++++++
--- /var/tmp/diff_new_pack.9HHZhf/_old 2023-07-30 20:57:55.447273899 +0200
+++ /var/tmp/diff_new_pack.9HHZhf/_new 2023-07-30 20:57:55.455273946 +0200
@@ -17,7 +17,7 @@
Name: yast2-users
-Version: 4.6.2
+Version: 4.6.4
Release: 0
Summary: YaST2 - User and Group Configuration
License: GPL-2.0-only
++++++ yast2-users-4.6.2.tar.bz2 -> yast2-users-4.6.4.tar.bz2 ++++++
++++ 2406 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package MozillaFirefox for openSUSE:Factory checked in at 2023-07-30 20:57:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/MozillaFirefox (Old)
and /work/SRC/openSUSE:Factory/.MozillaFirefox.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "MozillaFirefox"
Sun Jul 30 20:57:38 2023 rev:405 rq:1101322 version:115.0.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/MozillaFirefox/MozillaFirefox.changes 2023-07-15 23:14:30.171283937 +0200
+++ /work/SRC/openSUSE:Factory/.MozillaFirefox.new.32662/MozillaFirefox.changes 2023-07-30 20:57:42.803198828 +0200
@@ -1,0 +2,7 @@
+Fri Jul 28 20:56:00 UTC 2023 - Andreas Stieger <andreas.stieger(a)gmx.de>
+
+- Mozilla Firefox 115.0.3
+ * fixes for other platforms
+- remove bashisms from firefox startup script (boo#1213657)
+
+-------------------------------------------------------------------
Old:
----
firefox-115.0.2.source.tar.xz
firefox-115.0.2.source.tar.xz.asc
l10n-115.0.2.tar.xz
New:
----
firefox-115.0.3.source.tar.xz
firefox-115.0.3.source.tar.xz.asc
l10n-115.0.3.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MozillaFirefox.spec ++++++
--- /var/tmp/diff_new_pack.kzZVwO/_old 2023-07-30 20:57:53.587262856 +0200
+++ /var/tmp/diff_new_pack.kzZVwO/_new 2023-07-30 20:57:53.595262903 +0200
@@ -29,8 +29,8 @@
# major 69
# mainver %%major.99
%define major 115
-%define mainver %major.0.2
-%define orig_version 115.0.2
+%define mainver %major.0.3
+%define orig_version 115.0.3
%define orig_suffix %{nil}
%define update_channel release
%define branding 1
++++++ firefox-115.0.2.source.tar.xz -> firefox-115.0.3.source.tar.xz ++++++
/work/SRC/openSUSE:Factory/MozillaFirefox/firefox-115.0.2.source.tar.xz /work/SRC/openSUSE:Factory/.MozillaFirefox.new.32662/firefox-115.0.3.source.tar.xz differ: char 15, line 1
++++++ l10n-115.0.2.tar.xz -> l10n-115.0.3.tar.xz ++++++
++++++ mozilla.sh.in ++++++
--- /var/tmp/diff_new_pack.kzZVwO/_old 2023-07-30 20:57:54.031265492 +0200
+++ /var/tmp/diff_new_pack.kzZVwO/_new 2023-07-30 20:57:54.035265515 +0200
@@ -100,7 +100,7 @@
fi
# xinput2 (boo#1173320)
-source /etc/os-release
+. /etc/os-release
if [ "$ID" = "opensuse-tumbleweed" ]; then
export MOZ_USE_XINPUT2=1
fi
@@ -151,7 +151,7 @@
# Try with a local variant first, then without a local variant
SHORTMOZLOCALE=`echo $CURRENT_LOCALE | sed "s|_\([^.]*\).*||g" | sed "s|\..*||g"`
MOZLOCALE=`echo $CURRENT_LOCALE | sed "s|_\([^.]*\).*|-\1|g" | sed "s|\..*||g"`
- function create_langpack_link() {
+ create_langpack_link() {
local language=$*
local langpack=langpack-${language}(a)firefox.mozilla.org.xpi
if [ -f $MOZ_LANGPACKS_DIR/$langpack ]; then
++++++ tar_stamps ++++++
--- /var/tmp/diff_new_pack.kzZVwO/_old 2023-07-30 20:57:54.083265801 +0200
+++ /var/tmp/diff_new_pack.kzZVwO/_new 2023-07-30 20:57:54.087265824 +0200
@@ -1,11 +1,11 @@
PRODUCT="firefox"
CHANNEL="release"
-VERSION="115.0.2"
+VERSION="115.0.3"
VERSION_SUFFIX=""
-PREV_VERSION="115.0.1"
+PREV_VERSION="115.0.2"
PREV_VERSION_SUFFIX=""
#SKIP_LOCALES="" # Uncomment to skip l10n and compare-locales-generation
RELEASE_REPO="https://hg.mozilla.org/releases/mozilla-release"
-RELEASE_TAG="bd32951a19a6485f380f024a221b7fced7bd8c4a"
-RELEASE_TIMESTAMP="20230710165010"
+RELEASE_TAG="326212e7271a9c9f0776153095cf48d7153260aa"
+RELEASE_TIMESTAMP="20230726201356"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package hwloc for openSUSE:Factory checked in at 2023-07-30 20:57:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hwloc (Old)
and /work/SRC/openSUSE:Factory/.hwloc.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hwloc"
Sun Jul 30 20:57:37 2023 rev:30 rq:1101307 version:2.9.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/hwloc/hwloc.changes 2023-06-30 19:58:19.445447850 +0200
+++ /work/SRC/openSUSE:Factory/.hwloc.new.32662/hwloc.changes 2023-07-30 20:57:41.711192345 +0200
@@ -1,0 +2,15 @@
+Sun Jul 16 08:09:41 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 2.9.2:
+ * Don't forget L3i when defining filters for multiple levels of
+ caches with hwloc_topology_set_cache/icache_types_filter().
+ * Fix object total_memory after hwloc_topology_insert_group_object().
+ * Fix the (non-yet) exporting in synthetic description for
+ complex memory hierarchies with memory-side caches, etc.
+ * Fix some default size attributes when building synthetic
+ topologies.
+ * Fix size units in hwloc-annotate.
+ * Improve bitmap reallocation error management in many functions.
+ * Documentation improvements
+
+-------------------------------------------------------------------
Old:
----
hwloc-2.9.1.tar.bz2
New:
----
hwloc-2.9.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hwloc.spec ++++++
--- /var/tmp/diff_new_pack.MBcDHB/_old 2023-07-30 20:57:42.451196738 +0200
+++ /var/tmp/diff_new_pack.MBcDHB/_new 2023-07-30 20:57:42.455196762 +0200
@@ -29,7 +29,7 @@
%global lname libhwloc15
Name: hwloc
-Version: 2.9.1
+Version: 2.9.2
Release: 0
Summary: Portable Hardware Locality
License: BSD-3-Clause
++++++ hwloc-2.9.1.tar.bz2 -> hwloc-2.9.2.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/hwloc/hwloc-2.9.1.tar.bz2 /work/SRC/openSUSE:Factory/.hwloc.new.32662/hwloc-2.9.2.tar.bz2 differ: char 11, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package whois for openSUSE:Factory checked in at 2023-07-30 20:57:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/whois (Old)
and /work/SRC/openSUSE:Factory/.whois.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "whois"
Sun Jul 30 20:57:36 2023 rev:91 rq:1101306 version:5.5.18
Changes:
--------
--- /work/SRC/openSUSE:Factory/whois/whois.changes 2023-05-24 20:22:15.688143423 +0200
+++ /work/SRC/openSUSE:Factory/.whois.new.32662/whois.changes 2023-07-30 20:57:40.419184674 +0200
@@ -1,0 +2,14 @@
+Wed Jul 26 06:21:07 UTC 2023 - Dirk Müller <dmueller(a)suse.com>
+
+- update to 5.5.18:
+ * Updated the .ga TLD server. (Closes: #1037288)
+ * Added new recovered IPv4 allocations.
+ * Removed the delegation of 43.0.0.0/8 to JPNIC.
+ * Removed 12 new gTLDs which are no longer active.
+ * Improved the man page source, courtesy of Bjarni Ingi
+ Gislason.
+ * Added the .edu.za SLD server.
+ * Updated the .alt.za SLD server.
+ * Added the -ru and -su NIC handles servers.
+
+-------------------------------------------------------------------
Old:
----
whois_5.5.17.tar.xz
New:
----
whois_5.5.18.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ whois.spec ++++++
--- /var/tmp/diff_new_pack.CNBKQy/_old 2023-07-30 20:57:41.367190302 +0200
+++ /var/tmp/diff_new_pack.CNBKQy/_new 2023-07-30 20:57:41.371190326 +0200
@@ -17,7 +17,7 @@
Name: whois
-Version: 5.5.17
+Version: 5.5.18
Release: 0
Summary: Intelligent WHOIS client
License: GPL-2.0-or-later
++++++ whois-nobsdsource.patch ++++++
--- /var/tmp/diff_new_pack.CNBKQy/_old 2023-07-30 20:57:41.391190445 +0200
+++ /var/tmp/diff_new_pack.CNBKQy/_new 2023-07-30 20:57:41.395190468 +0200
@@ -1,8 +1,8 @@
-Index: whois-5.5.16/mkpasswd.c
+Index: whois-5.5.18/mkpasswd.c
===================================================================
---- whois-5.5.16.orig/mkpasswd.c
-+++ whois-5.5.16/mkpasswd.c
-@@ -17,10 +17,7 @@
+--- whois-5.5.18.orig/mkpasswd.c
++++ whois-5.5.18/mkpasswd.c
+@@ -19,10 +19,7 @@
*/
/* for crypt, snprintf and strcasecmp */
@@ -13,12 +13,12 @@
/* System library */
#include <stdio.h>
-Index: whois-5.5.16/whois.c
+Index: whois-5.5.18/whois.c
===================================================================
---- whois-5.5.16.orig/whois.c
-+++ whois-5.5.16/whois.c
-@@ -7,9 +7,6 @@
- * (at your option) any later version.
+--- whois-5.5.18.orig/whois.c
++++ whois-5.5.18/whois.c
+@@ -9,9 +9,6 @@
+ * SPDX-License-Identifier: GPL-2.0-or-later
*/
-/* for AI_IDN */
@@ -27,11 +27,11 @@
/* System library */
#include <stdio.h>
#include <stdlib.h>
-Index: whois-5.5.16/Makefile
+Index: whois-5.5.18/Makefile
===================================================================
---- whois-5.5.16.orig/Makefile
-+++ whois-5.5.16/Makefile
-@@ -69,7 +69,7 @@ else
+--- whois-5.5.18.orig/Makefile
++++ whois-5.5.18/Makefile
+@@ -70,7 +70,7 @@ else
mkpasswd_LDADD += -lcrypt
endif
++++++ whois.asc ++++++
--- /var/tmp/diff_new_pack.CNBKQy/_old 2023-07-30 20:57:41.415190587 +0200
+++ /var/tmp/diff_new_pack.CNBKQy/_new 2023-07-30 20:57:41.415190587 +0200
@@ -5,26 +5,26 @@
Source: whois
Binary: whois
Architecture: any
-Version: 5.5.17
+Version: 5.5.18
Maintainer: Marco d'Itri <md(a)linux.it>
-Standards-Version: 4.6.1.1
+Standards-Version: 4.6.2.0
Vcs-Browser: https://github.com/rfc1036/whois
Vcs-Git: https://github.com/rfc1036/whois.git
Build-Depends: debhelper-compat (= 13), gettext, pkg-config, bash-completion, libidn2-dev (>= 2.0.3)
Package-List:
whois deb net standard arch=any
Checksums-Sha1:
- c63f8ebdbcbabcfdfa6ec8777240dc4d22fbf1cb 90608 whois_5.5.17.tar.xz
+ 11599be246127bec4bdb3eef839a9fa9ed8ef076 90216 whois_5.5.18.tar.xz
Checksums-Sha256:
- effe86e6d75101c2f33a0b3d2d948ab54aa57893fedc3b9983ffd55e881e2521 90608 whois_5.5.17.tar.xz
+ 80132ac952e882fc2b1e8e681e9a0d432949f99afa7503d257487515c85cd5b8 90216 whois_5.5.18.tar.xz
Files:
- 08b370b67bf62ccb9a99ace3a305ab3a 90608 whois_5.5.17.tar.xz
+ be8aaa843a0030f656b0ac3ed945e4e6 90216 whois_5.5.18.tar.xz
-----BEGIN PGP SIGNATURE-----
-iHUEARYIAB0WIQQnKUXNg20437dCfobLPsM64d7XgQUCZFJTPQAKCRDLPsM64d7X
-gc5AAP9mb9i4zB6aFbspLTSFo1T4ygsViFk52UW3O1rcFQi6GwD7B8Nfb3cyzPL1
-1o4gJVmCq0FbaYKYhiosidBsHWybXwQ=
-=BEw1
+iHUEARYIAB0WIQQnKUXNg20437dCfobLPsM64d7XgQUCZLv8nAAKCRDLPsM64d7X
+gWkyAP9T7dH+4Bv5Xcs1pTGll2uT+KOjfaxGhM+qkEEG2F33eQEA59WBcV/a535Q
+G9Jc+g9zEqiSvqEGZYZgV9O1p1R1qwc=
+=8Irk
-----END PGP SIGNATURE-----
++++++ whois_5.5.17.tar.xz -> whois_5.5.18.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/Makefile new/whois-5.5.18/Makefile
--- old/whois-5.5.17/Makefile 2023-02-28 01:11:47.000000000 +0100
+++ new/whois-5.5.18/Makefile 2023-07-22 17:56:56.000000000 +0200
@@ -1,3 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
prefix = /usr
ifdef DESTDIR
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/config.h new/whois-5.5.18/config.h
--- old/whois-5.5.17/config.h 2022-12-28 20:48:01.000000000 +0100
+++ new/whois-5.5.18/config.h 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
/* Configurable features */
+/* SPDX-License-Identifier: GPL-2.0-or-later */
/* Always hide legal disclaimers */
#undef ALWAYS_HIDE_DISCL
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/debian/changelog new/whois-5.5.18/debian/changelog
--- old/whois-5.5.17/debian/changelog 2023-05-03 14:24:37.000000000 +0200
+++ new/whois-5.5.18/debian/changelog 2023-07-22 17:56:56.000000000 +0200
@@ -1,3 +1,20 @@
+whois (5.5.18) unstable; urgency=medium
+
+ [ Marco d'Itri ]
+ * Updated the .ga TLD server. (Closes: #1037288)
+ * Added new recovered IPv4 allocations.
+ * Removed the delegation of 43.0.0.0/8 to JPNIC.
+ * Removed 12 new gTLDs which are no longer active.
+ * Improved the man page source, courtesy of Bjarni Ingi Gislason.
+ (Closes: #1040613)
+
+ [ Robert Scheck ]
+ * Added the .edu.za SLD server.
+ * Updated the .alt.za SLD server.
+ * Added the -ru and -su NIC handles servers.
+
+ -- Marco d'Itri <md(a)linux.it> Sat, 22 Jul 2023 17:56:56 +0200
+
whois (5.5.17) unstable; urgency=medium
[ Robert Scheck ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/debian/control new/whois-5.5.18/debian/control
--- old/whois-5.5.17/debian/control 2023-02-28 01:11:47.000000000 +0100
+++ new/whois-5.5.18/debian/control 2023-07-22 17:56:56.000000000 +0200
@@ -2,7 +2,7 @@
Section: net
Priority: standard
Maintainer: Marco d'Itri <md(a)linux.it>
-Standards-Version: 4.6.1.1
+Standards-Version: 4.6.2.0
Rules-Requires-Root: no
Build-Depends: debhelper-compat (= 13), gettext, pkg-config,
bash-completion,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/ip_del_list new/whois-5.5.18/ip_del_list
--- old/whois-5.5.17/ip_del_list 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/ip_del_list 2023-07-22 17:56:56.000000000 +0200
@@ -18,9 +18,7 @@
37.0.0.0/8 ripe
39.0.0.0/8 apnic
41.0.0.0/8 afrinic
-42.0.0.0/8 apnic
-43.224.0.0/11 apnic
-43.0.0.0/8 whois.nic.ad.jp
+42.0.0.0/7 apnic
46.0.0.0/8 ripe
49.0.0.0/8 apnic
51.0.0.0/8 ripe
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/ip_del_recovered.h new/whois-5.5.18/ip_del_recovered.h
--- old/whois-5.5.17/ip_del_recovered.h 2023-02-28 00:54:56.000000000 +0100
+++ new/whois-5.5.18/ip_del_recovered.h 2023-07-22 17:56:56.000000000 +0200
@@ -1,25 +1,7 @@
-/* 43.224.0.0 - 43.231.255.255 */
-{ 736100352UL, 4294443008UL, "whois.apnic.net" },
-/* 43.236.0.0 - 43.243.255.255 */
-{ 736886784UL, 4294705152UL, "whois.apnic.net" },
-{ 737148928UL, 4294705152UL, "whois.apnic.net" },
-/* 43.245.0.0 - 43.252.255.255 */
-{ 737476608UL, 4294901760UL, "whois.apnic.net" },
-{ 737542144UL, 4294836224UL, "whois.apnic.net" },
-{ 737673216UL, 4294705152UL, "whois.apnic.net" },
-{ 737935360UL, 4294901760UL, "whois.apnic.net" },
-/* 43.254.0.0 - 43.255.255.255 */
-{ 738066432UL, 4294836224UL, "whois.apnic.net" },
-/* 45.2.0.0 - 45.3.255.255 */
-{ 755105792UL, 4294836224UL, "whois.arin.net" },
/* 45.4.0.0 - 45.7.255.255 */
{ 755236864UL, 4294705152UL, "whois.lacnic.net" },
/* 45.8.0.0 - 45.15.255.255 */
{ 755499008UL, 4294443008UL, "whois.ripe.net" },
-/* 45.16.0.0 - 45.31.255.255 */
-{ 756023296UL, 4293918720UL, "whois.arin.net" },
-/* 45.32.0.0 - 45.63.255.255 */
-{ 757071872UL, 4292870144UL, "whois.arin.net" },
/* 45.64.0.0 - 45.65.15.255 */
{ 759234560UL, 4294963200UL, "whois.apnic.net" },
{ 759169024UL, 4294901760UL, "whois.apnic.net" },
@@ -34,8 +16,6 @@
{ 759300096UL, 4294836224UL, "whois.ripe.net" },
/* 45.68.0.0 - 45.71.255.255 */
{ 759431168UL, 4294705152UL, "whois.lacnic.net" },
-/* 45.72.0.0 - 45.79.255.255 */
-{ 759693312UL, 4294443008UL, "whois.arin.net" },
/* 45.80.0.0 - 45.95.255.255 */
{ 760217600UL, 4293918720UL, "whois.ripe.net" },
/* 45.96.0.0 - 45.111.255.255 */
@@ -52,22 +32,16 @@
{ 769130496UL, 4294705152UL, "whois.afrinic.net" },
{ 769392640UL, 4294836224UL, "whois.afrinic.net" },
{ 769523712UL, 4294901760UL, "whois.afrinic.net" },
-/* 45.223.0.0 - 45.223.255.255 */
-{ 769589248UL, 4294901760UL, "whois.arin.net" },
/* 45.224.0.0 - 45.239.255.255 */
{ 769654784UL, 4293918720UL, "whois.lacnic.net" },
/* 45.240.0.0 - 45.247.255.255 */
{ 770703360UL, 4294443008UL, "whois.afrinic.net" },
/* 45.248.0.0 - 45.255.255.255 */
{ 771227648UL, 4294443008UL, "whois.apnic.net" },
-/* 66.218.132.0 - 66.218.133.255 */
-{ 1121616896UL, 4294966784UL, "whois.arin.net" },
/* 66.251.128.0 - 66.251.191.255 */
{ 1123778560UL, 4294950912UL, "whois.afrinic.net" },
/* 72.44.16.0 - 72.44.31.255 */
{ 1210847232UL, 4294963200UL, "whois.lacnic.net" },
-/* 74.91.48.0 - 74.91.63.255 */
-{ 1247490048UL, 4294963200UL, "whois.arin.net" },
/* 128.201.0.0 - 128.201.255.255 */
{ 2160656384UL, 4294901760UL, "whois.lacnic.net" },
/* 131.196.0.0 - 131.196.255.255 */
@@ -78,12 +52,8 @@
{ 2332360704UL, 4294901760UL, "whois.apnic.net" },
/* 139.26.0.0 - 139.26.255.255 */
{ 2333736960UL, 4294901760UL, "whois.afrinic.net" },
-/* 139.28.0.0 - 139.28.255.255 */
-{ 2333868032UL, 4294901760UL, "whois.ripe.net" },
/* 144.48.0.0 - 144.48.255.255 */
{ 2419064832UL, 4294901760UL, "whois.apnic.net" },
-/* 144.168.0.0 - 144.168.255.255 */
-{ 2426929152UL, 4294901760UL, "whois.arin.net" },
/* 146.196.32.0 - 146.196.127.255 */
{ 2462326784UL, 4294959104UL, "whois.apnic.net" },
{ 2462334976UL, 4294950912UL, "whois.apnic.net" },
@@ -93,24 +63,12 @@
{ 2471362560UL, 4294901760UL, "whois.ripe.net" },
/* 149.248.0.0 - 149.248.255.255 */
{ 2516058112UL, 4294901760UL, "whois.arin.net" },
-/* 150.107.0.0 - 150.107.255.255 */
-{ 2523594752UL, 4294901760UL, "whois.apnic.net" },
-/* 150.129.0.0 - 150.129.255.255 */
-{ 2525036544UL, 4294901760UL, "whois.apnic.net" },
-/* 150.242.0.0 - 150.242.255.255 */
-{ 2532442112UL, 4294901760UL, "whois.apnic.net" },
/* 152.89.0.0 - 152.89.255.255 */
{ 2555969536UL, 4294901760UL, "whois.ripe.net" },
-/* 154.16.0.0 - 154.16.255.255 */
-{ 2584739840UL, 4294901760UL, "whois.afrinic.net" },
/* 157.119.0.0 - 157.119.255.255 */
{ 2641821696UL, 4294901760UL, "whois.apnic.net" },
-/* 160.19.0.0 - 160.19.15.255 */
-{ 2685599744UL, 4294963200UL, "whois.arin.net" },
/* 160.19.20.0 - 160.19.23.255 */
{ 2685604864UL, 4294966272UL, "whois.apnic.net" },
-/* 160.19.24.0 - 160.19.31.255 */
-{ 2685605888UL, 4294965248UL, "whois.arin.net" },
/* 160.19.36.0 - 160.19.39.255 */
{ 2685608960UL, 4294966272UL, "whois.afrinic.net" },
/* 160.19.44.0 - 160.19.47.255 */
@@ -125,15 +83,11 @@
{ 2685623296UL, 4294966272UL, "whois.ripe.net" },
/* 160.19.96.0 - 160.19.103.255 */
{ 2685624320UL, 4294965248UL, "whois.afrinic.net" },
-/* 160.19.104.0 - 160.19.107.255 */
-{ 2685626368UL, 4294966272UL, "whois.arin.net" },
/* 160.19.112.0 - 160.19.143.255 */
{ 2685628416UL, 4294963200UL, "whois.afrinic.net" },
{ 2685632512UL, 4294963200UL, "whois.afrinic.net" },
/* 160.19.152.0 - 160.19.155.255 */
{ 2685638656UL, 4294966272UL, "whois.afrinic.net" },
-/* 160.19.160.0 - 160.19.163.255 */
-{ 2685640704UL, 4294966272UL, "whois.arin.net" },
/* 160.19.168.0 - 160.19.175.255 */
{ 2685642752UL, 4294965248UL, "whois.lacnic.net" },
/* 160.19.180.0 - 160.19.183.255 */
@@ -181,8 +135,6 @@
/* 160.20.160.0 - 160.20.207.255 */
{ 2685706240UL, 4294959104UL, "whois.lacnic.net" },
{ 2685714432UL, 4294963200UL, "whois.lacnic.net" },
-/* 160.20.208.0 - 160.20.211.255 */
-{ 2685718528UL, 4294966272UL, "whois.arin.net" },
/* 160.20.213.0 - 160.20.213.255 */
{ 2685719808UL, 4294967040UL, "whois.afrinic.net" },
/* 160.20.214.0 - 160.20.215.255 */
@@ -201,18 +153,12 @@
{ 2685723136UL, 4294966784UL, "whois.afrinic.net" },
/* 160.20.229.0 - 160.20.229.255 */
{ 2685723904UL, 4294967040UL, "whois.ripe.net" },
-/* 160.20.230.0 - 160.20.231.255 */
-{ 2685724160UL, 4294966784UL, "whois.arin.net" },
-/* 160.20.232.0 - 160.20.239.255 */
-{ 2685724672UL, 4294965248UL, "whois.arin.net" },
/* 160.20.242.0 - 160.20.243.255 */
{ 2685727232UL, 4294966784UL, "whois.lacnic.net" },
/* 160.20.246.0 - 160.20.247.255 */
{ 2685728256UL, 4294966784UL, "whois.lacnic.net" },
/* 160.20.248.0 - 160.20.249.255 */
{ 2685728768UL, 4294966784UL, "whois.ripe.net" },
-/* 160.20.251.0 - 160.20.251.255 */
-{ 2685729536UL, 4294967040UL, "whois.arin.net" },
/* 160.20.252.0 - 160.20.255.255 */
{ 2685729792UL, 4294966272UL, "whois.afrinic.net" },
/* 160.202.8.0 - 160.202.15.255 */
@@ -221,8 +167,6 @@
{ 2697596928UL, 4294963200UL, "whois.ripe.net" },
/* 160.202.32.0 - 160.202.63.255 */
{ 2697601024UL, 4294959104UL, "whois.apnic.net" },
-/* 160.202.64.0 - 160.202.127.255 */
-{ 2697609216UL, 4294950912UL, "whois.arin.net" },
/* 160.202.128.0 - 160.202.255.255 */
{ 2697625600UL, 4294934528UL, "whois.apnic.net" },
/* 160.238.0.0 - 160.238.0.255 */
@@ -234,24 +178,15 @@
{ 2699956224UL, 4294966272UL, "whois.apnic.net" },
/* 160.238.21.0 - 160.238.21.255 */
{ 2699957504UL, 4294967040UL, "whois.ripe.net" },
-/* 160.238.22.0 - 160.238.23.255 */
-{ 2699957760UL, 4294966784UL, "whois.arin.net" },
/* 160.238.24.0 - 160.238.29.255 */
{ 2699958272UL, 4294966272UL, "whois.lacnic.net" },
{ 2699959296UL, 4294966784UL, "whois.lacnic.net" },
-/* 160.238.31.0 - 160.238.31.255 */
-{ 2699960064UL, 4294967040UL, "whois.arin.net" },
/* 160.238.33.0 - 160.238.33.255 */
{ 2699960576UL, 4294967040UL, "whois.apnic.net" },
/* 160.238.34.0 - 160.238.35.255 */
{ 2699960832UL, 4294966784UL, "whois.apnic.net" },
/* 160.238.36.0 - 160.238.39.255 */
{ 2699961344UL, 4294966272UL, "whois.ripe.net" },
-/* 160.238.41.0 - 160.238.41.255 */
-{ 2699962624UL, 4294967040UL, "whois.arin.net" },
-/* 160.238.42.0 - 160.238.47.255 */
-{ 2699962880UL, 4294966784UL, "whois.arin.net" },
-{ 2699963392UL, 4294966272UL, "whois.arin.net" },
/* 160.238.48.0 - 160.238.49.255 */
{ 2699964416UL, 4294966784UL, "whois.afrinic.net" },
/* 160.238.50.0 - 160.238.50.255 */
@@ -272,8 +207,6 @@
{ 2699976704UL, 4294966272UL, "whois.ripe.net" },
/* 160.238.101.0 - 160.238.101.255 */
{ 2699977984UL, 4294967040UL, "whois.afrinic.net" },
-/* 160.238.102.0 - 160.238.103.255 */
-{ 2699978240UL, 4294966784UL, "whois.arin.net" },
/* 160.238.104.0 - 160.238.111.255 */
{ 2699978752UL, 4294965248UL, "whois.lacnic.net" },
/* 160.238.112.0 - 160.238.127.255 */
@@ -288,31 +221,8 @@
{ 2718746624UL, 4294965248UL, "whois.ripe.net" },
/* 162.12.208.0 - 162.12.215.255 */
{ 2718748672UL, 4294965248UL, "whois.apnic.net" },
-/* 162.12.216.0 - 162.12.219.255 */
-{ 2718750720UL, 4294966272UL, "whois.arin.net" },
-/* 162.12.224.0 - 162.12.235.255 */
-{ 2718752768UL, 4294965248UL, "whois.arin.net" },
-{ 2718754816UL, 4294966272UL, "whois.arin.net" },
/* 162.12.240.0 - 162.12.247.255 */
{ 2718756864UL, 4294965248UL, "whois.apnic.net" },
-/* 163.47.4.0 - 163.47.18.255 */
-{ 2737767424UL, 4294966272UL, "whois.apnic.net" },
-{ 2737768448UL, 4294965248UL, "whois.apnic.net" },
-{ 2737770496UL, 4294966784UL, "whois.apnic.net" },
-{ 2737771008UL, 4294967040UL, "whois.apnic.net" },
-/* 163.47.20.0 - 163.47.21.255 */
-{ 2737771520UL, 4294966784UL, "whois.apnic.net" },
-/* 163.47.32.0 - 163.47.45.255 */
-{ 2737774592UL, 4294965248UL, "whois.apnic.net" },
-{ 2737776640UL, 4294966272UL, "whois.apnic.net" },
-{ 2737777664UL, 4294966784UL, "whois.apnic.net" },
-/* 163.47.47.0 - 163.47.255.255 */
-{ 2737778432UL, 4294967040UL, "whois.apnic.net" },
-{ 2737778688UL, 4294963200UL, "whois.apnic.net" },
-{ 2737782784UL, 4294950912UL, "whois.apnic.net" },
-{ 2737799168UL, 4294934528UL, "whois.apnic.net" },
-/* 163.53.0.0 - 163.53.255.255 */
-{ 2738159616UL, 4294901760UL, "whois.apnic.net" },
/* 164.160.0.0 - 164.160.255.255 */
{ 2761949184UL, 4294901760UL, "whois.afrinic.net" },
/* 164.163.0.0 - 164.163.255.255 */
@@ -365,14 +275,8 @@
{ 3227254272UL, 4294967040UL, "whois.lacnic.net" },
/* 192.92.154.0 - 192.92.154.255 */
{ 3227294208UL, 4294967040UL, "whois.lacnic.net" },
-/* 192.94.77.0 - 192.94.77.255 */
-{ 3227405568UL, 4294967040UL, "whois.arin.net" },
/* 192.94.78.0 - 192.94.78.255 */
{ 3227405824UL, 4294967040UL, "whois.ripe.net" },
-/* 192.107.1.0 - 192.107.1.255 */
-{ 3228238080UL, 4294967040UL, "whois.arin.net" },
-/* 192.133.103.0 - 192.133.103.255 */
-{ 3229968128UL, 4294967040UL, "whois.arin.net" },
/* 192.135.90.0 - 192.135.91.255 */
{ 3230095872UL, 4294966784UL, "whois.apnic.net" },
/* 192.135.95.0 - 192.135.95.255 */
@@ -387,8 +291,6 @@
{ 3230400768UL, 4294967040UL, "whois.lacnic.net" },
/* 192.140.2.0 - 192.140.3.255 */
{ 3230401024UL, 4294966784UL, "whois.ripe.net" },
-/* 192.140.4.0 - 192.140.7.255 */
-{ 3230401536UL, 4294966272UL, "whois.arin.net" },
/* 192.140.8.0 - 192.140.15.255 */
{ 3230402560UL, 4294965248UL, "whois.lacnic.net" },
/* 192.140.16.0 - 192.140.127.255 */
@@ -415,8 +317,6 @@
{ 3230683136UL, 4294963200UL, "whois.apnic.net" },
/* 192.144.96.0 - 192.144.127.255 */
{ 3230687232UL, 4294959104UL, "whois.lacnic.net" },
-/* 192.144.128.0 - 192.144.255.255 */
-{ 3230695424UL, 4294934528UL, "whois.arin.net" },
/* 192.145.0.0 - 192.145.127.255 */
{ 3230728192UL, 4294934528UL, "whois.ripe.net" },
/* 192.145.128.0 - 192.145.191.255 */
@@ -429,34 +329,22 @@
{ 3230786560UL, 4294966784UL, "whois.apnic.net" },
/* 192.145.230.0 - 192.145.230.255 */
{ 3230787072UL, 4294967040UL, "whois.afrinic.net" },
-/* 192.147.11.0 - 192.147.11.255 */
-{ 3230862080UL, 4294967040UL, "whois.arin.net" },
/* 192.153.12.0 - 192.153.12.255 */
{ 3231255552UL, 4294967040UL, "whois.lacnic.net" },
/* 192.156.144.0 - 192.156.144.255 */
{ 3231485952UL, 4294967040UL, "whois.apnic.net" },
-/* 192.156.202.0 - 192.156.202.255 */
-{ 3231500800UL, 4294967040UL, "whois.arin.net" },
/* 192.156.220.0 - 192.156.220.255 */
{ 3231505408UL, 4294967040UL, "whois.apnic.net" },
/* 192.172.232.0 - 192.172.232.255 */
{ 3232557056UL, 4294967040UL, "whois.ripe.net" },
-/* 192.172.244.0 - 192.172.244.255 */
-{ 3232560128UL, 4294967040UL, "whois.arin.net" },
-/* 192.188.81.0 - 192.188.81.255 */
-{ 3233566976UL, 4294967040UL, "whois.arin.net" },
/* 192.188.82.0 - 192.188.83.255 */
{ 3233567232UL, 4294966784UL, "whois.apnic.net" },
/* 192.188.248.0 - 192.188.248.255 */
{ 3233609728UL, 4294967040UL, "whois.ripe.net" },
/* 192.197.113.0 - 192.197.113.255 */
{ 3234164992UL, 4294967040UL, "whois.apnic.net" },
-/* 192.231.238.0 - 192.231.238.255 */
-{ 3236425216UL, 4294967040UL, "whois.arin.net" },
/* 192.251.230.0 - 192.251.230.255 */
{ 3237733888UL, 4294967040UL, "whois.ripe.net" },
-/* 198.17.79.0 - 198.17.79.255 */
-{ 3323023104UL, 4294967040UL, "whois.arin.net" },
/* 198.97.38.0 - 198.97.38.255 */
{ 3328255488UL, 4294967040UL, "whois.lacnic.net" },
/* 199.21.172.0 - 199.21.175.255 */
@@ -475,14 +363,8 @@
{ 3437308416UL, 4294966784UL, "whois.lacnic.net" },
/* 205.211.83.0 - 205.211.83.255 */
{ 3453178624UL, 4294967040UL, "whois.ripe.net" },
-/* 207.115.112.0 - 207.115.127.255 */
-{ 3480449024UL, 4294963200UL, "whois.arin.net" },
-/* 208.73.240.0 - 208.73.243.255 */
-{ 3494506496UL, 4294966272UL, "whois.arin.net" },
/* 208.85.156.0 - 208.85.159.255 */
{ 3495271424UL, 4294966272UL, "whois.afrinic.net" },
-/* 209.107.128.0 - 209.107.191.255 */
-{ 3513483264UL, 4294950912UL, "whois.arin.net" },
/* 216.98.208.0 - 216.98.223.255 */
{ 3630354432UL, 4294963200UL, "whois.lacnic.net" },
/* 216.250.96.0 - 216.250.111.255 */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_as32_del.pl new/whois-5.5.18/make_as32_del.pl
--- old/whois-5.5.17/make_as32_del.pl 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/make_as32_del.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_as_del.pl new/whois-5.5.18/make_as_del.pl
--- old/whois-5.5.17/make_as_del.pl 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/make_as_del.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_ip_del.pl new/whois-5.5.18/make_ip_del.pl
--- old/whois-5.5.17/make_ip_del.pl 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/make_ip_del.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_ip_del_recovered.pl new/whois-5.5.18/make_ip_del_recovered.pl
--- old/whois-5.5.17/make_ip_del_recovered.pl 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/make_ip_del_recovered.pl 2023-07-22 17:56:56.000000000 +0200
@@ -6,10 +6,12 @@
use autodie;
use Text::CSV;
+use Net::Patricia;
use Net::CIDR;
use Net::IP;
my $csv = Text::CSV->new;
+my $pt = parse_ip_del('ip_del_list');
open(my $in, '<', 'ipv4-recovered-address-space-2.csv');
open(my $out, '>', 'ip_del_recovered.h');
@@ -17,18 +19,51 @@
while (my $row = $csv->getline($in)) {
next if $row->[0] eq 'Start address';
next if $row->[5] ne 'ALLOCATED';
+ my ($first_ip, $last_ip, undef, undef, $server) = @$row;
- print $out '/* ' . $row->[0] . ' - ' . $row->[1] . " */\n";
my @networks =
+ grep {
+ my $server_recovered = $pt->match_string($_->ip);
+ $server_recovered and $server_recovered ne $server;
+ }
map { Net::IP->new($_) }
- Net::CIDR::range2cidr($row->[0] . '-' . $row->[1]);
+ Net::CIDR::range2cidr($first_ip . '-' . $last_ip);
+ next if not @networks;
+
+ print $out "/* $first_ip - $last_ip */\n";
print $out sprintf(qq|{ %sUL, %sUL, "%s" },\n|,
$_->intip,
((~(0xffffffff >> $_->prefixlen)) & 0xffffffff),
- $row->[4]
+ $server
) foreach @networks;
}
close($in);
close($out);
+exit;
+
+sub parse_ip_del {
+ my ($file) = @_;
+
+ my $pt = new Net::Patricia;
+
+ open(my $in, '<', $file);
+ while (<$in>) {
+ # this code is copied from make_ip_del.pl
+ chomp;
+ s/#.*$//;
+ s/^\s+//; s/\s+$//;
+ next if /^$/;
+
+ die "format error: $_" if not /^([\d\.]+)\/(\d+)\s+([\w\.]+)$/;
+ my $network = "$1/$2";
+ my $server = $3;
+
+ $server = "whois.$server.net" if $server !~ /\./;
+
+ $pt->add_string($network, $server) or die;
+ }
+
+ return $pt;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_new_gtlds.pl new/whois-5.5.18/make_new_gtlds.pl
--- old/whois-5.5.17/make_new_gtlds.pl 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/make_new_gtlds.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_nic_handles.pl new/whois-5.5.18/make_nic_handles.pl
--- old/whois-5.5.17/make_nic_handles.pl 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/make_nic_handles.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_servers_charset.pl new/whois-5.5.18/make_servers_charset.pl
--- old/whois-5.5.17/make_servers_charset.pl 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/make_servers_charset.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_tld_serv.pl new/whois-5.5.18/make_tld_serv.pl
--- old/whois-5.5.17/make_tld_serv.pl 2022-12-28 20:48:01.000000000 +0100
+++ new/whois-5.5.18/make_tld_serv.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/make_version_h.pl new/whois-5.5.18/make_version_h.pl
--- old/whois-5.5.17/make_version_h.pl 2022-01-03 18:29:48.000000000 +0100
+++ new/whois-5.5.18/make_version_h.pl 2023-07-22 17:56:56.000000000 +0200
@@ -1,4 +1,5 @@
#!/usr/bin/perl
+# SPDX-License-Identifier: GPL-2.0-or-later
use warnings;
use strict;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/mkpasswd.1 new/whois-5.5.18/mkpasswd.1
--- old/whois-5.5.17/mkpasswd.1 2022-01-03 18:29:48.000000000 +0100
+++ new/whois-5.5.18/mkpasswd.1 2023-07-22 17:56:56.000000000 +0200
@@ -90,4 +90,5 @@
and this man page were written by Marco d'Itri
.RI < md(a)linux.it >
and are licensed under the terms of the GNU General Public License,
-version 2 or higher.
+version 2 or later.
+\" SPDX-License-Identifier: GPL-2.0-or-later
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/mkpasswd.c new/whois-5.5.18/mkpasswd.c
--- old/whois-5.5.17/mkpasswd.c 2022-12-28 20:48:01.000000000 +0100
+++ new/whois-5.5.18/mkpasswd.c 2023-07-22 17:56:56.000000000 +0200
@@ -14,6 +14,8 @@
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
*/
/* for crypt, snprintf and strcasecmp */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/new_gtlds_list new/whois-5.5.18/new_gtlds_list
--- old/whois-5.5.17/new_gtlds_list 2023-03-19 01:34:41.000000000 +0100
+++ new/whois-5.5.18/new_gtlds_list 2023-07-22 17:56:56.000000000 +0200
@@ -6,7 +6,6 @@
aaa
aarp
-abarth
abb
abbott
abbvie
@@ -33,7 +32,6 @@
airforce
airtel
akdn
-alfaromeo
alibaba
alipay
allfinanz
@@ -229,7 +227,6 @@
contact
contractors
cooking
-cookingchannel
cool
corsica
country
@@ -338,7 +335,6 @@
feedback
ferrari
ferrero
-fiat
fidelity
fido
film
@@ -360,7 +356,6 @@
fly
foo
food
-foodnetwork
football
ford
forex
@@ -445,7 +440,6 @@
helsinki
here
hermes
-hgtv
hiphop
hisamitsu
hitachi
@@ -464,7 +458,6 @@
host
hosting
hot
-hoteles
hotels
hotmail
house
@@ -545,7 +538,6 @@
lamborghini
lamer
lancaster
-lancia
land
landrover
lanxess
@@ -608,7 +600,6 @@
markets
marriott
marshalls
-maserati
mattel
mba
mckinsey
@@ -714,7 +705,6 @@
partners
parts
party
-passagens
pay
pccw
pet
@@ -959,7 +949,6 @@
trade
trading
training
-travelchannel
travelers
travelersinsurance
trust
@@ -1004,7 +993,6 @@
voting
voto
voyage
-vuelos
wales
walmart
walter
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/nic_handles_list new/whois-5.5.18/nic_handles_list
--- old/whois-5.5.17/nic_handles_list 2023-05-03 14:24:37.000000000 +0200
+++ new/whois-5.5.18/nic_handles_list 2023-07-22 17:56:56.000000000 +0200
@@ -21,3 +21,5 @@
-sixxs whois.sixxs.net
-uanic whois.ua
-bzh whois.nic.bzh
+-ru whois.tcinet.ru
+-su whois.tcinet.ru
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/tld_serv_list new/whois-5.5.18/tld_serv_list
--- old/whois-5.5.17/tld_serv_list 2023-05-03 14:24:37.000000000 +0200
+++ new/whois-5.5.18/tld_serv_list 2023-07-22 17:56:56.000000000 +0200
@@ -152,7 +152,7 @@
.fm whois.nic.fm
.fo whois.nic.fo
.fr whois.nic.fr
-.ga WEB http://www.my.ga/en/whois.html
+.ga whois.nic.ga
.gb NONE
.gd whois.nic.gd
.ge whois.nic.ge
@@ -357,13 +357,14 @@
.ye NONE # NIC? http://www.y.net.ye/services/domain_name.htm
.yt whois.nic.yt
.ac.za whois.ac.za
-.alt.za whois.alt.za
+.alt.za WEB https://whois.alt.za/
.co.za whois.registry.net.za
+.edu.za WEB https://whois.edu.za/
.gov.za whois.gov.za
.net.za net-whois.registry.net.za
.org.za org-whois.registry.net.za
.web.za web-whois.registry.net.za
-.za NONE # http://www.zadna.org.za/content/page/domain-information
+.za NONE # https://www.nic.za/za-domains/
.zm whois.zicta.zm
.zw NONE # http://www.zispa.co.zw/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/utils.h new/whois-5.5.18/utils.h
--- old/whois-5.5.17/utils.h 2017-07-27 17:44:55.000000000 +0200
+++ new/whois-5.5.18/utils.h 2023-07-22 17:56:56.000000000 +0200
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
#ifndef WHOIS_UTILS_H
#define WHOIS_UTILS_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/whois.1 new/whois-5.5.18/whois.1
--- old/whois-5.5.17/whois.1 2022-01-03 18:29:48.000000000 +0100
+++ new/whois-5.5.18/whois.1 2023-07-22 17:56:56.000000000 +0200
@@ -23,7 +23,7 @@
.BR \-T \~
.IR TYPE [, TYPE ]...\~]
.RB [\~ \-\-verbose \~]
-.RB [\~ \-\-no-recursion \~]
+.RB [\~ \-\-no\-recursion \~]
.I OBJECT
.B whois
@@ -42,7 +42,6 @@
.B whois \-\-version
-.PP
.SH DESCRIPTION
.B whois
searches for an object in a
@@ -55,11 +54,10 @@
for NIC handles or
.I whois.arin.net
for IPv4 addresses and network names.
-.PP
.SH OPTIONS
.TP 8
.B \-h \c
-.IR HOST ", "\c
+.IR HOST ,
.BI \-\-host= HOST
Connect to
.IR HOST .
@@ -68,7 +66,7 @@
Do not display the legal disclaimers that some registries like to show you.
.TP 8
.B \-p \c
-.IR PORT ", "\c
+.IR PORT ,
.BI \-\-port= PORT
Connect to
.IR PORT .
@@ -82,7 +80,7 @@
.BR BEWARE :
this implies that the IANA server will receive your complete query.
.TP 8
-.B \-\-no-recursion
+.B \-\-no\-recursion
Disable recursion from registry to registrar servers.
.TP 8
.B \-\-verbose
@@ -106,7 +104,8 @@
Return brief IP address ranges with abuse contact.
.TP 8
.B \-B
-Disable objects filtering. (Show the e-mail addresses.)
+Disable objects filtering.
+(Show the e-mail addresses.)
.TP 8
.B \-c
Return the smallest IP address range with a reference to an irt object.
@@ -128,7 +127,7 @@
Disable grouping of associated objects.
.TP 8
.B \-i \c
-.I ATTR[,ATTR]...
+.IR ATTR [, ATTR ]...
Inverse-search objects having associated attributes.
.I ATTR
is the attribute name, while the positional
@@ -180,12 +179,12 @@
in the server.
.TP 8
.B \-s \c
-.I SOURCE[,SOURCE]...
+.IR SOURCE [, SOURCE ]...
Request the server to search for objects mirrored from
.IR SOURCE .
Sources are delimited by comma, and the order is significant.
Use the
-.I -q sources
+.I \-q sources
parameter to obtain a list of valid sources.
.TP 8
.B \-t \c
@@ -194,7 +193,7 @@
.IR TYPE .
.TP 8
.B \-T \c
-.I TYPE[,TYPE]...
+.IR TYPE [, TYPE ]...
Restrict the search to objects of
.IR TYPE .
Multiple types are separated by a comma.
@@ -207,7 +206,7 @@
.B \-x
Search for only exact match on network address prefix.
.SH NOTES
-When querying the Verisign gTLDs (e.g. .com, .net...) thin registry servers
+When querying the Verisign gTLDs (e.g.\& \&.com, \&.net...\&) thin registry servers
for a domain, the program will automatically prepend the
.I domain
keyword to only show domain records. The
@@ -231,7 +230,7 @@
.I whois.denic.de
for domain names and no other
flags have been specified, the program will automatically add the flag
-.IR "-T dn" .
+.IR "\-T dn" .
.P
When querying
.I whois.dk\-hostmaster.dk
@@ -304,5 +303,5 @@
and this man page were written by Marco d'Itri
.RI < md(a)linux.it >
and are licensed under the terms of the GNU General Public License,
-version 2 or higher.
-
+version 2 or later.
+\" SPDX-License-Identifier: GPL-2.0-or-later
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/whois.c new/whois-5.5.18/whois.c
--- old/whois-5.5.17/whois.c 2022-12-28 20:48:01.000000000 +0100
+++ new/whois-5.5.18/whois.c 2023-07-22 17:56:56.000000000 +0200
@@ -5,6 +5,8 @@
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
*/
/* for AI_IDN */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/whois.conf.5 new/whois-5.5.18/whois.conf.5
--- old/whois-5.5.17/whois.conf.5 2019-12-31 12:14:30.000000000 +0100
+++ new/whois-5.5.18/whois.conf.5 2023-07-22 17:56:56.000000000 +0200
@@ -47,3 +47,4 @@
.RI < ppisar(a)redhat.com >
and is licensed under the terms of the GNU General Public License,
version 2 or higher.
+\" SPDX-License-Identifier: GPL-2.0-or-later
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/whois-5.5.17/whois.h new/whois-5.5.18/whois.h
--- old/whois-5.5.17/whois.h 2019-07-19 11:35:26.000000000 +0200
+++ new/whois-5.5.18/whois.h 2023-07-22 17:56:56.000000000 +0200
@@ -1,3 +1,4 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
#include "utils.h"
/* 6bone referto: extension */
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-networkx for openSUSE:Factory checked in at 2023-07-30 20:57:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-networkx (Old)
and /work/SRC/openSUSE:Factory/.python-networkx.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-networkx"
Sun Jul 30 20:57:35 2023 rev:36 rq:1101302 version:3.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-networkx/python-networkx.changes 2023-06-16 16:51:45.372604650 +0200
+++ /work/SRC/openSUSE:Factory/.python-networkx.new.32662/python-networkx.changes 2023-07-30 20:57:39.111176908 +0200
@@ -1,0 +2,26 @@
+Thu Jul 27 11:55:11 UTC 2023 - Markéta Machová <mmachova(a)suse.com>
+
+- update to 3.1
+ * Better syncing between G._succ and G._adj for directed G. And
+ slightly better speed from all the core adjacency data structures.
+ * If your code sets G._succ or G._adj to new dictionary-like objects,
+ you no longer have to set them both. Setting either will ensure
+ the other is set as well.
+ * If you use the presence of the attribute _adj as a criteria for
+ the object being a Graph instance, that code may need updating.
+ * We have added an experimental plugin feature, which let users
+ choose alternate backends like GraphBLAS, CuGraph for computation.
+ * Improved integration with the general Scientific Python ecosystem.
+ * New drawing feature (module and tests) from NetworkX graphs to
+ the TikZ library of TeX/LaTeX.
+ * Added an improved subgraph isomorphism algorithm called VF2++.
+ * OrderedGraph and other Ordered classes are replaced by Graph
+ because Python dicts (and thus networkx graphs) now maintain order.
+ * The attrs keyword argument will be replaced with keyword only
+ arguments source, target, name, key and link for
+ json_graph/node_link functions.
+ * Supports Python 3.8, 3.9, 3.10, and 3.11.
+ * Stopped building PDF version of docs
+ * Use Ruff for linting
+
+-------------------------------------------------------------------
Old:
----
networkx-2.8.8.tar.gz
New:
----
networkx-3.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-networkx.spec ++++++
--- /var/tmp/diff_new_pack.Q5yHfv/_old 2023-07-30 20:57:39.743180660 +0200
+++ /var/tmp/diff_new_pack.Q5yHfv/_new 2023-07-30 20:57:39.747180684 +0200
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-networkx
-Version: 2.8.8
+Version: 3.1
Release: 0
Summary: Python package for the study of complex networks
License: BSD-3-Clause
++++++ networkx-2.8.8.tar.gz -> networkx-3.1.tar.gz ++++++
++++ 36374 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package mozilla-nss for openSUSE:Factory checked in at 2023-07-30 20:57:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mozilla-nss (Old)
and /work/SRC/openSUSE:Factory/.mozilla-nss.new.32662 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mozilla-nss"
Sun Jul 30 20:57:31 2023 rev:205 rq:1101298 version:3.90
Changes:
--------
--- /work/SRC/openSUSE:Factory/mozilla-nss/mozilla-nss.changes 2023-07-06 18:28:06.322936703 +0200
+++ /work/SRC/openSUSE:Factory/.mozilla-nss.new.32662/mozilla-nss.changes 2023-07-30 20:57:36.555161732 +0200
@@ -1,0 +2,5 @@
+Fri Jul 28 16:29:26 UTC 2023 - Dirk Stoecker <opensuse(a)dstoecker.de>
+
+- Fix file conflict for pp manual page [bsc#1213281]
+
+-------------------------------------------------------------------
@@ -3727 +3731,0 @@
-
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mozilla-nss.spec ++++++
--- /var/tmp/diff_new_pack.toZrJv/_old 2023-07-30 20:57:37.823169260 +0200
+++ /var/tmp/diff_new_pack.toZrJv/_new 2023-07-30 20:57:37.827169284 +0200
@@ -359,6 +359,9 @@
# copy man-pages
mkdir -p %{buildroot}%{_mandir}/man1/
cp -L %{_builddir}/nss-%{version}/nss/doc/nroff/* %{buildroot}%{_mandir}/man1/
+# Fix conflict with perl-PAR-Packer which has a pp-exe in _bindir
+mkdir -p %{buildroot}%{_mandir}/man7/
+mv %{buildroot}%{_mandir}/man1/pp.1 %{buildroot}%{_mandir}/man7/pp.7
# copy unsupported tools
cp -L bin/atob \
bin/btoa \
@@ -459,7 +462,6 @@
%{_libdir}/libnssutil3.so
%{_libdir}/libsmime3.so
%{_libdir}/libssl3.so
-#%%{_libdir}/libnsssqlite3.so
%files devel
%defattr(644, root, root, 755)
1
0