Commit Graph

40 Commits

Author SHA1 Message Date
Torsten Grote
d6b21e2658 [download] Switch to different slf4j logging implementation on Android 2022-04-19 14:08:58 -03:00
Torsten Grote
d937732ce0 [download] Upgrade Ktor to 2.0 2022-04-19 11:37:19 -03:00
Torsten Grote
bf202bcbd8 Disable kotlin-native for now as it pulls in unverified binaries and executes them
https://youtrack.jetbrains.com/issue/KT-47026
2022-04-01 09:48:04 -03:00
Torsten Grote
27fe848156 Improve mirror fallback, e.g. on 404
and update ktor
2022-03-18 08:38:18 -03:00
Torsten Grote
f777410358 Add test that we don't accept TLS 1.0 or TLS 1.1 2022-03-09 16:19:37 -03:00
Torsten Grote
decc2cc6e3 Add ktlint and run it in CI
Fixes formatting issues it found.

Also remove version variables from gradle scripts as they are not wanted by the project.
2022-02-16 09:43:19 -03:00
Torsten Grote
82b131ff71 Address first round of review comments 2022-02-16 09:43:19 -03:00
Torsten Grote
062c870f23 Move (Http)Downloader into download library 2022-02-16 09:43:18 -03:00
Torsten Grote
9ca7bebc88 Add mirror support in downloads library 2022-02-16 09:43:17 -03:00
Torsten Grote
2bbc03b797 Add workaround for https://youtrack.jetbrains.com/issue/KTOR-3358 2022-02-16 09:43:17 -03:00
Torsten Grote
3d479b29e5 Initial work on separate download library 2022-02-16 09:43:17 -03:00
Torsten Grote
d9f993632c Add kotlin-gradle-plugin and upgrade gradle to 6.9.2
in order to resolve issue with dependency verification
2022-02-16 09:43:17 -03:00
mlya
79c2a38247 closes #2332 add missing verification-metadata for macos 2022-02-04 10:22:07 +00:00
Hans-Christoph Steiner
80a50dcfd4 vendor 'cc.mvdan.accesspoint:library:0.2.0' to remove jcenter entirely
Code was in https://github.com/mvdan/libaccesspoint

Note that this project is **abandoned** since its method doesn't work on Android
7.1 or later. Have a look at these newer alternatives that have been tested to
work on Android 8.0:

* https://github.com/shinilms/direct-net-share
* https://github.com/geekywoman/direct-net-share
* https://github.com/aegis1980/WifiHotSpot
2022-01-19 20:43:24 +01:00
proletarius101
d440cb0c81 Fix status bar color 2021-08-26 13:09:00 +00:00
proletarius101
42c0fe7430 Migrate the image loader to Glide 2021-07-01 15:57:06 +00:00
Hans-Christoph Steiner
39f680bb24 resync gradle verification metadata 2021-06-16 14:35:10 +02:00
Isira Seneviratne
19ffd2b491 Use ActivityCompat.recreate(). 2021-06-16 12:29:32 +00:00
Isira Seneviratne
5fad229dbe Update RxJava to version 3. 2021-06-15 08:51:16 +00:00
proletarius101
e48c49ce0c Change the bottom navigation bar to the material component one 2021-05-18 12:39:58 +00:00
proletarius101
aaf08fea0c Update material components library to 1.3.0 2021-04-28 19:17:05 +08:00
Hans-Christoph Steiner
1cd02f02e0 fix trove4j verification error
trove4j-20160824.pom uploaded to mavenCentral has more info in it, so a
different sha256.
2021-04-12 15:57:40 +02:00
Hans-Christoph Steiner
04ab3aefa4 update gradle verification metadata
./gradlew --write-verification-metadata pgp,sha256 assemble
./gradlew --write-verification-metadata sha256 assemble
2021-04-07 22:00:20 +02:00
Isira Seneviratne
ab8e7935b0 Add WorkManagerTestRule. 2021-01-21 06:18:23 +05:30
Isira Seneviratne
df66d127c2 Add AndroidX WorkManager. 2021-01-21 06:17:28 +05:30
Hans-Christoph Steiner
83b7d7ff67 bump all test dependencies
Hopefully this will give some stability in the Robolectric tests.
2021-01-19 09:06:05 +01:00
Hans-Christoph Steiner
4640146842 gradle dependency verification is too buggy with .pom metadata
This disables the verification of .pom files.  .pom files can add
dependencies, so it would be good to have them verified.  But since this
current setup requires all JAR to be verified, any new dependencies would
fail anyway:
https://docs.gradle.org/current/userguide/dependency_verification.html#sec:disabling-metadata-verification

In some cases everything works fine, like on gitlab-ci, and in other places
it always gives errors like this:

```
A problem occurred configuring root project 'client'.
> Dependency verification failed for configuration ':classpath'
  4 artifacts failed verification:
    - all-1.2.0.pom (com.sun.activation:all:1.2.0) from repository MavenRepo
    - jvnet-parent-1.pom (net.java:jvnet-parent:1) from repository MavenRepo
    - oss-parent-7.pom (org.sonatype.oss:oss-parent:7) from repository MavenRepo
    - oss-parent-9.pom (org.sonatype.oss:oss-parent:9) from repository MavenRepo
  This can indicate that a dependency has been compromised. Please carefully verify the checksums.

  Open this report for more details: file:///home/hans/code/fdroid/client/build/reports/dependency-verification/at-1603359642220/dependency-verification-report.html
```

@glennmen and @eighthave both are getting that error.
2020-10-22 11:49:17 +02:00
Hans-Christoph Steiner
708a6d8dbd allow differing sha256 values in Google Maven vs Android Offline
It turns out that some of the dependencies in the Google Offline Components
downloadable maven repository have difference to the ones Google publishes
to maven.google.com.  WTF.  In any case, the new Gradle Dependency
Verification feature handles this gracefully.  I manually verified the
diffs between the two using diffoscope.  One just differed by timestamps in
the ZIP header, and the other just differed by linefeeds at the end of the
file.  Then I generated this metadata update using:

`./gradlew --write-verification-metadata pgp,sha256`

* https://developer.android.com/studio#offline
2020-08-04 09:46:43 +02:00
Hans-Christoph Steiner
be5bdf3219 enable built-in gradle dependency verification
This fully replaces gradle-witness and goes far beyond what it offered. As
far as I can tell, this actually will verify every single artifact that
gradle downloads and uses.

This was generated in two passes to get both the PGP and the SHA256 info:

```
./gradlew --write-verification-metadata pgp,sha256 build connectedFullDebugAndroidTest --export-keys
./gradlew --write-verification-metadata sha256 build connectedFullDebugAndroidTest
```

Thanks to  @vlsi who made me aware of this, and helped make it possible.
closes !837
2020-07-21 10:33:44 +02:00
Dominik Schürmann
44c284d723 Use Gradle 6.4.1 2020-07-14 21:27:50 +02:00
Marcus Hoffmann
38374e1d32 update androidX libraries to latest versions
This needs another AGP and gradle update as
com.google.android.material:material:1.1.0 created compile errors
otherwise.
2020-07-14 14:10:21 +02:00
Marcus Hoffmann
e2a75f69ee androidX migrations preparations
We need compileSdk 28 and the required AGP and gradle versions, as well
as updating to compatible support library revisions.

minSdk and targetSdk needs to move to build.gradle from manifest.
buildToolsVersion isn't used anymore.
2020-07-14 14:10:21 +02:00
Hans-Christoph Steiner
3a2c10f077 update to latest Gradle Android Plugin (3.1.1) and gradle (4.4.1)
#1379
2018-04-19 15:51:43 +02:00
Hans-Christoph Steiner
c7d9235951 update gradle to 3.2.1, the version included in Debian/stretch 2017-05-01 23:46:13 +02:00
Daniel Martí
6c0a72369c gradle: bump version in wrapper to 3.1
Also re-run `gradle wrapper` from 3.1 to update the scripts and jar.
2016-09-28 22:15:00 +01:00
Daniel Martí
cbccb910a2 gradle: bump plugin and wrapper version
Since the new plugin requires 2.14.1 for security reasons.

Also re-run `gradle wrapper` to update the scripts and the jar.
2016-08-21 11:06:41 +02:00
Daniel Martí
2eea94e5ea gradlew: bump to 2.12
Also remove the 2.11 restriction on the root build.gradle file. It's
unnecessary, as the Android plugin will already error if the version is
too old. This means that the build will work on any version that is new
enough, which should be 2.10-2.12 at the time of writing.
2016-04-23 01:16:14 +01:00
Daniel Martí
ea31ed3079 gradlew: add zip sha256 2016-02-16 20:27:50 +00:00
Daniel Martí
ddda82509c Bump gradle to 2.11 2016-02-15 16:34:41 +00:00
Daniel Martí
714edfb456 Add gradle wrapper 2016-02-15 16:30:40 +00:00