-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Kotlin upgrade, Spring client update #6
Conversation
Integrated Dokka for Kotlin documentation generation and added Spotless for code formatting consistency in the build process. Updated Ktlint setup for improved linting, and refined the pom.xml configuration for better plugin management and maintainability.
Introduced new dependencies like `jakarta.annotation-api` and `jackson-databind-nullable` to relevant pom.xml files, while reorganizing and removing redundant entries. Updated configuration settings to modify code generation options and improve compatibility, particularly focusing on switching some configurations from Kotlin to Java.
Replaced direct WebClient usage with ApiClient to improve modularity. Updated versioning to dynamically fetch implementation version for user-agent headers. This enhances maintainability and ensures current version information is always used.
Corrected the property name from 'java.compiler.release' to 'maven.compiler.release' to ensure proper compilation settings. This change aligns with Maven's expected configuration for specifying the Java release version.
Changed API methods to lazy-loaded properties for efficiency and improved initialization. These changes ensure that the API clients are instantiated only when needed, enhancing performance and reducing memory overhead. Adjusted the test cases to align with the new property-based access pattern.
Replaced explicit execution goals with extensions in the Spotless Maven plugin configuration. This change simplifies the plugin setup, making it easier to manage and extend in the future.
Coverage summary from CodacySee diff coverage on Codacy
Coverage variation details
Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: Diff coverage details
Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: See your quality gate settings Change summary preferencesCodacy stopped sending the deprecated coverage status on June 5th, 2024. Learn more Footnotes
|
This commit introduces a new GitHub Actions workflow to automate building and publishing the documentation to GitHub Pages. The Makefile and pom.xml have been updated to streamline the generation of documentation using Maven. Now, on every release or push to the main branch, the documentation will be generated and deployed automatically.
Introduced new suspend functions, `awaitPromptsList` and `awaitPromptGet`, for the `PromptsApi` to enable coroutine support using `kotlinx-coroutines-reactor`. Also, added necessary dependencies to `pom.xml` for reactor coroutines integration and updated the test `LangfuseIT.kt` to utilize the new await functions.
Added the @disabled annotation to test cases that are not yet implemented to prevent them from affecting test results. This helps maintain focus on completed and functional tests while the unimplemented features are being developed.
Introduce logging for initialization and a customized ObjectMapper to handle JSON parsing more reliably. This enhancement includes enabling certain JSON parser features and adjusting deserialization configurations for increased flexibility and accuracy.
This commit introduces the SLF4J dependency to enhance logging capabilities. Additionally, several OpenAPI generator configuration options are updated to improve flexibility and functionality, such as enabling gzip support and using abstractions for files. These changes aim to enhance the robustness and maintainability of the codebase.
Deserialize into JsonNode and then programmaticaly to the correct type
This pull request includes several changes across multiple files to improve the build process, update dependencies, and enhance documentation.