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

Is this repo abandoned? #97

Open
atlanteh opened this issue Jun 13, 2021 · 3 comments
Open

Is this repo abandoned? #97

atlanteh opened this issue Jun 13, 2021 · 3 comments

Comments

@atlanteh
Copy link

I see in the issues that there was some discussions on version 3, yet no updates were done to this repo in the last 2 years.
If this one is one is no longer maintained, what other good & easy alternatives do you recommend?

@thorbenandresen
Copy link

check out https://casl.js.org/

@shellscape
Copy link

I like some of the function of casl, but the semantics of the API are pretty rough. It doesn't lend to reading the code smoothly at all.

@waynebloss
Copy link

waynebloss commented Jan 7, 2023

Aside from it's overly complex interface, this line of code is why I didn't want to use casl.

So, anytime you do can("update", subject("Post", postToBeUpdated)), the subject function (an alias for the setSubjectType function containing the line of code above), modifies the given postToBeUpdated object... UNLESS postToBeUpdated is an instance of a class named Post.

This is a pretty bad decision IMO. I guess if you wanted to avoid it, you could wrap subject so that you always pass it a fresh object, e.g. subject("Post", {...postToBeUpdated}), but it makes me wary of the rest of the code altogether and it's a library that would have to be called a lot.

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

4 participants