Releases: Provenance-Emu/Provenance
3.1.0a2: fix game more info not showing
Fixes issues from 3.1.0a1
- Fixed "Game Info" screen not showing
- Fixed JIT'd Flycast was actually JIT-less Flycast.
3.1.0a1 Release Notes
Pre-Release Notes
This pre-release includes a major overhaul of iCloud synchronization, significant improvements to the game import process, and various UI/UX refinements and bug fixes.
✨ New Features & Major Enhancements
- Overhauled iCloud Synchronization (
bug/ios-icloud-not-syncing
branch focus):- Vastly improved reliability and performance of iCloud sync for ROMs, save states, BIOS files, and screenshots.
- Smarter handling of file downloads, uploads, and conflict resolution.
- Optimized database interactions during sync to reduce overhead and prevent crashes (e.g., using game cache, batch processing).
- Correctly handles scenarios like initial app load with existing iCloud files, turning iCloud sync on/off, and background file changes.
- Improved deletion handling: files deleted from iCloud are now correctly removed locally and from the database, and vice-versa.
- Refactored sync logic into dedicated
Syncer
classes for better organization and lifetime management. - Enhanced logging and error reporting for iCloud operations.
- Game Importer Refinements:
- Improved logic for handling multi-disc games (CUE/BIN, M3U) to ensure all associated files are correctly processed before an import is marked complete.
- Better error handling for late-arriving files, preventing premature completion of the import queue.
- Refactored import logic to defer processing when necessary and to correctly handle paused or busy importer states.
- UI & UX Improvements:
- Game Info Display: The "Game Info" option in context menus now correctly presents a detailed, paged view for game information (related to
ConsoleGamesView
andPagedGameMoreInfoView
refactor). - Refined alert dialogs and confirmation prompts (e.g., when deleting ROMs).
- Improved handling of controller inputs, including L3/R3 buttons for older controllers.
- Game Info Display: The "Game Info" option in context menus now correctly presents a detailed, paged view for game information (related to
🐛 Bug Fixes
- iCloud & Sync: Early support - CloudKit broken, iCloud drive on iOS/iPad OS only.
- Fixed numerous crashes and synchronization issues related to Realm database access during iCloud operations.
- Resolved pathing issues where iCloud URLs could be duplicated or incorrectly formed.
- Addressed bugs related to deleting and then re-adding the same file via iCloud.
- Fixed issues with file management when turning iCloud sync off (e.g., removal of iCloud files).
- Corrected handling of battery save directory names.
- Importer:
- Fixed an index-out-of-bounds error when multiple items were removed from the import queue.
- Addressed issues where the game importer's ROMs path could become incorrect when toggling iCloud.
- General:
- Fixed logic for deleting multi-disc ROMs to handle all associated files.
- Resolved potential issues with
PVImageFile
path validation. - Addressed various compilation warnings and minor code issues.
Cores
- JIT and JITless Dreamcast cores
- Very early test release. Many known issues. Audio/Video sync speeds wrong.
- Sonic Adventure and SA2 sometimes loads, sometimes doesn't. May depend on BIOS versions
🛠️ Other Changes
- Extensive code refactoring for clarity, reusability, and maintainability (e.g., removing unused code, DRY principles).
- Updated project files and build settings (e.g., build variables, minimum deployment target to 16.0).
- Improved localization string handling.
- Enhanced logging throughout various modules.
- Updated to use cache layers more effectively to reduce direct database hits.
3.1.0a1 Pre-release
Pre-Release Notes
This pre-release includes a major overhaul of iCloud synchronization, significant improvements to the game import process, and various UI/UX refinements and bug fixes.
✨ New Features & Major Enhancements
- Overhauled iCloud Synchronization (
bug/ios-icloud-not-syncing
branch focus):- Vastly improved reliability and performance of iCloud sync for ROMs, save states, BIOS files, and screenshots.
- Smarter handling of file downloads, uploads, and conflict resolution.
- Optimized database interactions during sync to reduce overhead and prevent crashes (e.g., using game cache, batch processing).
- Correctly handles scenarios like initial app load with existing iCloud files, turning iCloud sync on/off, and background file changes.
- Improved deletion handling: files deleted from iCloud are now correctly removed locally and from the database, and vice-versa.
- Refactored sync logic into dedicated
Syncer
classes for better organization and lifetime management. - Enhanced logging and error reporting for iCloud operations.
- Game Importer Refinements:
- Improved logic for handling multi-disc games (CUE/BIN, M3U) to ensure all associated files are correctly processed before an import is marked complete.
- Better error handling for late-arriving files, preventing premature completion of the import queue.
- Refactored import logic to defer processing when necessary and to correctly handle paused or busy importer states.
- UI & UX Improvements:
- Game Info Display: The "Game Info" option in context menus now correctly presents a detailed, paged view for game information (related to
ConsoleGamesView
andPagedGameMoreInfoView
refactor). - Refined alert dialogs and confirmation prompts (e.g., when deleting ROMs).
- Improved handling of controller inputs, including L3/R3 buttons for older controllers.
- Game Info Display: The "Game Info" option in context menus now correctly presents a detailed, paged view for game information (related to
🐛 Bug Fixes
- iCloud & Sync: Early support - CloudKit broken, iCloud drive on iOS/iPad OS only.
- Fixed numerous crashes and synchronization issues related to Realm database access during iCloud operations.
- Resolved pathing issues where iCloud URLs could be duplicated or incorrectly formed.
- Addressed bugs related to deleting and then re-adding the same file via iCloud.
- Fixed issues with file management when turning iCloud sync off (e.g., removal of iCloud files).
- Corrected handling of battery save directory names.
- Importer:
- Fixed an index-out-of-bounds error when multiple items were removed from the import queue.
- Addressed issues where the game importer's ROMs path could become incorrect when toggling iCloud.
- General:
- Fixed logic for deleting multi-disc ROMs to handle all associated files.
- Resolved potential issues with
PVImageFile
path validation. - Addressed various compilation warnings and minor code issues.
Cores
- JIT and JITless Dreamcast cores
- Very early test release. Many known issues. Audio/Video sync speeds wrong.
- Sonic Adventure and SA2 sometimes loads, sometimes doesn't. May depend on BIOS versions
🛠️ Other Changes
- Extensive code refactoring for clarity, reusability, and maintainability (e.g., removing unused code, DRY principles).
- Updated project files and build settings (e.g., build variables, minimum deployment target to 16.0).
- Improved localization string handling.
- Enhanced logging throughout various modules.
- Updated to use cache layers more effectively to reduce direct database hits.
3.0.6a Mostly 3DS improvements, RA update
[3.0.6] - 2025-03-16
Special thanks to all contributors and testers who helped make this release possible.
Added
- Core Options Menu for RetroArch cores
- Enhanced search functionality with auto-hiding search bars
- Improved disc selection menu for multi-disc games
- Support for custom textures in 3DS games
- RAR archive support in file enumeration
Improved
- Major 3DS performance optimizations:
- NEON-optimized shader interpreter
- Enhanced Vulkan rendering pipeline
- Audio processing improvements with NEON optimizations
- Camera, gyro, and microphone support
- Async presentation for smoother gameplay
- Updated Mednafen to version 1.32.1
- Improved RetroArch cores with better Vulkan support
- Enhanced continues section with optimized paging
- Threaded rendering and realtime improvements
- Fixed CPU deadlock issues
Fixed
- Fixed search functionality in Home and Console views
- Fixed tvOS build issues
- Resolved logging issues
- Fixed immediate import on conflict resolution
- Various crash fixes and stability improvements
Full Changelog: 3.0.5...3.0.6
What's Changed
- fixed ios 16 md5 hash failing; fixed bios watcher crashing by @pabloarista in #2409
- Release/3.0.6a by @JoeMatt in #2410
Full Changelog: 3.0.5...3.0.6a
3.0.5 UI/UX, performance and bugs
What's Changed
- Add custom textures to emuThree by @yippeeeyay in #2391
- Fix custom textures option 3ds (forgot to bridge to CitraWrapper.mm) by @yippeeeyay in #2398
- ROM Deletion Improvement by @pabloarista in #2399
- Update PVMetalViewController.swift - Fix Rotation misalignment. by @mrjschulte in #2400
- Update crt_filter_ps.metal to fix broken scanline check by @mrjschulte in #2401
- Update megaTron.metal by @mrjschulte in #2402
- Update PVMetalViewController.swift for megaTron Uniforms by @mrjschulte in #2403
- Update PVMetalViewController.swift - fix ulTron by @mrjschulte in #2404
- Release/3.0.5 by @JoeMatt in #2406
Full Changelog: 3.0.4...3.0.5
3.0.4 UI/UX Tweaks
Release 3.0.4: UI Improvements, Core Updates, and Preliminary Work on New Features
This release includes significant updates and improvements:
-
UI Enhancements:
- Improved game cell styling and marquee text for game titles
- Updated settings icon and menu structure
- Fixed media cache to prevent artwork clipping
-
Core Updates:
- Added preliminary support for Philips CD-i (WIP, not available in App Store)
- Updated RetroArch assets and MAME plugins
- Added NooDS core
- Improved Dolphin core Vulkan loading
- Added multiple test cores for Flycast (Dreamcast emulation WIP, not in App Store)
-
DeltaSkins Feature (WIP):
- Initial integration of DeltaSkins system for testing and development
- Added preliminary skin preview and management functionality
- Note: This feature is not yet usable and is for internal testing only
-
System Improvements:
- Enhanced core filtering for disabled and app store incompatible cores
- Updated system settings and core project views
- Improved handling of unsupported cores in App Store builds
-
Build and CI/CD:
- Fixed tvOS build issues
- Updated CI/CD step versions
-
Other:
- Various bug fixes and performance improvements
- Updated documentation and What's New for 3.0.4
This release focuses on UI polish and emulation core support, while laying the groundwork for future features like CD-i and Dreamcast support, and the DeltaSkins system. These new features are still in development and not yet available for general use.
3.0.3 Crash and video fixes
What's new in 3.0.3:
• Improved core scanning to prevent startup crashes
• Enhanced error handling for RetroArch cores
• Fixed Intellivision on-screen controls
• Fixed 3DS settings not applying
• Improved graphics performance and less 3DS texture issues with custom MoltenVK implementation
• Fixed Atari Jaguar video rendering
• Added support for zipped BIOS files (Neo Geo and others)
• Various stability improvements and bug fixes
• Improved import conflicts system selection workflow
3.0.2 Bug fixes, BIOS fixes, controls
What's New in Version 3.0.2:
• Improved app stability and startup performance
• Added crash reporting for better reliability
• Enhanced Saturn and Jaguar controller support
• Instant updates for 3DS settings like resolution scaling and CPU speed
• BIOS importer and automatic scanner improvements and fixes
• Various bug fixes and optimizations
Thank you for your continued support! If you're enjoying Provenance, please consider leaving a review.
Bug fixes
First app store bug fix release
- fixed themes not fully applying on change
- fixed crash in Save States pause menu to view
- fixed some homepage graphical bugs
- fix core options settings UI not updating on value change (though values were indeed being changed)
- fixed 3DS layout/touch/rotation size issues
- Added/fixed some 3DS options, such as overclocking and underclocking
- Metal / OpenGL option text inverted to clarify that Metal is always on by default and does not require a Plus subscription.
- Added iOS 16 support (the big one)
- Systems list filters out unsupported systems
- systems list improved layout
- fixed crash in file size calculation caching
- faster app boot
- removed unsupported Jaguar CD entry
- add retroarch mupen-next core
App Store
2.2.0 Release
[2.2.0] - 2022-12-02
Super special thanks to @Carter1190 @dnicolson @ianclawson @mrjschulte @stuartcarnie for providing pull requests.
Special thanks for all the Patreon and Discord members that provided testing feedback and support.
Added
- Light/Dark theme
- tvOS artwork options
- Saturn Core options
- Option for onscreen joystick with keyboard on/off, or never.
- add build.yml for github actions
- stella: joystick deadzone
Fixed
- tvOS various layout, styling improvements
- fixes #1915 joystick layout busted
- BoxArt fix nil crash
- add sfc extension
- Catalyst, fix crash on game load
- catalyst: remove broken bliss
- fixes #1973 incorrect paths in xcworkspace
- fixes #1991 Fixes mupen plugin paths
- fixes #1997 update ios launch storyboard
- fixes #2010 remove unused codesign settings
- disable broken contributors.yml
- fix various tvos targets with wrong target platfrm
- fixes #1814 Use documents for image cache
- Fixes #1814, lib deletion and icloud fixes
- fixes #1986 adds ways to press start in SS
- fixes #1986 Saturn start MFi, I think.
- fixes #2019 Mednafen SNES A/B swap
- fixes #2026 joyPad move works, clear BG
- fixes #2027 importer double run and deleting
- fix archive step
- fix artwork download
- stella: don’t crash on 2nd load
- stella: updated and cheats,save support
- closes #1765 map dualsense home to pause on saturn
- closes #1765 map dualsense home to pause on saturn
- closes #1888 fix n64 scaling
- closes #1903 tvos build broken
- conflicts manager add delete option
Updated
- Min target iOS 13 all around
- More localised strings and xib's
- SwiftUI additions and fixes
PRs
- Merge branch 'feature/dos-box' into develop
- Merge branch 'remove-unneeded-styling' into develop
- Merge branch 'remove-unneeded-table-generics' into develop
- Merge pull request #1919 from Provenance-Emu/feature/dos-box
- Merge pull request #1995 from dnicolson/style-fixes
- Merge pull request #2006 from Provenance-Emu/pullrequests/dnicolson/general-cleanup
- Merge pull request #2015 from dnicolson/fix-constraint-warnings
- Merge pull request #2016 from dnicolson/use-tvalertcontroller
- Merge pull request #2017 from dnicolson/remove-unneeded-styling
- Merge pull request #2018 from dnicolson/use-system-background-for-settings
- Merge pull request #2025 from Provenance-Emu/largeGameArt-Support
- Merge pull request #2028 from dnicolson/add-light-theme
- Merge pull request #2029 from Provenance-Emu/tvOS-GameInfo-Tweaks
- Merge pull request #2030 from Provenance-Emu/feature/JoystickFixes
- Merge pull request #2033 from dnicolson/fix-library-bottom-separators
- Merge pull request #2036 from Provenance-Emu/feature/gh_build_action
- Merge pull request #2038 from Provenance-Emu/mrjschulte_section_header_fix_tvOS
GitLog
- Add theme switcher
- Add ThemeOptions enum
- Adjust cell height as needed
- AppDelegate refactor code, improve URL open
- AppDelegate start of save open
- azure 14.1
- azure pipeline macos-12
- azure turn off xcode pretty
- azure update to newer xcode/macos
- cdx4 fix submodule
- cicd remove UIBrackgroundModes processing
- citra: combine platforms
- core 4do updates to fix tvos
- cores framework don’t embed
- cores table view, hide unsupported cores unless on
- Cores, add .core.name to ones that didn’t
- cxd4 fix submodule bs
- delete dup schemes, new shaders, blissemu framework
- delete old tvos schemes and rename others
- desmume2015 readd and fix debug
- duckstation: fix some build stuff
- entitlements remove ones that break xc cloud
- Extend navigation bar
- Extensions placeholders for new ones
- fastlane update
- Fix 4do build and almost works, bad gfx freedo
- Fix and update Marketing Version 2.1.2
- Fix button height constraint warning
- fix catalyst builds
- Fix cell background color
- Fix cell font sizes
- Fix controller selection table cell focus
- Fix entitlement paths for 2 extions
- Fix extensions in build
- Fix iCade controller cell background
- Fix iCloud, Spotlight entitlement, re-import path
- fix ios/tvos build
- Fix library options cell background color
- Fix logs crash
- fix macos/catalyst build and export
- Fix navigation bar tint color
- Fix PVFile iCloud paths incorrect
- Fix slider cell text alignment
- fix some warnings and self capture
- Fix stack spacing constraint warning
- fix submodules
- Fix SwiftUI crash on iOS 16
- fix tvos availability
- Fix tvOS build
- flycast builds
- flycast, fbneo, dolphin fix some build stuff
- Frameworks combined into single multi-platform!
- fuse fix some build stuff
- game view cell, hide delete text on start
- GameLibVC fix potential crash
- gba remove driverkit
- gcdweb fix QOS
- genesis: reflector2static libs, submodule 4 upstrm
- gh action fix xcodebuild command
- gh action macos-12
- git insists on touching these submodules
- github action build test
- GitHub actions disable broken ones
- gitignore .xcarchive
- Hide unsupported cores from conflicts unless on
- iCloud containers fix thread issue/warning
- icloud sync catch exception
- Improve how theme is set
- Info.plist add ITSAppUsesNonExemptEncryption
- Info.plist fix xcode cloud issues
- Install the CodeSee workflow. Learn more at https://docs.codesee.io
- intellivision respond protocol fixes
- ios fix gliden compile
- iOS settings menu replace (i) with >
- jaguar: core update video fixes
- Launch screen add brazil locale
- libretro build flags update
- Make web server alerts consistent
- mednafen fix targeted device families
- mednafen refactor controls to catagory
- mednafen: refactor compiler flags to xcconfig
- mednafen: remove broken options,controller reorder
- melon DLOG for nslog
- melonds build flags update
- MetalVC minor catalyst chagnes
- mu fixed embedded framework
- mupen audio on/off callbacks
- mupen speed option
- mupen: fix crash on load
- mupen: hi res off by default, fix catalyst
- n64 controller fix warning
- obscure cores various build fixes
- On screen controller adjustments
- option lcd filter
- Patreon features
- pcsx reamred builds
- pcsx submodule
- pcsx, fix submodule again
- PCSXRearmed added to build
- play: builds with gfx and audio callbacks
- play: fix build
- play: fix release build
- Prevent bottom separators from disappearing
- project remove nil file
- ps2: add bios info
- PVGenesis -Os
- PVLIBRARY fix copy/embed
- PVLogVC fix tvOS color error
- Reduce the width of log buttons
- Remove Bliss, its breaking CI
- remove broken cores from the build
- Remove cancel action from alert
- Remove cell background color
- remove duckstation from the build
- Remove forced dark interface style
- Remove iOS 11 conditional
- Remove iOS 13 conditionals
- remove old vibrate for xccloud
- Remove PVRadioOptionRow and PVRadioOptionCell
- Remove red cell background
- Remove redundant style
- Remove SettingsTableView class
- Remove styles in favor of defaults
- Remove SystemSettingsCell
- Remove SystemSettingsHeaderCell
- Remove unimplimented extensions from app target
- Remove unneeded code
- Remove unneeded guard clause
- Remove unneeded ifdef
- Remove unneeded QuickTableView generics (#2031)
- Remove unneeded section header styles
- Remove unneeded styling
- Remove unused code
- Remove unused file
- remove unused macos xib
- Remove unused styling
- Remove unused variable
- Remove VecXGL submodule
- rename o2em and jaguar cores to PV..
- Replace remaining
com.provenance-emu
withorg.provenance-emu
- Replace sync network with async for artwork
- Replace UIWebView with WKWebView
- retro: add bliss, 4do, some organization
- retro: add game music and vicx
- retro: all the cores
- retro: fix build missing #endif
- retro: fix framework dyload
- retro: fix tvos bitcode
- retro: gme builds and links
- retro: gme fix tvos build
- retro: gme loads
- retro: gme plays
- retro: metal video doesn’t crash but still odd
- retro: potator loads, fix static rom buffer copy
- retro: remove VecXGL for libretro version
- retro: software fb callback and pixl fmt fixes
- retro: split core into categories, add cores
- retro: the final cores! for now
- retro: tvOS builds
- retro: update core submodules
- retro: video callback pitchshift work
- rice: use newer branch, fixes catalyst
- Set library header background
- Set navigation bar style only for game library
- Set overrideUserInterfaceStyle
- Set settings button font only on tvOS
- Settings webDav always tvOS and sim
- Settings, disable swiftUI in iOS 13
- shaders add support for lcd/crt screen option
- Simplify code
- Single frameworks, catalyst, macos
- snes n64 fix a/b and deadzone
- snesticle builds
- snesticle: remove from app, needs work
- snesticle: tvos, add to ios build
- spotlight scheme update depends
- stella module fix
- stella snapshot
- stella xcconfig
- stella: delete duplicate files
- stella: use a submodule and static libs
- submodules: Single framework, macos
- swap experimentalCores option with unsupported
- swiftpm updates
- swiftpm update depends
- SwiftUI flow — make landing screen the console carousel if any consoles available, reduce side menu open width
- systems.plist update ext and bios for new cores
- tic80 add submodule
- tic80 submodule
- tvos add missing enums
- tvOS don’t copy glsl to docs
- tvOS fix duplicate symbols in mupen/gliden
- tvOS Fix jaguar compile
- tvOS fix missing target warnings, introspect err
- tvOS hide metadata edit behind #if TVOS_HAS_EDIT
- update bliss
- Update bliss submodule, 2 targets
- Update deployment targets
- Update MednafenGameCore.mm
- Update PVGameLibrarySectionHeaderView.swift
- Update PVGameLibraryViewController.swift
- Update PVGameLibraryViewController.swift
- Update PVGameLibraryViewController.swift
- Update PVGameLibraryViewController+CollectionView.swift
- Update PVG...