feat: improve logging

This commit is contained in:
oSumAtrIX
2022-06-23 02:10:11 +02:00
parent 04805e45fe
commit df85fa37ef
10 changed files with 83 additions and 46 deletions

View File

@@ -1,5 +1,6 @@
package app.revanced.utils.adb
import app.revanced.cli.command.MainCommand.logger
import se.vidstige.jadb.JadbConnection
import se.vidstige.jadb.JadbDevice
import se.vidstige.jadb.managers.PackageManager
@@ -29,8 +30,12 @@ internal class Adb(
internal fun deploy() {
if (modeInstall) {
logger.info("Installing without mounting")
PackageManager(device).install(file)
} else {
logger.info("Installing by mounting")
// push patched file
device.copy(Constants.PATH_INIT_PUSH, file)
@@ -91,10 +96,10 @@ internal class Adb(
}
break
} catch (e: Exception) {
throw RuntimeException("An error occurred while monitoring state of app", e)
throw RuntimeException("An error occurred while monitoring the state of app", e)
}
}
println("App closed, continuing.")
logger.info("Stopped logging because the app was closed")
process.destroy()
executor.shutdown()
}

View File

@@ -2,6 +2,7 @@ package app.revanced.utils.patcher
import app.revanced.cli.command.MainCommand
import app.revanced.cli.command.MainCommand.args
import app.revanced.cli.command.MainCommand.logger
import app.revanced.patcher.Patcher
import app.revanced.patcher.data.base.Data
import app.revanced.patcher.extensions.PatchExtensions.compatiblePackages
@@ -22,33 +23,40 @@ fun Patcher.addPatchesFiltered(
val compatiblePackages = patch.compatiblePackages
val patchName = patch.patchName
val prefix = "[skipped] $patchName"
val prefix = "Skipping $patchName"
val args = MainCommand.args.pArgs!!
if (excludePatches && args.excludedPatches.contains(patchName)) {
println("$prefix: Explicitly excluded.")
logger.info("$prefix: Explicitly excluded")
return@patch
} else if (!patch.include) {
println("$prefix: Implicitly excluded.")
logger.info("$prefix: Explicitly excluded")
return@patch
}
if (compatiblePackages == null) println("$prefix: Missing compatibility annotation. Continuing.")
if (compatiblePackages == null) logger.warn("$prefix: Missing compatibility annotation. Continuing.")
else {
if (!compatiblePackages.any { it.name == packageName }) {
println("$prefix: Incompatible package.")
logger.warn("$prefix: Incompatible with $packageName. This patch is only compatible with ${
compatiblePackages.joinToString(
", "
) { it.name }
}")
return@patch
}
if (!(args.experimental || compatiblePackages.any { it.versions.isEmpty() || it.versions.any { version -> version == packageVersion } })) {
println("$prefix: The package version is $packageVersion and is incompatible.")
val compatibleWith = compatiblePackages.map { _package ->
"${_package.name}: ${_package.versions.joinToString(", ")}"
}.joinToString(";")
logger.warn("$prefix: Incompatible with version $packageVersion. This patch is only compatible with version $compatibleWith")
return@patch
}
}
logger.trace("Adding $patchName")
includedPatches.add(patch)
println("[added] $patchName")
}
this.addPatches(includedPatches)
}
@@ -57,16 +65,16 @@ fun Patcher.addPatchesFiltered(
fun Patcher.applyPatchesVerbose() {
this.applyPatches().forEach { (patch, result) ->
if (result.isSuccess) {
println("[success] $patch")
logger.info("$patch succeeded")
return@forEach
}
println("[error] $patch:")
logger.error("$patch failed:")
result.exceptionOrNull()!!.printStackTrace()
}
}
fun Patcher.mergeFiles() {
this.addFiles(args.pArgs!!.mergeFiles) {
println("[merged] ${it.name}")
this.addFiles(args.pArgs!!.mergeFiles) { file ->
logger.info("Merging $file")
}
}

View File

@@ -1,5 +1,6 @@
package app.revanced.utils.signing
import app.revanced.cli.command.MainCommand.logger
import app.revanced.cli.signing.SigningOptions
import com.android.apksig.ApkSigner
import org.bouncycastle.asn1.x500.X500Name
@@ -55,7 +56,7 @@ internal class Signer(
// TODO: keystore should be saved securely
val ks = File(signingOptions.keyStoreFilePath)
if (!ks.exists()) newKeystore(ks) else {
println("[found] existing keystore: ${ks.nameWithoutExtension}")
logger.info("Found existing keystore: ${ks.nameWithoutExtension}")
}
val keyStore = KeyStore.getInstance("BKS", "BC")