snarfedhey aaronpk, for indieauth's auth flow, if i don't include a state param when i redirect, but it gives me a state param value back in the callback URL, is that expected?
cmalso if anyone has pointers (pun intended) regarding a filesystem or just about anything that could allow me to inject binary data at a certain point without overwriting the data already present, and without requiring to read/copy the entire file content… :-/
cmal(full-disclosure: I was just trying to implement some binary search to find entries (works fine) and insert entries (doesn't) in huge ordered collections
cmalor I could just give up on the time-ordering but then, if I'm adding an article to a collection (say, a tag) it will appear at the top of the collection (which is expected in some collections for reshare purposes, but I would not expect this behaviours in streams (as defined by ActivityPub)
cmalthe closest I've found so far would be FALLOC_FL_INSERT_RANGE (supported by ext4 and xfs), but the practical limitation is that the inserted data must be a multiplication of the logical block size (to keep block-alignment)
cmalso that would mean inserting data in the middle of the file would require to allocate N blocks and rewrite there data from the next blocks until we reach alignment, which is probably less horrible than rewriting all the data until EOF, but is tricky when the size of data doesn't really fit in the block (for example, 200 bytes blocks inserting 199 bytes data would be terrible)
cmalyeah I'm not really convinced by sparse files, mostly because the program running will just see a bunch of empty bytes (which somewhat mitigates my attempt to move throughout the file using fseek)
cmalor I could indeed store the offset along with the chunk reference in the main index and that would make finding the right timespan even easier I guess
KevinMarks_If you're doing your own block management you're recreating the file system, but without the hardware coupling. You're probably better off just rewriting the file
aaronpkin my QuartzDB i only ever append to the file. i made a "maintenance task" that I can run periodically to re-sort the file if I'm worried that some data was inserted out of order.
cmalI'm actually running down the path of a collection comprised of different chunks (each one in a file) and I think it's not such a bad way to deal with the issue at all
sknebelcmal: right now I don't have that many posts, once that becomes an issue I'll probably add directory layers like aaronpk said. Or replace the directory with sqlite, or ...
sknebel(and yes, listing all files in a directory is a relatively slow operation, but I'm sure there are a lot of relatively slow operations in my setup ;))
cmalas I said, it's more the goals and means that are interesting more than the implementation itself (at least for the moment, we'll see what it turns out to be a year from now)
voxpellirisk assessments etc makes it a lot harder to include AGPL code than to include MIT/BSD one. I barely know where to start to get an approval for that kind of code inclusion
voxpelliI much rather have everyone be able to use my code and to contribute to it, no matter if their legal or business teams find the risk of AGPL to be acceptable or not
cmalalthough, I'd say a freedom-enforcing mechanism like copyleft, which only practices constraints on those trying to privatize stuff, is actually the closest you get to "freedom to be free" in the context of systemic oppressions (like standard copyright when it comes to code)
Loqi[Will Norris] imageproxy is a caching image proxy server written in go. It features:
basic image adjustments like resizing, cropping, and rotation
access control using host whitelists or request signing (HMAC-SHA256)
support for jpeg, png, and gif image f...
voxpellicmal: the classic case of MIT/BSD vs GPL :) And funnily enough those using AGPL the most is those who wants to keep their open stuff as private as possible ;)
cmalanyway I'll settle for saying this is just legalese bullshit anyway and once we've abolished the State we won't have to talk about such boring lawyering anymore, deal?
voxpelliI think Google picks ASL and I guess that can have its benefits over eg Facebook that picked a standard BSD for React, but with a custom patents clause that has caused some drama
sknebelthat Imgix stuff always confused me (MacOS APIs can't be *that* superior to make that worth it, can they?), but that's the kind of thing GPUs are really good at, so if you have to do it a lot...