vapor-community / mongo-driver

MongoDB driver for Fluent
28 stars 26 forks source link

Update to MongoKitten 4.1.x #52

Open valeriomazzeo opened 6 years ago

Joannis commented 6 years ago

This is intentional, actually. MongoKitten 4.1.x has one minor breaking change that was only used by this Mongo-Driver (because of a lack of Codable at the time)

valeriomazzeo commented 6 years ago

It gets the feeling that mongo driver is lagging behind its dependencies though. To Update to MongoKitten 4.1.x I would expect to have to make MongoDriver compatible with the new version, not to just change a number in the package file.

Is there any reason why that cannot be done (apart from time) ?

Joannis commented 6 years ago

It's not just changing the compatible version. There are a few things to do that break API. Some users of mongo-driver were using these features, too. That was the biggest problem at the time.

valeriomazzeo commented 6 years ago

I am not sure I understand. MongoKitten 4.1.x has some breaking API changes. MongoDriver can migrate to MongoKitten 4.1.x using the new API.

If MongoDriver API doesn't break as a result of the above, then release 2.2.2, otherwise release 2.3.0.

Also, possibly, before doing any of the above, release a new version of MongoKitten that doesn't have those Swift warnings.

Am I missing anything?

Joannis commented 6 years ago

Yes, users using MongoDriver may still depend on that MongoKitten 4.0 feature that was removed in 4.1

vzsg commented 6 years ago

What's this breaking change/removed feature/whatever?

Joannis commented 6 years ago

We had our own helper that's obsoleted by Codable. A complex data transformation/mapping library that ended up bringing in more bad than good by a mile.

vzsg commented 6 years ago

So 4.1 was actually a breaking change but was tagged as a minor instead? Or am I misunderstanding something?

Joannis commented 6 years ago

You're right.