Skip to content

Releases: dimkr/tootik

0.15.1

16 Jan 06:45
Compare
Choose a tag to compare

Added

  • Nothing!

Removed

Nothing!

Bug Fixes, Performance and Maintenance

  • Fix for empty Lemmy group outbox due to a typo that breaks handling of forwarded activities
  • "Followed users" is now much faster when following an actor with many posts, like a Lemmy group
  • Page contents are still buffered (on a line boundary, with a buffer size of 16 lines), but the buffer is now flushed after 100ms: this makes slow pages feel faster because the client shows the title while waiting for the content
  • Activity IDs now use UUIDv7 instead of SHA-256
  • Imports are now sorted the gopls way

0.15.0

12 Jan 17:33
Compare
Choose a tag to compare

Added

  • The user's own posts now appear in the feed, immediately (#110)
  • The pattern used to validate user names during registration is now configurable (#108)
  • tootik now fetches forwarded activities from the server they originally came from, and enforces a same-origin policy on
    • Activities and the objects they act on
    • Posts and authors
    • Forwarded deletion events and the deleted objects
    • ...

Removed

Nothing!

Bug Fixes, Performance and Maintenance

  • More gopls fixes

0.14.1

07 Jan 06:55
Compare
Choose a tag to compare

Added

  • Optional user and post counts in NodeInfo 2.0 response, off by default (FillNodeInfoUsage)
  • Security hardening tips in the setup guide

Removed

Nothing!

Bug Fixes, Performance and Maintenance

  • The direct dependency on golang.org/x/sync is dropped and context.Context aware locking is implemented using a buffered channel

0.14.0

22 Dec 10:52
Compare
Choose a tag to compare

Added

  • Support for multiple client certificates
    • With list of certificates at /users/certificates, each with SHA-256 fingerprint and expiry date
      • Will show 2100-01-01 for certificates added before 0.14.0
      • With ability to approve or deny a newly added certificate, or revoke access for a previously approved certificate
  • Validation of client certificate expiry date when authenticating
  • Forwarding of Update and Delete activities
    • For replies in a thread started by a user with followers
    • For posts and replies in a community
  • Result graphs for polls without any votes yet

Removed

  • Ability to select the username duration registration and override what's in the CN property of the client certificate
    • Attempts to register with an existing username add the client certificate to the list of certificates waiting for the user's approval

Bug Fixes, Performance and Maintenance

  • Poll results are updated to 0 when all votes are deleted
  • Undo activities are sent to the recipients of the matching Create activities, plus current followers

0.13.0

19 Nov 06:41
Compare
Choose a tag to compare

Added

  • Bookmarked posts
  • Improved compatibility with Friendica and possibly other ActivityPub servers with Group actors
  • More friendly error messages when profile changes are throttled

Removed

  • Support for fetching public posts through the user's outbox endpoint: it seems unused

Bug Fixes, Performance and Maintenance

  • The default configuration now makes sqlite run in synchronous=NORMAL mode
  • The special "nobody" user is now of type Application, clearly marking it as an "instance actor"; this may improve compatibility with other implementations of ActivityPub
  • Dependency and Go updates
  • Reduction of gopls warnings

0.12.6

17 Oct 13:29
Compare
Choose a tag to compare

Added

  • More user-friendly error messages when posting or editing is throttled

Removed

  • Graceful termination of the HTTP server during shutdown

Bug Fixes, Performance and Maintenance

  • Fix for deadlock during shutdown when waiting for Gemini or Guppy requests to finish
  • Fix for inability to delete a reply when the parent post is deleted

0.12.5

07 Oct 05:28
Compare
Choose a tag to compare

Added

  • Logging of the user name when handling Gemini requests, including invalid ones

Removed

  • The restriction that prevents users from voting on their own polls

Bug Fixes, Performance and Maintenance

  • Dependency and Go updates
  • Various README.md improvements

0.12.4

20 Sep 09:20
Compare
Choose a tag to compare

Added

  • HTTP response sizes are now validated against the new MaxResponseBodySize configuration key, instead of MaxRequestBodySize

Removed

  • The GuppyResponseChunkSize configuration key

Bug Fixes, Performance and Maintenance

  • Guppy responses are now line-buffered and streamed
  • Cached responses are now sent in multiple chunks and not as a single chunk
  • More resolver tests with coverage for edge cases like huge responses

0.12.3

15 Sep 05:31
Compare
Choose a tag to compare

Added

Nothing!

Removed

Nothing!

Bug Fixes, Performance and Maintenance

  • Thread view is now streamed
  • HTTP requests are now handled with 30s timeout
  • More efficient handling of big HTTP responses
  • Fix for breakage of search when using Guppy
  • Encapsulation of function arguments and logging through the default logger
  • Dependency and Go updates

0.12.2

04 Sep 06:21
Compare
Choose a tag to compare

Added

  • The Content-Length header, in outgoing POST requests, to allow validation and memory pre-allocation in the receiving server
  • Validation of the Content-Length header against MaxRequestBodySize (if specified), instead of reading response[:MaxRequestBodySize], trying to parse it and failing if truncated

Removed

Nothing!

Bug Fixes, Performance and Maintenance

  • Followed users list is now faster because it uses the new feed table to sort followed users by latest activity, and the page contents are streamed while reading result rows
  • Fix for harmless warnings about inability to send the response, when generating a cached response