Skip to content

Commit

Permalink
Merge pull request #1060 from mikepenz/develop
Browse files Browse the repository at this point in the history
dev -> main
  • Loading branch information
mikepenz authored Jan 24, 2025
2 parents e1b2eae + 48b3e8e commit 2866336
Show file tree
Hide file tree
Showing 21 changed files with 55 additions and 68 deletions.
7 changes: 2 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:

strategy:
matrix:
os: [macos-14, ubuntu-latest, windows-latest]
os: [ macos-14, ubuntu-latest, windows-latest ]

runs-on: ${{matrix.os}}

Expand Down Expand Up @@ -153,13 +153,10 @@ jobs:
run: |
echo "${{ secrets.KEYSTORE }}" > opensource.jks.asc
gpg -d --passphrase "${{ secrets.KEYSTORE_PASSPHRASE }}" --batch "opensource.jks.asc" > "app/opensource.jks"
echo "${{ secrets.SIGNING_GRADLE }}" > signing.gradle.asc
gpg -d --passphrase "${{ secrets.KEYSTORE_PASSPHRASE }}" --batch "signing.gradle.asc" > "app/signing.gradle"
echo "openSource.signing.file=signing.gradle" >> local.properties
- name: Build Release App
if: startsWith(github.ref, 'refs/tags/')
run: ./gradlew app:assembleStaging app:assembleRelease app:bundleRelease
run: ./gradlew app:assembleStaging app:assembleRelease app:bundleRelease -P"com.mikepenz.android.signing.enabled"="true" -P"com.mikepenz.android.signing.storeFile"="app/opensource.jks" -P"com.mikepenz.android.signing.storePassword"="${{ secrets.STORE_PASSWORD }}" -P"com.mikepenz.android.signing.keyAlias"="${{ secrets.KEY_ALIAS }}" -P"com.mikepenz.android.signing.keyPassword"="${{ secrets.KEY_PASSWORD }}"

- name: Collect artifacts
run: |
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
## Latest releases 🛠

- Compile 35 | Gradle 7.0+ | [v11.3.0](https://github.com/mikepenz/AboutLibraries/tree/v11.3.0
- Java 17 | [v11.4.0](https://github.com/mikepenz/AboutLibraries/tree/11.4.0
- Java 17 | [v11.5.0](https://github.com/mikepenz/AboutLibraries/tree/11.5.0

## Gradle Plugin

Expand Down
4 changes: 1 addition & 3 deletions aboutlibraries-core/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,7 @@ kotlin {
val jsMain by getting {
dependsOn(multiplatformMain)
}
val androidMain by getting {
dependsOn(commonMain)
}
val androidMain by getting
val wasmJsMain by getting {
dependsOn(multiplatformMain)
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
{
"metadata": {
"generated": "2025-01-03T16:36:56.347Z"
},
"libraries": [
{
"uniqueId": "androidx.annotation:annotation",
Expand Down
2 changes: 1 addition & 1 deletion app-test/files/aboutlibraries.json

Large diffs are not rendered by default.

Large diffs are not rendered by default.

19 changes: 1 addition & 18 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,20 +1,14 @@
import com.mikepenz.aboutlibraries.plugin.DuplicateMode
import com.mikepenz.aboutlibraries.plugin.DuplicateRule
import com.mikepenz.aboutlibraries.plugin.StrictMode
import org.jetbrains.kotlin.konan.properties.Properties

plugins {
kotlin("android")
id("com.mikepenz.convention.android-application")
id("com.mikepenz.convention.kotlin-multiplatform")
id("com.mikepenz.convention.android-application")
id("com.mikepenz.convention.compose")
id("com.mikepenz.aboutlibraries.plugin")
}

if (openSourceSigningFile != null) {
apply(from = openSourceSigningFile)
}

android {
namespace = "com.mikepenz.aboutlibraries.sample"

Expand Down Expand Up @@ -138,14 +132,3 @@ configurations.configureEach {
resolutionStrategy.force(libs.fastAdapter.core)
resolutionStrategy.force(libs.iconics.core)
}

private val openSourceSigningFile: String?
get() {
val k = "openSource.signing.file"
return Properties().also { prop ->
rootProject.file("local.properties").takeIf { it.exists() }?.let {
prop.load(it.inputStream())
}
}.getProperty(k, null) ?: if (project.hasProperty(k)) project.property(k)
?.toString() else null
}
5 changes: 0 additions & 5 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,4 @@ plugins {
alias(baseLibs.plugins.mavenPublish) apply false

alias(libs.plugins.navSafeArgs) apply false
}

allprojects {
group = ext.get("GROUP")!!
version = ext.get("VERSION_NAME")!!
}
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GROUP=com.mikepenz

VERSION_NAME=11.4.0
VERSION_CODE=110400
VERSION_NAME=11.5.0
VERSION_CODE=110500

POM_URL=https://github.com/mikepenz/AboutLibraries
POM_SCM_URL=https://github.com/mikepenz/AboutLibraries
Expand Down
6 changes: 3 additions & 3 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
[versions]
conventionPlugin = "0.1.0"
conventionPlugin = "0.1.5"
# kotlin
kotlinxSerialization = "1.7.3"
kotlinxCollections = "0.3.8"
# androidx
activity = "1.9.3"
activity = "1.10.0"
cardview = "1.0.0"
constraintLayout = "2.2.0"
core = "1.15.0"
lifecycle = { require = "2.8.7" }
navigation = "2.8.5"
recyclerView = "1.3.2"
recyclerView = "1.4.0"
# google
material = "1.12.0"
# other
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
1 change: 1 addition & 0 deletions plugin-build/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import java.io.FileInputStream
import java.util.*

plugins {
alias(baseLibs.plugins.kotlinJvm) apply false
alias(libs.plugins.conventionPlugin)
alias(baseLibs.plugins.dokka)
alias(baseLibs.plugins.mavenPublish)
Expand Down
2 changes: 1 addition & 1 deletion plugin-build/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
3 changes: 1 addition & 2 deletions plugin-build/gradlew
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
' "$PWD" ) || exit
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit

# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
Expand Down
4 changes: 2 additions & 2 deletions plugin-build/plugin/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ gradlePlugin {

plugins {
create("aboutlibsPlugin") {
id = "${project.group}"
implementationClass = "${project.group}.AboutLibrariesPlugin"
id = "$group"
implementationClass = "$group.AboutLibrariesPlugin"
description = "Resolve all dependencies used in a gradle module, with associated license and further information."
displayName = "AboutLibraries Library Gradle Plugin"
tags = listOf("libraries", "licenses", "android")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,18 @@ abstract class AboutLibrariesExtension {
*/
var gitHubApiToken: String? = null

/**
* Enable the inclusion of generated MetaData.
* Warning: This includes the generated date, making the build non-reproducible.
*
* ```
* aboutLibraries {
* includeMetaData = true
* }
* ```
*/
var includeMetaData: Boolean = false

/**
* Defines fields which will be excluded during the serialisation of the metadata output file.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,13 @@ import com.mikepenz.aboutlibraries.plugin.mapping.Library
import com.mikepenz.aboutlibraries.plugin.mapping.License
import com.mikepenz.aboutlibraries.plugin.model.writeToDisk
import com.mikepenz.aboutlibraries.plugin.util.forLicense
import org.gradle.api.file.Directory
import org.gradle.api.file.DirectoryProperty
import org.gradle.api.file.RegularFile
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.CacheableTask
import org.gradle.api.tasks.Input
import org.gradle.api.tasks.InputDirectory
import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.OutputDirectory
import org.gradle.api.tasks.OutputFile
import org.gradle.api.tasks.TaskAction
import org.slf4j.LoggerFactory
import java.io.File
import java.util.Locale
import java.util.*

@CacheableTask
abstract class AboutLibrariesTask : BaseAboutLibrariesTask() {
Expand Down Expand Up @@ -104,7 +97,7 @@ abstract class AboutLibrariesTask : BaseAboutLibrariesTask() {

// write to disk
val combinedLibrariesOutputFile = resultDirectory.file(outputFileName).get().asFile
result.writeToDisk(combinedLibrariesOutputFile, excludeFields, extension.prettyPrint)
result.writeToDisk(combinedLibrariesOutputFile, includeMetaData, excludeFields, prettyPrint)
}

companion object {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,7 @@ import org.gradle.api.DefaultTask
import org.gradle.api.artifacts.dsl.DependencyHandler
import org.gradle.api.file.RegularFile
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.Input
import org.gradle.api.tasks.InputDirectory
import org.gradle.api.tasks.InputFile
import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.PathSensitive
import org.gradle.api.tasks.PathSensitivity
import org.gradle.api.tasks.*
import org.slf4j.LoggerFactory
import java.io.File
import javax.inject.Inject
Expand All @@ -25,7 +20,8 @@ abstract class BaseAboutLibrariesTask : DefaultTask() {
@Internal
protected val extension = project.extensions.findByType(AboutLibrariesExtension::class.java)!!

@Internal
@Optional
@Input
open var variant: Provider<String?> = project.provider { null }

@Inject
Expand Down Expand Up @@ -57,6 +53,9 @@ abstract class BaseAboutLibrariesTask : DefaultTask() {
@Input
val exclusionPatterns = extension.exclusionPatterns

@Input
val includePlatform = extension.includePlatform

@Input
val duplicationMode = extension.duplicationMode

Expand Down Expand Up @@ -88,6 +87,12 @@ abstract class BaseAboutLibrariesTask : DefaultTask() {
@Input
val excludeFields = extension.excludeFields

@Input
val includeMetaData = extension.includeMetaData

@Input
val prettyPrint = extension.prettyPrint

@Suppress("UNCHECKED_CAST")
protected fun readInCollectedDependencies(): CollectedContainer {
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class MetaData(
.format(Calendar.getInstance().toInstant()),
)

fun ResultContainer.writeToDisk(outputFile: File, excludeFields: Array<String>, prettyPrint: Boolean) {
fun ResultContainer.writeToDisk(outputFile: File, includeMetaData: Boolean, excludeFields: Array<String>, prettyPrint: Boolean) {
val allowedExclusionQualifiers = setOf(
ResultContainer::class.simpleName,
Library::class.simpleName,
Expand All @@ -42,7 +42,14 @@ fun ResultContainer.writeToDisk(outputFile: File, excludeFields: Array<String>,
"${Library::class.simpleName}.${Library::artifactFolder.name}"
)
val excludedUnqualifiedFieldNames = mutableSetOf<String>()
excludeFields.forEach { excludedField ->

// by default remove the metadata element
val excludedFields = excludeFields.toMutableSet()
if (!includeMetaData) {
excludedFields.add("ResultContainer.metadata")
}

excludedFields.forEach { excludedField ->
val segments = excludedField.split(".")
if (segments.size == 2 && allowedExclusionQualifiers.contains(segments.first())) {
excludedQualifiedFieldNames.add(excludedField)
Expand Down
2 changes: 1 addition & 1 deletion plugin-build/settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ dependencyResolutionManagement {
from(files("../gradle/libs.versions.toml"))
}
create("baseLibs") {
from("com.mikepenz:version-catalog:0.0.4")
from("com.mikepenz:version-catalog:0.1.1")
}
}
}
2 changes: 1 addition & 1 deletion settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ dependencyResolutionManagement {

versionCatalogs {
create("baseLibs") {
from("com.mikepenz:version-catalog:0.1.0")
from("com.mikepenz:version-catalog:0.1.2")
}
}
}
Expand Down

0 comments on commit 2866336

Please sign in to comment.