quickfixj icon indicating copy to clipboard operation
quickfixj copied to clipboard

Move sleepycat code out of quickfixj-core

Open philipwhiuk opened this issue 3 years ago • 2 comments

Sleepycat seems unmaintained. Depending on sleepycat involves including an extra database implementation that (most?) people probably aren't using.

To my knowledge this only affects quickfix.SleepycatStore and quickfix.SleepycatStoreFactory

Options:

  1. Extract Sleepycat code to quickfixj-sleepycat which depends on quickfixj-core. Breaking change for Sleepycat Store users, no impact on everyone else.

  2. Just remove Sleepycat code. Would mean any Sleepycat Store users have to copy in the code to their own projects and maintain it separately. Completely removes QuickfixJ's dependency on it.

philipwhiuk avatar Jan 06 '22 14:01 philipwhiuk

I think option 1 would be the way to go. But I also don't have any insight into how much Sleepycat is used. Also see #449 which might be related w.r.t. creating a new submodule.

chrjohn avatar Jan 27 '22 16:01 chrjohn

If I may express an opinion on this I think that changing the publishing of SleepycatStore can be regarded as a breaking change, but only in the sense of requiring a new dependency. For higher backwards compatibility the package names could remain the same, but the new module can build and test it. It can even be moved from the existing repo into its own repo in a release such as 3.0.0. It would depend on quickfixj-core. You could leave it unmaintained and wait to see if anyone requests that it be maintained to track qfj releases. If not then it can at some point be deprecated.

david-gibbs-ig avatar Feb 28 '22 14:02 david-gibbs-ig