summaryrefslogtreecommitdiffstats
path: root/packages
Commit message (Expand)AuthorAgeFilesLines
* fix(node): link previews connect to the address they checked, without blockingChristophe Besson9 days3-55/+198
* fix(node): how a hosted group admits people is the operator's, not the hub'sChristophe Besson9 days11-33/+202
* fix: an identity signs a named kind, and a device approval answers a requestChristophe Besson10 days17-66/+636
* fix(hub): the pepper and a device key take the passphrase, not a tokenChristophe Besson10 days9-39/+134
* feat: browser access, decided in the desktop applicationChristophe Besson10 days19-5/+231
* feat(client): the desktop application keeps M and every node identity in its ...Christophe Besson10 days25-59/+873
* refactor(hub): the transport holds an identity, never a private keyChristophe Besson10 days13-99/+140
* chore: bump version to 0.17.0, and the client minimum with itChristophe Besson10 days8-9/+13
* feat: bundles sealed per node under the passphrase and the hub's pepperChristophe Besson10 days30-479/+682
* feat(hub): a bundle pepper per account, handed only to a proven sessionChristophe Besson10 days5-0/+283
* fix(hub): a downloaded file opens in a tab only under a type that runs nothingChristophe Besson10 days5-24/+111
* fix: the page connects to its own origin and reCAPTCHA, nowhere elseChristophe Besson10 days3-9/+20
* fix(client): the page names node operations, and the app confirms what widens...Christophe Besson10 days23-191/+548
* fix(hub): the admin allow-list grants an account, not a usernameChristophe Besson10 days5-18/+269
* fix(node): the roster, not the key alone, decides who gets a sessionChristophe Besson10 days4-18/+186
* fix: only the owner decides who hosts a group, and nobody is made a member un...Christophe Besson10 days40-84/+1521
* fix: a member can no longer lock a node, crash it with a link, or stop hub cl...Christophe Besson10 days6-84/+484
* feat(hub): search title, description, canonical and noscript in the shellChristophe Besson10 days3-4/+67
* feat(hub): sitemap.xml, named by robots.txtChristophe Besson10 days3-1/+37
* refactor(hub): remove the closed relay registryChristophe Besson12 days4-259/+0
* refactor(node): remove five loopback routes nothing calledChristophe Besson12 days1-45/+0
* docs: keypair_bundle_delete is reserved for device_policy (O3)Christophe Besson12 days1-0/+4
* refactor: drop the unread transfer_limits field from the handshake ackChristophe Besson12 days3-35/+17
* feat(client): save files under a name every platform can writeChristophe Besson12 days18-7/+236
* feat(hub): reports from public-group members, decided by an administratorChristophe Besson12 days21-113/+908
* feat: nodes apply the content blocklist in their public groupsChristophe Besson12 days15-55/+627
* refactor: remove the public-content swarmChristophe Besson12 days11-329/+57
* fix: bound pending admin challenges and sign every value an op acts onChristophe Besson12 days16-110/+540
* refactor: remove dead code across packagesChristophe Besson12 days23-784/+10
* refactor: remove the unused GroupIndex.serialize chainChristophe Besson12 days11-388/+41
* fix: refuse an unsigned handshake challengeChristophe Besson12 days4-42/+35
* feat(hub): new login tagline, dimmer gradient topChristophe Besson12 days11-11/+11
* fix(hub): say so when a lazily loaded view cannot be fetched0.16Christophe Besson12 days15-5/+277
* feat(hub): keep a show's detail modal open under the playerChristophe Besson12 days6-4/+373
* fix(node): tell whether a pid is alive on Linux tooChristophe Besson13 days1-0/+8
* test: make both suites pass on WindowsChristophe Besson13 days85-266/+293
* fix(hub): the sidebar's Node section follows the node linkChristophe Besson13 days3-8/+90
* fix(hub): say "No operator paired" only when the node says soChristophe Besson13 days2-4/+60
* fix: Windows installer and desktop app start and stop the node one wayChristophe Besson13 days14-239/+760
* fix(node): a Windows daemon that stops properly, starts honestly and runs onceChristophe Besson13 days10-215/+948
* fix(hub): depend on sqlalchemy[asyncio]Christophe Besson13 days1-1/+1
* fix(hub): rate-limit per client, not per proxyChristophe Besson13 days2-3/+55
* fix(node,client): query TMDB only once a language is chosen, in that languageChristophe Besson2026-09-268-1/+278
* fix(node): read the packaged TMDB token in placeChristophe Besson2026-09-263-74/+58
* feat(hub): default email opt-outs and match Register to Login stylingChristophe Besson2026-09-264-16/+37
* fix(hub): the NAT-punch signal needs a shared active group, like the offer relayChristophe Besson2026-09-263-52/+136
* feat(protocol): bind the MNP token to the node it is for (E10)Christophe Besson2026-09-2611-13/+100
* fix(node,client): survive a transient hub state on login, and surface a faile...Christophe Besson2026-09-253-5/+135
* feat(protocol): MNP 4.0 flag day for the node-audience token (B2)Christophe Besson2026-09-255-70/+86
* fix(hub): present a node-audience token in the handshake, not the hub session...Christophe Besson2026-09-2515-38/+284