excon 0.104.0 → 0.106.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +4 -0
- data/data/cacert.pem +139 -56
- data/lib/excon/connection.rb +7 -0
- data/lib/excon/constants.rb +2 -0
- data/lib/excon/socket.rb +39 -5
- data/lib/excon/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: f3ae04e066b4d9b67c48f71628596d7635894b7d003100ee91dc5c7ced3ee2bd
         | 
| 4 | 
            +
              data.tar.gz: 10eca55f616e0412fce96f9b779c7510467c8d38c5d823a0b19787e1127b1fbc
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 2eb675d4e3e12987e942832c601eb0116e36f63c7104b4a52ffb3570edbbcc183ec350c925128bfd11aa66ad89437612570efe18c6b48fc037fcf246864336fa
         | 
| 7 | 
            +
              data.tar.gz: 41711db6ceef1e4342387b46b5e10fc76be60e519340862f945f26e5d8cacfeae7c18ba7e09471ac2b1811e4ec91402f4be4c8e13b70b0b54c45af3d3f6d4422
         | 
    
        data/README.md
    CHANGED
    
    | @@ -179,6 +179,10 @@ connection.request(:read_timeout => 360) | |
| 179 179 | 
             
            # set longer write_timeout (default is 60 seconds)
         | 
| 180 180 | 
             
            connection.request(:write_timeout => 360)
         | 
| 181 181 |  | 
| 182 | 
            +
            # set a request timeout in seconds (default is no timeout).
         | 
| 183 | 
            +
            # the timeout may be an integer or a float to support sub-second granularity (e.g., 1, 60, 0.005 and 3.5).
         | 
| 184 | 
            +
            connection.request(:timeout => 0.1) # timeout if the entire request takes longer than 100 milliseconds
         | 
| 185 | 
            +
             | 
| 182 186 | 
             
            # Enable the socket option TCP_NODELAY on the underlying socket.
         | 
| 183 187 | 
             
            #
         | 
| 184 188 | 
             
            # This can improve response time when sending frequent short
         | 
    
        data/data/cacert.pem
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ##
         | 
| 2 2 | 
             
            ## Bundle of CA Root Certificates
         | 
| 3 3 | 
             
            ##
         | 
| 4 | 
            -
            ## Certificate data from Mozilla as of: Tue  | 
| 4 | 
            +
            ## Certificate data from Mozilla as of: Tue Dec 12 04:12:04 2023 GMT
         | 
| 5 5 | 
             
            ##
         | 
| 6 6 | 
             
            ## This is a bundle of X.509 certificates of public Certificate Authorities
         | 
| 7 7 | 
             
            ## (CA). These were automatically extracted from Mozilla's root certificates
         | 
| @@ -14,7 +14,7 @@ | |
| 14 14 | 
             
            ## Just configure this file as the SSLCACertificateFile.
         | 
| 15 15 | 
             
            ##
         | 
| 16 16 | 
             
            ## Conversion done with mk-ca-bundle.pl version 1.29.
         | 
| 17 | 
            -
            ## SHA256:  | 
| 17 | 
            +
            ## SHA256: 1970dd65858925d68498d2356aea6d03f764422523c5887deca8ce3ba9e1f845
         | 
| 18 18 | 
             
            ##
         | 
| 19 19 |  | 
| 20 20 |  | 
| @@ -200,27 +200,6 @@ vGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeTmJlglFwjz1onl14LBQaTNx47aTbr | |
| 200 200 | 
             
            qZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK4SVhM7JZG+Ju1zdXtg2pEto=
         | 
| 201 201 | 
             
            -----END CERTIFICATE-----
         | 
| 202 202 |  | 
| 203 | 
            -
            Security Communication Root CA
         | 
| 204 | 
            -
            ==============================
         | 
| 205 | 
            -
            -----BEGIN CERTIFICATE-----
         | 
| 206 | 
            -
            MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP
         | 
| 207 | 
            -
            U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw
         | 
| 208 | 
            -
            HhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMP
         | 
| 209 | 
            -
            U0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEw
         | 
| 210 | 
            -
            ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw
         | 
| 211 | 
            -
            8yl89f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJDKaVv0uM
         | 
| 212 | 
            -
            DPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9Ms+k2Y7CI9eNqPPYJayX
         | 
| 213 | 
            -
            5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/NQV3Is00qVUarH9oe4kA92819uZKAnDfd
         | 
| 214 | 
            -
            DJZkndwi92SL32HeFZRSFaB9UslLqCHJxrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2
         | 
| 215 | 
            -
            JChzAgMBAAGjPzA9MB0GA1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYw
         | 
| 216 | 
            -
            DwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vGkl3g
         | 
| 217 | 
            -
            0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfrUj94nK9NrvjVT8+a
         | 
| 218 | 
            -
            mCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5Bw+SUEmK3TGXX8npN6o7WWWXlDLJ
         | 
| 219 | 
            -
            s58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJUJRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ
         | 
| 220 | 
            -
            6rBK+1YWc26sTfcioU+tHXotRSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAi
         | 
| 221 | 
            -
            FL39vmwLAw==
         | 
| 222 | 
            -
            -----END CERTIFICATE-----
         | 
| 223 | 
            -
             | 
| 224 203 | 
             
            XRamp Global CA Root
         | 
| 225 204 | 
             
            ====================
         | 
| 226 205 | 
             
            -----BEGIN CERTIFICATE-----
         | 
| @@ -669,39 +648,6 @@ YIvDQVETI53O9zJrlAGomecsMx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7r | |
| 669 648 | 
             
            kpeDMdmztcpHWD9f
         | 
| 670 649 | 
             
            -----END CERTIFICATE-----
         | 
| 671 650 |  | 
| 672 | 
            -
            Autoridad de Certificacion Firmaprofesional CIF A62634068
         | 
| 673 | 
            -
            =========================================================
         | 
| 674 | 
            -
            -----BEGIN CERTIFICATE-----
         | 
| 675 | 
            -
            MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UEBhMCRVMxQjBA
         | 
| 676 | 
            -
            BgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2
         | 
| 677 | 
            -
            MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEyMzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIw
         | 
| 678 | 
            -
            QAYDVQQDDDlBdXRvcmlkYWQgZGUgQ2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBB
         | 
| 679 | 
            -
            NjI2MzQwNjgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDD
         | 
| 680 | 
            -
            Utd9thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQMcas9UX4P
         | 
| 681 | 
            -
            B99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefGL9ItWY16Ck6WaVICqjaY
         | 
| 682 | 
            -
            7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15iNA9wBj4gGFrO93IbJWyTdBSTo3OxDqqH
         | 
| 683 | 
            -
            ECNZXyAFGUftaI6SEspd/NYrspI8IM/hX68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyI
         | 
| 684 | 
            -
            plD9amML9ZMWGxmPsu2bm8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctX
         | 
| 685 | 
            -
            MbScyJCyZ/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirjaEbsX
         | 
| 686 | 
            -
            LZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/TKI8xWVvTyQKmtFLK
         | 
| 687 | 
            -
            bpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF6NkBiDkal4ZkQdU7hwxu+g/GvUgU
         | 
| 688 | 
            -
            vzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVhOSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1Ud
         | 
| 689 | 
            -
            EwEB/wQIMAYBAf8CAQEwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNH
         | 
| 690 | 
            -
            DhpkLzCBpgYDVR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp
         | 
| 691 | 
            -
            cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBvACAAZABlACAA
         | 
| 692 | 
            -
            bABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBlAGwAbwBuAGEAIAAwADgAMAAx
         | 
| 693 | 
            -
            ADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx
         | 
| 694 | 
            -
            51tkljYyGOylMnfX40S2wBEqgLk9am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qk
         | 
| 695 | 
            -
            R71kMrv2JYSiJ0L1ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaP
         | 
| 696 | 
            -
            T481PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS3a/DTg4f
         | 
| 697 | 
            -
            Jl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5kSeTy36LssUzAKh3ntLFl
         | 
| 698 | 
            -
            osS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF3dvd6qJ2gHN99ZwExEWN57kci57q13XR
         | 
| 699 | 
            -
            crHedUTnQn3iV2t93Jm8PYMo6oCTjcVMZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoR
         | 
| 700 | 
            -
            saS8I8nkvof/uZS2+F0gStRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTD
         | 
| 701 | 
            -
            KCOM/iczQ0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQBjLMi
         | 
| 702 | 
            -
            6Et8Vcad+qMUu2WFbm5PEn4KPJ2V
         | 
| 703 | 
            -
            -----END CERTIFICATE-----
         | 
| 704 | 
            -
             | 
| 705 651 | 
             
            Izenpe.com
         | 
| 706 652 | 
             
            ==========
         | 
| 707 653 | 
             
            -----BEGIN CERTIFICATE-----
         | 
| @@ -3449,3 +3395,140 @@ TFsR0PXNor6uzFFcw9VUewyu1rkGd4Di7wcaaMxZUa1+XGdrudviB0JbuAEFWDlN5LuYo7Ey7Nmj | |
| 3449 3395 | 
             
            PqYO5Wue/9vsL3SD3460s6neFE3/MaNFcyT6lSnMEpcEoji2jbDwN/zIIX8/syQbPYtuzE2wFg2W
         | 
| 3450 3396 | 
             
            HYMfRsCbvUOZ58SWLs5fyQ==
         | 
| 3451 3397 | 
             
            -----END CERTIFICATE-----
         | 
| 3398 | 
            +
             | 
| 3399 | 
            +
            TrustAsia Global Root CA G3
         | 
| 3400 | 
            +
            ===========================
         | 
| 3401 | 
            +
            -----BEGIN CERTIFICATE-----
         | 
| 3402 | 
            +
            MIIFpTCCA42gAwIBAgIUZPYOZXdhaqs7tOqFhLuxibhxkw8wDQYJKoZIhvcNAQEMBQAwWjELMAkG
         | 
| 3403 | 
            +
            A1UEBhMCQ04xJTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dpZXMsIEluYy4xJDAiBgNVBAMM
         | 
| 3404 | 
            +
            G1RydXN0QXNpYSBHbG9iYWwgUm9vdCBDQSBHMzAeFw0yMTA1MjAwMjEwMTlaFw00NjA1MTkwMjEw
         | 
| 3405 | 
            +
            MTlaMFoxCzAJBgNVBAYTAkNOMSUwIwYDVQQKDBxUcnVzdEFzaWEgVGVjaG5vbG9naWVzLCBJbmMu
         | 
| 3406 | 
            +
            MSQwIgYDVQQDDBtUcnVzdEFzaWEgR2xvYmFsIFJvb3QgQ0EgRzMwggIiMA0GCSqGSIb3DQEBAQUA
         | 
| 3407 | 
            +
            A4ICDwAwggIKAoICAQDAMYJhkuSUGwoqZdC+BqmHO1ES6nBBruL7dOoKjbmzTNyPtxNST1QY4Sxz
         | 
| 3408 | 
            +
            lZHFZjtqz6xjbYdT8PfxObegQ2OwxANdV6nnRM7EoYNl9lA+sX4WuDqKAtCWHwDNBSHvBm3dIZwZ
         | 
| 3409 | 
            +
            Q0WhxeiAysKtQGIXBsaqvPPW5vxQfmZCHzyLpnl5hkA1nyDvP+uLRx+PjsXUjrYsyUQE49RDdT/V
         | 
| 3410 | 
            +
            P68czH5GX6zfZBCK70bwkPAPLfSIC7Epqq+FqklYqL9joDiR5rPmd2jE+SoZhLsO4fWvieylL1Ag
         | 
| 3411 | 
            +
            dB4SQXMeJNnKziyhWTXAyB1GJ2Faj/lN03J5Zh6fFZAhLf3ti1ZwA0pJPn9pMRJpxx5cynoTi+jm
         | 
| 3412 | 
            +
            9WAPzJMshH/x/Gr8m0ed262IPfN2dTPXS6TIi/n1Q1hPy8gDVI+lhXgEGvNz8teHHUGf59gXzhqc
         | 
| 3413 | 
            +
            D0r83ERoVGjiQTz+LISGNzzNPy+i2+f3VANfWdP3kXjHi3dqFuVJhZBFcnAvkV34PmVACxmZySYg
         | 
| 3414 | 
            +
            WmjBNb9Pp1Hx2BErW+Canig7CjoKH8GB5S7wprlppYiU5msTf9FkPz2ccEblooV7WIQn3MSAPmea
         | 
| 3415 | 
            +
            mseaMQ4w7OYXQJXZRe0Blqq/DPNL0WP3E1jAuPP6Z92bfW1K/zJMtSU7/xxnD4UiWQWRkUF3gdCF
         | 
| 3416 | 
            +
            TIcQcf+eQxuulXUtgQIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFEDk5PIj
         | 
| 3417 | 
            +
            7zjKsK5Xf/IhMBY027ySMB0GA1UdDgQWBBRA5OTyI+84yrCuV3/yITAWNNu8kjAOBgNVHQ8BAf8E
         | 
| 3418 | 
            +
            BAMCAQYwDQYJKoZIhvcNAQEMBQADggIBACY7UeFNOPMyGLS0XuFlXsSUT9SnYaP4wM8zAQLpw6o1
         | 
| 3419 | 
            +
            D/GUE3d3NZ4tVlFEbuHGLige/9rsR82XRBf34EzC4Xx8MnpmyFq2XFNFV1pF1AWZLy4jVe5jaN/T
         | 
| 3420 | 
            +
            G3inEpQGAHUNcoTpLrxaatXeL1nHo+zSh2bbt1S1JKv0Q3jbSwTEb93mPmY+KfJLaHEih6D4sTNj
         | 
| 3421 | 
            +
            duMNhXJEIlU/HHzp/LgV6FL6qj6jITk1dImmasI5+njPtqzn59ZW/yOSLlALqbUHM/Q4X6RJpstl
         | 
| 3422 | 
            +
            cHboCoWASzY9M/eVVHUl2qzEc4Jl6VL1XP04lQJqaTDFHApXB64ipCz5xUG3uOyfT0gA+QEEVcys
         | 
| 3423 | 
            +
            +TIxxHWVBqB/0Y0n3bOppHKH/lmLmnp0Ft0WpWIp6zqW3IunaFnT63eROfjXy9mPX1onAX1daBli
         | 
| 3424 | 
            +
            2MjN9LdyR75bl87yraKZk62Uy5P2EgmVtqvXO9A/EcswFi55gORngS1d7XB4tmBZrOFdRWOPyN9y
         | 
| 3425 | 
            +
            aFvqHbgB8X7754qz41SgOAngPN5C8sLtLpvzHzW2NtjjgKGLzZlkD8Kqq7HK9W+eQ42EVJmzbsAS
         | 
| 3426 | 
            +
            ZthwEPEGNTNDqJwuuhQxzhB/HIbjj9LV+Hfsm6vxL2PZQl/gZ4FkkfGXL/xuJvYz+NO1+MRiqzFR
         | 
| 3427 | 
            +
            JQJ6+N1rZdVtTTDIZbpoFGWsJwt0ivKH
         | 
| 3428 | 
            +
            -----END CERTIFICATE-----
         | 
| 3429 | 
            +
             | 
| 3430 | 
            +
            TrustAsia Global Root CA G4
         | 
| 3431 | 
            +
            ===========================
         | 
| 3432 | 
            +
            -----BEGIN CERTIFICATE-----
         | 
| 3433 | 
            +
            MIICVTCCAdygAwIBAgIUTyNkuI6XY57GU4HBdk7LKnQV1tcwCgYIKoZIzj0EAwMwWjELMAkGA1UE
         | 
| 3434 | 
            +
            BhMCQ04xJTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dpZXMsIEluYy4xJDAiBgNVBAMMG1Ry
         | 
| 3435 | 
            +
            dXN0QXNpYSBHbG9iYWwgUm9vdCBDQSBHNDAeFw0yMTA1MjAwMjEwMjJaFw00NjA1MTkwMjEwMjJa
         | 
| 3436 | 
            +
            MFoxCzAJBgNVBAYTAkNOMSUwIwYDVQQKDBxUcnVzdEFzaWEgVGVjaG5vbG9naWVzLCBJbmMuMSQw
         | 
| 3437 | 
            +
            IgYDVQQDDBtUcnVzdEFzaWEgR2xvYmFsIFJvb3QgQ0EgRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNi
         | 
| 3438 | 
            +
            AATxs8045CVD5d4ZCbuBeaIVXxVjAd7Cq92zphtnS4CDr5nLrBfbK5bKfFJV4hrhPVbwLxYI+hW8
         | 
| 3439 | 
            +
            m7tH5j/uqOFMjPXTNvk4XatwmkcN4oFBButJ+bAp3TPsUKV/eSm4IJijYzBhMA8GA1UdEwEB/wQF
         | 
| 3440 | 
            +
            MAMBAf8wHwYDVR0jBBgwFoAUpbtKl86zK3+kMd6Xg1mDpm9xy94wHQYDVR0OBBYEFKW7SpfOsyt/
         | 
| 3441 | 
            +
            pDHel4NZg6ZvccveMA4GA1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjBe8usGzEkxn0AA
         | 
| 3442 | 
            +
            bbd+NvBNEU/zy4k6LHiRUKNbwMp1JvK/kF0LgoxgKJ/GcJpo5PECMFxYDlZ2z1jD1xCMuo6u47xk
         | 
| 3443 | 
            +
            dUfFVZDj/bpV6wfEU6s3qe4hsiFbYI89MvHVI5TWWA==
         | 
| 3444 | 
            +
            -----END CERTIFICATE-----
         | 
| 3445 | 
            +
             | 
| 3446 | 
            +
            CommScope Public Trust ECC Root-01
         | 
| 3447 | 
            +
            ==================================
         | 
| 3448 | 
            +
            -----BEGIN CERTIFICATE-----
         | 
| 3449 | 
            +
            MIICHTCCAaOgAwIBAgIUQ3CCd89NXTTxyq4yLzf39H91oJ4wCgYIKoZIzj0EAwMwTjELMAkGA1UE
         | 
| 3450 | 
            +
            BhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwiQ29tbVNjb3BlIFB1YmxpYyBUcnVz
         | 
| 3451 | 
            +
            dCBFQ0MgUm9vdC0wMTAeFw0yMTA0MjgxNzM1NDNaFw00NjA0MjgxNzM1NDJaME4xCzAJBgNVBAYT
         | 
| 3452 | 
            +
            AlVTMRIwEAYDVQQKDAlDb21tU2NvcGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1c3Qg
         | 
| 3453 | 
            +
            RUNDIFJvb3QtMDEwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARLNumuV16ocNfQj3Rid8NeeqrltqLx
         | 
| 3454 | 
            +
            eP0CflfdkXmcbLlSiFS8LwS+uM32ENEp7LXQoMPwiXAZu1FlxUOcw5tjnSCDPgYLpkJEhRGnSjot
         | 
| 3455 | 
            +
            6dZoL0hOUysHP029uax3OVejQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G
         | 
| 3456 | 
            +
            A1UdDgQWBBSOB2LAUN3GGQYARnQE9/OufXVNMDAKBggqhkjOPQQDAwNoADBlAjEAnDPfQeMjqEI2
         | 
| 3457 | 
            +
            Jpc1XHvr20v4qotzVRVcrHgpD7oh2MSg2NED3W3ROT3Ek2DS43KyAjB8xX6I01D1HiXo+k515liW
         | 
| 3458 | 
            +
            pDVfG2XqYZpwI7UNo5uSUm9poIyNStDuiw7LR47QjRE=
         | 
| 3459 | 
            +
            -----END CERTIFICATE-----
         | 
| 3460 | 
            +
             | 
| 3461 | 
            +
            CommScope Public Trust ECC Root-02
         | 
| 3462 | 
            +
            ==================================
         | 
| 3463 | 
            +
            -----BEGIN CERTIFICATE-----
         | 
| 3464 | 
            +
            MIICHDCCAaOgAwIBAgIUKP2ZYEFHpgE6yhR7H+/5aAiDXX0wCgYIKoZIzj0EAwMwTjELMAkGA1UE
         | 
| 3465 | 
            +
            BhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwiQ29tbVNjb3BlIFB1YmxpYyBUcnVz
         | 
| 3466 | 
            +
            dCBFQ0MgUm9vdC0wMjAeFw0yMTA0MjgxNzQ0NTRaFw00NjA0MjgxNzQ0NTNaME4xCzAJBgNVBAYT
         | 
| 3467 | 
            +
            AlVTMRIwEAYDVQQKDAlDb21tU2NvcGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1c3Qg
         | 
| 3468 | 
            +
            RUNDIFJvb3QtMDIwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAR4MIHoYx7l63FRD/cHB8o5mXxO1Q/M
         | 
| 3469 | 
            +
            MDALj2aTPs+9xYa9+bG3tD60B8jzljHz7aRP+KNOjSkVWLjVb3/ubCK1sK9IRQq9qEmUv4RDsNuE
         | 
| 3470 | 
            +
            SgMjGWdqb8FuvAY5N9GIIvejQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G
         | 
| 3471 | 
            +
            A1UdDgQWBBTmGHX/72DehKT1RsfeSlXjMjZ59TAKBggqhkjOPQQDAwNnADBkAjAmc0l6tqvmSfR9
         | 
| 3472 | 
            +
            Uj/UQQSugEODZXW5hYA4O9Zv5JOGq4/nich/m35rChJVYaoR4HkCMHfoMXGsPHED1oQmHhS48zs7
         | 
| 3473 | 
            +
            3u1Z/GtMMH9ZzkXpc2AVmkzw5l4lIhVtwodZ0LKOag==
         | 
| 3474 | 
            +
            -----END CERTIFICATE-----
         | 
| 3475 | 
            +
             | 
| 3476 | 
            +
            CommScope Public Trust RSA Root-01
         | 
| 3477 | 
            +
            ==================================
         | 
| 3478 | 
            +
            -----BEGIN CERTIFICATE-----
         | 
| 3479 | 
            +
            MIIFbDCCA1SgAwIBAgIUPgNJgXUWdDGOTKvVxZAplsU5EN0wDQYJKoZIhvcNAQELBQAwTjELMAkG
         | 
| 3480 | 
            +
            A1UEBhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwiQ29tbVNjb3BlIFB1YmxpYyBU
         | 
| 3481 | 
            +
            cnVzdCBSU0EgUm9vdC0wMTAeFw0yMTA0MjgxNjQ1NTRaFw00NjA0MjgxNjQ1NTNaME4xCzAJBgNV
         | 
| 3482 | 
            +
            BAYTAlVTMRIwEAYDVQQKDAlDb21tU2NvcGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1
         | 
| 3483 | 
            +
            c3QgUlNBIFJvb3QtMDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCwSGWjDR1C45Ft
         | 
| 3484 | 
            +
            nYSkYZYSwu3D2iM0GXb26v1VWvZVAVMP8syMl0+5UMuzAURWlv2bKOx7dAvnQmtVzslhsuitQDy6
         | 
| 3485 | 
            +
            uUEKBU8bJoWPQ7VAtYXR1HHcg0Hz9kXHgKKEUJdGzqAMxGBWBB0HW0alDrJLpA6lfO741GIDuZNq
         | 
| 3486 | 
            +
            ihS4cPgugkY4Iw50x2tBt9Apo52AsH53k2NC+zSDO3OjWiE260f6GBfZumbCk6SP/F2krfxQapWs
         | 
| 3487 | 
            +
            vCQz0b2If4b19bJzKo98rwjyGpg/qYFlP8GMicWWMJoKz/TUyDTtnS+8jTiGU+6Xn6myY5QXjQ/c
         | 
| 3488 | 
            +
            Zip8UlF1y5mO6D1cv547KI2DAg+pn3LiLCuz3GaXAEDQpFSOm117RTYm1nJD68/A6g3czhLmfTif
         | 
| 3489 | 
            +
            BSeolz7pUcZsBSjBAg/pGG3svZwG1KdJ9FQFa2ww8esD1eo9anbCyxooSU1/ZOD6K9pzg4H/kQO9
         | 
| 3490 | 
            +
            lLvkuI6cMmPNn7togbGEW682v3fuHX/3SZtS7NJ3Wn2RnU3COS3kuoL4b/JOHg9O5j9ZpSPcPYeo
         | 
| 3491 | 
            +
            KFgo0fEbNttPxP/hjFtyjMcmAyejOQoBqsCyMWCDIqFPEgkBEa801M/XrmLTBQe0MXXgDW1XT2mH
         | 
| 3492 | 
            +
            +VepuhX2yFJtocucH+X8eKg1mp9BFM6ltM6UCBwJrVbl2rZJmkrqYxhTnCwuwwIDAQABo0IwQDAP
         | 
| 3493 | 
            +
            BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUN12mmnQywsL5x6YVEFm4
         | 
| 3494 | 
            +
            5P3luG0wDQYJKoZIhvcNAQELBQADggIBAK+nz97/4L1CjU3lIpbfaOp9TSp90K09FlxD533Ahuh6
         | 
| 3495 | 
            +
            NWPxzIHIxgvoLlI1pKZJkGNRrDSsBTtXAOnTYtPZKdVUvhwQkZyybf5Z/Xn36lbQnmhUQo8mUuJM
         | 
| 3496 | 
            +
            3y+Xpi/SB5io82BdS5pYV4jvguX6r2yBS5KPQJqTRlnLX3gWsWc+QgvfKNmwrZggvkN80V4aCRck
         | 
| 3497 | 
            +
            jXtdlemrwWCrWxhkgPut4AZ9HcpZuPN4KWfGVh2vtrV0KnahP/t1MJ+UXjulYPPLXAziDslg+Mkf
         | 
| 3498 | 
            +
            Foom3ecnf+slpoq9uC02EJqxWE2aaE9gVOX2RhOOiKy8IUISrcZKiX2bwdgt6ZYD9KJ0DLwAHb/W
         | 
| 3499 | 
            +
            NyVntHKLr4W96ioDj8z7PEQkguIBpQtZtjSNMgsSDesnwv1B10A8ckYpwIzqug/xBpMu95yo9GA+
         | 
| 3500 | 
            +
            o/E4Xo4TwbM6l4c/ksp4qRyv0LAbJh6+cOx69TOY6lz/KwsETkPdY34Op054A5U+1C0wlREQKC6/
         | 
| 3501 | 
            +
            oAI+/15Z0wUOlV9TRe9rh9VIzRamloPh37MG88EU26fsHItdkJANclHnYfkUyq+Dj7+vsQpZXdxc
         | 
| 3502 | 
            +
            1+SWrVtgHdqul7I52Qb1dgAT+GhMIbA1xNxVssnBQVocicCMb3SgazNNtQEo/a2tiRc7ppqEvOuM
         | 
| 3503 | 
            +
            6sRxJKi6KfkIsidWNTJf6jn7MZrVGczw
         | 
| 3504 | 
            +
            -----END CERTIFICATE-----
         | 
| 3505 | 
            +
             | 
| 3506 | 
            +
            CommScope Public Trust RSA Root-02
         | 
| 3507 | 
            +
            ==================================
         | 
| 3508 | 
            +
            -----BEGIN CERTIFICATE-----
         | 
| 3509 | 
            +
            MIIFbDCCA1SgAwIBAgIUVBa/O345lXGN0aoApYYNK496BU4wDQYJKoZIhvcNAQELBQAwTjELMAkG
         | 
| 3510 | 
            +
            A1UEBhMCVVMxEjAQBgNVBAoMCUNvbW1TY29wZTErMCkGA1UEAwwiQ29tbVNjb3BlIFB1YmxpYyBU
         | 
| 3511 | 
            +
            cnVzdCBSU0EgUm9vdC0wMjAeFw0yMTA0MjgxNzE2NDNaFw00NjA0MjgxNzE2NDJaME4xCzAJBgNV
         | 
| 3512 | 
            +
            BAYTAlVTMRIwEAYDVQQKDAlDb21tU2NvcGUxKzApBgNVBAMMIkNvbW1TY29wZSBQdWJsaWMgVHJ1
         | 
| 3513 | 
            +
            c3QgUlNBIFJvb3QtMDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDh+g77aAASyE3V
         | 
| 3514 | 
            +
            rCLENQE7xVTlWXZjpX/rwcRqmL0yjReA61260WI9JSMZNRTpf4mnG2I81lDnNJUDMrG0kyI9p+Kx
         | 
| 3515 | 
            +
            7eZ7Ti6Hmw0zdQreqjXnfuU2mKKuJZ6VszKWpCtYHu8//mI0SFHRtI1CrWDaSWqVcN3SAOLMV2MC
         | 
| 3516 | 
            +
            e5bdSZdbkk6V0/nLKR8YSvgBKtJjCW4k6YnS5cciTNxzhkcAqg2Ijq6FfUrpuzNPDlJwnZXjfG2W
         | 
| 3517 | 
            +
            Wy09X6GDRl224yW4fKcZgBzqZUPckXk2LHR88mcGyYnJ27/aaL8j7dxrrSiDeS/sOKUNNwFnJ5rp
         | 
| 3518 | 
            +
            M9kzXzehxfCrPfp4sOcsn/Y+n2Dg70jpkEUeBVF4GiwSLFworA2iI540jwXmojPOEXcT1A6kHkIf
         | 
| 3519 | 
            +
            hs1w/tkuFT0du7jyU1fbzMZ0KZwYszZ1OC4PVKH4kh+Jlk+71O6d6Ts2QrUKOyrUZHk2EOH5kQMr
         | 
| 3520 | 
            +
            eyBUzQ0ZGshBMjTRsJnhkB4BQDa1t/qp5Xd1pCKBXbCL5CcSD1SIxtuFdOa3wNemKfrb3vOTlycE
         | 
| 3521 | 
            +
            VS8KbzfFPROvCgCpLIscgSjX74Yxqa7ybrjKaixUR9gqiC6vwQcQeKwRoi9C8DfF8rhW3Q5iLc4t
         | 
| 3522 | 
            +
            Vn5V8qdE9isy9COoR+jUKgF4z2rDN6ieZdIs5fq6M8EGRPbmz6UNp2YINIos8wIDAQABo0IwQDAP
         | 
| 3523 | 
            +
            BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUR9DnsSL/nSz12Vdgs7Gx
         | 
| 3524 | 
            +
            cJXvYXowDQYJKoZIhvcNAQELBQADggIBAIZpsU0v6Z9PIpNojuQhmaPORVMbc0RTAIFhzTHjCLqB
         | 
| 3525 | 
            +
            KCh6krm2qMhDnscTJk3C2OVVnJJdUNjCK9v+5qiXz1I6JMNlZFxHMaNlNRPDk7n3+VGXu6TwYofF
         | 
| 3526 | 
            +
            1gbTl4MgqX67tiHCpQ2EAOHyJxCDut0DgdXdaMNmEMjRdrSzbymeAPnCKfWxkxlSaRosTKCL4BWa
         | 
| 3527 | 
            +
            MS/TiJVZbuXEs1DIFAhKm4sTg7GkcrI7djNB3NyqpgdvHSQSn8h2vS/ZjvQs7rfSOBAkNlEv41xd
         | 
| 3528 | 
            +
            gSGn2rtO/+YHqP65DSdsu3BaVXoT6fEqSWnHX4dXTEN5bTpl6TBcQe7rd6VzEojov32u5cSoHw2O
         | 
| 3529 | 
            +
            HG1QAk8mGEPej1WFsQs3BWDJVTkSBKEqz3EWnzZRSb9wO55nnPt7eck5HHisd5FUmrh1CoFSl+Nm
         | 
| 3530 | 
            +
            YWvtPjgelmFV4ZFUjO2MJB+ByRCac5krFk5yAD9UG/iNuovnFNa2RU9g7Jauwy8CTl2dlklyALKr
         | 
| 3531 | 
            +
            dVwPaFsdZcJfMw8eD/A7hvWwTruc9+olBdytoptLFwG+Qt81IR2tq670v64fG9PiO/yzcnMcmyiQ
         | 
| 3532 | 
            +
            iRM9HcEARwmWmjgb3bHPDcK0RPOWlc4yOo80nOAXx17Org3bhzjlP1v9mxnhMUF6cKojawHhRUzN
         | 
| 3533 | 
            +
            lM47ni3niAIi9G7oyOzWPPO5std3eqx7
         | 
| 3534 | 
            +
            -----END CERTIFICATE-----
         | 
    
        data/lib/excon/connection.rb
    CHANGED
    
    | @@ -230,6 +230,13 @@ module Excon | |
| 230 230 | 
             
                def request(params={}, &block)
         | 
| 231 231 | 
             
                  # @data has defaults, merge in new params to override
         | 
| 232 232 | 
             
                  datum = @data.merge(params)
         | 
| 233 | 
            +
             | 
| 234 | 
            +
                  # Set the deadline for the current request in order to determine when we have run out of time.
         | 
| 235 | 
            +
                  # Only set when a request timeout has been defined.
         | 
| 236 | 
            +
                  if datum[:timeout]
         | 
| 237 | 
            +
                    datum[:deadline] = Process.clock_gettime(Process::CLOCK_MONOTONIC) + datum[:timeout]
         | 
| 238 | 
            +
                  end
         | 
| 239 | 
            +
             | 
| 233 240 | 
             
                  datum[:headers] = @data[:headers].merge(datum[:headers] || {})
         | 
| 234 241 |  | 
| 235 242 | 
             
                  validate_params(:request, params, datum[:middlewares])
         | 
    
        data/lib/excon/constants.rb
    CHANGED
    
    | @@ -62,6 +62,7 @@ module Excon | |
| 62 62 | 
             
                :resolv_resolver,
         | 
| 63 63 | 
             
                :response_block,
         | 
| 64 64 | 
             
                :stubs,
         | 
| 65 | 
            +
                :timeout,
         | 
| 65 66 | 
             
                :user,
         | 
| 66 67 | 
             
                :versions,
         | 
| 67 68 | 
             
                :write_timeout
         | 
| @@ -171,6 +172,7 @@ module Excon | |
| 171 172 | 
             
                :stubs               => :global,
         | 
| 172 173 | 
             
                :tcp_nodelay         => false,
         | 
| 173 174 | 
             
                :thread_safe_sockets => true,
         | 
| 175 | 
            +
                :timeout             => nil,
         | 
| 174 176 | 
             
                :uri_parser          => URI,
         | 
| 175 177 | 
             
                :versions            => VERSIONS,
         | 
| 176 178 | 
             
                :write_timeout       => 60
         | 
    
        data/lib/excon/socket.rb
    CHANGED
    
    | @@ -25,6 +25,13 @@ module Excon | |
| 25 25 | 
             
                else # Ruby <= 2.0
         | 
| 26 26 | 
             
                  [Errno::EAGAIN, Errno::EWOULDBLOCK, IO::WaitWritable]
         | 
| 27 27 | 
             
                end
         | 
| 28 | 
            +
                # Maps a socket operation to a timeout property.
         | 
| 29 | 
            +
                OPERATION_TO_TIMEOUT = {
         | 
| 30 | 
            +
                  :connect_read => :connect_timeout,
         | 
| 31 | 
            +
                  :connect_write => :connect_timeout,
         | 
| 32 | 
            +
                  :read => :read_timeout,
         | 
| 33 | 
            +
                  :write => :write_timeout
         | 
| 34 | 
            +
                }.freeze
         | 
| 28 35 |  | 
| 29 36 | 
             
                def params
         | 
| 30 37 | 
             
                  Excon.display_warning('Excon::Socket#params is deprecated use Excon::Socket#data instead.')
         | 
| @@ -304,17 +311,33 @@ module Excon | |
| 304 311 | 
             
                end
         | 
| 305 312 |  | 
| 306 313 | 
             
                def select_with_timeout(socket, type)
         | 
| 314 | 
            +
                  timeout_kind = type
         | 
| 315 | 
            +
                  timeout = @data[OPERATION_TO_TIMEOUT[type]]
         | 
| 316 | 
            +
             | 
| 317 | 
            +
                  # Check whether the request has a timeout configured.
         | 
| 318 | 
            +
                  if @data.include?(:deadline)
         | 
| 319 | 
            +
                    request_timeout = request_time_remaining
         | 
| 320 | 
            +
             | 
| 321 | 
            +
                    # If the time remaining until the request times out is less than the timeout for the type of select,
         | 
| 322 | 
            +
                    # use the time remaining as the timeout instead.
         | 
| 323 | 
            +
                    if request_timeout < timeout
         | 
| 324 | 
            +
                      timeout_kind = :request
         | 
| 325 | 
            +
                      timeout = request_timeout
         | 
| 326 | 
            +
                    end
         | 
| 327 | 
            +
                  end
         | 
| 328 | 
            +
             | 
| 307 329 | 
             
                  select = case type
         | 
| 308 330 | 
             
                  when :connect_read
         | 
| 309 | 
            -
                    IO.select([socket], nil, nil,  | 
| 331 | 
            +
                    IO.select([socket], nil, nil, timeout)
         | 
| 310 332 | 
             
                  when :connect_write
         | 
| 311 | 
            -
                    IO.select(nil, [socket], nil,  | 
| 333 | 
            +
                    IO.select(nil, [socket], nil, timeout)
         | 
| 312 334 | 
             
                  when :read
         | 
| 313 | 
            -
                    IO.select([socket], nil, nil,  | 
| 335 | 
            +
                    IO.select([socket], nil, nil, timeout)
         | 
| 314 336 | 
             
                  when :write
         | 
| 315 | 
            -
                    IO.select(nil, [socket], nil,  | 
| 337 | 
            +
                    IO.select(nil, [socket], nil, timeout)
         | 
| 316 338 | 
             
                  end
         | 
| 317 | 
            -
             | 
| 339 | 
            +
             | 
| 340 | 
            +
                  select || raise(Excon::Errors::Timeout.new("#{timeout_kind} timeout reached"))
         | 
| 318 341 | 
             
                end
         | 
| 319 342 |  | 
| 320 343 | 
             
                def unpacked_sockaddr
         | 
| @@ -324,5 +347,16 @@ module Excon | |
| 324 347 | 
             
                    raise
         | 
| 325 348 | 
             
                  end
         | 
| 326 349 | 
             
                end
         | 
| 350 | 
            +
             | 
| 351 | 
            +
                # Returns the remaining time in seconds until we reach the deadline for the request timeout.
         | 
| 352 | 
            +
                # Raises an exception if we have exceeded the request timeout's deadline.
         | 
| 353 | 
            +
                def request_time_remaining
         | 
| 354 | 
            +
                  now = Process.clock_gettime(Process::CLOCK_MONOTONIC)
         | 
| 355 | 
            +
                  deadline = @data[:deadline]
         | 
| 356 | 
            +
                  
         | 
| 357 | 
            +
                  raise(Excon::Errors::Timeout.new('request timeout reached')) if now >= deadline
         | 
| 358 | 
            +
             | 
| 359 | 
            +
                  deadline - now
         | 
| 360 | 
            +
                end
         | 
| 327 361 | 
             
              end
         | 
| 328 362 | 
             
            end
         | 
    
        data/lib/excon/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: excon
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.106.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - dpiddy (Dan Peterson)
         | 
| @@ -10,7 +10,7 @@ authors: | |
| 10 10 | 
             
            autorequire:
         | 
| 11 11 | 
             
            bindir: bin
         | 
| 12 12 | 
             
            cert_chain: []
         | 
| 13 | 
            -
            date: 2023- | 
| 13 | 
            +
            date: 2023-12-13 00:00:00.000000000 Z
         | 
| 14 14 | 
             
            dependencies:
         | 
| 15 15 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 16 16 | 
             
              name: rspec
         |