From e55dc8e388b72eabc17cc9556ffefc67bf846949 Mon Sep 17 00:00:00 2001 From: jaguililla Date: Sat, 24 Aug 2024 12:23:47 +0200 Subject: [PATCH 1/9] Rename main branch --- .github/workflows/build.yml | 2 +- .github/workflows/nightly.yml | 2 +- .github/workflows/release.yml | 2 +- build.gradle.kts | 2 +- contributing.md | 8 +++---- gradle.properties | 2 +- http/http_client/README.md | 2 +- http/http_handlers/README.md | 2 +- http/http_server/README.md | 2 +- .../src/main/resources/assets/index.html | 4 ++-- settings.gradle.kts | 2 +- site/assets/project_hexagontk_com_public.key | 22 +++++++++---------- site/build.gradle.kts | 1 + site/footer.txt | 2 +- site/mkdocs.yml | 2 +- site/pages/examples/http_client_examples.md | 10 ++++----- site/pages/examples/http_server_examples.md | 14 ++++++------ site/pages/examples/templates_examples.md | 4 ++-- site/pages/gradle.md | 6 ++--- site/pages/quick_start.md | 4 ++-- 20 files changed, 48 insertions(+), 47 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d2a527a9be..098f3e865e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,7 +1,7 @@ on: push: - branches-ignore: [ master, release/** ] + branches-ignore: [ main, release/** ] permissions: contents: read diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index e74b84446c..86a1175b49 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -83,7 +83,7 @@ jobs: tasks: jmh build_site: - uses: hexagontk/hexagon/.github/workflows/site.yml@master + uses: hexagontk/hexagon/.github/workflows/site.yml@main with: ref: develop diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c12b885203..e2204e05f9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,7 +1,7 @@ on: push: - branches: [ master ] + branches: [ main ] jobs: publish: diff --git a/build.gradle.kts b/build.gradle.kts index 23f9da9837..381c9dc2a7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -80,7 +80,7 @@ task("nativeTestModules") { description = "Print module descriptions to be used in the GraalVM native compliant directory." doLast { - val gitHub = "https://github.com/hexagontk/hexagon/tree/master" + val gitHub = "https://github.com/hexagontk/hexagon/tree/main" val entries = subprojects .filter { sp -> sp.tasks.any { t -> t.name == "nativeTest" } } .sortedBy { sp -> "${sp.group}:${sp.name}" } diff --git a/contributing.md b/contributing.md index ee8a9e56f5..f19d8e5ec0 100644 --- a/contributing.md +++ b/contributing.md @@ -58,9 +58,9 @@ Aside of that kind of modules, you can also find infrastructure modules: compone project itself. These are internal modules not intended to be directly used by users (like the [starters] or the [site]). -[Hexagon Structure]: https://github.com/hexagontk/hexagon/blob/master/README.md#hexagon-structure -[starters]: https://github.com/hexagontk/hexagon/blob/master/starters/README.md -[site]: https://github.com/hexagontk/hexagon/blob/master/site/README.md +[Hexagon Structure]: https://github.com/hexagontk/hexagon/blob/main/README.md#hexagon-structure +[starters]: https://github.com/hexagontk/hexagon/blob/main/starters/README.md +[site]: https://github.com/hexagontk/hexagon/blob/main/site/README.md ## Local Setup Hexagon build process requires a JDK 21+ to compile. You can check the required software, build the @@ -106,7 +106,7 @@ If you want to generate the documentation site, check the Hexagon's site module ## Major Release Checklist 1. Release site's dependent projects (`hexagon_extra`) 2. Publish their packages using the [Nexus Repository Manager] -3. Merge Hexagon main project to `master` in GitHub +3. Merge Hexagon main project to `main` in GitHub 4. Check the site deployment is OK ([https://hexagontk.com]) 5. Publish Hexagon modules using the [Nexus Repository Manager] 6. Create a GitHub release diff --git a/gradle.properties b/gradle.properties index 8800362338..0917c1cd17 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ org.gradle.warning.mode=all org.gradle.console=plain # Gradle -version=3.6.6 +version=3.6.7 group=com.hexagonkt description=The atoms of your platform diff --git a/http/http_client/README.md b/http/http_client/README.md index 0943450b1f..cf57cbd028 100644 --- a/http/http_client/README.md +++ b/http/http_client/README.md @@ -63,7 +63,7 @@ Check the details in the following code fragment: You can also check the [full test] for more details. -[full test]: https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt +[full test]: https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt # Multipart (forms and files) Using the HTTP client you can send MIME multipart parts to the server. You can use it to post forms diff --git a/http/http_handlers/README.md b/http/http_handlers/README.md index aa6c44ebad..33e66cdd9c 100644 --- a/http/http_handlers/README.md +++ b/http/http_handlers/README.md @@ -378,7 +378,7 @@ To do this kind of tests without creating a custom server (using the real produc Check the [tests of the starter projects]. [tests of the starter projects]: -https://github.com/hexagontk/gradle_starter/blob/master/src/test/kotlin/ApplicationTest.kt +https://github.com/hexagontk/gradle_starter/blob/main/src/test/kotlin/ApplicationTest.kt ## Mocking Calls To unit test callbacks and handlers you can create test calls with hardcoded requests without diff --git a/http/http_server/README.md b/http/http_server/README.md index 01d3e21dce..06c898164b 100644 --- a/http/http_server/README.md +++ b/http/http_server/README.md @@ -373,7 +373,7 @@ To do this kind of tests without creating a custom server (using the real produc Check the [tests of the starter projects]. [tests of the starter projects]: -https://github.com/hexagontk/gradle_starter/blob/master/src/test/kotlin/ApplicationTest.kt +https://github.com/hexagontk/gradle_starter/blob/main/src/test/kotlin/ApplicationTest.kt ## Mocking Calls To unit test callbacks and handlers you can create test calls with hardcoded requests without diff --git a/http/http_test/src/main/resources/assets/index.html b/http/http_test/src/main/resources/assets/index.html index e37b065494..363e7fbe24 100644 --- a/http/http_test/src/main/resources/assets/index.html +++ b/http/http_test/src/main/resources/assets/index.html @@ -237,7 +237,7 @@

Usage

@@ -260,7 +260,7 @@

Community

Made with by - OSS contributors. Licensed under + OSS contributors. Licensed under MIT License
diff --git a/settings.gradle.kts b/settings.gradle.kts index 49c69b954d..1d7596b9cc 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -26,7 +26,7 @@ dependencyResolutionManagement { version("detekt", "1.23.6") version("jmhGradle", "0.7.2") version("gradleWrapper", "8.10") - version("mkdocsMaterial", "9.5.32") + version("mkdocsMaterial", "9.5.33") version("mermaidDokka", "0.6.0") version("maven", "3.9.9") diff --git a/site/assets/project_hexagontk_com_public.key b/site/assets/project_hexagontk_com_public.key index 6c066e6e95..46fe0144f9 100644 --- a/site/assets/project_hexagontk_com_public.key +++ b/site/assets/project_hexagontk_com_public.key @@ -1,14 +1,14 @@ -----BEGIN PGP PUBLIC KEY BLOCK----- -mDMEZmiZExYJKwYBBAHaRw8BAQdAH2SjzadZbWhpZXjfNjKHExB81TYTX6Dpqov5 -u8m4noG0TUhleGFnb24gVG9vbGtpdCAoS2V5IHVzZWQgdG8gc2lnbiBwdWJsaXNo -ZWQgYmluYXJpZXMpIDxwcm9qZWN0QGhleGFnb250ay5jb20+iJMEExYKADsWIQQf -vOoDhOcwx2ppFTqxyUwuhSdZBwUCZmiZEwIbAwULCQgHAgIiAgYVCgkICwIEFgID -AQIeBwIXgAAKCRCxyUwuhSdZB6bmAP4o24ocscbPKyhlipTbqmURLrYj51PDEmxy -178UoadNyAD+J3D+lBRyJGihsleM8eoD4z9KdU6dnUG618fe4j6KnA64OARmaJkT -EgorBgEEAZdVAQUBAQdAEjqvSqz2sXrpOZJrVcj3k6h1vGBlBat9lv5bMt6HTngD -AQgHiHgEGBYKACAWIQQfvOoDhOcwx2ppFTqxyUwuhSdZBwUCZmiZEwIbDAAKCRCx -yUwuhSdZB2NxAP0Y0Rn3prIRUN6ecjL6cUlVPtc6cw955j6qhgBq0SjdKgD/eaY1 -Qtq8BiGNS7ZVG4I/X30S81cvK8YuG88+DPgtgAk= -=u4rt +mDMEZsmktBYJKwYBBAHaRw8BAQdA+qQWolc0jGotvU2l8WNpAYQxFmXsQ9RcGN6T +Ug0bwR+0TUhleGFnb24gVG9vbGtpdCAoS2V5IHVzZWQgdG8gc2lnbiBwdWJsaXNo +ZWQgYmluYXJpZXMpIDxwcm9qZWN0QGhleGFnb250ay5jb20+iJkEExYKAEEWIQQm +g2PjQTa/oKpsiuYZAvCZDhbhlAUCZsmktAIbAwUJBaOagAULCQgHAgIiAgYVCgkI +CwIEFgIDAQIeBwIXgAAKCRAZAvCZDhbhlCHRAP9A5YWugJIjw5G2vU+nZeSc0lSw +U8GV3THxMNhxHTIbfwEAuDeJaZIV5cOi3dppLJrBk+F2P3Ze2yYhpNddBwPJTgS4 +OARmyaS0EgorBgEEAZdVAQUBAQdAjucR51AapG9ku4xtB/0DEYBevtmlKBwy9MLr +CTDoKzADAQgHiH4EGBYKACYWIQQmg2PjQTa/oKpsiuYZAvCZDhbhlAUCZsmktAIb +DAUJBaOagAAKCRAZAvCZDhbhlODNAP0fmkfWC2bzHNggkIQ/WBmJZnD8KPvTpHiQ +GBTirT686QEAicRsPlrCSEZ2VZFwSCFcpp3nh2+6+pKrep4GqILKzg4= +=ETAF -----END PGP PUBLIC KEY BLOCK----- diff --git a/site/build.gradle.kts b/site/build.gradle.kts index 3a12e5c90e..ca91518fb3 100644 --- a/site/build.gradle.kts +++ b/site/build.gradle.kts @@ -127,6 +127,7 @@ tasks.register("installMkDocs") { exec { commandLine("python -m venv $venv".split(" ")) } exec { commandLine("$venv/bin/pip install mkdocs-material==$mkdocsMaterialVersion".split(" ")) } exec { commandLine("$venv/bin/pip install mkdocs-htmlproofer-plugin".split(" ")) } + exec { commandLine("$venv/bin/pip install mike".split(" ")) } } } diff --git a/site/footer.txt b/site/footer.txt index f953bb97da..2ad90270b4 100644 --- a/site/footer.txt +++ b/site/footer.txt @@ -3,5 +3,5 @@ Made with by OSS contributors. -Licensed under +Licensed under MIT License diff --git a/site/mkdocs.yml b/site/mkdocs.yml index fe59520381..3fac82a9b3 100644 --- a/site/mkdocs.yml +++ b/site/mkdocs.yml @@ -13,7 +13,7 @@ copyright: > 62.6c-62.8 53.6-66.1 149.8-9.9 207.9l193.5 199.8c12.5 12.9 32.8 12.9 45.3 0l193.5-199.8c56.3-58.1 53-154.3-9.8-207.9z"> by OSS contributors. Licensed - under MIT License + under MIT License repo_name: hexagontk/hexagon repo_url: https://github.com/hexagontk/hexagon diff --git a/site/pages/examples/http_client_examples.md b/site/pages/examples/http_client_examples.md index 9590e407ad..f605a07a82 100644 --- a/site/pages/examples/http_client_examples.md +++ b/site/pages/examples/http_client_examples.md @@ -1,7 +1,7 @@ # HTTP Client Creation Example This example shows how to create HTTP Client instances. Check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt) +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt) for more information. ## Without setting parameters @@ -12,7 +12,7 @@ for more information. # Send Requests Example This example shows send HTTP requests to a server. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt). ## Generic request @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt?genericRequest @@ -27,12 +27,12 @@ This example shows send HTTP requests to a server. Here you can check the @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt?bodyAndContentTypeRequests # Use Cookies Example -Check the details at the [full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). +Check the details at the [full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt?clientCookies # Multipart Requests Example -Refer to the [full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt) +Refer to the [full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt) for more details. ## Send form fields @@ -43,7 +43,7 @@ for more details. # Mutual TLS Example This example shows how make requests using mutual TLS between the client and the server. You can -check the [full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt) +check the [full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt) for more details. @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt?https diff --git a/site/pages/examples/http_server_examples.md b/site/pages/examples/http_server_examples.md index 7c7dca878d..89f91626ed 100644 --- a/site/pages/examples/http_server_examples.md +++ b/site/pages/examples/http_server_examples.md @@ -1,42 +1,42 @@ # Books Example A simple CRUD example showing how to manage book resources. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/BooksTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/BooksTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/BooksTest.kt?books # Cookies Example Demo server to show the use of cookies. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt?cookies # Error Handling Example Code to show how to handle callback exceptions and HTTP error codes. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ErrorsTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ErrorsTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ErrorsTest.kt?errors # Filters Example This example shows how to add filters before and after route execution. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FiltersTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FiltersTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FiltersTest.kt?filters # Files Example The following code shows how to serve resources and receive files. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt?files # CORS Example This example shows how to set up CORS for REST APIs used from the browser. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt?cors # HTTPS Example The snippet below shows how to set up your server to use HTTPS and HTTP/2. You can check the -[full test](https://github.com/hexagontk/hexagon/blob/master/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt?https diff --git a/site/pages/examples/templates_examples.md b/site/pages/examples/templates_examples.md index e4ee346c82..51e2d4843b 100644 --- a/site/pages/examples/templates_examples.md +++ b/site/pages/examples/templates_examples.md @@ -1,7 +1,7 @@ # Register Template Adapters Example to show how to register template adapters. -[full test](https://github.com/hexagontk/hexagon/blob/master/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). ## Using regular Expressions @code templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt?templateRegex @@ -11,6 +11,6 @@ Example to show how to register template adapters. # Process Templates Simple example to show how to process templates. -[full test](https://github.com/hexagontk/hexagon/blob/master/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/main/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). @code templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt?templateUsage diff --git a/site/pages/gradle.md b/site/pages/gradle.md index 2fcc74371c..c5dd00ae4c 100644 --- a/site/pages/gradle.md +++ b/site/pages/gradle.md @@ -11,8 +11,8 @@ places: For examples and reference, check [build.gradle.kts] and [gradle.properties]. -[build.gradle.kts]: https://github.com/hexagontk/hexagon/blob/master/build.gradle.kts -[gradle.properties]: https://github.com/hexagontk/hexagon/blob/master/gradle.properties +[build.gradle.kts]: https://github.com/hexagontk/hexagon/blob/main/build.gradle.kts +[gradle.properties]: https://github.com/hexagontk/hexagon/blob/main/gradle.properties # Helper scripts These scripts can be added to your build to include a whole new capability to your building logic. @@ -45,7 +45,7 @@ To set up this script's parameters, check the [build variables section]. These h * siteHost (REQUIRED): project's website. [Maven Central]: https://search.maven.org -[kotlin.gradle]: https://github.com/hexagontk/hexagon/blob/master/gradle/kotlin.gradle +[kotlin.gradle]: https://github.com/hexagontk/hexagon/blob/main/gradle/kotlin.gradle [build variables section]: /gradle/#build-variables ## Dokka diff --git a/site/pages/quick_start.md b/site/pages/quick_start.md index cb36936012..a9ee6e0a13 100644 --- a/site/pages/quick_start.md +++ b/site/pages/quick_start.md @@ -56,8 +56,8 @@ Hexagon's dependencies are signed, you can get the public key at the These are the details of the public key: ``` -pub ed25519 2024-06-11 Hexagon Toolkit (Key used to sign published binaries) - 1FBCEA0384E730C76A69153AB1C94C2E85275907 +pub ed25519/0E16E194 2024-08-24 Hexagon Toolkit (Key used to sign published binaries) + 268363E34136BFA0AA6C8AE61902F0990E16E194 ``` [pgp key 2]: https://keyserver.ubuntu.com/pks/lookup?search=project%40hexagontk.com&op=index From 7bbfdb0b8a772959004a9bbfcf5d7c1bb982a2b2 Mon Sep 17 00:00:00 2001 From: jaguililla Date: Wed, 4 Sep 2024 21:44:46 +0200 Subject: [PATCH 2/9] Update dependencies --- settings.gradle.kts | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/settings.gradle.kts b/settings.gradle.kts index 1d7596b9cc..2f1ef00e15 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -41,27 +41,23 @@ dependencyResolutionManagement { version("slf4j", "2.0.16") // http_server_netty - version("netty", "4.1.112.Final") - version("nettyTcNative", "2.0.65.Final") + version("netty", "4.1.113.Final") + version("nettyTcNative", "2.0.66.Final") // http_server_helidon - version("helidon", "4.1.0") + version("helidon", "4.1.1") // http_server_servlet version("servlet", "6.1.0") version("jetty", "12.0.12") // rest_tools - version("swaggerRequestValidator", "2.41.0") + version("swaggerRequestValidator", "2.42.0") // serialization version("jackson", "2.17.2") version("dslJson", "2.0.2") - // serverless_http_google - version("functions", "1.1.0") - version("invoker", "1.3.1") - // templates_freemarker version("freemarker", "2.3.33") From 4bfc781b9bfc529f6b2448522664a8ade3ec63ed Mon Sep 17 00:00:00 2001 From: jaguililla Date: Mon, 9 Sep 2024 18:57:55 +0200 Subject: [PATCH 3/9] Update :dependencies --- .gitignore | 1 + gradle/wrapper/gradle-wrapper.jar | Bin 43504 -> 43583 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- settings.gradle.kts | 6 +++--- site/build.gradle.kts | 1 - 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 2952e0d9e6..3d00d5ad4e 100644 --- a/.gitignore +++ b/.gitignore @@ -40,6 +40,7 @@ hs_err_pid* # Other Tools kotlin-js-store/ node_modules/ +.kotlin/ .env # System Files diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 2c3521197d7c4586c843d1d3e9090525f1898cde..a4b76b9530d66f5e68d973ea569d8e19de379189 100644 GIT binary patch delta 3990 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 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 66cd5a0e49..1ed247ec13 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle.kts b/settings.gradle.kts index 2f1ef00e15..1dc4ff3fe3 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -23,9 +23,9 @@ dependencyResolutionManagement { version("licenseReport", "2.9") version("binValidator", "0.16.3") version("nativeTools", "0.10.2") - version("detekt", "1.23.6") + version("detekt", "1.23.7") version("jmhGradle", "0.7.2") - version("gradleWrapper", "8.10") + version("gradleWrapper", "8.10.1") version("mkdocsMaterial", "9.5.33") version("mermaidDokka", "0.6.0") version("maven", "3.9.9") @@ -49,7 +49,7 @@ dependencyResolutionManagement { // http_server_servlet version("servlet", "6.1.0") - version("jetty", "12.0.12") + version("jetty", "12.0.13") // rest_tools version("swaggerRequestValidator", "2.42.0") diff --git a/site/build.gradle.kts b/site/build.gradle.kts index ca91518fb3..8e8ccac922 100644 --- a/site/build.gradle.kts +++ b/site/build.gradle.kts @@ -19,7 +19,6 @@ tasks.register("jacocoRootReport") { .filterNot { it.absolutePath.contains("serialization_test") } .filterNot { it.absolutePath.contains("templates_test") } .toList() - // TODO Include the filtered modules when they are ready executionData.from(projectExecutionData) sourceDirectories.from(modulesSources) From 4895221cfce928b333d7e7eb84c40a745c816ebf Mon Sep 17 00:00:00 2001 From: jaguililla Date: Sun, 15 Sep 2024 13:22:09 +0200 Subject: [PATCH 4/9] Update :site --- contributing.md | 30 ++++---- core/README.md | 4 +- http/http_client/README.md | 14 ++-- http/http_client_java/README.md | 2 +- http/http_client_jetty/README.md | 2 +- http/http_client_jetty_ws/README.md | 2 +- http/http_handlers/README.md | 32 ++++----- http/http_server/README.md | 30 ++++---- http/http_server_helidon/README.md | 2 +- http/http_server_jetty/README.md | 2 +- http/http_server_netty/README.md | 2 +- http/http_server_netty_epoll/README.md | 2 +- .../src/main/resources/assets/index.html | 4 +- http/web/README.md | 4 +- serialization/serialization/README.md | 2 +- .../serialization_dsl_json/README.md | 2 +- settings.gradle.kts | 3 +- site/build.gradle.kts | 46 ++++++++++--- site/footer.txt | 2 +- site/mkdocs.yml | 8 ++- site/mkdocs/index.html | 8 +-- site/mkdocs/main.html | 2 +- site/mkdocs/partials/language/en.html | 36 ---------- site/pages/examples/http_client_examples.md | 10 +-- site/pages/examples/http_server_examples.md | 14 ++-- site/pages/examples/templates_examples.md | 4 +- site/pages/gradle.md | 8 +-- site/pages/index.md | 68 +++++++++---------- site/pages/quick_start.md | 10 +-- templates/templates/README.md | 6 +- 30 files changed, 178 insertions(+), 183 deletions(-) delete mode 100644 site/mkdocs/partials/language/en.html diff --git a/contributing.md b/contributing.md index f19d8e5ec0..b9b733026b 100644 --- a/contributing.md +++ b/contributing.md @@ -58,9 +58,9 @@ Aside of that kind of modules, you can also find infrastructure modules: compone project itself. These are internal modules not intended to be directly used by users (like the [starters] or the [site]). -[Hexagon Structure]: https://github.com/hexagontk/hexagon/blob/main/README.md#hexagon-structure -[starters]: https://github.com/hexagontk/hexagon/blob/main/starters/README.md -[site]: https://github.com/hexagontk/hexagon/blob/main/site/README.md +[Hexagon Structure]: https://github.com/hexagontk/hexagon/blob/release/3/README.md#hexagon-structure +[starters]: https://github.com/hexagontk/hexagon/blob/release/3/starters/README.md +[site]: https://github.com/hexagontk/hexagon/blob/release/3/site/README.md ## Local Setup Hexagon build process requires a JDK 21+ to compile. You can check the required software, build the @@ -104,21 +104,21 @@ If you want to generate the documentation site, check the Hexagon's site module [GitHub Actions]: https://github.com/features/actions ## Major Release Checklist -1. Release site's dependent projects (`hexagon_extra`) -2. Publish their packages using the [Nexus Repository Manager] -3. Merge Hexagon main project to `main` in GitHub -4. Check the site deployment is OK ([https://hexagontk.com]) -5. Publish Hexagon modules using the [Nexus Repository Manager] -6. Create a GitHub release -7. Update starter repositories (Gradle and Maven ones) -8. Update TFB benchmark -9. Update example projects inside the organization -10. Create a changelog to announce the release -11. Publish changelog on: +1. Replace documents' links: `/blob/main/` to `/blob/release/${version}/` +2. Release site's dependent projects (`hexagon_extra`) +3. Publish their packages using the [Nexus Repository Manager] +4. Merge Hexagon main project to `main` in GitHub +5. Check the site deployment is OK ([https://hexagontk.com]) +6. Publish Hexagon modules using the [Nexus Repository Manager] +7. Create a GitHub release +8. Update starter repositories (Gradle and Maven ones) +9. Update TFB benchmark +10. Update example projects inside the organization +11. Create a changelog to announce the release +12. Publish changelog on: * Dev.to * Reddit Kotlin * X (Twitter) - * Kotlin Weekly Newsletter * LinkedIn * Mailing lists (Awesome Kotlin, Kotlin Weekly) diff --git a/core/README.md b/core/README.md index 60ab345a24..0977576491 100644 --- a/core/README.md +++ b/core/README.md @@ -33,7 +33,7 @@ application), you can import it with the following code: JVM information and other useful utilities. Includes basic program settings support at the [Jvm] object (like loading and retrieving system settings). -[Jvm]: /api/core/com.hexagonkt.core/-jvm +[Jvm]: api/core/com.hexagonkt.core/-jvm # Package com.hexagonkt.core.logging Provides a logging management capabilities abstracting the application from logging libraries. @@ -44,7 +44,7 @@ The following code block shows the most common use cases for the [Logger] class: By default, Hexagon uses the [System.Logger] class. -[Logger]: /api/core/com.hexagonkt.core.logging/-logger +[Logger]: api/core/com.hexagonkt.core.logging/-logger [System.Logger]: https://docs.oracle.com/javase/9/docs/api/java/lang/System.Logger.html # Package com.hexagonkt.core.media diff --git a/http/http_client/README.md b/http/http_client/README.md index cf57cbd028..d3c4627bed 100644 --- a/http/http_client/README.md +++ b/http/http_client/README.md @@ -20,7 +20,7 @@ Its main functionalities are: This module is not meant to be used directly. You should include an Adapter implementing this feature (as [http_client_jetty]) in order to create HTTP clients. -[http_client_jetty]: /http_client_jetty +[http_client_jetty]: http_client_jetty # Create an HTTP client You create an HTTP Client instance with default options as follows: @@ -40,8 +40,8 @@ Check this code snippet to get a glimpse on how to send the most general request @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt?genericRequest -[Request]: /api/http/http/com.hexagonkt.http.model/-http-request -[Response]: /api/http/http/com.hexagonkt.http.model/-http-response +[Request]: api/http/http/com.hexagonkt.http.model/-http-request +[Response]: api/http/http/com.hexagonkt.http.model/-http-response # Simple requests shortcuts There are utility methods to make the most common request in an easy way. @@ -63,7 +63,7 @@ Check the details in the following code fragment: You can also check the [full test] for more details. -[full test]: https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt +[full test]: https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt # Multipart (forms and files) Using the HTTP client you can send MIME multipart parts to the server. You can use it to post forms @@ -89,8 +89,8 @@ format. To set up client/server certificates, you need to include [SslSettings] in your [ClientSettings]. In the sections below you can see how to configure these parameters. -[SslSettings]: /api/http/http/com.hexagonkt.http/-ssl-settings -[ClientSettings]: /api/http/http_client/com.hexagonkt.http.client/-http-client-settings +[SslSettings]: api/http/http/com.hexagonkt.http/-ssl-settings +[ClientSettings]: api/http/http_client/com.hexagonkt.http.client/-http-client-settings ## Key Store This store holds the identity certificate, this certificate is presented to the server by the client @@ -115,4 +115,4 @@ and client authenticated by the server). You can see a complete example below: # Package com.hexagonkt.http.client This package holds the classes that define the HTTP client and its configuration settings. -[http]: /http +[http]: http diff --git a/http/http_client_java/README.md b/http/http_client_java/README.md index 05c7d3e0cb..0edc802bd3 100644 --- a/http/http_client_java/README.md +++ b/http/http_client_java/README.md @@ -2,7 +2,7 @@ # Module http_client_java [http_client] implementation using the [Java HTTP Client] classes. -[http_client]: /http_client +[http_client]: http_client [Java HTTP Client]: https://docs.oracle.com/en/java/javase/21/docs/api/java.net.http/java/net/http/HttpClient.html ### Install the Dependency diff --git a/http/http_client_jetty/README.md b/http/http_client_jetty/README.md index b47782be54..f7d427b923 100644 --- a/http/http_client_jetty/README.md +++ b/http/http_client_jetty/README.md @@ -2,7 +2,7 @@ # Module http_client_jetty [http_client] implementation using the [Jetty HTTP Client] library. -[http_client]: /http_client +[http_client]: http_client [Jetty HTTP Client]: https://jetty.org/docs/jetty/12/programming-guide ### Install the Dependency diff --git a/http/http_client_jetty_ws/README.md b/http/http_client_jetty_ws/README.md index 2232818051..a0f5f98d6b 100644 --- a/http/http_client_jetty_ws/README.md +++ b/http/http_client_jetty_ws/README.md @@ -6,7 +6,7 @@ > > WebSockets are not supported on GraalVM native images at the moment. -[http_client]: /http_client +[http_client]: http_client [Jetty HTTP Client]: https://jetty.org/docs/jetty/12/programming-guide ### Install the Dependency diff --git a/http/http_handlers/README.md b/http/http_handlers/README.md index 33e66cdd9c..d26133e842 100644 --- a/http/http_handlers/README.md +++ b/http/http_handlers/README.md @@ -10,7 +10,7 @@ handlers. This module is not meant to be used directly. You should include and Adapter implementing this feature (as [http_server_jetty]) in order to create an HTTP server. -[http_server_jetty]: /http_server_jetty +[http_server_jetty]: http_server_jetty # Chaining changes The response can be modified chaining `send` calls (or its utility methods). However, If calls are @@ -77,17 +77,17 @@ methods. @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/SamplesTest.kt?serverCreation -[server settings]: /api/http/http_server/com.hexagonkt.http.server/-http-server-settings -[handlers section]: /http_server/#handlers -[start()]: /api/http/http_server/com.hexagonkt.http.server/-http-server -[stop()]: /api/http/http_server/com.hexagonkt.http.server/-http-server +[server settings]: api/http/http_server/com.hexagonkt.http.server/-http-server-settings +[handlers section]: http_server/#handlers +[start()]: api/http/http_server/com.hexagonkt.http.server/-http-server +[stop()]: api/http/http_server/com.hexagonkt.http.server/-http-server ## Servlet Web server There is a special server adapter for running inside Servlet Containers. To use it you should import the Servlet HTTP Server Adapter into your project. Check the [http_server_servlet] module for more information. -[http_server_servlet]: /http_server_servlet +[http_server_servlet]: http_server_servlet # HTTP Context These are the events that the handlers handle (they are also called HTTP calls or just calls along @@ -103,7 +103,7 @@ full list of methods. This sample code illustrates the usage: @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/SamplesTest.kt?callbackCall -[API documentation]: /api/http/http_handlers/com.hexagonkt.http.handlers/-http-context +[API documentation]: api/http/http_handlers/com.hexagonkt.http.handlers/-http-context # Handlers The main building blocks of Hexagon HTTP services are a set of handlers. A handler is made up of two @@ -139,7 +139,7 @@ Check the next snippet for Handlers usage examples: @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/SamplesTest.kt?routesCreation -[next]: /api/http/http_handlers/com.hexagonkt.http.handlers/-http-context +[next]: api/http/http_handlers/com.hexagonkt.http.handlers/-http-context @@ -157,7 +157,7 @@ the following fields: It yields true if all the supplied fields matches a call context. -[HttpPredicate]: /api/http/http_handlers/com.hexagonkt.http.handlers/-http-predicate +[HttpPredicate]: api/http/http_handlers/com.hexagonkt.http.handlers/-http-predicate ## Path Patterns Patterns to match requests paths. They can have: @@ -294,7 +294,7 @@ Check the next example for details: The media types of static files are computed from the file extension using the utility methods of the [com.hexagonkt.core.media] package. -[com.hexagonkt.core.media]: /api/core/com.hexagonkt.core.media +[com.hexagonkt.core.media]: api/core/com.hexagonkt.core.media # CORS CORS behaviour can be different depending on the path. You can attach different [CORS Callbacks] to @@ -302,7 +302,7 @@ different handlers. Check the [CorsCallback][CORS Callbacks] class for more deta @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt?cors -[CORS Callbacks]: /api/http/http_server/com.hexagonkt.http.server.callbacks/-cors-callback +[CORS Callbacks]: api/http/http_server/com.hexagonkt.http.server.callbacks/-cors-callback # HTTPS It is possible to start a secure server enabling HTTPS. For this, you have to provide a server @@ -327,14 +327,14 @@ Below you can find a simple example to set up an HTTPS server and client with mu @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt?https -[SslSettings]: /api/http/http/com.hexagonkt.http/-ssl-settings +[SslSettings]: api/http/http/com.hexagonkt.http/-ssl-settings [HTTP/2]: https://en.wikipedia.org/wiki/HTTP/2 [ALPN]: https://en.wikipedia.org/wiki/Application-Layer_Protocol_Negotiation [Gradle]: https://gradle.org -[create sample certificates]: /gradle/#certificates +[create sample certificates]: gradle/#certificates [mutual TLS]: https://en.wikipedia.org/wiki/Mutual_authentication -[SslSettings.clientAuth]: /api/http/http/com.hexagonkt.http/-ssl-settings -[Request.certificateChain]: /api/http/http/com.hexagonkt.http.model/-http-request +[SslSettings.clientAuth]: api/http/http/com.hexagonkt.http/-ssl-settings +[Request.certificateChain]: api/http/http/com.hexagonkt.http.model/-http-request # WebSockets A Web Socket is an HTTP(S) connection made with the GET method and the `upgrade: websocket` and @@ -405,4 +405,4 @@ Classes to model server HTTP messages (requests and responses). Built on top of # Package com.hexagonkt.http.model.ws Classes to model server HTTP messages (requests and responses). Built on top of the [http] module. -[http]: /http +[http]: http diff --git a/http/http_server/README.md b/http/http_server/README.md index 06c898164b..e318a27a4c 100644 --- a/http/http_server/README.md +++ b/http/http_server/README.md @@ -10,7 +10,7 @@ handlers. This module is not meant to be used directly. You should include and Adapter implementing this feature (as [http_server_jetty]) in order to create an HTTP server. -[http_server_jetty]: /http_server_jetty +[http_server_jetty]: http_server_jetty # Context on HTTP processing An HTTP server is nothing more than a function that takes a request and returns a response. Requests @@ -72,17 +72,17 @@ methods. @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/SamplesTest.kt?serverCreation -[server settings]: /api/http/http_server/com.hexagonkt.http.server/-http-server-settings -[handlers section]: /http_server/#handlers -[start()]: /api/http/http_server/com.hexagonkt.http.server/-http-server -[stop()]: /api/http/http_server/com.hexagonkt.http.server/-http-server +[server settings]: api/http/http_server/com.hexagonkt.http.server/-http-server-settings +[handlers section]: http_server/#handlers +[start()]: api/http/http_server/com.hexagonkt.http.server/-http-server +[stop()]: api/http/http_server/com.hexagonkt.http.server/-http-server ## Servlet Web server There is a special server adapter for running inside Servlet Containers. To use it you should import the Servlet HTTP Server Adapter into your project. Check the [http_server_servlet] module for more information. -[http_server_servlet]: /http_server_servlet +[http_server_servlet]: http_server_servlet # HTTP Context These are the events that the handlers handle (they are also called HTTP calls or just calls along @@ -98,7 +98,7 @@ full list of methods. This sample code illustrates the usage: @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/SamplesTest.kt?callbackCall -[API documentation]: /api/http/http_handlers/com.hexagonkt.http.handlers/-http-context +[API documentation]: api/http/http_handlers/com.hexagonkt.http.handlers/-http-context # Handlers The main building blocks of Hexagon HTTP services are a set of handlers. A handler is made up of two @@ -134,7 +134,7 @@ Check the next snippet for Handlers usage examples: @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/SamplesTest.kt?routesCreation -[next]: /api/http/http_handlers/com.hexagonkt.http.handlers/-http-context +[next]: api/http/http_handlers/com.hexagonkt.http.handlers/-http-context @@ -152,7 +152,7 @@ the following fields: It yields true if all the supplied fields matches a call context. -[HttpPredicate]: /api/http/http_handlers/com.hexagonkt.http.handlers/-http-predicate +[HttpPredicate]: api/http/http_handlers/com.hexagonkt.http.handlers/-http-predicate ## Path Patterns Patterns to match requests paths. They can have: @@ -289,7 +289,7 @@ Check the next example for details: The media types of static files are computed from the file extension using the utility methods of the [com.hexagonkt.core.media] package. -[com.hexagonkt.core.media]: /api/core/com.hexagonkt.core.media +[com.hexagonkt.core.media]: api/core/com.hexagonkt.core.media # CORS CORS behaviour can be different depending on the path. You can attach different [CORS Callbacks] to @@ -297,7 +297,7 @@ different handlers. Check the [CorsCallback][CORS Callbacks] class for more deta @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt?cors -[CORS Callbacks]: /api/http/http_server/com.hexagonkt.http.server.callbacks/-cors-callback +[CORS Callbacks]: api/http/http_server/com.hexagonkt.http.server.callbacks/-cors-callback # HTTPS It is possible to start a secure server enabling HTTPS. For this, you have to provide a server @@ -322,14 +322,14 @@ Below you can find a simple example to set up an HTTPS server and client with mu @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt?https -[SslSettings]: /api/http/http/com.hexagonkt.http/-ssl-settings +[SslSettings]: api/http/http/com.hexagonkt.http/-ssl-settings [HTTP/2]: https://en.wikipedia.org/wiki/HTTP/2 [ALPN]: https://en.wikipedia.org/wiki/Application-Layer_Protocol_Negotiation [Gradle]: https://gradle.org -[create sample certificates]: /gradle/#certificates +[create sample certificates]: gradle/#certificates [mutual TLS]: https://en.wikipedia.org/wiki/Mutual_authentication -[SslSettings.clientAuth]: /api/http/http/com.hexagonkt.http/-ssl-settings -[Request.certificateChain]: /api/http/http/com.hexagonkt.http.model/-http-request +[SslSettings.clientAuth]: api/http/http/com.hexagonkt.http/-ssl-settings +[Request.certificateChain]: api/http/http/com.hexagonkt.http.model/-http-request # WebSockets A Web Socket is an HTTP(S) connection made with the GET method and the `upgrade: websocket` and diff --git a/http/http_server_helidon/README.md b/http/http_server_helidon/README.md index b574b58b66..c14b407b43 100644 --- a/http/http_server_helidon/README.md +++ b/http/http_server_helidon/README.md @@ -6,7 +6,7 @@ IMPORTANT: There is a [known bug] in this adapter. [known bug]: https://github.com/hexagontk/hexagon/issues/704 [Helidon]: https://helidon.io -[http_server]: /http_server +[http_server]: http_server ### Install the Dependency diff --git a/http/http_server_jetty/README.md b/http/http_server_jetty/README.md index cd886f315c..cfa17b9fb0 100644 --- a/http/http_server_jetty/README.md +++ b/http/http_server_jetty/README.md @@ -3,7 +3,7 @@ [Jetty] adapter for the [http_server] port. [Jetty]: https://www.eclipse.org/jetty -[http_server]: /http_server +[http_server]: http_server ### Install the Dependency diff --git a/http/http_server_netty/README.md b/http/http_server_netty/README.md index 5cc7efca4d..c464b1da85 100644 --- a/http/http_server_netty/README.md +++ b/http/http_server_netty/README.md @@ -3,7 +3,7 @@ [Netty] adapter for the [http_server] port. [Netty]: https://netty.io -[http_server]: /http_server +[http_server]: http_server ### Install the Dependency diff --git a/http/http_server_netty_epoll/README.md b/http/http_server_netty_epoll/README.md index 0b4c2d29c9..b55d9bbca9 100644 --- a/http/http_server_netty_epoll/README.md +++ b/http/http_server_netty_epoll/README.md @@ -3,7 +3,7 @@ [Netty] Epoll adapter for the [http_server] port. [Netty]: https://netty.io -[http_server]: /http_server +[http_server]: http_server ### Install the Dependency diff --git a/http/http_test/src/main/resources/assets/index.html b/http/http_test/src/main/resources/assets/index.html index 363e7fbe24..2adc2a12e9 100644 --- a/http/http_test/src/main/resources/assets/index.html +++ b/http/http_test/src/main/resources/assets/index.html @@ -237,7 +237,7 @@

Usage

@@ -260,7 +260,7 @@

Community

Made with by - OSS contributors. Licensed under + OSS contributors. Licensed under MIT License
diff --git a/http/web/README.md b/http/web/README.md index fe04f2154f..86cf4a6e2a 100644 --- a/http/web/README.md +++ b/http/web/README.md @@ -3,8 +3,8 @@ Adds utilities for serving HTML pages over HTTP servers. Combines the [http_server] and [templates] ports. -[http_server]: /http_server -[templates]: /templates +[http_server]: http_server +[templates]: templates ### Install the Dependency diff --git a/serialization/serialization/README.md b/serialization/serialization/README.md index 8d4aae0a0f..d50bee7b2a 100644 --- a/serialization/serialization/README.md +++ b/serialization/serialization/README.md @@ -6,7 +6,7 @@ This module holds serialization utilities. This module is not meant to be used directly. You should include an Adapter implementing this feature (as [serialization_dsl_json]) in order to parse/serialize data. -[serialization_dsl_json]: /serialization_dsl_json +[serialization_dsl_json]: serialization_dsl_json === "build.gradle" diff --git a/serialization/serialization_dsl_json/README.md b/serialization/serialization_dsl_json/README.md index b8cc11449a..e2c5fbbcfa 100644 --- a/serialization/serialization_dsl_json/README.md +++ b/serialization/serialization_dsl_json/README.md @@ -2,7 +2,7 @@ # Module http_client_jetty [Serialization] implementation using the [DSL JSON] library. -[Serialization]: /serialization +[Serialization]: serialization [DSL JSON]: https://github.com/ngs-doo/dsl-json ### Install the Dependency diff --git a/settings.gradle.kts b/settings.gradle.kts index 1dc4ff3fe3..df66f4f16d 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -22,7 +22,7 @@ dependencyResolutionManagement { version("dokka", "1.9.20") version("licenseReport", "2.9") version("binValidator", "0.16.3") - version("nativeTools", "0.10.2") + version("nativeTools", "0.10.3") version("detekt", "1.23.7") version("jmhGradle", "0.7.2") version("gradleWrapper", "8.10.1") @@ -33,7 +33,6 @@ dependencyResolutionManagement { // Testing version("junit", "5.11.0") version("mockk", "1.13.12") - // TODO Replace with code using HTTP client and virtual threads version("gatling", "3.10.5") version("jmh", "1.37") diff --git a/site/build.gradle.kts b/site/build.gradle.kts index 8e8ccac922..2527b8041e 100644 --- a/site/build.gradle.kts +++ b/site/build.gradle.kts @@ -123,21 +123,49 @@ task("checkDocs") { tasks.register("installMkDocs") { doLast { val mkdocsMaterialVersion = libs.versions.mkdocsMaterial.get() + val pip = "$venv/bin/pip" exec { commandLine("python -m venv $venv".split(" ")) } - exec { commandLine("$venv/bin/pip install mkdocs-material==$mkdocsMaterialVersion".split(" ")) } - exec { commandLine("$venv/bin/pip install mkdocs-htmlproofer-plugin".split(" ")) } - exec { commandLine("$venv/bin/pip install mike".split(" ")) } + exec { commandLine("$pip install mkdocs-material==$mkdocsMaterialVersion".split(" ")) } + exec { commandLine("$pip install mkdocs-htmlproofer-plugin".split(" ")) } + exec { commandLine("$pip install mike".split(" ")) } } } -tasks.register("serveSite") { +tasks.register("buildSite") { dependsOn("checkDocs", "installMkDocs") - commandLine("$venv/bin/mkdocs serve".split(" ")) + val pushSite = findProperty("pushSite")?.let { if (it == "true") "--push " else "" } ?: "" + val mike = "$venv/bin/mike" + val rootVersion = rootProject.version.toString() + val siteAlias = if (rootVersion.contains(Regex("-[AB]"))) "dev" else "stable" + val majorVersion = "v" + rootVersion.split(".").first() + val command = "$mike deploy $pushSite--update-aliases $majorVersion $siteAlias" + environment.put("PATH", System.getenv("PATH") + ":$venv/bin") + commandLine(command.split(" ")) } -tasks.register("buildSite") { - dependsOn("checkDocs", "installMkDocs") - commandLine("$venv/bin/mkdocs build -cs".split(" ")) +tasks.register("deleteSite") { + dependsOn("installMkDocs") + environment.put("PATH", System.getenv("PATH") + ":$venv/bin") + commandLine("$venv/bin/mike delete --all".split(" ")) +} + +tasks.register("defaultSite") { + dependsOn("installMkDocs") + environment.put("PATH", System.getenv("PATH") + ":$venv/bin") + commandLine("$venv/bin/mike set-default stable".split(" ")) +} + +/* + * Order: + * 1. Delete + * 2. Build stable + * 3. Set default + * 4. Serve (test) + * 5. Push stable + */ +tasks.register("serveSite") { + environment.put("PATH", System.getenv("PATH") + ":$venv/bin") + commandLine("$venv/bin/mike serve".split(" ")) } tasks.withType().configureEach { enabled = false } @@ -215,7 +243,7 @@ fun insertSamplesCode(parent: File, content: String): String = val lines = url.readText().lines() val text = lines.slice(lines.rangeOf(tag)).joinToString("\n").trimIndent() "```kotlin\n$text\n```" - } catch (e: Exception) { + } catch (_: Exception) { val code = it.value println("ERROR: Unable to process '$code' in folder: '${parent.absolutePath}'") code diff --git a/site/footer.txt b/site/footer.txt index 2ad90270b4..7fb4346ca0 100644 --- a/site/footer.txt +++ b/site/footer.txt @@ -3,5 +3,5 @@ Made with by OSS contributors. -Licensed under +Licensed under MIT License diff --git a/site/mkdocs.yml b/site/mkdocs.yml index 3fac82a9b3..82d8995112 100644 --- a/site/mkdocs.yml +++ b/site/mkdocs.yml @@ -2,7 +2,7 @@ dev_addr: 127.0.0.1:8000 site_name: Hexagon -site_url: https://hexagontk.com +site_url: https://hexagontk.com/ site_author: Hexagon Toolkit site_dir: build/site site_description: The atoms of your platform @@ -13,7 +13,7 @@ copyright: > 62.6c-62.8 53.6-66.1 149.8-9.9 207.9l193.5 199.8c12.5 12.9 32.8 12.9 45.3 0l193.5-199.8c56.3-58.1 53-154.3-9.8-207.9z"> by OSS contributors. Licensed - under MIT License + under MIT License repo_name: hexagontk/hexagon repo_url: https://github.com/hexagontk/hexagon @@ -125,6 +125,10 @@ extra: Hexagon is a microservices toolkit written in Kotlin. Its purpose is to ease the building of services (Web applications or APIs) that run inside a cloud platform + version: + provider: mike + alias: true + analytics: provider: google property: G-BEKWF2E4DJ diff --git a/site/mkdocs/index.html b/site/mkdocs/index.html index 42d3772b8c..3fbdfc1896 100644 --- a/site/mkdocs/index.html +++ b/site/mkdocs/index.html @@ -17,11 +17,11 @@ alt="GitHub Actions" src="https://github.com/hexagontk/hexagon/workflows/Release/badge.svg" /> - - Coverage + + Coverage - Maven Central Repository + Maven Central Repository

@@ -30,7 +30,7 @@

The atoms of your platform

Hexagon is a microservices toolkit written in - Kotlin. Its purpose is to ease the building of server + Kotlin. Its purpose is to ease the building of server applications (Web applications or APIs) that run inside a cloud platform.

diff --git a/site/mkdocs/main.html b/site/mkdocs/main.html index 4da7eca085..58b1680c49 100644 --- a/site/mkdocs/main.html +++ b/site/mkdocs/main.html @@ -80,7 +80,7 @@ + src="/v3/img/sponsors/jetbrains-variant-4-bw.svg">

diff --git a/site/mkdocs/partials/language/en.html b/site/mkdocs/partials/language/en.html deleted file mode 100644 index af9c097ea8..0000000000 --- a/site/mkdocs/partials/language/en.html +++ /dev/null @@ -1,36 +0,0 @@ - -{% macro t(key) %}{{ { - "language": "en", - "direction": "ltr", - "clipboard.copy": "Copy to clipboard", - "clipboard.copied": "Copied to clipboard", - "edit.link.title": "Edit this page", - "footer.previous": "Previous", - "footer.next": "Next", - "footer.title": "Footer", - "header.title": "Header", - "meta.comments": "Comments", - "meta.source": "Source", - "nav.title": "Navigation", - "search.config.lang": "en", - "search.config.pipeline": "trimmer, stopWordFilter", - "search.config.separator": "[\s\-]+", - "search.placeholder": "Search", - "search.reset": "Clear", - "search.result.initializer": "Initializing search", - "search.result.placeholder": "Type to start searching", - "search.result.none": "No matching documents", - "search.result.one": "1 matching document", - "search.result.other": "# matching documents", - "search.result.more.one": "1 more on this page", - "search.result.more.other": "# more on this page", - "search.result.term.missing": "Missing", - "skip.link.title": "Skip to content", - "source.link.title": "Go to repository", - "source.revision.date": "Last update", - "source.file.date.updated": "Last update", - "source.file.date.created": "Created", - "tabs.title": "Tabs", - "toc.title": "Page Contents", - "top.title": "Back to top" -}[key] }}{% endmacro %} diff --git a/site/pages/examples/http_client_examples.md b/site/pages/examples/http_client_examples.md index f605a07a82..415cd1f628 100644 --- a/site/pages/examples/http_client_examples.md +++ b/site/pages/examples/http_client_examples.md @@ -1,7 +1,7 @@ # HTTP Client Creation Example This example shows how to create HTTP Client instances. Check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt) +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt) for more information. ## Without setting parameters @@ -12,7 +12,7 @@ for more information. # Send Requests Example This example shows send HTTP requests to a server. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt). ## Generic request @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt?genericRequest @@ -27,12 +27,12 @@ This example shows send HTTP requests to a server. Here you can check the @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ClientTest.kt?bodyAndContentTypeRequests # Use Cookies Example -Check the details at the [full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). +Check the details at the [full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt?clientCookies # Multipart Requests Example -Refer to the [full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt) +Refer to the [full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt) for more details. ## Send form fields @@ -43,7 +43,7 @@ for more details. # Mutual TLS Example This example shows how make requests using mutual TLS between the client and the server. You can -check the [full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt) +check the [full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt) for more details. @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt?https diff --git a/site/pages/examples/http_server_examples.md b/site/pages/examples/http_server_examples.md index 89f91626ed..15ac30749a 100644 --- a/site/pages/examples/http_server_examples.md +++ b/site/pages/examples/http_server_examples.md @@ -1,42 +1,42 @@ # Books Example A simple CRUD example showing how to manage book resources. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/BooksTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/BooksTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/BooksTest.kt?books # Cookies Example Demo server to show the use of cookies. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CookiesTest.kt?cookies # Error Handling Example Code to show how to handle callback exceptions and HTTP error codes. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ErrorsTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ErrorsTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/ErrorsTest.kt?errors # Filters Example This example shows how to add filters before and after route execution. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FiltersTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FiltersTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FiltersTest.kt?filters # Files Example The following code shows how to serve resources and receive files. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/FilesTest.kt?files # CORS Example This example shows how to set up CORS for REST APIs used from the browser. Here you can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/CorsTest.kt?cors # HTTPS Example The snippet below shows how to set up your server to use HTTPS and HTTP/2. You can check the -[full test](https://github.com/hexagontk/hexagon/blob/main/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt). @code http/http_test/src/main/kotlin/com/hexagonkt/http/test/examples/HttpsTest.kt?https diff --git a/site/pages/examples/templates_examples.md b/site/pages/examples/templates_examples.md index 51e2d4843b..c3c346d44b 100644 --- a/site/pages/examples/templates_examples.md +++ b/site/pages/examples/templates_examples.md @@ -1,7 +1,7 @@ # Register Template Adapters Example to show how to register template adapters. -[full test](https://github.com/hexagontk/hexagon/blob/main/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). ## Using regular Expressions @code templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt?templateRegex @@ -11,6 +11,6 @@ Example to show how to register template adapters. # Process Templates Simple example to show how to process templates. -[full test](https://github.com/hexagontk/hexagon/blob/main/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). +[full test](https://github.com/hexagontk/hexagon/blob/release/3/templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt). @code templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt?templateUsage diff --git a/site/pages/gradle.md b/site/pages/gradle.md index c5dd00ae4c..eb067b003c 100644 --- a/site/pages/gradle.md +++ b/site/pages/gradle.md @@ -11,8 +11,8 @@ places: For examples and reference, check [build.gradle.kts] and [gradle.properties]. -[build.gradle.kts]: https://github.com/hexagontk/hexagon/blob/main/build.gradle.kts -[gradle.properties]: https://github.com/hexagontk/hexagon/blob/main/gradle.properties +[build.gradle.kts]: https://github.com/hexagontk/hexagon/blob/release/3/build.gradle.kts +[gradle.properties]: https://github.com/hexagontk/hexagon/blob/release/3/gradle.properties # Helper scripts These scripts can be added to your build to include a whole new capability to your building logic. @@ -45,8 +45,8 @@ To set up this script's parameters, check the [build variables section]. These h * siteHost (REQUIRED): project's website. [Maven Central]: https://search.maven.org -[kotlin.gradle]: https://github.com/hexagontk/hexagon/blob/main/gradle/kotlin.gradle -[build variables section]: /gradle/#build-variables +[kotlin.gradle]: https://github.com/hexagontk/hexagon/blob/release/3/gradle/kotlin.gradle +[build variables section]: gradle/#build-variables ## Dokka This script set up [Dokka] tool and add a JAR with the project's code documentation to the published diff --git a/site/pages/index.md b/site/pages/index.md index dbdcbbad7c..9eda069f26 100644 --- a/site/pages/index.md +++ b/site/pages/index.md @@ -23,10 +23,10 @@ Hexagon is designed to fit in applications that conform to the [Hexagonal Archit [Clean Architecture], [Onion Architecture] or [Ports and Adapters Architecture]). Its design principles also fit into this architecture. -[The HTTP server]: /http_server -[The HTTP client]: /http_client -[Serialization]: /serialization -[Template Processing]: /templates +[The HTTP server]: http_server +[The HTTP client]: http_client +[Serialization]: serialization +[Template Processing]: templates [Hexagonal Architecture]: http://fideloper.com/hexagonal-architecture [Clean Architecture]: https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html [Onion Architecture]: https://dzone.com/articles/onion-architecture-is-interesting @@ -39,8 +39,8 @@ Simple Hello World HTTP example. You can check the [code examples] and [demo projects] for more complex use cases. -[code examples]: /examples/http_server_examples/ -[demo projects]: /examples/example_projects/ +[code examples]: examples/http_server_examples/ +[demo projects]: examples/example_projects/ # Features Hexagon's goals and design principles: @@ -103,14 +103,14 @@ Module that provide functionality that does not depend on different implementati ## Manager Singleton object to manage a cross toolkit aspect. I.e., Serialization or Templates. -[core]: /core -[handlers]: /handlers +[core]: core +[handlers]: handlers -[http_server]: /http_server -[templates]: /templates +[http_server]: http_server +[templates]: templates -[http_client_jetty]: /http_client_jetty -[http_server_jetty]: /http_server_jetty +[http_client_jetty]: http_client_jetty +[http_server_jetty]: http_server_jetty # Hexagon Extras The libraries inside the [hexagon_extra] repository provide extra features. They may be useful to @@ -121,7 +121,7 @@ develop applications, but not strictly required. Some of these modules are: * Args: Command line arguments definition and parsing. [hexagon_extra]: https://github.com/hexagontk/hexagon_extra -[Web]: /web +[Web]: web [Cron]: https://en.wikipedia.org/wiki/Cron # Architecture @@ -132,7 +132,7 @@ How Hexagon fits in your architecture in a picture. > Using this toolkit won't make your application compliant with Hexagonal Architecture (by its > nature, no tool can do that), you have to provide a layer of abstraction by yourself. -![architecture](/img/architecture.svg) +![architecture](img/architecture.svg) # Ports Ports with their provided implementations (Adapters). @@ -144,26 +144,26 @@ Ports with their provided implementations (Adapters). | [Templates] | [Pebble], [FreeMarker], [Rocker], [jte] | | [Serialization Formats] | [JSON], [YAML], [CSV], [XML], [TOML] | -[HTTP Server]: /http_server -[Netty]: /http_server_netty -[Netty Epoll]: /http_server_netty_epoll -[Jetty]: /http_server_jetty -[Servlet]: /http_server_servlet -[Helidon]: /http_server_helidon -[HTTP Client]: /http_client -[Java Client]: /http_client_java -[Jetty Client]: /http_client_jetty -[Templates]: /templates -[Pebble]: /templates_pebble -[FreeMarker]: /templates_freemarker -[Rocker]: /templates_rocker -[jte]: /templates_jte -[Serialization Formats]: /serialization -[JSON]: /api/serialization/serialization_jackson_json/com.hexagonkt.serialization.jackson.json/-json -[YAML]: /api/serialization/serialization_jackson_yaml/com.hexagonkt.serialization.jackson.yaml/-yaml -[CSV]: /api/serialization/serialization_jackson_csv/com.hexagonkt.serialization.jackson.csv/-csv -[XML]: /api/serialization/serialization_jackson_xml/com.hexagonkt.serialization.jackson.xml/-xml -[TOML]: /api/serialization/serialization_jackson_toml/com.hexagonkt.serialization.jackson.toml/-toml +[HTTP Server]: http_server +[Netty]: http_server_netty +[Netty Epoll]: http_server_netty_epoll +[Jetty]: http_server_jetty +[Servlet]: http_server_servlet +[Helidon]: http_server_helidon +[HTTP Client]: http_client +[Java Client]: http_client_java +[Jetty Client]: http_client_jetty +[Templates]: templates +[Pebble]: templates_pebble +[FreeMarker]: templates_freemarker +[Rocker]: templates_rocker +[jte]: templates_jte +[Serialization Formats]: serialization +[JSON]: api/serialization/serialization_jackson_json/com.hexagonkt.serialization.jackson.json/-json +[YAML]: api/serialization/serialization_jackson_yaml/com.hexagonkt.serialization.jackson.yaml/-yaml +[CSV]: api/serialization/serialization_jackson_csv/com.hexagonkt.serialization.jackson.csv/-csv +[XML]: api/serialization/serialization_jackson_xml/com.hexagonkt.serialization.jackson.xml/-xml +[TOML]: api/serialization/serialization_jackson_toml/com.hexagonkt.serialization.jackson.toml/-toml # Module Dependencies Module dependencies (including extra modules): diff --git a/site/pages/quick_start.md b/site/pages/quick_start.md index a9ee6e0a13..bf7dde3b02 100644 --- a/site/pages/quick_start.md +++ b/site/pages/quick_start.md @@ -47,7 +47,7 @@ pub 4096R/2AEE3721 2020-05-30 Hexagon Toolkit (Key used to sign published binar ``` [pgp key]: https://keys.openpgp.org/search?q=project%40hexagonkt.com -[site pgp key]: /project_hexagonkt_com_public.key +[site pgp key]: project_hexagonkt_com_public.key # Dependencies Verification (hexagontk.com) Hexagon's dependencies are signed, you can get the public key at the @@ -61,7 +61,7 @@ pub ed25519/0E16E194 2024-08-24 Hexagon Toolkit (Key used to sign published bin ``` [pgp key 2]: https://keyserver.ubuntu.com/pks/lookup?search=project%40hexagontk.com&op=index -[site pgp key 2]: /project_hexagontk_com_public.key +[site pgp key 2]: project_hexagontk_com_public.key # Next Steps To continue learning about this toolkit, you can: @@ -73,11 +73,11 @@ To continue learning about this toolkit, you can: [Gradle Starter]: https://github.com/hexagontk/gradle_starter [Maven Starter]: https://github.com/hexagontk/maven_starter -[Examples]: /examples/http_server_examples/ +[Examples]: examples/http_server_examples/ [Setup Gradle]: https://kotlinlang.org/docs/reference/using-gradle.html [Setup Maven]: https://kotlinlang.org/docs/reference/using-maven.html [Gradle]: https://gradle.org [Maven]: https://maven.apache.org [Endpoint]: http://localhost:2010/hello -[Core]: /core -[HTTP Server]: /http_server +[Core]: core +[HTTP Server]: http_server diff --git a/templates/templates/README.md b/templates/templates/README.md index 20ace00fc3..4005c5f40e 100644 --- a/templates/templates/README.md +++ b/templates/templates/README.md @@ -10,8 +10,8 @@ feature (as [templates_pebble] and/or [templates_freemarker]) in order to proces You can use many adapters in the same application to be able to handle different template engines at the same time. -[templates_pebble]: /templates_pebble/ -[templates_freemarker]: /templates_freemarker/ +[templates_pebble]: templates_pebble/ +[templates_freemarker]: templates_freemarker/ # Register a Template Engine You can register multiple template engines using regular expressions: @@ -31,7 +31,7 @@ and `_now_` variables) are added to the context automatically. Check the code be @code templates/templates/src/test/kotlin/com/hexagonkt/templates/examples/TemplatesTest.kt?templateUsage -[TemplateManager]: /api/templates/templates/com.hexagonkt.templates/-template-manager +[TemplateManager]: api/templates/templates/com.hexagonkt.templates/-template-manager # Package com.hexagonkt.templates Feature implementation code. From f50c1cf788e6f217d11bcaa5100a97ed994b778d Mon Sep 17 00:00:00 2001 From: jaguililla Date: Sun, 15 Sep 2024 22:54:51 +0200 Subject: [PATCH 5/9] Disable v3 :CI workflows --- {.github => .github.bak}/workflows/build.yml | 0 {.github => .github.bak}/workflows/nightly.yml | 0 {.github => .github.bak}/workflows/pull_request.yml | 0 {.github => .github.bak}/workflows/release.yml | 0 {.github => .github.bak}/workflows/release_branch.yml | 0 {.github => .github.bak}/workflows/site.yml | 0 6 files changed, 0 insertions(+), 0 deletions(-) rename {.github => .github.bak}/workflows/build.yml (100%) rename {.github => .github.bak}/workflows/nightly.yml (100%) rename {.github => .github.bak}/workflows/pull_request.yml (100%) rename {.github => .github.bak}/workflows/release.yml (100%) rename {.github => .github.bak}/workflows/release_branch.yml (100%) rename {.github => .github.bak}/workflows/site.yml (100%) diff --git a/.github/workflows/build.yml b/.github.bak/workflows/build.yml similarity index 100% rename from .github/workflows/build.yml rename to .github.bak/workflows/build.yml diff --git a/.github/workflows/nightly.yml b/.github.bak/workflows/nightly.yml similarity index 100% rename from .github/workflows/nightly.yml rename to .github.bak/workflows/nightly.yml diff --git a/.github/workflows/pull_request.yml b/.github.bak/workflows/pull_request.yml similarity index 100% rename from .github/workflows/pull_request.yml rename to .github.bak/workflows/pull_request.yml diff --git a/.github/workflows/release.yml b/.github.bak/workflows/release.yml similarity index 100% rename from .github/workflows/release.yml rename to .github.bak/workflows/release.yml diff --git a/.github/workflows/release_branch.yml b/.github.bak/workflows/release_branch.yml similarity index 100% rename from .github/workflows/release_branch.yml rename to .github.bak/workflows/release_branch.yml diff --git a/.github/workflows/site.yml b/.github.bak/workflows/site.yml similarity index 100% rename from .github/workflows/site.yml rename to .github.bak/workflows/site.yml From e1dc46fd2a1a43d94b54e3407d3881a898a7ef5b Mon Sep 17 00:00:00 2001 From: jaguililla Date: Mon, 16 Sep 2024 21:34:06 +0200 Subject: [PATCH 6/9] Disable v3 :CI workflows --- {.github.bak => _github_bak}/workflows/build.yml | 0 {.github.bak => _github_bak}/workflows/nightly.yml | 0 {.github.bak => _github_bak}/workflows/pull_request.yml | 0 {.github.bak => _github_bak}/workflows/release.yml | 0 {.github.bak => _github_bak}/workflows/release_branch.yml | 0 {.github.bak => _github_bak}/workflows/site.yml | 0 6 files changed, 0 insertions(+), 0 deletions(-) rename {.github.bak => _github_bak}/workflows/build.yml (100%) rename {.github.bak => _github_bak}/workflows/nightly.yml (100%) rename {.github.bak => _github_bak}/workflows/pull_request.yml (100%) rename {.github.bak => _github_bak}/workflows/release.yml (100%) rename {.github.bak => _github_bak}/workflows/release_branch.yml (100%) rename {.github.bak => _github_bak}/workflows/site.yml (100%) diff --git a/.github.bak/workflows/build.yml b/_github_bak/workflows/build.yml similarity index 100% rename from .github.bak/workflows/build.yml rename to _github_bak/workflows/build.yml diff --git a/.github.bak/workflows/nightly.yml b/_github_bak/workflows/nightly.yml similarity index 100% rename from .github.bak/workflows/nightly.yml rename to _github_bak/workflows/nightly.yml diff --git a/.github.bak/workflows/pull_request.yml b/_github_bak/workflows/pull_request.yml similarity index 100% rename from .github.bak/workflows/pull_request.yml rename to _github_bak/workflows/pull_request.yml diff --git a/.github.bak/workflows/release.yml b/_github_bak/workflows/release.yml similarity index 100% rename from .github.bak/workflows/release.yml rename to _github_bak/workflows/release.yml diff --git a/.github.bak/workflows/release_branch.yml b/_github_bak/workflows/release_branch.yml similarity index 100% rename from .github.bak/workflows/release_branch.yml rename to _github_bak/workflows/release_branch.yml diff --git a/.github.bak/workflows/site.yml b/_github_bak/workflows/site.yml similarity index 100% rename from .github.bak/workflows/site.yml rename to _github_bak/workflows/site.yml From cfc26f813e47a0c647c37140e030ff245f81f45a Mon Sep 17 00:00:00 2001 From: jaguililla Date: Mon, 16 Sep 2024 21:40:41 +0200 Subject: [PATCH 7/9] Restore v3 :CI workflows --- {_github_bak => .github}/workflows/build.yml | 0 {_github_bak => .github}/workflows/nightly.yml | 0 {_github_bak => .github}/workflows/pull_request.yml | 0 {_github_bak => .github}/workflows/release.yml | 0 {_github_bak => .github}/workflows/release_branch.yml | 0 {_github_bak => .github}/workflows/site.yml | 0 6 files changed, 0 insertions(+), 0 deletions(-) rename {_github_bak => .github}/workflows/build.yml (100%) rename {_github_bak => .github}/workflows/nightly.yml (100%) rename {_github_bak => .github}/workflows/pull_request.yml (100%) rename {_github_bak => .github}/workflows/release.yml (100%) rename {_github_bak => .github}/workflows/release_branch.yml (100%) rename {_github_bak => .github}/workflows/site.yml (100%) diff --git a/_github_bak/workflows/build.yml b/.github/workflows/build.yml similarity index 100% rename from _github_bak/workflows/build.yml rename to .github/workflows/build.yml diff --git a/_github_bak/workflows/nightly.yml b/.github/workflows/nightly.yml similarity index 100% rename from _github_bak/workflows/nightly.yml rename to .github/workflows/nightly.yml diff --git a/_github_bak/workflows/pull_request.yml b/.github/workflows/pull_request.yml similarity index 100% rename from _github_bak/workflows/pull_request.yml rename to .github/workflows/pull_request.yml diff --git a/_github_bak/workflows/release.yml b/.github/workflows/release.yml similarity index 100% rename from _github_bak/workflows/release.yml rename to .github/workflows/release.yml diff --git a/_github_bak/workflows/release_branch.yml b/.github/workflows/release_branch.yml similarity index 100% rename from _github_bak/workflows/release_branch.yml rename to .github/workflows/release_branch.yml diff --git a/_github_bak/workflows/site.yml b/.github/workflows/site.yml similarity index 100% rename from _github_bak/workflows/site.yml rename to .github/workflows/site.yml From 52564596f86f7e3eebd4da448b021f411827598a Mon Sep 17 00:00:00 2001 From: jaguililla Date: Mon, 16 Sep 2024 21:40:59 +0200 Subject: [PATCH 8/9] Set next release version --- gradle.properties | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gradle.properties b/gradle.properties index 0917c1cd17..e04b2f5f50 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,14 +1,11 @@ # suppress inspection "UnusedProperty" for whole file -# TODO Check `hexagonal_starter` to see how to get rid of this file -# TODO Consider changing the following configuration by system properties or alike -# https://docs.gradle.org/current/userguide/build_environment.html org.gradle.jvmargs=-Xmx8g -Dfile.encoding=UTF-8 org.gradle.warning.mode=all org.gradle.console=plain # Gradle -version=3.6.7 +version=3.7.0 group=com.hexagonkt description=The atoms of your platform From b66a0fdeaceb703d12aeb503036d835b54013e2a Mon Sep 17 00:00:00 2001 From: jaguililla Date: Mon, 16 Sep 2024 21:46:48 +0200 Subject: [PATCH 9/9] Fix release workflows --- .github/workflows/nightly.yml | 102 --------------------------- .github/workflows/release.yml | 44 ------------ .github/workflows/release_branch.yml | 24 +++---- .github/workflows/site.yml | 62 ---------------- 4 files changed, 8 insertions(+), 224 deletions(-) delete mode 100644 .github/workflows/nightly.yml delete mode 100644 .github/workflows/release.yml delete mode 100644 .github/workflows/site.yml diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml deleted file mode 100644 index 86a1175b49..0000000000 --- a/.github/workflows/nightly.yml +++ /dev/null @@ -1,102 +0,0 @@ - -on: - schedule: - - cron: "59 23 * * *" - -permissions: - contents: read - -jobs: - stale: - runs-on: ubuntu-latest - permissions: - issues: write - steps: - - uses: actions/stale@v9 - with: - exempt-issue-labels: pinned - include-only-assigned: true - days-before-pr-close: -1 - stale-pr-message: This PR is stale because it has been open 60 days with no activity. - stale-issue-message: - "This issue is stale because it has been open 60 days with no activity. Remove stale - label or comment or this will be closed in 7 days." - close-issue-message: - "This issue was closed because it has been stalled for 7 days with no activity." - - build: - strategy: - fail-fast: false - matrix: - os: [ ubuntu-latest, windows-latest, macos-latest ] - - name: build (${{ matrix.os }}) - uses: hexagontk/.github/.github/workflows/graalvm_gradle.yml@master - with: - os: ${{ matrix.os }} - check_directory: core/build - ref: develop - - sample_keystores: - strategy: - fail-fast: false - matrix: - os: [ ubuntu-latest, windows-latest, macos-latest ] - - name: sample_keystores (${{ matrix.os }}) - uses: hexagontk/.github/.github/workflows/graalvm_gradle.yml@master - with: - os: ${{ matrix.os }} - ref: develop - tasks: createCa createIdentities - - native_test: - strategy: - fail-fast: false - matrix: - os: [ ubuntu-latest, windows-latest, macos-latest ] - - name: native_test (${{ matrix.os }}) - runs-on: ${{ matrix.os }} - steps: - - uses: al-cheb/configure-pagefile-action@v1.3 - if: ${{ matrix.os == 'windows-latest' }} - with: - minimum-size: 16GB - disk-root: "C:" - - uses: actions/checkout@v4 - with: - ref: develop - - uses: graalvm/setup-graalvm@v1 - with: - java-version: 21 - distribution: graalvm-community - cache: gradle - - run: echo "COMMIT_COUNT=$(git log --oneline --since '24 hours ago' | wc -l)" >> $GITHUB_ENV - - if: ${{ env.COMMIT_COUNT > 0 }} - run: ./gradlew --stacktrace nativeTest - - jmh: - uses: hexagontk/.github/.github/workflows/graalvm_gradle.yml@master - with: - ref: develop - tasks: jmh - - build_site: - uses: hexagontk/hexagon/.github/workflows/site.yml@main - with: - ref: develop - - test_publishing: - strategy: - fail-fast: false - matrix: - os: [ ubuntu-latest, windows-latest, macos-latest ] - - name: test_publishing (${{ matrix.os }}) - uses: hexagontk/.github/.github/workflows/graalvm_gradle.yml@master - with: - os: ${{ matrix.os }} - ref: develop - check_directory: core/build - tasks: publishToMavenLocal -x test diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index e2204e05f9..0000000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,44 +0,0 @@ - -on: - push: - branches: [ main ] - -jobs: - publish: - runs-on: ubuntu-latest - steps: - - - uses: actions/cache@v4 - with: - key: ${{ runner.os }}-mkdocs-${{ hashFiles('**/*.gradle*', '**/gradle*.properties') }} - restore-keys: ${{ runner.os }}-mkdocs- - path: | - ~/.local/bin - ~/.local/lib/python*/site-packages - - - uses: actions/checkout@v4 - with: - token: ${{ secrets.GITHUB_TOKEN }} - - - uses: graalvm/setup-graalvm@v1 - with: - java-version: 21 - distribution: graalvm-community - github-token: ${{ secrets.GITHUB_TOKEN }} - cache: gradle - - - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - export REMOTE="https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$GITHUB_REPOSITORY.git" - git remote set-url origin "$REMOTE" - ./gradlew build - ./gradlew -x build buildSite - ls -AlF site/build/site - - - env: - OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} - OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }} - SIGNING_KEY: ${{ secrets.SIGNING_KEY }} - SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }} - run: ./gradlew --no-daemon -x test release diff --git a/.github/workflows/release_branch.yml b/.github/workflows/release_branch.yml index ec8ec926d4..06f92a3469 100644 --- a/.github/workflows/release_branch.yml +++ b/.github/workflows/release_branch.yml @@ -3,6 +3,9 @@ on: push: branches: [ release/** ] +permissions: + contents: write + jobs: publish: runs-on: ubuntu-latest @@ -27,16 +30,6 @@ jobs: github-token: ${{ secrets.GITHUB_TOKEN }} cache: gradle - - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - export REMOTE="https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$GITHUB_REPOSITORY.git" - git remote set-url origin "$REMOTE" - git clone "$REMOTE" --branch gh-pages build/gh-pages - ./gradlew build - ./gradlew -x build buildSite - ls -AlF site/build/site - - env: OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} OSSRH_USERNAME: ${{ secrets.OSSRH_USERNAME }} @@ -44,9 +37,8 @@ jobs: SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }} run: ./gradlew --no-daemon -x test release - - run: | - cp -rf site/build/site/* build/gh-pages/ - cd build/gh-pages - git add --all - git commit -m "Publishing to gh-pages" - git push origin gh-pages + push_site: + uses: hexagontk/hexagon/.github/workflows/site.yml@develop + needs: publish + with: + options: -P pushSite=true diff --git a/.github/workflows/site.yml b/.github/workflows/site.yml deleted file mode 100644 index 41e5455d4d..0000000000 --- a/.github/workflows/site.yml +++ /dev/null @@ -1,62 +0,0 @@ - -on: - workflow_call: - inputs: - ref: - type: string - description: Branch to check out. - default: '' - - version: - type: string - description: GraalVM version used to run Gradle. - default: latest - - distribution: - type: string - description: GraalVM distribution used to run Gradle. - default: graalvm-community - - java: - type: string - description: Java version used to run Gradle. - default: 21 - - check_directory: - type: string - description: Directory to check for build execution. - default: site/build/site - -jobs: - site: - runs-on: ubuntu-latest - permissions: - contents: read - defaults: - run: { shell: bash } - steps: - - uses: actions/cache@v4 - with: - key: ${{ runner.os }}-mkdocs-${{ hashFiles('**/*.gradle*', '**/gradle*.properties') }} - restore-keys: ${{ runner.os }}-mkdocs- - path: | - ~/.local/bin - ~/.local/lib/python*/site-packages - - - uses: actions/checkout@v4 - with: - ref: ${{ inputs.ref }} - - - uses: graalvm/setup-graalvm@v1 - with: - version: ${{ inputs.version }} - distribution: ${{ inputs.distribution }} - java-version: ${{ inputs.java }} - cache: gradle - - - run: ./gradlew --stacktrace build - - - run: ./gradlew --stacktrace -x build buildSite - - - if: ${{ inputs.check_directory != '' }} - run: ls -AlF "${{ inputs.check_directory }}"