{"action":"created","issue":{"url":"https://api.github.com/repos/jankotek/MapDB/issues/485","labels_url":"https://api.github.com/repos/jankotek/MapDB/issues/485/labels{/name}","comments_url":"https://api.github.com/repos/jankotek/MapDB/issues/485/comments","events_url":"https://api.github.com/repos/jankotek/MapDB/issues/485/events","html_url":"https://github.com/jankotek/MapDB/issues/485","id":68569056,"number":485,"title":"Request:  change  namespace for MapDB 2.0 ","user":{"login":"scottcarey","id":1198447,"avatar_url":"https://avatars.githubusercontent.com/u/1198447?v=3","gravatar_id":"","url":"https://api.github.com/users/scottcarey","html_url":"https://github.com/scottcarey","followers_url":"https://api.github.com/users/scottcarey/followers","following_url":"https://api.github.com/users/scottcarey/following{/other_user}","gists_url":"https://api.github.com/users/scottcarey/gists{/gist_id}","starred_url":"https://api.github.com/users/scottcarey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scottcarey/subscriptions","organizations_url":"https://api.github.com/users/scottcarey/orgs","repos_url":"https://api.github.com/users/scottcarey/repos","events_url":"https://api.github.com/users/scottcarey/events{/privacy}","received_events_url":"https://api.github.com/users/scottcarey/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-04-15T04:16:57Z","updated_at":"2015-04-15T08:51:36Z","closed_at":"2015-04-15T08:51:36Z","body":"I will need to load both MapDB 1.x and 2.0 into the same process in order to migrate incrementally while online.\r\n\r\nIf MapDB 2.0 was in a different namespace (e.g.  org.mapdb2) and different maven coordinates,  then both could co-exist without issue.\r\n\r\nAlternatives are to release an artifact with moved contents, but this is more difficult for MapDB (requiring an additional artifact and pom), and more difficult for users if the library is used by both transitive dependencies and themselves.   \r\n\r\nFor example:  my library wants  MapDB 2.0 and MapDB 1.x simultaneously, and so I use a  'moved' artifact for the latter.  If a third party transitive dependency requires MapDB 1.x, I now have an unresolvable version compatibility situation.\r\nIf instead I rely on both 1.x and 2.x, but they are in different namespaces and maven coordinates, then I can even have two third party transitive libraries, one that uses MapDB 1.x and another using MapDB 2.0, and everything will happily work together.\r\n\r\nI note that there is a moved artifact, but it is only available as 1.0.6 and was not built for 1.0.7 or prior.\r\n\r\nThe benefits of moving maven namespaces and package names for major version compatibility changes are large for users because it makes it easy to handle cases like the above without having to resort to OSGi or manual re-packaging."},"comment":{"url":"https://api.github.com/repos/jankotek/MapDB/issues/comments/93267502","html_url":"https://github.com/jankotek/MapDB/issues/485#issuecomment-93267502","issue_url":"https://api.github.com/repos/jankotek/MapDB/issues/485","id":93267502,"user":{"login":"jankotek","id":359021,"avatar_url":"https://avatars.githubusercontent.com/u/359021?v=3","gravatar_id":"","url":"https://api.github.com/users/jankotek","html_url":"https://github.com/jankotek","followers_url":"https://api.github.com/users/jankotek/followers","following_url":"https://api.github.com/users/jankotek/following{/other_user}","gists_url":"https://api.github.com/users/jankotek/gists{/gist_id}","starred_url":"https://api.github.com/users/jankotek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jankotek/subscriptions","organizations_url":"https://api.github.com/users/jankotek/orgs","repos_url":"https://api.github.com/users/jankotek/repos","events_url":"https://api.github.com/users/jankotek/events{/privacy}","received_events_url":"https://api.github.com/users/jankotek/received_events","type":"User","site_admin":false},"created_at":"2015-04-15T08:51:36Z","updated_at":"2015-04-15T08:51:36Z","body":"There 1.0.6 version with renamed package to `org.mapdb10`:\r\nhttp://mvnrepository.com/artifact/org.mapdb/mapdb-renamed"}}