Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
d126b84
Update sqlite to v2.5.2 (#2210)
renovate-bot Jun 19, 2025
0c77afb
Update aboutlib.version to v12.2.3 (#2205)
renovate-bot Jun 19, 2025
cecf459
Update dependency com.squareup.okio:okio to v3.13.0 (#2201)
renovate-bot Jun 19, 2025
4962dee
Update dependency androidx.work:work-runtime to v2.10.2 (#2221)
renovate-bot Jun 20, 2025
07136d3
Update dependency androidx.compose:compose-bom to v2025.06.01 (#2220)
renovate-bot Jun 20, 2025
1032186
Update dependency com.mohamedrejeb.richeditor:richeditor-compose to v…
renovate-bot Jun 20, 2025
b9e02e9
Update manga without chapters even if restricted by source (#2224)
AntsyLich Jun 20, 2025
d2c1ff6
Add option to hide missing chapter count (#2108)
User826 Jun 20, 2025
63943de
Fix background crash in mass migration screen
AntsyLich Jun 20, 2025
1e4ee14
Update dependency io.mockk:mockk to v1.14.4 (#2232)
renovate-bot Jun 26, 2025
d61c66c
Update dependency org.junit.jupiter:junit-jupiter to v5.13.2 (#2240)
renovate-bot Jun 26, 2025
6eb2a02
Update dependency com.android.tools.build:gradle to v8.11.0 (#2241)
renovate-bot Jun 26, 2025
7dd595f
Update dependency com.google.firebase:firebase-bom to v33.16.0 (#2248)
renovate-bot Jun 26, 2025
ab452a9
Update plugin google-services to v4.4.3 (#2250)
renovate-bot Jun 27, 2025
6953090
Update moko to v0.25.0 (#2258)
renovate-bot Jul 9, 2025
d8dd170
Update aboutlib.version to v12.2.4 (#2261)
renovate-bot Jul 9, 2025
a992f2d
Update dependency gradle to v8.14.3 (#2264)
renovate-bot Jul 9, 2025
1fde027
Update dependency org.junit.jupiter:junit-jupiter to v5.13.3 (#2263)
renovate-bot Jul 9, 2025
a5a0d83
Update serialization.version to v1.9.0 (#2252)
renovate-bot Jul 9, 2025
0cc1224
Update dependency com.diffplug.spotless:spotless-plugin-gradle to v7.…
renovate-bot Jul 9, 2025
84aa07b
Update dependency com.squareup.okio:okio to v3.15.0 (#2256)
renovate-bot Jul 9, 2025
d602416
Use median to determine smart update interval (#2251)
Kladki Jul 10, 2025
5585388
Update dependency com.android.tools.build:gradle to v8.11.1 (#2277)
renovate-bot Jul 15, 2025
e7c79f6
Reduce diff
raxod502 Jul 23, 2025
b4a55dc
Cap filename length correctly
raxod502 Jul 24, 2025
576d950
Use XML metadata for local source
raxod502 Jul 24, 2025
4febec5
Switch to more memory-efficient implementation
raxod502 Jul 24, 2025
e2f0337
Remove buildValidFilenameLegacy
raxod502 Jul 24, 2025
0138de4
Apply standard code formatting
raxod502 Jul 24, 2025
d5c1243
Suggestions from PR review
raxod502 Jul 25, 2025
f93ccaa
Update dependency org.junit.jupiter:junit-jupiter to v5.13.4 (#2296)
renovate-bot Jul 25, 2025
084e626
Update dependency com.diffplug.spotless:spotless-plugin-gradle to v7.…
renovate-bot Jul 25, 2025
4ef8fb9
Update dependency io.mockk:mockk to v1.14.5 (#2282)
renovate-bot Jul 25, 2025
2f10e7b
Update lifecycle.version to v2.9.2 (#2283)
renovate-bot Jul 25, 2025
ce07259
Update dependency io.coil-kt.coil3:coil-bom to v3.3.0 (#2308)
renovate-bot Jul 25, 2025
d805f0c
Update dependency com.pinterest.ktlint:ktlint-cli to v1.7.1 (#2281)
renovate-bot Jul 25, 2025
61cee5c
Update dependency com.squareup.logcat:logcat to v0.3 (#2309)
renovate-bot Jul 25, 2025
a49670b
Update xml.serialization.version to v0.91.2 (#2317)
renovate-bot Jul 29, 2025
8636b7a
Update dependency com.squareup.logcat:logcat to v0.4 (#2319)
renovate-bot Jul 29, 2025
7f56555
Make local source default chapter sorting match file explorer behavior
AntsyLich Jul 27, 2025
c715e98
Update dependency com.google.firebase:firebase-bom to v34 (#2310)
renovate-bot Jul 29, 2025
9352201
Update plugin firebase-crashlytics to v3.0.5 (#2307)
renovate-bot Jul 29, 2025
a4b9c70
Update dependency com.squareup.okio:okio to v3.16.0 (#2320)
renovate-bot Jul 30, 2025
8f5f29e
Update dependency org.jsoup:jsoup to v1.21.1 (#2233)
renovate-bot Jul 30, 2025
fbb5e6b
Update kotlin monorepo to v2.2.0 (#2235)
renovate-bot Jul 30, 2025
6d717ea
Update okhttp monorepo to v5.1.0 (#2257)
renovate-bot Jul 30, 2025
4f1faf4
Update dependency androidx.compose:compose-bom to v2025.07.00 (#2284)
renovate-bot Jul 30, 2025
2ef8ae1
Add option for rendering images in description (#2076)
Secozzi Jul 30, 2025
62eec15
Include Manga `initialized` status in backup (#2285)
AwkwardPeak7 Jul 30, 2025
286b424
Merge remote-tracking branch 'origin/main' into bugfix/1395_different…
raxod502 Jul 30, 2025
cc6b256
Add option for disallowing non-English filenames
raxod502 Jul 30, 2025
00d0e47
Remove comment per code review
raxod502 Jul 30, 2025
8893f6a
Trigger another CI run
raxod502 Jul 30, 2025
269af7f
Update dependency androidx.work:work-runtime to v2.10.3 (#2324)
renovate-bot Jul 30, 2025
967750b
Update dependency androidx.benchmark:benchmark-macro-junit4 to v1.4.0…
renovate-bot Jul 30, 2025
ff9dfe4
Update dependency androidx.test.espresso:espresso-core to v3.7.0 (#2326)
renovate-bot Jul 31, 2025
7ec28eb
Update dependency androidx.test.ext:junit-ktx to v1.3.0 (#2327)
renovate-bot Jul 31, 2025
78d6fe3
Revert "Use metadata for LocalSource"
raxod502 Jul 31, 2025
1365b28
Update dependency com.android.tools.build:gradle to v8.12.0 (#2331)
renovate-bot Jul 31, 2025
e62cd0e
Optimize and cleanup library code (#2329)
AntsyLich Aug 2, 2025
982ebcf
Support mass migration for selected library items (#2336)
AntsyLich Aug 2, 2025
22f8511
Support mass migration in 'Browse -> Migrate' (#2338)
AntsyLich Aug 2, 2025
358adb8
Add donate link in more tab
AntsyLich Aug 2, 2025
b93337c
Remove checksum from release notes and improve download tip
AntsyLich Aug 2, 2025
278db35
Merge remote-tracking branch 'origin/main' into bugfix/1395_different…
raxod502 Aug 2, 2025
33e0121
[skip ci] Fix superfluous string concat (#2339)
MajorTanya Aug 2, 2025
c4407ed
Potentially fix library `IndexOutOfBound` crash (#2341)
AntsyLich Aug 3, 2025
3782e1b
Update CHANGELOG.md
AntsyLich Aug 3, 2025
eba5da6
Update app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadPr…
raxod502 Aug 4, 2025
3c749d7
fixed
raxod502 Aug 4, 2025
8e17a52
say ASCII instead of English
raxod502 Aug 4, 2025
f119386
Fix same manga check logic in mass migration
AntsyLich Aug 4, 2025
e4de208
Release v0.19.0
AntsyLich Aug 4, 2025
549d74a
Add label to privately installed extensions (#2349)
MajorTanya Aug 5, 2025
4de3bf5
Update gradle/actions action to v4.4.2 (#2357)
renovate-bot Aug 5, 2025
095ef8e
Fixed scrollbar sometimes not showing during scroll or not reaching t…
anirudhsnayak Aug 6, 2025
49a84c8
Fix CHANGELOG.md v0.19.0 hyperlink and update release body template
AntsyLich Aug 6, 2025
32257e4
Use `ComicInfo.xml` for chapter metadata in localSource (#2332)
raxod502 Aug 6, 2025
738e888
Merge remote-tracking branch 'origin/main' into bugfix/1395_different…
raxod502 Aug 6, 2025
50dac2a
Add changelog
raxod502 Aug 6, 2025
45c1a31
Translations update from Hosted Weblate (#1879)
weblate Aug 7, 2025
1c3e96b
Revert "Add full predictive back support (#2085)" (#2362)
AntsyLich Aug 7, 2025
9bf3f15
Fix local source EPUB files not loading (#2369)
AntsyLich Aug 7, 2025
a8b6629
Move changelog unreleased removed section
AntsyLich Aug 7, 2025
a93f71b
Fix title text color in light mode on mass migration list (#2370)
AntsyLich Aug 7, 2025
7d717ee
Fix 'Default' category showing in library with no user-added categori…
AntsyLich Aug 7, 2025
5c88f38
Tweak build and release actions (#2367)
AntsyLich Aug 7, 2025
d0bad9f
Remove gradle toolchains plugin
AntsyLich Aug 7, 2025
d88dbe6
Fix crash opening filter sheet with empty library and mark as read/un…
krysanify Aug 7, 2025
029e36b
Release v0.19.1
AntsyLich Aug 7, 2025
fb3dc1c
Fix readme CI badge [skip ci]
AntsyLich Aug 7, 2025
a88b646
Merge branch 'main' into bugfix/1395_different_chapters_with_same_name
raxod502 Aug 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ ij_kotlin_name_count_to_use_star_import_for_members = 2147483647
ktlint_code_style = intellij_idea
ktlint_function_naming_ignore_when_annotated_with = Composable
ktlint_standard_class-signature = disabled
ktlint_standard_comment-wrapping = disabled
ktlint_standard_discouraged-comment-location = disabled
ktlint_standard_function-expression-body = disabled
ktlint_standard_function-signature = disabled
ktlint_standard_type-argument-comment = disabled
ktlint_standard_type-parameter-comment = disabled
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/1_request_feature.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ body:
required: true
- label: I have written a short but informative title.
required: true
- label: I have updated the app to version **[0.18.0](https://github.com/mihonapp/mihon/releases/latest)**.
- label: I have updated the app to version **[0.19.1](https://github.com/mihonapp/mihon/releases/latest)**.
required: true
- label: I will fill out all of the requested information in this form.
required: true
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/2_report_issue.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ body:
label: Mihon version
description: You can find your Mihon version in **More → About**.
placeholder: |
Example: "0.18.0"
Example: "0.19.1"
validations:
required: true

Expand Down Expand Up @@ -95,7 +95,7 @@ body:
required: true
- label: I have gone through the [FAQ](https://mihon.app/docs/faq/general) and [troubleshooting guide](https://mihon.app/docs/guides/troubleshooting/).
required: true
- label: I have updated the app to version **[0.18.0](https://github.com/mihonapp/mihon/releases/latest)**.
- label: I have updated the app to version **[0.19.1](https://github.com/mihonapp/mihon/releases/latest)**.
required: true
- label: I have filled out all of the requested information in this form, including specific version numbers.
required: true
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: PR build check
name: Build & Test
on:
pull_request:
paths:
Expand All @@ -8,24 +8,28 @@ on:
- '!i18n/src/commonMain/moko-resources/**/plurals.xml'
- 'i18n/src/commonMain/moko-resources/base/strings.xml'
- 'i18n/src/commonMain/moko-resources/base/plurals.xml'
push:
branches:
- main

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

permissions:
contents: read

jobs:
build:
name: Build app
name: Build & Test App
runs-on: 'ubuntu-24.04'

steps:
- name: Clone repo
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Dependency Review
if: github.event_name == 'pull_request'
uses: actions/dependency-review-action@da24556b548a50705dd671f47852072ea4c105d9 # v4.7.1

- name: Set up JDK
Expand All @@ -34,14 +38,14 @@ jobs:
java-version: 17
distribution: temurin

- name: Set up gradle
uses: gradle/actions/setup-gradle@ac638b010cf58a27ee6c972d7336334ccaf61c96 # v4.4.1
- name: Set up Gradle
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2

- name: Check code format
run: ./gradlew spotlessCheck

- name: Build app
run: ./gradlew assembleRelease
run: ./gradlew assembleRelease -Pinclude-telemetry -Penable-updater

- name: Run unit tests
run: ./gradlew testReleaseUnitTest
Expand Down
125 changes: 0 additions & 125 deletions .github/workflows/build_push.yml

This file was deleted.

171 changes: 171 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,171 @@
name: Release
on:
push:
tags:
- v*

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
get_tag:
if: github.repository == 'mihonapp/mihon'
name: Extract tag name
runs-on: 'ubuntu-24.04'
outputs:
tag: ${{ steps.extract.outputs.tag }}

steps:
- name: Get tag name
id: extract
run: echo "tag=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_OUTPUT

build:
if: github.repository == 'mihonapp/mihon'
name: Build
runs-on: 'ubuntu-24.04'
needs: get_tag

steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Set up JDK
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
with:
java-version: 17
distribution: temurin

- name: Set up Gradle
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2

- name: Build
run: ./gradlew assembleRelease -Pinclude-telemetry -Penable-updater

- name: Sign APK
uses: r0adkll/sign-android-release@f30bdd30588842ac76044ecdbd4b6d0e3e813478
with:
releaseDirectory: app/build/outputs/apk/release
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
env:
BUILD_TOOLS_VERSION: '35.0.1'

- name: Rename APK
run: |
set -e

mv app/build/outputs/apk/release/app-universal-release-unsigned-signed.apk mihon-${{ needs.get_tag.outputs.tag }}.apk
mv app/build/outputs/apk/release/app-arm64-v8a-release-unsigned-signed.apk mihon-arm64-v8a-${{ needs.get_tag.outputs.tag }}.apk
mv app/build/outputs/apk/release/app-armeabi-v7a-release-unsigned-signed.apk mihon-armeabi-v7a-${{ needs.get_tag.outputs.tag }}.apk
mv app/build/outputs/apk/release/app-x86-release-unsigned-signed.apk mihon-x86-${{ needs.get_tag.outputs.tag }}.apk
mv app/build/outputs/apk/release/app-x86_64-release-unsigned-signed.apk mihon-x86_64-${{ needs.get_tag.outputs.tag }}.apk

- name: Upload APK
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: mihon
path: |
mihon-${{ needs.get_tag.outputs.tag }}.apk
mihon-arm64-v8a-${{ needs.get_tag.outputs.tag }}.apk
mihon-armeabi-v7a-${{ needs.get_tag.outputs.tag }}.apk
mihon-x86-${{ needs.get_tag.outputs.tag }}.apk
mihon-x86_64-${{ needs.get_tag.outputs.tag }}.apk

build_foss:
if: github.repository == 'mihonapp/mihon'
name: Build (FOSS)
runs-on: ubuntu-24.04
needs: get_tag

steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Set up JDK
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
with:
java-version: 17
distribution: temurin

- name: Set up Gradle
uses: gradle/actions/setup-gradle@017a9effdb900e5b5b2fddfb590a105619dca3c3 # v4.4.2
with:
cache-disabled: true

- name: Build
run: ./gradlew assembleFoss -Penable-updater

- name: Sign APK
uses: r0adkll/sign-android-release@f30bdd30588842ac76044ecdbd4b6d0e3e813478
with:
releaseDirectory: app/build/outputs/apk/foss
signingKeyBase64: ${{ secrets.SIGNING_KEY }}
alias: ${{ secrets.ALIAS }}
keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
keyPassword: ${{ secrets.KEY_PASSWORD }}
env:
BUILD_TOOLS_VERSION: '35.0.1'

- name: Rename APK
run: |
set -e

mv app/build/outputs/apk/foss/app-universal-foss-unsigned-signed.apk mihon-${{ needs.get_tag.outputs.tag }}-foss.apk

- name: Upload APK
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: mihon-foss
path: mihon-${{ needs.get_tag.outputs.tag }}-foss.apk

release:
if: github.repository == 'mihonapp/mihon'
name: Create GitHub Release
runs-on: ubuntu-24.04
needs: [get_tag, build, build_foss]

steps:
- name: Download all artifacts
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
with:
merge-multiple: true

- name: Delete all artifacts
uses: geekyeggo/delete-artifact@f275313e70c08f6120db482d7a6b98377786765b # v5.1.0
with:
failOnError: false
name: |
mihon
mihon-foss

- name: Create GitHub Release
uses: softprops/action-gh-release@72f2c25fcb47643c292f7107632f7a47c1df5cd8 # v2.3.2
with:
tag_name: ${{ needs.get_tag.outputs.tag }}
name: Mihon ${{ needs.get_tag.outputs.tag }}
body: |
Check out the [past release notes](https://github.com/mihonapp/mihon/releases) if you’re upgrading from an earlier version. Consider [donating via Open Collective](https://opencollective.com/mihon/contribute) to help keep Mihon improving!

<!-->



<!-->

> [!TIP]
>
> ### If you are unsure which version to download then go with `mihon-${{ needs.get_tag.outputs.tag }}.apk`
files: |
mihon-${{ needs.get_tag.outputs.tag }}.apk
mihon-${{ needs.get_tag.outputs.tag }}-foss.apk
mihon-arm64-v8a-${{ needs.get_tag.outputs.tag }}.apk
mihon-armeabi-v7a-${{ needs.get_tag.outputs.tag }}.apk
mihon-x86-${{ needs.get_tag.outputs.tag }}.apk
mihon-x86_64-${{ needs.get_tag.outputs.tag }}.apk
draft: true
prerelease: false
token: ${{ secrets.MIHON_BOT_TOKEN }}
Loading
Loading