Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arduino 3 / ESP-IDF 5 compatibility #178

Merged
merged 1 commit into from
Jun 2, 2024

Conversation

mathieucarbou
Copy link
Contributor

@mathieucarbou mathieucarbou commented Apr 21, 2024

This PR updates the CI system and dependencies in order to make the library compatible with Arduino 3 / ESP-IDF 5, and of course Arduino 2.

The project itself does not require any change, except the library.json for PlatformIO projects, but alternate dependencies must be used, which have been updated:

Example:

lib_deps = 
  mathieucarbou/Async TCP @ ^3.1.4
  mathieucarbou/ESP Async WebServer @ 2.10.1

Note: the change to https://github.com/mathieucarbou/esphome-ESPAsyncTCP#v2.0.0 is because ESPHome have deleted the library.properties file from the original fork.

You can see an sample of what will the CI look like here in my fork: https://github.com/mathieucarbou/ayushsharma82-ElegantOTA/actions/runs/8773016893

@mathieucarbou mathieucarbou marked this pull request as draft April 21, 2024 12:56
@mathieucarbou mathieucarbou marked this pull request as ready for review April 21, 2024 13:27
@mathieucarbou mathieucarbou force-pushed the arduino-3 branch 2 times, most recently from a50361f to 4093f86 Compare May 2, 2024 07:23
@mathieucarbou
Copy link
Contributor Author

@ayushsharma82 : applied same recipe as ESP-DASH here. CI is passing in my fork (main and this PR branch): https://github.com/mathieucarbou/ayushsharma82-ElegantOTA/actions

@mathieucarbou
Copy link
Contributor Author

mathieucarbou commented May 30, 2024

Also, platform raspberrypi is declared but not tested... Not sure we want to either remove the support or add tests for that ? Same question for picow rp2040...

@ayushsharma82
Copy link
Owner

Yea, there is RP2040 support in ElegantOTA so CI should test that too.

Check the other PR #170, does your fork of ESPAsyncWebServer have RP2040 support? (Ref: DoomHammer/ESPAsyncWebServer@06062ec )

@mathieucarbou
Copy link
Contributor Author

mathieucarbou commented May 30, 2024

Yea, there is RP2040 support in ElegantOTA so CI should test that too.

Check the other PR #170, does your fork of ESPAsyncWebServer have RP2040 support? (Ref: DoomHammer/ESPAsyncWebServer@06062ec )

Oh boy! There's a problem here... #170 (saw it already) depends on an external fork of ESPAsyncWebserver, and, even if I could import the diff in my fork, the real issue is that it depends on a different AsyncTCP lib which is now archived (https://github.com/khoih-prog/AsyncTCP_RP2040W) and not even based (forked) from the original ones...

It seems like a dead end to me...

@ayushsharma82
Copy link
Owner

Yeah... We can still add CI for testing Demo example with RP2040 target.

@ayushsharma82
Copy link
Owner

Let me know if you can do it otherwise I'll tackle it next weekend. :)

@mathieucarbou
Copy link
Contributor Author

mathieucarbou commented Jun 1, 2024

RP2040

yes this one can be activated if not depending on Async stuff. What's problematic is I think making this project depend on some unsupported / archived dependencies like the forks (which are not even forks lol) of ESPAyncTCP and ESPAsyncWebServer for RPI.

Let me know if you can do it otherwise I'll tackle it next weekend. :)

You can edit my PR and commit.
I never did dev on such board (I didn't see so far any reason to use them as they are too limited and expensive in terms of specs for the price) so I don't know the kind of combination to use for Arduino CI and if there are some specific flags to set or not set, and I cannot test on any board since I don't have some.

@ayushsharma82 ayushsharma82 changed the base branch from master to dev June 2, 2024 23:08
@ayushsharma82 ayushsharma82 merged commit 1e68a55 into ayushsharma82:dev Jun 2, 2024
10 checks passed
@ayushsharma82
Copy link
Owner

Added raspberry pico to CI in my dev branch.

Btw, I noticed you are not using conventional commits, although it is not "required", this is something which I started using recently. I find it really great because using this 'convention' scripts can auto increment version by looking through commit history.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants