Граф коммитов

61 Коммитов

Автор SHA1 Сообщение Дата
Barret Rennie 049619b1f5
Use an async function in fxrecord::run
fxrecord::run now accepts an async fn. It generates a new tokio runtime
and blocks on the future the given function resolves to.
2020-05-26 01:33:05 -04:00
Barret Rennie 8d38882f55
Require Rust 1.39 2020-05-26 01:33:04 -04:00
Barret Rennie b9afe77849
Update dependencies 2020-05-26 01:29:11 -04:00
Barret Rennie c094565b2b
Split fxrecord into a workspace
This will allow fxrecorder and fxrunner to share common depenencies, but
not eachother's entire dependency trees.
2020-05-25 23:27:30 -04:00
Barret Rennie 8c461d45de
Fix up cargo clippy lint errors 2020-05-25 23:21:20 -04:00
Barret Rennie c93ce6abd5
Refactor common logic from main()s
Both fxrunner's main and fxrecorder's main did basically the same thing
(set up a logger, read options from the command-line, and then call a
function with the logger and options). In addition, both called
functions also read in a config file, where the path was given by the
command-line options. They also redefined the same Error enum.

This has been abstracted into the `fxrecord::run` function, which does
all of the above. We are now returning a `Result<(), Box<dyn Error>>`
because at the top level all errors are unexpected. Additionally, A
`CommonOptions` trait has been introduced so that `fxrecord::run` can
load the config to pass to the runnable.
2019-10-18 16:29:17 -04:00
Barret Rennie 22f259d806
Use slog for logging
slog et al. are robust logging libraries providing structured logging.
2019-10-08 16:29:24 -04:00
Barret Rennie b6131429fa
Add a README 2019-10-08 16:19:51 -04:00
Barret Rennie d0aea52cc8
Add a command line interface with structopt
This crate is split up into a library and two binaries:

- fxrunner: the binary responsible for running Firefox on the reference
  hardware;
- fxrecorder: the binary responsible for doing frame capture; and
- fxrecord: the library with common code for both fxrunner and
  fxrecorder.

The configuration for both fxrunner and fxrecorder is parsed from a TOML
file (configurable via the `--config` command-line option). For ease of
development, the fxrunner and fxrecorder configuration are both able to
be included in a single config file (`fxrecord.toml`) using sections. An
example configurationf ile (`fxrecord.example.toml`) is provided.
2019-10-08 16:19:45 -04:00
Barret Rennie a4af8e28f8
Add code of conduct 2019-08-15 14:20:00 -04:00
Barret Rennie 86365aa122
Initial commit 2019-08-14 17:32:30 -04:00