From e1a618f9b1094bdc3a1ac0f82b4472ed4ea19152 Mon Sep 17 00:00:00 2001 From: William Stewart Date: Fri, 11 Dec 2015 12:04:14 +0200 Subject: [PATCH 01/10] Bump Python3.5 to 3.5.1 --- python35.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/python35.rb b/python35.rb index b2a9b55..ef08dd9 100644 --- a/python35.rb +++ b/python35.rb @@ -1,8 +1,8 @@ class Python35 < Formula desc "Interpreted, interactive, object-oriented programming language" homepage "https://www.python.org/" - url "https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tar.xz" - sha256 "d6d7aa1634a5eeeca6ed4fca266982a04f84bd8f3945a9179e20b24ad2e2be91" + url "https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz" + sha256 "c6d57c0c366d9060ab6c0cdf889ebf3d92711d466cc0119c441dbf2746f725c9" head "https://hg.python.org/cpython", :using => :hg @@ -26,8 +26,8 @@ class Python35 < Formula skip_clean "bin/easy_install3", "bin/easy_install-3.5", "bin/easy_install-3.6" resource "setuptools" do - url "https://pypi.python.org/packages/source/s/setuptools/setuptools-18.3.2.tar.gz" - sha256 "8c4ab0c4f227730519dc1e020f875b3ef97e643c8f43a98a4fa0c46fbad12450" + url "https://pypi.python.org/packages/source/s/setuptools/setuptools-18.7.1.tar.gz" + sha256 "aff36c95035e0b311eacb1434e3f7e85f5ccaad477773847e582978f8f45bd74" end resource "pip" do From 1e6b9ed6b885fbfbfe8115a798a3d950c19a6bf6 Mon Sep 17 00:00:00 2001 From: William Stewart Date: Mon, 22 Feb 2016 19:45:42 +0200 Subject: [PATCH 02/10] Update included pip and setuptools --- python33.rb | 8 ++++---- python34.rb | 8 ++++---- python35.rb | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/python33.rb b/python33.rb index 0f73c7c..190ab79 100644 --- a/python33.rb +++ b/python33.rb @@ -27,13 +27,13 @@ class Python33 < Formula skip_clean "bin/easy_install3", "bin/easy_install-3.3" resource "setuptools" do - url "https://pypi.python.org/packages/source/s/setuptools/setuptools-18.3.2.tar.gz" - sha256 "8c4ab0c4f227730519dc1e020f875b3ef97e643c8f43a98a4fa0c46fbad12450" + url "https://pypi.python.org/packages/source/s/setuptools/setuptools-19.4.tar.gz" + sha256 "214bf29933f47cf25e6faa569f710731728a07a19cae91ea64f826051f68a8cf" end resource "pip" do - url "https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz" - sha256 "ca047986f0528cfa975a14fb9f7f106271d4e0c3fe1ddced6c1db2e7ae57a477" + url "https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz" + sha256 "46f4bd0d8dfd51125a554568d646fe4200a3c2c6c36b9f2d06d2212148439521" end resource "wheel" do diff --git a/python34.rb b/python34.rb index 28bdb74..d3dffa8 100644 --- a/python34.rb +++ b/python34.rb @@ -25,13 +25,13 @@ class Python34 < Formula skip_clean "bin/easy_install3", "bin/easy_install-3.4" resource "setuptools" do - url "https://pypi.python.org/packages/source/s/setuptools/setuptools-18.3.2.tar.gz" - sha256 "8c4ab0c4f227730519dc1e020f875b3ef97e643c8f43a98a4fa0c46fbad12450" + url "https://pypi.python.org/packages/source/s/setuptools/setuptools-19.4.tar.gz" + sha256 "214bf29933f47cf25e6faa569f710731728a07a19cae91ea64f826051f68a8cf" end resource "pip" do - url "https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz" - sha256 "ca047986f0528cfa975a14fb9f7f106271d4e0c3fe1ddced6c1db2e7ae57a477" + url "https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz" + sha256 "46f4bd0d8dfd51125a554568d646fe4200a3c2c6c36b9f2d06d2212148439521" end resource "wheel" do diff --git a/python35.rb b/python35.rb index ef08dd9..ed4fdf7 100644 --- a/python35.rb +++ b/python35.rb @@ -26,13 +26,13 @@ class Python35 < Formula skip_clean "bin/easy_install3", "bin/easy_install-3.5", "bin/easy_install-3.6" resource "setuptools" do - url "https://pypi.python.org/packages/source/s/setuptools/setuptools-18.7.1.tar.gz" - sha256 "aff36c95035e0b311eacb1434e3f7e85f5ccaad477773847e582978f8f45bd74" + url "https://pypi.python.org/packages/source/s/setuptools/setuptools-19.4.tar.gz" + sha256 "214bf29933f47cf25e6faa569f710731728a07a19cae91ea64f826051f68a8cf" end resource "pip" do - url "https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz" - sha256 "ca047986f0528cfa975a14fb9f7f106271d4e0c3fe1ddced6c1db2e7ae57a477" + url "https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz" + sha256 "46f4bd0d8dfd51125a554568d646fe4200a3c2c6c36b9f2d06d2212148439521" end resource "wheel" do From 8d5c70a4ead91970b8022f5d0ffe1e9a46dbc603 Mon Sep 17 00:00:00 2001 From: William Stewart Date: Tue, 12 Jul 2016 22:16:30 +0200 Subject: [PATCH 03/10] Add Python 3.6 --- python36.rb | 394 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 394 insertions(+) create mode 100644 python36.rb diff --git a/python36.rb b/python36.rb new file mode 100644 index 0000000..1ff2fde --- /dev/null +++ b/python36.rb @@ -0,0 +1,394 @@ +class Python36 < Formula + desc "Interpreted, interactive, object-oriented programming language" + homepage "https://www.python.org/" + + head "https://hg.python.org/cpython", :using => :hg + + devel do + url "https://www.python.org/ftp/python/3.6.0/Python-3.6.0a3.tar.xz" + sha256 "2cd0611c3456a83737d99d8ffd36d4094b3d44c29dd3a4185f1146be502a8321" + end + + option :universal + option "with-tcl-tk", "Use Homebrew's Tk instead of OS X Tk (has optional Cocoa and threads support)" + option "with-quicktest", "Run `make quicktest` after the build" + + deprecated_option "quicktest" => "with-quicktest" + deprecated_option "with-brewed-tk" => "with-tcl-tk" + + depends_on "pkg-config" => :build + depends_on "readline" => :recommended + depends_on "sqlite" => :recommended + depends_on "gdbm" => :recommended + depends_on "openssl" + depends_on "xz" => :recommended # for the lzma module added in 3.3 + depends_on "homebrew/dupes/tcl-tk" => :optional + depends_on :x11 if build.with?("tcl-tk") && Tab.for_name("homebrew/dupes/tcl-tk").with?("x11") + + skip_clean "bin/pip3", "bin/pip-3.4", "bin/pip-3.5", "bin/pip-3.6" + skip_clean "bin/easy_install3", "bin/easy_install-3.4", "bin/easy_install-3.5", "bin/easy_install-3.6" + + resource "setuptools" do + url "https://pypi.python.org/packages/21/d7/3e7e4b42d40469d2b770e10aee5b49538ecf2853eb5635d2d2536b286e2d/setuptools-24.0.2.tar.gz" + sha256 "efe010ea62504178246f6b3d98d588c2f67884403a7a0a99670dfbf8836ca973" + end + + resource "pip" do + url "https://pypi.python.org/packages/e7/a8/7556133689add8d1a54c0b14aeff0acb03c64707ce100ecd53934da1aa13/pip-8.1.2.tar.gz" + sha256 "4d24b03ffa67638a3fa931c09fd9e0273ffa904e95ebebe7d4b1a54c93d7b732" + end + + resource "wheel" do + url "https://pypi.python.org/packages/source/w/wheel/wheel-0.29.0.tar.gz" + sha256 "1ebb8ad7e26b448e9caa4773d2357849bf80ff9e313964bcaf79cbf0201a1648" + end + + fails_with :clang do + build 425 + cause "https://bugs.python.org/issue24844" + end + + # Homebrew's tcl-tk is built in a standard unix fashion (due to link errors) + # so we have to stop python from searching for frameworks and linking against + # X11. + patch :DATA if build.with? "tcl-tk" + + def lib_cellar + prefix/"Frameworks/Python.framework/Versions/#{xy}/lib/python#{xy}" + end + + def site_packages_cellar + lib_cellar/"site-packages" + end + + # The HOMEBREW_PREFIX location of site-packages. + def site_packages + HOMEBREW_PREFIX/"lib/python#{xy}/site-packages" + end + + fails_with :llvm do + build 2336 + cause <<-EOS.undent + Could not find platform dependent libraries + Consider setting $PYTHONHOME to [:] + python.exe(14122) malloc: *** mmap(size=7310873954244194304) failed (error code=12) + *** error: can't allocate region + *** set a breakpoint in malloc_error_break to debug + Could not import runpy module + make: *** [pybuilddir.txt] Segmentation fault: 11 + EOS + end + + # setuptools remembers the build flags python is built with and uses them to + # build packages later. Xcode-only systems need different flags. + pour_bottle? do + reason <<-EOS.undent + The bottle needs the Apple Command Line Tools to be installed. + You can install them, if desired, with: + xcode-select --install + EOS + satisfy { MacOS::CLT.installed? } + end + + def install + # Unset these so that installing pip and setuptools puts them where we want + # and not into some other Python the user has installed. + ENV["PYTHONHOME"] = nil + ENV["PYTHONPATH"] = nil + + args = %W[ + --prefix=#{prefix} + --enable-ipv6 + --datarootdir=#{share} + --datadir=#{share} + --enable-framework=#{frameworks} + --without-ensurepip + ] + + args << "--without-gcc" if ENV.compiler == :clang + + cflags = [] + ldflags = [] + cppflags = [] + + unless MacOS::CLT.installed? + # Help Python's build system (setuptools/pip) to build things on Xcode-only systems + # The setup.py looks at "-isysroot" to get the sysroot (and not at --sysroot) + cflags << "-isysroot #{MacOS.sdk_path}" + ldflags << "-isysroot #{MacOS.sdk_path}" + cppflags << "-I#{MacOS.sdk_path}/usr/include" # find zlib + # For the Xlib.h, Python needs this header dir with the system Tk + if build.without? "tcl-tk" + cflags << "-I#{MacOS.sdk_path}/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers" + end + end + # Avoid linking to libgcc https://mail.python.org/pipermail/python-dev/2012-February/116205.html + args << "MACOSX_DEPLOYMENT_TARGET=#{MacOS.version}" + + # We want our readline and openssl! This is just to outsmart the detection code, + # superenv makes cc always find includes/libs! + inreplace "setup.py" do |s| + s.gsub! "do_readline = self.compiler.find_library_file(lib_dirs, 'readline')", + "do_readline = '#{Formula["readline"].opt_lib}/libhistory.dylib'" + s.gsub! "/usr/local/ssl", Formula["openssl"].opt_prefix + end + + if build.universal? + ENV.universal_binary + args << "--enable-universalsdk" << "--with-universal-archs=intel" + end + + # Allow sqlite3 module to load extensions: https://docs.python.org/library/sqlite3.html#f1 + inreplace("setup.py", 'sqlite_defines.append(("SQLITE_OMIT_LOAD_EXTENSION", "1"))', "pass") if build.with? "sqlite" + + # Allow python modules to use ctypes.find_library to find homebrew's stuff + # even if homebrew is not a /usr/local/lib. Try this with: + # `brew install enchant && pip install pyenchant` + inreplace "./Lib/ctypes/macholib/dyld.py" do |f| + f.gsub! "DEFAULT_LIBRARY_FALLBACK = [", "DEFAULT_LIBRARY_FALLBACK = [ '#{HOMEBREW_PREFIX}/lib'," + f.gsub! "DEFAULT_FRAMEWORK_FALLBACK = [", "DEFAULT_FRAMEWORK_FALLBACK = [ '#{HOMEBREW_PREFIX}/Frameworks'," + end + + if build.with? "tcl-tk" + tcl_tk = Formula["tcl-tk"].opt_prefix + cppflags << "-I#{tcl_tk}/include" + ldflags << "-L#{tcl_tk}/lib" + end + + args << "CFLAGS=#{cflags.join(" ")}" unless cflags.empty? + args << "LDFLAGS=#{ldflags.join(" ")}" unless ldflags.empty? + args << "CPPFLAGS=#{cppflags.join(" ")}" unless cppflags.empty? + + system "./configure", *args + + system "make" + + ENV.deparallelize # Installs must be serialized + # Tell Python not to install into /Applications (default for framework builds) + system "make", "install", "PYTHONAPPSDIR=#{prefix}" + # Demos and Tools + system "make", "frameworkinstallextras", "PYTHONAPPSDIR=#{pkgshare}" + system "make", "quicktest" if build.with? "quicktest" + + # Any .app get a " 3" attached, so it does not conflict with python 2.x. + Dir.glob("#{prefix}/*.app") { |app| mv app, app.sub(/\.app$/, " 3.app") } + + # A fix, because python and python3 both want to install Python.framework + # and therefore we can't link both into HOMEBREW_PREFIX/Frameworks + # https://github.com/Homebrew/homebrew/issues/15943 + ["Headers", "Python", "Resources"].each { |f| rm(prefix/"Frameworks/Python.framework/#{f}") } + rm prefix/"Frameworks/Python.framework/Versions/Current" + + # Symlink the pkgconfig files into HOMEBREW_PREFIX so they're accessible. + (lib/"pkgconfig").install_symlink Dir["#{frameworks}/Python.framework/Versions/#{xy}/lib/pkgconfig/*"] + + # Remove 2to3 because python2 also installs it + rm bin/"2to3" + + # Remove the site-packages that Python created in its Cellar. + site_packages_cellar.rmtree + + # These makevars are available through distutils.sysconfig at runtime and + # some third-party software packages depend on them + inreplace Dir.glob(frameworks/"Python.framework/Versions/#{xy}/lib/python#{xy}/config-#{xy}*/Makefile") do |s| + s.change_make_var! "LINKFORSHARED", + "-u _PyMac_Error #{opt_prefix}/Frameworks/Python.framework/Versions/#{xy}/Python" + end + + %w[setuptools pip wheel].each do |r| + (libexec/r).install resource(r) + end + end + + def post_install + # Fix up the site-packages so that user-installed Python software survives + # minor updates, such as going from 3.3.2 to 3.3.3: + + # Create a site-packages in HOMEBREW_PREFIX/lib/python#{xy}/site-packages + site_packages.mkpath + + # Symlink the prefix site-packages into the cellar. + site_packages_cellar.unlink if site_packages_cellar.exist? + site_packages_cellar.parent.install_symlink site_packages + + # Write our sitecustomize.py + rm_rf Dir["#{site_packages}/sitecustomize.py[co]"] + (site_packages/"sitecustomize.py").atomic_write(sitecustomize) + + # Remove old setuptools installations that may still fly around and be + # listed in the easy_install.pth. This can break setuptools build with + # zipimport.ZipImportError: bad local file header + # setuptools-0.9.8-py3.3.egg + rm_rf Dir["#{site_packages}/setuptools*"] + rm_rf Dir["#{site_packages}/distribute*"] + rm_rf Dir["#{site_packages}/pip[-_.][0-9]*", "#{site_packages}/pip"] + + %w[setuptools pip wheel].each do |pkg| + (libexec/pkg).cd do + system bin/"python3", "-s", "setup.py", "--no-user-cfg", "install", + "--force", "--verbose", "--install-scripts=#{bin}", + "--install-lib=#{site_packages}", + "--single-version-externally-managed", + "--record=installed.txt" + end + end + + rm_rf [bin/"pip", bin/"easy_install"] + mv bin/"wheel", bin/"wheel3" + + # post_install happens after link + %W[pip3 pip#{xy} easy_install-#{xy} wheel3].each do |e| + (HOMEBREW_PREFIX/"bin").install_symlink bin/e + end + + # Help distutils find brewed stuff when building extensions + include_dirs = [HOMEBREW_PREFIX/"include", Formula["openssl"].opt_include] + library_dirs = [HOMEBREW_PREFIX/"lib", Formula["openssl"].opt_lib] + + if build.with? "sqlite" + include_dirs << Formula["sqlite"].opt_include + library_dirs << Formula["sqlite"].opt_lib + end + + if build.with? "tcl-tk" + include_dirs << Formula["homebrew/dupes/tcl-tk"].opt_include + library_dirs << Formula["homebrew/dupes/tcl-tk"].opt_lib + end + + cfg = lib_cellar/"distutils/distutils.cfg" + cfg.atomic_write <<-EOF.undent + [install] + prefix=#{HOMEBREW_PREFIX} + + [build_ext] + include_dirs=#{include_dirs.join ":"} + library_dirs=#{library_dirs.join ":"} + EOF + end + + def xy + version.to_s.slice(/(3.\d)/) || "3.6" + end + + def sitecustomize + <<-EOF.undent + # This file is created by Homebrew and is executed on each python startup. + # Don't print from here, or else python command line scripts may fail! + # + import re + import os + import sys + + if sys.version_info[0] != 3: + # This can only happen if the user has set the PYTHONPATH for 3.x and run Python 2.x or vice versa. + # Every Python looks at the PYTHONPATH variable and we can't fix it here in sitecustomize.py, + # because the PYTHONPATH is evaluated after the sitecustomize.py. Many modules (e.g. PyQt4) are + # built only for a specific version of Python and will fail with cryptic error messages. + # In the end this means: Don't set the PYTHONPATH permanently if you use different Python versions. + exit('Your PYTHONPATH points to a site-packages dir for Python 3.x but you are running Python ' + + str(sys.version_info[0]) + '.x!\\n PYTHONPATH is currently: "' + str(os.environ['PYTHONPATH']) + '"\\n' + + ' You should `unset PYTHONPATH` to fix this.') + + # Only do this for a brewed python: + if os.path.realpath(sys.executable).startswith('#{rack}'): + # Shuffle /Library site-packages to the end of sys.path + library_site = '/Library/Python/#{xy}/site-packages' + library_packages = [p for p in sys.path if p.startswith(library_site)] + sys.path = [p for p in sys.path if not p.startswith(library_site)] + # .pth files have already been processed so don't use addsitedir + sys.path.extend(library_packages) + + # the Cellar site-packages is a symlink to the HOMEBREW_PREFIX + # site_packages; prefer the shorter paths + long_prefix = re.compile(r'#{rack}/[0-9\._abrc]+/Frameworks/Python\.framework/Versions/#{xy}/lib/python#{xy}/site-packages') + sys.path = [long_prefix.sub('#{site_packages}', p) for p in sys.path] + + # Set the sys.executable to use the opt_prefix + sys.executable = '#{opt_bin}/python#{xy}' + EOF + end + + def caveats + text = <<-EOS.undent + Pip, setuptools, and wheel have been installed. To update them + pip3 install --upgrade pip setuptools wheel + + You can install Python packages with + pip3 install + + They will install into the site-package directory + #{site_packages} + + See: https://github.com/Homebrew/brew/blob/master/share/doc/homebrew/Homebrew-and-Python.md + EOS + + # Tk warning only for 10.6 + tk_caveats = <<-EOS.undent + + Apple's Tcl/Tk is not recommended for use with Python on Mac OS X 10.6. + For more information see: https://www.python.org/download/mac/tcltk/ + EOS + + text += tk_caveats unless MacOS.version >= :lion + text + end + + test do + # Check if sqlite is ok, because we build with --enable-loadable-sqlite-extensions + # and it can occur that building sqlite silently fails if OSX's sqlite is used. + system "#{bin}/python#{xy}", "-c", "import sqlite3" + # Check if some other modules import. Then the linked libs are working. + system "#{bin}/python#{xy}", "-c", "import tkinter; root = tkinter.Tk()" + system bin/"pip3", "list" + end +end + +__END__ +diff --git a/setup.py b/setup.py +index 2779658..902d0eb 100644 +--- a/setup.py ++++ b/setup.py +@@ -1699,9 +1699,6 @@ class PyBuildExt(build_ext): + # Rather than complicate the code below, detecting and building + # AquaTk is a separate method. Only one Tkinter will be built on + # Darwin - either AquaTk, if it is found, or X11 based Tk. +- if (host_platform == 'darwin' and +- self.detect_tkinter_darwin(inc_dirs, lib_dirs)): +- return + + # Assume we haven't found any of the libraries or include files + # The versions with dots are used on Unix, and the versions without +@@ -1747,22 +1744,6 @@ class PyBuildExt(build_ext): + if dir not in include_dirs: + include_dirs.append(dir) + +- # Check for various platform-specific directories +- if host_platform == 'sunos5': +- include_dirs.append('/usr/openwin/include') +- added_lib_dirs.append('/usr/openwin/lib') +- elif os.path.exists('/usr/X11R6/include'): +- include_dirs.append('/usr/X11R6/include') +- added_lib_dirs.append('/usr/X11R6/lib64') +- added_lib_dirs.append('/usr/X11R6/lib') +- elif os.path.exists('/usr/X11R5/include'): +- include_dirs.append('/usr/X11R5/include') +- added_lib_dirs.append('/usr/X11R5/lib') +- else: +- # Assume default location for X11 +- include_dirs.append('/usr/X11/include') +- added_lib_dirs.append('/usr/X11/lib') +- + # If Cygwin, then verify that X is installed before proceeding + if host_platform == 'cygwin': + x11_inc = find_file('X11/Xlib.h', [], include_dirs) +@@ -1786,10 +1767,6 @@ class PyBuildExt(build_ext): + if host_platform in ['aix3', 'aix4']: + libs.append('ld') + +- # Finally, link with the X11 libraries (not appropriate on cygwin) +- if host_platform != "cygwin": +- libs.append('X11') +- + ext = Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], + define_macros=[('WITH_APPINIT', 1)] + defs, + include_dirs = include_dirs, From c2fd582c0c5ee6dc0aa6d2ff99749e242abc1c03 Mon Sep 17 00:00:00 2001 From: William Stewart Date: Fri, 9 Sep 2016 18:59:06 +0200 Subject: [PATCH 04/10] Update Python 3.6 to alpha 4 --- python36.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python36.rb b/python36.rb index 1ff2fde..a32859a 100644 --- a/python36.rb +++ b/python36.rb @@ -5,8 +5,8 @@ class Python36 < Formula head "https://hg.python.org/cpython", :using => :hg devel do - url "https://www.python.org/ftp/python/3.6.0/Python-3.6.0a3.tar.xz" - sha256 "2cd0611c3456a83737d99d8ffd36d4094b3d44c29dd3a4185f1146be502a8321" + url "https://www.python.org/ftp/python/3.6.0/Python-3.6.0a4.tar.xz" + sha256 "63acec349d20de412682f64c013f7c3374c695430b44e1c0ef12076da1d7fd2c" end option :universal From 2da3b742e2bf61273ab2288b1b92e23ecf2e1e00 Mon Sep 17 00:00:00 2001 From: William Stewart Date: Tue, 13 Sep 2016 08:54:16 +0200 Subject: [PATCH 05/10] Bump to Python 3.6.0 beta 1 --- python36.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python36.rb b/python36.rb index a32859a..864221f 100644 --- a/python36.rb +++ b/python36.rb @@ -5,8 +5,8 @@ class Python36 < Formula head "https://hg.python.org/cpython", :using => :hg devel do - url "https://www.python.org/ftp/python/3.6.0/Python-3.6.0a4.tar.xz" - sha256 "63acec349d20de412682f64c013f7c3374c695430b44e1c0ef12076da1d7fd2c" + url "https://www.python.org/ftp/python/3.6.0/Python-3.6.0b1.tar.xz" + sha256 "a83b094a8abf8a1fba7c548a5e8dd0aabe87a87a6ebd87c97f4a5a2527a74d42" end option :universal From 5566e706dc5593d53c4c5ec664d1065417148536 Mon Sep 17 00:00:00 2001 From: William Stewart Date: Sat, 17 Sep 2016 00:48:30 +0200 Subject: [PATCH 06/10] Bump Python 3.4 to 3.4.5 --- python34.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python34.rb b/python34.rb index d3dffa8..023735c 100644 --- a/python34.rb +++ b/python34.rb @@ -2,8 +2,8 @@ class Python34 < Formula desc "Interpreted, interactive, object-oriented programming language" homepage "https://www.python.org/" head "https://hg.python.org/cpython", :using => :hg, :branch => "3.4" - url "https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tar.xz" - sha256 "b5b3963533768d5fc325a4d7a6bd6f666726002d696f1d399ec06b043ea996b8" + url "https://www.python.org/ftp/python/3.4.5/Python-3.4.5.tar.xz" + sha256 "ee64b1c8a47461009abf25252332d29a4e587cb4f0c1c96aa793a3732e9d898a" option :universal option "with-tcl-tk", "Use Homebrew's Tk instead of OS X Tk (has optional Cocoa and threads support)" From 1c53bc081b9653cc38b6bee2cce2313208fb1351 Mon Sep 17 00:00:00 2001 From: William Stewart Date: Sat, 17 Sep 2016 00:48:42 +0200 Subject: [PATCH 07/10] Bump Python 3.5 to 3.5.2 --- python35.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python35.rb b/python35.rb index ed4fdf7..b685af2 100644 --- a/python35.rb +++ b/python35.rb @@ -1,8 +1,8 @@ class Python35 < Formula desc "Interpreted, interactive, object-oriented programming language" homepage "https://www.python.org/" - url "https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz" - sha256 "c6d57c0c366d9060ab6c0cdf889ebf3d92711d466cc0119c441dbf2746f725c9" + url "https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz" + sha256 "0010f56100b9b74259ebcd5d4b295a32324b58b517403a10d1a2aa7cb22bca40" head "https://hg.python.org/cpython", :using => :hg From edba2a5f0750fa7a71b9ad46fed2bac2dc6b349b Mon Sep 17 00:00:00 2001 From: William Stewart Date: Tue, 10 Jan 2017 18:35:16 +0200 Subject: [PATCH 08/10] sha1's are no longer supported closes https://github.com/zoidbergwill/homebrew-python/issues/6 --- python33.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python33.rb b/python33.rb index 190ab79..636ccc4 100644 --- a/python33.rb +++ b/python33.rb @@ -2,7 +2,7 @@ class Python33 < Formula desc "Interpreted, interactive, object-oriented programming language" homepage "https://www.python.org/" url 'http://python.org/ftp/python/3.3.6/Python-3.3.6.tgz' - sha1 'a4d96b5cad5ed04cf02c9fcedaaaab3491bc885f' + sha256 '0a58ad1f1def4ecc90b18b0c410a3a0e1a48cf7692c75d1f83d0af080e5d2034' revision 2 head "https://hg.python.org/cpython", :using => :hg, :branch => '3.3' From d6a878d413e446c4ffc0a687090b679f0b7e830e Mon Sep 17 00:00:00 2001 From: Matteo Bertini Date: Thu, 2 Feb 2017 07:25:35 +0100 Subject: [PATCH 09/10] python33: fix download url --- python33.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python33.rb b/python33.rb index 636ccc4..aa4f141 100644 --- a/python33.rb +++ b/python33.rb @@ -1,7 +1,7 @@ class Python33 < Formula desc "Interpreted, interactive, object-oriented programming language" homepage "https://www.python.org/" - url 'http://python.org/ftp/python/3.3.6/Python-3.3.6.tgz' + url 'https://www.python.org/ftp/python/3.3.6/Python-3.3.6.tgz' sha256 '0a58ad1f1def4ecc90b18b0c410a3a0e1a48cf7692c75d1f83d0af080e5d2034' revision 2 From 569c309f1d740a2762c2cc75df1b9d7cc3ca365d Mon Sep 17 00:00:00 2001 From: Matteo Bertini Date: Thu, 2 Feb 2017 07:31:10 +0100 Subject: [PATCH 10/10] python36: bump to release 3.6.0 --- python36.rb | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/python36.rb b/python36.rb index 864221f..d31bbaa 100644 --- a/python36.rb +++ b/python36.rb @@ -1,14 +1,11 @@ class Python36 < Formula desc "Interpreted, interactive, object-oriented programming language" homepage "https://www.python.org/" + url "https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz" + sha256 "b0c5f904f685e32d9232f7bdcbece9819a892929063b6e385414ad2dd6a23622" head "https://hg.python.org/cpython", :using => :hg - - devel do - url "https://www.python.org/ftp/python/3.6.0/Python-3.6.0b1.tar.xz" - sha256 "a83b094a8abf8a1fba7c548a5e8dd0aabe87a87a6ebd87c97f4a5a2527a74d42" - end - + option :universal option "with-tcl-tk", "Use Homebrew's Tk instead of OS X Tk (has optional Cocoa and threads support)" option "with-quicktest", "Run `make quicktest` after the build"