From d3fb8f4866b1ac8967849ebf5697ff06c6996032 Mon Sep 17 00:00:00 2001 From: William Woodruff Date: Wed, 25 Sep 2024 14:08:14 -0400 Subject: [PATCH] fetcher: handle 404s versions: remove sigstore bundles from some chms Signed-off-by: William Woodruff --- fetcher.py | 9 +++-- versions/3.10.1.json | 57 ------------------------------ versions/3.10.11.json | 56 ----------------------------- versions/3.3.5rc1.json | 80 +++++++++++++++++++++++++++--------------- 4 files changed, 59 insertions(+), 143 deletions(-) diff --git a/fetcher.py b/fetcher.py index 883fe05..4fec908 100644 --- a/fetcher.py +++ b/fetcher.py @@ -89,8 +89,13 @@ def do_sigstore(version: Version) -> None: continue log(f"fetching bundle at {sigstore_url}") - bundle = urllib3.request("GET", sigstore_url).json() - artifact["sigstore"] = bundle + # Known 404s due to intentionally removed bundles: + # https://www.python.org/ftp/python/3.10.1/python3101.chm.sigstore + # https://www.python.org/ftp/python/3.10.11/python31011.chm.sigstore + resp = urllib3.request("GET", sigstore_url) + if resp.status != 200: + continue + artifact["sigstore"] = resp.json() input.write_text(json.dumps(artifacts, indent=4)) diff --git a/versions/3.10.1.json b/versions/3.10.1.json index f1d68ad..7d3bbe5 100644 --- a/versions/3.10.1.json +++ b/versions/3.10.1.json @@ -440,63 +440,6 @@ "File Size": "9.1\u00a0MB", "GPG": "https://www.python.org/ftp/python/3.10.1/python3101.chm.asc", "Sigstore": "https://www.python.org/ftp/python/3.10.1/python3101.chm.sigstore" - }, - "sigstore": { - "mediaType": "application/vnd.dev.sigstore.bundle+json;version=0.1", - "verificationMaterial": { - "x509CertificateChain": { - "certificates": [ - { - "rawBytes": "MIIC6DCCAm+gAwIBAgIUIlOp3T6YhGaYE4LeRUx2WNNFkNswCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjMwNDA1MTEyMTIzWhcNMjMwNDA1MTEzMTIzWjAAMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEg+57EmupTnA71+U/3LQW73SNqvsgaF7gWDCAiUeiQ2AZOjCV7H6aIrSEArswU2mRou7vMWB55LPIFnC6Ir9H8q11iOeB07GwrtpQmbGq2h0k/Pvid3fyD8O8Uw034u4Io4IBcTCCAW0wDgYDVR0PAQH/BAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBRZ/lxZi4/m8HaYkX1XdKtF/XU1FTAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzAiBgNVHREBAf8EGDAWgRRwYWJsb2dzYWxAcHl0aG9uLm9yZzApBgorBgEEAYO/MAEBBBtodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20wKwYKKwYBBAGDvzABCAQdDBtodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20wgYkGCisGAQQB1nkCBAIEewR5AHcAdQDdPTBqxscRMmMZHhyZZzcCokpeuN48rf+HinKALynujgAAAYdRJmRkAAAEAwBGMEQCICoK/rk06MS8q6vEPlj2OoUczajtNSzI/1iQEaGFGr9GAiBVPPlOW5QXSNBEzgDvhCRk0TkZNqyfTEGF+9mQO6RF9DAKBggqhkjOPQQDAwNnADBkAjArnbxhrHepIV7qtQj7Jw5I+WRPp1t/YLD/koMpASU/28stepv1dsafJMUKbD4FjfACMBJ9M0LgDpI6Frn2LlL+qG8WOqBny3Uh/dLcFbhNaDcbG0/BAIVBK/RWvT69klDwHg==" - } - ] - }, - "tlogEntries": [ - { - "logIndex": "17166821", - "logId": { - "keyId": "wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0=" - }, - "kindVersion": { - "kind": "hashedrekord", - "version": "0.0.1" - }, - "integratedTime": "1680693683", - "inclusionPromise": { - "signedEntryTimestamp": "MEYCIQCsVR66qXYLJb2JAE5Uq7nUib0N6taIbzEnROMMqyQO2AIhAMfi5xamOrbj6MVA/G+iHByH16hbnZFnIgBXUJbOt2pj" - }, - "inclusionProof": { - "logIndex": "13003390", - "rootHash": "wRMpFO4sHGLvAu8RWo0t+SdAcG6Vk5MFd4Pt1+58dP0=", - "treeSize": "13003391", - "hashes": [ - "W2oOi/juXhntDFgjvUvjK3JPV4KqqEi3iN42/XoyEkg=", - "lqcfJE9jaeQ8tQrSp/Zf6Jm+0xoDZve6orTWVLLm0B4=", - "kecK+nKYebz2crQ+kRIcewoA4SA/WaZc+d6ZNKCKC8M=", - "XDhNY8LH5uI3SnYKKZ77QuK6qyHDs8W1JJsVSfbhbYE=", - "z9d28tnwtZfQBRHMNq+44CJFTH+67+jk4fGBLGpEXWk=", - "liXeYbEgi5+rhKXd7e3guRD/PnhBwmmG1Z78/L38xB0=", - "eR5zESslpvrl9/ZoqcZ1Pdnctij6Xnp20D2sbwQcECI=", - "wYzdmZhfMtdTNIfN9R/BIX/3VUcYnXRn5YBRToZ00Cc=", - "sIJ58XtXEsjFexZsO96gxlhHWIOCotbXfAUWBmR1Itc=", - "6tZUIC09AL16i2RajA6RVsVxVrJl988IUvBCTkLNmoQ=", - "SsYbAUmnm/g4tJSprjjepcNwUqpsQr9gt1x3u//2nOo=", - "0HFXFmX3PvpPBIXl7iQdq5FO1Mi5L2ZELeRba4qTwus=", - "1jCSwid4Bdy0yzYb6m4JrH7Z6ekZJyS49R5X5UvfNTE=", - "ngQAZt/l8CAEZYOGrGbPC7b/6FftccszfH9VRez0VYs=" - ] - }, - "canonicalizedBody": "eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI3YTFiYzVmODMwMTRhMTI0NjdiYWFhMGFjNGUxMmFhYjIyMzQ4ZWNlZmIxY2YwY2QyMGM0YTQyZDZhMDc5NWUyIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1HWUNNUURDdEw0U3VyMm5tNUF1Q2RtckpJSi9xRnBaYVhGT2RadVN4a0Z3Qk5lU01GdmZrd0FMN3pDYndKZnZhb1hxRE5JQ01RRG1tL2FudXFraURYSFkxVUhVSEdBQWt2ZUhUZ1JZOXoyajFFWURIMVhlazJ1RkhFTWd4WkdxZDNLTTJibFhCbXM9IiwicHVibGljS2V5Ijp7ImNvbnRlbnQiOiJMUzB0TFMxQ1JVZEpUaUJEUlZKVVNVWkpRMEZVUlMwdExTMHRDazFKU1VNMlJFTkRRVzByWjBGM1NVSkJaMGxWU1d4UGNETlVObGxvUjJGWlJUUk1aVkpWZURKWFRrNUdhMDV6ZDBObldVbExiMXBKZW1vd1JVRjNUWGNLVG5wRlZrMUNUVWRCTVZWRlEyaE5UV015Ykc1ak0xSjJZMjFWZFZwSFZqSk5ValIzU0VGWlJGWlJVVVJGZUZaNllWZGtlbVJIT1hsYVV6RndZbTVTYkFwamJURnNXa2RzYUdSSFZYZElhR05PVFdwTmQwNUVRVEZOVkVWNVRWUkplbGRvWTA1TmFrMTNUa1JCTVUxVVJYcE5WRWw2VjJwQlFVMUlXWGRGUVZsSUNrdHZXa2w2YWpCRFFWRlpSa3MwUlVWQlEwbEVXV2RCUldjck5UZEZiWFZ3Vkc1Qk56RXJWUzh6VEZGWE56TlRUbkYyYzJkaFJqZG5WMFJEUVdsVlpXa0tVVEpCV2s5cVExWTNTRFpoU1hKVFJVRnljM2RWTW0xU2IzVTNkazFYUWpVMVRGQkpSbTVETmtseU9VZzRjVEV4YVU5bFFqQTNSM2R5ZEhCUmJXSkhjUW95YURCckwxQjJhV1F6Wm5sRU9FODRWWGN3TXpSMU5FbHZORWxDWTFSRFEwRlhNSGRFWjFsRVZsSXdVRUZSU0M5Q1FWRkVRV2RsUVUxQ1RVZEJNVlZrQ2twUlVVMU5RVzlIUTBOelIwRlJWVVpDZDAxRVRVSXdSMEV4VldSRVoxRlhRa0pTV2k5c2VGcHBOQzl0T0VoaFdXdFlNVmhrUzNSR0wxaFZNVVpVUVdZS1FtZE9Wa2hUVFVWSFJFRlhaMEpVWmpBcmJsQldhVkZTYkhadGJ6SlBhMjlXWVV4SFRHaG9hMUI2UVdsQ1owNVdTRkpGUWtGbU9FVkhSRUZYWjFKU2R3cFpWMHB6WWpKa2VsbFhlRUZqU0d3d1lVYzVkVXh0T1hsYWVrRndRbWR2Y2tKblJVVkJXVTh2VFVGRlFrSkNkRzlrU0ZKM1kzcHZka3d5Um1wWk1qa3hDbUp1VW5wTWJXUjJZakprYzFwVE5XcGlNakIzUzNkWlMwdDNXVUpDUVVkRWRucEJRa05CVVdSRVFuUnZaRWhTZDJONmIzWk1Na1pxV1RJNU1XSnVVbm9LVEcxa2RtSXlaSE5hVXpWcVlqSXdkMmRaYTBkRGFYTkhRVkZSUWpGdWEwTkNRVWxGWlhkU05VRklZMEZrVVVSa1VGUkNjWGh6WTFKTmJVMWFTR2g1V2dwYWVtTkRiMnR3WlhWT05EaHlaaXRJYVc1TFFVeDViblZxWjBGQlFWbGtVa3B0VW10QlFVRkZRWGRDUjAxRlVVTkpRMjlMTDNKck1EWk5Vemh4Tm5aRkNsQnNhakpQYjFWamVtRnFkRTVUZWtrdk1XbFJSV0ZIUmtkeU9VZEJhVUpXVUZCc1QxYzFVVmhUVGtKRmVtZEVkbWhEVW1zd1ZHdGFUbkY1WmxSRlIwWUtLemx0VVU4MlVrWTVSRUZMUW1kbmNXaHJhazlRVVZGRVFYZE9ia0ZFUW10QmFrRnlibUo0YUhKSVpYQkpWamR4ZEZGcU4wcDNOVWtyVjFKUWNERjBMd3BaVEVRdmEyOU5jRUZUVlM4eU9ITjBaWEIyTVdSellXWktUVlZMWWtRMFJtcG1RVU5OUWtvNVRUQk1aMFJ3U1RaR2NtNHlUR3hNSzNGSE9GZFBjVUp1Q25relZXZ3ZaRXhqUm1Kb1RtRkVZMkpITUM5Q1FVbFdRa3N2VWxkMlZEWTVhMnhFZDBoblBUMEtMUzB0TFMxRlRrUWdRMFZTVkVsR1NVTkJWRVV0TFMwdExRbz0ifX19fQ==" - } - ] - }, - "messageSignature": { - "messageDigest": { - "algorithm": "SHA2_256", - "digest": "ehvF+DAUoSRnuqoKxOEqqyI0js77HPDNIMSkLWoHleI=" - }, - "signature": "MGYCMQDCtL4Sur2nm5AuCdmrJIJ/qFpZaXFOdZuSxkFwBNeSMFvfkwAL7zCbwJfvaoXqDNICMQDmm/anuqkiDXHY1UHUHGAAkveHTgRY9z2j1EYDH1Xek2uFHEMgxZGqd3KM2blXBms=" - } } }, { diff --git a/versions/3.10.11.json b/versions/3.10.11.json index bebc1d1..30db831 100644 --- a/versions/3.10.11.json +++ b/versions/3.10.11.json @@ -440,62 +440,6 @@ "File Size": "9.0\u00a0MB", "GPG": "https://www.python.org/ftp/python/3.10.11/python31011.chm.asc", "Sigstore": "https://www.python.org/ftp/python/3.10.11/python31011.chm.sigstore" - }, - "sigstore": { - "mediaType": "application/vnd.dev.sigstore.bundle+json;version=0.1", - "verificationMaterial": { - "x509CertificateChain": { - "certificates": [ - { - "rawBytes": "MIIC6TCCAm+gAwIBAgIUGw9ZYhr5mk0I5wzFEjkk8JYsLdUwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjMwNDA1MTEyMjA3WhcNMjMwNDA1MTEzMjA3WjAAMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE5A2zW+dZLp3LRqCsWwqvEvTumopRN6XRFOlUqW0BYCDUJNCmOotEDgEiZVgAhrNmg27T3I70Ru2VuXRWm5q54Ue+N5EelQTkzsmlwAA497qTZqGd7rFkmvN/X+xoMmxvo4IBcTCCAW0wDgYDVR0PAQH/BAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBSuHlK3L40aXAsNGoy6J/VFHrfgoTAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzAiBgNVHREBAf8EGDAWgRRwYWJsb2dzYWxAcHl0aG9uLm9yZzApBgorBgEEAYO/MAEBBBtodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20wKwYKKwYBBAGDvzABCAQdDBtodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20wgYkGCisGAQQB1nkCBAIEewR5AHcAdQDdPTBqxscRMmMZHhyZZzcCokpeuN48rf+HinKALynujgAAAYdRJxDFAAAEAwBGMEQCIB+TXKetMXDUlEwEGp82gl8ZIpFKzGyzOvKpBZ4F+skYAiBR20iSiP2RWdpGe4Ojxu7yEexvVF9R33+3IefQc2kmfjAKBggqhkjOPQQDAwNoADBlAjBE0GpTk6ffk9BwFUXEjYojxzcZ8BD15dJ3tYCr1kUVbKRGLnMv0YwqOW3OaVe6BncCMQCt5cyHJDi4r9vttSXifLnc9Vw0qBBo5RhX27L901wuHG+5/YPExiLZWRLGMU1ARWQ=" - } - ] - }, - "tlogEntries": [ - { - "logIndex": "17166869", - "logId": { - "keyId": "wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0=" - }, - "kindVersion": { - "kind": "hashedrekord", - "version": "0.0.1" - }, - "integratedTime": "1680693727", - "inclusionPromise": { - "signedEntryTimestamp": "MEUCIQCC6IA9llndd/Y/YvLG4vS+SzzOk4y7b2JICPXLRqbwwAIgPG4KnLYBjV/poBMrwwN/OjNIfxpcVhNNaQRuh4IAqEM=" - }, - "inclusionProof": { - "logIndex": "13003438", - "rootHash": "QVe4xX8Pi5Cg55gkGw8xR/8V//ntfzurR0G9XhU72ak=", - "treeSize": "13003439", - "hashes": [ - "zic3WWAGnUVjYRbx08kodSDDYpTsGYBvCRRp7OynDOc=", - "hxYE2+eyxI75ioTUPNRqwMZC7YpitYIOkMutLHBfspA=", - "8+3BjdfcW6cvh5lOqwX1fWFxJze9TQ4+Ucwp+aVW90o=", - "TeRRUCRAYZ8ejGjrWQw4kBhc5pnTP4Azw61hMzCzAfk=", - "zwi552zKmAPr+Ex1YcPPJ8Xb8lXPb+jVEm88JRkg24s=", - "eR5zESslpvrl9/ZoqcZ1Pdnctij6Xnp20D2sbwQcECI=", - "wYzdmZhfMtdTNIfN9R/BIX/3VUcYnXRn5YBRToZ00Cc=", - "sIJ58XtXEsjFexZsO96gxlhHWIOCotbXfAUWBmR1Itc=", - "6tZUIC09AL16i2RajA6RVsVxVrJl988IUvBCTkLNmoQ=", - "SsYbAUmnm/g4tJSprjjepcNwUqpsQr9gt1x3u//2nOo=", - "0HFXFmX3PvpPBIXl7iQdq5FO1Mi5L2ZELeRba4qTwus=", - "1jCSwid4Bdy0yzYb6m4JrH7Z6ekZJyS49R5X5UvfNTE=", - "ngQAZt/l8CAEZYOGrGbPC7b/6FftccszfH9VRez0VYs=" - ] - }, - "canonicalizedBody": "eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJlNjZkMmNlMWI4YTFjZDE2YWUzMWU2ZjBlNjBhZDFjZTVlZGNmNzg1MTg5MGJkZWU5MzMzYmZjNTJlYjk1NTYxIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1HUUNNR0tSNW1NcDFRRGVMNGdMVkRuckNmaXJWdVFXQ25GYzIwZDU0ZlVad2FTWi9UbjdkblRrM1ptNkRJSnp5SDdhb0FJd0V3eGdFd3F0UStUb000NVgwRGxONE85TitPdGcrNmoxMDhRaVM0UWJrZmRIcmRhLy9CY1BCKzRrVlJkUVVjd1AiLCJwdWJsaWNLZXkiOnsiY29udGVudCI6IkxTMHRMUzFDUlVkSlRpQkRSVkpVU1VaSlEwRlVSUzB0TFMwdENrMUpTVU0yVkVORFFXMHJaMEYzU1VKQlowbFZSM2M1V2xsb2NqVnRhekJKTlhkNlJrVnFhMnM0U2xselRHUlZkME5uV1VsTGIxcEplbW93UlVGM1RYY0tUbnBGVmsxQ1RVZEJNVlZGUTJoTlRXTXliRzVqTTFKMlkyMVZkVnBIVmpKTlVqUjNTRUZaUkZaUlVVUkZlRlo2WVZka2VtUkhPWGxhVXpGd1ltNVNiQXBqYlRGc1drZHNhR1JIVlhkSWFHTk9UV3BOZDA1RVFURk5WRVY1VFdwQk0xZG9ZMDVOYWsxM1RrUkJNVTFVUlhwTmFrRXpWMnBCUVUxSVdYZEZRVmxJQ2t0dldrbDZhakJEUVZGWlJrczBSVVZCUTBsRVdXZEJSVFZCTW5wWEsyUmFUSEF6VEZKeFEzTlhkM0YyUlhaVWRXMXZjRkpPTmxoU1JrOXNWWEZYTUVJS1dVTkVWVXBPUTIxUGIzUkZSR2RGYVZwV1owRm9jazV0WnpJM1ZETkpOekJTZFRKV2RWaFNWMjAxY1RVMFZXVXJUalZGWld4UlZHdDZjMjFzZDBGQk5BbzVOM0ZVV25GSFpEZHlSbXR0ZGs0dldDdDRiMDF0ZUhadk5FbENZMVJEUTBGWE1IZEVaMWxFVmxJd1VFRlJTQzlDUVZGRVFXZGxRVTFDVFVkQk1WVmtDa3BSVVUxTlFXOUhRME56UjBGUlZVWkNkMDFFVFVJd1IwRXhWV1JFWjFGWFFrSlRkVWhzU3pOTU5EQmhXRUZ6VGtkdmVUWktMMVpHU0hKbVoyOVVRV1lLUW1kT1ZraFRUVVZIUkVGWFowSlVaakFyYmxCV2FWRlNiSFp0YnpKUGEyOVdZVXhIVEdob2ExQjZRV2xDWjA1V1NGSkZRa0ZtT0VWSFJFRlhaMUpTZHdwWlYwcHpZakprZWxsWGVFRmpTR3d3WVVjNWRVeHRPWGxhZWtGd1FtZHZja0puUlVWQldVOHZUVUZGUWtKQ2RHOWtTRkozWTNwdmRrd3lSbXBaTWpreENtSnVVbnBNYldSMllqSmtjMXBUTldwaU1qQjNTM2RaUzB0M1dVSkNRVWRFZG5wQlFrTkJVV1JFUW5SdlpFaFNkMk42YjNaTU1rWnFXVEk1TVdKdVVub0tURzFrZG1JeVpITmFVelZxWWpJd2QyZFphMGREYVhOSFFWRlJRakZ1YTBOQ1FVbEZaWGRTTlVGSVkwRmtVVVJrVUZSQ2NYaHpZMUpOYlUxYVNHaDVXZ3BhZW1ORGIydHdaWFZPTkRoeVppdElhVzVMUVV4NWJuVnFaMEZCUVZsa1VrcDRSRVpCUVVGRlFYZENSMDFGVVVOSlFpdFVXRXRsZEUxWVJGVnNSWGRGQ2tkd09ESm5iRGhhU1hCR1MzcEhlWHBQZGt0d1FsbzBSaXR6YTFsQmFVSlNNakJwVTJsUU1sSlhaSEJIWlRSUGFuaDFOM2xGWlhoMlZrWTVVak16S3pNS1NXVm1VV015YTIxbWFrRkxRbWRuY1docmFrOVFVVkZFUVhkT2IwRkVRbXhCYWtKRk1FZHdWR3MyWm1ack9VSjNSbFZZUldwWmIycDRlbU5hT0VKRU1RbzFaRW96ZEZsRGNqRnJWVlppUzFKSFRHNU5kakJaZDNGUFZ6TlBZVlpsTmtKdVkwTk5VVU4wTldONVNFcEVhVFJ5T1haMGRGTllhV1pNYm1NNVZuY3dDbkZDUW04MVVtaFlNamRNT1RBeGQzVklSeXMxTDFsUVJYaHBURnBYVWt4SFRWVXhRVkpYVVQwS0xTMHRMUzFGVGtRZ1EwVlNWRWxHU1VOQlZFVXRMUzB0TFFvPSJ9fX19" - } - ] - }, - "messageSignature": { - "messageDigest": { - "algorithm": "SHA2_256", - "digest": "5m0s4bihzRauMebw5grRzl7c94UYkL3ukzO/xS65VWE=" - }, - "signature": "MGQCMGKR5mMp1QDeL4gLVDnrCfirVuQWCnFc20d54fUZwaSZ/Tn7dnTk3Zm6DIJzyH7aoAIwEwxgEwqtQ+ToM45X0DlN4O9N+Otg+6j108QiS4QbkfdHrda//BcPB+4kVRdQUcwP" - } } }, { diff --git a/versions/3.3.5rc1.json b/versions/3.3.5rc1.json index a7aafcf..310ab2a 100644 --- a/versions/3.3.5rc1.json +++ b/versions/3.3.5rc1.json @@ -1,74 +1,98 @@ [ { - "url": "http://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tgz", + "url": "https://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tgz", "sha256": "0b427299512708b391fc275e07d2d9c52605cbbe21615b77ada9f399f70003f1", "raw": { - "Version": "http://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tgz", + "Version": "https://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tgz", "Operating System": "Source release", - "Description": "~ 16 MB", - "MD5 Sum": "f5385c4c809072b1c5b49d5faae4f9b2", - "File Size": "16.1\u00a0MB", - "GPG": "http://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tgz.asc" + "Description": null, + "MD5 Sum": "612fdfa58da740155fc05e42fdeddcd1", + "File Size": "66.2\u00a0MB", + "GPG": "https://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tgz.asc" } }, { - "url": "http://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tar.xz", + "url": "https://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tar.xz", "sha256": "5938a551c70d6ed7b828953f43182917c53d258c9024449002f1319329485e2f", "raw": { - "Version": "http://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tar.xz", + "Version": "https://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tar.xz", "Operating System": "Source release", - "Description": "~ 11 MB", + "Description": null, "MD5 Sum": "91afd237a2e378476c6d4616b2a69dda", - "File Size": "16.1\u00a0MB", - "GPG": "http://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tar.xz.asc" + "File Size": "11.5\u00a0MB", + "GPG": "https://www.python.org/ftp/python/3.3.5/Python-3.3.5rc1.tar.xz.asc" } }, { - "url": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.5.dmg", + "url": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.5.dmg", "sha256": "4ff6873b3c1b61f8473e7f7c094b03c74d2388533ee179b25bc750eadf6bd81c", "raw": { - "Version": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.5.dmg", + "Version": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.5.dmg", "Operating System": "macOS", - "Description": "For OS X 10.5 and later", + "Description": "for Mac OS X 10.5 and later", "MD5 Sum": "8ab7ec6d3e81ead6b3578f6bf75810d9", "File Size": "19.0\u00a0MB", - "GPG": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.5.dmg.asc" + "GPG": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.5.dmg.asc" } }, { - "url": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.6.dmg", + "url": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.6.dmg", "sha256": "c19e032d645d763b501c9b425ebc2f1ea7bca9f0f6b24d0d8224010ab26705bd", "raw": { - "Version": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.6.dmg", + "Version": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.6.dmg", "Operating System": "macOS", - "Description": "For Mac OS X 10.6 and later", + "Description": "for Mac OS X 10.6 and later", "MD5 Sum": "60aaf53e0ebb5a7ecd2349f212c62835", "File Size": "19.1\u00a0MB", - "GPG": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.6.dmg.asc" + "GPG": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-macosx10.6.dmg.asc" } }, { - "url": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.amd64.msi", - "sha256": "241393ebd4b853d163ed4d76121dbe9e90b2781a55d7b590dc844f15a8574b4c", + "url": "https://www.python.org/ftp/python/3.3.5/python335rc1.chm", + "sha256": "fe670e7905cdfbb3031e5c536a78b6cf34716392fd66fe5c2cedf80d778bfc63", "raw": { - "Version": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.amd64.msi", + "Version": "https://www.python.org/ftp/python/3.3.5/python335rc1.chm", "Operating System": "Windows", "Description": null, - "MD5 Sum": "97bb3692b165df901b1e72226d413fe6", - "File Size": "20.2\u00a0MB", - "GPG": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.amd64.msi.asc" + "MD5 Sum": "d8993436235be56dfddc304f0c1d6237", + "File Size": "6.4\u00a0MB", + "GPG": "https://www.python.org/ftp/python/3.3.5/python335rc1.chm.asc" } }, { - "url": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.msi", + "url": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-pdb.zip", + "sha256": "1f890dcb2ad95b14700e621bbc26f08ceab5a591628efe98e4e1c3bcccd47bef", + "raw": { + "Version": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-pdb.zip", + "Operating System": "Windows", + "Description": null, + "MD5 Sum": "539cfc3b15ce42603bfaadd471e9c158", + "File Size": "25.8\u00a0MB", + "GPG": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1-pdb.zip.asc" + } + }, + { + "url": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.msi", "sha256": "539db2b298e38acaa71925ff81a7ab86db97dbfe5b23d5847b2052968806dcdd", "raw": { - "Version": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.msi", + "Version": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.msi", "Operating System": "Windows", "Description": null, "MD5 Sum": "981592c6735608d584ab871ae0714f80", "File Size": "19.7\u00a0MB", - "GPG": "http://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.msi.asc" + "GPG": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.msi.asc" + } + }, + { + "url": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.amd64.msi", + "sha256": "241393ebd4b853d163ed4d76121dbe9e90b2781a55d7b590dc844f15a8574b4c", + "raw": { + "Version": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.amd64.msi", + "Operating System": "Windows", + "Description": "for AMD64/EM64T/x64", + "MD5 Sum": "97bb3692b165df901b1e72226d413fe6", + "File Size": "20.2\u00a0MB", + "GPG": "https://www.python.org/ftp/python/3.3.5/python-3.3.5rc1.amd64.msi.asc" } } ] \ No newline at end of file