Maybe Solid can be part of that even, it is about social linked data after all

The focus here is on developing Solid into becoming what it can become - a decentralized ecosystem where people control their data

And all of the services and innovations we hope for to be part of that

In any case, I think at the center of it should be interoperability - services able to work on the same set of data, giving people more choices in how they consume and produce their data

Tim Berners-Lee

@timbl

I had a chat recenntly with a lawyer who hd been heavily involved in the uk Coop which in nowadays mostly food shops but at one point was many things. He thought that looking at coop legal systems for Solid data storage could be a good idea.

Julian Cole

@Julian-Cole

@timbl interesting! something I was thinking of is that I'd like to see local libraries have more involvement in open services that support features in the solid core app set that should be available to everyone for free.

Mark Hughes (happybeing)

@theWebalyst

Anyone around to think about a node packaging issue with me? I'm trying to build a module that has a circular dependency, i.e. a fork of solid-auth-client, where: solid-auth-client -> safenetworkjs -> rdflib -> solid-auth-client. I don't think this can work, but would love to hear if there's a way to do this.

Mark Hughes (happybeing)

@theWebalyst

Would it be possible to make rdflib external to safenetworkjs (so bundling leaves it unresolved) and have solid-auth-client provide rdflib for safenetworkjs to pick up? I don't know if that even makes sense, but I see that rdflib seems to do something like this when building a browser bundle, but not for this reason (here).

Tim Berners-Lee

@timbl

NPM should manage the circular dependenctybut I am not an expert

webpack also

Mark Hughes (happybeing)

@theWebalyst

Thanks Tim. I get a memory allocation error during the webpack bundling, which doesn't happen if I break the circle so I'm thinking it's related. I have found some suggestions on StackExchange so have things to try.

Arne Hassel

@megoth_twitter

I thought NPM should handle that as well, but if method foo in package A is calling method bar in package B, and method bar is calling method foo, you might get a circular dependency that never exits - that isn't the case here, is it?

Mark Hughes (happybeing)

@theWebalyst

I'm not 100% sure so am going to use my sophisticated debugging technique of prodding and poking until it works [cough].

Jeff Zucker

@jeff-zucker

@theWebalyst that particular use of external in the webpack (rdflib sets solid-auth-cli to null) basically says - rdflib depends on solid-auth-cli so include it but if we're building the browser version of rdflib, use solid-auth-client and forget solid-auth-cli exists ... Overall effect is we get one on the command line and one in the browser but never both.

same here with the prodding and poking until ... :-)

Mark Hughes (happybeing)

@theWebalyst

Thanks Jeff, I see the null thing is probably not helpful for this. I shall poke :grin:

Fabian Cook

@fabiancook

@theWebalyst within your module, maybe completely leave out the rdflib dependency, and instead of a dev/peer dependency, then have provided at runtime

Mark Hughes (happybeing)

@theWebalyst

How would I do that?

Fabian Cook

@fabiancook

By doing this with us much as you can, you can reduce coupling... for example I have an fs compatible implementation provided to one of my modules via an options object...

The reasoning behind this... I can now run an almost fully solid compatible implementation in the browser, in react native, and on the server, which can also be deployed in a serverless environment, no dependency on express, or node, or even having a persistent filesystem... if you wanted to just use your normal filesystem in node.js, fine, just pass the fs module no problem, if you want to use anywhere else, use hyperdrive

Next week will be hooking this all up with the databrowser & making it work without solid...Because of all of this, you can also compose a setup where there is no auth required, so just query something directly. And once I have implemented this... https://github.com/o-network/http-copy-symlink/blob/master/README.md... I will be able to define a template for a pod externally & just clone it, template could be on git, another pod, or on dat/ipfs/whatever

Arne Hassel

@megoth_twitter

@fabiancook very happy to read about the data browser - let me know if you get any problem with the work we at inrupt has started to improve it ^_^

Fabian Cook

@fabiancook

I would be great if I could have support or recommendations on the copy via symlink front... I think it would be a great addition to solid, and I could build an implementation (this would be true either way) that supports NSS as well as my implementation

(everything I have built can also replace said component within NSS AFAIK with no problem)

Mark Hughes (happybeing)

@theWebalyst

Update on circular dependencies - I tried some of the hacks from StackExchange here without success so far. I don't really understand how all this works well enough, so I might not be applying the right things in the right place but that's nothing new for me with nodejs!

I'm curious though that from the initial responses, people say npm should take care of this. This makes me wonder if the issue is during development because I'm using yarn link rdflib in safenetworkjs. Again I don't understand how node modules are processed well enough to think about this.

I may have to resort to something crude like inserting the functionality on a global object. I wanted to avoid that so that the only change needed to a Solid app would be to use a different solid-auth-client, and not change any of the code itself.

So I'm going back to thinking a Solid app would use a SAFE compatible solid-auth-client as follows:

use of link can be handy, but it's a bit of a footgun in my experience, so I've always avoided it

Mark Hughes (happybeing)

@theWebalyst

How do you develop without it?

footgun - not heard that before! :laughing:

Scott McWhirter

@konobi

@theWebalyst I just do? If I have a complex arrangement between various packages, I'd tend to tweak the npm package.json to point directly to the path of where the dependent scratchpad space is rather than just a name

Grrr, your suggestion sounded so promising @konobi but I now get the memory allocation error while doing the 'npm install' of my local rdflib! It may help me isolate the problem all the same and its good to have another tool in the bag, so thanks for the suggestion.

Mitzi László

@Mitzi-Laszlo

@fabiancook the people on the other hemisphere W3C Solid Community Group call were keen to hear more about the conversation you raised last week on "HTTP Signatures & possible deprecation of WebID + TLS and DDI vs HTTP URI for WebID https://w3c-ccg.github.io/did-primer/" @elf-pavlik had some questions. Any chance you could enhance the minutes and explain your thoughts to make sure we're all in sync.

I wasn’t sure how I felt about WebID-TLS at the beginning, but I like it a lot more now that I’ve implemented it. So I personally agree it shouldn’t be the primary authentication mechanism ( https://github.com/solid/solid-spec#primary-authentication ), or even a required one, but I’m not sure it should be deprecated and removed from the spec either.

elf Pavlik

@elf-pavlik

@michielbdejong can you point me to your ACL in JSON-LD files? I can take a look at how you use JSON-LD @context

Mitzi László

@Mitzi-Laszlo

@/all Let me know if you would like to join the team working on Solid Content Generation. Last week when I asked about hurdles faced to building on Solid, over half of the answers stated were related to lack of information. The aim of this project is to generate the content suggestions to provide more information about Solid to reduce the hurdles to building on Solid. If you have ideas about content needed or preferred delivery methods please let me know on https://github.com/orgs/solid/projects/6

jaxoncreed

@jaxoncreed

I’d love to join!

Jeff Zucker

@jeff-zucker

@theWebalyst a non-expert tip from a fellow poker and prodder - sometimes the order of the requires or script tags is significant ...