<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tesseras-paste, branch main</title>
<subtitle>Decentralized pastebin built on tesseras-dht
</subtitle>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/'/>
<entry>
<title>Show chunk progress during large paste uploads</title>
<updated>2026-03-28T01:00:56+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-28T01:00:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=b914f856d6d907b9c509e79382ee25ea5b1b2f01'/>
<id>b914f856d6d907b9c509e79382ee25ea5b1b2f01</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add chunked paste support for content up to 1.44 MB</title>
<updated>2026-03-28T00:54:25+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-28T00:54:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=b4228aa74f6ef4720167236cb072b84d94aa6d2a'/>
<id>b4228aa74f6ef4720167236cb072b84d94aa6d2a</id>
<content type='text'>
Large pastes are split into 8 KiB chunks on the client side,
each stored separately in a dedicated chunks/ directory.
A version-2 manifest paste lists the chunk hashes and is
announced to the DHT; chunks replicate via periodic republish
with per-put throttling to avoid rate-limit bans.

- New PUTC/PUTM protocol commands for chunks and manifests
- Client-side chunking avoids O(n^2) base58 on large content
- HTTP handler reassembles chunks directly from store
- DHT sync routes incoming chunks to chunks/ directory
- Republish interval reduced to 5 min with 200ms throttle
- tp.1 updated with new 1.44 MB limit
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Large pastes are split into 8 KiB chunks on the client side,
each stored separately in a dedicated chunks/ directory.
A version-2 manifest paste lists the chunk hashes and is
announced to the DHT; chunks replicate via periodic republish
with per-put throttling to avoid rate-limit bans.

- New PUTC/PUTM protocol commands for chunks and manifests
- Client-side chunking avoids O(n^2) base58 on large content
- HTTP handler reassembles chunks directly from store
- DHT sync routes incoming chunks to chunks/ directory
- Republish interval reduced to 5 min with 200ms throttle
- tp.1 updated with new 1.44 MB limit
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump version to 0.1.3, update tesseras-dht to 0.1.4</title>
<updated>2026-03-27T14:58:41+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-27T14:58:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=75fddf425102369828f7e8366ebdad4ea086fd07'/>
<id>75fddf425102369828f7e8366ebdad4ea086fd07</id>
<content type='text'>
- Block marker on delete prevents DHT re-import
- Remote delete propagation via delete_callback
- New index page with project info and man page links
- Fix lookups status order (started/completed)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Block marker on delete prevents DHT re-import
- Remote delete propagation via delete_callback
- New index page with project info and man page links
- Fix lookups status order (started/completed)
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump version to 0.1.2, update tesseras-dht to 0.1.3</title>
<updated>2026-03-27T03:48:23+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-27T03:48:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=18fa0f13f64e69bf70addc1e28a8ab0a39207eb2'/>
<id>18fa0f13f64e69bf70addc1e28a8ab0a39207eb2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Document -v flag in tp(1) and tpd(1) man pages</title>
<updated>2026-03-26T01:36:52+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-26T01:36:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=660bc943ba26968692e731963e6b324299519542'/>
<id>660bc943ba26968692e731963e6b324299519542</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump version to 0.1.1, update tesseras-dht to 0.1.2</title>
<updated>2026-03-26T01:28:58+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-26T01:28:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=441775eedc9687c7b038fc3bcf548093eb0a7dee'/>
<id>441775eedc9687c7b038fc3bcf548093eb0a7dee</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add automatic re-join and -v flag for verbose logging</title>
<updated>2026-03-26T01:19:39+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-26T01:19:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=4214189961d59b9de15e221a9c4b229c0d646e78'/>
<id>4214189961d59b9de15e221a9c4b229c0d646e78</id>
<content type='text'>
When the routing table drops to zero peers, the daemon now
re-joins bootstrap nodes every 60s, unbanning their addresses
first so replies are not silently discarded.

Both tp and tpd accept -v for debug-level output without
needing RUST_LOG environment variable.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the routing table drops to zero peers, the daemon now
re-joins bootstrap nodes every 60s, unbanning their addresses
first so replies are not silently discarded.

Both tp and tpd accept -v for debug-level output without
needing RUST_LOG environment variable.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add CHANGELOG.md for 0.1.0</title>
<updated>2026-03-25T20:26:54+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-25T20:26:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=24c3402c9d27fc26bd3afe8c05276f52338514f8'/>
<id>24c3402c9d27fc26bd3afe8c05276f52338514f8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update README, bump tesseras-dht to 0.1.1, add project docs</title>
<updated>2026-03-25T20:19:16+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-25T20:19:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=4c1597e0f28c2bea193818a8d84ff2073ea5c08f'/>
<id>4c1597e0f28c2bea193818a8d84ff2073ea5c08f</id>
<content type='text'>
- Rewrite README with features, usage, and links
- Bump tesseras-dht dependency from 0.1.0 to 0.1.1
- Add CODE_OF_CONDUCT.md and SECURITY.md
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Rewrite README with features, usage, and links
- Bump tesseras-dht dependency from 0.1.0 to 0.1.1
- Add CODE_OF_CONDUCT.md and SECURITY.md
</pre>
</div>
</content>
</entry>
<entry>
<title>Limit stdin read in tp, bound protocol drain, document Arc leak</title>
<updated>2026-03-25T18:49:08+00:00</updated>
<author>
<name>murilo ijanc</name>
</author>
<published>2026-03-25T18:41:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.tesseras.net/tesseras-paste/commit/?id=290f53c38cdacd502eb6dda52f2ad207063e3973'/>
<id>290f53c38cdacd502eb6dda52f2ad207063e3973</id>
<content type='text'>
- tp: limit stdin to 64 KiB + 1 byte to reject oversized pastes
  early without unbounded memory allocation
- daemon: bound the oversized-line drain to MAX_LINE_SIZE so a
  client without newlines cannot block beyond the read timeout
- tpd: document intentional Arc::into_raw leak in signal handler
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- tp: limit stdin to 64 KiB + 1 byte to reject oversized pastes
  early without unbounded memory allocation
- daemon: bound the oversized-line drain to MAX_LINE_SIZE so a
  client without newlines cannot block beyond the read timeout
- tpd: document intentional Arc::into_raw leak in signal handler
</pre>
</div>
</content>
</entry>
</feed>
