Commit graph

249 commits

Author SHA1 Message Date
Sylvestre Ledru a20bf22592
Merge pull request #2974 from sylvestre/ci-size
Run the release builds and store the size
2022-01-30 22:17:05 +01:00
Sylvestre Ledru 90949ae045 Run the release builds and store the size 2022-01-30 19:58:47 +01:00
Sylvestre Ledru 6112ac5750 ci: Remove the sphinx legacy 2022-01-30 19:50:59 +01:00
Sylvestre Ledru 170975aeaa run the build of the doc in the ci 2022-01-29 00:35:14 +01:00
Terts Diepraam 783170c9d8 change msrv to 1.54 2022-01-15 11:08:07 +01:00
Roy Ivy III cd79bc49bc maint/CICD ~ ignore 'vendor' for CodeCov 2022-01-01 17:50:30 -06:00
Roy Ivy III 790884b177 maint/CICD ~ add dependencies between CI job steps (using 'needs')
- the build and test steps won't run until/unless Dependency and MSRV checks pass
- code coverage won't run until/unless the build steps all pass

## [why]

This helps make more efficient use of CI resources and can help more easily visualize
build issues from the resultant GHA dashboard flow diagram.
2021-11-19 18:04:55 -06:00
Roy Ivy III 39a6e6c75b maint/CICD ~ (GHA) normalize setup sub-step ordering 2021-11-19 17:55:02 -06:00
Roy Ivy III 047c17dd31 maint/CICD - (GHA) standardize job step ordering (install, vars, prereq, toolchain, ...) 2021-11-19 17:55:02 -06:00
Roy Ivy III 0b10e69f56 maint/CICD ~ (GHA) repair broken cspell by pinning it to version v4.2.8
## [why]

`cspell` in CI started mysteriously failing mid-2021. Tracking down the
error took some time as it was not obvious from `cspell` feedback where
the issue lay. Ultimately, it was discovered that `cspell` had deprecated
use on NodeJS versions < v12 for `cspell` v5+.

`cspell` is now pinned to v4.2.8, with a maintenance note to allow an
upgrade to the `cspell` version when a version of NodeJS >= v12 is being
used in the CI.

An issue requesting better tool feedback for similar situations was also
opened on the `cspell` repo.[*]

[*]: [🙏🏻 Add warning (or error) when used on deprecated/outdated JS platform versions](https://github.com/streetsidesoftware/cspell/issues/1984)
2021-11-19 17:55:02 -06:00
Roy Ivy III aba1c8f596 maint/CICD ~ (GHA) disable tool cache use for 'action-rs/install'
# [why]

The tool cache is currently failing and seems to be getting further behind current
versions. The [actions-rs/install#12] issue addresses this but seems to be
languishing without any proposed solution.

[ref]: <actions-rs/install#12>
2021-11-19 17:55:02 -06:00
Roy Ivy III 12419b3ee2 maint/CICD ~ (GHA) reform 'unused dependency check' (cargo udeps ...) into a style warning 2021-11-19 17:55:02 -06:00
Roy Ivy III a6635d62c7 maint/CICD ~ (GHA) use 'feat_os_unix' consistently for ubuntu jobs 2021-11-19 17:55:01 -06:00
Roy Ivy III 37a3c68f3a maint/CICD ~ (GHA) add style fault configurability (fail vs warn)
- add individual job-step control for 'style' step faults (build failure vs only a warning)
2021-11-19 17:55:01 -06:00
Roy Ivy III c951806e70 maint/CICD ~ (GHA) fix cargo clippy lint
- fixes conversion of new `cargo clippy` output style to GHA annotations

## [why]

`cargo clippy` output formatting changed, using relative instead of absolute paths.
2021-11-19 17:55:01 -06:00
Sylvestre Ledru c0af58881e remove some unused codecov declarations 2021-11-16 10:10:30 +01:00
Tom Parker-Shemilt 0c33905e60 Fix FreeBSD build by downgrading MacOS version 2021-11-02 18:56:01 +00:00
Sylvestre Ledru 7eaae75bfc add a github action job to identify unused deps 2021-09-15 12:06:50 +02:00
Sylvestre Ledru 7acdf31e2b freebsd: also fails the script when the tests fail 2021-09-05 18:54:43 +02:00
Michael Debertol 1e78a40e20 CICD: use nightly rust for code coverage 2021-08-30 23:13:31 +02:00
Sylvestre Ledru 3ed74df4a6 Update to freebsd-vm@v0.1.5 2021-08-29 18:35:08 +02:00
Jan Verbeek ea16cc72c7
Make clippy workspace selection more finegrained (#2598)
* Make clippy workspace selection more finegrained

* fixup! Make clippy workspace selection more finegrained

* fixup! Make clippy workspace selection more finegrained

* fixup! Make clippy workspace selection more finegrained

* fixup! Make clippy workspace selection more finegrained

* fixup! Make clippy workspace selection more finegrained
2021-08-25 01:41:25 +02:00
Jan Verbeek d06c074829 Run clippy on the full workspace
These lints were cluttering up the "problems" tab in my VS
Code. `--workspace` fixes the disparity.
2021-08-24 17:10:16 +02:00
Sylvestre Ledru 86c610a84b enable freebsd in the CI on gh actions
and use --features feat_os_unix (wasn't done before)
2021-08-24 09:32:18 +02:00
Jan Scheer 010565c8fb
Merge branch 'master' into id_selinux_context 2021-08-02 10:40:45 +02:00
Sylvestre Ledru f34505df54 bump the minimal version for coverage to 1.52
Drivers:
https://github.com/rust-lang/rust/issues/71395
https://github.com/rust-lang/rust/pull/80470
needed by grcov
2021-07-30 14:54:45 +02:00
Jan Scheer 6111cd6e1b
id: add note about conditional compiling to README section 2021-07-13 14:38:46 +02:00
Jan Scheer 7abc6a665e
id: add conditional compilation for selinux 2021-07-13 00:22:10 +02:00
Jan Scheer e53f4db33a Merge branch 'master' into id_selinux_context 2021-07-06 13:29:50 +02:00
Sylvestre Ledru bd0ca4513e
update min rust to 1.51
Co-authored-by: Roy Ivy III <rivy.dev@gmail.com>
2021-06-27 07:52:07 +02:00
Roy Ivy III 42fed9186d maint/docs ~ add ToDO for change from cargo-tree to cargo tree 2021-06-23 12:03:35 -05:00
Roy Ivy III 17a959853e maint/CICD ~ suppress useless rustup notices 2021-06-23 10:05:49 -05:00
Roy Ivy III 8884666ce0 maint/CICD ~ fix dependency display errors (relax network lockout) 2021-06-23 10:00:27 -05:00
Jan Scheer f1d317147b id: add support for showing SELinux context (--context/-Z) 2021-06-20 13:44:41 +02:00
Roy Ivy III b4a06cfdba maint/CICD ~ refactor; improve logging for outputs shell script 2021-06-19 18:40:22 -05:00
Roy Ivy III 92630a0690 maint/CICD ~ (GHA) add 'Style/dependencies' checks 2021-06-19 18:37:13 -05:00
Roy Ivy III db621c7d7a maint/CICD ~ (GHA) change/refactor CICD (convert most warnings to errors)
- adds additional instruction to error message showing how to fix the error
2021-06-19 18:37:13 -05:00
Roy Ivy III 298851096e maint/CICD ~ (GHA) remove deprecated 'ubuntu-16.04' environment 2021-06-19 18:37:13 -05:00
Sylvestre Ledru 90bf26a51c maint/CICD ~ (GHA) update to checkout@v2 2021-06-19 18:37:13 -05:00
Jan Scheer 54cbb69d37 id/tests: fix tests if run on macOS 2021-06-16 19:16:29 +02:00
Roy Ivy III 2ff46a78b1 maint/CICD ~ summarize BusyTest output for dashboard 2021-06-06 19:28:25 -05:00
Roy Ivy III c192550f22 refactor ~ polish spelling + add spelling exceptions 2021-06-06 19:28:22 -05:00
Roy Ivy III 114844d9cd maint/CICD ~ refactor; use a shell script (outputs) for step outputs 2021-06-06 19:17:18 -05:00
Roy Ivy III 4d5880f098 maint/CICD ~ temporarily disable failing tool cache for actionrs/install
# [why]

The tool cache is currently failing and seems to be getting further behind current
versions. The [actions-rs/install#12] issue addresses this but seems to be
languishing without any proposed solution.

[ref]: <https://github.com/actions-rs/install/issues/12>
2021-06-06 19:16:50 -05:00
Michael Debertol 8de42ed18e maint: actually run spellcheck on all files
**/* must be quoted, otherwise it is expanded by the shell and not
literally passed to cspell.
2021-05-31 22:40:12 +02:00
Roy Ivy III 691f03b9ae maint/CICD ~ improve visibility of spell check during testing 2021-05-31 08:23:58 -05:00
Roy Ivy III c392cd1cb4 maint/CICD ~ cspell-check all repository files 2021-05-31 08:23:58 -05:00
Roy Ivy III 3140be7c1b docs/CICD ~ add spell-checker exceptions 2021-05-31 08:23:58 -05:00
Jan Scheer 141a92c965 CI: set clippy targets to 'all' 2021-05-30 10:13:31 +02:00
Sylvestre Ledru 6e1a68ce9a
Merge pull request #2298 from jhscheer/fix_clippy
Major clippy overhaul.
2021-05-29 23:23:26 +02:00
Michael Debertol 4058caa3e6 maint: add spell checker to CICD 2021-05-29 22:30:02 +02:00
Jan Scheer 52ea9c4a48 CI: set MSRV and "--target" for clippy
* add "clippy.toml" in order to set MSRV for clippy linting
    this works only if clippy is invoked with "+nightly"
* add "--target" to clippy in order to also lint tests
2021-05-29 14:21:32 +02:00
Terts Diepraam 052ee22ce0 Bump MSRV to 1.43.1 2021-05-27 18:20:15 +02:00
Sylvestre Ledru 1860e61f83 Workaround the Windows CI install issue.
Fails trom time to time with:
```
info: installing component 'rustc'
memory allocation of 16777216 bytes failed
Error: The process 'C:\Rust\.cargo\bin\rustup.exe' failed with exit code 3221226505
```

on  Build (windows-latest, i686-pc-windows-gnu, feat_os_windows)
2021-05-23 10:35:46 +02:00
Jan Scheer 6ed080cf97 CICD: install GNU coreutils on macOS (Code Coverage) 2021-05-21 12:39:48 +02:00
Jan Scheer dc93f29fe3 CICD: install GNU coreutils on macOS 2021-05-17 22:22:18 +02:00
ReggaeMuffin 3bfb1afe5c
uucore: Start testing uucore
Before this change we never ran tests on uucore itself
meaning that is was not possible to test
functions of the shared core, only their usage
in the different binaries

This change adds running uucore to our ci, which will increase coverage for the few doctests that exist

and is extracted from #1988 where first tests for uucore will be introduced
2021-04-05 16:16:00 +01:00
Sylvestre Ledru 2ef1b25d85 Create a new job to test make build 2021-04-02 23:30:24 +02:00
Sylvestre Ledru f431f58dd8
Bump min rustc to 1.40 (#1909) 2021-03-25 15:28:47 -07:00
Theophile Trunck 0ac5dbe44d Add CICD for busytest 2021-03-14 20:30:53 +01:00
Chad Brewbaker bb54669a5d
Fix macOS aarch64 compile errors (#1724) 2021-02-23 10:25:06 +01:00
Roy Ivy III 07d52c7741 docs ~ add corrective spell-checker global exceptions 2020-11-08 20:00:11 -06:00
Roy Ivy III b6cafa9e10 fix ~ remove extraneous step within GHA MinRSV 2020-11-08 20:00:11 -06:00
Roy Ivy III daa5868da4 maint/CICD ~ add 'Cargo.lock' format testing and protection 2020-10-24 20:56:41 -05:00
Roy Ivy III 3a4f12c2fb maint/CICD ~ improve robustness of MinRustV package dependency calculation 2020-10-14 21:42:09 -05:00
Roy Ivy III 72a5d93a4d maint/CICD ~ remove old/unneeded grcov setup scripting 2020-08-19 09:13:09 -05:00
Roy Ivy III 63315747a5 maint/CICD ~ job naming improvement (decreased jargon) + feature name normalization 2020-08-16 17:02:19 -05:00
Roy Ivy III bb4b20db81 maint/CICD ~ use alternate grcov configuration recipe (direct CLI options)
- `ignore` and `excl-br-line` options used to target code coverage analysis
- direct/repeated (non-DRY) CLI options are used by necessity (`grcov` is ignoring command line env variables)
2020-08-16 17:02:19 -05:00
Roy Ivy III 9711e5ad42 maint/CICD ~ update CICD code coverage recipe 2020-08-10 10:20:15 -05:00
Roy Ivy III 1c9b12c0d2 maint/CICD ~ add individual uutil/sub-crate testing to CICD code coverage 2020-08-10 10:19:42 -05:00
Roy Ivy III 137b26def6 maint/CICD ~ add individual uutil/sub-crate testing to CICD 2020-08-10 10:19:41 -05:00
nicoo dc6b9a8d62
CI: Improve annotations (#1584)
* CI: Only run rustfmt in one environment

- This displays clippy warnings even when rustfmt fails.
- This avoids displaying 3 copies of the same rustfmt warning as Github
  annotations.
- Avoids duplicated work.

* CI: Suppress warnings when building for the oldest toolchain version

We had cases of warnings emitted due to `rustc` bugs that were fixed
in non-obsolete versions.

* factor: Remove a workaround for warnings on obsolete rustc
2020-08-10 16:53:32 +02:00
Roy Ivy III d3ef4bd7da maint/CICD ~ update 'actions/upload-artifact' to 'v2' 2020-07-25 11:09:10 -05:00
Roy Ivy III 51cb023cd7 maint/CICD ~ pass CI from environment to cross containers 2020-06-13 21:54:21 -05:00
Sylvestre Ledru 5926315507 bump the minimal version of rustc to 1.32 2020-06-08 22:54:28 +02:00
Sylvestre Ledru 78c04a254e refactor ~ rename MinSRV => MinRustV 2020-06-02 12:23:48 -05:00
Roy Ivy III 1d327d31c0 docs ~ add comments (based on PR feedback) 2020-06-01 09:10:21 -05:00
Roy Ivy III a7cbf6c9fd maint/CICD ~ remove cargo fmt gating for 'windows'
- unneeded after reorg
- but issue still remains; see GH:/rust-lang/rustfmt#3590
2020-05-30 01:16:21 -05:00
Roy Ivy III cc8a2be6f5 maint/CICD ~ add support for DPKG generation and extra ARM-CPU build targets 2020-05-30 01:15:35 -05:00
Roy Ivy III 16840f8cd4 maint/CICD ~ update GHA for 'coreutils' name change 2020-05-29 22:59:47 -05:00
Roy Ivy III d9de816757
maint/build ~ allow code coverage upload failures without breaking the build (warning instead of error) (#1526) 2020-05-25 22:47:42 +02:00
Sylvestre Ledru 157dc38492 quick fix(coverage): grcov arg 'output-file' has been renamed to 'output-path' 2020-05-13 11:01:41 +02:00
Roy Ivy III 7a64ad1ebc maint/CICD ~ add commentary for 'Style' warning output => annotation conversions 2020-05-02 23:12:50 -05:00
Roy Ivy III a57214fa10 maint/CICD ~ change 'Style' job to a more robust, "allow-failure"-type, state
## [why]

Compiler and clippy warnings will change over time. To avoid build failures due to some
updated allow/warn categories for more future rust versions, the tests using the
toolchain utilities are converted to a form which will always "pass" but will push any
errors/warnings to the GHA UI as annotations.

Additional build-breaking tests utilizing more stable tools (or local scripts) can be
added at a later date if/when desired.

This should prevent CI failures for already known-working builds.
2020-05-02 17:02:25 -05:00
Roy Ivy III 312d9b9543 maint/CICD ~ fix coverage build failures by pinning to known-working nightly toolchain
## [why]

Code coverage must currently use some unstable features in nightly rust builds. The
nightly builds are, by definition, unstable and subject to frequent breaking changes.
To prevent CI build breakage, the toolchain is pinned to a specific known working set.

Note: (maint!) this will require periodic review until code coverage is more fully
implemented/integrated into Rust and moved into the stable channel.

- refs: <https://github.com/mozilla/grcov/issues/427>, <https://github.com/newsboat/newsboat/issues/916>
2020-05-02 16:53:08 -05:00
Roy Ivy III dfc0617a2e maint/CICD ~ update x86_64-pc-windows-gnu build target to 'stable' (for use with rust v1.43.0+) 2020-05-02 16:44:36 -05:00
Roy Ivy III 0ab6e6a19a maint/CICD ~ refactor MacOS feature use (aline with feature reorg) 2020-04-25 01:57:21 -05:00
Roy Ivy III 4813e97a71 maint/CICD ~ add work-around for absorption of cargo tree into cargo
- see [GH:rust-lang/cargo#8062](https://github.com/rust-lang/cargo/pull/8062) for more information
2020-04-15 10:10:40 -05:00
Roy Ivy III 0d355d1073 maint/CICD ~ enable testing for beta-x86_64-pc-windows-gnu to GHA:CICD 2020-04-15 10:09:48 -05:00
Roy Ivy III 58a0ed2a4f maint/CICD ~ show cargo tree tool version information during CICD 2020-04-15 10:08:30 -05:00
Roy Ivy III 48dd6a2c81 maint/CICD ~ improve code coverage process and tooling 2020-04-14 13:46:18 -05:00
Roy Ivy III aea98a40e0 maint/CICD ~ add cargo fmt style testing of tests 2020-04-14 00:07:00 -05:00
Roy Ivy III 7eeb58ae3a maint/docs ~ add spell-checker exceptions 2020-04-12 16:57:11 -05:00
Roy Ivy III ab9da0aa63 maint/CICD ~ fix GITHUB_REF parsing 2020-04-12 16:56:03 -05:00
Roy Ivy III 4cf8487053 maint/CICD ~ improve tooling info display and include build dependency info 2020-04-12 16:56:03 -05:00
Roy Ivy III 05c829471e maint/CICD ~ generalize README and LICENSE matches for use in dpkg builds 2020-04-12 16:56:03 -05:00
Roy Ivy III 69408fc8cc maint/CICD ~ fix MinSRV testing (use correct toolchain) 2020-04-12 16:56:03 -05:00
Roy Ivy III b57ee7e131 maint/CICD ~ fix features option for GHA 2020-04-12 16:56:03 -05:00
Roy Ivy III ebc29e813b maint/CICD ~ add GitHub:Actions (GHA) CICD 2020-04-11 18:50:09 -05:00