I'll do it in the next few days!

Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Wed, Aug 12, 2015 at 12:54 PM, Joachim Rohde <
mailingl...@joachimrohde.com> wrote:

> Had anyone had the chance to have a look already at this?
>
>
> On 07/31/2015 11:25 PM, Joachim Rohde wrote:
>
>> I finally found the time today to make those changes which you can find
>> here: https://github.com/JoachimRohde/core
>>
>> Since the diff is "slightly" bigger than usually, here a short
>> description of the relevant changes I made:
>>
>> - The animal sniffer plugin was integrated into the parent POM where it
>> is now executed during the compile phase (see:
>>
>> https://github.com/wicketstuff/core/commit/5f68a8e7f9fb94dd4536817556aefb41aeb5afeb#diff-f44ca8b53c4fd9a67160bc238396d231
>> )
>>
>>
>> - Where it was necessary I overwrote the settings in the project POMs
>> (see e.g.:
>>
>> https://github.com/wicketstuff/core/commit/5f68a8e7f9fb94dd4536817556aefb41aeb5afeb#diff-290ebaa69933b91a6f5c1e25f609062a
>> )
>>
>>
>> - I moved all project folders to the root-folder and included the
>> modules in the POM. The remaining JDK-specific folders with the
>> respective POM has been removed.
>>
>> Same I did for the wicket-6.x branch.
>>
>> Any new project on the wicket-6.x branch which uses a newer JDK than
>> version 6 would need to include following in the project POM:
>>
>>   <build>
>>          <pluginManagement>
>>              <plugins>
>>                  <!--
>>                  Overwrite compiler plugin configuration from parent-POM
>>                  since we want this project to allow features from Java 7.
>>                  -->
>>                  <plugin>
>>                      <groupId>org.apache.maven.plugins</groupId>
>>                      <artifactId>maven-compiler-plugin</artifactId>
>>                      <configuration>
>>                          <source>1.7</source>
>>                          <target>1.7</target>
>>                      </configuration>
>>                  </plugin>
>>              </plugins>
>>          </pluginManagement>
>>          <plugins>
>>              <!--
>>              Overwrite animal sniffer plugin configuration from parent-POM
>>              since we want this project to allow features from Java 7.
>>              -->
>>              <plugin>
>>                  <groupId>org.codehaus.mojo</groupId>
>>                  <artifactId>animal-sniffer-maven-plugin</artifactId>
>>
>>                  <executions>
>>                      <execution>
>>                          <id>check-java-version</id>
>>                          <phase>compile</phase>
>>                          <goals>
>>                              <goal>check</goal>
>>                          </goals>
>>                          <configuration>
>>                              <signature>
>>
>> <groupId>org.codehaus.mojo.signature</groupId>
>>                                  <artifactId>java17</artifactId>
>>                                  <version>1.0</version>
>>                              </signature>
>>                          </configuration>
>>                      </execution>
>>                  </executions>
>>              </plugin>
>>          </plugins>
>>      </build>
>>
>> Same applies to new projects on the master branch which wants to take
>> adavantage of the JDK 8. At the moment we don't have any projects which
>> requires JDK 8.
>> But since there is no signature from animal sniffer itself for JDK 8
>> yet, the project POM looks a bit different:
>>
>>
>>   <build>
>>          <pluginManagement>
>>              <plugins>
>>                  <!--
>>                  Overwrite compiler plugin configuration from parent-POM
>>                  since we want this project to allow features from Java 7.
>>                  -->
>>                  <plugin>
>>                      <groupId>org.apache.maven.plugins</groupId>
>>                      <artifactId>maven-compiler-plugin</artifactId>
>>                      <configuration>
>>                          <source>1.8</source>
>>                          <target>1.8</target>
>>                      </configuration>
>>                  </plugin>
>>              </plugins>
>>          </pluginManagement>
>>          <plugins>
>>              <!--
>>              Overwrite animal sniffer plugin configuration from parent-POM
>>              since we want this project to allow features from Java 7.
>>              -->
>>              <plugin>
>>                  <groupId>org.codehaus.mojo</groupId>
>>                  <artifactId>animal-sniffer-maven-plugin</artifactId>
>>
>>                  <executions>
>>                      <execution>
>>                          <id>check-java-version</id>
>>                          <phase>compile</phase>
>>                          <goals>
>>                              <goal>check</goal>
>>                          </goals>
>>                          <configuration>
>>                              <signature>
>>
>> <groupId>com.ianbrandt.maven.signature</groupId>
>>                                  <artifactId>java1.8</artifactId>
>>                                  <version>1.0</version>
>>                              </signature>
>>                          </configuration>
>>                      </execution>
>>                  </executions>
>>              </plugin>
>>          </plugins>
>>      </build>
>>
>> The artifact for the signature comes from
>> https://github.com/ianbrandt/animal-sniffer-signatures and needs to be
>> deployed manually to the local Maven repository since it's not available
>> on Maven central.
>>
>> Any feedback is highly appreciated. (Anything unclear? Have I missed
>> something?)
>>
>> Joachim
>>
>> On 05/17/2015 02:58 PM, Joachim Rohde wrote:
>>
>>> I would change both branches. If only one branch is changed nothing
>>> would change (regarding the cherry picking).
>>>
>>> Joachim
>>>
>>> On 05/17/2015 02:23 PM, Martin Grigorov wrote:
>>>
>>>> Hi Joachim,
>>>>
>>>> What is your plan? Make the change only in master or also in
>>>> wicket-6.x too?
>>>>
>>>> Martin Grigorov
>>>> Wicket Training and Consulting
>>>> https://twitter.com/mtgrigorov
>>>>
>>>> On Sun, May 17, 2015 at 12:46 PM, Joachim Rohde <
>>>> mailingl...@joachimrohde.com> wrote:
>>>>
>>>> Hi Martin,
>>>>>
>>>>> time is a bit scarce for me at the moment. But I will give it a try
>>>>> within
>>>>> the next few weeks.
>>>>>
>>>>> Joachim
>>>>>
>>>>>
>>>>> On 05/07/2015 08:21 AM, Martin Grigorov wrote:
>>>>>
>>>>> Hi Joachim,
>>>>>>
>>>>>> The reason to use two separate folders is that at deploy time we use
>>>>>> [1]:
>>>>>> $ cd jdk-1.6.x; JAVA_HOME=$JAVA_6_HOME mvn deploy ....
>>>>>> $ cd ../jdk-7.x; JAVA_HOME=$JAVA_7_HOME mvn deploy ....
>>>>>> $ cd ../jdk-8.x; JAVA_HOME=$JAVA_8_HOME mvn deploy ....
>>>>>>
>>>>>> With your approach we could just use JAVA_8_HOME for all of them.
>>>>>> m-compiler-p's settings will set the appropriate -target for each
>>>>>> module.
>>>>>> But this is not enough - we have to use something like
>>>>>> http://mojo.codehaus.org/animal-sniffer-maven-plugin/ to make sure
>>>>>> that
>>>>>> jdk
>>>>>> 1.6/7.x modules do not use feature from a newer JDK, because
>>>>>> compiler's
>>>>>> -target won't help.
>>>>>>
>>>>>> I think it should work.
>>>>>> Do you want to try it out?
>>>>>>
>>>>>>
>>>>>> 1.
>>>>>>
>>>>>>
>>>>>> https://github.com/wicketstuff/core/wiki/Wicket-Stuff-Core-Release-Process#steps-to-create-new-version
>>>>>>
>>>>>>
>>>>>>
>>>>>> Martin Grigorov
>>>>>> Wicket Training and Consulting
>>>>>> https://twitter.com/mtgrigorov
>>>>>>
>>>>>> On Wed, May 6, 2015 at 11:50 PM, Joachim Rohde <
>>>>>> mailingl...@joachimrohde.com
>>>>>>
>>>>>> wrote:
>>>>>>>
>>>>>>>
>>>>>>   Hi,
>>>>>>
>>>>>>> As I already mentioned the other day I was porting some changes from
>>>>>>> master branch to the wicket-6.x branch (
>>>>>>>
>>>>>>>
>>>>>>> http://apache-wicket.1842946.n4.nabble.com/wicketstuff-Need-help-with-cherry-picking-td4670615.html
>>>>>>>
>>>>>>>
>>>>>>> )
>>>>>>> and had some trouble doing so, since Git was not able to
>>>>>>> cherry-pick my
>>>>>>> changes due to a different folder structure. Since this was really
>>>>>>> a pain
>>>>>>> in the neck (and quite erroneous) I would like to know if we cannot
>>>>>>> get
>>>>>>> rid
>>>>>>> of the distinction between different JDK versions in the folder
>>>>>>> structure.
>>>>>>>
>>>>>>> At the moment all projects on the master branch are located in the
>>>>>>> jdk-1.7-parent folder (since no project requires Java 8 yet, the
>>>>>>> jdk-1.8-parent folder is empty). Most of those projects reside in the
>>>>>>> jdk-1.6-parent folder on the wicket-6.x branch, making it
>>>>>>> impossible to
>>>>>>> simply downport changes via cherry-picking. Only difference between
>>>>>>> the
>>>>>>> POMs in those folders are the source- and target-level for the Maven
>>>>>>> compiler plugin.
>>>>>>>
>>>>>>> Can't we just put everything in one folder and override source- and
>>>>>>> target-level in the project specific POM if a project needs a higher
>>>>>>> version than the default one? The only drawback I see at the
>>>>>>> moment is
>>>>>>> the
>>>>>>> fact, that you cannot recognize at a first glance if a project
>>>>>>> needs a
>>>>>>> higher Java version. Or do I overlook here something?
>>>>>>>
>>>>>>> To be honest: I don't know if I would downport bigger changes on a
>>>>>>> project
>>>>>>> when myself only needs those changes on the master branch (since I'm
>>>>>>> already using Wicket 1.7) and downporting is such a hassle.
>>>>>>>
>>>>>>> Joachim
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>
>>>
>>

Reply via email to