-
Notifications
You must be signed in to change notification settings - Fork 36
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
access/universal functions throw error instead of creating .acl when no .acl exists #1549
Comments
We’ve opened it as an issue to look into, though it may take us a little bit to get to as we’re working on finalising a major release. It appears to be a WAC based issue, and we generally test more against ACP instead. Thank you for reporting the issue! 😄 |
Just a heads up, the |
just chiming in to say that I have seen this bug with I think we can work around this be using the WAC-specific APIs for now, but it means our app (https://github.com/mysilio-co/garden) will not support ACP-based Solid servers, which is a bummer. I poked around and it seems like the issue is that there is a bit of logic inside |
access functionality in solid-client is currently a bit buggy, may need to change these hooks in the future: inrupt/solid-client-js#1549
Just wanted to add more info: This bug also applies to NSS (solidcommunity.net in my case). |
@ThisIsMissEm I would like to raise the priority on this issue. It has remain unaddressed for almost a year, and it makes the universal access module almost useless on NSS and CSS. As far as I can tell, this bug exists on all universal access functions (i.e. |
Hi @ianconsolata we're aware, we do have this ticket, but it's been blocked behind some much more pressing work (such as node.js 18 support, and fixing our CI/CD infrastructure); If you think you can fix it, and write a unit test or end to end test for it, that might be helpful. Sorry we've not been quicker to resolve this issue. |
I feel compelled to chime in and just note that this is an incredibly disappointing response. This is a critical bug that essentially prevents these libraries from being used with both of the non-Inrupt POD providers in anything but a trivial way. I've been hopeful for years that Inrupt would play a key role in organizing a community around Solid, and thought this library signaled a commitment to providing at least the basic building blocks of that community - that is, a high quality, well tested foundational library that provides at least basic storage and authz functionality against the main POD implementations, but the lack of prioritization of a critical bug like this feels like a very clear signal that Inrupt doesn't care about anything but Pod Spaces and developers who want to build on it. I won't speak for @ianconsolata but at this point I don't have the time or emotional energy to fix bugs in your code when it doesn't seem clear to me that support for CSS will be provided in a timely or earnest way by the maintainers of this library. Apologies if my frustration here comes off too sharply, but I am very frustrated. |
@ianconsolata : This has been fixed in |
I've just encountered this in v1.30.0. Looking at my stack trace, and comparing that to the fix in #1942, I don't think that that |
I've also encountered this in v1.30.0. |
Thanks for reopening, we'll look into this |
Fixes #1549 A resource having an ACL link, but this link not resolving to an ACL is a legitimate situation in the ACL protocol. The universal API had a bug that was not allowing the underlying ACL API to create the target ACL if it was missing. It is now supported.
Fixes #1549 A resource having an ACL link, but this link not resolving to an ACL is a legitimate situation in the ACL protocol. The universal API had a bug that was not allowing the underlying ACL API to create the target ACL if it was missing. It is now supported.
|
Confirming that it appears to be resolved for me, thank you! |
Search terms you've used
setAccess, setAccessFor
Bug description
The documentation states
To Reproduce
setAccessFor(reousourceUrl, "public", { read: true }, options)
on a resource with no .aclExpected result
The .acl file should be initialized, and set with the requested access.
Actual result
An error message is thrown with the following message:
The error bubbles up from from
responseToResourceInfo
:solid-client-js/src/resource/resource.ts
Line 84 in 4b99600
ok
responses (including 404s).That function is used in the
getReourceInfoWithAcr
call that happens on the first line ofsetPublicAccess
(called bysetAccessFor
:solid-client-js/src/access/universal_v1.ts
Line 457 in 4b99600
getResourceInfoWithAcr
callsgetResourceInfo
which callsresponseToResourceInfo
which throws. This happens on the first line of all the access setters, so I am not sure if any of them correctly implement the .acl creation described in the documentation.Environment
The text was updated successfully, but these errors were encountered: