Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
slav-at-attachix committed Jun 15, 2023
2 parents 79f86a7 + e1b0f2b commit 772a421
Show file tree
Hide file tree
Showing 196 changed files with 4,037 additions and 1,293 deletions.
71 changes: 71 additions & 0 deletions .github/workflows/ci-esp32.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: Continuous Integration (CI) for Esp32

on:
push:

pull_request:
branches: [ develop ]

jobs:
build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, windows-latest]
variant: [esp32, esp32s2, esp32c3, esp32s3, esp32c2]
idf_version: ["4.3", "4.4", "5.0"]
exclude:
- variant: esp32s3
idf_version: "4.3"
- variant: esp32c2
idf_version: "4.3"
- variant: esp32c2
idf_version: "4.4"

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ toJson(matrix) }}
cancel-in-progress: true

runs-on: ${{ matrix.os }}

env:
SMING_ARCH: Esp32
SMING_SOC: ${{ matrix.variant }}
INSTALL_IDF_VER: ${{ matrix.idf_version }}

steps:
- name: Fix autocrlf setting
run: |
git config --global --add core.autocrlf input
- name: Checkout code
uses: actions/checkout@v3

- name: Configure environment
shell: pwsh
run: |
"CI_BUILD_DIR=" + (Resolve-Path ".").path >> $env:GITHUB_ENV
"SMING_HOME=" + (Resolve-Path "Sming").path >> $env:GITHUB_ENV
- name: Install build tools for Ubuntu
if: ${{ matrix.os == 'ubuntu-20.04' }}
run: |
Tools/ci/install.sh
- name: Install build tools for Windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
. Tools/ci/setenv.ps1
Tools/ci/install.cmd
- name: Build and test for ${{matrix.variant}} with IDF v${{matrix.idf_version}} on Ubuntu
if: ${{ matrix.os == 'ubuntu-20.04' }}
run: |
source $SMING_HOME/../Tools/export.sh
Tools/ci/build.sh
- name: Build and test for ${{matrix.variant}} with IDF v${{matrix.idf_version}} on Windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
. Tools/ci/setenv.ps1
Tools/ci/build.cmd
22 changes: 9 additions & 13 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,12 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-20.04, windows-latest]
variant: [esp8266, host, esp32, esp32s2, esp32c3, rp2040]
variant: [esp8266, host, rp2040]
include:
- variant: esp8266
arch: Esp8266
- variant: host
arch: Host
- variant: esp32
arch: Esp32
- variant: esp32s2
arch: Esp32
- variant: esp32c3
arch: Esp32
- variant: rp2040
arch: Rp2040

Expand All @@ -33,6 +27,10 @@ jobs:

runs-on: ${{ matrix.os }}

env:
SMING_ARCH: ${{ matrix.arch }}
SMING_SOC: ${{ matrix.variant }}

steps:
- name: Fix autocrlf setting
run: |
Expand All @@ -46,21 +44,19 @@ jobs:
run: |
"CI_BUILD_DIR=" + (Resolve-Path ".").path >> $env:GITHUB_ENV
"SMING_HOME=" + (Resolve-Path "Sming").path >> $env:GITHUB_ENV
"SMING_ARCH=${{ matrix.arch }}" >> $env:GITHUB_ENV
"SMING_SOC=${{ matrix.variant }}" >> $env:GITHUB_ENV
- name: Install build tools for Ubuntu
if: ${{ matrix.os == 'ubuntu-20.04' }}
if: ${{ matrix.os == 'ubuntu-20.04' }}
run: |
Tools/ci/install.sh
- name: Install build tools for Windows
if: ${{ matrix.os == 'windows-latest' }}
if: ${{ matrix.os == 'windows-latest' }}
run: |
. Tools/ci/setenv.ps1
Tools/ci/install.cmd
- name: Build and test for ${{matrix.arch}} on Ubuntu
- name: Build and test for ${{matrix.variant}} on Ubuntu
env:
CLANG_FORMAT: clang-format-8
if: ${{ matrix.os == 'ubuntu-20.04' }}
Expand All @@ -69,7 +65,7 @@ jobs:
$CLANG_FORMAT --version
Tools/ci/build.sh
- name: Build and test for ${{matrix.arch}} on Windows
- name: Build and test for ${{matrix.variant}} on Windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
. Tools/ci/setenv.ps1
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/library.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
os: [ubuntu-20.04, windows-latest]
variant: [esp8266, host, esp32, esp32s2, esp32c3, rp2040]
include:
- variant: esp8266
Expand Down Expand Up @@ -71,7 +71,7 @@ jobs:
"SMING_SOC=${{ matrix.variant }}" >> $env:GITHUB_ENV
- name: Install build tools for Ubuntu
if: ${{ matrix.os == 'ubuntu-latest' }}
if: ${{ matrix.os == 'ubuntu-20.04' }}
run: |
. $SMING_HOME/../Tools/export.sh
$SMING_HOME/../Tools/ci/install.sh $SMING_ARCH
Expand All @@ -85,7 +85,7 @@ jobs:
- name: Build and Test for ${{matrix.arch}} on Ubuntu
env:
CLANG_FORMAT: clang-format-8
if: ${{ matrix.os == 'ubuntu-latest' }}
if: ${{ matrix.os == 'ubuntu-20.04' }}
run: |
. $SMING_HOME/../Tools/export.sh
make -j$(nproc) -f $CI_MAKEFILE
Expand Down
14 changes: 13 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,10 @@
path = Sming/Components/rboot/rboot
url = https://github.com/mikee47/rboot
ignore = dirty
[submodule "uzlib"]
path = Sming/Components/uzlib/uzlib
url = https://github.com/pfalcon/uzlib.git
ignore = dirty
[submodule "ws_parser"]
path = Sming/Components/ws_parser
url = https://github.com/charliesome/ws_parser.git
Expand Down Expand Up @@ -233,6 +237,10 @@
path = Sming/Libraries/FatIFS
url = https://github.com/mikee47/FatIFS
ignore = dirty
[submodule "Libraries.FlashIP"]
path = Sming/Libraries/FlashIP
url = https://github.com/mikee47/FlashIP
ignore = dirty
[submodule "Libraries.flatbuffers"]
path = Sming/Libraries/flatbuffers/src
url = https://github.com/google/flatbuffers.git
Expand Down Expand Up @@ -369,10 +377,14 @@
path = Sming/Libraries/UPnP
url = https://github.com/mikee47/Sming-UPnP
ignore = dirty
[submodule "Sming/Libraries/UPnP-Schema"]
[submodule "Libraries.UPnP-Schema"]
path = Sming/Libraries/UPnP-Schema
url = https://github.com/mikee47/UPnP-Schema
ignore = dirty
[submodule "Libraries.USB"]
path = Sming/Libraries/USB
url = https://github.com/mikee47/Sming-USB
ignore = dirty
[submodule "Libraries.VT100"]
path = Sming/Libraries/VT100
url = https://github.com/mikee47/VT100
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Sming

Sming is an asynchronous embedded C/C++ framework with superb performance and multiple network features.
Sming is [open source](LICENSE), modular and supports [multiple architectures](https://sming.readthedocs.io/en/latest/features.html) including ESP8266 and ESP32.
Sming is [open source](LICENSE), modular and supports [multiple architectures](https://sming.readthedocs.io/en/latest/features.html) including ESP8266, ESP32 and RP2040.

[![Examples](https://github.com/SmingHub/Sming/wiki/images/small/combine.png)](https://github.com/SmingHub/Sming/wiki/examples)

Expand Down Expand Up @@ -29,14 +29,14 @@ You can also try Sming without installing anything locally. We have an [interact

The purpose of Sming is to simplify the creation of embedded applications. The documentation will help you get started in no time.

- [**Documentation for version 4.7.0**](https://sming.readthedocs.io/en/stable) - current stable version.
- [**Documentation for version 5.0.0**](https://sming.readthedocs.io/en/stable) - current stable version.
- [Documentation for latest](https://sming.readthedocs.io/en/latest) - development version.

## Releases

### Stable

- [Sming V4.7.0](https://github.com/SmingHub/Sming/releases/tag/4.7.0) - great new features, performance and stability improvements.
- [Sming V5.0.0](https://github.com/SmingHub/Sming/releases/tag/5.0.0) - great new features, performance and stability improvements.

### Development

Expand Down
Loading

0 comments on commit 772a421

Please sign in to comment.