Previously we were using a script to grab our sources
automatically. However, this was error-prone and meson
didn't actually understand the output.
Now we declare our sources manually. This helps meson
know when to trigger a build based on what files have
changed.
Instead of putting target/ and in the source
directory, we can tell our cargo script to put both target
and our cargo-home in meson's build directory. This means
that when triggering a rebuild through meson via tooling
like Builder, Fractal will actually rebuild.
Our workaround for getting meson and cargo working together
included a separate 'release' target that replaced
'ninja dist' so that we could vendor dependencies.
Now we use meson's add_dist_script to vendor the
dependencies as part of 'ninja dist', so we no longer need
the 'release' target.
Previously we were using the env! macro to determine
build-time variables like version, app ID, and locale dir.
Instead of relying on env vars, we can create a configuration
file with meson and import it.
New features:
* Use markup for room details
* Direct chat and invite to user id
* Redesign file messages
* Improve notification title format
* Room Topic: Remove the button, use only labels
* MessageMenu: Copy selected text action to menu
* Native file chooser for attachments
Fixes:
* Don't override m.direct on direct room creation
New and improved translations and a lot of code fixes
New features:
* New audio player widget for audio files
* MediaViewer now loads more images from the server
* MediaViewer with headerbar in full screen
* New avatar async loading and defaults
* New room settings view
* Multiline entry with markdown syntax highlighting
New features:
* show mxid in member tooltip
* Focus on message entry after clicking on a username
* Basic markdown sending
* Change Load more GtkButton to GtkSpinner
* mention: blue highlight for messages with mentions and cleanup css file
* Redesigned new room creation (fixes#98)
Fixes:
* Unlock collections and items in secret storage before use.
* fix: add joining members to the there own room instate to the active room
* Fix autocomplete crash with unicode usernames
* Fix url parsing
We were calling always the cargo script to build all, on each call to
build but we can provide the rs input and let meson to check if some
source has changed and if not, it won't try to build.
I've added the env var CARGO_HOME pointing to target directory to make
it cacheable when you build Fractal with builder to speed up building.
I've also added an env var check to difference between DEBUG mode and
RELEASE mode so you can configure GnomeBuilder to build the debug
version.
This script creates a new release, increasing the release number in all
files then it creates a new commit and the creates a new tag, and
finnaly it generates the .tar.xz release file.