aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatti Picus <matti.picus@gmail.com>2019-12-08 09:01:04 +0200
committerMatti Picus <matti.picus@gmail.com>2019-12-08 09:01:04 +0200
commit76b3c834144c9c8f3b3037521aacfec95a6e6ae3 (patch)
tree932cc8db5ec2cbbf1b6bfeb0ab7c63ab80ddbd86
parentmerge default into py3.6 (diff)
parentupdate release note for current HEADs (diff)
downloadpypy-76b3c834144c9c8f3b3037521aacfec95a6e6ae3.tar.gz
pypy-76b3c834144c9c8f3b3037521aacfec95a6e6ae3.tar.bz2
pypy-76b3c834144c9c8f3b3037521aacfec95a6e6ae3.zip
merge default into py3.6
-rw-r--r--lib_pypy/_curses_build.py33
-rw-r--r--pypy/doc/release-v7.3.0.rst14
-rwxr-xr-xpypy/tool/release/package.py2
3 files changed, 39 insertions, 10 deletions
diff --git a/lib_pypy/_curses_build.py b/lib_pypy/_curses_build.py
index 0b3b27adbf..0f930d266b 100644
--- a/lib_pypy/_curses_build.py
+++ b/lib_pypy/_curses_build.py
@@ -28,13 +28,25 @@ def find_library(options):
# error message
raise e_last
-def find_curses_include_dirs():
- if os.path.exists('/usr/include/ncurses'):
- return ['/usr/include/ncurses']
- if os.path.exists('/usr/include/ncursesw'):
- return ['/usr/include/ncursesw']
- return []
-
+def find_curses_dir_and_name():
+ for base in ('/usr', '/usr/local'):
+ if os.path.exists(os.path.join(base, 'include', 'ncursesw')):
+ return base, 'ncursesw'
+ if os.path.exists(os.path.join(base, 'include', 'ncurses')):
+ return base, 'ncurses'
+ return '', None
+
+base, name = find_curses_dir_and_name()
+if base:
+ include_dirs = [os.path.join(base, 'include', name)]
+ library_dirs = [os.path.join(base, 'lib')]
+ libs = [name, name.replace('ncurses', 'panel')]
+else:
+ include_dirs = []
+ library_dirs = []
+ libs = [find_library(['ncursesw', 'ncurses']),
+ find_library(['panelw', 'panel']),
+ ]
ffi = FFI()
ffi.set_source("_curses_cffi", """
@@ -83,9 +95,10 @@ int _m_ispad(WINDOW *win) {
void _m_getsyx(int *yx) {
getsyx(yx[0], yx[1]);
}
-""", libraries=[find_library(['ncurses', 'ncursesw']),
- find_library(['panel', 'panelw'])],
- include_dirs=find_curses_include_dirs())
+""", libraries=libs,
+ library_dirs = library_dirs,
+ include_dirs=include_dirs,
+)
ffi.cdef("""
diff --git a/pypy/doc/release-v7.3.0.rst b/pypy/doc/release-v7.3.0.rst
index df83cd2efd..35a5f452d8 100644
--- a/pypy/doc/release-v7.3.0.rst
+++ b/pypy/doc/release-v7.3.0.rst
@@ -18,6 +18,12 @@ We have worked with the python packaging group to support tooling around
building third party packages for python, so this release changes the ABI tag
for PyPy.
+Based on the great work done in `portable-pypy`_, the linux downloads we
+provide are now built on top of the `manylinux2010`_ CentOS6 docker image.
+The tarballs include the needed shared objects to run on any platform that
+supports manylinux2010 wheels, which should include all supported versions of
+debian- and RedHat-based distributions (including Ubuntu, CentOS, and Fedora).
+
The `CFFI`_ backend has been updated to version 1.13.1. We recommend using CFFI
rather than c-extensions to interact with C.
@@ -57,6 +63,8 @@ thanks for pitching in.
.. _`CFFI`: http://cffi.readthedocs.io
.. _`cppyy`: https://cppyy.readthedocs.io
.. _`available as wheels`: https://github.com/antocuni/pypy-wheels
+.. _`portable-pypy`: https://github.com/squeaky-pl/portable-pypy
+.. _`manylinux2010`: https://github.com/pypa/manylinux
What is PyPy?
=============
@@ -124,6 +132,7 @@ Changes shared across versions
* Check for overflow in ctypes array creation
* Better support and report MSVC versions used to compile on windows
* Allow any kind of buffer in socket.setsockopt(), like CPython (`issue 3114`_)
+* Fix importing a module with unicode in ``sys.path`` (`issue 3112`_)
C-API (cpyext) and c-extensions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -166,6 +175,8 @@ Python 3.6 only
it. (`issue 3096`_)
* Remove incorrect clobbering of the ``locals`` after running ``exec()``
* Adds encoding, decoding codepages on win32
+* Remove socket error attributes from ``_ssl`` (`issue 3119`_)
+* Add missing ``os.getgrouplist`` (part of `issue 2375`_)
Python 3.6 C-API
~~~~~~~~~~~~~~~~
@@ -182,6 +193,7 @@ Python 3.6 C-API
.. _`manylinux2010`: fix broken link
.. _`macports pypy`: https://github.com/macports/macports-ports/blob/master/lang/pypy/files/darwin.py.diff
+.. _`issue 2375`: https://bitbucket.com/pypy/pypy/issues/2375
.. _`issue 2389`: https://bitbucket.com/pypy/pypy/issues/2389
.. _`issue 2687`: https://bitbucket.com/pypy/pypy/issues/2687
.. _`issue 2970`: https://bitbucket.com/pypy/pypy/issues/2970
@@ -198,8 +210,10 @@ Python 3.6 C-API
.. _`issue 3100`: https://bitbucket.com/pypy/pypy/issues/3100
.. _`issue 3108`: https://bitbucket.com/pypy/pypy/issues/3108
.. _`issue 3109`: https://bitbucket.com/pypy/pypy/issues/3109
+.. _`issue 3112`: https://bitbucket.com/pypy/pypy/issues/3112
.. _`issue 3114`: https://bitbucket.com/pypy/pypy/issues/3114
.. _`issue 3117`: https://bitbucket.com/pypy/pypy/issues/3117
+.. _`issue 3119`: https://bitbucket.com/pypy/pypy/issues/3119
.. _`issue 3120`: https://bitbucket.com/pypy/pypy/issues/3120
.. _13312: https://bugs.python.org/issue13312
diff --git a/pypy/tool/release/package.py b/pypy/tool/release/package.py
index 4bc03e1035..ec1cb8fc8a 100755
--- a/pypy/tool/release/package.py
+++ b/pypy/tool/release/package.py
@@ -64,6 +64,8 @@ def create_package(basedir, options, _fake=False):
name = options.name
if not name:
name = 'pypy-nightly'
+ if options.make_portable and 'portable' not in name:
+ name += '-portable'
assert '/' not in name
rename_pypy_c = options.pypy_c
override_pypy_c = options.override_pypy_c