From 5f2af211d616f86005883b44826180b21abb4060 Mon Sep 17 00:00:00 2001 From: Tim Felgentreff Date: Tue, 10 Oct 2023 14:59:54 +0200 Subject: [PATCH] Add GraalPy support (#694) * Add support for graalpy * add graalpy test workflow * format, lint and build * symlink graalpy binaries names * fix macos names for graalpy * Don't attempt to update pip for graalpy * Remove test schedule * Extract common getBinaryDirectory function for PyPy and GraalPy * Clean up and format * Pass GitHub token to GraalPy queries * Utilize pagination when querying GraalPy GitHub releases * Build * Fix lint errors * Deal with possible multiple artifacts for a single releases * Skip few GraalPy tests on windows - we don't have a windows release yet * Fix GraalPy test on Mac OS * Build * Skip one more GraalPy test on windows --------- Co-authored-by: Michael Simacek --- .github/workflows/test-graalpy.yml | 116 + __tests__/data/graalpy.json | 5798 ++++++++++++++++++++++++++++ __tests__/find-graalpy.test.ts | 378 ++ __tests__/install-graalpy.test.ts | 256 ++ __tests__/utils.test.ts | 25 +- dist/setup/index.js | 399 +- src/find-graalpy.ts | 146 + src/find-pypy.ts | 5 +- src/install-graalpy.ts | 262 ++ src/install-pypy.ts | 14 +- src/setup-python.ts | 15 + src/utils.ts | 42 + 12 files changed, 7429 insertions(+), 27 deletions(-) create mode 100644 .github/workflows/test-graalpy.yml create mode 100644 __tests__/data/graalpy.json create mode 100644 __tests__/find-graalpy.test.ts create mode 100644 __tests__/install-graalpy.test.ts create mode 100644 src/find-graalpy.ts create mode 100644 src/install-graalpy.ts diff --git a/.github/workflows/test-graalpy.yml b/.github/workflows/test-graalpy.yml new file mode 100644 index 00000000..c1800108 --- /dev/null +++ b/.github/workflows/test-graalpy.yml @@ -0,0 +1,116 @@ +name: Validate GraalPy e2e + +on: + push: + branches: + - main + paths-ignore: + - '**.md' + pull_request: + paths-ignore: + - '**.md' + +jobs: + setup-graalpy: + name: Setup GraalPy ${{ matrix.graalpy }} ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [macos-latest, ubuntu-20.04, ubuntu-latest] + graalpy: + - 'graalpy-23.0' + - 'graalpy-22.3' + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: setup-python ${{ matrix.graalpy }} + id: setup-python + uses: ./ + with: + python-version: ${{ matrix.graalpy }} + + - name: Check python-path + run: ./__tests__/check-python-path.sh '${{ steps.setup-python.outputs.python-path }}' + shell: bash + + - name: GraalPy and Python version + run: python --version + + - name: Run simple code + run: python -c 'import math; print(math.factorial(5))' + + - name: Assert GraalPy is running + run: | + import platform + assert platform.python_implementation().lower() == "graalvm" + shell: python + + - name: Assert expected binaries (or symlinks) are present + run: | + EXECUTABLE=${{ matrix.graalpy }} + EXECUTABLE=${EXECUTABLE/graalpy-/graalpy} # remove the first '-' in "graalpy-X.Y" -> "graalpyX.Y" to match executable name + EXECUTABLE=${EXECUTABLE%%-*} # remove any -* suffixe + ${EXECUTABLE} --version + shell: bash + + setup-graalpy-noenv: + name: Setup GraalPy ${{ matrix.graalpy }} ${{ matrix.os }} (noenv) + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [macos-latest, ubuntu-20.04, ubuntu-latest] + graalpy: ['graalpy23.0', 'graalpy22.3'] + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: setup-python ${{ matrix.graalpy }} + id: setup-python + uses: ./ + with: + python-version: ${{ matrix.graalpy }} + update-environment: false + + - name: GraalPy and Python version + run: ${{ steps.setup-python.outputs.python-path }} --version + + - name: Run simple code + run: ${{ steps.setup-python.outputs.python-path }} -c 'import math; print(math.factorial(5))' + + check-latest: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest] + steps: + - uses: actions/checkout@v3 + - name: Setup GraalPy and check latest + uses: ./ + with: + python-version: 'graalpy-23.x' + check-latest: true + - name: GraalPy and Python version + run: python --version + + - name: Run simple code + run: python -c 'import math; print(math.factorial(5))' + + - name: Assert GraalPy is running + run: | + import platform + assert platform.python_implementation().lower() == "graalvm" + shell: python + + - name: Assert expected binaries (or symlinks) are present + run: | + EXECUTABLE="graalpy-23.0" + EXECUTABLE=${EXECUTABLE/-/} # remove the first '-' in "graalpy-X.Y" -> "graalpyX.Y" to match executable name + EXECUTABLE=${EXECUTABLE%%-*} # remove any -* suffixe + ${EXECUTABLE} --version + shell: bash diff --git a/__tests__/data/graalpy.json b/__tests__/data/graalpy.json new file mode 100644 index 00000000..b753d713 --- /dev/null +++ b/__tests__/data/graalpy.json @@ -0,0 +1,5798 @@ +[ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/108323629", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/108323629/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/108323629/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/graal-23.1.0a1", + "id": 108323629, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4GdOMt", + "tag_name": "graal-23.1.0a1", + "target_commitish": "master", + "name": "GraalPy - GraalVm Community 23.1.0a1", + "draft": false, + "prerelease": false, + "created_at": "2023-06-06T22:30:49Z", + "published_at": "2023-06-13T15:04:15Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510243", + "id": 112510243, + "node_id": "RA_kwDOB73d0M4GtMUj", + "name": "graalpython-23.1.0a1-linux-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 208285038, + "download_count": 3, + "created_at": "2023-06-13T07:29:25Z", + "updated_at": "2023-06-13T07:29:38Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-linux-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510610", + "id": 112510610, + "node_id": "RA_kwDOB73d0M4GtMaS", + "name": "graalpython-23.1.0a1-linux-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-06-13T07:32:07Z", + "updated_at": "2023-06-13T07:32:07Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-linux-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510269", + "id": 112510269, + "node_id": "RA_kwDOB73d0M4GtMU9", + "name": "graalpython-23.1.0a1-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 213747624, + "download_count": 86, + "created_at": "2023-06-13T07:29:38Z", + "updated_at": "2023-06-13T07:29:53Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510612", + "id": 112510612, + "node_id": "RA_kwDOB73d0M4GtMaU", + "name": "graalpython-23.1.0a1-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2023-06-13T07:32:08Z", + "updated_at": "2023-06-13T07:32:08Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510291", + "id": 112510291, + "node_id": "RA_kwDOB73d0M4GtMVT", + "name": "graalpython-23.1.0a1-macos-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 217696547, + "download_count": 13, + "created_at": "2023-06-13T07:29:54Z", + "updated_at": "2023-06-13T07:30:17Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-macos-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510615", + "id": 112510615, + "node_id": "RA_kwDOB73d0M4GtMaX", + "name": "graalpython-23.1.0a1-macos-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-06-13T07:32:09Z", + "updated_at": "2023-06-13T07:32:09Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-macos-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510352", + "id": 112510352, + "node_id": "RA_kwDOB73d0M4GtMWQ", + "name": "graalpython-23.1.0a1-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 227762432, + "download_count": 11, + "created_at": "2023-06-13T07:30:17Z", + "updated_at": "2023-06-13T07:30:31Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510616", + "id": 112510616, + "node_id": "RA_kwDOB73d0M4GtMaY", + "name": "graalpython-23.1.0a1-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-06-13T07:32:09Z", + "updated_at": "2023-06-13T07:32:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510387", + "id": 112510387, + "node_id": "RA_kwDOB73d0M4GtMWz", + "name": "python-installable-svm-java17-darwin-aarch64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151774852, + "download_count": 8, + "created_at": "2023-06-13T07:30:31Z", + "updated_at": "2023-06-13T07:30:46Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-darwin-aarch64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510618", + "id": 112510618, + "node_id": "RA_kwDOB73d0M4GtMaa", + "name": "python-installable-svm-java17-darwin-aarch64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:10Z", + "updated_at": "2023-06-13T07:32:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-darwin-aarch64-23.1.0a1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510423", + "id": 112510423, + "node_id": "RA_kwDOB73d0M4GtMXX", + "name": "python-installable-svm-java17-darwin-amd64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 155958615, + "download_count": 9, + "created_at": "2023-06-13T07:30:46Z", + "updated_at": "2023-06-13T07:30:56Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-darwin-amd64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510621", + "id": 112510621, + "node_id": "RA_kwDOB73d0M4GtMad", + "name": "python-installable-svm-java17-darwin-amd64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:11Z", + "updated_at": "2023-06-13T07:32:11Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-darwin-amd64-23.1.0a1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510439", + "id": 112510439, + "node_id": "RA_kwDOB73d0M4GtMXn", + "name": "python-installable-svm-java17-linux-aarch64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 149559953, + "download_count": 7, + "created_at": "2023-06-13T07:30:57Z", + "updated_at": "2023-06-13T07:31:09Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-linux-aarch64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510623", + "id": 112510623, + "node_id": "RA_kwDOB73d0M4GtMaf", + "name": "python-installable-svm-java17-linux-aarch64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:12Z", + "updated_at": "2023-06-13T07:32:12Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-linux-aarch64-23.1.0a1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510482", + "id": 112510482, + "node_id": "RA_kwDOB73d0M4GtMYS", + "name": "python-installable-svm-java17-linux-amd64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 153700590, + "download_count": 50, + "created_at": "2023-06-13T07:31:10Z", + "updated_at": "2023-06-13T07:31:20Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-linux-amd64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510639", + "id": 112510639, + "node_id": "RA_kwDOB73d0M4GtMav", + "name": "python-installable-svm-java17-linux-amd64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:12Z", + "updated_at": "2023-06-13T07:32:13Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java17-linux-amd64-23.1.0a1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510502", + "id": 112510502, + "node_id": "RA_kwDOB73d0M4GtMYm", + "name": "python-installable-svm-java20-darwin-aarch64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 152397687, + "download_count": 12, + "created_at": "2023-06-13T07:31:21Z", + "updated_at": "2023-06-13T07:31:33Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-darwin-aarch64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510644", + "id": 112510644, + "node_id": "RA_kwDOB73d0M4GtMa0", + "name": "python-installable-svm-java20-darwin-aarch64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:13Z", + "updated_at": "2023-06-13T07:32:13Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-darwin-aarch64-23.1.0a1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510532", + "id": 112510532, + "node_id": "RA_kwDOB73d0M4GtMZE", + "name": "python-installable-svm-java20-darwin-amd64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 156585204, + "download_count": 12, + "created_at": "2023-06-13T07:31:34Z", + "updated_at": "2023-06-13T07:31:44Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-darwin-amd64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510646", + "id": 112510646, + "node_id": "RA_kwDOB73d0M4GtMa2", + "name": "python-installable-svm-java20-darwin-amd64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:14Z", + "updated_at": "2023-06-13T07:32:14Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-darwin-amd64-23.1.0a1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510561", + "id": 112510561, + "node_id": "RA_kwDOB73d0M4GtMZh", + "name": "python-installable-svm-java20-linux-aarch64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 150007420, + "download_count": 7, + "created_at": "2023-06-13T07:31:45Z", + "updated_at": "2023-06-13T07:31:56Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-linux-aarch64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510651", + "id": 112510651, + "node_id": "RA_kwDOB73d0M4GtMa7", + "name": "python-installable-svm-java20-linux-aarch64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:14Z", + "updated_at": "2023-06-13T07:32:14Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-linux-aarch64-23.1.0a1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510584", + "id": 112510584, + "node_id": "RA_kwDOB73d0M4GtMZ4", + "name": "python-installable-svm-java20-linux-amd64-23.1.0a1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 154254267, + "download_count": 29, + "created_at": "2023-06-13T07:31:56Z", + "updated_at": "2023-06-13T07:32:07Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-linux-amd64-23.1.0a1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510654", + "id": 112510654, + "node_id": "RA_kwDOB73d0M4GtMa-", + "name": "python-installable-svm-java20-linux-amd64-23.1.0a1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:15Z", + "updated_at": "2023-06-13T07:32:15Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/python-installable-svm-java20-linux-amd64-23.1.0a1.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/graal-23.1.0a1", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/graal-23.1.0a1", + "body": "This is a Python 3.10 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n", + "reactions": { + "url": "https://api.github.com/repos/oracle/graalpython/releases/108323629/reactions", + "total_count": 2, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 2, + "eyes": 0 + } + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/108323629", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/108323629/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/108323629/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/graal-23.0.0", + "id": 108323629, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4GdOMt", + "tag_name": "graal-23.0.0", + "target_commitish": "master", + "name": "GraalPy - GraalVm Community 23.0.0", + "draft": false, + "prerelease": false, + "created_at": "2023-06-06T22:30:49Z", + "published_at": "2023-06-13T15:04:15Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510243", + "id": 112510243, + "node_id": "RA_kwDOB73d0M4GtMUj", + "name": "graalpython-23.0.0-linux-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 208285038, + "download_count": 3, + "created_at": "2023-06-13T07:29:25Z", + "updated_at": "2023-06-13T07:29:38Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-linux-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510610", + "id": 112510610, + "node_id": "RA_kwDOB73d0M4GtMaS", + "name": "graalpython-23.0.0-linux-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-06-13T07:32:07Z", + "updated_at": "2023-06-13T07:32:07Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-linux-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510269", + "id": 112510269, + "node_id": "RA_kwDOB73d0M4GtMU9", + "name": "graalpython-23.0.0-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 213747624, + "download_count": 86, + "created_at": "2023-06-13T07:29:38Z", + "updated_at": "2023-06-13T07:29:53Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510612", + "id": 112510612, + "node_id": "RA_kwDOB73d0M4GtMaU", + "name": "graalpython-23.0.0-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2023-06-13T07:32:08Z", + "updated_at": "2023-06-13T07:32:08Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510291", + "id": 112510291, + "node_id": "RA_kwDOB73d0M4GtMVT", + "name": "graalpython-23.0.0-macos-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 217696547, + "download_count": 13, + "created_at": "2023-06-13T07:29:54Z", + "updated_at": "2023-06-13T07:30:17Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-macos-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510615", + "id": 112510615, + "node_id": "RA_kwDOB73d0M4GtMaX", + "name": "graalpython-23.0.0-macos-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-06-13T07:32:09Z", + "updated_at": "2023-06-13T07:32:09Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-macos-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510352", + "id": 112510352, + "node_id": "RA_kwDOB73d0M4GtMWQ", + "name": "graalpython-23.0.0-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 227762432, + "download_count": 11, + "created_at": "2023-06-13T07:30:17Z", + "updated_at": "2023-06-13T07:30:31Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510616", + "id": 112510616, + "node_id": "RA_kwDOB73d0M4GtMaY", + "name": "graalpython-23.0.0-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-06-13T07:32:09Z", + "updated_at": "2023-06-13T07:32:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510387", + "id": 112510387, + "node_id": "RA_kwDOB73d0M4GtMWz", + "name": "python-installable-svm-java17-darwin-aarch64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151774852, + "download_count": 8, + "created_at": "2023-06-13T07:30:31Z", + "updated_at": "2023-06-13T07:30:46Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-darwin-aarch64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510618", + "id": 112510618, + "node_id": "RA_kwDOB73d0M4GtMaa", + "name": "python-installable-svm-java17-darwin-aarch64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:10Z", + "updated_at": "2023-06-13T07:32:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-darwin-aarch64-23.0.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510423", + "id": 112510423, + "node_id": "RA_kwDOB73d0M4GtMXX", + "name": "python-installable-svm-java17-darwin-amd64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 155958615, + "download_count": 9, + "created_at": "2023-06-13T07:30:46Z", + "updated_at": "2023-06-13T07:30:56Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-darwin-amd64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510621", + "id": 112510621, + "node_id": "RA_kwDOB73d0M4GtMad", + "name": "python-installable-svm-java17-darwin-amd64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:11Z", + "updated_at": "2023-06-13T07:32:11Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-darwin-amd64-23.0.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510439", + "id": 112510439, + "node_id": "RA_kwDOB73d0M4GtMXn", + "name": "python-installable-svm-java17-linux-aarch64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 149559953, + "download_count": 7, + "created_at": "2023-06-13T07:30:57Z", + "updated_at": "2023-06-13T07:31:09Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-linux-aarch64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510623", + "id": 112510623, + "node_id": "RA_kwDOB73d0M4GtMaf", + "name": "python-installable-svm-java17-linux-aarch64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:12Z", + "updated_at": "2023-06-13T07:32:12Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-linux-aarch64-23.0.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510482", + "id": 112510482, + "node_id": "RA_kwDOB73d0M4GtMYS", + "name": "python-installable-svm-java17-linux-amd64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 153700590, + "download_count": 50, + "created_at": "2023-06-13T07:31:10Z", + "updated_at": "2023-06-13T07:31:20Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-linux-amd64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510639", + "id": 112510639, + "node_id": "RA_kwDOB73d0M4GtMav", + "name": "python-installable-svm-java17-linux-amd64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:12Z", + "updated_at": "2023-06-13T07:32:13Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java17-linux-amd64-23.0.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510502", + "id": 112510502, + "node_id": "RA_kwDOB73d0M4GtMYm", + "name": "python-installable-svm-java20-darwin-aarch64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 152397687, + "download_count": 12, + "created_at": "2023-06-13T07:31:21Z", + "updated_at": "2023-06-13T07:31:33Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-darwin-aarch64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510644", + "id": 112510644, + "node_id": "RA_kwDOB73d0M4GtMa0", + "name": "python-installable-svm-java20-darwin-aarch64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:13Z", + "updated_at": "2023-06-13T07:32:13Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-darwin-aarch64-23.0.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510532", + "id": 112510532, + "node_id": "RA_kwDOB73d0M4GtMZE", + "name": "python-installable-svm-java20-darwin-amd64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 156585204, + "download_count": 12, + "created_at": "2023-06-13T07:31:34Z", + "updated_at": "2023-06-13T07:31:44Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-darwin-amd64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510646", + "id": 112510646, + "node_id": "RA_kwDOB73d0M4GtMa2", + "name": "python-installable-svm-java20-darwin-amd64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:14Z", + "updated_at": "2023-06-13T07:32:14Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-darwin-amd64-23.0.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510561", + "id": 112510561, + "node_id": "RA_kwDOB73d0M4GtMZh", + "name": "python-installable-svm-java20-linux-aarch64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 150007420, + "download_count": 7, + "created_at": "2023-06-13T07:31:45Z", + "updated_at": "2023-06-13T07:31:56Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-linux-aarch64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510651", + "id": 112510651, + "node_id": "RA_kwDOB73d0M4GtMa7", + "name": "python-installable-svm-java20-linux-aarch64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:14Z", + "updated_at": "2023-06-13T07:32:14Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-linux-aarch64-23.0.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510584", + "id": 112510584, + "node_id": "RA_kwDOB73d0M4GtMZ4", + "name": "python-installable-svm-java20-linux-amd64-23.0.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 154254267, + "download_count": 29, + "created_at": "2023-06-13T07:31:56Z", + "updated_at": "2023-06-13T07:32:07Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-linux-amd64-23.0.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/112510654", + "id": 112510654, + "node_id": "RA_kwDOB73d0M4GtMa-", + "name": "python-installable-svm-java20-linux-amd64-23.0.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 2, + "created_at": "2023-06-13T07:32:15Z", + "updated_at": "2023-06-13T07:32:15Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/graal-23.0.0/python-installable-svm-java20-linux-amd64-23.0.0.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/graal-23.0.0", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/graal-23.0.0", + "body": "This is a Python 3.10 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n", + "reactions": { + "url": "https://api.github.com/repos/oracle/graalpython/releases/108323629/reactions", + "total_count": 2, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 2, + "eyes": 0 + } + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/89942123", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/89942123/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/89942123/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/vm-22.3.1", + "id": 89942123, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4FXGhr", + "tag_name": "vm-22.3.1", + "target_commitish": "master", + "name": "GraalPy - GraalVM Community Edition 22.3.1", + "draft": false, + "prerelease": false, + "created_at": "2023-01-10T09:58:58Z", + "published_at": "2023-01-24T14:27:54Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92746864", + "id": 92746864, + "node_id": "RA_kwDOB73d0M4FhzRw", + "name": "graalpy-22.3.1-linux-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 203943527, + "download_count": 7, + "created_at": "2023-01-23T17:08:50Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-linux-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747960", + "id": 92747960, + "node_id": "RA_kwDOB73d0M4Fhzi4", + "name": "graalpy-22.3.1-linux-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2023-01-23T17:18:06Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-linux-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92746911", + "id": 92746911, + "node_id": "RA_kwDOB73d0M4FhzSf", + "name": "graalpy-22.3.1-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 207156431, + "download_count": 39, + "created_at": "2023-01-23T17:09:44Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747964", + "id": 92747964, + "node_id": "RA_kwDOB73d0M4Fhzi8", + "name": "graalpy-22.3.1-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 6, + "created_at": "2023-01-23T17:18:06Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92746954", + "id": 92746954, + "node_id": "RA_kwDOB73d0M4FhzTK", + "name": "graalpy-22.3.1-macos-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 219778186, + "download_count": 8, + "created_at": "2023-01-23T17:10:29Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-macos-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747966", + "id": 92747966, + "node_id": "RA_kwDOB73d0M4Fhzi-", + "name": "graalpy-22.3.1-macos-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2023-01-23T17:18:07Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-macos-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747006", + "id": 92747006, + "node_id": "RA_kwDOB73d0M4FhzT-", + "name": "graalpy-22.3.1-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 221334807, + "download_count": 14, + "created_at": "2023-01-23T17:11:14Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747968", + "id": 92747968, + "node_id": "RA_kwDOB73d0M4FhzjA", + "name": "graalpy-22.3.1-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 6, + "created_at": "2023-01-23T17:18:08Z", + "updated_at": "2023-01-24T14:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/graalpy-22.3.1-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747055", + "id": 92747055, + "node_id": "RA_kwDOB73d0M4FhzUv", + "name": "python-installable-svm-java11-darwin-aarch64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 157914202, + "download_count": 66, + "created_at": "2023-01-23T17:11:58Z", + "updated_at": "2023-01-23T17:12:30Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-darwin-aarch64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747970", + "id": 92747970, + "node_id": "RA_kwDOB73d0M4FhzjC", + "name": "python-installable-svm-java11-darwin-aarch64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2023-01-23T17:18:09Z", + "updated_at": "2023-01-23T17:18:09Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-darwin-aarch64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747112", + "id": 92747112, + "node_id": "RA_kwDOB73d0M4FhzVo", + "name": "python-installable-svm-java11-darwin-amd64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 153685519, + "download_count": 5543, + "created_at": "2023-01-23T17:12:31Z", + "updated_at": "2023-01-23T17:13:06Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-darwin-amd64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747973", + "id": 92747973, + "node_id": "RA_kwDOB73d0M4FhzjF", + "name": "python-installable-svm-java11-darwin-amd64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2023-01-23T17:18:09Z", + "updated_at": "2023-01-23T17:18:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-darwin-amd64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747219", + "id": 92747219, + "node_id": "RA_kwDOB73d0M4FhzXT", + "name": "python-installable-svm-java11-linux-aarch64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 149936030, + "download_count": 55, + "created_at": "2023-01-23T17:13:07Z", + "updated_at": "2023-01-23T17:13:39Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-linux-aarch64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747976", + "id": 92747976, + "node_id": "RA_kwDOB73d0M4FhzjI", + "name": "python-installable-svm-java11-linux-aarch64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-01-23T17:18:10Z", + "updated_at": "2023-01-23T17:18:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-linux-aarch64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747308", + "id": 92747308, + "node_id": "RA_kwDOB73d0M4FhzYs", + "name": "python-installable-svm-java11-linux-amd64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151542239, + "download_count": 579, + "created_at": "2023-01-23T17:13:39Z", + "updated_at": "2023-01-23T17:14:09Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-linux-amd64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747979", + "id": 92747979, + "node_id": "RA_kwDOB73d0M4FhzjL", + "name": "python-installable-svm-java11-linux-amd64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 8, + "created_at": "2023-01-23T17:18:11Z", + "updated_at": "2023-01-23T17:18:11Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java11-linux-amd64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747401", + "id": 92747401, + "node_id": "RA_kwDOB73d0M4FhzaJ", + "name": "python-installable-svm-java17-darwin-aarch64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 159333479, + "download_count": 144, + "created_at": "2023-01-23T17:14:09Z", + "updated_at": "2023-01-23T17:14:37Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-darwin-aarch64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747982", + "id": 92747982, + "node_id": "RA_kwDOB73d0M4FhzjO", + "name": "python-installable-svm-java17-darwin-aarch64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2023-01-23T17:18:12Z", + "updated_at": "2023-01-23T17:18:12Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-darwin-aarch64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747498", + "id": 92747498, + "node_id": "RA_kwDOB73d0M4Fhzbq", + "name": "python-installable-svm-java17-darwin-amd64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 154956143, + "download_count": 1548, + "created_at": "2023-01-23T17:14:37Z", + "updated_at": "2023-01-23T17:15:08Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-darwin-amd64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747986", + "id": 92747986, + "node_id": "RA_kwDOB73d0M4FhzjS", + "name": "python-installable-svm-java17-darwin-amd64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2023-01-23T17:18:12Z", + "updated_at": "2023-01-23T17:18:13Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-darwin-amd64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747558", + "id": 92747558, + "node_id": "RA_kwDOB73d0M4Fhzcm", + "name": "python-installable-svm-java17-linux-aarch64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151260875, + "download_count": 104, + "created_at": "2023-01-23T17:15:09Z", + "updated_at": "2023-01-23T17:15:39Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-linux-aarch64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747988", + "id": 92747988, + "node_id": "RA_kwDOB73d0M4FhzjU", + "name": "python-installable-svm-java17-linux-aarch64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-01-23T17:18:13Z", + "updated_at": "2023-01-23T17:18:13Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-linux-aarch64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747629", + "id": 92747629, + "node_id": "RA_kwDOB73d0M4Fhzdt", + "name": "python-installable-svm-java17-linux-amd64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 152823583, + "download_count": 4899, + "created_at": "2023-01-23T17:15:40Z", + "updated_at": "2023-01-23T17:16:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-linux-amd64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747992", + "id": 92747992, + "node_id": "RA_kwDOB73d0M4FhzjY", + "name": "python-installable-svm-java17-linux-amd64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-01-23T17:18:14Z", + "updated_at": "2023-01-23T17:18:14Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java17-linux-amd64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747659", + "id": 92747659, + "node_id": "RA_kwDOB73d0M4FhzeL", + "name": "python-installable-svm-java19-darwin-aarch64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 159455291, + "download_count": 64, + "created_at": "2023-01-23T17:16:10Z", + "updated_at": "2023-01-23T17:16:51Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-darwin-aarch64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747994", + "id": 92747994, + "node_id": "RA_kwDOB73d0M4Fhzja", + "name": "python-installable-svm-java19-darwin-aarch64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2023-01-23T17:18:15Z", + "updated_at": "2023-01-23T17:18:15Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-darwin-aarch64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747713", + "id": 92747713, + "node_id": "RA_kwDOB73d0M4FhzfB", + "name": "python-installable-svm-java19-darwin-amd64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 155057237, + "download_count": 99, + "created_at": "2023-01-23T17:16:51Z", + "updated_at": "2023-01-23T17:17:22Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-darwin-amd64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747997", + "id": 92747997, + "node_id": "RA_kwDOB73d0M4Fhzjd", + "name": "python-installable-svm-java19-darwin-amd64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2023-01-23T17:18:15Z", + "updated_at": "2023-01-23T17:18:16Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-darwin-amd64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747803", + "id": 92747803, + "node_id": "RA_kwDOB73d0M4Fhzgb", + "name": "python-installable-svm-java19-linux-aarch64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151342460, + "download_count": 24, + "created_at": "2023-01-23T17:17:22Z", + "updated_at": "2023-01-23T17:17:46Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-linux-aarch64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92748000", + "id": 92748000, + "node_id": "RA_kwDOB73d0M4Fhzjg", + "name": "python-installable-svm-java19-linux-aarch64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2023-01-23T17:18:16Z", + "updated_at": "2023-01-23T17:18:16Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-linux-aarch64-22.3.1.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92747898", + "id": 92747898, + "node_id": "RA_kwDOB73d0M4Fhzh6", + "name": "python-installable-svm-java19-linux-amd64-22.3.1.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 152925492, + "download_count": 282, + "created_at": "2023-01-23T17:17:47Z", + "updated_at": "2023-01-23T17:18:05Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-linux-amd64-22.3.1.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/92748004", + "id": 92748004, + "node_id": "RA_kwDOB73d0M4Fhzjk", + "name": "python-installable-svm-java19-linux-amd64-22.3.1.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2023-01-23T17:18:17Z", + "updated_at": "2023-01-23T17:18:17Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.1/python-installable-svm-java19-linux-amd64-22.3.1.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/vm-22.3.1", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/vm-22.3.1", + "body": "This is a Python 3.8.5 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n", + "reactions": { + "url": "https://api.github.com/repos/oracle/graalpython/releases/89942123/reactions", + "total_count": 1, + "+1": 0, + "-1": 0, + "laugh": 0, + "hooray": 0, + "confused": 0, + "heart": 0, + "rocket": 1, + "eyes": 0 + } + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/80639914", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/80639914/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/80639914/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/vm-22.3.0", + "id": 80639914, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4Ezneq", + "tag_name": "vm-22.3.0", + "target_commitish": "master", + "name": "GraalPy - GraalVM Community Edition 22.3.0", + "draft": false, + "prerelease": false, + "created_at": "2022-10-12T09:57:34Z", + "published_at": "2022-10-25T12:07:38Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81826151", + "id": 81826151, + "node_id": "RA_kwDOB73d0M4E4JFn", + "name": "graalpy-22.3.0-linux-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 203184155, + "download_count": 20, + "created_at": "2022-10-21T16:54:11Z", + "updated_at": "2022-10-25T12:10:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-linux-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827364", + "id": 81827364, + "node_id": "RA_kwDOB73d0M4E4JYk", + "name": "graalpy-22.3.0-linux-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 8, + "created_at": "2022-10-21T17:02:48Z", + "updated_at": "2022-10-25T12:10:15Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-linux-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81826256", + "id": 81826256, + "node_id": "RA_kwDOB73d0M4E4JHQ", + "name": "graalpy-22.3.0-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 206407259, + "download_count": 113, + "created_at": "2022-10-21T16:54:40Z", + "updated_at": "2022-10-25T12:10:15Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827368", + "id": 81827368, + "node_id": "RA_kwDOB73d0M4E4JYo", + "name": "graalpy-22.3.0-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2022-10-21T17:02:48Z", + "updated_at": "2022-10-25T12:10:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81826887", + "id": 81826887, + "node_id": "RA_kwDOB73d0M4E4JRH", + "name": "graalpy-22.3.0-macos-aarch64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 211813509, + "download_count": 42, + "created_at": "2022-10-21T16:55:10Z", + "updated_at": "2022-10-25T12:10:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-macos-aarch64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827369", + "id": 81827369, + "node_id": "RA_kwDOB73d0M4E4JYp", + "name": "graalpy-22.3.0-macos-aarch64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:49Z", + "updated_at": "2022-10-25T12:10:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-macos-aarch64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81826914", + "id": 81826914, + "node_id": "RA_kwDOB73d0M4E4JRi", + "name": "graalpy-22.3.0-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 219429099, + "download_count": 22, + "created_at": "2022-10-21T16:55:40Z", + "updated_at": "2022-10-25T12:10:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827371", + "id": 81827371, + "node_id": "RA_kwDOB73d0M4E4JYr", + "name": "graalpy-22.3.0-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:50Z", + "updated_at": "2022-10-25T12:10:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/graalpy-22.3.0-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81826975", + "id": 81826975, + "node_id": "RA_kwDOB73d0M4E4JSf", + "name": "python-installable-svm-java11-darwin-aarch64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151879218, + "download_count": 75, + "created_at": "2022-10-21T16:56:23Z", + "updated_at": "2022-10-21T16:56:58Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-darwin-aarch64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827373", + "id": 81827373, + "node_id": "RA_kwDOB73d0M4E4JYt", + "name": "python-installable-svm-java11-darwin-aarch64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:51Z", + "updated_at": "2022-10-21T17:02:51Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-darwin-aarch64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81826990", + "id": 81826990, + "node_id": "RA_kwDOB73d0M4E4JSu", + "name": "python-installable-svm-java11-darwin-amd64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 153546449, + "download_count": 3780, + "created_at": "2022-10-21T16:56:59Z", + "updated_at": "2022-10-21T16:57:40Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-darwin-amd64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827375", + "id": 81827375, + "node_id": "RA_kwDOB73d0M4E4JYv", + "name": "python-installable-svm-java11-darwin-amd64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:52Z", + "updated_at": "2022-10-21T17:02:52Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-darwin-amd64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827068", + "id": 81827068, + "node_id": "RA_kwDOB73d0M4E4JT8", + "name": "python-installable-svm-java11-linux-aarch64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 149921089, + "download_count": 124, + "created_at": "2022-10-21T16:57:41Z", + "updated_at": "2022-10-21T16:57:58Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-linux-aarch64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827377", + "id": 81827377, + "node_id": "RA_kwDOB73d0M4E4JYx", + "name": "python-installable-svm-java11-linux-aarch64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:53Z", + "updated_at": "2022-10-21T17:02:53Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-linux-aarch64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827084", + "id": 81827084, + "node_id": "RA_kwDOB73d0M4E4JUM", + "name": "python-installable-svm-java11-linux-amd64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151548891, + "download_count": 1651, + "created_at": "2022-10-21T16:57:59Z", + "updated_at": "2022-10-21T16:58:25Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-linux-amd64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827378", + "id": 81827378, + "node_id": "RA_kwDOB73d0M4E4JYy", + "name": "python-installable-svm-java11-linux-amd64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2022-10-21T17:02:53Z", + "updated_at": "2022-10-21T17:02:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java11-linux-amd64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827120", + "id": 81827120, + "node_id": "RA_kwDOB73d0M4E4JUw", + "name": "python-installable-svm-java17-darwin-aarch64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 153017336, + "download_count": 114, + "created_at": "2022-10-21T16:58:25Z", + "updated_at": "2022-10-21T16:58:49Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-darwin-aarch64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827380", + "id": 81827380, + "node_id": "RA_kwDOB73d0M4E4JY0", + "name": "python-installable-svm-java17-darwin-aarch64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:54Z", + "updated_at": "2022-10-21T17:02:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-darwin-aarch64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827145", + "id": 81827145, + "node_id": "RA_kwDOB73d0M4E4JVJ", + "name": "python-installable-svm-java17-darwin-amd64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 154597017, + "download_count": 152, + "created_at": "2022-10-21T16:58:50Z", + "updated_at": "2022-10-21T16:59:22Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-darwin-amd64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827384", + "id": 81827384, + "node_id": "RA_kwDOB73d0M4E4JY4", + "name": "python-installable-svm-java17-darwin-amd64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:55Z", + "updated_at": "2022-10-21T17:02:55Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-darwin-amd64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827182", + "id": 81827182, + "node_id": "RA_kwDOB73d0M4E4JVu", + "name": "python-installable-svm-java17-linux-aarch64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 150999566, + "download_count": 154, + "created_at": "2022-10-21T16:59:22Z", + "updated_at": "2022-10-21T16:59:51Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-linux-aarch64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827389", + "id": 81827389, + "node_id": "RA_kwDOB73d0M4E4JY9", + "name": "python-installable-svm-java17-linux-aarch64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:56Z", + "updated_at": "2022-10-21T17:02:56Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-linux-aarch64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827210", + "id": 81827210, + "node_id": "RA_kwDOB73d0M4E4JWK", + "name": "python-installable-svm-java17-linux-amd64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 152607645, + "download_count": 5751, + "created_at": "2022-10-21T16:59:52Z", + "updated_at": "2022-10-21T17:00:28Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-linux-amd64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827391", + "id": 81827391, + "node_id": "RA_kwDOB73d0M4E4JY_", + "name": "python-installable-svm-java17-linux-amd64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2022-10-21T17:02:56Z", + "updated_at": "2022-10-21T17:02:57Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java17-linux-amd64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827241", + "id": 81827241, + "node_id": "RA_kwDOB73d0M4E4JWp", + "name": "python-installable-svm-java19-darwin-aarch64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 153370747, + "download_count": 61, + "created_at": "2022-10-21T17:00:29Z", + "updated_at": "2022-10-21T17:01:06Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-darwin-aarch64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827393", + "id": 81827393, + "node_id": "RA_kwDOB73d0M4E4JZB", + "name": "python-installable-svm-java19-darwin-aarch64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:57Z", + "updated_at": "2022-10-21T17:02:57Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-darwin-aarch64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827287", + "id": 81827287, + "node_id": "RA_kwDOB73d0M4E4JXX", + "name": "python-installable-svm-java19-darwin-amd64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 154902692, + "download_count": 88, + "created_at": "2022-10-21T17:01:06Z", + "updated_at": "2022-10-21T17:01:33Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-darwin-amd64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827394", + "id": 81827394, + "node_id": "RA_kwDOB73d0M4E4JZC", + "name": "python-installable-svm-java19-darwin-amd64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:58Z", + "updated_at": "2022-10-21T17:02:58Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-darwin-amd64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827310", + "id": 81827310, + "node_id": "RA_kwDOB73d0M4E4JXu", + "name": "python-installable-svm-java19-linux-aarch64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 151348350, + "download_count": 16, + "created_at": "2022-10-21T17:01:34Z", + "updated_at": "2022-10-21T17:02:08Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-linux-aarch64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827395", + "id": 81827395, + "node_id": "RA_kwDOB73d0M4E4JZD", + "name": "python-installable-svm-java19-linux-aarch64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:02:59Z", + "updated_at": "2022-10-21T17:02:59Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-linux-aarch64-22.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827333", + "id": 81827333, + "node_id": "RA_kwDOB73d0M4E4JYF", + "name": "python-installable-svm-java19-linux-amd64-22.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 152945140, + "download_count": 655, + "created_at": "2022-10-21T17:02:09Z", + "updated_at": "2022-10-21T17:02:47Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-linux-amd64-22.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/81827396", + "id": 81827396, + "node_id": "RA_kwDOB73d0M4E4JZE", + "name": "python-installable-svm-java19-linux-amd64-22.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-10-21T17:03:00Z", + "updated_at": "2022-10-21T17:03:00Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.3.0/python-installable-svm-java19-linux-amd64-22.3.0.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/vm-22.3.0", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/vm-22.3.0", + "body": "This is a Python 3.8.5 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/72708309", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/72708309/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/72708309/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/vm-22.2.0", + "id": 72708309, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4EVXDV", + "tag_name": "vm-22.2.0", + "target_commitish": "master", + "name": "GraalPython - GraalVM Community Edition 22.2.0", + "draft": false, + "prerelease": false, + "created_at": "2022-07-13T16:00:33Z", + "published_at": "2022-07-26T11:29:52Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558549", + "id": 72558549, + "node_id": "RA_kwDOB73d0M4EUyfV", + "name": "graalpython-22.2.0-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 213303771, + "download_count": 132, + "created_at": "2022-07-24T21:29:59Z", + "updated_at": "2022-07-24T21:30:37Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/graalpython-22.2.0-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558728", + "id": 72558728, + "node_id": "RA_kwDOB73d0M4EUyiI", + "name": "graalpython-22.2.0-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 9, + "created_at": "2022-07-24T21:32:51Z", + "updated_at": "2022-07-24T21:32:51Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/graalpython-22.2.0-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558575", + "id": 72558575, + "node_id": "RA_kwDOB73d0M4EUyfv", + "name": "graalpython-22.2.0-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 229775278, + "download_count": 53, + "created_at": "2022-07-24T21:30:38Z", + "updated_at": "2022-07-24T21:31:10Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/graalpython-22.2.0-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558733", + "id": 72558733, + "node_id": "RA_kwDOB73d0M4EUyiN", + "name": "graalpython-22.2.0-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 8, + "created_at": "2022-07-24T21:32:52Z", + "updated_at": "2022-07-24T21:32:52Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/graalpython-22.2.0-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558584", + "id": 72558584, + "node_id": "RA_kwDOB73d0M4EUyf4", + "name": "python-installable-svm-java11-darwin-amd64-22.2.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 166887010, + "download_count": 71, + "created_at": "2022-07-24T21:31:10Z", + "updated_at": "2022-07-24T21:31:39Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java11-darwin-amd64-22.2.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558737", + "id": 72558737, + "node_id": "RA_kwDOB73d0M4EUyiR", + "name": "python-installable-svm-java11-darwin-amd64-22.2.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2022-07-24T21:32:53Z", + "updated_at": "2022-07-24T21:32:53Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java11-darwin-amd64-22.2.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558618", + "id": 72558618, + "node_id": "RA_kwDOB73d0M4EUyga", + "name": "python-installable-svm-java11-linux-amd64-22.2.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 162939311, + "download_count": 1518, + "created_at": "2022-07-24T21:31:39Z", + "updated_at": "2022-07-24T21:32:06Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java11-linux-amd64-22.2.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558739", + "id": 72558739, + "node_id": "RA_kwDOB73d0M4EUyiT", + "name": "python-installable-svm-java11-linux-amd64-22.2.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 149, + "created_at": "2022-07-24T21:32:53Z", + "updated_at": "2022-07-24T21:32:53Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java11-linux-amd64-22.2.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558648", + "id": 72558648, + "node_id": "RA_kwDOB73d0M4EUyg4", + "name": "python-installable-svm-java17-darwin-amd64-22.2.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 168473794, + "download_count": 157, + "created_at": "2022-07-24T21:32:07Z", + "updated_at": "2022-07-24T21:32:29Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java17-darwin-amd64-22.2.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558741", + "id": 72558741, + "node_id": "RA_kwDOB73d0M4EUyiV", + "name": "python-installable-svm-java17-darwin-amd64-22.2.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 8, + "created_at": "2022-07-24T21:32:54Z", + "updated_at": "2022-07-24T21:32:54Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java17-darwin-amd64-22.2.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558678", + "id": 72558678, + "node_id": "RA_kwDOB73d0M4EUyhW", + "name": "python-installable-svm-java17-linux-amd64-22.2.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 164464388, + "download_count": 12772, + "created_at": "2022-07-24T21:32:29Z", + "updated_at": "2022-07-24T21:32:50Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java17-linux-amd64-22.2.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/72558743", + "id": 72558743, + "node_id": "RA_kwDOB73d0M4EUyiX", + "name": "python-installable-svm-java17-linux-amd64-22.2.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 12, + "created_at": "2022-07-24T21:32:55Z", + "updated_at": "2022-07-24T21:32:55Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.2.0/python-installable-svm-java17-linux-amd64-22.2.0.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/vm-22.2.0", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/vm-22.2.0", + "body": "This is a Python 3.8.5 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/65179940", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/65179940/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/65179940/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/vm-22.1.0", + "id": 65179940, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4D4pEk", + "tag_name": "vm-22.1.0", + "target_commitish": "master", + "name": "GraalPython - GraalVM Community Edition 22.1.0", + "draft": false, + "prerelease": false, + "created_at": "2022-04-12T20:36:25Z", + "published_at": "2022-04-26T10:35:35Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527509", + "id": 63527509, + "node_id": "RA_kwDOB73d0M4DyVpV", + "name": "graalpython-22.1.0-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 177088331, + "download_count": 109, + "created_at": "2022-04-24T22:06:28Z", + "updated_at": "2022-04-24T22:06:43Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/graalpython-22.1.0-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527601", + "id": 63527601, + "node_id": "RA_kwDOB73d0M4DyVqx", + "name": "graalpython-22.1.0-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 8, + "created_at": "2022-04-24T22:07:57Z", + "updated_at": "2022-04-24T22:07:58Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/graalpython-22.1.0-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527520", + "id": 63527520, + "node_id": "RA_kwDOB73d0M4DyVpg", + "name": "graalpython-22.1.0-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 184199468, + "download_count": 25, + "created_at": "2022-04-24T22:06:44Z", + "updated_at": "2022-04-24T22:06:58Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/graalpython-22.1.0-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527602", + "id": 63527602, + "node_id": "RA_kwDOB73d0M4DyVqy", + "name": "graalpython-22.1.0-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2022-04-24T22:07:58Z", + "updated_at": "2022-04-24T22:07:58Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/graalpython-22.1.0-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527548", + "id": 63527548, + "node_id": "RA_kwDOB73d0M4DyVp8", + "name": "python-installable-svm-java11-darwin-amd64-22.1.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 135978181, + "download_count": 90, + "created_at": "2022-04-24T22:06:59Z", + "updated_at": "2022-04-24T22:07:11Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java11-darwin-amd64-22.1.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527603", + "id": 63527603, + "node_id": "RA_kwDOB73d0M4DyVqz", + "name": "python-installable-svm-java11-darwin-amd64-22.1.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-04-24T22:07:59Z", + "updated_at": "2022-04-24T22:07:59Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java11-darwin-amd64-22.1.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527560", + "id": 63527560, + "node_id": "RA_kwDOB73d0M4DyVqI", + "name": "python-installable-svm-java11-linux-amd64-22.1.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 132610464, + "download_count": 1692, + "created_at": "2022-04-24T22:07:12Z", + "updated_at": "2022-04-24T22:07:24Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java11-linux-amd64-22.1.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527605", + "id": 63527605, + "node_id": "RA_kwDOB73d0M4DyVq1", + "name": "python-installable-svm-java11-linux-amd64-22.1.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 3, + "created_at": "2022-04-24T22:08:00Z", + "updated_at": "2022-04-24T22:08:00Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java11-linux-amd64-22.1.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527570", + "id": 63527570, + "node_id": "RA_kwDOB73d0M4DyVqS", + "name": "python-installable-svm-java17-darwin-amd64-22.1.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 137606368, + "download_count": 216, + "created_at": "2022-04-24T22:07:25Z", + "updated_at": "2022-04-24T22:07:35Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java17-darwin-amd64-22.1.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527606", + "id": 63527606, + "node_id": "RA_kwDOB73d0M4DyVq2", + "name": "python-installable-svm-java17-darwin-amd64-22.1.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2022-04-24T22:08:00Z", + "updated_at": "2022-04-24T22:08:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java17-darwin-amd64-22.1.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527574", + "id": 63527574, + "node_id": "RA_kwDOB73d0M4DyVqW", + "name": "python-installable-svm-java17-linux-amd64-22.1.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 134233712, + "download_count": 4720, + "created_at": "2022-04-24T22:07:35Z", + "updated_at": "2022-04-24T22:07:57Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java17-linux-amd64-22.1.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/63527610", + "id": 63527610, + "node_id": "RA_kwDOB73d0M4DyVq6", + "name": "python-installable-svm-java17-linux-amd64-22.1.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 9, + "created_at": "2022-04-24T22:08:01Z", + "updated_at": "2022-04-24T22:08:01Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.1.0/python-installable-svm-java17-linux-amd64-22.1.0.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/vm-22.1.0", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/vm-22.1.0", + "body": "This is a Python 3.8.5 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/57883796", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/57883796/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/57883796/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/vm-22.0.0.2", + "id": 57883796, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4DczyU", + "tag_name": "vm-22.0.0.2", + "target_commitish": "master", + "name": "GraalPython - GraalVM Community Edition 22.0.0.2", + "draft": false, + "prerelease": false, + "created_at": "2022-01-21T16:47:50Z", + "published_at": "2022-01-25T14:36:14Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54864957", + "id": 54864957, + "node_id": "RA_kwDOB73d0M4DRSw9", + "name": "graalpython-22.0.0.2-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 169882902, + "download_count": 79, + "created_at": "2022-01-25T02:21:28Z", + "updated_at": "2022-01-25T02:22:22Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/graalpython-22.0.0.2-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865367", + "id": 54865367, + "node_id": "RA_kwDOB73d0M4DRS3X", + "name": "graalpython-22.0.0.2-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 7, + "created_at": "2022-01-25T02:26:44Z", + "updated_at": "2022-01-25T02:26:45Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/graalpython-22.0.0.2-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865032", + "id": 54865032, + "node_id": "RA_kwDOB73d0M4DRSyI", + "name": "graalpython-22.0.0.2-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 169812686, + "download_count": 22, + "created_at": "2022-01-25T02:22:22Z", + "updated_at": "2022-01-25T02:23:14Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/graalpython-22.0.0.2-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865369", + "id": 54865369, + "node_id": "RA_kwDOB73d0M4DRS3Z", + "name": "graalpython-22.0.0.2-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 6, + "created_at": "2022-01-25T02:26:45Z", + "updated_at": "2022-01-25T02:26:46Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/graalpython-22.0.0.2-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865112", + "id": 54865112, + "node_id": "RA_kwDOB73d0M4DRSzY", + "name": "python-installable-svm-java11-darwin-amd64-22.0.0.2.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 134123372, + "download_count": 142, + "created_at": "2022-01-25T02:23:15Z", + "updated_at": "2022-01-25T02:24:07Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java11-darwin-amd64-22.0.0.2.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865370", + "id": 54865370, + "node_id": "RA_kwDOB73d0M4DRS3a", + "name": "python-installable-svm-java11-darwin-amd64-22.0.0.2.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 10, + "created_at": "2022-01-25T02:26:46Z", + "updated_at": "2022-01-25T02:26:46Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java11-darwin-amd64-22.0.0.2.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865172", + "id": 54865172, + "node_id": "RA_kwDOB73d0M4DRS0U", + "name": "python-installable-svm-java11-linux-amd64-22.0.0.2.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 130729426, + "download_count": 603, + "created_at": "2022-01-25T02:24:07Z", + "updated_at": "2022-01-25T02:24:58Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java11-linux-amd64-22.0.0.2.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865371", + "id": 54865371, + "node_id": "RA_kwDOB73d0M4DRS3b", + "name": "python-installable-svm-java11-linux-amd64-22.0.0.2.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 8, + "created_at": "2022-01-25T02:26:47Z", + "updated_at": "2022-01-25T02:26:47Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java11-linux-amd64-22.0.0.2.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865237", + "id": 54865237, + "node_id": "RA_kwDOB73d0M4DRS1V", + "name": "python-installable-svm-java17-darwin-amd64-22.0.0.2.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 135598585, + "download_count": 366, + "created_at": "2022-01-25T02:24:59Z", + "updated_at": "2022-01-25T02:25:53Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java17-darwin-amd64-22.0.0.2.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865372", + "id": 54865372, + "node_id": "RA_kwDOB73d0M4DRS3c", + "name": "python-installable-svm-java17-darwin-amd64-22.0.0.2.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 16, + "created_at": "2022-01-25T02:26:48Z", + "updated_at": "2022-01-25T02:26:48Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java17-darwin-amd64-22.0.0.2.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865313", + "id": 54865313, + "node_id": "RA_kwDOB73d0M4DRS2h", + "name": "python-installable-svm-java17-linux-amd64-22.0.0.2.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 132220138, + "download_count": 4095, + "created_at": "2022-01-25T02:25:53Z", + "updated_at": "2022-01-25T02:26:44Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java17-linux-amd64-22.0.0.2.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/54865374", + "id": 54865374, + "node_id": "RA_kwDOB73d0M4DRS3e", + "name": "python-installable-svm-java17-linux-amd64-22.0.0.2.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 16, + "created_at": "2022-01-25T02:26:49Z", + "updated_at": "2022-01-25T02:26:49Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-22.0.0.2/python-installable-svm-java17-linux-amd64-22.0.0.2.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/vm-22.0.0.2", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/vm-22.0.0.2", + "body": "This is a Python 3.8.5 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/51598907", + "assets_url": "https://api.github.com/repos/oracle/graalpython/releases/51598907/assets", + "upload_url": "https://uploads.github.com/repos/oracle/graalpython/releases/51598907/assets{?name,label}", + "html_url": "https://github.com/oracle/graalpython/releases/tag/vm-21.3.0", + "id": 51598907, + "author": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "node_id": "RE_kwDOB73d0M4DE1Y7", + "tag_name": "vm-21.3.0", + "target_commitish": "master", + "name": "GraalPython - GraalVM Community Edition 21.3.0", + "draft": false, + "prerelease": false, + "created_at": "2021-10-16T22:00:22Z", + "published_at": "2021-10-19T14:21:48Z", + "assets": [ + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332770", + "id": 47332770, + "node_id": "RA_kwDOB73d0M4C0j2i", + "name": "graalpython-21.3.0-linux-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 164083526, + "download_count": 74, + "created_at": "2021-10-19T08:37:05Z", + "updated_at": "2021-10-19T08:37:36Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/graalpython-21.3.0-linux-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332904", + "id": 47332904, + "node_id": "RA_kwDOB73d0M4C0j4o", + "name": "graalpython-21.3.0-linux-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 7, + "created_at": "2021-10-19T08:39:31Z", + "updated_at": "2021-10-19T08:39:31Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/graalpython-21.3.0-linux-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332791", + "id": 47332791, + "node_id": "RA_kwDOB73d0M4C0j23", + "name": "graalpython-21.3.0-macos-amd64.tar.gz", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 163628415, + "download_count": 30, + "created_at": "2021-10-19T08:37:36Z", + "updated_at": "2021-10-19T08:38:04Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/graalpython-21.3.0-macos-amd64.tar.gz" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332905", + "id": 47332905, + "node_id": "RA_kwDOB73d0M4C0j4p", + "name": "graalpython-21.3.0-macos-amd64.tar.gz.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2021-10-19T08:39:32Z", + "updated_at": "2021-10-19T08:39:32Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/graalpython-21.3.0-macos-amd64.tar.gz.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332824", + "id": 47332824, + "node_id": "RA_kwDOB73d0M4C0j3Y", + "name": "python-installable-svm-java11-darwin-amd64-21.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 130111944, + "download_count": 7661, + "created_at": "2021-10-19T08:38:05Z", + "updated_at": "2021-10-19T08:38:15Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java11-darwin-amd64-21.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332906", + "id": 47332906, + "node_id": "RA_kwDOB73d0M4C0j4q", + "name": "python-installable-svm-java11-darwin-amd64-21.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2021-10-19T08:39:33Z", + "updated_at": "2021-10-19T08:39:33Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java11-darwin-amd64-21.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332844", + "id": 47332844, + "node_id": "RA_kwDOB73d0M4C0j3s", + "name": "python-installable-svm-java11-linux-amd64-21.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 126672673, + "download_count": 4841, + "created_at": "2021-10-19T08:38:15Z", + "updated_at": "2021-10-19T08:38:25Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java11-linux-amd64-21.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332907", + "id": 47332907, + "node_id": "RA_kwDOB73d0M4C0j4r", + "name": "python-installable-svm-java11-linux-amd64-21.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 5, + "created_at": "2021-10-19T08:39:33Z", + "updated_at": "2021-10-19T08:39:34Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java11-linux-amd64-21.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332862", + "id": 47332862, + "node_id": "RA_kwDOB73d0M4C0j3-", + "name": "python-installable-svm-java17-darwin-amd64-21.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 131162691, + "download_count": 188, + "created_at": "2021-10-19T08:38:26Z", + "updated_at": "2021-10-19T08:38:46Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java17-darwin-amd64-21.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332908", + "id": 47332908, + "node_id": "RA_kwDOB73d0M4C0j4s", + "name": "python-installable-svm-java17-darwin-amd64-21.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2021-10-19T08:39:34Z", + "updated_at": "2021-10-19T08:39:34Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java17-darwin-amd64-21.3.0.jar.sha256" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332875", + "id": 47332875, + "node_id": "RA_kwDOB73d0M4C0j4L", + "name": "python-installable-svm-java17-linux-amd64-21.3.0.jar", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 127651756, + "download_count": 3398, + "created_at": "2021-10-19T08:38:47Z", + "updated_at": "2021-10-19T08:39:12Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java17-linux-amd64-21.3.0.jar" + }, + { + "url": "https://api.github.com/repos/oracle/graalpython/releases/assets/47332910", + "id": 47332910, + "node_id": "RA_kwDOB73d0M4C0j4u", + "name": "python-installable-svm-java17-linux-amd64-21.3.0.jar.sha256", + "label": "", + "uploader": { + "login": "ezzarghili", + "id": 8616968, + "node_id": "MDQ6VXNlcjg2MTY5Njg=", + "avatar_url": "https://avatars.githubusercontent.com/u/8616968?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/ezzarghili", + "html_url": "https://github.com/ezzarghili", + "followers_url": "https://api.github.com/users/ezzarghili/followers", + "following_url": "https://api.github.com/users/ezzarghili/following{/other_user}", + "gists_url": "https://api.github.com/users/ezzarghili/gists{/gist_id}", + "starred_url": "https://api.github.com/users/ezzarghili/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/ezzarghili/subscriptions", + "organizations_url": "https://api.github.com/users/ezzarghili/orgs", + "repos_url": "https://api.github.com/users/ezzarghili/repos", + "events_url": "https://api.github.com/users/ezzarghili/events{/privacy}", + "received_events_url": "https://api.github.com/users/ezzarghili/received_events", + "type": "User", + "site_admin": false + }, + "content_type": "application/binary", + "state": "uploaded", + "size": 64, + "download_count": 4, + "created_at": "2021-10-19T08:39:35Z", + "updated_at": "2021-10-19T08:39:35Z", + "browser_download_url": "https://github.com/oracle/graalpython/releases/download/vm-21.3.0/python-installable-svm-java17-linux-amd64-21.3.0.jar.sha256" + } + ], + "tarball_url": "https://api.github.com/repos/oracle/graalpython/tarball/vm-21.3.0", + "zipball_url": "https://api.github.com/repos/oracle/graalpython/zipball/vm-21.3.0", + "body": "This is a Python 3.8.5 implementation on top of GraalVM. Currently, it is under development and as such, it is not ready for any production use beyond simple usecases and scripting. The main focus of development right now is to get NumPy, SciPy and related libraries working.\r\n\r\nThe Python language component can be added to GraalVM using the `gu` utility.\r\n\r\nMore information is available on the GraalVM website: http://www.graalvm.org/reference-manual/python/\r\n" + } +] diff --git a/__tests__/find-graalpy.test.ts b/__tests__/find-graalpy.test.ts new file mode 100644 index 00000000..1eb065fe --- /dev/null +++ b/__tests__/find-graalpy.test.ts @@ -0,0 +1,378 @@ +import fs from 'fs'; + +import {HttpClient} from '@actions/http-client'; +import * as ifm from '@actions/http-client/interfaces'; +import * as tc from '@actions/tool-cache'; +import * as exec from '@actions/exec'; +import * as core from '@actions/core'; + +import * as path from 'path'; +import * as semver from 'semver'; + +import * as finder from '../src/find-graalpy'; +import {IGraalPyManifestRelease, IS_WINDOWS} from '../src/utils'; + +import manifestData from './data/graalpy.json'; + +const architecture = 'x64'; + +const toolDir = path.join(__dirname, 'runner', 'tools'); +const tempDir = path.join(__dirname, 'runner', 'temp'); + +/* GraalPy doesn't have a windows release yet */ +const describeSkipOnWindows = IS_WINDOWS ? describe.skip : describe; + +describe('parseGraalPyVersion', () => { + it.each([ + ['graalpy-23', '23'], + ['graalpy-23.0', '23.0'], + ['graalpy23.0', '23.0'] + ])('%s -> %s', (input, expected) => { + expect(finder.parseGraalPyVersion(input)).toEqual(expected); + }); + + it.each(['', 'graalpy-', 'graalpy', 'p', 'notgraalpy-'])( + 'throw on invalid input "%s"', + input => { + expect(() => finder.parseGraalPyVersion(input)).toThrow( + "Invalid 'version' property for GraalPy. GraalPy version should be specified as 'graalpy' or 'graalpy-'. See README for examples and documentation." + ); + } + ); +}); + +describe('findGraalPyToolCache', () => { + const actualGraalPyVersion = '23.0.0'; + const graalpyPath = path.join('GraalPy', actualGraalPyVersion, architecture); + let tcFind: jest.SpyInstance; + let infoSpy: jest.SpyInstance; + let warningSpy: jest.SpyInstance; + let debugSpy: jest.SpyInstance; + let addPathSpy: jest.SpyInstance; + let exportVariableSpy: jest.SpyInstance; + let setOutputSpy: jest.SpyInstance; + + beforeEach(() => { + tcFind = jest.spyOn(tc, 'find'); + tcFind.mockImplementation((toolname: string, pythonVersion: string) => { + const semverVersion = new semver.Range(pythonVersion); + return semver.satisfies(actualGraalPyVersion, semverVersion) + ? graalpyPath + : ''; + }); + + infoSpy = jest.spyOn(core, 'info'); + infoSpy.mockImplementation(() => null); + + warningSpy = jest.spyOn(core, 'warning'); + warningSpy.mockImplementation(() => null); + + debugSpy = jest.spyOn(core, 'debug'); + debugSpy.mockImplementation(() => null); + + addPathSpy = jest.spyOn(core, 'addPath'); + addPathSpy.mockImplementation(() => null); + + exportVariableSpy = jest.spyOn(core, 'exportVariable'); + exportVariableSpy.mockImplementation(() => null); + + setOutputSpy = jest.spyOn(core, 'setOutput'); + setOutputSpy.mockImplementation(() => null); + }); + + afterEach(() => { + jest.resetAllMocks(); + jest.clearAllMocks(); + jest.restoreAllMocks(); + }); + + it('GraalPy exists on the path and versions are satisfied', () => { + expect(finder.findGraalPyToolCache('23.0.0', architecture)).toEqual({ + installDir: graalpyPath, + resolvedGraalPyVersion: actualGraalPyVersion + }); + }); + + it('GraalPy exists on the path and versions are satisfied with semver', () => { + expect(finder.findGraalPyToolCache('23.0', architecture)).toEqual({ + installDir: graalpyPath, + resolvedGraalPyVersion: actualGraalPyVersion + }); + }); + + it("GraalPy exists on the path, but version doesn't match", () => { + expect(finder.findGraalPyToolCache('22.3', architecture)).toEqual({ + installDir: '', + resolvedGraalPyVersion: '' + }); + }); +}); + +describeSkipOnWindows('findGraalPyVersion', () => { + let getBooleanInputSpy: jest.SpyInstance; + let warningSpy: jest.SpyInstance; + let debugSpy: jest.SpyInstance; + let infoSpy: jest.SpyInstance; + let addPathSpy: jest.SpyInstance; + let exportVariableSpy: jest.SpyInstance; + let setOutputSpy: jest.SpyInstance; + let tcFind: jest.SpyInstance; + let spyExtractZip: jest.SpyInstance; + let spyExtractTar: jest.SpyInstance; + let spyHttpClient: jest.SpyInstance; + let spyExistsSync: jest.SpyInstance; + let spyExec: jest.SpyInstance; + let spySymlinkSync: jest.SpyInstance; + let spyDownloadTool: jest.SpyInstance; + let spyFsReadDir: jest.SpyInstance; + let spyCacheDir: jest.SpyInstance; + let spyChmodSync: jest.SpyInstance; + let spyCoreAddPath: jest.SpyInstance; + let spyCoreExportVariable: jest.SpyInstance; + const env = process.env; + + beforeEach(() => { + getBooleanInputSpy = jest.spyOn(core, 'getBooleanInput'); + getBooleanInputSpy.mockImplementation(() => false); + + infoSpy = jest.spyOn(core, 'info'); + infoSpy.mockImplementation(() => {}); + + warningSpy = jest.spyOn(core, 'warning'); + warningSpy.mockImplementation(() => null); + + debugSpy = jest.spyOn(core, 'debug'); + debugSpy.mockImplementation(() => null); + + addPathSpy = jest.spyOn(core, 'addPath'); + addPathSpy.mockImplementation(() => null); + + exportVariableSpy = jest.spyOn(core, 'exportVariable'); + exportVariableSpy.mockImplementation(() => null); + + setOutputSpy = jest.spyOn(core, 'setOutput'); + setOutputSpy.mockImplementation(() => null); + + jest.resetModules(); + process.env = {...env}; + tcFind = jest.spyOn(tc, 'find'); + tcFind.mockImplementation((tool: string, version: string) => { + const semverRange = new semver.Range(version); + let graalpyPath = ''; + if (semver.satisfies('23.0.0', semverRange)) { + graalpyPath = path.join(toolDir, 'GraalPy', '23.0.0', architecture); + } + return graalpyPath; + }); + + spyDownloadTool = jest.spyOn(tc, 'downloadTool'); + spyDownloadTool.mockImplementation(() => path.join(tempDir, 'GraalPy')); + + spyExtractZip = jest.spyOn(tc, 'extractZip'); + spyExtractZip.mockImplementation(() => tempDir); + + spyExtractTar = jest.spyOn(tc, 'extractTar'); + spyExtractTar.mockImplementation(() => tempDir); + + spyFsReadDir = jest.spyOn(fs, 'readdirSync'); + spyFsReadDir.mockImplementation((directory: string) => ['GraalPyTest']); + + spyHttpClient = jest.spyOn(HttpClient.prototype, 'getJson'); + spyHttpClient.mockImplementation( + async (): Promise> => { + const result = JSON.stringify(manifestData); + return { + statusCode: 200, + headers: {}, + result: JSON.parse(result) as IGraalPyManifestRelease[] + }; + } + ); + + spyExec = jest.spyOn(exec, 'exec'); + spyExec.mockImplementation(() => undefined); + + spySymlinkSync = jest.spyOn(fs, 'symlinkSync'); + spySymlinkSync.mockImplementation(() => undefined); + + spyExistsSync = jest.spyOn(fs, 'existsSync'); + spyExistsSync.mockReturnValue(true); + + spyCoreAddPath = jest.spyOn(core, 'addPath'); + + spyCoreExportVariable = jest.spyOn(core, 'exportVariable'); + }); + + afterEach(() => { + jest.resetAllMocks(); + jest.clearAllMocks(); + jest.restoreAllMocks(); + process.env = env; + }); + + it('found GraalPy in toolcache', async () => { + await expect( + finder.findGraalPyVersion( + 'graalpy-23.0', + architecture, + true, + false, + false + ) + ).resolves.toEqual('23.0.0'); + expect(spyCoreAddPath).toHaveBeenCalled(); + expect(spyCoreExportVariable).toHaveBeenCalledWith( + 'pythonLocation', + expect.anything() + ); + expect(spyCoreExportVariable).toHaveBeenCalledWith( + 'PKG_CONFIG_PATH', + expect.anything() + ); + }); + + it('throw on invalid input format', async () => { + await expect( + finder.findGraalPyVersion('graalpy-x23', architecture, true, false, false) + ).rejects.toThrow(); + }); + + it('found and install successfully', async () => { + spyCacheDir = jest.spyOn(tc, 'cacheDir'); + spyCacheDir.mockImplementation(() => + path.join(toolDir, 'GraalPy', '23.0.0', architecture) + ); + spyChmodSync = jest.spyOn(fs, 'chmodSync'); + spyChmodSync.mockImplementation(() => undefined); + await expect( + finder.findGraalPyVersion( + 'graalpy-23.0.0', + architecture, + true, + false, + false + ) + ).resolves.toEqual('23.0.0'); + expect(spyCoreAddPath).toHaveBeenCalled(); + expect(spyCoreExportVariable).toHaveBeenCalledWith( + 'pythonLocation', + expect.anything() + ); + expect(spyCoreExportVariable).toHaveBeenCalledWith( + 'PKG_CONFIG_PATH', + expect.anything() + ); + }); + + it('found and install successfully without environment update', async () => { + spyCacheDir = jest.spyOn(tc, 'cacheDir'); + spyCacheDir.mockImplementation(() => + path.join(toolDir, 'GraalPy', '23.0.0', architecture) + ); + spyChmodSync = jest.spyOn(fs, 'chmodSync'); + spyChmodSync.mockImplementation(() => undefined); + await expect( + finder.findGraalPyVersion( + 'graalpy-23.0.0', + architecture, + false, + false, + false + ) + ).resolves.toEqual('23.0.0'); + expect(spyCoreAddPath).not.toHaveBeenCalled(); + expect(spyCoreExportVariable).not.toHaveBeenCalled(); + }); + + it('throw if release is not found', async () => { + await expect( + finder.findGraalPyVersion( + 'graalpy-19.0.0', + architecture, + true, + false, + false + ) + ).rejects.toThrow( + `GraalPy version 19.0.0 with arch ${architecture} not found` + ); + }); + + it('check-latest enabled version found and used from toolcache', async () => { + await expect( + finder.findGraalPyVersion( + 'graalpy-23.0.0', + architecture, + false, + true, + false + ) + ).resolves.toEqual('23.0.0'); + + expect(infoSpy).toHaveBeenCalledWith('Resolved as GraalPy 23.0.0'); + }); + + it('check-latest enabled version found and install successfully', async () => { + spyCacheDir = jest.spyOn(tc, 'cacheDir'); + spyCacheDir.mockImplementation(() => + path.join(toolDir, 'GraalPy', '23.0.0', architecture) + ); + spyChmodSync = jest.spyOn(fs, 'chmodSync'); + spyChmodSync.mockImplementation(() => undefined); + await expect( + finder.findGraalPyVersion( + 'graalpy-23.0.0', + architecture, + false, + true, + false + ) + ).resolves.toEqual('23.0.0'); + expect(infoSpy).toHaveBeenCalledWith('Resolved as GraalPy 23.0.0'); + }); + + it('check-latest enabled version is not found and used from toolcache', async () => { + tcFind.mockImplementationOnce((tool: string, version: string) => { + const semverRange = new semver.Range(version); + let graalpyPath = ''; + if (semver.satisfies('22.3.4', semverRange)) { + graalpyPath = path.join(toolDir, 'GraalPy', '22.3.4', architecture); + } + return graalpyPath; + }); + await expect( + finder.findGraalPyVersion( + 'graalpy-22.3.4', + architecture, + false, + true, + false + ) + ).resolves.toEqual('22.3.4'); + + expect(infoSpy).toHaveBeenCalledWith( + 'Failed to resolve GraalPy 22.3.4 from manifest' + ); + }); + + it('found and install successfully, pre-release fallback', async () => { + spyCacheDir = jest.spyOn(tc, 'cacheDir'); + spyCacheDir.mockImplementation(() => + path.join(toolDir, 'GraalPy', '23.1', architecture) + ); + spyChmodSync = jest.spyOn(fs, 'chmodSync'); + spyChmodSync.mockImplementation(() => undefined); + await expect( + finder.findGraalPyVersion( + 'graalpy23.1', + architecture, + false, + false, + false + ) + ).rejects.toThrow(); + await expect( + finder.findGraalPyVersion('graalpy23.1', architecture, false, false, true) + ).resolves.toEqual('23.1.0-a.1'); + }); +}); diff --git a/__tests__/install-graalpy.test.ts b/__tests__/install-graalpy.test.ts new file mode 100644 index 00000000..25784e81 --- /dev/null +++ b/__tests__/install-graalpy.test.ts @@ -0,0 +1,256 @@ +import fs from 'fs'; + +import {HttpClient} from '@actions/http-client'; +import * as ifm from '@actions/http-client/interfaces'; +import * as tc from '@actions/tool-cache'; +import * as exec from '@actions/exec'; +import * as core from '@actions/core'; +import * as path from 'path'; + +import * as installer from '../src/install-graalpy'; +import { + IGraalPyManifestRelease, + IGraalPyManifestAsset, + IS_WINDOWS +} from '../src/utils'; + +import manifestData from './data/graalpy.json'; + +const architecture = 'x64'; + +const toolDir = path.join(__dirname, 'runner', 'tools'); +const tempDir = path.join(__dirname, 'runner', 'temp'); + +/* GraalPy doesn't have a windows release yet */ +const describeSkipOnWindows = IS_WINDOWS ? describe.skip : describe; + +describe('graalpyVersionToSemantic', () => { + it.each([ + ['23.0.0a1', '23.0.0a1'], + ['23.0.0', '23.0.0'], + ['23.0.x', '23.0.x'], + ['23.x', '23.x'] + ])('%s -> %s', (input, expected) => { + expect(installer.graalPyTagToVersion(input)).toEqual(expected); + }); +}); + +describeSkipOnWindows('findRelease', () => { + const result = JSON.stringify(manifestData); + const releases = JSON.parse(result) as IGraalPyManifestRelease[]; + const extension = 'tar.gz'; + const arch = installer.toGraalPyArchitecture(architecture); + const platform = installer.toGraalPyPlatform(process.platform); + const extensionName = `${platform}-${arch}.${extension}`; + const files: IGraalPyManifestAsset = { + name: `graalpython-23.0.0-${extensionName}`, + browser_download_url: `https://github.com/oracle/graalpython/releases/download/graal-23.0.0/graalpython-23.0.0-${extensionName}` + }; + const filesRC1: IGraalPyManifestAsset = { + name: `graalpython-23.1.0a1-${extensionName}`, + browser_download_url: `https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-${extensionName}` + }; + + let warningSpy: jest.SpyInstance; + let debugSpy: jest.SpyInstance; + let infoSpy: jest.SpyInstance; + + beforeEach(() => { + infoSpy = jest.spyOn(core, 'info'); + infoSpy.mockImplementation(() => {}); + + warningSpy = jest.spyOn(core, 'warning'); + warningSpy.mockImplementation(() => null); + + debugSpy = jest.spyOn(core, 'debug'); + debugSpy.mockImplementation(() => null); + }); + + it("GraalPy version doesn't match", () => { + const graalpyVersion = '12.0.0'; + expect( + installer.findRelease(releases, graalpyVersion, architecture, false) + ).toEqual(null); + }); + + it('GraalPy version matches', () => { + const graalpyVersion = '23.0.0'; + expect( + installer.findRelease(releases, graalpyVersion, architecture, false) + ).toMatchObject({ + foundAsset: files, + resolvedGraalPyVersion: graalpyVersion + }); + }); + + it('Preview version of GraalPy is found', () => { + const graalpyVersion = installer.graalPyTagToVersion('vm-23.1.0a1'); + expect( + installer.findRelease(releases, graalpyVersion, architecture, false) + ).toMatchObject({ + foundAsset: { + name: `graalpython-23.1.0a1-${extensionName}`, + browser_download_url: `https://github.com/oracle/graalpython/releases/download/graal-23.1.0a1/graalpython-23.1.0a1-${extensionName}` + }, + resolvedGraalPyVersion: '23.1.0-a.1' + }); + }); + + it('Latest GraalPy is found', () => { + const graalpyVersion = 'x'; + expect( + installer.findRelease(releases, graalpyVersion, architecture, false) + ).toMatchObject({ + foundAsset: files, + resolvedGraalPyVersion: '23.0.0' + }); + }); + + it('GraalPy version matches semver (pre-release)', () => { + const graalpyVersion = '23.1.x'; + expect( + installer.findRelease(releases, graalpyVersion, architecture, false) + ).toBeNull(); + expect( + installer.findRelease(releases, graalpyVersion, architecture, true) + ).toMatchObject({ + foundAsset: filesRC1, + resolvedGraalPyVersion: '23.1.0-a.1' + }); + }); +}); + +describeSkipOnWindows('installGraalPy', () => { + let tcFind: jest.SpyInstance; + let warningSpy: jest.SpyInstance; + let debugSpy: jest.SpyInstance; + let infoSpy: jest.SpyInstance; + let spyExtractZip: jest.SpyInstance; + let spyExtractTar: jest.SpyInstance; + let spyFsReadDir: jest.SpyInstance; + let spyFsWriteFile: jest.SpyInstance; + let spyHttpClient: jest.SpyInstance; + let spyExistsSync: jest.SpyInstance; + let spyExec: jest.SpyInstance; + let spySymlinkSync: jest.SpyInstance; + let spyDownloadTool: jest.SpyInstance; + let spyCacheDir: jest.SpyInstance; + let spyChmodSync: jest.SpyInstance; + + beforeEach(() => { + tcFind = jest.spyOn(tc, 'find'); + tcFind.mockImplementation(() => + path.join('GraalPy', '3.6.12', architecture) + ); + + spyDownloadTool = jest.spyOn(tc, 'downloadTool'); + spyDownloadTool.mockImplementation(() => path.join(tempDir, 'GraalPy')); + + spyExtractZip = jest.spyOn(tc, 'extractZip'); + spyExtractZip.mockImplementation(() => tempDir); + + spyExtractTar = jest.spyOn(tc, 'extractTar'); + spyExtractTar.mockImplementation(() => tempDir); + + infoSpy = jest.spyOn(core, 'info'); + infoSpy.mockImplementation(() => {}); + + warningSpy = jest.spyOn(core, 'warning'); + warningSpy.mockImplementation(() => null); + + debugSpy = jest.spyOn(core, 'debug'); + debugSpy.mockImplementation(() => null); + + spyFsReadDir = jest.spyOn(fs, 'readdirSync'); + spyFsReadDir.mockImplementation(() => ['GraalPyTest']); + + spyFsWriteFile = jest.spyOn(fs, 'writeFileSync'); + spyFsWriteFile.mockImplementation(() => undefined); + + spyHttpClient = jest.spyOn(HttpClient.prototype, 'getJson'); + spyHttpClient.mockImplementation( + async (): Promise> => { + const result = JSON.stringify(manifestData); + return { + statusCode: 200, + headers: {}, + result: JSON.parse(result) as IGraalPyManifestRelease[] + }; + } + ); + + spyExec = jest.spyOn(exec, 'exec'); + spyExec.mockImplementation(() => undefined); + + spySymlinkSync = jest.spyOn(fs, 'symlinkSync'); + spySymlinkSync.mockImplementation(() => undefined); + + spyExistsSync = jest.spyOn(fs, 'existsSync'); + spyExistsSync.mockImplementation(() => false); + }); + + afterEach(() => { + jest.resetAllMocks(); + jest.clearAllMocks(); + jest.restoreAllMocks(); + }); + + it('throw if release is not found', async () => { + await expect( + installer.installGraalPy('7.3.3', architecture, false, undefined) + ).rejects.toThrow( + `GraalPy version 7.3.3 with arch ${architecture} not found` + ); + + expect(spyHttpClient).toHaveBeenCalled(); + expect(spyDownloadTool).not.toHaveBeenCalled(); + expect(spyExec).not.toHaveBeenCalled(); + }); + + it('found and install GraalPy', async () => { + spyCacheDir = jest.spyOn(tc, 'cacheDir'); + spyCacheDir.mockImplementation(() => + path.join(toolDir, 'GraalPy', '21.3.0', architecture) + ); + + spyChmodSync = jest.spyOn(fs, 'chmodSync'); + spyChmodSync.mockImplementation(() => undefined); + + await expect( + installer.installGraalPy('21.x', architecture, false, undefined) + ).resolves.toEqual({ + installDir: path.join(toolDir, 'GraalPy', '21.3.0', architecture), + resolvedGraalPyVersion: '21.3.0' + }); + + expect(spyHttpClient).toHaveBeenCalled(); + expect(spyDownloadTool).toHaveBeenCalled(); + expect(spyCacheDir).toHaveBeenCalled(); + expect(spyExec).toHaveBeenCalled(); + }); + + it('found and install GraalPy, pre-release fallback', async () => { + spyCacheDir = jest.spyOn(tc, 'cacheDir'); + spyCacheDir.mockImplementation(() => + path.join(toolDir, 'GraalPy', '23.1.0', architecture) + ); + + spyChmodSync = jest.spyOn(fs, 'chmodSync'); + spyChmodSync.mockImplementation(() => undefined); + + await expect( + installer.installGraalPy('23.1.x', architecture, false, undefined) + ).rejects.toThrow(); + await expect( + installer.installGraalPy('23.1.x', architecture, true, undefined) + ).resolves.toEqual({ + installDir: path.join(toolDir, 'GraalPy', '23.1.0', architecture), + resolvedGraalPyVersion: '23.1.0-a.1' + }); + + expect(spyHttpClient).toHaveBeenCalled(); + expect(spyDownloadTool).toHaveBeenCalled(); + expect(spyCacheDir).toHaveBeenCalled(); + expect(spyExec).toHaveBeenCalled(); + }); +}); diff --git a/__tests__/utils.test.ts b/__tests__/utils.test.ts index 40ef2f6c..f5e36478 100644 --- a/__tests__/utils.test.ts +++ b/__tests__/utils.test.ts @@ -11,7 +11,8 @@ import { isCacheFeatureAvailable, getVersionInputFromFile, getVersionInputFromPlainFile, - getVersionInputFromTomlFile + getVersionInputFromTomlFile, + getNextPageUrl } from '../src/utils'; jest.mock('@actions/cache'); @@ -136,3 +137,25 @@ describe('Version from file test', () => { } ); }); + +describe('getNextPageUrl', () => { + it('GitHub API pagination next page is parsed correctly', () => { + function generateResponse(link: string) { + return { + statusCode: 200, + result: null, + headers: { + link: link + } + }; + } + const page1Links = + '; rel="next", ; rel="last"'; + expect(getNextPageUrl(generateResponse(page1Links))).toStrictEqual( + 'https://api.github.com/repositories/129883600/releases?page=2' + ); + const page2Links = + '; rel="prev", ; rel="first"'; + expect(getNextPageUrl(generateResponse(page2Links))).toBeNull(); + }); +}); diff --git a/dist/setup/index.js b/dist/setup/index.js index 5876e780..4f9ca50c 100644 --- a/dist/setup/index.js +++ b/dist/setup/index.js @@ -69091,6 +69091,132 @@ class PoetryCache extends cache_distributor_1.default { exports["default"] = PoetryCache; +/***/ }), + +/***/ 8040: +/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { + +"use strict"; + +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.parseGraalPyVersion = exports.findGraalPyToolCache = exports.findGraalPyVersion = void 0; +const path = __importStar(__nccwpck_require__(1017)); +const graalpyInstall = __importStar(__nccwpck_require__(8265)); +const utils_1 = __nccwpck_require__(1314); +const semver = __importStar(__nccwpck_require__(1383)); +const core = __importStar(__nccwpck_require__(2186)); +const tc = __importStar(__nccwpck_require__(7784)); +function findGraalPyVersion(versionSpec, architecture, updateEnvironment, checkLatest, allowPreReleases) { + return __awaiter(this, void 0, void 0, function* () { + let resolvedGraalPyVersion = ''; + let installDir; + let releases; + let graalpyVersionSpec = parseGraalPyVersion(versionSpec); + if (checkLatest) { + releases = yield graalpyInstall.getAvailableGraalPyVersions(); + if (releases && releases.length > 0) { + const releaseData = graalpyInstall.findRelease(releases, graalpyVersionSpec, architecture, false); + if (releaseData) { + core.info(`Resolved as GraalPy ${releaseData.resolvedGraalPyVersion}`); + graalpyVersionSpec = releaseData.resolvedGraalPyVersion; + } + else { + core.info(`Failed to resolve GraalPy ${graalpyVersionSpec} from manifest`); + } + } + } + ({ installDir, resolvedGraalPyVersion } = findGraalPyToolCache(graalpyVersionSpec, architecture)); + if (!installDir) { + ({ installDir, resolvedGraalPyVersion } = yield graalpyInstall.installGraalPy(graalpyVersionSpec, architecture, allowPreReleases, releases)); + } + const pipDir = utils_1.IS_WINDOWS ? 'Scripts' : 'bin'; + const _binDir = path.join(installDir, pipDir); + const binaryExtension = utils_1.IS_WINDOWS ? '.exe' : ''; + const pythonPath = path.join(utils_1.IS_WINDOWS ? installDir : _binDir, `python${binaryExtension}`); + const pythonLocation = utils_1.getBinaryDirectory(installDir); + if (updateEnvironment) { + core.exportVariable('pythonLocation', installDir); + // https://cmake.org/cmake/help/latest/module/FindPython.html#module:FindPython + core.exportVariable('Python_ROOT_DIR', installDir); + // https://cmake.org/cmake/help/latest/module/FindPython2.html#module:FindPython2 + core.exportVariable('Python2_ROOT_DIR', installDir); + // https://cmake.org/cmake/help/latest/module/FindPython3.html#module:FindPython3 + core.exportVariable('Python3_ROOT_DIR', installDir); + core.exportVariable('PKG_CONFIG_PATH', pythonLocation + '/lib/pkgconfig'); + core.addPath(pythonLocation); + core.addPath(_binDir); + } + core.setOutput('python-version', 'graalpy' + resolvedGraalPyVersion); + core.setOutput('python-path', pythonPath); + return resolvedGraalPyVersion; + }); +} +exports.findGraalPyVersion = findGraalPyVersion; +function findGraalPyToolCache(graalpyVersion, architecture) { + let resolvedGraalPyVersion = ''; + let installDir = tc.find('GraalPy', graalpyVersion, architecture); + if (installDir) { + // 'tc.find' finds tool based on Python version but we also need to check + // whether GraalPy version satisfies requested version. + resolvedGraalPyVersion = path.basename(path.dirname(installDir)); + const isGraalPyVersionSatisfies = semver.satisfies(resolvedGraalPyVersion, graalpyVersion); + if (!isGraalPyVersionSatisfies) { + installDir = null; + resolvedGraalPyVersion = ''; + } + } + if (!installDir) { + core.info(`GraalPy version ${graalpyVersion} was not found in the local cache`); + } + return { installDir, resolvedGraalPyVersion }; +} +exports.findGraalPyToolCache = findGraalPyToolCache; +function parseGraalPyVersion(versionSpec) { + const versions = versionSpec.split('-').filter(item => !!item); + if (/^(graalpy)(.+)/.test(versions[0])) { + const version = versions[0].replace('graalpy', ''); + versions.splice(0, 1, 'graalpy', version); + } + if (versions.length < 2 || versions[0] != 'graalpy') { + throw new Error("Invalid 'version' property for GraalPy. GraalPy version should be specified as 'graalpy' or 'graalpy-'. See README for examples and documentation."); + } + const pythonVersion = versions[1]; + if (!utils_1.validateVersion(pythonVersion)) { + throw new Error("Invalid 'version' property for GraalPy. GraalPy versions should satisfy SemVer notation. See README for examples and documentation."); + } + return pythonVersion; +} +exports.parseGraalPyVersion = parseGraalPyVersion; + + /***/ }), /***/ 4003: @@ -69164,7 +69290,7 @@ function findPyPyVersion(versionSpec, architecture, updateEnvironment, checkLate const _binDir = path.join(installDir, pipDir); const binaryExtension = utils_1.IS_WINDOWS ? '.exe' : ''; const pythonPath = path.join(utils_1.IS_WINDOWS ? installDir : _binDir, `python${binaryExtension}`); - const pythonLocation = pypyInstall.getPyPyBinaryPath(installDir); + const pythonLocation = utils_1.getBinaryDirectory(installDir); if (updateEnvironment) { core.exportVariable('pythonLocation', installDir); // https://cmake.org/cmake/help/latest/module/FindPython.html#module:FindPython @@ -69419,6 +69545,222 @@ function pythonVersionToSemantic(versionSpec, allowPreReleases) { exports.pythonVersionToSemantic = pythonVersionToSemantic; +/***/ }), + +/***/ 8265: +/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { + +"use strict"; + +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); + __setModuleDefault(result, mod); + return result; +}; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", ({ value: true })); +exports.findAsset = exports.toGraalPyArchitecture = exports.toGraalPyPlatform = exports.findRelease = exports.graalPyTagToVersion = exports.getAvailableGraalPyVersions = exports.installGraalPy = void 0; +const os = __importStar(__nccwpck_require__(2037)); +const path = __importStar(__nccwpck_require__(1017)); +const core = __importStar(__nccwpck_require__(2186)); +const tc = __importStar(__nccwpck_require__(7784)); +const semver = __importStar(__nccwpck_require__(1383)); +const httpm = __importStar(__nccwpck_require__(9925)); +const exec = __importStar(__nccwpck_require__(1514)); +const fs_1 = __importDefault(__nccwpck_require__(7147)); +const utils_1 = __nccwpck_require__(1314); +const TOKEN = core.getInput('token'); +const AUTH = !TOKEN ? undefined : `token ${TOKEN}`; +function installGraalPy(graalpyVersion, architecture, allowPreReleases, releases) { + return __awaiter(this, void 0, void 0, function* () { + let downloadDir; + releases = releases !== null && releases !== void 0 ? releases : (yield getAvailableGraalPyVersions()); + if (!releases || !releases.length) { + throw new Error('No release was found in GraalPy version.json'); + } + let releaseData = findRelease(releases, graalpyVersion, architecture, false); + if (allowPreReleases && (!releaseData || !releaseData.foundAsset)) { + // check for pre-release + core.info([ + `Stable GraalPy version ${graalpyVersion} with arch ${architecture} not found`, + `Trying pre-release versions` + ].join(os.EOL)); + releaseData = findRelease(releases, graalpyVersion, architecture, true); + } + if (!releaseData || !releaseData.foundAsset) { + throw new Error(`GraalPy version ${graalpyVersion} with arch ${architecture} not found`); + } + const { foundAsset, resolvedGraalPyVersion } = releaseData; + const downloadUrl = `${foundAsset.browser_download_url}`; + core.info(`Downloading GraalPy from "${downloadUrl}" ...`); + try { + const graalpyPath = yield tc.downloadTool(downloadUrl, undefined, AUTH); + core.info('Extracting downloaded archive...'); + downloadDir = yield tc.extractTar(graalpyPath); + // root folder in archive can have unpredictable name so just take the first folder + // downloadDir is unique folder under TEMP and can't contain any other folders + const archiveName = fs_1.default.readdirSync(downloadDir)[0]; + const toolDir = path.join(downloadDir, archiveName); + let installDir = toolDir; + if (!utils_1.isNightlyKeyword(resolvedGraalPyVersion)) { + installDir = yield tc.cacheDir(toolDir, 'GraalPy', resolvedGraalPyVersion, architecture); + } + const binaryPath = utils_1.getBinaryDirectory(installDir); + yield createGraalPySymlink(binaryPath, resolvedGraalPyVersion); + yield installPip(binaryPath); + return { installDir, resolvedGraalPyVersion }; + } + catch (err) { + if (err instanceof Error) { + // Rate limit? + if (err instanceof tc.HTTPError && + (err.httpStatusCode === 403 || err.httpStatusCode === 429)) { + core.info(`Received HTTP status code ${err.httpStatusCode}. This usually indicates the rate limit has been exceeded`); + } + else { + core.info(err.message); + } + if (err.stack !== undefined) { + core.debug(err.stack); + } + } + throw err; + } + }); +} +exports.installGraalPy = installGraalPy; +function getAvailableGraalPyVersions() { + return __awaiter(this, void 0, void 0, function* () { + const http = new httpm.HttpClient('tool-cache'); + const headers = {}; + if (AUTH) { + headers.authorization = AUTH; + } + let url = 'https://api.github.com/repos/oracle/graalpython/releases'; + const result = []; + do { + const response = yield http.getJson(url, headers); + if (!response.result) { + throw new Error(`Unable to retrieve the list of available GraalPy versions from '${url}'`); + } + result.push(...response.result); + url = utils_1.getNextPageUrl(response); + } while (url); + return result; + }); +} +exports.getAvailableGraalPyVersions = getAvailableGraalPyVersions; +function createGraalPySymlink(graalpyBinaryPath, graalpyVersion) { + return __awaiter(this, void 0, void 0, function* () { + const version = semver.coerce(graalpyVersion); + const pythonBinaryPostfix = semver.major(version); + const pythonMinor = semver.minor(version); + const graalpyMajorMinorBinaryPostfix = `${pythonBinaryPostfix}.${pythonMinor}`; + const binaryExtension = utils_1.IS_WINDOWS ? '.exe' : ''; + core.info('Creating symlinks...'); + utils_1.createSymlinkInFolder(graalpyBinaryPath, `graalpy${binaryExtension}`, `python${pythonBinaryPostfix}${binaryExtension}`, true); + utils_1.createSymlinkInFolder(graalpyBinaryPath, `graalpy${binaryExtension}`, `python${binaryExtension}`, true); + utils_1.createSymlinkInFolder(graalpyBinaryPath, `graalpy${binaryExtension}`, `graalpy${graalpyMajorMinorBinaryPostfix}${binaryExtension}`, true); + }); +} +function installPip(pythonLocation) { + return __awaiter(this, void 0, void 0, function* () { + core.info("Installing pip (GraalPy doesn't update pip because it uses a patched version of pip)"); + const pythonBinary = path.join(pythonLocation, 'python'); + yield exec.exec(`${pythonBinary} -m ensurepip --default-pip`); + }); +} +function graalPyTagToVersion(tag) { + const versionPattern = /.*-(\d+\.\d+\.\d+(?:\.\d+)?)((?:a|b|rc))?(\d*)?/; + const match = tag.match(versionPattern); + if (match && match[2]) { + return `${match[1]}-${match[2]}.${match[3]}`; + } + else if (match) { + return match[1]; + } + else { + return tag.replace(/.*-/, ''); + } +} +exports.graalPyTagToVersion = graalPyTagToVersion; +function findRelease(releases, graalpyVersion, architecture, includePrerelease) { + const options = { includePrerelease: includePrerelease }; + const filterReleases = releases.filter(item => { + const isVersionSatisfied = semver.satisfies(graalPyTagToVersion(item.tag_name), graalpyVersion, options); + return (isVersionSatisfied && !!findAsset(item, architecture, process.platform)); + }); + if (!filterReleases.length) { + return null; + } + const sortedReleases = filterReleases.sort((previous, current) => semver.compare(semver.coerce(graalPyTagToVersion(current.tag_name)), semver.coerce(graalPyTagToVersion(previous.tag_name)))); + const foundRelease = sortedReleases[0]; + const foundAsset = findAsset(foundRelease, architecture, process.platform); + return { + foundAsset, + resolvedGraalPyVersion: graalPyTagToVersion(foundRelease.tag_name) + }; +} +exports.findRelease = findRelease; +function toGraalPyPlatform(platform) { + switch (platform) { + case 'win32': + return 'windows'; + case 'darwin': + return 'macos'; + } + return platform; +} +exports.toGraalPyPlatform = toGraalPyPlatform; +function toGraalPyArchitecture(architecture) { + switch (architecture) { + case 'x64': + return 'amd64'; + case 'arm64': + return 'aarch64'; + } + return architecture; +} +exports.toGraalPyArchitecture = toGraalPyArchitecture; +function findAsset(item, architecture, platform) { + const graalpyArch = toGraalPyArchitecture(architecture); + const graalpyPlatform = toGraalPyPlatform(platform); + const found = item.assets.filter(file => file.name.startsWith('graalpy') && + file.name.endsWith(`-${graalpyPlatform}-${graalpyArch}.tar.gz`)); + /* + In the future there could be more variants of GraalPy for a single release. Pick the shortest name, that one is the most likely to be the primary variant. + */ + found.sort((f1, f2) => f1.name.length - f2.name.length); + return found[0]; +} +exports.findAsset = findAsset; + + /***/ }), /***/ 8168: @@ -69458,7 +69800,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.findAssetForMacOrLinux = exports.findAssetForWindows = exports.isArchPresentForMacOrLinux = exports.isArchPresentForWindows = exports.pypyVersionToSemantic = exports.getPyPyBinaryPath = exports.findRelease = exports.getAvailablePyPyVersions = exports.installPyPy = void 0; +exports.findAssetForMacOrLinux = exports.findAssetForWindows = exports.isArchPresentForMacOrLinux = exports.isArchPresentForWindows = exports.pypyVersionToSemantic = exports.findRelease = exports.getAvailablePyPyVersions = exports.installPyPy = void 0; const os = __importStar(__nccwpck_require__(2037)); const path = __importStar(__nccwpck_require__(1017)); const core = __importStar(__nccwpck_require__(2186)); @@ -69508,7 +69850,7 @@ function installPyPy(pypyVersion, pythonVersion, architecture, allowPreReleases, installDir = yield tc.cacheDir(toolDir, 'PyPy', resolvedPythonVersion, architecture); } utils_1.writeExactPyPyVersionFile(installDir, resolvedPyPyVersion); - const binaryPath = getPyPyBinaryPath(installDir); + const binaryPath = utils_1.getBinaryDirectory(installDir); yield createPyPySymlink(binaryPath, resolvedPythonVersion); yield installPip(binaryPath); return { installDir, resolvedPythonVersion, resolvedPyPyVersion }; @@ -69597,15 +69939,6 @@ function findRelease(releases, pythonVersion, pypyVersion, architecture, include }; } exports.findRelease = findRelease; -/** Get PyPy binary location from the tool of installation directory - * - On Linux and macOS, the Python interpreter is in 'bin'. - * - On Windows, it is in the installation root. - */ -function getPyPyBinaryPath(installDir) { - const _binDir = path.join(installDir, 'bin'); - return utils_1.IS_WINDOWS ? installDir : _binDir; -} -exports.getPyPyBinaryPath = getPyPyBinaryPath; function pypyVersionToSemantic(versionSpec) { const prereleaseVersion = /(\d+\.\d+\.\d+)((?:a|b|rc))(\d*)/g; return versionSpec.replace(prereleaseVersion, '$1-$2.$3'); @@ -69804,6 +70137,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true })); const core = __importStar(__nccwpck_require__(2186)); const finder = __importStar(__nccwpck_require__(9996)); const finderPyPy = __importStar(__nccwpck_require__(4003)); +const finderGraalPy = __importStar(__nccwpck_require__(8040)); const path = __importStar(__nccwpck_require__(1017)); const os = __importStar(__nccwpck_require__(2037)); const fs_1 = __importDefault(__nccwpck_require__(7147)); @@ -69812,6 +70146,9 @@ const utils_1 = __nccwpck_require__(1314); function isPyPyVersion(versionSpec) { return versionSpec.startsWith('pypy'); } +function isGraalPyVersion(versionSpec) { + return versionSpec.startsWith('graalpy'); +} function cacheDependencies(cache, pythonVersion) { return __awaiter(this, void 0, void 0, function* () { const cacheDependencyPath = core.getInput('cache-dependency-path') || undefined; @@ -69880,6 +70217,11 @@ function run() { pythonVersion = `${installed.resolvedPyPyVersion}-${installed.resolvedPythonVersion}`; core.info(`Successfully set up PyPy ${installed.resolvedPyPyVersion} with Python (${installed.resolvedPythonVersion})`); } + else if (isGraalPyVersion(version)) { + const installed = yield finderGraalPy.findGraalPyVersion(version, arch, updateEnvironment, checkLatest, allowPreReleases); + pythonVersion = `${installed}`; + core.info(`Successfully set up GraalPy ${installed}`); + } else { if (version.startsWith('2')) { core.warning('The support for python 2.7 will be removed on June 19. Related issue: https://github.com/actions/setup-python/issues/672'); @@ -69948,7 +70290,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", ({ value: true })); -exports.getVersionInputFromFile = exports.getVersionInputFromPlainFile = exports.getVersionInputFromTomlFile = exports.getOSInfo = exports.getLinuxInfo = exports.logWarning = exports.isCacheFeatureAvailable = exports.isGhes = exports.validatePythonVersionFormatForPyPy = exports.writeExactPyPyVersionFile = exports.readExactPyPyVersionFile = exports.getPyPyVersionFromPath = exports.isNightlyKeyword = exports.validateVersion = exports.createSymlinkInFolder = exports.WINDOWS_PLATFORMS = exports.WINDOWS_ARCHS = exports.IS_MAC = exports.IS_LINUX = exports.IS_WINDOWS = void 0; +exports.getNextPageUrl = exports.getBinaryDirectory = exports.getVersionInputFromFile = exports.getVersionInputFromPlainFile = exports.getVersionInputFromTomlFile = exports.getOSInfo = exports.getLinuxInfo = exports.logWarning = exports.isCacheFeatureAvailable = exports.isGhes = exports.validatePythonVersionFormatForPyPy = exports.writeExactPyPyVersionFile = exports.readExactPyPyVersionFile = exports.getPyPyVersionFromPath = exports.isNightlyKeyword = exports.validateVersion = exports.createSymlinkInFolder = exports.WINDOWS_PLATFORMS = exports.WINDOWS_ARCHS = exports.IS_MAC = exports.IS_LINUX = exports.IS_WINDOWS = void 0; /* eslint no-unsafe-finally: "off" */ const cache = __importStar(__nccwpck_require__(7799)); const core = __importStar(__nccwpck_require__(2186)); @@ -70177,6 +70519,37 @@ function getVersionInputFromFile(versionFile) { } } exports.getVersionInputFromFile = getVersionInputFromFile; +/** + * Get the directory containing interpreter binary from installation directory of PyPy or GraalPy + * - On Linux and macOS, the Python interpreter is in 'bin'. + * - On Windows, it is in the installation root. + */ +function getBinaryDirectory(installDir) { + return exports.IS_WINDOWS ? installDir : path.join(installDir, 'bin'); +} +exports.getBinaryDirectory = getBinaryDirectory; +/** + * Extract next page URL from a HTTP response "link" header. Such headers are used in GitHub APIs. + */ +function getNextPageUrl(response) { + const responseHeaders = response.headers; + const linkHeader = responseHeaders.link; + if (typeof linkHeader === 'string') { + for (const link of linkHeader.split(/\s*,\s*/)) { + const match = link.match(/<([^>]+)>(.*)/); + if (match) { + const url = match[1]; + for (const param of match[2].split(/\s*;\s*/)) { + if (param.match(/rel="?next"?/)) { + return url; + } + } + } + } + } + return null; +} +exports.getNextPageUrl = getNextPageUrl; /***/ }), diff --git a/src/find-graalpy.ts b/src/find-graalpy.ts new file mode 100644 index 00000000..1f86dbd9 --- /dev/null +++ b/src/find-graalpy.ts @@ -0,0 +1,146 @@ +import * as path from 'path'; +import * as graalpyInstall from './install-graalpy'; +import { + IS_WINDOWS, + validateVersion, + IGraalPyManifestRelease, + getBinaryDirectory +} from './utils'; + +import * as semver from 'semver'; +import * as core from '@actions/core'; +import * as tc from '@actions/tool-cache'; + +export async function findGraalPyVersion( + versionSpec: string, + architecture: string, + updateEnvironment: boolean, + checkLatest: boolean, + allowPreReleases: boolean +): Promise { + let resolvedGraalPyVersion = ''; + let installDir: string | null; + let releases: IGraalPyManifestRelease[] | undefined; + + let graalpyVersionSpec = parseGraalPyVersion(versionSpec); + + if (checkLatest) { + releases = await graalpyInstall.getAvailableGraalPyVersions(); + if (releases && releases.length > 0) { + const releaseData = graalpyInstall.findRelease( + releases, + graalpyVersionSpec, + architecture, + false + ); + + if (releaseData) { + core.info(`Resolved as GraalPy ${releaseData.resolvedGraalPyVersion}`); + graalpyVersionSpec = releaseData.resolvedGraalPyVersion; + } else { + core.info( + `Failed to resolve GraalPy ${graalpyVersionSpec} from manifest` + ); + } + } + } + + ({installDir, resolvedGraalPyVersion} = findGraalPyToolCache( + graalpyVersionSpec, + architecture + )); + + if (!installDir) { + ({installDir, resolvedGraalPyVersion} = await graalpyInstall.installGraalPy( + graalpyVersionSpec, + architecture, + allowPreReleases, + releases + )); + } + + const pipDir = IS_WINDOWS ? 'Scripts' : 'bin'; + const _binDir = path.join(installDir, pipDir); + const binaryExtension = IS_WINDOWS ? '.exe' : ''; + const pythonPath = path.join( + IS_WINDOWS ? installDir : _binDir, + `python${binaryExtension}` + ); + const pythonLocation = getBinaryDirectory(installDir); + if (updateEnvironment) { + core.exportVariable('pythonLocation', installDir); + // https://cmake.org/cmake/help/latest/module/FindPython.html#module:FindPython + core.exportVariable('Python_ROOT_DIR', installDir); + // https://cmake.org/cmake/help/latest/module/FindPython2.html#module:FindPython2 + core.exportVariable('Python2_ROOT_DIR', installDir); + // https://cmake.org/cmake/help/latest/module/FindPython3.html#module:FindPython3 + core.exportVariable('Python3_ROOT_DIR', installDir); + core.exportVariable('PKG_CONFIG_PATH', pythonLocation + '/lib/pkgconfig'); + core.addPath(pythonLocation); + core.addPath(_binDir); + } + core.setOutput('python-version', 'graalpy' + resolvedGraalPyVersion); + core.setOutput('python-path', pythonPath); + + return resolvedGraalPyVersion; +} + +export function findGraalPyToolCache( + graalpyVersion: string, + architecture: string +) { + let resolvedGraalPyVersion = ''; + let installDir: string | null = tc.find( + 'GraalPy', + graalpyVersion, + architecture + ); + + if (installDir) { + // 'tc.find' finds tool based on Python version but we also need to check + // whether GraalPy version satisfies requested version. + resolvedGraalPyVersion = path.basename(path.dirname(installDir)); + + const isGraalPyVersionSatisfies = semver.satisfies( + resolvedGraalPyVersion, + graalpyVersion + ); + if (!isGraalPyVersionSatisfies) { + installDir = null; + resolvedGraalPyVersion = ''; + } + } + + if (!installDir) { + core.info( + `GraalPy version ${graalpyVersion} was not found in the local cache` + ); + } + + return {installDir, resolvedGraalPyVersion}; +} + +export function parseGraalPyVersion(versionSpec: string): string { + const versions = versionSpec.split('-').filter(item => !!item); + + if (/^(graalpy)(.+)/.test(versions[0])) { + const version = versions[0].replace('graalpy', ''); + versions.splice(0, 1, 'graalpy', version); + } + + if (versions.length < 2 || versions[0] != 'graalpy') { + throw new Error( + "Invalid 'version' property for GraalPy. GraalPy version should be specified as 'graalpy' or 'graalpy-'. See README for examples and documentation." + ); + } + + const pythonVersion = versions[1]; + + if (!validateVersion(pythonVersion)) { + throw new Error( + "Invalid 'version' property for GraalPy. GraalPy versions should satisfy SemVer notation. See README for examples and documentation." + ); + } + + return pythonVersion; +} diff --git a/src/find-pypy.ts b/src/find-pypy.ts index a87dc844..9807878a 100644 --- a/src/find-pypy.ts +++ b/src/find-pypy.ts @@ -7,7 +7,8 @@ import { getPyPyVersionFromPath, readExactPyPyVersionFile, validatePythonVersionFormatForPyPy, - IPyPyManifestRelease + IPyPyManifestRelease, + getBinaryDirectory } from './utils'; import * as semver from 'semver'; @@ -82,7 +83,7 @@ export async function findPyPyVersion( IS_WINDOWS ? installDir : _binDir, `python${binaryExtension}` ); - const pythonLocation = pypyInstall.getPyPyBinaryPath(installDir); + const pythonLocation = getBinaryDirectory(installDir); if (updateEnvironment) { core.exportVariable('pythonLocation', installDir); // https://cmake.org/cmake/help/latest/module/FindPython.html#module:FindPython diff --git a/src/install-graalpy.ts b/src/install-graalpy.ts new file mode 100644 index 00000000..98512982 --- /dev/null +++ b/src/install-graalpy.ts @@ -0,0 +1,262 @@ +import * as os from 'os'; +import * as path from 'path'; +import * as core from '@actions/core'; +import * as tc from '@actions/tool-cache'; +import * as semver from 'semver'; +import * as httpm from '@actions/http-client'; +import * as ifm from '@actions/http-client/interfaces'; +import * as exec from '@actions/exec'; +import fs from 'fs'; + +import { + IS_WINDOWS, + IGraalPyManifestRelease, + createSymlinkInFolder, + isNightlyKeyword, + getBinaryDirectory, + getNextPageUrl +} from './utils'; + +const TOKEN = core.getInput('token'); +const AUTH = !TOKEN ? undefined : `token ${TOKEN}`; + +export async function installGraalPy( + graalpyVersion: string, + architecture: string, + allowPreReleases: boolean, + releases: IGraalPyManifestRelease[] | undefined +) { + let downloadDir; + + releases = releases ?? (await getAvailableGraalPyVersions()); + + if (!releases || !releases.length) { + throw new Error('No release was found in GraalPy version.json'); + } + + let releaseData = findRelease(releases, graalpyVersion, architecture, false); + + if (allowPreReleases && (!releaseData || !releaseData.foundAsset)) { + // check for pre-release + core.info( + [ + `Stable GraalPy version ${graalpyVersion} with arch ${architecture} not found`, + `Trying pre-release versions` + ].join(os.EOL) + ); + releaseData = findRelease(releases, graalpyVersion, architecture, true); + } + + if (!releaseData || !releaseData.foundAsset) { + throw new Error( + `GraalPy version ${graalpyVersion} with arch ${architecture} not found` + ); + } + + const {foundAsset, resolvedGraalPyVersion} = releaseData; + const downloadUrl = `${foundAsset.browser_download_url}`; + + core.info(`Downloading GraalPy from "${downloadUrl}" ...`); + + try { + const graalpyPath = await tc.downloadTool(downloadUrl, undefined, AUTH); + + core.info('Extracting downloaded archive...'); + downloadDir = await tc.extractTar(graalpyPath); + + // root folder in archive can have unpredictable name so just take the first folder + // downloadDir is unique folder under TEMP and can't contain any other folders + const archiveName = fs.readdirSync(downloadDir)[0]; + + const toolDir = path.join(downloadDir, archiveName); + let installDir = toolDir; + if (!isNightlyKeyword(resolvedGraalPyVersion)) { + installDir = await tc.cacheDir( + toolDir, + 'GraalPy', + resolvedGraalPyVersion, + architecture + ); + } + + const binaryPath = getBinaryDirectory(installDir); + await createGraalPySymlink(binaryPath, resolvedGraalPyVersion); + await installPip(binaryPath); + + return {installDir, resolvedGraalPyVersion}; + } catch (err) { + if (err instanceof Error) { + // Rate limit? + if ( + err instanceof tc.HTTPError && + (err.httpStatusCode === 403 || err.httpStatusCode === 429) + ) { + core.info( + `Received HTTP status code ${err.httpStatusCode}. This usually indicates the rate limit has been exceeded` + ); + } else { + core.info(err.message); + } + if (err.stack !== undefined) { + core.debug(err.stack); + } + } + throw err; + } +} + +export async function getAvailableGraalPyVersions() { + const http: httpm.HttpClient = new httpm.HttpClient('tool-cache'); + + const headers: ifm.IHeaders = {}; + if (AUTH) { + headers.authorization = AUTH; + } + + let url: string | null = + 'https://api.github.com/repos/oracle/graalpython/releases'; + const result: IGraalPyManifestRelease[] = []; + do { + const response: ifm.ITypedResponse = + await http.getJson(url, headers); + if (!response.result) { + throw new Error( + `Unable to retrieve the list of available GraalPy versions from '${url}'` + ); + } + result.push(...response.result); + url = getNextPageUrl(response); + } while (url); + + return result; +} + +async function createGraalPySymlink( + graalpyBinaryPath: string, + graalpyVersion: string +) { + const version = semver.coerce(graalpyVersion)!; + const pythonBinaryPostfix = semver.major(version); + const pythonMinor = semver.minor(version); + const graalpyMajorMinorBinaryPostfix = `${pythonBinaryPostfix}.${pythonMinor}`; + const binaryExtension = IS_WINDOWS ? '.exe' : ''; + + core.info('Creating symlinks...'); + createSymlinkInFolder( + graalpyBinaryPath, + `graalpy${binaryExtension}`, + `python${pythonBinaryPostfix}${binaryExtension}`, + true + ); + + createSymlinkInFolder( + graalpyBinaryPath, + `graalpy${binaryExtension}`, + `python${binaryExtension}`, + true + ); + + createSymlinkInFolder( + graalpyBinaryPath, + `graalpy${binaryExtension}`, + `graalpy${graalpyMajorMinorBinaryPostfix}${binaryExtension}`, + true + ); +} + +async function installPip(pythonLocation: string) { + core.info( + "Installing pip (GraalPy doesn't update pip because it uses a patched version of pip)" + ); + const pythonBinary = path.join(pythonLocation, 'python'); + await exec.exec(`${pythonBinary} -m ensurepip --default-pip`); +} + +export function graalPyTagToVersion(tag: string) { + const versionPattern = /.*-(\d+\.\d+\.\d+(?:\.\d+)?)((?:a|b|rc))?(\d*)?/; + const match = tag.match(versionPattern); + if (match && match[2]) { + return `${match[1]}-${match[2]}.${match[3]}`; + } else if (match) { + return match[1]; + } else { + return tag.replace(/.*-/, ''); + } +} + +export function findRelease( + releases: IGraalPyManifestRelease[], + graalpyVersion: string, + architecture: string, + includePrerelease: boolean +) { + const options = {includePrerelease: includePrerelease}; + const filterReleases = releases.filter(item => { + const isVersionSatisfied = semver.satisfies( + graalPyTagToVersion(item.tag_name), + graalpyVersion, + options + ); + return ( + isVersionSatisfied && !!findAsset(item, architecture, process.platform) + ); + }); + + if (!filterReleases.length) { + return null; + } + + const sortedReleases = filterReleases.sort((previous, current) => + semver.compare( + semver.coerce(graalPyTagToVersion(current.tag_name))!, + semver.coerce(graalPyTagToVersion(previous.tag_name))! + ) + ); + + const foundRelease = sortedReleases[0]; + const foundAsset = findAsset(foundRelease, architecture, process.platform); + + return { + foundAsset, + resolvedGraalPyVersion: graalPyTagToVersion(foundRelease.tag_name) + }; +} + +export function toGraalPyPlatform(platform: string) { + switch (platform) { + case 'win32': + return 'windows'; + case 'darwin': + return 'macos'; + } + return platform; +} + +export function toGraalPyArchitecture(architecture: string) { + switch (architecture) { + case 'x64': + return 'amd64'; + case 'arm64': + return 'aarch64'; + } + return architecture; +} + +export function findAsset( + item: IGraalPyManifestRelease, + architecture: string, + platform: string +) { + const graalpyArch = toGraalPyArchitecture(architecture); + const graalpyPlatform = toGraalPyPlatform(platform); + const found = item.assets.filter( + file => + file.name.startsWith('graalpy') && + file.name.endsWith(`-${graalpyPlatform}-${graalpyArch}.tar.gz`) + ); + /* + In the future there could be more variants of GraalPy for a single release. Pick the shortest name, that one is the most likely to be the primary variant. + */ + found.sort((f1, f2) => f1.name.length - f2.name.length); + return found[0]; +} diff --git a/src/install-pypy.ts b/src/install-pypy.ts index 9fdb6a30..b624f1d7 100644 --- a/src/install-pypy.ts +++ b/src/install-pypy.ts @@ -13,7 +13,8 @@ import { IPyPyManifestRelease, createSymlinkInFolder, isNightlyKeyword, - writeExactPyPyVersionFile + writeExactPyPyVersionFile, + getBinaryDirectory } from './utils'; export async function installPyPy( @@ -94,7 +95,7 @@ export async function installPyPy( writeExactPyPyVersionFile(installDir, resolvedPyPyVersion); - const binaryPath = getPyPyBinaryPath(installDir); + const binaryPath = getBinaryDirectory(installDir); await createPyPySymlink(binaryPath, resolvedPythonVersion); await installPip(binaryPath); @@ -237,15 +238,6 @@ export function findRelease( }; } -/** Get PyPy binary location from the tool of installation directory - * - On Linux and macOS, the Python interpreter is in 'bin'. - * - On Windows, it is in the installation root. - */ -export function getPyPyBinaryPath(installDir: string) { - const _binDir = path.join(installDir, 'bin'); - return IS_WINDOWS ? installDir : _binDir; -} - export function pypyVersionToSemantic(versionSpec: string) { const prereleaseVersion = /(\d+\.\d+\.\d+)((?:a|b|rc))(\d*)/g; return versionSpec.replace(prereleaseVersion, '$1-$2.$3'); diff --git a/src/setup-python.ts b/src/setup-python.ts index 88ffc105..05db90cb 100644 --- a/src/setup-python.ts +++ b/src/setup-python.ts @@ -1,6 +1,7 @@ import * as core from '@actions/core'; import * as finder from './find-python'; import * as finderPyPy from './find-pypy'; +import * as finderGraalPy from './find-graalpy'; import * as path from 'path'; import * as os from 'os'; import fs from 'fs'; @@ -17,6 +18,10 @@ function isPyPyVersion(versionSpec: string) { return versionSpec.startsWith('pypy'); } +function isGraalPyVersion(versionSpec: string) { + return versionSpec.startsWith('graalpy'); +} + async function cacheDependencies(cache: string, pythonVersion: string) { const cacheDependencyPath = core.getInput('cache-dependency-path') || undefined; @@ -106,6 +111,16 @@ async function run() { core.info( `Successfully set up PyPy ${installed.resolvedPyPyVersion} with Python (${installed.resolvedPythonVersion})` ); + } else if (isGraalPyVersion(version)) { + const installed = await finderGraalPy.findGraalPyVersion( + version, + arch, + updateEnvironment, + checkLatest, + allowPreReleases + ); + pythonVersion = `${installed}`; + core.info(`Successfully set up GraalPy ${installed}`); } else { if (version.startsWith('2')) { core.warning( diff --git a/src/utils.ts b/src/utils.ts index eba5b75f..c9d4f99b 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -6,6 +6,7 @@ import * as path from 'path'; import * as semver from 'semver'; import * as toml from '@iarna/toml'; import * as exec from '@actions/exec'; +import * as ifm from '@actions/http-client/interfaces'; export const IS_WINDOWS = process.platform === 'win32'; export const IS_LINUX = process.platform === 'linux'; @@ -29,6 +30,16 @@ export interface IPyPyManifestRelease { files: IPyPyManifestAsset[]; } +export interface IGraalPyManifestAsset { + name: string; + browser_download_url: string; +} + +export interface IGraalPyManifestRelease { + tag_name: string; + assets: IGraalPyManifestAsset[]; +} + /** create Symlinks for downloaded PyPy * It should be executed only for downloaded versions in runtime, because * toolcache versions have this setup. @@ -266,3 +277,34 @@ export function getVersionInputFromFile(versionFile: string): string[] { return getVersionInputFromPlainFile(versionFile); } } + +/** + * Get the directory containing interpreter binary from installation directory of PyPy or GraalPy + * - On Linux and macOS, the Python interpreter is in 'bin'. + * - On Windows, it is in the installation root. + */ +export function getBinaryDirectory(installDir: string) { + return IS_WINDOWS ? installDir : path.join(installDir, 'bin'); +} + +/** + * Extract next page URL from a HTTP response "link" header. Such headers are used in GitHub APIs. + */ +export function getNextPageUrl(response: ifm.ITypedResponse) { + const responseHeaders = response.headers; + const linkHeader = responseHeaders.link; + if (typeof linkHeader === 'string') { + for (const link of linkHeader.split(/\s*,\s*/)) { + const match = link.match(/<([^>]+)>(.*)/); + if (match) { + const url = match[1]; + for (const param of match[2].split(/\s*;\s*/)) { + if (param.match(/rel="?next"?/)) { + return url; + } + } + } + } + } + return null; +}