# HG changeset patch # User Danek Duvall # Date 1473382033 25200 # Node ID 93182fb9923a7daad390fc8b8e6c5b54b473cbe5 # Parent 6f3076f8d9bfc562feadbfbe1d67584bc2e7c50b 24589822 deliver httplib2 for Python 3.x diff -r 6f3076f8d9bf -r 93182fb9923a components/python/httplib2/Makefile --- a/components/python/httplib2/Makefile Thu Sep 15 09:58:49 2016 -0700 +++ b/components/python/httplib2/Makefile Thu Sep 08 17:47:13 2016 -0700 @@ -36,18 +36,22 @@ TPNO= 29114 -# Depends on SocksiPy; for Python 2.x, the module is part of httplib2, but -# for Python 3.x, it is separate. Once we add this module, httplib2 will -# most likely work with Python 3. -PYTHON_VERSIONS= $(PYTHON2_VERSIONS) - include $(WS_MAKE_RULES)/prep.mk include $(WS_MAKE_RULES)/setup.py.mk include $(WS_MAKE_RULES)/ips.mk ASLR_MODE = $(ASLR_NOT_APPLICABLE) -COMPONENT_TEST_DIR = $(SOURCE_DIR)/python2 +# Set up the tests for running with multiple versions. Many of the tests +# attempt to connect to URLs outside the firewall, some of which no longer +# exist. Others could be set up on a local server with the tests directory +# from the git repo. But for the most part, just expect the tests to fail. +COMPONENT_PRE_TEST_ACTION = \ + v=$$(echo $(PYTHON_VERSION) | cut -c1); \ + $(CP) -r $(COMPONENT_SRC)/python$$v/httplib2/test $(@D); \ + $(CP) $(COMPONENT_SRC)/python$$v/httplib2test.py $(@D); \ + +COMPONENT_TEST_DIR = $(@D) COMPONENT_TEST_ARGS = httplib2test.py # common targets diff -r 6f3076f8d9bf -r 93182fb9923a components/python/httplib2/httplib2-PYVER.p5m --- a/components/python/httplib2/httplib2-PYVER.p5m Thu Sep 15 09:58:49 2016 -0700 +++ b/components/python/httplib2/httplib2-PYVER.p5m Thu Sep 08 17:47:13 2016 -0700 @@ -18,7 +18,7 @@ # # CDDL HEADER END # -# Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved. # set name=pkg.fmri \ @@ -42,7 +42,10 @@ file path=usr/lib/python$(PYVER)/vendor-packages/httplib2/__init__.py file path=usr/lib/python$(PYVER)/vendor-packages/httplib2/cacerts.txt file path=usr/lib/python$(PYVER)/vendor-packages/httplib2/iri2uri.py -file path=usr/lib/python$(PYVER)/vendor-packages/httplib2/socks.py +# Support for a socks proxy is only available on Python 2. See +# https://github.com/httplib2/httplib2/issues/25 +$(PYTHON_2.7_ONLY)file path=usr/lib/python$(PYVER)/vendor-packages/httplib2/socks.py +# license httplib2.license license="MIT, BSD, LGPLv2.1, Apache v2.0" # force the rename with an optional dependency on the old name diff -r 6f3076f8d9bf -r 93182fb9923a components/python/pyrabbit/Makefile --- a/components/python/pyrabbit/Makefile Thu Sep 15 09:58:49 2016 -0700 +++ b/components/python/pyrabbit/Makefile Thu Sep 08 17:47:13 2016 -0700 @@ -36,11 +36,6 @@ TPNO= 29383 -# pyrabbit itself is Python 3 ready: builds & publishes cleanly. But it -# depends on httplib2 which has its own dependency issues (see its Makefile -# for details). So don't build for Python 3 until dependencies resolved. -PYTHON_VERSIONS= $(PYTHON2_VERSIONS) - include $(WS_MAKE_RULES)/prep.mk include $(WS_MAKE_RULES)/setup.py.mk include $(WS_MAKE_RULES)/ips.mk @@ -52,7 +47,8 @@ install: $(INSTALL_NO_ARCH) -# pyrabbit has no tests. +# PyRabbit doesn't bundle tests in its tarball. They're mostly tests that +# require a live RabbitMQ server, anyway. test: $(NO_TESTS) system-test: $(NO_TESTS)