Skip to content

Commit 7524c03

Browse files
authored
Merge pull request #1629 from kiwix/release/3.1.0
Release/3.1.0
2 parents db94868 + 9b82c2d commit 7524c03

File tree

813 files changed

+18722
-17414
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

813 files changed

+18722
-17414
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
1-
Fixes #[Add issue number here. If you do not solve the issue entirely, please change the message e.g. "First steps for issues #IssueNumber]
1+
<!--
2+
- Add the issue number here.
23
3-
Changes: [Add here what changes were made in this issue and if possible provide links.]
4+
- If you haven't solved the issue completely use "Linked issue #{issue_number}.
5+
- After solving the issue completely change it to "Fixes #{issue_number}.
6+
-->
7+
Fixes #
48

5-
Screenshots/GIF for the change: [If possible, please add relevant screenshots/GIF]
9+
<!-- Add here what changes were made in this issue and if possible provide links. -->
10+
11+
12+
<!-- If possible, please add relevant screenshots / GIFs -->
13+
14+
**Screenshots**

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,3 +66,4 @@ captures/
6666
!/.idea/encodings.xml
6767
!/.idea/copyright/
6868
!/.idea/compiler.xml
69+
app/jacoco.exec

.idea/codeStyles/Project.xml

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/copyright/Kiwix_Copyright_Profile.xml

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/copyright/profiles_settings.xml

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/inspectionProfiles/kiwixAndroidInspections.xml

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/scopes/Git_Kiwix_Copyright_Scope.xml

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.travis.yml

Lines changed: 6 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,10 @@ env:
1515

1616
if: type != push OR tag IS present
1717

18-
before_install:
19-
- openssl aes-256-cbc -K $encrypted_82adfa9c3806_key -iv $encrypted_82adfa9c3806_iv -in secrets.tar.enc -out secrets.tar -d
20-
- tar xvf secrets.tar
21-
2218
install:
2319
- pip install --user 'requests[security]'
2420
- wget -r -nH -nd -np -R index.html* robots.txt* http://download.kiwix.org/dev/android/api/licenses/ -e robots=off -P $ANDROID_HOME/licenses || true
2521

26-
addons:
27-
apt:
28-
packages:
29-
- lynx
30-
3122
before_cache:
3223
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
3324
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
@@ -57,23 +48,18 @@ before_script:
5748
- adb shell input keyevent 82 &
5849

5950
script:
60-
- ./gradlew createKiwixDebugCoverageReport lintKiwixDebug jacocoTestKiwixDebugUnitTestReport assemble
51+
- ./gradlew jacocoInstrumentationTestReport ktlintCheck app:lintDebug core:lintDebug custom:lintCustomexampleDebug jacocoTestDebugUnitTestReport jacocoTestCustomExampleDebugUnitTestReport app:assembleDebug
6152

6253
after_success:
6354
- bash <(curl -s https://codecov.io/bash)
64-
- ./gradlew kiwixtestUploadKiwix
65-
66-
after_failure:
67-
- export REPORT_DIR=${TRAVIS_HOME}/build/kiwix/kiwix-android/app/build/outputs/reports/
68-
- export LOG_DIR=${REPORT_DIR}androidTests/connected/flavors/KIWIX/
69-
- lynx -dump ${LOG_DIR}index.html
70-
- lynx -dump ${REPORT_DIR}lint-results-kiwixDebug.html
71-
55+
- openssl aes-256-cbc -K $encrypted_82adfa9c3806_key -iv $encrypted_82adfa9c3806_iv -in secrets.tar.enc -out secrets.tar -d
56+
- tar xvf secrets.tar
57+
- ./gradlew app:assembleRelease
7258

7359
before_deploy:
7460
# - export APP_CHANGELOG=$(cat app/src/kiwix/play/release-notes/en-US/default.txt)
7561
- export DATE=$(date +%Y-%m-%d)
76-
- export OUTPUT_DIR=app/build/outputs/apk/kiwix
62+
- export OUTPUT_DIR=app/build/outputs/apk
7763
- export UNIVERSAL_RELEASE_APK=$OUTPUT_DIR/release/*universal*.apk
7864
- export UNIVERSAL_DEBUG_APK=$OUTPUT_DIR/debug/*universal*.apk
7965
- export SSH_KEY=travisci_builder_id_key
@@ -96,7 +82,7 @@ deploy:
9682
#publish on play store
9783
- provider: script
9884
skip_cleanup: true
99-
script: ./gradlew publishKiwixRelease
85+
script: ./gradlew publishReleaseApk
10086
on:
10187
tags: true
10288

CHANGELOG

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
3.1.0
2+
NEW: Revamped Night Mode
3+
NEW: Books unsupported by file system are greyed out
4+
NEW: Tags for books
5+
+ Bugfixes & Lots More
6+
7+
18
3.0.5
29
BUGFIX: Some zim files could not be downloaded due to missing metadata
310
BUGFIX: Some mirrors were not allowed to download via http

CONTRIBUTING.md

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,51 +48,56 @@ Our branching strategy is based on [this article](https://nvie.com/posts/a-succe
4848
+ **develop** the actively worked on next release of the app, what we branch off of while working on new features and what we merge into upon feature completion
4949
+ **feature/** or feature/\<username\>/ any branch under this directory is an actively developed feature, feature branches culminate in a PR, are merged and deleted.
5050
Typically a feature branch is off of develop and into develop but in rare scenarios if there is an issue in production a branch may be made off master to fix this issue, this type of feature branch must be merged to develop and master before being deleted.
51-
Branch names should be in the format **#\<issue-number\>-kebab-case-title**
51+
Branch names should be in the format **\<issue-number\>-kebab-case-title**
5252

5353
All branches should have distinct history and should be visually easy to follow, for this reason only perform merge commits when merging code either by PR or when synchronising.
5454

5555
If you wish to rebase you should be following the [Golden Rule](https://www.atlassian.com/git/tutorials/merging-vs-rebasing#the-golden-rule-of-rebasing) and ahere to the advice in the heading [Aside: Rebase as cleanup is awesome in the coding lifecycle](https://www.atlassian.com/git/articles/git-team-workflows-merge-or-rebase).
5656

5757
### Building
5858

59-
The default build is `debug`, with this variant you can use a debugger while developing. To install the application click the `run` button in Android Studio with the `app` configuration selected while you have a device connected. All other build types but `release` can be ignored, the `release` build is what gets uploaded to the Google Play store and can be built locally with the dummy credentials/keystore provided.
59+
The Kiwix app is split into 3 modules
60+
1. `core` - the "core" functionality of the app shared between different clients
61+
1. `app` - the main app Kiwix, Wikipedia Offline
62+
1. `custom` - this is for building custom applications that supply only 1 zim file and a custom skin
63+
64+
The default build is `debug`, with this variant you can use a debugger while developing. To install the application click the `run` button in Android Studio with the `app` configuration selected while you have a device connected. The `release` build is what gets uploaded to the Google Play store and can be built locally with the dummy credentials/keystore provided.
6065

6166
By default we fetch kiwix-lib, the key component for interacting with ZIM files from maven, but if you wish to use your own locally compiled version for testing purposes, then you can create the directory `app/libs` and place your .aar file inside it to have it used instead.
6267

6368
### Testing
6469

65-
Unit tests are located in `app/src/test` and to run them locally you
70+
Unit tests are located in `[module]/src/test` and to run them locally you
6671
can use the gradle command:
6772

68-
$ gradlew testKiwixDebugUnitTest
73+
$ gradlew testDebugUnitTest
6974

7075
or the abbreviated:
7176

72-
$ gradlew tKDUT
77+
$ gradlew tDUT
7378

74-
Automated tests that require a connected device (UI related tests) are located in `app/src/androidTest` & `app/src/androidTestKiwix`, to run them locally you can use the gradle command:
79+
Automated tests that require a connected device (UI related tests) are located in `[module]/src/androidTest` & `app/src/androidTestKiwix`, to run them locally you can use the gradle command:
7580

76-
$ gradlew connectedKiwixDebugAndroidTest
81+
$ gradlew connectedDebugAndroidTest
7782

7883
or the abbreviated:
7984

8085

81-
$ gradlew cKDAT
86+
$ gradlew cDAT
8287

83-
All local test results can be seen under `app/build/reports/`
88+
All local test results can be seen under `[module]/build/reports/`
8489

8590
### Code coverage
8691

8792
To generate coverage reports for your unit tests run:
8893

89-
$ gradlew jacocoTestKiwixDebugUnitTest
94+
$ gradlew jacocoTestReport
9095

9196
To generate coverage reports for your automated tests run:
9297

93-
$ gradlew createKiwixDebugCoverageReport
98+
$ gradlew jacocoInstrumentationTestReport
9499

95-
Code coverage results can be seen under `app/build/reports/`
100+
Code coverage results can be seen under `[module]/build/reports/`
96101

97102
### Continous Integration
98103

0 commit comments

Comments
 (0)