From 1cbcafbc9b11964ce9b1bcbd54ca2389f5b761d5 Mon Sep 17 00:00:00 2001 From: w0fv1 Date: Sat, 31 Oct 2026 15:36:07 +0800 Subject: [PATCH] Upgrade runnable examples to current published APIs --- .github/workflows/verify.yml | 11 +++-------- java-commons-lang/app/module.norm | 2 +- java-commons-lang/object/app/module.norm | 2 +- micronaut-bbs/app/sample/bbs/Domain.norm | 17 ++++++++--------- micronaut-bbs/app/sample/bbs/Web.norm | 11 +++++------ micronaut-bbs/app/sample/bbs/module.norm | 6 +++--- .../sample/bbs/repository/ReplyRepository.norm | 3 +-- .../app/sample/bbs/service/ForumService.norm | 5 ++--- micronaut-single-file/web.norm | 12 ++++++------ norm-orm/app/sample/orm/Main.norm | 12 ++++++------ norm-orm/app/sample/orm/module.norm | 6 +++--- 11 files changed, 39 insertions(+), 48 deletions(-) diff --git a/.github/workflows/verify.yml b/.github/workflows/verify.yml index 0215c16..dd472df 100644 --- a/.github/workflows/verify.yml +++ b/.github/workflows/verify.yml @@ -14,14 +14,9 @@ jobs: - uses: actions/setup-node@v6 with: node-version: '24' - - name: Install released Norm - env: - GH_TOKEN: ${{ github.token }} - run: | - gh release download v0.25.3 --repo normlanguage/Norm --pattern norm-v0.25.3-linux-x64.tar.gz --pattern SHA256SUMS --dir "$RUNNER_TEMP/norm-cli" - (cd "$RUNNER_TEMP/norm-cli" && grep ' norm-v0.25.3-linux-x64.tar.gz$' SHA256SUMS | sha256sum --check --strict) - tar -xzf "$RUNNER_TEMP/norm-cli/norm-v0.25.3-linux-x64.tar.gz" -C "$RUNNER_TEMP/norm-cli" - echo "$RUNNER_TEMP/norm-cli/norm/bin" >> "$GITHUB_PATH" + - uses: normlanguage/registry/.github/actions/setup-norm@90b4d247fa4f5f2b620924d2cbc0553e89843700 + with: + version: 0.27.23 - name: Verify package behavior run: node scripts/verify.mjs diff --git a/java-commons-lang/app/module.norm b/java-commons-lang/app/module.norm index 8baeee3..cb7eba3 100644 --- a/java-commons-lang/app/module.norm +++ b/java-commons-lang/app/module.norm @@ -3,6 +3,6 @@ Module module() { name: "app", version: 1, exports: ["Main"], - dependencies: [dependency(repository: "github", name: "commons.lang", version: 3)] + dependencies: [dependency(repository: "github", name: "commons.lang", version: 5)] ) } diff --git a/java-commons-lang/object/app/module.norm b/java-commons-lang/object/app/module.norm index 7801462..f059fd2 100644 --- a/java-commons-lang/object/app/module.norm +++ b/java-commons-lang/object/app/module.norm @@ -3,6 +3,6 @@ Module module() { name: "object.app", version: 1, exports: ["Main"], - dependencies: [dependency(repository: "github", name: "commons.lang", version: 3)] + dependencies: [dependency(repository: "github", name: "commons.lang", version: 5)] ) } diff --git a/micronaut-bbs/app/sample/bbs/Domain.norm b/micronaut-bbs/app/sample/bbs/Domain.norm index 2bdd194..3b2d9c5 100644 --- a/micronaut-bbs/app/sample/bbs/Domain.norm +++ b/micronaut-bbs/app/sample/bbs/Domain.norm @@ -6,11 +6,10 @@ import micronaut.core.annotation.IntrospectedAccessKind import micronaut.serde.api.annotation.Serdeable import orm.Column import orm.Entity -import orm.Generated -import orm.GenerationStrategy +import orm.GeneratedValue +import orm.GenerationType import orm.Id import orm.Table -import std.collections.MutableList @Serdeable() @Introspected(accessKind: [IntrospectedAccessKind.FIELD]) @@ -36,7 +35,7 @@ public class Registration { @Table(name: "bbs_users") public class UserEntity { @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id @Column(nullable: false, unique: true) @@ -66,7 +65,7 @@ public class UserEntity { @Table(name: "bbs_sessions") public class SessionEntity { @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id @Column(nullable: false, unique: true) @@ -96,7 +95,7 @@ public class SessionEntity { @Table(name: "bbs_boards") public class BoardEntity { @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id @Column(nullable: false) @@ -120,7 +119,7 @@ public class BoardEntity { @Table(name: "bbs_topics") public class TopicEntity { @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id @Column(nullable: false) @@ -161,7 +160,7 @@ public class TopicEntity { @Table(name: "bbs_replies") public class ReplyEntity { @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id @Column(nullable: false) @@ -209,7 +208,7 @@ public class TopicPageable { @Serdeable() @Introspected(accessKind: [IntrospectedAccessKind.FIELD]) public class TopicPage { - MutableList? content + List? content TopicPageable pageable diff --git a/micronaut-bbs/app/sample/bbs/Web.norm b/micronaut-bbs/app/sample/bbs/Web.norm index abb98f0..3e18b02 100644 --- a/micronaut-bbs/app/sample/bbs/Web.norm +++ b/micronaut-bbs/app/sample/bbs/Web.norm @@ -21,7 +21,6 @@ import micronaut.serde.api.annotation.Serdeable import micronaut.validation.Validated import sample.bbs.service.AccountService import sample.bbs.service.ForumService -import std.collections.MutableList @Serdeable() @Introspected(accessKind: [IntrospectedAccessKind.FIELD]) @@ -56,11 +55,11 @@ class BbsSessionFilter { @RequestFilter() @Nullable() HttpResponse? filter(HttpRequest request) { - String? token = request.getHeaders()?.findFirst("X-Session") + String? token = request.getHeaders()?.findFirst("X-Session")?.orElse(null) if token != null && !accounts.usernameForToken(token).isEmpty() { return null } - return httpResponseUnauthorized() + return httpResponseUnauthorized() } } @@ -88,7 +87,7 @@ class BbsController { } @Get("/boards") - MutableList? boards() { + List? boards() { return forumService.allBoards() } @@ -136,7 +135,7 @@ class BbsController { } @Get("/topics/{id}/replies") - MutableList? replies(Long id) { + List? replies(Long id) { return forumService.repliesForTopic(id) } @@ -146,7 +145,7 @@ class BbsController { } private String sessionUsername(HttpRequest request) { - String? token = request.getHeaders()?.findFirst("X-Session") + String? token = request.getHeaders()?.findFirst("X-Session")?.orElse(null) return accountService.usernameForToken(token ?? "") } } diff --git a/micronaut-bbs/app/sample/bbs/module.norm b/micronaut-bbs/app/sample/bbs/module.norm index 9e0043e..8f3233a 100644 --- a/micronaut-bbs/app/sample/bbs/module.norm +++ b/micronaut-bbs/app/sample/bbs/module.norm @@ -3,9 +3,9 @@ Module module() { name: "sample.bbs", version: 1, dependencies: [ - dependency(repository: "github", name: "micronaut.web", version: 9), - dependency(repository: "github", name: "orm.micronaut.tx", version: 5), - dependency(repository: "github", name: "h2.database", version: 2) + dependency(repository: "github", name: "micronaut.web", version: 11), + dependency(repository: "github", name: "orm.micronaut.tx", version: 11), + dependency(repository: "github", name: "h2.database", version: 3) ] ) } diff --git a/micronaut-bbs/app/sample/bbs/repository/ReplyRepository.norm b/micronaut-bbs/app/sample/bbs/repository/ReplyRepository.norm index f6d0e01..1a59b4c 100644 --- a/micronaut-bbs/app/sample/bbs/repository/ReplyRepository.norm +++ b/micronaut-bbs/app/sample/bbs/repository/ReplyRepository.norm @@ -5,7 +5,6 @@ import micronaut.inject.context.annotation.Prototype import orm.Repository import orm.RepositoryContext import sample.bbs.ReplyEntity -import std.collections.MutableList @Prototype() public class ReplyRepository extends Repository { @@ -14,7 +13,7 @@ public class ReplyRepository extends Repository { super(context) } - public MutableList? findByTopic(Long topicId) { + public List? findByTopic(Long topicId) { return this.findWhereOrdered( field: ReplyEntity.topicId.field, value: topicId, diff --git a/micronaut-bbs/app/sample/bbs/service/ForumService.norm b/micronaut-bbs/app/sample/bbs/service/ForumService.norm index a6c6210..8521897 100644 --- a/micronaut-bbs/app/sample/bbs/service/ForumService.norm +++ b/micronaut-bbs/app/sample/bbs/service/ForumService.norm @@ -12,7 +12,6 @@ import sample.bbs.TopicSort import sample.bbs.repository.BoardRepository import sample.bbs.repository.ReplyRepository import sample.bbs.repository.TopicRepository -import std.collections.MutableList @Prototype() public class ForumService { @@ -54,7 +53,7 @@ public class ForumService { } @Transactional() - public MutableList? allBoards() { + public List? allBoards() { return boards.findAll() } @@ -64,7 +63,7 @@ public class ForumService { } @Transactional() - public MutableList? repliesForTopic(Long topicId) { + public List? repliesForTopic(Long topicId) { return replies.findByTopic(topicId) } diff --git a/micronaut-single-file/web.norm b/micronaut-single-file/web.norm index 1394d50..7e3fc44 100644 --- a/micronaut-single-file/web.norm +++ b/micronaut-single-file/web.norm @@ -9,8 +9,8 @@ import micronaut.web.MicronautConfig import micronaut.web.SchemaMode import orm.Column import orm.Entity -import orm.Generated -import orm.GenerationStrategy +import orm.GeneratedValue +import orm.GenerationType import orm.Id import orm.Repository import orm.RepositoryContext @@ -22,9 +22,9 @@ import std.core.Result Module module() { return module( dependencies: [ - dependency(repository: "github", name: "micronaut.web", version: 9), - dependency(repository: "github", name: "orm.micronaut.tx", version: 5), - dependency(repository: "github", name: "h2.database", version: 2) + dependency(repository: "github", name: "micronaut.web", version: 11), + dependency(repository: "github", name: "orm.micronaut.tx", version: 11), + dependency(repository: "github", name: "h2.database", version: 3) ] ) } @@ -35,7 +35,7 @@ class HelloEntity { String name @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id = null HelloEntity(String name) { diff --git a/norm-orm/app/sample/orm/Main.norm b/norm-orm/app/sample/orm/Main.norm index 12065db..c994f89 100644 --- a/norm-orm/app/sample/orm/Main.norm +++ b/norm-orm/app/sample/orm/Main.norm @@ -2,9 +2,9 @@ package sample.orm import orm.Column import orm.Entity -import orm.Fetch -import orm.Generated -import orm.GenerationStrategy +import orm.FetchType +import orm.GeneratedValue +import orm.GenerationType import orm.Id import orm.JoinColumn import orm.ManyToOne @@ -19,7 +19,7 @@ import orm.hibernate.builderNew @Table(name: "accounts") class Account { @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id @Column(nullable: false, unique: true) @@ -40,13 +40,13 @@ class Account { @Table(name: "posts") class Post { @Id() - @Generated(strategy: GenerationStrategy.IDENTITY) + @GeneratedValue(strategy: GenerationType.IDENTITY) Long? id @Column(nullable: false) String title - @ManyToOne(fetch: Fetch.LAZY, optional: false) + @ManyToOne(fetch: FetchType.LAZY, optional: false) @JoinColumn(name: "author_id", nullable: false) Account author diff --git a/norm-orm/app/sample/orm/module.norm b/norm-orm/app/sample/orm/module.norm index 0a25e0b..e7f03d0 100644 --- a/norm-orm/app/sample/orm/module.norm +++ b/norm-orm/app/sample/orm/module.norm @@ -4,9 +4,9 @@ Module module() { version: 1, exports: ["Main"], dependencies: [ - dependency(repository: "github", name: "orm", version: 3), - dependency(repository: "github", name: "orm.hibernate", version: 4), - dependency(repository: "github", name: "h2.database", version: 2) + dependency(repository: "github", name: "orm", version: 7), + dependency(repository: "github", name: "orm.hibernate", version: 8), + dependency(repository: "github", name: "h2.database", version: 3) ] ) }