NoelDeMartin / umai

Offline-first Recipes Manager
https://umai.noeldemartin.com
GNU General Public License v3.0
33 stars 5 forks source link

Error: Can't create type index without a writable profile document #11

Closed dieterc closed 1 year ago

dieterc commented 1 year ago

After login with my solid pod I was not able to create a cookbook, do you know what went wrong?

Error details:

Error: Can't create type index without a writable profile document
    at https://umai.noeldemartin.com/assets/main.8f09a7a2.js:113:46495
    at f (https://umai.noeldemartin.com/assets/noeldemartin-utils.esm.8b1f171f.js:1:43188)
    at Generator._invoke (https://umai.noeldemartin.com/assets/noeldemartin-utils.esm.8b1f171f.js:1:42976)
    at Generator.next (https://umai.noeldemartin.com/assets/noeldemartin-utils.esm.8b1f171f.js:1:43617)
    at Gw (https://umai.noeldemartin.com/assets/noeldemartin-utils.esm.8b1f171f.js:1:62078)
    at a (https://umai.noeldemartin.com/assets/noeldemartin-utils.esm.8b1f171f.js:1:62284)
    at https://umai.noeldemartin.com/assets/noeldemartin-utils.esm.8b1f171f.js:1:62345
    at new Promise (<anonymous>)
    at https://umai.noeldemartin.com/assets/noeldemartin-utils.esm.8b1f171f.js:1:62224
    at uh (https://umai.noeldemartin.com/assets/main.8f09a7a2.js:113:47209)
NoelDeMartin commented 1 year ago

Hi there,

Which POD provider are you using? Does this also happen with solidcommunity.net like you mentioned in #12, or is ti something else?

In any case, the problem is that the application expects to be able to write in the profile document in order to create the type index. If the profile is not writable by apps but you can edit it yourself, it should be fixable if you register the type index manually.

At the moment, the app doesn't work without this. But it should be possible to make this an "opt-in" feature. Although at this point I'm not inclined to change it because most POD providers have editable profiles. This is something that's being discussed for the webid spec though: https://github.com/solid/webid-profile

dieterc commented 1 year ago

In this case I was using a newly created pod on https://teamid.live/. Normally when you create a new pod, what do you have to do to make it work?

NoelDeMartin commented 1 year ago

Ideally, you don't need to have anything in a POD to make it work. If the POD provider implements the Solid spec, everything should work.

There are some parts though, like the webId and the type index specs, that are still a draft. So I guess until those become stable, there may be some rough edges.

As far as I know, the only thing my app is doing that is not strictly part of the spec is having access to a writable profile. This doesn't mean that the profile itself has to be writable, but at the very least it should link to a writable profile using foaf:isPrimaryTopicOf or rdfs:seeAlso.

I have tested with the main POD providers I know of, and it works with most of them. The only exception I'm aware of is use.id because they don't have writable profiles. That's why when something like this doesn't work, I often ask about the POD provider to see if I know about it already or investigate it otherwise :).

In this case, I think teamid.live is managed by @ewingson, so I'll ping him to see if he can give us some insights about the problem.

dieterc commented 1 year ago

After using another browser it also worked with my pod of https://teamid.live without changing anything

ewingson commented 1 year ago

the only info that could be useful at this specific place, is

teamid.live cannot accept new accounts momentary, but the existing ones do work.

ewingson commented 1 year ago

update: registration enabled