This will reduce our CI usage by building Topola one time less. This is
needed because it turned out that we are straining the CI and were asked
to reduce our footprint:
https://codeberg.org/topola/topola/issues/155
Turns out that our usage of the Codeberg's CI has been excessive:
https://codeberg.org/topola/topola/issues/155
The `test` flow is the longest-running (due to contracts checks), yet
the least needed, so I'm disabling it for now.
This reverts commit b4fe7006b7.
The reverted commit introduced an autorouter regression, observable
in 4x_3rd_order_smd_lc_filters test using egui (see Matrix chat).
This reverts commit 658e556a4a.
On the second thought, this may be a bad idea because using this crate
on Topola's main library code would pollute it with `egui` code.
The purpose of this new crate is to provide a system for managing
actions that can be bound to a key and to derive `egui` menus to invoke
them.
I haven't moved all relevant code from `topola-egui` (in particular,
`Switch` and `Trigger` structs) to this crate yet.
I, Michał Stankiewicz, hereby license the committed files, which contain
Topola's logo in multiple variants, under two licences at the same time:
- Creative Commons Attribution 4.0 International (SPDX: CC-BY-4.0)
- MIT (SPDX: MIT)
Signed-off-by: Michał Stankiewicz <kontakt@stankiewiczm.eu>
I have replaced all instances of `HashMap<...>` with `BTreeMap<...>`,
of `HashSet<...>` with `BTreeSet<...>`, and all the uses of the `Hash`
trait with `Ord`.
I have done a few manual tests and found the behavior to be
deterministic between the GUI application launches. However, undoing an
autoroute command and then manually executing it once again continues to
produce variable results. I suppose this is because of some bug in the
code where edits are applied. Hence, the issue
https://codeberg.org/topola/topola/issues/46
is only partially resolved.
Error message:
error: failed to run custom build command for `rfd v0.15.1`
note: To improve backtraces for build dependencies, set the CARGO_PROFILE_DEV_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation.
Caused by:
process didn't exit successfully: `/woodpecker/src/codeberg.org/topola/topola/target/debug/build/rfd-df83cee8e4039bcf/build-script-build` (exit status: 101)
--- stderr
thread 'main' panicked at /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/rfd-0.15.1/build.rs:14:17:
You need to choose at least one backend: `gtk3` or `xdg-portal` features
Error message:
Compiling rfd v0.15.1
error: failed to run custom build command for `rfd v0.15.1`
Caused by:
process didn't exit successfully: `[redacted]/topola/target/debug/build/rfd-91f81cc3d21cf4fd/build-script-build` (exit status: 101)
--- stderr
thread 'main' panicked at [redacted]/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rfd-0.15.1/build.rs:21:21:
One of the `tokio` or `async-std` features must be enabled to use `xdg-portal`
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
I ran the following command in Fish shell:
```
reuse annotate --copyright="Topola contributors" --license="MIT" **/.gitignore {.woodpecker/*,.*}.yaml .rustfmt.toml flake.nix index.html
```
I ran the following command in Fish shell:
```
reuse annotate --skip-unrecognised --copyright="Topola contributors" --license="MIT" **.{rs,md,toml}
```
The choice of year 2024 in the copyright statements is intentional.
Contrary to what I naively thought, `pre-commit` in CI does not result
in commit messages being checked. Another action `pre-commit` was
doing was running `cargo check`, but this is essentially the same as
building without compilation, and we are testing by building in other
CI-workflows. So we are left with only a formatting check, which does
not need installing and running `pre-commit`.