Skip to content

Commit 47d85e4

Browse files
committed
Initialize project structure
0 parents  commit 47d85e4

18 files changed

+488
-0
lines changed

.gitattributes

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#
2+
# https://help.github.com/articles/dealing-with-line-endings/
3+
#
4+
# Linux start script should use lf
5+
/gradlew text eol=lf
6+
7+
# These are Windows script files and should use crlf
8+
*.bat text eol=crlf
9+
10+
# Binary files should be left untouched
11+
*.jar binary
12+

.github/workflows/check-solutions.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Check solutions
2+
3+
on:
4+
push:
5+
branches: [ "*-solution" ]
6+
7+
jobs:
8+
check-solution:
9+
runs-on: ubuntu-latest
10+
11+
steps:
12+
- name: Checkout
13+
uses: actions/checkout@v4
14+
15+
- name: Set up JDK
16+
uses: actions/setup-java@v4
17+
with:
18+
java-version: '21'
19+
distribution: 'temurin'
20+
21+
- name: Set up Gradle
22+
uses: gradle/actions/setup-gradle@v4
23+
24+
- name: Build
25+
run: ./gradlew build

.gitignore

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Ignore Gradle project-specific cache directory
2+
.gradle
3+
4+
# Ignore Gradle build output directory
5+
build
6+
7+
.idea
8+
9+
.kotlin

gradle.properties

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# This file was generated by the Gradle 'init' task.
2+
# https://docs.gradle.org/current/userguide/build_environment.html#sec:gradle_configuration_properties
3+
4+
org.gradle.configuration-cache=true
5+
org.gradle.parallel=true
6+
org.gradle.caching=true

gradle/libs.versions.toml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[versions]
2+
junit = "5.10.1"
3+
strikt = "0.34.0"
4+
5+
[libraries]
6+
junit-engine = { group = "org.junit.jupiter", name = "junit-jupiter-engine", version.ref = "junit"}
7+
junit-params = { group = "org.junit.jupiter", name = "junit-jupiter-params", version.ref = "junit"}
8+
strikt = { group = "io.strikt", name = "strikt-core", version.ref = "strikt" }

gradle/plugins/build.gradle.kts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
plugins {
2+
`kotlin-dsl`
3+
}
4+
5+
repositories {
6+
gradlePluginPortal()
7+
}
8+
9+
dependencies {
10+
implementation("org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:2.0.21")
11+
12+
// It works. Trust !!
13+
// https://github.com/gradle/gradle/issues/15383#issuecomment-779893192
14+
implementation(files(libs.javaClass.superclass.protectionDomain.codeSource.location))
15+
}

gradle/plugins/settings.gradle.kts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
// https://github.com/gradle/gradle/issues/15383#issuecomment-779893192
2+
dependencyResolutionManagement {
3+
versionCatalogs {
4+
create("libs") {
5+
from(files("../libs.versions.toml"))
6+
}
7+
}
8+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import org.gradle.accessors.dm.LibrariesForLibs
2+
import org.gradle.api.Project
3+
import org.gradle.kotlin.dsl.the
4+
5+
val Project.libs get() = the<LibrariesForLibs>()
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
plugins {
2+
kotlin("jvm")
3+
}
4+
5+
repositories {
6+
mavenCentral()
7+
}
8+
9+
java {
10+
toolchain {
11+
languageVersion = JavaLanguageVersion.of(21)
12+
}
13+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
plugins {
2+
id("fmt.kotlin.fundamentals.gradle.base")
3+
id("fmt.kotlin.fundamentals.gradle.feature.test")
4+
}

0 commit comments

Comments
 (0)