Skip to content

Releases: itchio/itch

v26.7.0-canary

10 Feb 18:45

Choose a tag to compare

This release upgrades from Electron 25 to Electron 33. macOS 10.15 (Catalina) is no longer supported macOS 11 (Big Sur) or later is now required.

This is release is made available as an intermediate for upcoming Electron to allow for us to bisect for any issues.

Electron

  • Upgrade from Electron 25 to Electron 33 (#3382)
  • esbuild target updated to Node 20 and Chrome 130 to match Electron 33
  • Updated openAsHidden login item setting to only apply on Windows (removed from macOS in newer Electron)

Other

  • Changed app ID from com.squirrel.itch.itch to io.itch.itch (itch setup has been updated to create shortcut for new app id)
  • Disabled remote locale fetching (locales.itch.zone no longer exists)

v26.6.0

06 Feb 20:40

Choose a tag to compare

This is the first stable release since v26.1.9 and includes all changes from v26.2.1-canary, v26.3.0-canary, v26.4.0-canary, and v26.5.0-canary releases.

Highlights

Native Apple Silicon support The app now runs natively on arm64 macOS (Apple Silicon). The auto-updater will automatically pull the correct version for your system. All supplemental binaries (butler, itch-setup) will also be replaced with their arm64 equivalents. The app should start faster, run faster, and have less impact on your battery since it no longer needs to run through Rosetta emulation.

New OAuth login The default login method is now an OAuth flow that opens your browser to complete authentication. This replaces the in-app username & password login as the default. Password login remains available as a fallback. We're making this change because password-based API login endpoints are frequent targets for credential stuffing attacks, and our previous captcha solution didn't work reliably in Electron.

Build System & Infrastructure

  • Fully migrated CI/CD from GitLab CI to GitHub Actions, all builds are now built, signed, notarized, and deployed through GitHub Actions
  • macOS builds are signed and notarized. Windows builds are code-signed via Azure Code Signing
  • Migrated from Webpack to esbuild for faster builds and smaller bundles
  • 32-bit binaries are fully retired

Electron & React

  • Upgraded to Electron 25 (from Electron 22) (Note: We are prioritizing Electron updates going forward but we are doing checkpoint releases before the huge app refactor that will have to take place)
  • Updated @itchio/butlerd fixes the Cannot read properties of undefined (reading 'pid') bug
  • Initial pass at modernizing frontend React components

Accessibility

  • Clickable elements now use semantic HTML (<button>, <a>) for keyboard navigation and screen reader support
  • Modal dialogs use the native <dialog> element with proper focus trapping (#3292)
  • Icons have role="img" and aria-label attributes for screen readers
  • Remembered profiles use flexbox layout for correct tab order

UI Improvements

  • Broth component in preferences is now expandable, showing executable path, version, directory, and source channel
  • Playtime duration tooltips now show precise hours/minutes/seconds on hover

Bug Fixes

  • Fix errors related to /register, /random, and other system pages (#3009)
  • Fix context menus when clicking games (#2890)
  • Fix clipboard operations in the URL bar and login form
  • Fix error on SendFeedback page (#2951)
  • Fix duplicated slash in path to user profile
  • Fix protocol check for URL handling (#3236)
  • Allow refreshing the app's UI again instead of opening in system browser
  • Fix missing uninstall dialog title
  • Set user agent fallback to avoid Cloudflare issues (#3369)

Other

  • Updated localization strings (Farsi, Chinese Simplified, Indonesian, Italian, and others)

Thank you to @botamochi0x12 and @jls47 for their contributions!

Full Changelog: v26.1.9...v26.6.0

v26.5.0-canary

05 Feb 23:02

Choose a tag to compare

This is the first version of the app to officially support arm64 on macOS (aka Apple silicon)! The auto-updater will automatically pull the arm64 version for those on Apple silicon. No separate reinstallation necessary. All supplemental binaries (butler, itch-setup) will also automatically be replaced with their arm64 equivalent. New version of butler and itch-setup have also been deployed to coincide with this release. The app should now start faster, be faster, and have less impact on your battery since it no longer needs to run through emulation on modern macOS computers.

This version of the app also includes our new OAuth login flow. We plan to retire username & password login in the app in favor of an OAuth login that requires a browser to complete the login. Unfortunately API endpoints that allow someone to authenticate via a username & password are prime targets for credential stuffing attacks. Our previous solution to this was to add a captcha in the app, but it broke more often than not, as electron is not a regular browser.

The OAuth login is now the default screen. Username & password will remain available as a secondary option until we verify that people don't have any issues logging in.

Notes on arm64

Because the app is booted by itch-setup, we decided to remove the universal build of the electron app we published with the last canary version. itch-setup will pick the version of the app that is correct for your system, so it's not necessary to download an app that is 2x the size that runs on both intel and arm64. (We do provide universal builds on the kitch installation program though)

This update also completes our major refactor and migration of our CI system to GitHub Actions. All executables are now built, signed, notarized, and deployed through a GitHub actions workflow. We look forward to adding support for arm64 Windows and Linux in future updates now that we have completed the foundation.

With the new CI we are fully retiring all 32 bit binaries that we used to publish. Many of these were already not being updated anymore, but we'll be removing the download links entirely from broth.

Build System & CI

  • macOS signing and notarization done on GitHub Actions via separate job (new release/sign-macos.js)
  • Windows code signing via Azure Code Signing in CI
  • Separate macOS x64 and arm64 builds (removed @electron/universal, builds are no longer merged into a universal binary)
  • Tagged builds are published to itchio via butler through GitHub Actions
  • Restored integration test workflow on GitHub Actions
  • Removed GitLab CI references, fully migrated to GitHub Actions
  • Use tarballs for artifact transfer to preserve symlinks and permissions
  • Upgraded @electron/packager v18 to v19, @electron/notarize v2 to v3
  • No longer installs external npm dependencies during packaging (dependencies are bundled by esbuild)

Login

  • New OAuth login flow with PKCE as the default login method
  • Password login still available as a fallback ("Log in with password" link)
  • OAuth callback handled via itch://oauth-callback protocol
  • Manual code paste fallback for when the browser redirect doesn't work
  • New butlerd message: Profile.LoginWithOAuthCode

React & Dependencies

  • Upgrade React 16 to React 17
  • Upgrade styled-components to 5.3.11
  • Added typed Redux hooks (useAppDispatch, useAppSelector)
  • Many class components converted to functional components with React.memo
  • Replaced react-container-dimensions with built-in ContainerDimensions component using ResizeObserver
  • Removed rimraf dependency (use native fs.rm)
  • Removed RandomSvg component (unused)
  • Removed recursive-copy dev dependency

UI Improvements

  • Broth component in preferences now expandable, showing executable path, version, directory, stage, source channel
  • Playtime duration tooltips now show precise hours/minutes/seconds on hover
  • Remembered profiles layout improvements

Accessibility

  • We did a pass over all clickable button like elements to ensure that they use semantic HTML elements like to ensure that they can be navigated to and activated with a keyboard
  • Icons now have role="img" and aria-label for screen readers
  • Search results use standard scrollIntoView() for keyboard navigation instead of deprecated scrollIntoViewIfNeeded()
  • Remembered profiles use flexbox layout instead of absolute positioning, improving tabbing order

Platform

  • macOS: proper arm64 architecture detection for broth packages (no longer hardcoded to amd64)
  • macOS: binary architecture validation โ€” re-downloads amd64 binaries on arm64 Macs
  • Broth package state now tracks download channel

Other

  • Updated localization strings (Farsi, Chinese Simplified, Indonesian, Italian, and others)

v26.4.0-canary

09 Dec 00:20

Choose a tag to compare

NOTE: We are in the process of working out migration to our build system, builds on the GitHub release are not signed and notarized, and therefore are not uploaded to https://itchio.itch.io/kitch

Build System

  • Add arm64 and universal builds to GitHub Actions
  • Add @electron/universal for macOS universal binary support
  • Clean build artifact names published to the GitHub release

v26.3.0-canary

08 Dec 21:12

Choose a tag to compare

Note: Due to modern Windows signing requirements we'll likely be migrating
the entire build system to GitHub actions. Right now we're doing builds in
parallel to work out the details. Currently no builds uploaded to GitHub
releases are signed or notarized but you're welcome to run them.

Build System

  • Migrate from Webpack to esbuild
  • Remove happypack dependency
  • Migrate release scripts to ES modules
  • Upgrade electron-packager to @electron/packager (v17 to v18)
  • Set up GitHub Actions for building and deploying
  • Update TypeScript to latest version
  • Add production minification and metafile generation for bundle analysis

Electron

  • Upgrade to Electron 25
  • Update protocol registration method

Dependencies

  • Migrate to @itchio/butlerd - Fixes the Cannot read properties of undefined (reading 'pid') bug
  • Remove url module dependency in renderer (use browser builtins)
  • Remove util package dependency in renderer
  • General dependency cleanup

Accessibility

  • Modal dialogs now use semantic <dialog> element with focus trapping (#3292)
  • Buttons and links migrated to semantic HTML elements
  • Remove "draggable" attribute from modal dialogs

Bug Fixes

  • Allow refreshing the app's UI again, instead of opening it in your system browser
  • Fix missing uninstall dialog title
  • Fix button behavior and login form submit handling
  • Include architecture in user agent string

Other

  • Update screenshots

v26.2.1-canary

01 Aug 18:25

Choose a tag to compare

https://itchio.itch.io/kitch

  • Fix errors related to /register, /random and other system pages (#3009)
  • Fix context menus when clicking games (#2890)
  • Fix clipboard operations in the url bar and login form
  • Upgrade various dependencies to pick up security fixes

Thank you to @botamochi0x12 and @jls47 for their contributions!

Full changlog

v26.1.9

18 Jun 17:20
v26.1.9

Choose a tag to compare

https://itchio.itch.io/itch

Please Note: This will be the last version of the app compatible with Windows 7 and 8.

This release upgrades a number of dependencies, especially Electron (to version 22), to resolve some lingering security issues. It also includes some performance and efficiency improvements.

The logic for game updates has changed. The app will check for updates any time you view a game page or run a game. You can check your full library for game updates at any time in the Preferences menu via the "Check for game updates" action.

Full Changelog: v25.6.2...v26.1.9

v26.1.5-canary

22 Jan 22:10

Choose a tag to compare

https://itchio.itch.io/kitch

  • Update translations. Several new languages!
  • Check for game updates automatically when viewing an installed game's page
  • Add option for manually triggering a full-library game update check
  • Fix issue where some links on game pages weren't clickable

Full Changelog: v26.1.3-canary...v26.1.5-canary

v26.1.3-canary

19 Jan 21:54

Choose a tag to compare

https://itchio.itch.io/kitch

This is a security update release

  • Update CDN urls
  • Update Electron to pick up bug fixes
  • No new features

Full Changelog: v26.1.2-canary...v26.1.3-canary

v26.1.2-canary

11 Aug 17:25

Choose a tag to compare

https://itchio.itch.io/kitch

This is a security update release

  • Open non-itch.io URLs in an external browser, rather than in the app's web view
  • No new features

Full Changelog: v26.0.2-canary...v26.1.2-canary