bellycard / napa

A simple framework for building APIs with Grape
Other
329 stars 72 forks source link

Don't pin dependency versions #237

Closed darbyfrey closed 7 years ago

darbyfrey commented 8 years ago

For discussion:

Instead of pinning all these dependencies in the gemspec we should allow them to be pinned by the service instead. I think this will help with the different upgrade conflicts we run into. We may need to pin some version in the next round of service upgrades, but I think this makes more sense from the perspective of the framework. Thoughts?

@bellycard/platform @danielmackey @alexmamonchik @ochagata @jay3dec

shaqq commented 8 years ago

we might consider pinning thor, just because the CLI will depend on it. in general, though, i agree

ochagata commented 8 years ago

Does it depend on a specific version of thor? @shaqq

shaqq commented 8 years ago

@ochagata it could if thor introduces breaking changes

ochagata commented 8 years ago

Any other dependencies that might cause it to start failing? @shaqq

heymackey commented 8 years ago

@shaqq @darbyfrey could you get away with a pessimistic version constraint for thor?

I'd say that active record and grape are probably other libraries that could introduce breaking changes. if they are following semantic versioning, you could constrain to the x.x instead of x.x.x?

ochagata commented 8 years ago

As long as the dependency isn't crucial(thor, roar), removing the constraint should be fine. Also, I agree with using the pessimistic version constraint for core gems.

ashtonthomas commented 8 years ago

Here is a related PR specifically for roar: https://github.com/bellycard/napa/pull/242