You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Tamás Cservenák <ta...@cservenak.net> on 2013/11/07 11:03:17 UTC

Maven Indexer plans

Hi there,

I am toying with some thoughts to make a bigger leap with MI. I plan to
start 6.0 of it, with following changes:

Changes would be along these lines:
- Collapse indexer-artifact into indexer-core (this modularization had a
historical reason, coming from Sonatype Nexus)
- Remove Maven1 support (really, is it used by anyone? Ah, and it even does
not work, is buggy)
- Remove all the deprecated cruft (a LOT of breaking changes)
- Simplify by removing many of "almost used" dependencies: stuff like
wagon-provider-api and archetype-common bloated the POM and dependencies of
project, only for single class each of them. If integrator needs archetype
data source, or Wagon powered ResourceFetcher, is easy to add those by
hand, those are trivial classes (or could be moved out into new trivial
modules)
- Make it really extensible by integrators too, complete rework of
ArtifactInfo (a LOT of breaking changes)
- "modernize" the library: ditch Plexus, use @Inject/SISU (mostly for ctor
injection, easier testability)
- Remove Lucene classes (IndexSearcher, IndexWriter etc) from
IndexingContext, by not exposing those we will have freedom to change
strategy in future, and for example use one single Lucene index for all the
existing Contexts (currently as many contexts you have as many separate
indexes you have ==> LOT of file handles).
- update to latest Lucene (currently 4.5.0, MI uses last of 3.6.x line)



Thanks,
~t~

Re: Maven Indexer plans

Posted by Olivier Lamy <ol...@apache.org>.
Sounds good plan.
Perso I would prefer "use @Inject" and not using container specific.
(if possible)

On 7 November 2013 21:03, Tamás Cservenák <ta...@cservenak.net> wrote:
> Hi there,
>
> I am toying with some thoughts to make a bigger leap with MI. I plan to
> start 6.0 of it, with following changes:
>
> Changes would be along these lines:
> - Collapse indexer-artifact into indexer-core (this modularization had a
> historical reason, coming from Sonatype Nexus)
> - Remove Maven1 support (really, is it used by anyone? Ah, and it even does
> not work, is buggy)
> - Remove all the deprecated cruft (a LOT of breaking changes)
> - Simplify by removing many of "almost used" dependencies: stuff like
> wagon-provider-api and archetype-common bloated the POM and dependencies of
> project, only for single class each of them. If integrator needs archetype
> data source, or Wagon powered ResourceFetcher, is easy to add those by
> hand, those are trivial classes (or could be moved out into new trivial
> modules)
> - Make it really extensible by integrators too, complete rework of
> ArtifactInfo (a LOT of breaking changes)
> - "modernize" the library: ditch Plexus, use @Inject/SISU (mostly for ctor
> injection, easier testability)
> - Remove Lucene classes (IndexSearcher, IndexWriter etc) from
> IndexingContext, by not exposing those we will have freedom to change
> strategy in future, and for example use one single Lucene index for all the
> existing Contexts (currently as many contexts you have as many separate
> indexes you have ==> LOT of file handles).
> - update to latest Lucene (currently 4.5.0, MI uses last of 3.6.x line)
>
>
>
> Thanks,
> ~t~



-- 
Olivier Lamy
Ecetera: http://ecetera.com.au
http://twitter.com/olamy | http://linkedin.com/in/olamy

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org