Skip to content

v0.9.71

Compare
Choose a tag to compare
@babyfish-ct babyfish-ct released this 05 Apr 08:26
· 27 commits to main since this release
  1. #963, #979. #980, #958

  2. Big enhancement of save command
    Now, save command can controlled the shaped of returned modifiedEntity, by Fetcher (access modifiedEntity) or by Output DTO class (access modifiedView)
    If the desired object shape does not exceed the existing modifiedEntity, it is directly clipped based on the existing object. Otherwise, a new query without cache is opened
    Now all the save behaviors of examples jimmer-sql, jimmer-sql-kt, jimmer-sql-graphql and jimmer-sql-graphql-kt care changed.

  3. New annotation @KotilinDto
    This annotation can only be used to decorate DTO types, not kotlin types (No annotation target)
    This annotation is handled by jimmer-ksp, ignored by jimmer-apt
    Jimmer can generated both immutable and mutable DTO for kotlin, now you can use this annotation to control immutability of DTO type one by one, no only set the global ksp configuration jimmer.dto.mutable

  4. PropScalarProviderFactory is supported
    This interface can provide property level scalar provider implicitly, jimmer will uses it to ask user whether a property requires a scalar provider. If spring-stater is used, it should be a managed bean, otherwise, it should be configuration of SqlClient.

  5. Many shortcut methods for the save command have been marked as deprecated.

    The save command has a wide range of configurable behaviors. In the early stages, many shortcut overload versions were requested, leading to severe API bloat due to the combinatorial explosion of options.

    As the save command evolved, its functionality continued to expand, and the number of shortcut API permutations grew accordingly, eventually reaching a point where maintenance became extremely difficult. In this version, many methods have been marked as deprecated to give users a transition period. Ultimately, the API will undergo streamlining.