mirror of
https://github.com/pachli/pachli-android.git
synced 2025-01-10 16:03:04 +01:00
42219875e9
The previous code unilaterally enabled filter functionality. Some Mastodon-like servers -- like GoToSocial -- do not support filters, and this resulted in user visible error messages when connecting to those servers. To fix this: - Extend the set of supported server capabilities to include client and server side filtering. - Disable the filter preferences if the server does not support filters and show a message explaining why it's disabled. Extend the capabilities model to support this: - Fetch server software name and version from the nodeinfo endpoints (implementing the nodeinfo API and schema) - Extend the use of kotlin-result to provide hierarchies of Error classes and demonstrate how to chain errors and display more informative messages without using exceptions. Fixes #343
44 lines
1.3 KiB
Plaintext
44 lines
1.3 KiB
Plaintext
/*
|
|
* Copyright 2023 Pachli Association
|
|
*
|
|
* This file is a part of Pachli.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it under the terms of the
|
|
* GNU General Public License as published by the Free Software Foundation; either version 3 of the
|
|
* License, or (at your option) any later version.
|
|
*
|
|
* Pachli is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
|
|
* the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
|
* Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along with Pachli; if not,
|
|
* see <http://www.gnu.org/licenses>.
|
|
*/
|
|
|
|
plugins {
|
|
alias(libs.plugins.pachli.android.library)
|
|
alias(libs.plugins.pachli.android.hilt)
|
|
alias(libs.plugins.kotlin.parcelize)
|
|
}
|
|
|
|
android {
|
|
namespace = "app.pachli.core.network"
|
|
|
|
defaultConfig {
|
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(projects.core.common)
|
|
implementation(projects.core.preferences)
|
|
|
|
implementation(libs.gson)
|
|
implementation(libs.bundles.retrofit)
|
|
implementation(libs.bundles.okhttp)
|
|
implementation(libs.networkresult.calladapter)
|
|
implementation(libs.semver)
|
|
|
|
testImplementation(libs.mockwebserver)
|
|
}
|