Date: Sunday, May 16, 2021 @ 16:32:43 Author: bastelfreak Revision: 935901
Add ruby27-httpclient Added: ruby27-httpclient/ ruby27-httpclient/repos/ ruby27-httpclient/trunk/ ruby27-httpclient/trunk/PKGBUILD ruby27-httpclient/trunk/disable-broken-TLS-test.patch -------------------------------+ PKGBUILD | 60 ++++++++++++++++++++++++++++++++++++++++ disable-broken-TLS-test.patch | 21 ++++++++++++++ 2 files changed, 81 insertions(+) Added: ruby27-httpclient/trunk/PKGBUILD =================================================================== --- ruby27-httpclient/trunk/PKGBUILD (rev 0) +++ ruby27-httpclient/trunk/PKGBUILD 2021-05-16 16:32:43 UTC (rev 935901) @@ -0,0 +1,60 @@ +# Maintainer: Tim Meusel <t...@bastelfreak.de> +# Contributor: Christian Rebischke <chris.rebisc...@archlinux.org> +# Contributor: farwayer <farwa...@gmail.com> +# Contributor: Tim Meusel <t...@bastelfreak.de> + +_gemname='httpclient' +pkgname="ruby27-${_gemname}" +pkgver=2.8.3 +pkgrel=1 +pkgdesc='gives something like the functionality of libwww-perl (LWP) in Ruby' +arch=('any') +url="https://github.com/nahi/${_gemname}" +license=('RUBY') +makedepends=('ruby27-rdoc') +depends=('ruby2.7') +options=(!emptydirs) +source=("${url}/archive/v${pkgver}/${pkgname}-v${pkgver}.tar.gz" + 'disable-broken-TLS-test.patch') +sha512sums=('b65b5adb97af069d7ff6b6f4cccd6a42c6d9c88b797e9495768fe1f36a6bd93defe50190edc201de5e39c4e306ba0bd17a8ff2f8eba4d636dacafa06c172967d' + 'fcdb88f83ea1663f1f21113f7943223ffc1c69dc0f1305d74e8a96b3752f905c1bfa3727f2eb9dae9742db16d222ba5971a072b065a6c7ce535615b51fdb8712') + +prepare() { + cd "${srcdir}/${_gemname}-${pkgver}" + + # Allow latest gem dependencies + sed --in-place 's|~>|>=|g' Gemfile + + # fix wrong license name in gemspec + sed --in-place "s/'ruby'/'Ruby'/" "${_gemname}.gemspec" + + # don't load the bundler setup. That would require us to + # provide all 'development' dependencies + sed --in-place '/setup/d' Rakefile + + # test_auth.rb does a bunch of windows specific NTLM tests + # they don't apply to Arch + rm test/test_auth.rb + + # one test verifies the openssl store. + # a) this test has nothing to do with the actual httpclient + # b) the used certificate is expiried so the test fails + patch --forward --verbose --strip=1 --input='../disable-broken-TLS-test.patch' +} + +build() { + cd "${srcdir}/${_gemname}-${pkgver}" + gem-2.7 build "${_gemname}.gemspec" +} + +package() { + cd "${srcdir}/${_gemname}-${pkgver}" + local _gemdir="$(gem-2.7 env gemdir)" + gem-2.7 install --verbose --ignore-dependencies --no-user-install --install-dir "${pkgdir}/${_gemdir}" --bindir "${pkgdir}/usr/bin" "${_gemname}-${pkgver}.gem" + + install -Dm 644 README.md CHANGELOG.md -t "${pkgdir}/usr/share/doc/${pkgname}/" + + rm -rf "${pkgdir}/${_gemdir}/cache" +} + +# vim: ts=2 sw=2 et: Added: ruby27-httpclient/trunk/disable-broken-TLS-test.patch =================================================================== --- ruby27-httpclient/trunk/disable-broken-TLS-test.patch (rev 0) +++ ruby27-httpclient/trunk/disable-broken-TLS-test.patch 2021-05-16 16:32:43 UTC (rev 935901) @@ -0,0 +1,21 @@ +diff --git a/test/test_ssl.rb b/test/test_ssl.rb +index 2e634d7..2c779d3 100644 +--- a/test/test_ssl.rb ++++ b/test/test_ssl.rb +@@ -80,16 +80,6 @@ end + assert(str.scan(/^hello$/)[0]) + end + +- def test_verification_without_httpclient +- raw_cert = "-----BEGIN CERTIFICATE-----\nMIIDOTCCAiGgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBCMRMwEQYKCZImiZPyLGQB\nGRYDb3JnMRkwFwYKCZImiZPyLGQBGRYJcnVieS1sYW5nMRAwDgYDVQQDDAdSdWJ5\nIENBMB4XDTE2MDgxMDE3MjEzNFoXDTE3MDgxMDE3MjEzNFowSzETMBEGCgmSJomT\n8ixkARkWA29yZzEZMBcGCgmSJomT8ixkARkWCXJ1YnktbGFuZzEZMBcGA1UEAwwQ\nUnVieSBjZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAJCfsSXpSMpmZCVa+ZCM+QDgomnhDlvnrGDq6pasTaIspGTXgws+7r8Dt/cNe6EH\nHJpRH2cGRiO4yPcfcT9eS4X7k8OC4f33wHfACOmLu6LeoNE8ujmSk6L6WzLUI+sE\nnLZbFrXxoAo4XHsm8vEG9C+jEoXZ1p+47wrAGaDwDQTnzlMy4dT9pRQEJP2G/Rry\nUkuZn8SUWmh3/YS78iaSzsNF1cgE1ealHOrPPFDjiCGDaH/LHyUPYlbFSLZ/B7Qx\nLxi5sePLcywWq/EJrmWpgeVTDjtNijsdKv/A3qkY+fm/oD0pzt7XsfJaP9YKNyJO\nQFdxWZeiPcDF+Hwf+IwSr+kCAwEAAaMxMC8wDgYDVR0PAQH/BAQDAgeAMB0GA1Ud\nDgQWBBQNvzYzJyXemGhxbA8NMXLolDnPyjANBgkqhkiG9w0BAQsFAAOCAQEARIJV\noKejGlOTn71QutnNnu07UtTu0IHs6YqjYzzND+m4JXLN+wvYm72AFUG0b1L7dRg0\niK8XjQrlNQNVqP1Mc6tffchy20neOPOHeiO6qTdRU8P2S8D3Uwe+1qhgxjfE+cWc\nwZmWxYK4HA8c58PxWMqrkr2QqXD plG9KWLvOgrtPGiLLZcQSKhvvB63QzItHBDU6\nRayiJY3oPkK/HrIvFlySqFqzWmuyknkciOFywEHQMz/tcSFJ2QFpPj/tBz9VXohH\nZ8KscmfhZrTPBjo+ky1lz/WraWoz4LMiLnkC2ABczWLRSawu+v3Irx1NFJngt05e\npqwtqIUeg7j+JLiTaA==\n-----END CERTIFICATE-----" +- raw_ca_cert = "-----BEGIN CERTIFICATE-----\nMIIDYjCCAkqgAwIBAgIBATANBgkqhkiG9w0BAQsFADBCMRMwEQYKCZImiZPyLGQB\nGRYDb3JnMRkwFwYKCZImiZPyLGQBGRYJcnVieS1sYW5nMRAwDgYDVQQDDAdSdWJ5\nIENBMB4XDTE2MDgxMDE3MjA1NFoXDTE4MDgxMDE3MjA1NFowQjETMBEGCgmSJomT\n8ixkARkWA29yZzEZMBcGCgmSJomT8ixkARkWCXJ1YnktbGFuZzEQMA4GA1UEAwwH\nUnVieSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALKGwyM3Ejtl\npo7CqaDlS71gDZn3gm6IwWpmRMLJofSI9LCwAbjijSC2HvO0xUWoYW40FbzjnnEi\ngszsWyPwuQIx9t0bhuAyllNIfImmkaQkrikXKBKzia4jPnbc4iXPnfjuThjESFWl\ntfbN6y1B5TjKhD1KelfakUO+iMu8WlIA9NKQZYfJ/F3QSpP5Iqb3KN/jVifFbDV8\nbAl3Ln4rT2kTCKrZZcl1jmWsJv8jBw6+P7hk0/Mu0JeHAITsjbNbpHd8UXpCfbVs\nsNGZrBU4uJdZ2YTG+Y27/t25jFNQwb+TWbvig7rfdX2sjssuxa00BBxarC08tIVj\nZprM37KcNn8CAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC\nAQYwHQYDVR0OBBYEFA2/NjMnJd6YaHFsDw0xcuiUOc/KMB8GA1UdIwQYMBYEFA2/\nNjMnJd6YaHFsDw0xcuiUOc/KMA0GCSqGSIb3DQEBCwUAA4IBAQAJSOw49XqvUll0\n3vU9EAO6yUdeZSsQENIfYbRMQgapbnN1vTyrUjPZkGC5hIE1pVdoHtEoUEICxIwy\nr6BKxiSLBDLp+rvIuDdzMkXI WdUVvTZguVRyKtM2gfnpsPLpVnv+stBmAW2SMyxm\nkymhOpkjdv3He+45uorB3tdfBS9VVomDEUJdg38UE1b5eXRQ3D6gG0iCPFzKszXg\nLoAYhGxtjCJaKlbzduMK0YO6aelgW1+XnVIKcA7DJ9egk5d/dFZBPFfwumwr9hTH\nh7/fp3Fr87weI+CkfmFyJZrsEBlXJBVuvPesMVHTh3Whm5kmCdWcBJU0QmSq42ZL\n72U0PXLR\n-----END CERTIFICATE-----" +- ca_cert = ::OpenSSL::X509::Certificate.new(raw_ca_cert) +- cert = ::OpenSSL::X509::Certificate.new(raw_cert) +- store = ::OpenSSL::X509::Store.new +- store.add_cert(ca_cert) +- assert(store.verify(cert)) +- end +- + def test_verification + cfg = @client.ssl_config + cfg.verify_callback = method(:verify_callback).to_proc