Hi all! For our upcoming final 1.0 release we are thinking about restructuring the components and package names to make them at least closer to something we would want to live with for a considerable future. The main affected component at this point is the Neo4j kernel, even if other components would follow later on as well.
What we would like to achieve with such a refactoring is a more consistent naming scheme, and a more descriptive naming scheme. This means that we would change the current core api (org.neo4j.api.core). Most of the interfaces would remain the same, but the package name would change to org.neo4j.graphdb.api. We would also change the name of the NeoService interface to the more descriptive name GraphDatabaseService. Since we have multiple components that implement the Neo4j Graph Database API (the Neo4j kernel, the remote implementation, and the upcoming HA system), we might at some point in the future extract the API to a separate component that we would call graphdb-api. The current neo component would thus be divided into two, graphdb-api and kernel. The class EmbeddedNeo would be part of the kernel component and would (even before the division of the components) be renamed to org.neo4j.kernel.api.EmbeddedGraphDatabase. In order to mitigate the transition to the new api we would provide a transitional component, lets call it retro to have a name to refer to it by. This component would contain the org.neo4j.api.core package and an implementation thereof as a facade for the new org.neo4j.graphdb.api package with the org.neo4j.kernel.api.EmbeddedGraphDatabase implementation. We have created a wiki page at http://wiki.neo4j.org/content/Component_Naming where we outline the strategy behind the naming structure, and list the renaming actions that would take place if we go through with this. Since this is a rather substantial change, we want to get your input first. There are a few things we would like to know from you: 1. Will a restructuring like this cause problems for your projects? 2. Do you think this change will result in a positive overall effect for Neo4j? 3. Do these positive effects outweigh any potential problems the change causes? If this goes well we plan to make similar refactorings to the index-util component shortly after. Cheers, The Neo4j team through -- Tobias Ivarsson <tobias.ivars...@neotechnology.com> Hacker, Neo Technology www.neotechnology.com Cellphone: +46 706 534857 _______________________________________________ Neo mailing list User@lists.neo4j.org https://lists.neo4j.org/mailman/listinfo/user