[hibernate-dev] On Hibernate Search and non Public API use of Core and other SNAPSHOT concerns
Hardy Ferentschik
hibernate at ferentschik.de
Fri Aug 20 04:43:38 EDT 2010
Hi,
I agree with most of what Emmanuel said - isolation from Core API and no
third
party SNAPSHOTS.
When it comes to Core though I think it is useful to depend on a SNAPSHOT.
It is
the fastest way to detect integration problems. If a Core SNAPSHOT
disappears you
can easily deploy a new SNAPSHOT.
If a major change in Core occurs requiring a bigger integration effort,
you would
of course lock the Core version until the issue is resolved.
The issue we had when using a 3.6 SNAPSHOT was not the SNAPSHOT per se,
but rather
the problem with building Core on Mac using JDK 6 (HHH-5277 - really a
maven bug).
Doing though will screw up you local repository and you will get all sort
of strange
behavior. I also lost several hours on this one :(
--Hardy
On Fri, 20 Aug 2010 10:11:08 +0200, Emmanuel Bernard
<emmanuel at hibernate.org> wrote:
> This is a follow up on IRC's discussion between Steve and Sanne spawned
> by
> http://in.relation.to/Bloggers/SimultaneousHibernate355And360Beta3Releases#comment16656
> Since I wasn't there and now you are all gone, I'm using email :)
>
> Here is my opinion
>
> * Hibernate Search should not depend on non public Hibernate Core APIs
> HSearch is aimed at working with other backends in the medium run (does
> this expression exist?). So we should isolate Hibernate Core use of
> public APIs and certainly not use non public APIs.
>
> Let's code move SoftLimitMRUCache, into HSearch codebase
> http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-580
> ( on a side note, SoftLimitMRUCache could be considered a public API as
> it is referenced in a public API JavaDoc (Environment) )
>
> Also the use of org.hibernate.util.StringHelper in HSearch is wrong. We
> have org.hibernate.annotations.common.util.StringHelper
> http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-581
>
> * Hibernate Search should not use third-party SNAPSHOT dependencies
> (including Core)
> Using snapshots makes the build non reproducible (snapshots go away) and
> we did lose close to a collective day of work on such issue not so long
> ago when HSearch was depending on Core 3.6.0-SNAPSHOT
>
> * what to do for Core 3.6 and HSearch
> We should release v 3.3 beta 1 (see a previous email on mine on
> documentation). I will spend some cycles on this.
>
> * How to prevent such problem in the future
> Good question.
> Follow rules above :)
> Sanne's idea of having some integration (hudson) job specifically
> altering Core version to the SNAPSHOT scheme in HSearch's pom seems to
> work if Core publishes snapshots regularly. I am not sure if this can be
> trivially set up though.
> Ideally, right before a final Core release (including micro points), we
> should test the expected HSearch version with it (for example Core 3.5.x
> with HSearch 3.2.x latest) but that's a manual step to add on a long
> list of manual steps. Not sure that's viable.
>
> PS: These rules are even truer (SIC) for Hibernate Validator but HV 4
> has been a better citizen
> _______________________________________________
> hibernate-dev mailing list
> hibernate-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hibernate-dev
More information about the hibernate-dev
mailing list