v0.0.1-pre.4
Pre-releasekitsune 0.0.1-pre.4
Another pre-release. It's somewhat regular by now. Let's talk about what changed!
Feel free to join one of the chat options to chat with us!
Both of them are connected via a bridge, so it doesn't matter which one you join
This release includes a fix for GHSA-5prv-r7jg-vrf7
Highlights
Post update support
You can now receive updates to posts from other services!
Notification support
Thanks to @zeerooth Kitsune now has notifications!
Mentions, favourites, reposts, etc. are now aggregated as notifications in your notification timeline.
Support for "webfinger domains"
We now store @user@domain.example
instead of @user@social.domain.example
if it's set-up in a compatible way.
Thanks for this @tesaguri!
Exif data is now stripped from select image formats
Kitsune now automatically strips the Exif data from the following image formats:
- JPEG
- PNG
- WebP
Thanks @zeerooth!
Dedicated job runner
We did some internal restructuring and you can now run headless job runners!
This was done to help you increase parallelism of job execution without running all the baggage of a web server.
Basic UI functionality
Kitsune gained some UI functionality with this release!
You can now check your home timeline, the local timeline, and global timeline; as well as checking out the "preview" of the upcoming rich-text post modal!
Build-time optimizations
Kitsune should now compile faster on most hardware by at least ~30sec.
Remove kitsune-search-server
With this release, we say goodbye to our home-grown search service.
It hasn't been particulary well maintained in general and has only been an additional binary that had to be compiled basically.
OpenTelemetry support
With this release, we retire our old Prometheus scraping endpoint in favour of OTLP push-based metrics.
We also added support for pushing traces (in addition to metrics).
This means you can export traces and metrics to whatever service, as long as they support the (rather ubiquitous) OpenTelemetry Wire Protocol.
Smaller changes
post-processor
rewrite
Our post-processor
crate (which is responsible for parsing your posts, turning mentions into actual mentions, etc.) was fully rewritten.
This rewrite improved performance and the basic transformation benchmark runs in ~212ns.
simple_transform time: [211.68 ns 212.69 ns 213.82 ns]
change: [-1.1595% -0.3741% +0.3490%] (p = 0.34 > 0.05)
No change in performance detected.
Replace jemalloc
with mimalloc
We replaced our memory allocators in this release.
This results in quicker builds and potentially improved performance due to faster allocations.
Updated documentation
Our documentation pages should be up-to-date now!
Automated release builds
We now offer release builds (courtesy of cargo-dist
).
Meaning you can download pre-installed versions of Kitsune from our releases.
We build binaries for:
- Windows (MSVC compiler)
- MacOS (Intel and Apple Silicon)
- Linux (glibc)
This release has incompatible database changes to the previous release.
Until we publish a full first alpha, we reserve us the right to continue making these kinds of breaking changes.
Install kitsune 0.0.1-pre.4
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/kitsune-soc/kitsune/releases/download/v0.0.1-pre.4/kitsune-installer.sh | sh
Install prebuilt binaries via powershell script
irm https://github.com/kitsune-soc/kitsune/releases/download/v0.0.1-pre.4/kitsune-installer.ps1 | iex
Download kitsune 0.0.1-pre.4
File | Platform | Checksum |
---|---|---|
kitsune-aarch64-apple-darwin.tar.xz | macOS Apple Silicon | checksum |
kitsune-x86_64-apple-darwin.tar.xz | macOS Intel | checksum |
kitsune-x86_64-pc-windows-msvc.zip | Windows x64 | checksum |
kitsune-x86_64-unknown-linux-gnu.tar.xz | Linux x64 | checksum |
kitsune-job-runner 0.0.1-pre.4
Install kitsune-job-runner 0.0.1-pre.4
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/kitsune-soc/kitsune/releases/download/v0.0.1-pre.4/kitsune-job-runner-installer.sh | sh
Install prebuilt binaries via powershell script
irm https://github.com/kitsune-soc/kitsune/releases/download/v0.0.1-pre.4/kitsune-job-runner-installer.ps1 | iex
Download kitsune-job-runner 0.0.1-pre.4
File | Platform | Checksum |
---|---|---|
kitsune-job-runner-aarch64-apple-darwin.tar.xz | macOS Apple Silicon | checksum |
kitsune-job-runner-x86_64-apple-darwin.tar.xz | macOS Intel | checksum |
kitsune-job-runner-x86_64-pc-windows-msvc.zip | Windows x64 | checksum |
kitsune-job-runner-x86_64-unknown-linux-gnu.tar.xz | Linux x64 | checksum |
kitsune-cli 0.0.1-pre.4
Install kitsune-cli 0.0.1-pre.4
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/kitsune-soc/kitsune/releases/download/v0.0.1-pre.4/kitsune-cli-installer.sh | sh
Install prebuilt binaries via powershell script
irm https://github.com/kitsune-soc/kitsune/releases/download/v0.0.1-pre.4/kitsune-cli-installer.ps1 | iex
Download kitsune-cli 0.0.1-pre.4
File | Platform | Checksum |
---|---|---|
kitsune-cli-aarch64-apple-darwin.tar.xz | macOS Apple Silicon | checksum |
kitsune-cli-x86_64-apple-darwin.tar.xz | macOS Intel | checksum |
kitsune-cli-x86_64-pc-windows-msvc.zip | Windows x64 | checksum |
kitsune-cli-x86_64-unknown-linux-gnu.tar.xz | Linux x64 | checksum |
Now follows the GitHub-generated changelog:
What's Changed
- Add
xtask
project for automation by @aumetra in #326 - Separate xtask from workspace by @aumetra in #327
- Add notifications by @zeerooth in #328
- Reduce dependency count by @aumetra in #329
- Rewrite
post-processor
based onlogos
by @aumetra in #333 - Increase Tokio worker stack size to 4MiB by @aumetra in #338
- Fix compile errors from security patch by @aumetra in #339
- Specify a formatter for 'nix fmt' by @aumetra in #340
- Add cargo-audit check by @aumetra in #341
- Upgrade dependencies by @aumetra in #335
- Update activity for posts by @zeerooth in #337
- ci: Remove
needs: fmt
requirements by @tesaguri in #344 - Restructure to have
kitsune-core
crate by @aumetra in #343 - Extend
typed-builder
usage by @aumetra in #346 - Dedicated job runner by @aumetra in #347
- Remove precommit hook by @aumetra in #348
- Replace jemalloc with mimalloc by @aumetra in #350
- Upgrade dependencies by @aumetra in #351
- Bump graphql from 16.8.0 to 16.8.1 in /kitsune-fe by @dependabot in #353
- Remove exif info from image uploads by @zeerooth in #352
- Resolve canonical WebFinger subjects of remote actors by @tesaguri in #349
- Upgrade dependencies by @aumetra in #355
- Correct retry logic by @aumetra in #357
- Remove
kitsune-search-server
by @aumetra in #359 - Add
Timestamp
swagger type by @aumetra in #361 - Remove
diesel_migrations_async
by @aumetra in #362 - More swagger fixes by @zeerooth in #363
- Update dependencies (and use
redis
fork) by @aumetra in #364 - See who boosted/favourited a post in mastodon API by @zeerooth in #367
- Small optimizations by @aumetra in #369
- Replace
aws-sdk-s3
withrusty-s3
by @aumetra in #373 - Use
write!
macro instead of separate function calls by @aumetra in #374 - Separate target directory for rust-analyzer by @aumetra in #375
- Remove the /oauth/token endpoint from the OpenAPI scheme by @zeerooth in #376
- Use more
typed-builder
by @aumetra in #378 - Basic UI functionality by @aumetra in #365
- Revamp observability by @aumetra in #381
- Add
kitsune-blocking
crate by @aumetra in #382 - Compile time optimizations by @aumetra in #379
- Patch
isolang
dependency by @aumetra in #383 - OpenTelemetry configurability by @aumetra in #384
- Update frontend dependencies by @aumetra in #385
- Add
cargo-dist
by @aumetra in #386 - Fix
cargo-dist
builds by @aumetra in #387
Full Changelog: v0.0.1-pre.3...v0.0.1-pre.4