Commit Graph

42 Commits

Author SHA1 Message Date
antifallobst fc74de33dc
feat(storage): added a central storage management system 2024-05-23 11:18:41 +02:00
antifallobst f6a1b5200a
refactor(cbs): added responses and dumped the dummy cbs code 2024-05-21 04:20:40 +02:00
antifallobst 4519fe5db6
refactor(cbs): moved the packet definitions into their own crate 2024-05-15 16:51:45 +02:00
antifallobst 64d5bdd9c5
feat: implemented the skeleton of the core CBS handler 2024-05-14 14:01:54 +02:00
Silas Schöffel e560790e00
build(Cargo): update dependencies
This also replaces tui-rs with ratatui
2024-05-08 21:58:30 +02:00
Benedikt Peetz 22b8af8e93 chore(treewide): Update the copyright headers 2024-05-08 19:23:11 +00:00
Silas Schöffel 0315de3ee4 chore(treewide): change license to GPL-3.0 or later
To archive this, the previous MIT-License and its mentions were removed, COPYING
was added, LICENSE.spdx and README were modified to show the correct
license, sils@sils.li was added to the project's
E-Mail adresses and ./scripts/renew_copyright_header.sh
was executed.
2024-05-08 19:23:11 +00:00
Benedikt Peetz 940d82561d style(treewide): Format and improve the headers
This commit represents one run of
`./scripts/renew_copyright_headers.sh`.
2024-05-04 21:06:17 +02:00
Benedikt Peetz 8228e2fd60 chore(treewide): Add some missing licenses 2024-05-04 20:43:16 +02:00
Benedikt Peetz cc13ec2867 build(treewide): Update trinitrix/core to the modern standard 2024-05-04 20:40:02 +02:00
Benedikt Peetz 08c4724a94 refactor(src): Remove all matrix related code
This obviously is a big regression, but having this matrix code in the
core trinitrix tree is no longer planned. And if we start writing the
matrix cbs, referring to this commit should be possible.
2024-05-04 15:43:31 +02:00
Benedikt Peetz c233b30a52 fix(src): Ensure that the new c api can actually be used 2024-05-04 15:00:58 +02:00
Benedikt Peetz 6ef6bea61c chore(Cargo): Update to the new external crates
Note that this commit does not contain the needed code changes
2024-05-03 21:23:26 +02:00
Benedikt Peetz cd2dbc516a
chore(trixy): Rename `language_macros` to `trixy`
The motivation behind this change is to comply with the naming scheme:
starting crate names with `tri`
2023-12-16 11:45:12 +01:00
Benedikt Peetz 44a1ad77ea
build(treewide): Update 2023-12-14 15:33:56 +01:00
Benedikt Peetz ebd3b0d476
build(treewide): Update 2023-11-07 20:47:49 +01:00
Benedikt Peetz 2eb6b12bd7
refactor(core): Use the new `keymaps` crate 2023-11-07 20:27:06 +01:00
Benedikt Peetz c1b426d590
build(treewide): Update 2023-10-31 18:04:18 +01:00
Benedikt Peetz 602eba6a60
build(treewide): Update 2023-10-16 13:56:18 +02:00
Benedikt Peetz 181af51c08
build(treewide): Update 2023-10-14 12:41:05 +02:00
Benedikt Peetz 29aa6c1d33
build(treewide): Update 2023-09-17 16:41:55 +02:00
Benedikt Peetz 357c42332f
feat(app): Add support for a Lua based configuration file 2023-09-09 21:29:46 +02:00
Benedikt Peetz 42b8793dd0
Fix(lua): Upgrade to mlua 9.1, which introduced braking changes 2023-09-09 19:44:00 +02:00
Benedikt Peetz a8112d554e
build(treewide): Update 2023-09-03 22:08:35 +02:00
Benedikt Peetz bd0ffe9edc
Merge: Branch 'commands'
Multiple things are still missing:
- [ ] Table type support
- [ ] Error messages and Status messages in ci input field (not in the status panel)
- [ ] Better ux in the ci input field (scrollback more than one line, syntax highlighting, &c)
- For further checkboxes take a look at the `FIXME`s and `TODO`s in the code.

The base ci although is already usable and in some way useful
2023-07-26 22:36:59 +02:00
Benedikt Peetz 1a35bb152c
Feat(treewide): Add a way for Commands to return more than just strings 2023-07-26 22:15:07 +02:00
Benedikt Peetz 7489f06a7c
Fix(app::command_interface): Use new language_macro api 2023-07-26 22:10:19 +02:00
Benedikt Peetz c7a4d5a8ab
Refactor(treewide): Remove the repl, reuse of e. handling is hard
The event handling is deeply ingrained in the ui code, the commands are
focused around the ui code, in short splitting of the event handling and
command system from the ui is intentionally hard and in my opinion not
really worth it right now.
2023-07-26 22:06:40 +02:00
Benedikt Peetz ebb16a20de
Feat(treewide): Add a feature based layout and repl subcommand
Compiling the whole tui stack, just to debug the lua command line seems
counterproductive to me. This allows to just compile the needed parts
for a basic lua repl.

As of yet the repl is just a mock-up, as the event handling can, as of
right now, not easily be separated from the tui.

To activate specific features add specify the on the cargo command line
like this:
```
cargo run --features "cli tui"
```
or add them to the `default` feature set in the `Cargo.toml`.
2023-07-26 22:04:42 +02:00
Benedikt Peetz 111d46ef2e
Build(Cargo): Instruct rustc to perform fat lto in release mode 2023-07-26 21:40:15 +02:00
Benedikt Peetz 20c751fd7f
Fix(treewide): Update codebase to new lua_macros api 2023-07-20 21:49:56 +02:00
Benedikt Peetz c3a2b2d566
Fix(lua): Switch to mlua library, as it's better than rlua 2023-07-17 07:27:51 +02:00
Benedikt Peetz 327450c64b
Feat(command_interface): Add basic lua support 2023-07-12 21:48:51 +02:00
Benedikt Peetz 1c43626fad
Build(Cargo): Update `Cargo.lock` and upgrade `Cargo.toml` 2023-07-09 10:09:53 +02:00
Benedikt Peetz a9f72e34e6
Build(cargo): Remove wildcard version specification in `Cargo.toml`
Wildcard version is comparable to selecting a version depending on
the result of a dice roll. What I mean with this is, that the version
will be selected based on what the specific user already has in their
cargo registry. This means that the same codebase will compile
wonderfully on one machine but will fail with weird errors like:
`the trait 'From<crossterm::event::Event>' is not implemented for 'Input'`
on an other one.

Additionally crates.io does not accept crates with a bare wildcard
version requirement for aforementioned reasons.

Lastly using direct versions requirement allows to use `cargo upgrade`
to automatically update these requirements to their highest possible
value, as determined by SemVer. This works especially well, when adding
new dependencies with `cargo add`, as this also adds a direct version
requirement.
2023-07-09 10:09:52 +02:00
antifallobst 658f05b8d3 feature (ui - rooms / events): implemented a rooms list area in the UI and live timeline updates on room timeline sync events 2023-07-08 14:45:08 +02:00
antifallobst dfc87ff937 refactor (architecture): implemented an event based architecture 2023-07-04 18:32:57 +02:00
antifallobst 9fbf112baa refactor (logger): switched to cli_log 2023-07-01 12:44:11 +02:00
antifallobst 7bd1990eb3 feature (logging): added a logging backend and spreaded a few info log calls over the codebase 2023-06-29 20:17:54 +02:00
antifallobst 2c894e895e feature (UI): implemented a login screen 2023-06-29 12:36:16 +02:00
antifallobst e776d8a631 feature (accounts): implemented login with username and password 2023-06-15 19:19:24 +02:00
antifallobst ff8a6e66eb initial commit 2023-06-14 23:49:20 +02:00