Skip to content

Add spring boot starters and some restructuring #15

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

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

125m125
Copy link

@125m125 125m125 commented May 7, 2024

I moved the existing code into a submodule. Most of the "changed" files are only moved with no actual changes.

Not sure if you want to officially support/maintain this, but I created starters for spring boot that take care of reading the configuration properties and creating the Recombee instance. Most people using Recombee for a Spring Boot Project will do the same steps of reading the configuration and creating a Recombee Bean most of the time. By providing the starter developers can skip these steps and instead only need to add the properties to their configurations and can start using the RecombeeClient immediately. Based on https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.developing-auto-configuration, especially https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.developing-auto-configuration.custom-starter .

The changes are an optional add-on. Existing user can keep using the client as before without needing to change their pom or code.

For this I also did some restructuring to make using the project easier. I separated it into multiple commits, so feel free to cherry-pick the parts that you are interested in, if you don't want to pull all changes.

f2adf4d adds a simple gitignore so you can simply git add . instead of having to select the files to commit manually.
0cd82ac moves the existing client to a submodule to allow adding further submodules for different specialized features, in the case of the full merge requests for the spring boot starters. The parent module is suffixed with -parent, allowing the api-client submodule to keep its original artifactId.
98fb2e9 moves the release steps to a maven profile instead of always executing them. This makes it easier to install snapshots etc. into the local maven repository (see https://central.sonatype.org/publish/publish-maven/#using-a-profile )
8965508 adds the autoconfiguration and starter for Spring Boot 2. While Spring Boot 2 already reached eol, there still are quite a few applications around using the old version. Also includes the documentation, so if you only include the starter for Spring Boot 3, you might still want to take the README from this commit.
c882beb changes to junit's scope to test. You are currently including it as a compile dependency. It also refactors/improves the tests for the starter.
e3e6e0c adds the autoconfiguration and starter for Spring Boot 3.

@OndraFiedler
Copy link
Member

Thank you @125m125 for the pull request! The functionality sounds like a great addition to our SDK.

We will review the proposed changes in the upcoming two weeks.

125m125 added a commit to 125m125/spring-boot-starter-recombee that referenced this pull request Apr 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants