Changelogs
Changelogs of all Mihon stable releases, which are also available on GitHub. Beta releases can be seen on GitHub.
0.17.0Latest
Added
- Option to disable reader zoom out (@Splintorien) (#302)
- Source name and tracker urls to app generated
ComicInfo.xml
file (@Shamicen) (#459) - Option to migrate in Duplicate entry dialog (@sirlag) (#492)
- Upcoming screen to visualize expected update dates (@sirlag) (#420)
- Only show upcoming updates in the future (@sirlag) (#606)
- Add Quantity Badge to Upcoming Screen (@Animeboynz, @AntsyLich) (#1250)
- Crash screen error message to the top of the crash log generated from that screen (@FooIbar) (#742)
- Support for 7Zip and RAR5 archives (@FooIbar) (#949)
- Extra configuration options to e-ink page flashes (@sirlag) (#625)
- 8-bit+ AVIF image support (@WerctFourth) (#971)
- Smart update dialog message when no predicted released date exists (@Animeboynz) (#977)
- Option to copy reader panel to clipboard (@Animeboynz) (#1003)
- Copy Tracker URL option to tracker sheet (@mm12) (#1101)
- A button to exclude all scanlators in exclude scanlators dialog (@AntsyLich) (84b2164)
- Open in browser option to reader menu (@mm12) (#1110)
- Reorder reader menu overflow items (@AntsyLich) (788235f)
- Option to skip downloading duplicate read chapters (@shabnix) (#1125)
- Add confirmation dialog when adding repo via URI (@Animeboynz) (#1158)
- Add "show entry" action to download notifications (@mm12, @AntsyLich) (#1159)
- Option to update trackers when chapter marked as read (@Animeboynz, @AntsyLich) (#1177, #1365, #1374)
- Toast to restart app when User-Agent is changed (@NGB-Was-Taken) (#1204)
- Added more profile compilation status (p) (c8bb78d)
- Add option to opt out of Analytics and Crashlytics (@Animeboynz) (#1237)
- Rework Firebase setup (@AntsyLich) (15e3f28)
- Added random library sort (@jackhamilton) (#1317)
- Make sure random library sort is at the bottom (@AntsyLich) (2e2c8d3)
- Confirmation dialog when removing privately installed extensions (@Animeboynz, @AntsyLich) (#1320)
- Option to backup non-library read entries (@Animeboynz, @jobobby04, @AntsyLich) (#1324)
Changed
- Read archive files from memory instead of temporarily extracting to internal storage (@FooIbar) (#326)
- Bump default user agent (@AntsyLich) (8160b47)
- Wait for sources to be initialized before performing source related tasks (@jobobby04) (a08e03f)
- Duplicate entry dialog UI (@sirlag) (#492)
- Extension trust system
- Store extension repo details from
repo.json
in database (@sirlag) (#506)- Fix extension repo migration not triggering (@AntsyLich) (9672ea8)
- Refactor the ExtensionRepoService to use DTOs (@MajorTanya) (#573)
- Fix extension repo name is used to construct URL instead of baseUrl (@MajorTanya) (#572)
- Fix crash with
TypeReference
issue when creating extension repo (@AntsyLich) (#574, e020ae5)- Fix mishap in (e020ae5) (@AntsyLich) (6965e59)
- Backup and Restore (@Animeboynz) (#1057)
- Trust extension by repo (@AntsyLich) (#570)
- Store extension repo details from
- From M2 ripple to M3 (@FooIbar) (#675)
- Increased continue reading button size (@AntsyLich, @Animeboynz) (e17f70f)
- Global search "Has result" choice is now sticky (@AntsyLich) (5a61ca5)
- Make category backup/restore not dependant on library backup (@AntsyLich) (56fb4f6)
- Rename backup restore error log file (@AntsyLich) (2858ef8)
- Keyboard type in add extension repo dialog (@xbjfk) (#764)
- Adjust collapse/open animation on manga description (@AntsyLich, @ivaniskandar) (1c16fc7)
- Kitsu domain to
kitsu.app
(@MajorTanya) (#1106) - Respect privacy settings in extension update notification (@Animeboynz) (#1156)
- Hide keyboard when a Tracker SearchResultItem is clicked (@Animeboynz) (#1168)
- Enable 'Split Tall Images' by default (@Smol-Ame) (#1185)
- Ignore "intent://" urls on webview (@bapeey) (#1193)
- Make reader chapter navigator slightly wider on small screens (p) (#1202)
- Re-enable fetching chapters list for entries with licenced status (@Animeboynz) (#1230)
- Change casing for Extention Repos String (@Animeboynz) (#1248)
- Retain remote last chapter read if it's higher than the local one for EnhancedTracker (@brewkunz) (#1301)
- Adjust expandable fab animation (p) (eb6092b)
- "Invalidate downloads index" to "Reindex downloads" (@AntsyLich) (d2afbfe)
Improved
- Reader performance
- Avoid unnecessary copying when processing reader image (@FooIbar) (#691)
- Significantly improve performance when loading extremely long images in long strip mode (@FooIbar) (#692)
- Use
Bitmap.Config.HARDWARE
if possible to improve image loading speed (@wwww-wwww) (#687) - Improve preloading in long strip mode (@FooIbar) (#1076)
- Performance when looking up specific files (@raxod502) (#728)
- Chapter number parsing (@Naputt1) (6a80305)
- Error message on restoring if backup decoding fails (@vetleledaal) (#1056)
Removed
- Legacy download folder names no longer supported (@AntsyLich) (e55e5f6)
- Remove legacy broken source and history backup (@AntsyLich) (518abf0)
- Remove more unnecessary permissions from Firebase dependency (@AntsyLich) (02af9b1)
- Fix mishap in 02af9b1 (@AntsyLich) (f22767d)
Fixed
- Extracting
ComicInfo.xml
from local source archives (@FooIbar) (#325) - Chapter download indicator (@ivaniskandar) (d8b9a9f)
- Issues with shizuku in a multi user setup (@Redjard) (#494)
- Fix reader page image not being decoded until it's visible (@FooIbar) (#563)
- Reader chapter progress slider visuals (@FooIbar) (#674)
- Extension being marked as not installed instead of untrusted after updating with private installer (@AntsyLich) (2114514)
- Extension update counter not updating due to extension being marked as untrusted (@AntsyLich) (2114514)
Key "extension-XXX-YYY" was already used
crash (@AntsyLich) (2114514)- Navigation layout tap zones shifting after zooming out in webtoon readers (@FooIbar) (#767)
- Some extension not loading due to missing classes (@AwkwardPeak7) (#783)
- Theme colors in accordance to upstream changes (@CrepeTF, @AntsyLich) (#766, #963, #976, 9a34ace)
- Crash when requesting folder access on non-conforming devices (@mainrs) (#726)
- Fix unexpected skips in strong skipping mode (@FooIbar) (#940)
- Bugged color for Date/Scanlator in chapter list for read chapters (@ivaniskandar) (15d9992)
- Categories having same
order
after restoring backup (@Cologler) (119bcbf) - Filter by "Tracking" temporarily stuck after signing out of tracker (@AntsyLich) (#987)
- Fix login prompts despite being logged in to trackers in Manga screen (@AntsyLich) (cbcd8bd)
- JXL image downloading and loading (@FooIbar) (#993)
- Crash when using
%
in category name (@Animeboynz, @FooIbar) (#1030) - Fix item disappearing when fast scrolling (@cuong-tran) (#1035)
- Library is backed up while being disabled (@AntsyLich) (56fb4f6)
- Crash on list with only sticky header (@cuong-tran) (#1083)
- Crash when trying to clear cookies of some source (@FooIbar) (#1084)
- MAL search results not showing start dates (@MajorTanya) (#1098)
- Android SDK 35 API collision (@AntsyLich) (fdb9617)
- Manga next update calculation when considering custom fetch interval (@cuong-tran) (#1206)
- WheelPicker Manual Input (@Animeboynz) (#1209)
- EnhancedTracker not auto binding when adding manga to library (@brewkunz) (#1298)
- Step count in settings slider (@abdurisaq) (#1356)
- Freezing in some screens due to blocking call (@cuong-tran) (#1364)
- Crash when removing non-existent tracked entry from tracker (@cuong-tran) (#1380)
Other
- Code cleanup
- Minor refactor of theming when expressions (@MajorTanya) (#396)
- Inside
WorkerInfoScreen
(@AntsyLich) (5aec8f8) - Inside
ChapterDownloadIndicator
,MangaChapterListItem
(@AntsyLich) (b7e091d) - MangaCoverFetcher (@ivaniskandar) (1365695)
- Cleanup
LibraryScreenModel
LibraryMap.applySort
and some more (@AntsyLich) (2beb89d) - Address
overridePendingTransition
deprecation (@MajorTanya) (#410) - Prioritize extension classes and files over app (@beer-psi) (#433)
- Use compose pager implementation (@ivaniskandar) (84984ef)
- Switch to coil3 from coil2 (@ivaniskandar) (f72b6e4)
- Fix GIF not playing (@jobobby04) (59bedb3)
- Accommodate db for sync support (@kaiserbh) (#450)
- Fix webtoon last visible item position calculation (@FooIbar) (#562)
- Migrate from
com.google.accompanist:accompanist-webview
toio.github.kevinnzou:compose-webview
(@sirlag) (#569) - Rewrite migrations (@ghostbear) (#577)
- Further improve migration (@ghostbear) (#588)
- Fix migrations not running (@ghostbear) (#604)
- Fix MigratorTest after updating to Kotlin 2 (@cuong-tran) (#896)
- Add MigratorTest to build script (@cuong-tran) (#896)
- Fix UI freeze after migration (@AntsyLich) (3f1d28c)
- Fix some migrations never running (@MajorTanya, @AntsyLich) (#1030)
- Add ProGuard rule to keep
mihon
namespace classes (@MajorTanya) (#605) - Use gradle plugins to share build configuration instead of subprojects (@AntsyLich) (e448e40)
- Remove dependency on compose material 2 components (@AntsyLich) (fb94230)
- Upload PR build artifacts to GitHub (@FooIbar) (#941)
- Refactor archive support with libarchive (@FooIbar) (#949)
- Add safeguard to prevent ArchiveInputStream from being closed twice (@null2264) (#967)
- Move archive related code to :core:archive (@AntsyLich) (bd7b354)
- Replace detekt with ktlint via spotless (@AntsyLich) (#1130, #1136, #1138)
- Refrain from running spotless on weblate files (@AntsyLich) (32d2c2a)
- Use feature flags in compose compiler plugin (@AntsyLich) (8f9a325)- PagerPageHolder: lazy init loading indicator (@AntsyLich, @ivaniskandar) (a45eb5e)
- Collect MangaScreen state with lifecycle (@AntsyLich, @ivaniskandar) (03eb756)
- Add stable marker to Manga data class (@AntsyLich, @ivaniskandar) (03eb756)
- Use DTOs to parse tracking API responses (@MajorTanya) (#1103)
- Fix Kitsu ratingTwenty being typed as String (@MajorTanya) (#1191)
- Fix Kitsu
synopsis
nullability (@MajorTanya) (#1233) - Fix AniList
ALSearchItem.status
nullibility (@Secozzi) (#1297)
- Migrate some classpaths to gradle plugins (@AntsyLich) (fc1c804)
- Add crashlytics to standard builds (@AntsyLich) (3c611b9)
- Switch to stable compose (@AntsyLich) (2baffa6)
- Switch from inorichi injekt to kohesive Injekt (@AntsyLich) (#1205)
- Use custom injekt register with inorichi patch (@AntsyLich) (83fd474)
- Use TextFieldState in BasicTextField where applicable (p) (#1201)
- Bump NDK version (@AntsyLich) (#1203)
- Move firebase permission removal to standard flavor (@AntsyLich) (be671b4)
- Adjust distinct checker in WidgetManager and run on default dispatcher (p) (9b8ab6a)
- Update resources exclusion rules (p) (481cfed)
- Bump compile sdk to 35 (p) (37419cd)
- ChapterNavigator: dispatch page change only when needed (p) (f84d9a0)
- Remove usage of deprecated accompanist SystemUiController (@AntsyLich) (2ba3f06)
- Run PR check when base strings are changed (@AntsyLich) (4051f18)
- Fix PR build check (@AntsyLich) (9503082)
- Cleanup .gitignore files (@AntsyLich) (afa5002)
- Pass uncaught exception to default handler in GlobalExceptionHandler (so it's reported to crashlytics) (@AntsyLich) (f3a2f56)
0.16.5
In particular, refer to the v0.16.0, v0.16.1, v0.16.2, v0.16.3 and v0.16.4 release notes if you're updating from an earlier version.
Added
- Setting to install custom color profiles to get true colors (@wwww-wwww)
Changed
- Permanently enable 32-bit color mode (@wwww-wwww)
Fixed
- Fix wrong dates in Updates and History tab due to time zone issues (@sirlag)
- Fix app infinitely retries tracker update instead of failing after 3 tries (@MajorTanya)
- Fix crash on Pixel devices
- Fix crash when opening some heif/heic images (@az4521)
- Fix crash in track date selection dialog (@ivaniskandar)
- Fix dates for saved images on Samsung devices (@MajorTanya)
- Fix colors getting distorted when opening CMYK jpeg images (@wwww-wwww)
0.16.4
In particular, refer to the v0.16.0, v0.16.1, v0.16.2 and v0.16.3 release notes if you're updating from an earlier version.
Fixed
- Circumvent MAL block (@AntsyLich)
0.16.3
In particular, refer to the v0.16.0, v0.16.1, and v0.16.2 release notes if you're updating from an earlier version.
Added
- Copy extension debug info when clicking logo or name in the extension details screen (@MajorTanya)
Changed
- Rename extension update error file to
mihon_update_errors.txt
(@m-jishnu) - Hide display cutoff setting in reader settings sheet if fullscreen is off (@Riztard)
Fixed
- Fix bottom sheet display issues on non-Tablet UI (@theolm)
- Fix crash when switching screen while a list is scrolling (@theolm)
- Fix newly installed extensions not being recognized by Mihon (@AwkwardPeak7)
- Fix error handling when refreshing MAL OAuth token (@AntsyLich)
0.16.2
In particular, refer to the v0.16.0 and v0.16.1 release notes if you're updating from an earlier version.
Added
- Scanlator filter is now part of Backup (@jobobby04)
Changed
- Rename crash log filename to
mihon_crash_logs.txt
(@MajorTanya)
Fixed
- "Flash screen on page change" Making the screen goes blank (@AntsyLich)
- App icon scaling (@AntsyLich)
- Updating extension not reflecting correctly (@AntsyLich)
- Inconsistent button height with some languages in "Data and storage" (@theolm)
- Fix chapter not being marked as read in some cases with Enhanced Trackers (@Secozzi)
- And various tracker related fixes (@AntsyLich, @Secozzi)
0.16.1
In particular, refer to the v0.16.0 release notes if you're updating from an earlier version.
Fixed
- App Icon not filled (@AntsyLich)
- MangaUpdates default score being set to -1.0 (@AntsyLich)
0.16.0
"The end of 立ち読み (Tachiyomi) is the beginning of みほん (Mihon)" Credit to LinkCable, the icon designer, for this poetic quote.
What's New?
Well, nothing, except you now you need Android 8+ to install the app.