Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supporting 6.1 API #124

Closed
brndnmtthws opened this issue May 28, 2019 · 1 comment · Fixed by #143
Closed

Supporting 6.1 API #124

brndnmtthws opened this issue May 28, 2019 · 1 comment · Fixed by #143

Comments

@brndnmtthws
Copy link
Collaborator

FDB 6.1.8 is the current stable release, and the 6.1 API has some backward incompatible changes. Here are the details on the changes:

I took a stab at making a PR to support the 610 API version, but it will require either a) breaking backward compatibility or b) wrapping code with #[cfg(feature = "fdb-6_1")] blocks all over the place.

Since it's a bit messy, I figured I'd start a discussion first before moving forward. What do people think the best way to move forward is? My preference is to prevent breaking backward compatibility at the expense of introducing some more complexity.

In the meantime, I have a small patch here that uses the 600 API version with the 6.1.x client libraries: brndnmtthws@ee95ad4

@bluejekyll
Copy link
Collaborator

If it's simple enough to do, the #[cfg(feature = "fdb-6_1")] would be the best option for backward compatibility, though we probably want to make it forward compatible, so that anything after 6_1 gets the changes as well. Then the fdb-6_1 feature would depend on post-fdb-6_1 feature (as would all future fdb versions...)

There might be some elegant ways of doing this with traits and feature gated modules for those implementations?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants