{
  "_id": "6a27228a24555f66ed528c81",
  "Package": "tinyspotifyr",
  "Title": "Tinyverse R Wrapper for the 'Spotify' Web API",
  "Version": "0.2.3.2",
  "Date": "2026-06-06",
  "Authors@R": "c(person(\"Troy\", \"Hernandez\", email = \"troy@cornball.ai\", role = c(\"aut\", \"cre\", \"cph\"), comment = c(ORCID = \"0009-0005-4248-604X\")), person(\"Charlie\", \"Thompson\", email = \"chuck@rcharlie.com\", role = c(\"aut\", \"cph\")), person(\"Josiah\", \"Parry\", email = \"josiah.parry@yahoo.com\", role = \"aut\"), person(\"Donal\", \"Phipps\", email = \"donal.phipps@gmail.com\", role = \"aut\"), person(\"Tom\", \"Wolff\", email = \"tom.wolff@duke.edu\", role = \"aut\"))",
  "Description": "An R wrapper for the 'Spotify' Web API\n<https://developer.spotify.com/web-api/>.",
  "Remotes": [
    "cornball-ai/tinyoauth"
  ],
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "URL": "https://github.com/cornball-ai/tinyspotifyr",
  "BugReports": "https://github.com/cornball-ai/tinyspotifyr/issues",
  "Config/pak/sysreqs": "libssl-dev",
  "Repository": "https://cornball-ai.r-universe.dev",
  "Date/Publication": "2026-06-08 16:15:19 UTC",
  "RemoteUrl": "https://github.com/cornball-ai/tinyspotifyr",
  "RemoteRef": "HEAD",
  "RemoteSha": "d10441caab090ed7dcaada95dd5e5c31375a9697",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-06-08 20:11:41 UTC",
    "User": "root"
  },
  "Author": "Troy Hernandez [aut, cre, cph] (ORCID:\n<https://orcid.org/0009-0005-4248-604X>),\nCharlie Thompson [aut, cph],\nJosiah Parry [aut],\nDonal Phipps [aut],\nTom Wolff [aut]",
  "Maintainer": "Troy Hernandez <troy@cornball.ai>",
  "MD5sum": "189997cd8464a2148735c154dd30a849",
  "_user": "cornball-ai",
  "_type": "src",
  "_file": "tinyspotifyr_0.2.3.2.tar.gz",
  "_fileid": "2d2fecc19c0378969d51feb5ea025bfc36211d6c5b54a11a9b484e0de1288c5e",
  "_filesize": 467172,
  "_sha256": "2d2fecc19c0378969d51feb5ea025bfc36211d6c5b54a11a9b484e0de1288c5e",
  "_created": "2026-06-08T20:11:41.000Z",
  "_published": "2026-06-08T20:14:02.445Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 80186607386,
      "time": 110,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7491292946"
    },
    {
      "job": 80186607302,
      "time": 102,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7491290549"
    },
    {
      "job": 80186607368,
      "time": 85,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7491284017"
    },
    {
      "job": 80186607270,
      "time": 91,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7491286237"
    },
    {
      "job": 80186137775,
      "time": 152,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7491253249"
    },
    {
      "job": 80186607275,
      "time": 98,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7491289032"
    },
    {
      "job": 80186607312,
      "time": 93,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7491287072"
    },
    {
      "job": 80186607272,
      "time": 82,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7491283541"
    },
    {
      "job": 80186607287,
      "time": 58,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7491274452"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/cornball-ai/tinyspotifyr",
  "_commit": {
    "id": "d10441caab090ed7dcaada95dd5e5c31375a9697",
    "author": "Troy Hernandez <troy@cornball.ai>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Migrate off httr to tinyoauth (curl + serverSocket) (#6)\n\n* Migrate auth + tracks.R to tinyoauth (pattern proof)\n\n- authenticate.R: client-credentials + user flow via tinyoauth, with\n  oauth_import_httr() carrying over an existing .httr-oauth (no re-login)\n- tracks.R: endpoints use tinyoauth::oauth_request (no httr RETRY/content)\n- DESCRIPTION: Imports tinyoauth + Remotes; Depends R (>= 4.0); httr/jsonlite\n  kept until the remaining endpoint files are migrated\n- Verified live: get_spotify_access_token() + get_track()\n\n* Migrate all endpoints to tinyoauth::oauth_request; drop httr\n\n- All endpoint files use tinyoauth::oauth_request (Bearer header, retry, JSON\n  parse); removed httr RETRY/GET/content/config/stop_for_status everywhere\n- authenticate.R on tinyoauth with oauth_import_httr() .httr-oauth carry-over\n- DESCRIPTION: Imports trimmed to tinyoauth only (dropped httr + jsonlite),\n  Remotes: cornball-ai/tinyoauth; package doc imports dropped\n- Fixed two pre-existing latent bugs surfaced by live testing:\n  get_artist() 'id=' typo and get_album() stray undefined playlist_id line\n- Verified live across ~15 endpoints (catalog, user, search, browse, paginated)\n\n* rformat + document\n\n* Bump version to 0.2.3.1\n\n* Fix get_shows_episodes() sending market parameter twice (#7)\n\n* Fix get_shows_episodes() sending market twice\n\nmarket was baked into the URL (?market=) and ALSO passed via query=,\nso tinyoauth::oauth_request()'s paste0(url, '?', qs) produced\n'.../episodes?market=US?market=US'. Spotify parsed the market as\n'US?market=US' and returned HTTP 400 'Invalid market parameter'. Build\nthe path only and let oauth_request add the query, matching the other\nshows.R functions.\n\n* Bump version to 0.2.3.2",
    "time": 1780935319
  },
  "_maintainer": {
    "name": "Troy Hernandez",
    "email": "troy@cornball.ai",
    "login": "troyhernandez",
    "description": "",
    "uuid": 5670773
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.0",
      "role": "Depends"
    },
    {
      "package": "tinyoauth",
      "role": "Imports"
    }
  ],
  "_owner": "cornball-ai",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-23",
      "n": 3
    },
    {
      "week": "2026-24",
      "n": 1
    }
  ],
  "_tags": [],
  "_stars": 14,
  "_contributors": [
    {
      "user": "sillyplots",
      "count": 133,
      "uuid": 9537903
    },
    {
      "user": "troyhernandez",
      "count": 13,
      "uuid": 5670773
    },
    {
      "user": "josiahparry",
      "count": 8,
      "uuid": 13534508
    },
    {
      "user": "phippsy",
      "count": 2,
      "uuid": 5182203
    },
    {
      "user": "filipwastberg",
      "count": 2,
      "uuid": 20815525
    },
    {
      "user": "antaldaniel",
      "count": 1,
      "uuid": 11824944
    },
    {
      "user": "eddelbuettel",
      "count": 1,
      "uuid": 673121
    },
    {
      "user": "jansim",
      "count": 1,
      "uuid": 7115629
    },
    {
      "user": "jedrzejf",
      "count": 1,
      "uuid": 47950298
    },
    {
      "user": "boshek",
      "count": 1,
      "uuid": 18472598
    },
    {
      "user": "womeimingzi11",
      "count": 1,
      "uuid": 10340253
    }
  ],
  "_userbio": {
    "uuid": 153995987,
    "type": "organization",
    "name": "cornball.ai"
  },
  "_downloads": {
    "count": 169,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/tinyspotifyr"
  },
  "_devurl": "https://github.com/cornball-ai/tinyspotifyr",
  "_searchresults": 7,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/tinyspotifyr.html",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/cornball-ai/tinyspotifyr",
  "_realowner": "cornball-ai",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.2.2",
      "date": "2021-02-24"
    },
    {
      "version": "0.2.3",
      "date": "2026-06-07"
    }
  ],
  "_exports": [
    "add_items_to_playlist",
    "add_latest_to_playlist",
    "add_tracks_to_playlist",
    "change_playlist_details",
    "check_me_following",
    "check_users_following",
    "create_playlist",
    "follow_artists_or_users",
    "follow_playlist",
    "get_album",
    "get_album_tracks",
    "get_albums",
    "get_artist",
    "get_artist_albums",
    "get_artist_top_tracks",
    "get_artists",
    "get_categories",
    "get_category",
    "get_category_playlists",
    "get_featured_playlists",
    "get_latest_episode",
    "get_my_current_playback",
    "get_my_currently_playing",
    "get_my_devices",
    "get_my_followed_artists",
    "get_my_playlists",
    "get_my_profile",
    "get_my_recently_played",
    "get_my_saved_albums",
    "get_my_saved_tracks",
    "get_my_top_artists_or_tracks",
    "get_new_releases",
    "get_playlist",
    "get_playlist_cover_image",
    "get_playlist_items",
    "get_playlist_tracks",
    "get_recommendations",
    "get_related_artists",
    "get_show",
    "get_shows",
    "get_shows_episodes",
    "get_spotify_access_token",
    "get_spotify_authorization_code",
    "get_track",
    "get_track_audio_analysis",
    "get_track_audio_features",
    "get_tracks",
    "get_user_playlists",
    "get_user_profile",
    "is_uri",
    "pause_my_playback",
    "pitch_class_lookup",
    "remove_tracks_from_playlist",
    "reorder_replace_playlist_items",
    "scopes",
    "search_spotify",
    "seek_to_position",
    "set_my_repeat_mode",
    "set_my_volume",
    "skip_my_playback",
    "skip_my_playback_previous",
    "start_my_playback",
    "toggle_my_shuffle",
    "transfer_my_playback",
    "unfollow_playlist",
    "verify_result"
  ],
  "_help": [
    {
      "page": "add_items_to_playlist",
      "title": "Add one or more tracks to a user’s playlist.",
      "topics": [
        "add_items_to_playlist"
      ]
    },
    {
      "page": "add_latest_to_playlist",
      "title": "Add the latest episode of a podcast to a user’s playlist.",
      "topics": [
        "add_latest_to_playlist"
      ]
    },
    {
      "page": "add_tracks_to_playlist",
      "title": "Add one or more tracks to a user’s playlist.",
      "topics": [
        "add_tracks_to_playlist"
      ]
    },
    {
      "page": "change_playlist_details",
      "title": "Change a playlist’s name and public/private state. (The user must, of course, own the playlist.)",
      "topics": [
        "change_playlist_details"
      ]
    },
    {
      "page": "check_me_following",
      "title": "Check if Current User Follows Artists or Users",
      "topics": [
        "check_me_following"
      ]
    },
    {
      "page": "check_users_following",
      "title": "Check if Users Follow a Playlist",
      "topics": [
        "check_users_following"
      ]
    },
    {
      "page": "create_playlist",
      "title": "Create a playlist for a Spotify user. (The playlist will be empty until you add tracks.)",
      "topics": [
        "create_playlist"
      ]
    },
    {
      "page": "follow_artists_or_users",
      "title": "Add the current user as a follower of one or more artists or other Spotify users.",
      "topics": [
        "follow_artists_or_users"
      ]
    },
    {
      "page": "follow_playlist",
      "title": "Add the current user as a follower of a playlist.",
      "topics": [
        "follow_playlist"
      ]
    },
    {
      "page": "get_album",
      "title": "Get Spotify catalog information for a single album.",
      "topics": [
        "get_album"
      ]
    },
    {
      "page": "get_album_tracks",
      "title": "Get Spotify catalog information about an album’s tracks. Optional parameters can be used to limit the number of tracks returned.",
      "topics": [
        "get_album_tracks"
      ]
    },
    {
      "page": "get_albums",
      "title": "Get Spotify catalog information for multiple albums identified by their Spotify IDs.",
      "topics": [
        "get_albums"
      ]
    },
    {
      "page": "get_artist",
      "title": "Get Spotify catalog information for a single artist identified by their unique Spotify ID.",
      "topics": [
        "get_artist"
      ]
    },
    {
      "page": "get_artist_albums",
      "title": "Get Spotify catalog information for multiple artists identified by their Spotify IDs.",
      "topics": [
        "get_artist_albums"
      ]
    },
    {
      "page": "get_artist_top_tracks",
      "title": "Get Spotify catalog information about an artist’s top tracks by country.",
      "topics": [
        "get_artist_top_tracks"
      ]
    },
    {
      "page": "get_artists",
      "title": "Get Spotify catalog information for multiple artists identified by their Spotify IDs.",
      "topics": [
        "get_artists"
      ]
    },
    {
      "page": "get_categories",
      "title": "Get a list of Spotify categories",
      "topics": [
        "get_categories"
      ]
    },
    {
      "page": "get_category",
      "title": "Get a single category used to tag items in Spotify (on, for example, the Spotify player’s “Browse” tab).",
      "topics": [
        "get_category"
      ]
    },
    {
      "page": "get_category_playlists",
      "title": "Get a list of Spotify playlists tagged with a particular category.",
      "topics": [
        "get_category_playlists"
      ]
    },
    {
      "page": "get_featured_playlists",
      "title": "Get a list of Spotify featured playlists (shown, for example, on a Spotify player’s ‘Browse’ tab).",
      "topics": [
        "get_featured_playlists"
      ]
    },
    {
      "page": "get_latest_episode",
      "title": "Get Spotify uri information for a show's latest episodes identified by their unique Spotify ID.",
      "topics": [
        "get_latest_episode"
      ]
    },
    {
      "page": "get_my_current_playback",
      "title": "Get information about the user’s current playback state, including track, track progress, and active device.",
      "topics": [
        "get_my_current_playback"
      ]
    },
    {
      "page": "get_my_currently_playing",
      "title": "Get the object currently being played on the user’s Spotify account.",
      "topics": [
        "get_my_currently_playing"
      ]
    },
    {
      "page": "get_my_devices",
      "title": "Get information about a user’s available devices.",
      "topics": [
        "get_my_devices"
      ]
    },
    {
      "page": "get_my_followed_artists",
      "title": "Get the current user’s followed artists.",
      "topics": [
        "get_my_followed_artists"
      ]
    },
    {
      "page": "get_my_playlists",
      "title": "Get a list of the playlists owned or followed by the current Spotify user.",
      "topics": [
        "get_my_playlists"
      ]
    },
    {
      "page": "get_my_profile",
      "title": "Get detailed profile information about the current user (including the current user’s username).",
      "topics": [
        "get_my_profile"
      ]
    },
    {
      "page": "get_my_recently_played",
      "title": "Get Current User's Recently Played Tracks",
      "topics": [
        "get_my_recently_played"
      ]
    },
    {
      "page": "get_my_saved_albums",
      "title": "Get Current User's Saved Albums",
      "topics": [
        "get_my_saved_albums"
      ]
    },
    {
      "page": "get_my_saved_tracks",
      "title": "Get a User's Saved Tracks",
      "topics": [
        "get_my_saved_tracks"
      ]
    },
    {
      "page": "get_my_top_artists_or_tracks",
      "title": "Get the current user’s top artists or tracks based on calculated affinity.",
      "topics": [
        "get_my_top_artists_or_tracks"
      ]
    },
    {
      "page": "get_new_releases",
      "title": "Get a list of new album releases featured in Spotify (shown, for example, on a Spotify player’s “Browse” tab).",
      "topics": [
        "get_new_releases"
      ]
    },
    {
      "page": "get_playlist",
      "title": "Get a playlist owned by a Spotify user.",
      "topics": [
        "get_playlist"
      ]
    },
    {
      "page": "get_playlist_cover_image",
      "title": "Get the current image associated with a specific playlist.",
      "topics": [
        "get_playlist_cover_image"
      ]
    },
    {
      "page": "get_playlist_items",
      "title": "Get full details of the items of a playlist owned by a Spotify user.",
      "topics": [
        "get_playlist_items"
      ]
    },
    {
      "page": "get_playlist_tracks",
      "title": "Get full details of the tracks of a playlist owned by a Spotify user.",
      "topics": [
        "get_playlist_tracks"
      ]
    },
    {
      "page": "get_recommendations",
      "title": "Create a playlist-style listening experience based on seed artists, tracks and genres.",
      "topics": [
        "get_recommendations"
      ]
    },
    {
      "page": "get_related_artists",
      "title": "Get Spotify catalog information about artists similar to a given artist. Similarity is based on analysis of the Spotify community’s listening history.",
      "topics": [
        "get_related_artists"
      ]
    },
    {
      "page": "get_show",
      "title": "Get Spotify catalog information for a single show identified by their unique Spotify ID.",
      "topics": [
        "get_show"
      ]
    },
    {
      "page": "get_shows",
      "title": "Get Spotify catalog information for a single show identified by their unique Spotify ID.",
      "topics": [
        "get_shows"
      ]
    },
    {
      "page": "get_shows_episodes",
      "title": "Get Spotify catalog information for a show's episodes identified by their unique Spotify ID.",
      "topics": [
        "get_shows_episodes"
      ]
    },
    {
      "page": "get_spotify_access_token",
      "title": "Get Spotify Access Token",
      "topics": [
        "get_spotify_access_token"
      ]
    },
    {
      "page": "get_spotify_authorization_code",
      "title": "Get Spotify authorization Code",
      "topics": [
        "get_spotify_authorization_code"
      ]
    },
    {
      "page": "get_track",
      "title": "Get Spotify catalog information for a single track identified by its unique Spotify ID.",
      "topics": [
        "get_track"
      ]
    },
    {
      "page": "get_track_audio_analysis",
      "title": "Get a detailed audio analysis for a single track identified by its unique Spotify ID.",
      "topics": [
        "get_track_audio_analysis"
      ]
    },
    {
      "page": "get_track_audio_features",
      "title": "Get audio feature information for a single track identified by its unique Spotify ID.",
      "topics": [
        "get_track_audio_features"
      ]
    },
    {
      "page": "get_tracks",
      "title": "Get Spotify catalog information for a single track identified by its unique Spotify ID.",
      "topics": [
        "get_tracks"
      ]
    },
    {
      "page": "get_user_playlists",
      "title": "Get a list of the playlists owned or followed by a Spotify user.",
      "topics": [
        "get_user_playlists"
      ]
    },
    {
      "page": "get_user_profile",
      "title": "Get public profile information about a Spotify user.",
      "topics": [
        "get_user_profile"
      ]
    },
    {
      "page": "is_uri",
      "title": "Check if a string matches the pattern of a Spotify URI",
      "topics": [
        "is_uri"
      ]
    },
    {
      "page": "pause_my_playback",
      "title": "Pause playback on the user’s account.",
      "topics": [
        "pause_my_playback"
      ]
    },
    {
      "page": "pitch_class_lookup",
      "title": "Pitch class notation lookup",
      "topics": [
        "pitch_class_lookup"
      ]
    },
    {
      "page": "remove_tracks_from_playlist",
      "title": "Remove one or more tracks from a user’s playlist.",
      "topics": [
        "remove_tracks_from_playlist"
      ]
    },
    {
      "page": "reorder_replace_playlist_items",
      "title": "Reorder or replace one or more items from a user’s playlist.",
      "topics": [
        "reorder_replace_playlist_items"
      ]
    },
    {
      "page": "scopes",
      "title": "Valid scopes",
      "topics": [
        "scopes"
      ]
    },
    {
      "page": "search_spotify",
      "title": "Search for an item",
      "topics": [
        "search_spotify"
      ]
    },
    {
      "page": "seek_to_position",
      "title": "Seeks to the given position in the user’s currently playing track.",
      "topics": [
        "seek_to_position"
      ]
    },
    {
      "page": "set_my_repeat_mode",
      "title": "Set the repeat mode for the user’s playback. Options are repeat-track, repeat-context, and off.",
      "topics": [
        "set_my_repeat_mode"
      ]
    },
    {
      "page": "set_my_volume",
      "title": "Set the volume for the user’s current playback device.",
      "topics": [
        "set_my_volume"
      ]
    },
    {
      "page": "skip_my_playback",
      "title": "Skips to next track in the user’s queue.",
      "topics": [
        "skip_my_playback"
      ]
    },
    {
      "page": "skip_my_playback_previous",
      "title": "Skips to previous track in the user’s queue.",
      "topics": [
        "skip_my_playback_previous"
      ]
    },
    {
      "page": "start_my_playback",
      "title": "Skips to previous track in the user’s queue.",
      "topics": [
        "start_my_playback"
      ]
    },
    {
      "page": "toggle_my_shuffle",
      "title": "Toggle shuffle on or off for user’s playback.",
      "topics": [
        "toggle_my_shuffle"
      ]
    },
    {
      "page": "transfer_my_playback",
      "title": "Transfer playback to a new device and determine if it should start playing.",
      "topics": [
        "transfer_my_playback"
      ]
    },
    {
      "page": "unfollow_playlist",
      "title": "Remove the current user as a follower of a playlist.",
      "topics": [
        "unfollow_playlist"
      ]
    },
    {
      "page": "verify_result",
      "title": "Verify API result",
      "topics": [
        "verify_result"
      ]
    }
  ],
  "_readme": "https://github.com/cornball-ai/tinyspotifyr/raw/HEAD/README.md",
  "_rundeps": [
    "curl",
    "jsonlite",
    "tinyoauth"
  ],
  "_score": 5.146128035678238,
  "_indexed": true,
  "_nocasepkg": "tinyspotifyr",
  "_universes": [
    "cornball-ai",
    "troyhernandez"
  ],
  "_previous": "0.2.3",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:13:38.000Z",
      "distro": "noble",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "8c9757513ec65195a181f3101c50b124857e613beaf932c1afb537c6a955ed42",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:13:33.000Z",
      "distro": "noble",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "79fecd1f3729f25d23689ea502d043da367e83595ac250cdc17e9c90d16a2a05",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:13:16.000Z",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "35ed2d6fb5504baad7d0037ac5459a3bdc255e8f2b1f7a99e089296e7b355d04",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:13:19.000Z",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "fc0830eb5efcaffc6f8d409b3a7a5ecd77883e11934cd87b699a336c32364ad8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:13:37.000Z",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "a819a10e90c2442a35e424530335505d09eaec861979bac7e49b9554f03b4a31",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:13:15.000Z",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "488690421a3a7f56c2a575666a744c613bcfea5bf528402e728fc592f61e35ee",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:13:07.000Z",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "b721e7dc182a4c6280a0a7cf27cbced777ba0d8665504ac636f59c3ce351e00b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "0.2.3.2",
      "date": "2026-06-08T20:12:43.000Z",
      "commit": "d10441caab090ed7dcaada95dd5e5c31375a9697",
      "fileid": "2bf1a495996b4bf281289f0ba099e800a5e181c075249c5b06a646397c44e501",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cornball-ai/actions/runs/27163910649"
    }
  ]
}