Update to 0.14.0

This commit is contained in:
Miro Hrončok 2023-09-07 10:55:46 +02:00
parent 8e8af67e26
commit 84a90bad3b
5 changed files with 7 additions and 202 deletions

View File

@ -1,24 +0,0 @@
From 1ba8363928d4f0a25bcdc8635a59a110d49702e5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
Date: Mon, 3 Jul 2023 22:11:21 +0200
Subject: [PATCH] assertEquals was removed from unittest in Python 3.12
---
pythran/tests/test_spec_parser.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pythran/tests/test_spec_parser.py b/pythran/tests/test_spec_parser.py
index a93fc38f2..b06f7b645 100644
--- a/pythran/tests/test_spec_parser.py
+++ b/pythran/tests/test_spec_parser.py
@@ -135,8 +135,8 @@ def zoo(i): return
# pythran export zoo(str)
def bar(i): return
'''
- self.assertEquals(len(pythran.spec_parser(code).functions), 1)
- self.assertEquals(len(pythran.spec_parser(code).functions['zoo']), 2)
+ self.assertEqual(len(pythran.spec_parser(code).functions), 1)
+ self.assertEqual(len(pythran.spec_parser(code).functions['zoo']), 2)
def test_var_export0(self):
code = '''

View File

@ -1,122 +0,0 @@
From b1ec56fb63ff113cdc1e4bc1474af4b7cb9a8dbf Mon Sep 17 00:00:00 2001
From: serge-sans-paille <serge.guelton@telecom-bretagne.eu>
Date: Thu, 6 Jul 2023 22:06:20 +0200
Subject: [PATCH] Introduce pythran/pythonic/include/types/longdouble.hpp et
cie
New numpy version alias np.float128 to np.longdouble, so we need these
headers too. Same for np.complex256 and np.clongdouble.
SLightly adjust notebook tests for portability to that respect.
---
pythran/pythonic/include/types/clongdouble.hpp | 6 ++++++
pythran/pythonic/include/types/longdouble.hpp | 4 ++++
pythran/pythonic/types/clongdouble.hpp | 7 +++++++
pythran/pythonic/types/float128.hpp | 2 +-
pythran/pythonic/types/longdouble.hpp | 6 ++++++
pythran/tests/notebooks/export.ipynb | 14 +++++++-------
6 files changed, 31 insertions(+), 8 deletions(-)
create mode 100644 pythran/pythonic/include/types/clongdouble.hpp
create mode 100644 pythran/pythonic/include/types/longdouble.hpp
create mode 100644 pythran/pythonic/types/clongdouble.hpp
create mode 100644 pythran/pythonic/types/longdouble.hpp
diff --git a/pythran/pythonic/include/types/clongdouble.hpp b/pythran/pythonic/include/types/clongdouble.hpp
new file mode 100644
index 0000000000..dd666a52f5
--- /dev/null
+++ b/pythran/pythonic/include/types/clongdouble.hpp
@@ -0,0 +1,6 @@
+#ifndef PYTHONIC_INCLUDE_TYPES_CLONGDOUBLE_HPP
+#define PYTHONIC_INCLUDE_TYPES_CLONGDOUBLE_HPP
+
+#include "pythonic/include/types/complex.hpp"
+
+#endif
diff --git a/pythran/pythonic/include/types/longdouble.hpp b/pythran/pythonic/include/types/longdouble.hpp
new file mode 100644
index 0000000000..1ee2fca96c
--- /dev/null
+++ b/pythran/pythonic/include/types/longdouble.hpp
@@ -0,0 +1,4 @@
+#ifndef PYTHONIC_INCLUDE_TYPES_LONGDOUBLE_HPP
+#define PYTHONIC_INCLUDE_TYPES_LONGDOUBLE_HPP
+
+#endif
diff --git a/pythran/pythonic/types/clongdouble.hpp b/pythran/pythonic/types/clongdouble.hpp
new file mode 100644
index 0000000000..057a2b9cb6
--- /dev/null
+++ b/pythran/pythonic/types/clongdouble.hpp
@@ -0,0 +1,7 @@
+#ifndef PYTHONIC_TYPES_CLONGDOUBLE_HPP
+#define PYTHONIC_TYPES_CLONGDOUBLE_HPP
+
+#include "pythonic/include/types/clongdouble.hpp"
+#include "pythonic/types/complex.hpp"
+
+#endif
diff --git a/pythran/pythonic/types/float128.hpp b/pythran/pythonic/types/float128.hpp
index bf67552447..0943827ff3 100644
--- a/pythran/pythonic/types/float128.hpp
+++ b/pythran/pythonic/types/float128.hpp
@@ -1,6 +1,6 @@
#ifndef PYTHONIC_TYPES_FLOAT128_HPP
#define PYTHONIC_TYPES_FLOAT128_HPP
-#include "pythonic/include/types/float64.hpp"
+#include "pythonic/include/types/float128.hpp"
#endif
diff --git a/pythran/pythonic/types/longdouble.hpp b/pythran/pythonic/types/longdouble.hpp
new file mode 100644
index 0000000000..b3944cea6a
--- /dev/null
+++ b/pythran/pythonic/types/longdouble.hpp
@@ -0,0 +1,6 @@
+#ifndef PYTHONIC_TYPES_LONGDOUBLE_HPP
+#define PYTHONIC_TYPES_LONGDOUBLE_HPP
+
+#include "pythonic/include/types/longdouble.hpp"
+
+#endif
diff --git a/pythran/tests/notebooks/export.ipynb b/pythran/tests/notebooks/export.ipynb
index aa2baadc06..3f390dc0f1 100644
--- a/pythran/tests/notebooks/export.ipynb
+++ b/pythran/tests/notebooks/export.ipynb
@@ -418,20 +418,20 @@
"name": "stdout",
"output_type": "stream",
"text": [
- "(1.5, -1.5) <class 'numpy.float32'>\n",
- "(1.5, -1.5) <class 'float'>\n",
- "(1.5, -1.5) <class 'numpy.float128'>\n"
+ "(1.5, -1.5)\n",
+ "(1.5, -1.5)\n",
+ "(1.5, -1.5)\n"
]
}
],
"source": [
"import numpy as np\n",
"x64 = dtype(np.complex64(1.5 + -1.5j))\n",
- "print(x64, type(x64[0]))\n",
+ "print(x64)\n",
"x128 = dtype(np.complex128(1.5 + -1.5j))\n",
- "print(x128, type(x128[0]))\n",
+ "print(x128)\n",
"x256 = dtype(np.complex256(1.5 + -1.5j))\n",
- "print(x256, type(x256[0]))"
+ "print(x256)"
]
},
{
@@ -969,7 +969,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.10.9"
+ "version": "3.10.11"
}
},
"nbformat": 4,

View File

@ -1,42 +0,0 @@
From cb3c78cfe89990d4b15ea8e2cbf4aa00ba528d3a Mon Sep 17 00:00:00 2001
From: serge-sans-paille <serge.guelton@telecom-bretagne.eu>
Date: Sun, 9 Jul 2023 17:56:35 +0200
Subject: [PATCH] Use pythran logger instead of default logger to report
absence of spec
Should fix #2121
---
docs/CLI.rst | 2 +-
pythran/spec.py | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/docs/CLI.rst b/docs/CLI.rst
index d30d73c9d..fda4d061a 100644
--- a/docs/CLI.rst
+++ b/docs/CLI.rst
@@ -65,7 +65,7 @@ That's some heavily templated code ;-) Pythran can then compile it for you to a
Pythran can also generate raw C++ code, using the ``-e`` switch::
$> printf 'msg = \"hello world\"\ndef bar(): print(msg)' > cli_bar.py
- $> pythran -e cli_bar.py -o cli_bar.hpp
+ $> pythran -e cli_bar.py -w -o cli_bar.hpp
$> printf '#include \"cli_bar.hpp\"\nusing namespace __pythran_cli_bar ; int main() { bar()(); return 0 ; }' > cli_bar.cpp
$> `pythran-config --compiler --cflags` -std=c++11 cli_bar.cpp -o cli_bar
$> ./cli_bar
diff --git a/pythran/spec.py b/pythran/spec.py
index 64ab66aeb..41081a978 100644
--- a/pythran/spec.py
+++ b/pythran/spec.py
@@ -90,9 +90,9 @@ def __init__(self, functions, capsules=None):
self.functions[fname] = (signatures,)
if not self:
- import logging
- logging.warning("No pythran specification, "
- "nothing will be exported")
+ from pythran.log import logger
+ logger.warning("No pythran specification, "
+ "nothing will be exported")
def keys(self):
return list(self.functions.keys()) + list(self.capsules.keys())

View File

@ -1,6 +1,6 @@
Name: pythran
Version: 0.13.1
Release: 2%{?dist}
Version: 0.14.0
Release: 1%{?dist}
Summary: Ahead of Time Python compiler for numeric kernels
# pythran is BSD
@ -22,17 +22,6 @@ Provides: bundled(python3dist(networkx)) = 2.6.1
URL: https://github.com/serge-sans-paille/pythran
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
# assertEquals was removed from unittest in Python 3.12
Patch: https://github.com/serge-sans-paille/pythran/pull/2119.patch
# Introduce pythran/pythonic/include/types/longdouble.hpp et cie
# New numpy version alias np.float128 to np.longdouble, so we need these headers too.
Patch: https://github.com/serge-sans-paille/pythran/pull/2120.patch
# Use pythran logger instead of default logger to report absence of spec
# Fixes build with setuptools distutils
Patch: https://github.com/serge-sans-paille/pythran/pull/2122.patch
# there is no actual arched content
# yet we want to test on all architectures
# and we also might need to skip some
@ -160,6 +149,10 @@ k="$k and not test_loadext_and_run"
%changelog
* Thu Sep 07 2023 Miro Hrončok <mhroncok@redhat.com> - 0.14.0-1
- Update to 0.14.0
- Fixes: rhbz#2237784
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild

View File

@ -1 +1 @@
SHA512 (pythran-0.13.1.tar.gz) = 2497fa49d78ff64e577816f4b48bd424c03f04b7605c92d359f0f8514aaa67b30b7e68248db475c215deafaf7e55f7b4b74ab37c9dbef2a27e813878bf350e77
SHA512 (pythran-0.14.0.tar.gz) = 2a485c00b015abafc9ded28bfea8d8a7ae3ce87b5b654c318d5514fe12fd9374b599c05e3c4a2ff911fbae84df2efaa3cec2019c91e82ac1f36e0cc5ddeb2d8e