Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#24 Migrate Project Gradle Files To Kotlin DSL #250

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

u-ways
Copy link

@u-ways u-ways commented Apr 24, 2024

Background

Hello,

This PR closes #24. I was digging into Pleo's work culture and decided to give this project some love. Nice library, I happen to have something of similar domain (propactive), but I like the prop project as it has more practical usage.

I have also neatly organised the build.gradle.kts file.

Verification

Dependency resolution integrity, please see:

Increment Version Task:

  • Can successfully increment by a major version.
  • Can successfully increment by a minor version.
  • Can successfully increment by a patch version.

Publishing Task:

  • Can generate metadata for maven publish
  • Can generate POM file for maven publish
  • Publish to maven local succeeded.

Artifacts Generated:

Note

Whilst looking into the project, I noticed the latest artifacts published are not correctly publishing the sources and JavaDoc artifacts. I decided to fix this so the sources are correctly published as it was a very minor change. However, for the JavaDoc, this work is better left for #34

Below are the published artifacts collected from .m2:

repository/io/pleo via ☕ v17.0.9 …
➜ tree -L 3                             
.
├── prop-all
│  ├── 7.0.0
│  │  ├── prop-all-7.0.0-javadoc.jar
│  │  ├── prop-all-7.0.0-sources.jar
│  │  ├── prop-all-7.0.0.jar
│  │  ├── prop-all-7.0.0.module
│  │  └── prop-all-7.0.0.pom
│  └── maven-metadata-local.xml
├── prop-commons-config
│  ├── 7.0.0
│  │  ├── prop-commons-config-7.0.0-javadoc.jar
│  │  ├── prop-commons-config-7.0.0-sources.jar
│  │  ├── prop-commons-config-7.0.0.jar
│  │  ├── prop-commons-config-7.0.0.module
│  │  └── prop-commons-config-7.0.0.pom
│  └── maven-metadata-local.xml
├── prop-core
│  ├── 7.0.0
│  │  ├── prop-core-7.0.0-javadoc.jar
│  │  ├── prop-core-7.0.0-sources.jar
│  │  ├── prop-core-7.0.0.jar
│  │  ├── prop-core-7.0.0.module
│  │  └── prop-core-7.0.0.pom
│  └── maven-metadata-local.xml
├── prop-guice
│  ├── 7.0.0
│  │  ├── prop-guice-7.0.0-javadoc.jar
│  │  ├── prop-guice-7.0.0-sources.jar
│  │  ├── prop-guice-7.0.0.jar
│  │  ├── prop-guice-7.0.0.module
│  │  └── prop-guice-7.0.0.pom
│  └── maven-metadata-local.xml
└── prop-jackson
   ├── 7.0.0
   │  ├── prop-jackson-7.0.0-javadoc.jar
   │  ├── prop-jackson-7.0.0-sources.jar
   │  ├── prop-jackson-7.0.0.jar
   │  ├── prop-jackson-7.0.0.module
   │  └── prop-jackson-7.0.0.pom
   └── maven-metadata-local.xml

In which if I probed the JAR, I get:

pleo/prop-core/7.0.0 via ☕ v17.0.9 …
➜ jar tf prop-core-7.0.0.jar        
META-INF/
META-INF/MANIFEST.MF
META-INF/prop-core.kotlin_module
io/
io/pleo/
io/pleo/prop/
io/pleo/prop/core/
io/pleo/prop/core/Prop$DefaultImpls.class
io/pleo/prop/core/PropException.class
io/pleo/prop/core/Default.class
io/pleo/prop/core/Prop.class
io/pleo/prop/core/internal/
io/pleo/prop/core/internal/LocalProp$1.class
io/pleo/prop/core/internal/ParserFactory.class
io/pleo/prop/core/internal/PropFactory.class
io/pleo/prop/core/internal/LocalProp.class
io/pleo/prop/core/Props.class
io/pleo/prop/core/TypesKt.class

Likewise, if I probed the sources JARs I get:

pleo/prop-core/7.0.0 via ☕ v17.0.9 …
➜ jar tf prop-core-7.0.0-sources.jar
META-INF/
META-INF/MANIFEST.MF
io/
io/pleo/
io/pleo/prop/
io/pleo/prop/core/
io/pleo/prop/core/internal/
io/pleo/prop/core/internal/PropFactory.kt
io/pleo/prop/core/internal/ParserFactory.kt
io/pleo/prop/core/internal/LocalProp.kt
io/pleo/prop/core/Types.kt
io/pleo/prop/core/PropException.kt
io/pleo/prop/core/Prop.kt
io/pleo/prop/core/Default.kt
io/pleo/prop/core/Props.kt

@u-ways u-ways requested a review from a team as a code owner April 24, 2024 00:36
@u-ways
Copy link
Author

u-ways commented Apr 24, 2024

@pleo-io/pegasus-backend / @erwinw / @jsfr when you have time, can you review this, please?

Copy link
Member

@erwinw erwinw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey, thanks so much for this @u-ways, what a pleasant surprise. This looks just fine ✨

Copy link
Contributor

@andriygg andriygg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hey, it's so great! special kudos for refactoring build.gradle 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Convert Gradle files to Kotlin DSL
3 participants