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

Won't work anymore with rapier 0.22. My thoughts on this and possible way to fix this. #56

Open
Ughuuu opened this issue Aug 14, 2024 · 0 comments

Comments

@Ughuuu
Copy link

Ughuuu commented Aug 14, 2024

As a direct user of both rapier and salva, the experience of using both is complicated/difficult. The main problem is when a new release of rapier appears, salva is always dragging along.

Versioning

I see right now the version of salva is 0.9, which is a bit weird. Does salva support rapier 0.21? Does it support version 0.22? Depends where you are looking. If you are using salva 0.9 what version of rapier are you supporting.

I believe updating of salva should be a breaking change that would warrant a version change, and I believe keeping it in sync with rapier has it's benefits.

Eg. salva 0.22 works with rapier 0.22. That makes a lot of sense, and even looking at it at a glance you can see if it works or not.

As for the versioning problem, obviously if a new version was made as soon as a new rapier version was made, this problem would not appear anymore. However, what should be the order of things? Rapier should be released first, since salva needs rapier. So first we would have:

  • rapier version 0.X released
  • salva version 0.X released

Now how could these be kept in sync. Most of the time really, there is no breaking change in rapier. If there were however, it would be really good if the salva fix would come just right before the rapier release even, as to not leave the case of version mismatch.

Rapier updating Salva automation

So what I propose is an automated action on rapier repo that automatically updates the version of salva repo. If this action would fail, the release of new rapier version would also fail. In which case the person doing the release needs to fix salva and only then the release can happen. (eg. this action lets say would also build the new version of salva to make sure it still works with new version of rapier.).

Or if not, it would just be a simple action that updates version of salva, and not do any build. It would then be a manual job of the person doing rapier release to make sure salva still works.

Making it part of Rapier

Another idea to fix this is to make Salva part of Rapier. Leave this lib as it is, and simply add most of what this has in Rapier and make it tightly coupled. With time more features would naturally come to Salva too (eg. collision filtering, area interaction, etc.).

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

No branches or pull requests

1 participant