Weekly Meeting
There is a weekly videoconference, currently using Jitsi. The server details are available on IRC a few minutes before the meeting.
Who | Core developers or interested community members |
---|---|
What | Dev Topics Meeting |
When | Tuesdays 16:00Z-18:00Z (in summer. one hour off in winter) |
Where | Jitsi, IRC fallback |
Why | Voice/video interaction complements IRC/mailing list |
How | See Agenda below |
IRC | join channel "#tahoe-lafs" on irc.libera.chat (port 6697 for TLS) |
(Z "Zulu" time refers to UTC; check where you are, but the meeting is tied to civil time, not UTC, so when the various countries all switch to/from DST, the meeting's UTC time changes)
Old agendas are posted here for the historically curious. Recent meetings don't necessarily have as well-defined an agenda set in advance. Please feel free to suggest items for discussion via any communications channel.
We usually meet in https://meet.jit.si/AccurateFiltersManipulate (but open to other Jitsi hosts or different video+voice services).
Notes from 2024 Meetings
April 30, 2024
attendees: meejah, chris, florian
- chris: working on PR for deterministic keys thing
- chris: asking about formatting, etc
- meejah: do what is close by, if you prefer rebasing/etc fine, but
it'll be "a merge commit to master" in the end (and many intermediate commits are fine from my perspective
- chris: first determinstic-key PR will be just Web API
- meejah: okay so there was .. files before? (there was already
mutable-files, we need this for mutable dirs too)
- chris / meejah agree that the WUI is .. outdated .. and a JSON API
plus CLI is sufficient (i.e. no new WebUI for these keys)
- flo: working on iOS build for private-storage-mobile (re-branded for Tahoe)
- chris: do you have a phone to test on?
- flo: no. working with Android currently still to update dependencies etc (Obelisk, ...)
have an M1 laptop
- flo: trying to figure out what is next, as far as "reading from non-magic-folder"
- Q: do we need / want a "tahoe magic-wormhole subprotocol" that can send capabilities places?
- could "transmit aliases" to another machine with (i.e. extend protocol to have a second message)
April 9, 2024
attendees: meejah, hacklschorsch, ccx, chris, b3n
hacklschorsch: macbook, trying to ... do haskell stuff? (GHC 8.6 works?) so trying to get Obsidian / Obelisk working on\
mac (to be able to build "the mobile GUI"
(meejah provides quick overview of the Haskell Tahoe client stuff we have)
chris / cypher: released Rust library for deterministic RSA keys from BIP32-like words; working towards making one's ow\ n mutable RSA key; some future pairing possibly around the Python API etc.
b3n: working towards Trac removal; need the dump of database + content of folder; "just make a tarball of the trac user\
folder" (plus database dump)
flo: there's "trac-export.db.bz2" served from tahoe-lafs.org/~trac (which we should _probably_ delete)
b3n: there's "trac-admin auth-copy" which should work
meejah: magic-wormhole release, some haskell magic-wormhole; what about hmac stuff? A not-python version?
chris: yeah .. thinking of ways of facilitating different implementations; tahoe libraries?
ccx: ocamljs exists
flo: can we do a read-only browser client to tahoe-lafs?
-> preserves and syndicate -- #preserves channel on Libera
Nim, syndicate -- original impl was in.
Someone is working on a DBUS-like thing on top of PostmarketOS (Alpine with "stuff for phones"). Pub/sub.
ccx: when thinking of a "lightweight" phone client, something like 9p or something to "a node" (i.e. a real tahoe node)
e.g. do "everything except decryption" on "the node".
meejah: sounds interesting! like a "medium-level" API, something like "please assemble this ciphertext, and give it to \ me" so that the client doesn't reveal the "full capability", it stays on the phone.
(some discussion of Web browsers etc)
chris: browser extension, maybe? There's also "sub-source reliability" (??)
ccx: can use browser for some stuff (less-sensitive data, across more people)
meejah: just trying to contextualize a bunch of this stuff, and it's important to understand what is possible (and not \ possible) these days. Agoric has done some thinking around this.
ccx: also sandstorm.io
(meejah aside: sandstorm doesn't (didn't) have accounts, really, just email address .. wonder if they still have that?)
ccx: still grieving death of CloudABI -- extension of capsicum to make a unix-link system on top of FreeBSD.
April 2, 2024
attendees: shapr, b3n, cypher, meejah, (hacklschorsch, Ccx)
shapr: more work on haskell tahoe client, maintainer access to hackage, upgrade ghc version, fixing "partial suppor for byte-ranges" -> "full support for byte ranges"
cypher: published the rust key-generation library; looking at convert tahoe's hashutils into rust; https://github.com/crwood/deterministic-keygen
b3n: gitea testing and proof-of-concept, questions about CI, etc
meejah: released magic-folder, more conflict-resolution stuff, GUI experiments,
hacklschorsch: will look into CI minutes from GitLab? dot com; will look into mobile-app upgrade issues
Q: is the tahoe-lafs "hmac" function actually custom? 0x36, 0x5c (we remember it's in some paper, or something)
Q: what happens if gitlab.com minutes run out? can we take advantage of these runners from e.g. self-hosted Gitea?
Q: has anyone tried sr.ht? (not really; interact with https://git.sr.ht/~meejah/pear-on if you want to try
March 1st, 2024
attendees: meejah, cypher, shapr
- Tahoe-LAFS website looks dead
- move off trac, whatever the cost, or give up and die
- Tahoe-LAFS needs a killer app
- safesext?
- Tahoe-LAFS python codebase is crusty enough for a pastry factory
- rewrite it in rust?
- Maybe spritely is the next incarnation of the big ideas behind Tahoe-LAFS?
- https://spritely.institute/ give up on Tahoe-LAFS and write guile instead?
in the next episode, we discuss trac extraction, spritely goblins, and agoric
February 20, 2024
attendees: meejah, cypher, hacklschorch
- on PyPI "zero-knowledge-access-pass-authorizer" has only jean-paul as maintainer
- hacklschorsch, chris don't have access to the repo etc
- hacklschorsch working on other stuff / not tahoe-lafs
- (e-tonic?)
- what does flo want to work on? (maybe in two weeks)
- mobile stuff
- research browser stuff
- "build haskell stuff into webassembly"..?
- mobile-app
- talk to plain tahoe servers
- iOS ("maybe easy if lucky, maybe not")
- "uploading"
- hacklschorsch thinks we already don't use ZKAPs at all in the mobile thing (i.e. it speaks just GBS to "normal" tahoe servers)
- hacklschorsch's plan: in a couple weeks, would like to try to tackle the "mobile app" things (iOS + "no ZKAPs")
- cypher: gridsync effectively maintenance mode for now? (no clarity on what to do)
- cypher: do recovery-phrases feature
- get the rust library going (CI, wheels, ..)
- tahoe side: how to provide own RSA key to "dircap" WUI (you can do this for "regular mutable file" but not for directories)
- rust etc
- meejah: would be good for the BIP39-words thing to be part of the WUI (alongside the "here's a private key" API)
- h: please update #tahoe-lafs topic about meeting 18:00UTC
February 13, 2024
attendees: meejah, cypher
Updates on what we've been up to.
- cypher looked at BIP32 Rust library; wants to be on crates, PyPI, python bindings
- meejah looked at contributed Py2 PR, magic-folder bug (via IRC), magic-folder conflict resolution and some magic-wormhole interface issues (delegated vs. deferred wormhole features)
Some discussion of desired behavior from magic-folder on conflicts.
- protocol should be general (software can make specific choices). When possible.
- on new incoming data, prefer to update
- on existing conflict, update the marker-file with the new content
- if new conflict, download add to content marker (even if file is 'already' conflicted with different participant)
Cypher will file a bug identifying issues with the "read-only" option for joining folders (docs missing, behavior seems wrong: it's not actually optional)
February 6, 2024
attendees: meejah, cypher
Open-ended discussion / brainstorming about:
- aspects of magic-folder conflict resolution (for >2 party conflicts).
- very broad outline of work required to be able to specify keys for mutable directories
- general next steps for both of the above:
- chris will be looking into Rust library + Python bindings for BIP39 -> key transforms
- meejah working through test-cases for magic-folder conflict resolution
- medium-term: Gridsync / UX for above
January 30, 2024
attendees: meejah, ccx, hackleschorsh, chris
- discussed current and future work (i.e. what people are working on now and what they want to work on in future)
- meejah: familiarizing with magic-wormhole and magic-folders so a new release can be produced; reviews and bug-fixes related to 1.19.0 release bugs (cbor2, ...)
- chris: will likely be looking at "recovery phrases" soon (so one can specify the private-key for a mutable using BIP39 style words)
- ccx: interested in share-placement, especially related to "repair"
- hackleschorsch: interested in packaging
- some (re-)discussion of self-hosting / moving from tahoe-lafs.org Trac instance to something else (e.g. sourcehut, forgejo, gitea, gitlab, ...)
- clarity around timing of this meeting (including a calendar file somewhere, e.g. on this wiki). (we actually started at 1800UTC today, which works for these attendees)
Historical Content
Agenda for next meeting (30-Aug-2016)
- tor/i2p client support landed! #2788, #517
- #2816 (disable listener): are folks comfortable with the syntax?
- #1010 (anonymous mode): discuss the proposed semantics
- discuss what other anonymity code needs to land before release: #1942, #2384, #2490 (create-node/create-client CLI args), #2773 (create-node --port/--location/--hostname)
- #2815 (document manual config of .onion server)
- at what point can we close #517?
- multi-introducer: can we just use tahoe.cfg introducer.petname1.furl= lines?
- #68 (introless): can we just omit introducer.furl= ?
- check in with Daira on status of cloud-backend branch
- Science Hour: agoric-mode tahoe grid: minimum BTC/ETH txn fees limits number of payment relationships: discuss
Other Stuff
We switch chat tools every few months, in an attempt to overcome performance problems. Tools we've used:
- Google Hangouts
- https://appear.in/tahoe-lafs
- https://talky.io/tahoe-lafs
- https://vline.com/
- https://chat.skyway.io/
- https://opentokrtc.com/
Most require a browser extension to enable screensharing.
We frequently keep notes on an etherpad, the URL for which is posted at the start of the meeting. Patrick McDonald? turns these notes into the Tahoe Weekly News.
Other resources that usually get referenced during the course of the meeting:
- https://tahoe-lafs.org/trac/tahoe-lafs/timeline
- https://github.com/tahoe-lafs/tahoe-lafs/pulls
- https://tahoe-lafs.org/buildbot-tahoe-lafs/waterfall?show_events=true
- https://travis-ci.org/tahoe-lafs/tahoe-lafs
- https://ci.appveyor.com/project/tahoe-lafs/tahoe-lafs
Proposed Future Topics
- #1382 #1382 #1382 and #1382; It is almost done. Is it done? Maybe we need one more round of code review‽ Can we merge it?
- #2125 (amiller wants to work on it)
- do code-review on the tickets that already have patches written for them! Milestone 1.11.0
- POSSIBLE AGENDA ITEM: Tahoe-LAFS over I2P, Tor, and/or cjdns by Twisted Endpoints (pycryptopp #203) because https://pypi.python.org/pypi/txi2p exists now!
- POSSIBLE AGENDA ITEM: let's do ChaCha20⊕AES (pycryptopp #84 and Tahoe-LAFS #1164).
- Noether status report by Daira ("TESLA COILS AND CORPSES")
- Rainhill design review which Daira will distribute; call for outside crypto expert reviewers ("TESLA COILS AND CORPSES")
- Proof-of-Retrievability In The Presence Adaptive Adversaries by Zooko ("TESLA COILS AND CORPSES")
- Awesome Generalized Authenticated Data Structures, Part 2 by Andrew ("TESLA COILS AND CORPSES")
- Awesome Generalized Cryptocurrencies, Part 2 by Brian ("TESLA COILS AND CORPSES")
Notes / Archives
2014-03-24
- foolscap, I2P, IPv6, Tor, Twisted endpoints, HTTP transport, HTTP/2
2014-03-20
- 1.11.0 release blockers, including #1382
2014-03-06
- post-Tahoe-LAFS/new-PetMail/"FireFoxTahoeThing" ideas from Brian Warner, about how to do introduction, sharing, and garbage-collection.
2014-12-13
- ("NUTS AND BOLTS"): #1382
2014-12-12
- ("NUTS AND BOLTS"): #1382
2014-02-06
- ("NUTS AND BOLTS"): #1382
2013-11-14
- ("NUTS AND BOLTS"):
- plans for Tahoe-LAFS Summit next week in SF.
- #1382 #1382 #1382 and #1382 (because Mark_B and Zooko will both be in this dev chat and they want to work on comment:50:ticket:1382)
2013-10-23
- ("NUTS AND BOLTS"):
tests of packaging
publish buildbot config
travis-ci
tests of packaging:
- pip install allmydata-tahoe (currently fails due to Nevow bug #XXX )
- python setup.py install (currently doesn't install deps) (ticket #XXX )
- the tests from the old buildmaster and from the old misc/build_helpers/test*.py
2013-10-02
2013-09-11
- ("NUTS AND BOLTS"): code-review on the tickets that already have patches written for them! Milestone 1.11.0
2013-08-28
- ("NUTS AND BOLTS"): Agenda: Planning for Tahoe-LAFS v1.11 release!
What will be new in Tahoe-LAFS v1.11? Here is the list of v1.11 tickets already closed: Here is the list of v1.11 tickets awaiting code review.
2013-08-21
- ("NUTS AND BOLTS"): Agenda: I2P, v1.11 release, Mark's tickets
2013-08-07
- ("NUTS AND BOLTS"): Agenda: GSoC, #1870, Buildbot
2013-07-31
2013-07-16
- ("NUTS AND BOLTS"): Agenda: GSoC, #1382
2013-07-09
- ("NUTS AND BOLTS"): Agenda: Tahoe-LAFS v1.11 ticket triage
2013-07-04
- ("NUTS AND BOLTS"): Agenda: "Mark Berger's improvements to immutable peer selection"
2013-06-20
- ("NUTS AND BOLTS"): Agenda: "Mark Berger's improvements to immutable peer selection"
2013-05-30
- ("NUTS AND BOLTS"): Agenda: "Write some patches for Tahoe-LAFS v1.11!"
- Leif's recent patches to the WUI (#1973)
- improve the design and beauty of the WUI (https://github.com/tahoe-lafs/tahoe-lafs/pull/32 , #1492)
- fix defects in the WUI (#1993, #1931, #1375, #1462, #1502, #1961, #622, #311, #525, #631, #1588, #1645, #1706)
- write cool new WUI (#1942, #1369, #1551, #1499, #277)
(I can't remember whether we actually followed the agenda.)
2013-05-02
- ("TESLA COILS AND CORPSES"): Agenda: "Post-LAFS: What would you invent (or are you inventing) now that you already understand Tahoe-LAFS? Possibilities: LDMF (fancier authenticated data structures), Brian's secret file-sharing project within Mozilla, BitTorrent Sync, saying 'Okay, storage is good enough, let's work on decentralized currencies/payment-systems instead.'"
Actual topic turned out to be "Post-Bitcoin" instead.
2013-04-25
- ("NUTS AND BOLTS"): Google Summer of Code project planning
2013-04-18
- ("TESLA COILS AND CORPSES"): Andrew Miller: "type-directed security definitions for generic authenticated data structures"
2012-04-11
- ("NUTS AND BOLTS"): IPv6 and tests thereof
2012-03-14
- ("NUTS AND BOLTS"): Tahoe-LAFS v1.10 patches; 1.10.0, contribute patches, tests, docs, or comments.
2012-03-07
- ("NUTS AND BOLTS"): Tahoe-LAFS v1.10 patches; 1.10.0, contribute patches, tests, docs, or comments.
2013-02-28
- ("TESLA COILS AND CORPSES"): (attempt number 3) Iraklis's research in applying Ristenpart's Message-Locked Encryption to LAFS. This requires extending the model of Message-Locked Encryption, and it suggests interesting directions for future extensions of LAFS.
2012-02-21
- ("TESLA COILS AND CORPSES"): (attempt number 2) Iraklis's research in applying Ristenpart's Message-Locked Encryption to LAFS. This requires extending the model of Message-Locked Encryption, and it suggests interesting directions for future extensions of LAFS.
2012-02-14
- ("TESLA COILS AND CORPSES"): Iraklis's research in applying Ristenpart's Message-Locked Encryption to LAFS. This requires extending the model of Message-Locked Encryption, and it suggests interesting directions for future extensions of LAFS.
2012-01-31
- ("NUTS AND BOLTS"): Tahoe-LAFS v1.10, new WUI, "timeline" visualization, https://LeastAuthority.com commercialization of Tahoe-LAFS
…
[some weekly hangouts were skipped due to travel]
2012-01-10
- ("NUTS AND BOLTS"): Tahoe-LAFS v1.10
2012-12-13
- ("NUTS AND BOLTS"): documentation and internationalization
- ("NUTS AND BOLTS"): Tahoe-LAFS v1.10
- ("TESLA COILS AND CORPSES"): new secure hash function
2012-12-06
- ("TESLA COILS AND CORPSES"): Proofs-of-Retrievability!
2012-11-29
- ("NUTS AND BOLTS"): documentation
- ("TESLA COILS AND CORPSES"): distributed introduction, defense against rollback attack
2012-11-22
- ("NUTS AND BOLTS"): work on Tahoe-LAFS v1.10 tickets!
2012-11-15
- ("TESLA COILS AND CORPSES"): async notifications
What a lot of people really want is an alternative to Dropbox — something that functions very like Dropbox but without exposing your plaintext to spying and corruption. David-Sarah implemented a part of this with the drop-upload feature. It seems to me that the blocker which prevents Tahoe-LAFS from doing the rest of it is that LAFS clients have no way to get an asynchronous notification that a file has changed (i.e., so that they don't have to poll to find out if the file has changed). So: could we add that? Why not just define a remote interface offered by LAFS clients to LAFS servers. The remote interface is "hey_you_this_file_has_changed(storageindex)".
2012-11-08
("NUTS AND BOLTS"):
- #1240; Is it done? (I think it still needs fixed tests.) Can we commit it to trunk and be done with it? Do we need to merge it with #1679?
- #1679; Let's write a test for it! Has The Dod had continuous good service since he applied the patch? Has nejucomo tried reproducing his bug and applying the patch?
2012-11-01
("TESLA COILS AND CORPSES"): Garbage collection: use cases and protocols;
- #1832 (support indefinite leases with garbage collection)
- #1833 (storage server deletes garbage shares itself instead of waiting for crawler to notice them)
- #1834 (stop using share crawler for anything except constructing a leasedb)
- #1835 (stop grovelling the whole storage backend looking for externally-added shares to add a lease to)
- #1836 (use leasedb (not crawler) to figure out how many shares you have and how many bytes)
- #1837 (remove the "override lease duration" feature)
And the associated mailing list thread.
2012-10-23
Topics: Ticket #1240, Tahoe-LAFS birthday party, future agendas.
Attendees: Zooko, David-Sarah, amiller, ambimorph, nejucomo.
Concise summary:
- #1240 debug session - Incorrect caching logic suspected.
- Tahoe-LAFS birthday party - Saturday, 2012-10-27 at 23:00z - Each locale connects with a projector + google hangout.
- Future agendas - next week, Proof of Retrievability paper review; two weeks out, Rainhill review with outside crypto reviewers.
Finely detailed notes in MeetingNotes_2012_10_23
2012-10-16
Topics: Proof-of-Retrievability
Attendees: Zooko, David-Sarah, nejucomo
From IRC, Zooko summarizes (edited for spelling):
- "The reason we can do better than the previous state of the art is that we've expanded the setting to multiple servers and multiple clients, which opens up new defenses for the good guys against Ponda Baba."
- "It is useful way to think, to start with the completely safe camouflaged download protocol: just run your normal verifier, but tell it to save what it gets, and then to talk about how to make it faster without breaking camouflage."
- "There are two dimensions of how you might be able to make it faster: the dimension of multiple downloader/verifiers and the dimension of multiple servers."