From 854294714b8aa28f04c1a32593b9df14fcf352c1 Mon Sep 17 00:00:00 2001 From: Branch Vincent Date: Wed, 6 Oct 2021 03:38:37 -0400 Subject: [PATCH] stormssh: migrate to python@3.10 Closes #86669. Signed-off-by: BrewTestBot <1589480+BrewTestBot@users.noreply.github.com> --- Formula/stormssh.rb | 151 +++++++++++++++---------------------- pypi_formula_mappings.json | 3 + 2 files changed, 64 insertions(+), 90 deletions(-) diff --git a/Formula/stormssh.rb b/Formula/stormssh.rb index 589e47953c6..c0e6f611cd0 100644 --- a/Formula/stormssh.rb +++ b/Formula/stormssh.rb @@ -1,10 +1,12 @@ class Stormssh < Formula + include Language::Python::Virtualenv + desc "Command-line tool to manage your ssh connections" homepage "https://github.com/emre/storm" url "https://files.pythonhosted.org/packages/0a/18/85d12be676ae0c1d98173b07cc289bbf9e0c67d6c7054b8df3e1003bf992/stormssh-0.7.0.tar.gz" sha256 "8d034dcd9487fa0d280e0ec855d08420f51d5f9f2249f932e3c12119eaa53453" license "MIT" - revision 6 + revision 7 head "https://github.com/emre/storm.git", branch: "master" bottle do @@ -14,7 +16,9 @@ class Stormssh < Formula sha256 x86_64_linux: "c08aeead19d56e41efd0969aecf0b0a67835639f188d84e8694c1b343d89f40f" end - depends_on "python@3.9" + depends_on "rust" => :build + depends_on "python@3.10" + depends_on "six" uses_from_macos "libffi" @@ -24,24 +28,59 @@ class Stormssh < Formula conflicts_with "storm", because: "both install 'storm' binary" + resource "bcrypt" do + url "https://files.pythonhosted.org/packages/d8/ba/21c475ead997ee21502d30f76fd93ad8d5858d19a3fad7cd153de698c4dd/bcrypt-3.2.0.tar.gz" + sha256 "5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29" + end + + resource "cffi" do + url "https://files.pythonhosted.org/packages/00/9e/92de7e1217ccc3d5f352ba21e52398372525765b2e0c4530e6eb2ba9282a/cffi-1.15.0.tar.gz" + sha256 "920f0d66a896c2d99f0adbb391f990a84091179542c205fa53ce5787aff87954" + end + resource "click" do - url "https://files.pythonhosted.org/packages/f8/5c/f60e9d8a1e77005f664b76ff8aeaee5bc05d0a91798afd7f53fc998dbc47/Click-7.0.tar.gz" - sha256 "5b94b49521f6456670fdb30cd82a4eca9412788a93fa6dd6df72c94d5a8ff2d7" + url "https://files.pythonhosted.org/packages/f4/09/ad003f1e3428017d1c3da4ccc9547591703ffea548626f47ec74509c5824/click-8.0.3.tar.gz" + sha256 "410e932b050f5eed773c4cda94de75971c89cdb3155a72a0831139a79e5ecb5b" end - resource "pycrypto" do - url "https://files.pythonhosted.org/packages/60/db/645aa9af249f059cc3a368b118de33889219e0362141e75d4eaf6f80f163/pycrypto-2.6.1.tar.gz" - sha256 "f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c" + resource "cryptography" do + url "https://files.pythonhosted.org/packages/10/91/90b8d4cd611ac2aa526290ae4b4285aa5ea57ee191c63c2f3d04170d7683/cryptography-35.0.0.tar.gz" + sha256 "9933f28f70d0517686bd7de36166dda42094eac49415459d9bdf5e7df3e0086d" end - resource "flask" do - url "https://files.pythonhosted.org/packages/2e/80/3726a729de758513fd3dbc64e93098eb009c49305a97c6751de55b20b694/Flask-1.1.1.tar.gz" - sha256 "13f9f196f330c7c2c5d7a5cf91af894110ca0215ac051b5844701f2bfd934d52" + resource "Flask" do + url "https://files.pythonhosted.org/packages/95/40/b976286b5e7ba01794a7e7588e7e7fa27fb16c6168fa849234840bf0f61d/Flask-2.0.2.tar.gz" + sha256 "7b2fb8e934ddd50731893bdcdb00fc8c0315916f9fcd50d22c7cc1a95ab634e2" end - resource "six" do - url "https://files.pythonhosted.org/packages/94/3e/edcf6fef41d89187df7e38e868b2dd2182677922b600e880baad7749c865/six-1.13.0.tar.gz" - sha256 "30f610279e8b2578cab6db20741130331735c781b56053c59c4076da27f06b66" + resource "itsdangerous" do + url "https://files.pythonhosted.org/packages/58/66/d6c5859dcac92b442626427a8c7a42322068c5cd5d4a463ce78b93f730b7/itsdangerous-2.0.1.tar.gz" + sha256 "9e724d68fc22902a1435351f84c3fb8623f303fffcc566a4cb952df8c572cff0" + end + + resource "Jinja2" do + url "https://files.pythonhosted.org/packages/f8/86/7c0eb6e8b05385d1ce682abc0f994abd1668e148fb52603fa86e15d4c110/Jinja2-3.0.2.tar.gz" + sha256 "827a0e32839ab1600d4eb1c4c33ec5a8edfbc5cb42dafa13b81f182f97784b45" + end + + resource "MarkupSafe" do + url "https://files.pythonhosted.org/packages/bf/10/ff66fea6d1788c458663a84d88787bae15d45daa16f6b3ef33322a51fc7e/MarkupSafe-2.0.1.tar.gz" + sha256 "594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a" + end + + resource "paramiko" do + url "https://files.pythonhosted.org/packages/dd/67/6b3a5f3d730b15b5ff77d13e6f05f9189ae44d8a8bad4967d16694eaac8b/paramiko-2.8.0.tar.gz" + sha256 "e673b10ee0f1c80d46182d3af7751d033d9b573dd7054d2d0aa46be186c3c1d2" + end + + resource "pycparser" do + url "https://files.pythonhosted.org/packages/0f/86/e19659527668d70be91d0369aeaa055b4eb396b0f387a4f92293a20035bd/pycparser-2.20.tar.gz" + sha256 "2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0" + end + + resource "PyNaCl" do + url "https://files.pythonhosted.org/packages/cf/5a/25aeb636baeceab15c8e57e66b8aa930c011ec1c035f284170cacb05025e/PyNaCl-1.4.0.tar.gz" + sha256 "54e9a2c849c742006516ad56a88f5c74bf2ce92c9f67435187c3c5953b346505" end resource "termcolor" do @@ -49,88 +88,20 @@ class Stormssh < Formula sha256 "1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b" end - resource "markupsafe" do - url "https://files.pythonhosted.org/packages/b9/2e/64db92e53b86efccfaea71321f597fa2e1b2bd3853d8ce658568f7a13094/MarkupSafe-1.1.1.tar.gz" - sha256 "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b" + resource "Werkzeug" do + url "https://files.pythonhosted.org/packages/83/3c/ecdb36f49ab06defb0d5a466cfeb4ae90a55d02cfef379f781da2801a45d/Werkzeug-2.0.2.tar.gz" + sha256 "aa2bb6fc8dee8d6c504c0ac1e7f5f7dc5810a9903e793b6f715a9f015bdadb9a" end - resource "jinja2" do - url "https://files.pythonhosted.org/packages/7b/db/1d037ccd626d05a7a47a1b81ea73775614af83c2b3e53d86a0bb41d8d799/Jinja2-2.10.3.tar.gz" - sha256 "9fe95f19286cfefaa917656583d020be14e7859c6b0252588391e47db34527de" - end - - resource "werkzeug" do - url "https://files.pythonhosted.org/packages/5e/fd/eb19e4f6a806cd6ee34900a687f181001c7a0059ff914752091aba84681f/Werkzeug-0.16.0.tar.gz" - sha256 "7280924747b5733b246fe23972186c6b348f9ae29724135a6dfc1e53cea433e7" - end - - resource "itsdangerous" do - url "https://files.pythonhosted.org/packages/68/1a/f27de07a8a304ad5fa817bbe383d1238ac4396da447fa11ed937039fa04b/itsdangerous-1.1.0.tar.gz" - sha256 "321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19" - end - - resource "ecdsa" do - url "https://files.pythonhosted.org/packages/e3/7c/b508ade1feb47cd79222e06d85e477f5cfc4fb0455ad3c70eb6330fc49aa/ecdsa-0.15.tar.gz" - sha256 "8f12ac317f8a1318efa75757ef0a651abe12e51fc1af8838fb91079445227277" - end - - resource "pyasn1" do - url "https://files.pythonhosted.org/packages/a4/db/fffec68299e6d7bad3d504147f9094830b704527a7fc098b721d38cc7fa7/pyasn1-0.4.8.tar.gz" - sha256 "aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba" - end - - resource "pycparser" do - url "https://files.pythonhosted.org/packages/68/9e/49196946aee219aead1290e00d1e7fdeab8567783e83e1b9ab5585e6206a/pycparser-2.19.tar.gz" - sha256 "a988718abfad80b6b157acce7bf130a30876d27603738ac39f140993246b25b3" - end - - resource "cffi" do - url "https://files.pythonhosted.org/packages/66/6a/98e023b3d11537a5521902ac6b50db470c826c682be6a8c661549cb7717a/cffi-1.14.4.tar.gz" - sha256 "1a465cbe98a7fd391d47dce4b8f7e5b921e6cd805ef421d04f5f66ba8f06086c" - end - - resource "PyNaCl" do - url "https://files.pythonhosted.org/packages/61/ab/2ac6dea8489fa713e2b4c6c5b549cc962dd4a842b5998d9e80cf8440b7cd/PyNaCl-1.3.0.tar.gz" - sha256 "0c6100edd16fefd1557da078c7a31e7b7d7a52ce39fdca2bec29d4f7b6e7600c" - end - - resource "bcrypt" do - url "https://files.pythonhosted.org/packages/fa/aa/025a3ab62469b5167bc397837c9ffc486c42a97ef12ceaa6699d8f5a5416/bcrypt-3.1.7.tar.gz" - sha256 "0b0069c752ec14172c5f78208f1863d7ad6755a6fae6fe76ec2c80d13be41e42" - end - - resource "asn1crypto" do - url "https://files.pythonhosted.org/packages/9f/3d/8beae739ed8c1c8f00ceac0ab6b0e97299b42da869e24cf82851b27a9123/asn1crypto-1.3.0.tar.gz" - sha256 "5a215cb8dc12f892244e3a113fe05397ee23c5c4ca7a69cd6e69811755efc42d" - end - - resource "idna" do - url "https://files.pythonhosted.org/packages/ad/13/eb56951b6f7950cadb579ca166e448ba77f9d24efc03edd7e55fa57d04b7/idna-2.8.tar.gz" - sha256 "c357b3f628cf53ae2c4c05627ecc484553142ca23264e593d327bcde5e9c3407" - end - - resource "cryptography" do - url "https://files.pythonhosted.org/packages/be/60/da377e1bed002716fb2d5d1d1cab720f298cb33ecff7bf7adea72788e4e4/cryptography-2.8.tar.gz" - sha256 "3cda1f0ed8747339bbdf71b9f38ca74c7b592f24f65cdb3ab3765e4b02871651" - end - - resource "paramiko" do - url "https://files.pythonhosted.org/packages/ac/15/4351003352e11300b9f44a13576bff52dcdc6e4a911129c07447bda0a358/paramiko-2.7.1.tar.gz" - sha256 "920492895db8013f6cc0179293147f830b8c7b21fdfc839b6bad760c27459d9f" + # Support python 3.10, remove when upstream patch is merged/released + # https://github.com/emre/storm/pull/176 + patch do + url "https://github.com/emre/storm/commit/5a4306b90060f6109611df49ac480f1300e35acd.patch?full_index=1" + sha256 "38e44cff45aef6549574777fb4fdbc065604d0a8918d26a3de02f1570ae1bb92" end def install - xy = Language::Python.major_minor_version "python3" - ENV.prepend_create_path "PYTHONPATH", libexec/"vendor/lib/python#{xy}/site-packages" - resources.each do |r| - r.stage { system "python3", *Language::Python.setup_install_args(libexec/"vendor") } - end - - ENV.prepend_create_path "PYTHONPATH", libexec/"lib/python#{xy}/site-packages" - system "python3", *Language::Python.setup_install_args(libexec) - - bin.install Dir[libexec/"bin/*"] - bin.env_script_all_files(libexec/"bin", PYTHONPATH: ENV["PYTHONPATH"]) + virtualenv_install_with_resources end test do diff --git a/pypi_formula_mappings.json b/pypi_formula_mappings.json index edcd0d73e69..c4b3a76d68f 100644 --- a/pypi_formula_mappings.json +++ b/pypi_formula_mappings.json @@ -382,6 +382,9 @@ "sqlite-utils": { "exclude_packages": ["tabulate", "six"] }, + "stormssh": { + "exclude_packages": ["six"] + }, "tarsnapper": { "exclude_packages": ["six"] },