Return-Path: X-Original-To: apmail-maven-dev-archive@www.apache.org Delivered-To: apmail-maven-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id BE63D9FB3 for ; Sat, 13 Dec 2014 14:45:34 +0000 (UTC) Received: (qmail 39110 invoked by uid 500); 13 Dec 2014 14:45:29 -0000 Delivered-To: apmail-maven-dev-archive@maven.apache.org Received: (qmail 39033 invoked by uid 500); 13 Dec 2014 14:45:29 -0000 Mailing-List: contact dev-help@maven.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "Maven Developers List" Reply-To: "Maven Developers List" Delivered-To: mailing list dev@maven.apache.org Received: (qmail 39020 invoked by uid 99); 13 Dec 2014 14:45:28 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 13 Dec 2014 14:45:28 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [216.86.168.182] (HELO mxout-07.mxes.net) (216.86.168.182) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 13 Dec 2014 14:45:02 +0000 Received: from mpb.ifedorenko.com (unknown [206.248.162.176]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by smtp.mxes.net (Postfix) with ESMTPSA id 001A122E253 for ; Sat, 13 Dec 2014 09:44:30 -0500 (EST) Message-ID: <548C50CE.1070004@ifedorenko.com> Date: Sat, 13 Dec 2014 09:44:30 -0500 From: Igor Fedorenko User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 MIME-Version: 1.0 To: dev@maven.apache.org Subject: Re: [VOTE] Maven 3.2.4 Release References: <548B7C84.1060907@ifedorenko.com> <4316948.llrjlBie7R@herve-desktop> <5089680.vkfjTJu8vP@herve-desktop> In-Reply-To: <5089680.vkfjTJu8vP@herve-desktop> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Virus-Checked: Checked by ClamAV on apache.org I've already reintroduced DefaultJavaToolChain and Tycho is happy now [1]. Tycho needs access to DefaultJavaToolChain#getJavaHome() which, to the best of my knowledge, is not available from any other API, is not available through ToolchainManager. I don't believe Tycho references JavaToolChain interface. As a side note, in the future we should avoid case-only renames like JavaToolChain->JavaToolchain, these cause problems on case-insensitive filesystems, like the ones used by Windows and OSX. We don't distinguish between public and internal classes in Maven, at least not generally. There are few classes that are explicitly marked as @provisional, like ArtifactDescriptorReaderDelegate for example, but this is not enforced and majority of classes are not marked in any way. I agree we need to have a mechanism to distinguish between public and internal classes and I have few ideas to do this, but I don't think we can do this retroactively. We have to keep most/all existing classes and treat them as public API, unfortunately. Maybe mark them as deprecated when we know we will likely change them in the future, but any real change has to wait Maven 4, and I am not sure we'll be able to afford massive breakage even then. [1] https://git-wip-us.apache.org/repos/asf?p=maven.git;a=commit;h=d6e45a5d56ab0facd36751ccee722db6a2006f50 -- Regards, Igor On 2014-12-13, 9:04, Herv� BOUTEMY wrote: > ok, I had a look at Tycho sources: > this is something introduced recently (10/10/2014): IIUC, Tycho 0.22.0 was > released since then > > I'm surprised of tycho-core's ToolchainProvider: IIUC, that's a rewrite of a > part of maven-toochains-plugin, depending on ToolchainManagerPrivate which is > not part of public API > IIUC, the intent was to get the configured toolchain: since then, I wrote a > little doc for that [1] to show how to use ToolchainManager to do exactly that > using normal Maven API > > Notice this won't fix everything, since: > 1. Tycho needs JavaToochain, which has been renamed (Toolchain vs ToolChain) > 2. the interface doesn't offer expected getJavaHome() API > > > Then you'll need to cast to DefaultJavaToolChain, which will need to be added > back to maven-core: I'll do it immediately. > > I don't know the Tycho community, but using ToolchainManager would IMHO be > more future-proof than writing ToolchainProvider > > Regards, > > Herv� > > > [1] http://maven.apache.org/plugins/maven-toolchains-plugin/toolchains/custom.html > > > Le samedi 13 d�cembre 2014 09:13:50 Herv� BOUTEMY a �crit : >> DefaultJavaToolChain? you mean the implementation? >> >> Can you give me pointers to the Tycho sources that use this API? >> (that's clearly not expected) >> >> I'm in favor of introducing deprecated DefaultJavaToolChain >> that extends the new implementation, which is easy to do: just need to >> understand how it is used in Tycho, since the class is supposed to be used >> by JavaToolchainFactory (on only this one). >> >> Regards, >> >> Herv� >> >> Le vendredi 12 d�cembre 2014 18:38:44 Igor Fedorenko a �crit : >>> Unfortunately, I have to take this back. The changes to toolchain >>> broke Tycho and, short of using reflection, I don't see how >>> to make Tycho work with maven 3.2.4 and earlier versions of Maven. >>> >>> For better or worse, >>> org.apache.maven.toolchain.java.DefaultJavaToolChain was part of >>> Maven API since 2.x and I don't think we can just remove the class. >>> >>> I see two ways to fix this. Either we rename the classes back, which is >>> probably the easiest. Or we introduce deprecated DefaultJavaToolChain >>> that extends the new implementation. >>> >>> Here is my -1 for releasing 3.2.4 in its current state. >>> >>> -- >>> Regards, >>> Igor >>> >>> On 2014-12-12, 18:01, Igor Fedorenko wrote: >>>> +1 >>>> >>>> -- >>>> Regards, >>>> Igor >>>> >>>> On 2014-12-12, 16:54, Jason van Zyl wrote: >>>>> Hi, >>>>> >>>>> Time to release Maven 3.2.4! >>>>> >>>>> Here is a link to Jira with 20 issues resolved: >>>>> https://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10500&versi >>>>> on >>>>> =20574 >>>>> >>>>> >>>>> Staging repo: >>>>> https://repository.apache.org/content/repositories/maven-1102/ >>>>> >>>>> The distributable binaries and sources for testing can be found here: >>>>> https://repository.apache.org/content/repositories/maven-1102/org/apach >>>>> e/ >>>>> maven/apache-maven/3.2.4/ >>>>> >>>>> >>>>> Specifically the zip, tarball, and source archives can be found here: >>>>> https://repository.apache.org/content/repositories/maven-1102/org/apach >>>>> e/ >>>>> maven/apache-maven/3.2.4/apache-maven-3.2.4-bin.zip >>>>> >>>>> https://repository.apache.org/content/repositories/maven-1102/org/apach >>>>> e/ >>>>> maven/apache-maven/3.2.4/apache-maven-3.2.4-bin.tar.gz >>>>> >>>>> https://repository.apache.org/content/repositories/maven-1102/org/apach >>>>> e/ >>>>> maven/apache-maven/3.2.4/apache-maven-3.2.4-src.zip >>>>> >>>>> https://repository.apache.org/content/repositories/maven-1102/org/apach >>>>> e/ >>>>> maven/apache-maven/3.2.4/apache-maven-3.2.4-src.tar.gz >>>>> >>>>> >>>>> Source release checksum(s): >>>>> apache-maven-3.2.4-src.zip sha1: >>>>> db5fb9feda693f05fe7effaf096d6cd4dd5eff44 >>>>> >>>>> Staging site: >>>>> http://takari.io/maven-3.2.4/ >>>>> >>>>> Vote open for 72 hours. >>>>> >>>>> [ ] +1 >>>>> [ ] +0 >>>>> [ ] -1 >>>>> >>>>> Thanks, >>>>> >>>>> The Maven Team >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org >>>>> For additional commands, e-mail: dev-help@maven.apache.org >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org >>>> For additional commands, e-mail: dev-help@maven.apache.org >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org >>> For additional commands, e-mail: dev-help@maven.apache.org >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org >> For additional commands, e-mail: dev-help@maven.apache.org > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org > For additional commands, e-mail: dev-help@maven.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org For additional commands, e-mail: dev-help@maven.apache.org