Skip to content

Releases: mautrix/go-util

v0.9.8

16 Apr 10:29

Choose a tag to compare

  • Added IsZero for duration wrappers in the jsontime package to be compatible with the omitzero struct tag.
  • Added Clear to exmaps.Set and exsync.Set.

v0.9.7

16 Mar 14:58

Choose a tag to compare

  • Added AddSeq to exmaps.Set and exsync.Set.

v0.9.6

16 Feb 12:18

Choose a tag to compare

  • Bumped minimum Go version to 1.25.
  • (dbutil) Added simpler versions of MakeQueryHelper.
  • (cmd/maubuild) Added support for the c-shared and c-archive build modes.

v0.9.5

16 Jan 12:38

Choose a tag to compare

  • (exhttp) Added utility for configuring a HTTP transport.

v0.9.4

16 Dec 10:08

Choose a tag to compare

  • (exsync) Added methods to swap entire map data and a GetOrSet equivalent with a factory method.
  • (ffmpeg/waveform) Added package for generating waveform data using ffmpeg.
  • (cmd/maubuild) Added tool to replace the build.sh script in bridges.
  • (lottie) Fixed animated webp output not being looped properly.

v0.9.3

16 Nov 10:41

Choose a tag to compare

  • (unicodeurls,confusables,emojirunes,variationselector) Updated to Unicode v17.
  • (dbutil) Added option to log all queries without arguments.
  • (exmaps) Added non-synchronous equivalent of exsync.Set.
  • (exslices) Added utilities for deleting items by value.
  • (exslices) Added non-synchronous Stack type.
  • (exstrings) Added LongestCommonPrefix.
  • (shlex) Added support for line continuations with backslashes.
  • (progver) Fixed linkified version for tags.

v0.9.2

16 Oct 09:22

Choose a tag to compare

  • (progver) Added program version calculation utility like the one used by mautrix bridges and Meowlnir.
  • (dbutil) Added sqlite3-fk-wal-fullsync driver which is otherwise equivalent to sqlite3-fk-wal, but sets PRAGMA synchronous=FULL for better crash resistance.
  • (dbutil) Added explicit error if comment prefix (--) isn't at the start of the line when using dialect filters with the (lines commented) modifier.
  • (exsync) Added NewMapWithData, Clear, Len and CopyFrom methods for maps.
  • (exsync) Added iterators for maps and sets.
  • (jsontime) Changed Unix*() methods and jsontime.U*Int() functions to treat 0 and the zero time.Time value as the same.

v0.9.1

16 Sep 11:05

Choose a tag to compare

  • (dbutil) Added general documentation.
  • (random) Added StringCharset for generating a random string with a custom character set and AppendSequence for generating a random slice with a completely arbitrary types.
  • (exslices) Added methods for deduplicating a slice by custom key.
  • (exsync) Added WaitTimeoutCtx for waiting for an Event with both a timeout and a context.

v0.9.0

16 Aug 10:10

Choose a tag to compare

  • Bumped minimum Go version to 1.24.
  • Breaking change (exhttp) Refactored HandleErrors middleware to take raw response data instead of functions returning response data.
  • (requestlog) Added option to recover and log panics.
  • (exhttp) Added syscall.EPIPE to IsNetworkError checks.
  • (exsync) Added Notify method for waking up all Event waiters without setting the flag. This is the atomic equivalent of Set() immediately followed by Clear().
  • (exbytes) Added UnsafeString method for converting a byte slice to a string without copying.
  • (exstrings) Added CollapseSpaces to replace multiple sequential spaces with one.
  • (exstrings) Added PrefixByteRunLength to count the number of occurrences of a given byte at the start of a string.
  • (base58) Fixed panic when input contains non-ASCII characters.

v0.8.8

16 Jun 13:11

Choose a tag to compare

  • (requestlog) Added option to log X-Forwarded-For header value.
  • (exstrings) Added LongestSequenceOfFunc as a customizable version of LongestSequenceOf