Commit Graph

462 Commits

Author SHA1 Message Date
Jesse Braham
f9b7dae0a8 Bump MSRV to 1.62.0 and update all dependencies (#279)
* Bump the MSRV to 1.62.0

* Update all dependencies
2022-10-28 15:03:43 -07:00
Jesse Braham
7e5e197a30 Add updated bootloaders for all chips 2022-10-28 14:47:20 -07:00
Jesse Braham
1ebca351f8 Load stubs from TOML instead of JSON files (#277)
* Remove unused stub files

* Convert the stub files to TOML, eliminate the `serde_json` dependency
2022-10-28 11:16:55 -07:00
Jesse Braham
fbaca200d6 Add a test for the Direct Boot image format 2022-10-27 09:27:37 -07:00
Jesse Braham
d3e3426600 Extract common functionality for erasing partition tables into a function 2022-10-27 08:10:25 -07:00
Maxime BORGES
abd8208332 Replace --erase-otadata with --erase-parts and --erase-data-parts (#273)
* Replace --erase-otadata with --erase-parts and --erase-data-parts

* Update esp-idf-part to v0.1.1
2022-10-26 11:43:32 -07:00
Maxime BORGES
c29b1dd2da connection: error handling (#270)
* connection: Check the error field in the response instead of status

* Handle generic stub errors

* esp32: Fix size in FlashDeflateBegin

The `size` field for `Command::FlashDeflateBegin` is the uncompressed size of the segment.
It was rounded up to the memory block size, and the stub was expecting more data when the flash ended,
even though the inflator was returning successfully.

* Fix typo in espflash/src/error.rs

Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>

Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2022-10-24 13:19:35 -07:00
Jesse Braham
92251a929b Print additional information when invoking the save-image subcommand 2022-10-24 11:49:20 -07:00
Jesse Braham
ef9b8ffe4d Additional docstrings for enums, structs, and traits (#271)
* Document enums and their variants

* Document traits and their functions

* Document structs and their public fields
2022-10-24 11:03:40 -07:00
Maxime Borges
c2a4854be6 connection: Swap error and status in CommandResponse 2022-10-24 09:45:39 -07:00
Jesse Braham
c502b00227 Add back the image format tests which had been previously removed (#266)
* Test the ESP8266 image format

* Test the IDF bootloader image format

* Add a README documenting how to generate the test resources
2022-10-20 10:39:46 -07:00
Jesse Braham
0f6d8fd945 Remove unneeded attributes and pub(crate)s, old test data (#263)
* Remove some `#[allow(unused)]` attrs and  `pub(crate)` which weren't necessary

* Remove the old test data, as it's no longer used
2022-10-19 08:40:30 -07:00
Jesse Braham
dc5900ab22 Re-write all the READMEs (#262)
* Re-write all the READMEs

* Address feedback from review
2022-10-19 07:18:25 -07:00
Jesse Braham
b0c2aa55d8 Begin work on improving documentation (#261)
* Add module-level documentation for all modules

* Show which modules are feature gated on docs.rs

* Add more type/function doc strings
2022-10-18 13:50:17 -07:00
Jesse Braham
5e53cf28f3 Export only what is needed 2022-10-18 12:51:02 -07:00
Jesse Braham
3a437ae04b Clean up the image format enums (#258)
* Eliminate the `ImageFormatType` enum, as its redundant

* Rename `ImageFormatId` to `ImageFormatKind`

* Rename `ImageFormatKind::Bootloader` variant to `EspBootloader`
2022-10-13 09:41:26 -07:00
Jesse Braham
376e2ea969 Change default branch name to main 2022-10-11 12:17:40 -07:00
Jesse Braham
c184ecb9dc Update progress by styles, format app/partition sizes in human-readable form 2022-10-11 21:11:31 +02:00
Jesse Braham
41a2f13a53 Use logging functions instead of println!/eprintln! 2022-10-11 20:25:47 +02:00
Sergio Gasquez Arcos
1367675735 Add raspberry feature checks in CI. (#255)
* ci:  Add Rasberry CI

* ci: 🐛 Fix typo

* ci: 🐛 Fix args order

* ci: 🐛 Fix args order

* chore: ️ Split Raspberry CI into a file

* refactor: ♻️ Split Raspberry CI files into CI and Package

* ci: 🐛 Add features arg to clippy check

* ci: ️ Remove fmt check
2022-10-05 07:45:32 -07:00
Jesse Braham
046c467458 Remove the espmonitor dependency, re-implement our own monitor (#254)
* Remove the `espmonitor` dependency, re-implement our own monitor

Unfortunately since `espmonitor` is licensed under GPL we are no longer able to use it after the relicensing

* Modify the regex to search for *all* valid hex literals
2022-10-05 07:13:00 -07:00
Jesse Braham
d9aa97109c Rename and clean up the image formats module, move some functions around (#249) 2022-10-05 11:42:10 +01:00
Jesse Braham
fee2762bb0 Update to clap@4.0.x (#251)
* Update `cargo_toml` and a handful of other dependencies

* Update to `clap@4.0.x`

* Fix a number of small issues with the CLI, minor visual tweaks

* Use the more specific derive attributes added in `4.x`
2022-10-04 14:23:59 -07:00
Sergio Gasquez Arcos
beec416be5 Refactor release CI and fix release binary permissions for cargo-binstall (#246)
* ci: ♻️ Unify release action in one single file and make resulting binaries executables

* ci: 🐛 Fix typo

* ci: ♻️ Remove fail fast

* ci: 🐛 Fix environment variables

* ci: ♻️ Unify dependencies step

* ci: 🐛 Fix typo

* revert: ️ Revert unifiying build of dependencies

* ci: 🐛 Reorder steps

* ci: 🐛 Reorder steps

* ci: 🐛 Reorder steps

* ci: 🐛 Reorder steps

* ci: 🐛 Fix condition

* ci: 🐛 Fix condition

* ci: 🐛 Fix condition

* ci: 🐛 Fix condition

* ci: 🐛 Fix typo

* chore: 🎨 Remove unnused matrix fields

* chore: 🎨 Update repo in manifest for cargo-binstall

* chore: 🎨 Remove unused files

* fix: 🐛 Fix execution permissions

* fix: 🐛 Fix execution permissions

* ci: ♻️ Update compress action

* ci: ♻️ Update compress action

* revert: ️ Revert changes on manifest

* revert: ️ Revert changes on manifest

* ci: 🎨 Remove unnecessary comment

* docs: 📝 Improve steps name

* refactor: ♻️ Split release CI into two files

* ci: 🐛 Remove matrix from release.yml
2022-10-03 07:29:02 -07:00
Jesse Braham
575789b6c8 Merge pull request #247 from jessebraham/fixes/refactor-2
Refactor: convert the `chip` modules into `targets`, eliminate the proxy functions on `Chip` enum
2022-10-03 16:15:00 +02:00
Jesse Braham
4f094ebc69 Fix imports and build errors, some simplification 2022-09-28 08:03:23 -07:00
Jesse Braham
63b3631b04 Refactor the chip and flash_target modules into a new targets module 2022-09-28 08:03:23 -07:00
Björn Quentin
44f0bc72c9 Merge pull request #245 from jessebraham/fixes/refactor
Refactor: reduce the number of top-level modules, combine common functionality
2022-09-28 08:00:21 +02:00
Jesse Braham
a6bf0d5f9f Move the slip encoder into the flasher module 2022-09-27 09:06:25 -07:00
Jesse Braham
92a314c1df Move the stubs module into the flasher module 2022-09-27 09:06:11 -07:00
Björn Quentin
fab4b7a3e4 Merge pull request #243 from jessebraham/feature/esp-idf-part
Use the `esp-idf-part` package
2022-09-27 08:35:52 +02:00
Jesse Braham
d4ca4a2d93 Use the published release of esp-idf-part 2022-09-26 11:04:42 -07:00
Jesse Braham
5756b0208f Bump MSRV to 1.60.0 2022-09-26 09:18:14 -07:00
Jesse Braham
89baf8fcf7 Remove unused dependencies 2022-09-26 09:18:14 -07:00
Jesse Braham
2732fcaf39 Fix imports and the (many) build errors 2022-09-26 09:18:14 -07:00
Jesse Braham
abb194aead Remove the existing partition_table module and pull in esp-idf-part
"In the beginning, all was broken..."
2022-09-26 09:18:14 -07:00
Dániel Buga
e4b7be742d Add support for Raspberry Pi's internal UART peripherals 2022-09-26 16:54:35 +02:00
Jesse Braham
c6258f7544 Update READMEs to reflect new command-line interface 2022-09-23 10:19:12 -07:00
Jesse Braham
812749e334 Merge pull request #239 from jessebraham/feature/cli-rewrite
Re-design the CLI interface
2022-09-21 19:33:12 +02:00
Jesse Braham
68f43f079c Bump the versions to 2.0.0-dev 2022-09-21 09:24:32 -07:00
Jesse Braham
0c63abf179 Add requires info to some args, fix a build error 2022-09-20 07:33:27 -07:00
Jesse Braham
e82c7dee72 Fix build errors from rebase, resolve some clippy warnings 2022-09-20 07:27:24 -07:00
Jesse Braham
ef5703635e Put all CLI dependencies and modules behind a feature 2022-09-20 07:27:24 -07:00
Jesse Braham
c128742b2b Move FlashFrequency and FlashMode enums into the flasher module, where they belong 2022-09-20 07:27:24 -07:00
Jesse Braham
8f1e2cbfda Reverse the image/file arguments for save-image to allow it to be used as a Cargo runner 2022-09-20 07:27:24 -07:00
Jesse Braham
9d8f90cabc Revamp the CLI enums and handling of command line arguments 2022-09-20 07:27:24 -07:00
Jesse Braham
195f46117f Add modules containing helper functions for initializing the logger and checking for updates 2022-09-20 07:27:24 -07:00
Jesse Braham
c35fad9cc6 Add ImageFormatType enum, normalize other enums and their trait impls 2022-09-20 07:27:24 -07:00
Jesse Braham
fa4f26913d Fix the build-std check in cargo-espflash, as it currently ignores command-line arguments 2022-09-20 15:58:52 +02:00
Jesse Braham
125a252ee0 Begin next development cycle for 1.7.1 2022-09-16 09:39:48 -07:00