be more consistent with patchbay.
%41jFAuKIKtPVWcGercJMvSqXhT3OL7OgIGgGK0CHqlk=.sha256
master
from modules
be more consistent with patchbay.
This pull request updates patchwork-next to use the latest version of patchbay, which brings in the key idea of merging layers of modules. The idea of merging layers is intended to enable easily distributing separate curations of patch* ui features - so patchwork-next is a good test of that!
I'm not expecting you to merge this as is, but am making this PR to negioate a common direction.
Currently, to run this, start an sbot and run electro main-window.js
. Gonna get patchwork-next style working next.
I had to bash around to get the styles working, as I said I will tidy up before we merge, but just for discussion...
c3ab9263
· 11/12/2016, 2:17:19 PM809c5198
· 12/2/2016, 9:33:43 AMhey @dominic, is it cool if i take over this pull request? i realized before i can update patchbay
to support something in patchwork-next
, i need this done. it's also a nice way to learn both the patchbay
and patchwork-next
codebases.
however i noticed that there's no way to dependency inject the config, which leads to duplicate module declarations if really you just want to change the default config overrides.
so i had an idea to create some "base" modules: %hFAgSbS... (git-ssb.celehner.com
). i got stuck on how to do sbot.js
(almost need dynamic module injector, like an init
function for each module, because some module definitions depend on other modules being defined), is this a terrible idea or a good idea?
also @dominic, do you remember anything that would be on your mental TODO list here?
Please do! so i think the main TODO is get npm start
running in a way that @matt likes.
I was running patchbay with electro
, but ferment wants a thing that can start the sbot and the ui within one command. I actually quite like the way that ferment does this with sbot inside a hidden "window".
4563b964
· 12/3/2016, 9:54:42 AM32d251a7
· 12/4/2016, 9:53:20 AM@matt can i haz review? :peach:
(a nice side-effect of this pull request is that composing a message now includes emoji auto-completion.)
@dinosaur nice, I'm fairly happy with this approach :sunglasses:
Just an opinion, but I prefer using
~
for deps likepatchbay
andscuttlebot
so thatnpm install
is all people need to make sure they are running the latest version. It also makes things a little more atomic.The dependency
ursa
is failing to build on my machine. This seems to be a dep ofssb-ws
.> ursa@0.9.4 install /Users/matt/Code/patchwork-next-dominic/node_modules/ursa > node-gyp rebuild CXX(target) Release/obj.target/ursaNative/src/ursaNative.o In file included from ../src/ursaNative.cc:3: ../src/ursaNative.h:13:10: fatal error: 'openssl/rsa.h' file not found #include <openssl/rsa.h>
Maybe
ssb-ws
should be made an optional dependency ofpatchbay
to prevent it from breaking the build?Upgrading to the latest patchbay seems to have broken styling of about messages, but these are in desperate need of work anyway.
Also, auto-complete doesn't seem to be highlighting the selected item (on both emoji and name pickers).
But otherwise, things seem to be working nicely :)
@Matt I ran into the openssl/rsa.h
missing thing too, this seemed to fix it
$ brew uninstall openssl --ignore-dependencies
$ brew install openssl
we can ditch usra. (or make it optional) since it's only needed for letsencrypt
which had other problems with it.
I haven't been able to get that letsencrypt
module working at all. I say rip it (and ursa) out.
I use caddy and redirect ssb-ws to /ws
. This kind of makes the --modern
invite setup a little finicky because I have to manually edit them from ws://...:8989
to wss://.../ws
.
99aead0a
· 12/7/2016, 8:47:49 AMd3526827
· 12/9/2016, 3:05:15 AMhey @matt, so local peers show up as connected pubs in the sidebar. any recommendations on where to look to fix this? chur.
It's probably this:
modules/sbot.js:183
//this can actually be implemented by filtering gossip.peers
sbot_list_local: rec.async(function (cb) {
cb(null, [])
//return sbot.local.list(cb)
})
and modules/public.js:35
:
var connectedPubs = computed([connectedPeers, localPeers], (c, l) => c.filter(x => !l.includes(x)))
@dominic disabled this because it is not compatible with stock sbot.
If local peers actually worked properly, this hack wouldn't be neccessary, and we could just use gossip.peers as dominic suggests. But the advantage to sbot.local.list is that it is actually a realtime list of local users that are broadcasting the udp message, rather than peers you are actually connected to. This means they disappear when users go offline rather than staying in your peer cache.
since letsencrypt is already an optional dependency, it should work as it is. I think the simplest is to just completely remove letsencrypt. can figure out a better way to add that again later.
Built with git-ssb-web