Since I haven't heard back from anyone for some time, I'll go ahead with the merge/review. Migration guide has been updated and published in the GitHub wiki.
Hunter On Wed, Jan 29, 2020 at 7:30 PM Hunter Lee <hu...@apache.org> wrote: > Hi Helix users and devs- > > I sent out an email describing the separation of ZkClient into a separate > module a few weeks ago and would like to follow up. > > I am currently getting https://github.com/apache/helix/pull/684 reviewed. > Here is the changelist: > 1. Remove IOItec import > 2. Create helix-common to resolve circular dependencies > 3. Create zookeeper-api > > This should be pretty straightforward since there is no change in logic. > > Here is the *migration guide*: > 1. All the classes in helix-common kept the same package structure they > had in helix-core, so there should be no code change required. > 2. For ZK-related classes, most of them are *backported* by way of > subclassing. But if you used IOItec classes explicitly, you'll need to fix > the imports (because we no longer import IOItec!). Do the following: > > Find-replace in your project: > - org.I0Itec -> org.apache.helix.zookeeper.api > E.g.) > import org.I0Itec.zkclient.ZkServer; > becomes > import org.apache.helix.zookeeper.api.zkclient.ZkServer; > > I've tested binary level compatibility with some production-level > codebases (at LinkedIn) and haven't come across any major problems. If > deemed good, this change will probably be included in the next major > release. > > Please review this change and let me know if you have any issues using it > in your projects. > > Hunter >