Skip to content

Commit

Permalink
Merge remote-tracking branch 'refs/remotes/origin/develop'
Browse files Browse the repository at this point in the history
# Conflicts:
#	build.gradle.kts
#	docs/changelog.md
#	docs/index.md
#	docs/setup.md
#	docs/social-press.md
#	docs/third-party.md
#	docs/upcoming-milestone.md
#	gradle.properties
#	gradle/libs.versions.toml
#	gradle/wrapper/gradle-wrapper.properties
#	src/main/kotlin/io/github/janbarari/gradle/analytics/GradleAnalyticsPlugin.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/data/DatabaseRepositoryImp.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/data/TemporaryMetricsMemoryCacheImpl.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/database/Database.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/database/MySqlDatabaseConnection.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/domain/model/report/RedundantDependency.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/domain/model/report/RedundantDependencyGraphReport.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/metric/redundantdependencyconnection/report/CreateRedundantDependencyConnectionReportStage.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/metric/redundantdependencyconnection/report/RenderRedundantDependencyConnectionReportStage.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/reporttask/ReportAnalyticsInjector.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/reporttask/ReportAnalyticsTask.kt
#	src/main/kotlin/io/github/janbarari/gradle/analytics/scanner/execution/BuildExecutionInjector.kt
#	src/main/kotlin/io/github/janbarari/gradle/core/SuspendPipeline.kt
#	src/main/kotlin/io/github/janbarari/gradle/git/Git.kt
#	src/main/kotlin/io/github/janbarari/gradle/git/GitGradleImpl.kt
#	src/main/kotlin/io/github/janbarari/gradle/git/GitTerminalImpl.kt
#	src/main/kotlin/io/github/janbarari/gradle/logger/Tower.kt
#	src/main/kotlin/io/github/janbarari/gradle/logger/TowerImpl.kt
#	src/main/kotlin/io/github/janbarari/gradle/memorycache/MemoryCache.kt
#	src/main/kotlin/io/github/janbarari/gradle/utils/DependencyGraphGenerator.kt
#	src/main/kotlin/io/github/janbarari/gradle/utils/ProjectUtils.kt
#	src/test/kotlin/io/github/janbarari/gradle/MockListProperty.kt
#	src/test/kotlin/io/github/janbarari/gradle/MockProperty.kt
#	src/test/kotlin/io/github/janbarari/gradle/MockSetProperty.kt
#	src/test/kotlin/io/github/janbarari/gradle/TowerMockImpl.kt
#	src/test/kotlin/io/github/janbarari/gradle/analytics/data/DatabaseRepositoryTest.kt
  • Loading branch information
janbarari committed Jul 20, 2024
2 parents cf7be02 + 921b920 commit 8a05859
Show file tree
Hide file tree
Showing 354 changed files with 895 additions and 517 deletions.
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# MIT License
# Copyright (c) 2022 Mehdi Janbarari (@janbarari)
# Copyright (c) 2024 Mehdi Janbarari (@janbarari)
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# MIT License
# Copyright (c) 2022 Mehdi Janbarari (@janbarari)
# Copyright (c) 2024 Mehdi Janbarari (@janbarari)
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
35 changes: 23 additions & 12 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/**
* MIT License
* Copyright (c) 2022 Mehdi Janbarari (@janbarari)
* Copyright (c) 2024 Mehdi Janbarari (@janbarari)
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
Expand Down Expand Up @@ -37,13 +37,13 @@ val pluginTags: String by project

@Suppress("DSL_SCOPE_VIOLATION")
plugins {
kotlin("jvm") version(libs.versions.kotlin)
kotlin("jvm") version libs.versions.kotlin
alias(libs.plugins.detekt)
`java-gradle-plugin`
`maven-publish`
jacoco
kotlin("kapt") version(libs.versions.kotlin)
id("com.gradle.plugin-publish") version "1.0.0-rc-1"
id("com.google.devtools.ksp") version libs.versions.ksp
id("com.gradle.plugin-publish") version libs.versions.publish.plugin
}

group = pluginGroupPackageName
Expand All @@ -63,14 +63,15 @@ dependencies {
implementation(kotlin("stdlib-jdk8"))
implementation(libs.sqlite.driver)
implementation(libs.mysql.driver)
implementation(libs.postgres.driver)
implementation(libs.jetbrains.exposed.core)
implementation(libs.jetbrains.exposed.jdbc)
implementation(libs.moshi)
kapt(libs.moshi.codegen)
ksp(libs.moshi.codegen)
implementation(libs.commons.io)
implementation(libs.coroutines)
}

}
tasks.withType<KotlinCompile>().configureEach {
kotlinOptions {
jvmTarget = JavaVersion.VERSION_11.toString()
Expand All @@ -91,13 +92,13 @@ tasks.test {

tasks.jacocoTestReport {

val kotlinTree = fileTree(baseDir = "${project.buildDir}/classes") {
val kotlinTree = fileTree(baseDir = "${project.layout.buildDirectory.asFile.get().path}/classes") {
excludes.add("**/*JsonAdapter.*")
excludes.add("**/*Test*.*")
}

classDirectories.setFrom(kotlinTree)
executionData.setFrom(files("${project.buildDir}/jacoco/test.exec"))
executionData.setFrom(files("${project.layout.buildDirectory.asFile.get().path}/jacoco/test.exec"))

val files = files("src/main/kotlin")

Expand Down Expand Up @@ -156,6 +157,18 @@ tasks.register("publishToLocal") {
}
}

tasks.register("unsafePublishToLocal") {
doLast {
exec {
commandLine(
"./gradlew",
"build",
"publishToMavenLocal",
)
}
}
}

tasks.register("validateSourceHeaderLicense") {
outputs.cacheIf { false }
doLast {
Expand Down Expand Up @@ -184,9 +197,7 @@ tasks.register("publishToGradlePortal") {
}

detekt {
config = files("detekt-config.yml")
config.setFrom(files("detekt-config.yml"))
buildUponDefaultConfig = true
source = files(
"src/main/kotlin"
)
source.setFrom(files("src/main/kotlin"))
}
2 changes: 1 addition & 1 deletion codecov.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# MIT License
# Copyright (c) 2022 Mehdi Janbarari (@janbarari)
# Copyright (c) 2024 Mehdi Janbarari (@janbarari)
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion detekt-config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# MIT License
# Copyright (c) 2022 Mehdi Janbarari (@janbarari)
# Copyright (c) 2024 Mehdi Janbarari (@janbarari)
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
Expand Down
7 changes: 6 additions & 1 deletion docs/changelog.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -23,6 +23,11 @@

# Changelog

## 1.0.2
* Add postgres database support
* Upgrade gradle version to `8.9`
* Update the copyright information

## 1.0.1
* [Issue 105](https://github.com/janbarari/gradle-analytics-plugin/issues/105)
* [Issue 121](https://github.com/janbarari/gradle-analytics-plugin/issues/121)
Expand Down
2 changes: 1 addition & 1 deletion docs/community.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
18 changes: 17 additions & 1 deletion docs/donation.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down Expand Up @@ -36,6 +36,22 @@ Of course, this project will be continued as a free open-source project. But to

<strong>0x2f23a4F4502C5e699777f3F89da6Ba965C7800FF</strong>

!!! info "Send me Tether(TRC-20)"

<strong>TFkukvUMoiovcLU3BGbrzHkp5MerGqwEy4</strong>

!!! info "Send me BNB(Coin)"

<strong>bnb1qejsxgmvf9jpmf7ck5jwdq2xeh27ff2l3rmmxw</strong>

!!! info "Send me Dodgecoin"

<strong>DPxmRMdAes9rfPiNcQcnXiE6Mwnf1u63gH</strong>

!!! info "Send me Tron"

<strong>TFkukvUMoiovcLU3BGbrzHkp5MerGqwEy4</strong>

Don't forget to tap the ⭐ button on the project [Github link](https://github.com/janbarari/gradle-analytics-plugin).


Expand Down
4 changes: 2 additions & 2 deletions docs/getting-report.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down Expand Up @@ -46,7 +46,7 @@ Gradle Analytics Plugin uses daily basis data to generate reports. So you could
<br/>

To understand the metrics and report that plugin provides, It is required to understand Gradle basics and how this build
system works.<br /><a href="https://docs.gradle.org/current/userguide/what_is_gradle.html" target="_blank">https://docs.gradle.org/current/userguide/what_is_gradle.html</a>
system works.<br /><a href="https://docs.gradle.org/current/userguide/userguide.html" target="_blank">https://docs.gradle.org/current/userguide/userguide.html</a>
<br/>

<br/>
8 changes: 6 additions & 2 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down Expand Up @@ -37,7 +37,11 @@ The build is an important process. If we want to have a faster and more efficien
The Gradle Analytics Plugin helps you analyze and measure your project builds. It provides unique visual and text metrics in HTML format.

To understand the metrics and report that plugin provides, It is required to understand Gradle basics and how this build
system works.<br /><a href="https://docs.gradle.org/current/userguide/what_is_gradle.html" target="_blank">https://docs.gradle.org/current/userguide/what_is_gradle.html</a>
system works.<br /><a href="https://docs.gradle.org/current/userguide/userguide.html" target="_blank">https://docs.gradle.org/current/userguide/userguide.html</a>

!!! warning "Important"

<strong>Support the project by <a href="https://janbarari.github.io/gradle-analytics-plugin/donation/" target="_blank">donation</a>, The first stage of donation expectation is $1500 and $0 donated till now.</strong>

Below you can see the metrics provided by the plugin 👇

Expand Down
4 changes: 2 additions & 2 deletions docs/license.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -23,7 +23,7 @@

# License
<strong>MIT License</strong><br/>
Copyright &copy; 2022 Mehdi Janbarari (<a href="https://github.com/janbarari/">@janbarari</a>)
Copyright &copy; 2024 Mehdi Janbarari (<a href="https://github.com/janbarari/">@janbarari</a>)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion docs/privacy-policy.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion docs/report-bug.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion docs/request-feature.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
8 changes: 4 additions & 4 deletions docs/setup.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down Expand Up @@ -38,13 +38,13 @@ Apply the Gradle Plugin to the root of your project.
=== "Kotlin"
``` kotlin
plugins {
id("io.github.janbarari.gradle-analytics-plugin") version "1.0.1"
id("io.github.janbarari.gradle-analytics-plugin") version "1.0.2"
}
```
=== "Groovy"
``` groovy
plugins {
id 'io.github.janbarari.gradle-analytics-plugin' version '1.0.1'
id 'io.github.janbarari.gradle-analytics-plugin' version '1.0.2'
}
```
[For legacy plugin application, see the Gradle Plugin Portal.](https://plugins.gradle.org/plugin/io.github.janbarari.gradle-analytics-plugin)
Expand Down Expand Up @@ -141,7 +141,7 @@ Add plugin configuration in the root of your project.
<strong>Important Notes</strong><br/>

- The plugin will create one automatically if there isn't an SQLite database. You only need to fill in the `name` and `path` (Recommended).
- Both `sqlite / mysql` can be used to config `local` or `ci` databases.
- All `sqlite / mysql / postgres` can be used to config `local` or `ci` databases.
- Both `local` and `ci` configs are optional.
- If using the plugin in your CI/CD make sure the `CI=true` environment variable exists in your CI system environments and the `ci` database is configured.
- The `outputPath` can be skipped, it will generate the report inside the project build directory.
Expand Down
2 changes: 1 addition & 1 deletion docs/social-press.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion docs/special-thanks.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion docs/stylesheets/extra.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/**
* MIT License
* Copyright (c) 2022 Mehdi Janbarari (@janbarari)
* Copyright (c) 2024 Mehdi Janbarari (@janbarari)
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
Expand Down
17 changes: 9 additions & 8 deletions docs/third-party.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -24,13 +24,14 @@
# Third party
All third-party dependencies that are being used in the plugin source:

- <b>Gradle API 8.0.2</b>
- <b>Kotlin 1.8.10</b>
- <b>Gradle API 8.9</b>
- <b>Kotlin 1.9.22</b>
- <b>Coroutines 1.7.1</b>
- <b>Moshi 1.15.0</b>
- <b>Jetbrains Exposed 0.41.1</b>
- <b>Detekt 1.223.0</b>
- <b>Moshi 1.15.1</b>
- <b>Jetbrains Exposed 0.46.0</b>
- <b>Detekt 1.23.0</b>
- <b>Mockk 1.13.5</b>
- `mysql:mysql-connector-java:8.0.33`
- `org.xerial:sqlite-jdbc:3.42.0.0`
- `com.mysql:mysql-connector-j:8.3.0`
- `org.xerial:sqlite-jdbc:3.45.0.0`
- `commons-io:commons-io:2.12.0`
- `org.postgresql:postgresql:42.5.4`
13 changes: 4 additions & 9 deletions docs/upcoming-milestone.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--
MIT License
Copyright (c) 2022 Mehdi Janbarari (@janbarari)
Copyright (c) 2024 Mehdi Janbarari (@janbarari)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand All @@ -22,15 +22,10 @@
-->

# Upcoming Milestone
Finally, the first stable version of the plugin, planned for release in `Milestone/1.0.1`, is scheduled to be published during the last week of May 2023.
Upcoming milestone planned for delivery by the second week of August 2024.
<br>

<b>Upcoming Changes</b>

- [x] Fix bug report #105
- [x] Fix bug report #121
- [x] Upgrade gradle version to 8.0.2
- [x] Upgrade kotlin and other dependencies

<br>
I'm sorry for the delay in the project. It was caused by unexpected problems, like losing my job and facing personal difficulties, which made it hard for me to contribute effectively. I would really appreciate it if you could donate to support the development of this plugin.
- [ ] Fix bug report #105
- [ ] Add new metrics
Loading

0 comments on commit 8a05859

Please sign in to comment.