Skip to content
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

DATAMONGO-1689 Add Kotlin extensions for [Reactive]MongoOperations. #463

Closed
wants to merge 5 commits into from

Conversation

Projects
None yet
3 participants
@sdeleuze
Copy link
Contributor

commented May 15, 2017

No description provided.

@@ -230,13 +231,93 @@
<artifactId>spring-webmvc</artifactId>
<scope>test</scope>
</dependency>
<dependency>

This comment has been minimized.

Copy link
@odrotbohm

odrotbohm May 15, 2017

Member

Should these be optional dependencies?

This comment has been minimized.

Copy link
@sdeleuze

sdeleuze May 15, 2017

Author Contributor

Indeed, I will change that.

This comment has been minimized.

Copy link
@sdeleuze

sdeleuze May 15, 2017

Author Contributor

Updated

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>

This comment has been minimized.

Copy link
@odrotbohm

odrotbohm May 15, 2017

Member

Can you elaborate on the need for this quite significant change in the compile settings?

This comment has been minimized.

Copy link
@sdeleuze

sdeleuze May 15, 2017

Author Contributor

It seems to be the recommanded way to handle Kotlin + Java Maven builds.

JetBrains explantation is the following:

To compile mixed code applications Kotlin compiler should be invoked before Java compiler. In maven terms that means kotlin-maven-plugin should be run before maven-compiler-plugin using the following method, making sure that the kotlin plugin is above the maven-compiler-plugin in your pom.xml file.

@sdeleuze sdeleuze force-pushed the sdeleuze:kotlin-extensions branch from 4dddb66 to 59b2ab1 May 15, 2017

@sdeleuze

This comment has been minimized.

Copy link
Contributor Author

commented May 19, 2017

Another thing we could do is to provide extensions with alternative function names to in and is which are Kotlin reserved keywords and currently need to be escaped.

We should also update the @since version which was set by mistake to 5.0 instead of 2.0.

@sdeleuze

This comment has been minimized.

Copy link
Contributor Author

commented Jun 13, 2017

I will send an updated version of this PR tomorrow with the following changes:

  • Fluent alternative for MongoOperations extensions (cc @christophstrobl @mp911de)
  • @since 2.0
  • Removal of KClass based variants and keep only reified type parameter variant as explained on SPR-15660

Could we consider inclusion in master when I will have pushed this updated PR?

@christophstrobl

This comment has been minimized.

Copy link
Member

commented Jun 13, 2017

@sdeleuze I already started working on integrating Kotlin in this branch (https://github.com/spring-projects/spring-data-mongodb/tree/issue/DATAMONGO-1689).
I also extracted the plugin part (see spring-projects/spring-data-build#370).

@sdeleuze

This comment has been minimized.

Copy link
Contributor Author

commented Jun 13, 2017

Ok thanks I will send the update against your branch and will answer on the spring-data-build side.

@odrotbohm

This comment has been minimized.

Copy link
Member

commented Jun 13, 2017

Given the short amount of time before the M4 release tomorrow, I'd love to keep the build changes in this module for now.

@sdeleuze do you think you can get your changes in tonight or early tomorrow morning CET?

sdeleuze and others added some commits May 15, 2017

DATAMONGO-1689 - Add Kotlin extensions for [Reactive]MongoOperations.
We now offer dedicated Kotlin extensions for MongoOperations and ReactiveMongoOperations.
DATAMONGO-1689 - Polishing.
Remove Kotlin specifics from pom.xml as those are managed in spring-data-build.
Additionally format code, update license header, update JavaDoc and add issue reference to tests.

@sdeleuze sdeleuze force-pushed the sdeleuze:kotlin-extensions branch from 59b2ab1 to e5a8548 Jun 14, 2017

DATAMONGO-1689 - Polishing.
Bring back Maven Kotlin configuration for now + documentation fixes.

@sdeleuze sdeleuze force-pushed the sdeleuze:kotlin-extensions branch from e5a8548 to 781be77 Jun 14, 2017

@sdeleuze sdeleuze force-pushed the sdeleuze:kotlin-extensions branch from 781be77 to 969b53c Jun 14, 2017

odrotbohm added a commit that referenced this pull request Jun 14, 2017

DATAMONGO-1689 - Add Kotlin extensions for [Reactive]MongoOperations.
We now offer dedicated Kotlin extensions for MongoOperations and ReactiveMongoOperations.

Original pull request: #463.

odrotbohm added a commit that referenced this pull request Jun 14, 2017

DATAMONGO-1689 - Polishing.
Additionally format code, update license header, update JavaDoc and add issue reference to tests.

Original pull request: #463.

odrotbohm added a commit that referenced this pull request Jun 14, 2017

DATAMONGO-1689 - Polishing.
Improve Maven Kotlin configuration for now + documentation fixes.

Original pull request: #463.

odrotbohm added a commit that referenced this pull request Jun 14, 2017

odrotbohm added a commit that referenced this pull request Jun 14, 2017

odrotbohm added a commit that referenced this pull request Jun 14, 2017

@odrotbohm odrotbohm closed this Jun 14, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.