111 Commits

Author SHA1 Message Date
Kirill Mikhailov
1597443bf1
Add new host-test xtask subcommand (#4085)
* Add new `host-test` xtask subcommand

+ smaller consistency and fmt fixes

* reviews

* reviews
2025-09-09 14:44:36 +00:00
Dániel Buga
5e13146842
Route logs to stdout (#4054) 2025-09-04 17:41:04 +00:00
Dániel Buga
d9f6d7d73e
Fix endgroup syntax (#4051) 2025-09-04 13:13:02 +00:00
Dániel Buga
01a01ba99e
Select example if none was specified (#4024) 2025-09-02 11:56:55 +00:00
Juraj Sadel
e6cdd8eb3c
Add xtask command check-unused-deps and remove unused deps/features (#3967)
* Add xtask command check-unused-deps and remove unused deps/features

* fix changelog

* reviews, move check into nightly-ci

* reviews

* readd document-features to esp-preemt

* Just cargo machete
2025-08-27 08:48:58 +00:00
Björn Quentin
61bc88c8fb
Reduce disk space used when running xtask ci (#3969) 2025-08-22 10:38:44 +00:00
Kirill Mikhailov
614fc59814
xtask: Rework example command structure (#3927)
* reduce duplicity in function call

* Readme update

* part of reviews

* more reviews addressing
2025-08-15 09:55:36 +00:00
Kirill Mikhailov
73ef8d9227
Rename esp-wifi to esp-radio (part 1) (#3858)
* rename `esp-wifi` to `esp-radio`

* Add migration guide entry

* changelog entry

* address reviews

* more fixes

* address reviews

* Thank you for this rebase!

* mmm, rebase

* Remove unnecessary diff

bob

* get rid off all `esp-wifi` references

* drop the links ƒrom the table
2025-07-25 12:26:08 +00:00
rmsyn
eea0446e77
xtask: add metadata check (#3808)
* xtask: add metadata check

Adds a check for metadata changes to the xtask `update-metadata` task.

* ci: add metadata check to the `ci` workflow

Adds a check for uncommitted metadata changes to the `ci` workflow.
2025-07-16 18:11:53 +00:00
Scott Mabin
6db771c80e
(re-)introduce the rt feature on esp-hal (#3706)
Adds the `rt` feature which disables `esp_hal::init` and removes
runtime symbols from the global name space.

Disabling the `rt` feature is the recommended way to use esp-hal as a
library.
2025-07-15 09:20:26 +00:00
Dániel Buga
692a768b3a
Introduce esp-metadata-generated (#3754)
* Move macros to new crate

* Generate a single file

* Pre-generate esp-metadata-generated

* Move saving code to xtask

* Format with both rustfmt and prettyplease

* Fix doc build

* Unhide macros

* Fix doc string

* Update semver-check baseline
2025-07-07 15:37:05 +00:00
Dániel Buga
ad445752ae
Add clean and build timings to xtask (#3759)
* Add --timings

* Add alias to clean all packages

* Update readme

* Add alias
2025-07-07 13:03:39 +00:00
Dániel Buga
517b5ccbe2
Make cargo xfmt respect the format config (#3739)
* Make cargo xfmt respect the format config

* Make sure comments and doc code have the same width
2025-07-03 08:18:02 +00:00
Björn Quentin
0137fbb5c4
xtask: msrv-bump (#3708)
* Add bump-msrv command

* Make regex dependency optional

* Adjustments

* Make bump-msrv a release sub-command

* Don't assume to bump MSRV for all packages always

* Check

Check

* Re-arrange code

* Remove controversial CLI-switch
2025-06-30 10:29:46 +00:00
Dániel Buga
0f73826a81
Add toolchain arg to more commands (#3714) 2025-06-30 10:27:59 +00:00
Dániel Buga
e0b613dd3d
Run MSRV checks with the correct toolchain (#3691)
* Run MSRV checks with the correct toolchain

* .
2025-06-26 08:58:22 +00:00
Björn Quentin
45248100f4
Simple ota example (#3629)
* Fix esp-bootloader-esp-idf

* Use OTA enabled partition table for examples

* Add simple OTA example

* CHANGELOG.md

* Create a dummy `ota_image` in CI

* mkdir

* Remove unnecessary details from CHANGELOG

* Make non-Window's users life easier

* Test ROM function in esp-bootloader-esp-idf

* Fix
2025-06-13 13:42:09 +00:00
Dániel Buga
48a5927767
Generate peripheral support table (#3617) 2025-06-10 13:13:24 +00:00
Scott Mabin
71fe3f0e46
Add subcommand to rollover migration guides (#3606)
* add subcommand to create migration guides

* make git changes
2025-06-09 14:18:53 +00:00
Dániel Buga
b6ba222dec
Lint with DEFMT_LOG=trace (#3595) 2025-06-04 14:08:26 +00:00
Björn Quentin
42e239ccf1
Summarize failed CI checks (#3574) 2025-05-30 09:16:10 +00:00
Dániel Buga
692b7dddc2
Publish based on release plan (#3542)
* Publish and tag based on release plan

* Update wording

* Update xtask/src/commands/release/execute_plan.rs

Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>

---------

Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
2025-05-26 11:37:38 +00:00
Dániel Buga
ff3c5f4bb3
Apply release plan (#3510)
* Execute plan

* Update plan

* dry-run by default

* dry-run version bumps

* Apply skip-changelog label as well

* cleany uppy

* xtask changes for CI doc generation

* Allow running documentation workflow for release PRs

* Build debug xtask

* Fix docs build for esp-config

* Push release PR to upstream

* Fix base url

* Fall back to default manifest if request is not a success

* Build all documentation regardless of its version

* Restore building landing page

* Build with the correct base url

* Avoid deploying the xtask

* Feature-gate documentation-index
2025-05-23 16:02:44 +00:00
Dániel Buga
c8da165aa5
Prepare a release plan (#3506)
* Add plan subcommand

* Skip binary files when replacing placeholders

* Specify the next step

* Make the plan ordered

* Prevent creating a plan that includes an unpublished crate

* Explain repo_dependencies

* Tweak plan comment

* Check branch during planning

* Tweak logs

* Hint about --allow-non-main
2025-05-22 11:07:57 +00:00
Dániel Buga
d66b1397a2
Read from Cargo.toml whether a crate is published (#3507) 2025-05-21 09:27:16 +00:00
Dániel Buga
74c1f13e1f
Move release-related code to their own module (#3501) 2025-05-20 13:15:53 +00:00
Dániel Buga
3d29a8765a
Add a version placeholder and replace on version bump (#3485)
* Use a version placeholder in MGs

* Replace version placeholder in package files

* Document bump-version better
2025-05-20 11:58:49 +00:00
Dániel Buga
fbdb99ec6a
xtask: Bump version in changelog, add check-changelog (#3478)
* Parse and update changelog on version bump

* Add check-changelog

* Fix changelogs

* Check changelog format in CI

* Fix log string

* Update readme

* Add tests, remove empty changelog groups
2025-05-19 07:15:47 +00:00
Björn Quentin
7b7844a855
Semver-Check (#3439)
* Semver-Check

* Clippy

* Improve

* Fix

* Adjust log level

* Add initial API baseline

* CI

* Fix

* Docs

* Debug CI

* Honor CARGO_TARGET_DIR

* Compressed API baseline

* Renaming

* Refactor

* Move code to commands mod

* Prepare for 1.85

* Address review comments

* Simplify
2025-05-09 14:40:42 +00:00
Dániel Buga
00e1cf7d7d
Extract bump_version code (#3472) 2025-05-09 11:05:06 +00:00
Björn Quentin
29060aee6a
Enable problem-matchers in CI (#3480) 2025-05-08 13:07:51 +00:00
Dániel Buga
8271760498
Increment beta version (#3470) 2025-05-08 12:25:57 +00:00
Björn Quentin
123544deb7
Group CI output (#3476) 2025-05-08 12:22:50 +00:00
Jesse Braham
e5ea7e35cd
Refactor xtask subcommands to be group by common functionality (#3457)
* Create `command` submodule, extract build-related args/actions

* Extract run-related args/actions

* Fix clippy warnings

* Update `README.md` for xtask package

* Fix order of positional arguments for examples

* Update workflows and cargo aliases

* Inline function which is only called in one place

* Update HIL workflow
2025-05-07 09:32:51 +00:00
Jesse Braham
63ed40c368
Update eFuse field definitions (#3440)
* Copy eFuse field definitions from `espflash` repo, make required changes to get building again

* Clean up functions for reading eFuse fields a bit

* Make reading the MAC address chip-agnostic

* Remove eFuse field generation from `xtask` package

* Remove `read_field_be` function, as it's not really required

* Fix clippy lint errors

* Update `CHANGELOG.md`

---------

Co-authored-by: Scott Mabin <scott@mabez.dev>
2025-05-06 08:39:35 +00:00
Kirill Mikhailov
b33b877592
Bump edition to 2024, bump MSRV to 1.85 (#3391)
* inter-state

* inter-state (2)

* warnings fix

* fix warnings

* fmt + changelogs

* another unsafe extern "C" doode

* real fmt now

* MSRV + format

* Ignore unsafe_op_in_unsafe_fn lint for now in esp-hal and esp-wifi

* msrv + fmt

* ugh....

* get lcd_cam example right

* expr_2021 -> expr experiment

* gagagugu

* reviews

* more unneeded unsafes (help)

* finish esp-hal unsafe cleanup

* each unsafe call is marked separately

fmt

* should be good now (?)

* piece was never an option...

* dumb
2025-04-22 10:39:11 +00:00
Scott Mabin
0876bac6c5
xtask: refactor feature selection and package validation (#3358)
* apply_feature_rules applies more things

* apply features in one place only, fix missing features and clippy warnings

* move various logic to package enum, re-add the ability to test packages with custom feature sets

* small cleanup

* simplify msrv check, fix CI

* review feedback

* try and fix msrv check

* rebase fixups

* use msrv toolchain in check
2025-04-14 11:23:54 +00:00
Dániel Buga
a98a96821b
Fix ieee802154 lint errors, allow log+defmt (#3374) 2025-04-14 07:17:34 +00:00
Dániel Buga
70e3f2ca26
Make sure INTERRUPT_CORE0 is referenced (#3336)
* Make sure INTERRUPT_CORE0 is referenced

* Test esp-wifi without radio features

* Allow linting with multiple lists of features

* Just don't bother

* Changelog
2025-04-07 11:07:42 +00:00
Dániel Buga
7c159b6070
Fix typo (#3256) 2025-03-14 11:46:29 +00:00
Björn Quentin
38eb5aefc9
Xtask/latest redirect (#3231)
* Support "build-documentation-index --serve"

* Support `/latest` in generated docs

* `/latest` vs `/latest/`

* Update documentation field
2025-03-07 11:28:41 +00:00
Dániel Buga
c382303ea6
Move xtensa-lx-rt-procmacros to repo root (#3221)
* Pass CI=1 to lint_packages

* Move xtensa procmacros to repo root

* Fix lint issues
2025-03-06 09:17:16 +00:00
Jesse Braham
6976e6d669
Update portable-atomic (#3171)
* Update `portable-atomic` dependency

* Remove `portable-atomic` hacks
2025-02-24 14:33:01 +00:00
Jesse Braham
fd2bdefaab
New package releases (#3163)
* Update dependencies and bump version numbers

* Update `CHANGELOG.md` for each package being published

* Update repo-level `README.md`

* Use older nightly to resolve CI issues

* also release esp-backtrace and esp-metadata

* Cleanup

---------

Co-authored-by: Scott Mabin <scott@mabez.dev>
2025-02-24 13:32:29 +00:00
Scott Mabin
0a8c609a02
Deploy docs (#3147)
* take json input from action

* use hal xtask for all jobs

* temp, use checkout task

* use same xtask again

* tmp

* fixup output path

* try and send via scp

* fill in a bit more data

* debug

* base url adjust, try and remove doc dir

* prevent index generation errors

* remove docs prefix

* Create an xtask subcommand to tag releases for packages

* output json workflow input when tagging releases

* output full output for docs

* mention xtask output, set GITHUB_TOKEN in docs workflow

* target esp-hal proper

---------

Co-authored-by: Jesse Braham <jesse@beta7.io>
2025-02-21 15:36:31 +00:00
Björn Quentin
68c660f1c5
CI optimizations (#3129)
* CI Improvements

* Fix

* Lint with stable

* Fix

* Xtensa

* cleanup
2025-02-13 15:20:10 +00:00
Jesse Braham
15f2e914d6
Patch generated documentation to include a version selector (#3131)
* Refactor all documentation-related functions into their own module

* Rename `Package::should_document` to `Package::is_published`

* Patch the generated documentation to include a version selector

* Only try to fetch package manifest if `deploy-docs` feature is enabled
2025-02-13 08:33:25 +00:00
Kaspar Schleiser
853e3aacc2
esp-wifi: support using an external scheduler (#3115)
* support using an external scheduler

* update changelog for `preempt-extern` feature

* change to "extern trait impl" scheme

* make built-in scheduler use the `Scheduler` trait

* pull timer tick out of  trait

* lint `esp-wifi` with `builtin-scheduler`

* esp-wifi: silence warning when not using `builtin-scheduler`

* enable timer tick before scheduler

* esp-wifi: fix preempt.rs type `now` -> `know`
2025-02-11 08:12:19 +00:00
Jesse Braham
c74d614785
Generate a landing page linking to each package's documentation (#3076) 2025-01-31 09:06:00 +00:00
Dániel Buga
6495130492
Fix build-documentation-index UX (#3043) 2025-01-27 16:30:18 +00:00