Skip to content

Commit d0df73d

Browse files
mi-holarendsts-hadingerbovirus
authored
Actions in fork (#3)
* Bump version v14.6.0.1 * Add command `JsonPP 0..7` to enable (>0) JSON Pretty Print on user interfaces and set number of indents * Berry 'bytes().asstring()' now truncates a string if buffer contains NULL (arendst#23311) * Berry string literals containing NULL are truncated (arendst#23312) * Base64 split implementation in separate file (arendst#23313) * Italian language update (arendst#23309) * Update changelogs * Update Tasmota_build_master.yml * Update Tasmota_build_master.yml * Update Tasmota_build_master.yml * Update Tasmota_build_master.yml * Update Tasmota_build_master.yml * Update Tasmota_build_master.yml * Update Tasmota_build_master.yml * Update Tasmota_build_master.yml * https://discord.com/channels/479389167382691863/790187952416358460/1362809906213687516 * reduce images * changr workflow_dispatch --------- Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com> Co-authored-by: s-hadinger <49731213+s-hadinger@users.noreply.github.com> Co-authored-by: bovirus <1262554+bovirus@users.noreply.github.com>
1 parent 64ba75f commit d0df73d

19 files changed

Lines changed: 824 additions & 456 deletions

File tree

.github/workflows/Tasmota_build_master.yml

Lines changed: 238 additions & 234 deletions
Large diffs are not rendered by default.

.github/workflows/user_build.yml

Lines changed: 207 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,207 @@
1+
name: Build_firmware_user
2+
3+
on:
4+
workflow_dispatch: # Start a workflow
5+
# push:
6+
# paths-ignore:
7+
# - '.github/**' # Ignore changes towards the .github directory
8+
# - '**.md' # Do no build if *.md files changes
9+
10+
# Ensures that only one deploy task per branch/environment will run at a time.
11+
concurrency:
12+
group: environment-${{ github.ref }}
13+
cancel-in-progress: true
14+
15+
jobs:
16+
safeboot-images:
17+
runs-on: ubuntu-latest
18+
continue-on-error: true
19+
strategy:
20+
matrix:
21+
variant:
22+
- tasmota32-safeboot
23+
#- tasmota32solo1-safeboot
24+
#- tasmota32c2-safeboot
25+
- tasmota32c3-safeboot
26+
#- tasmota32c3ser-safeboot
27+
#- tasmota32s2-safeboot
28+
#- tasmota32s2cdc-safeboot
29+
#- tasmota32s3-safeboot
30+
#- tasmota32s3ser-safeboot
31+
- tasmota32c6-safeboot
32+
- tasmota32c6ser-safeboot
33+
steps:
34+
- uses: actions/checkout@v4
35+
- name: Set up Python
36+
uses: actions/setup-python@v5
37+
with:
38+
python-version: '3.x'
39+
- name: Install dependencies
40+
run: |
41+
pip install wheel
42+
pip install -U platformio
43+
- name: Add "release" to footer
44+
run: |
45+
#sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
46+
- name: Run PlatformIO
47+
run: platformio run -e ${{ matrix.variant }}
48+
- name: Upload safeboot firmware artifacts
49+
uses: actions/upload-artifact@v4
50+
with:
51+
name: ${{ matrix.variant }}
52+
path: ./build_output
53+
54+
base-images:
55+
runs-on: ubuntu-latest
56+
continue-on-error: true
57+
strategy:
58+
matrix:
59+
variant:
60+
- tasmota
61+
- tasmota-4M
62+
- tasmota-minimal
63+
#- tasmota-display
64+
#- tasmota-ir
65+
#- tasmota-knx
66+
#- tasmota-lite
67+
#- tasmota-sensors
68+
#- tasmota-zbbridge
69+
#- tasmota-zigbee
70+
steps:
71+
- uses: actions/checkout@v4
72+
- name: Set up Python
73+
uses: actions/setup-python@v5
74+
with:
75+
python-version: '3.x'
76+
- name: Install dependencies
77+
run: |
78+
pip install wheel
79+
pip install -U platformio
80+
- name: Add "release" to footer
81+
run: |
82+
#sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
83+
- name: Run PlatformIO
84+
run: platformio run -e ${{ matrix.variant }}
85+
- name: Upload firmware artifacts
86+
uses: actions/upload-artifact@v4
87+
with:
88+
name: ${{ matrix.variant }}
89+
path: ./build_output
90+
91+
base32-images:
92+
needs: safeboot-images
93+
runs-on: ubuntu-latest
94+
continue-on-error: true
95+
strategy:
96+
matrix:
97+
variant:
98+
- tasmota32
99+
#- tasmota32-zbbrdgpro
100+
#- tasmota32-webcam
101+
#- tasmota32-bluetooth
102+
#- tasmota32-nspanel
103+
#- tasmota32-display
104+
#- tasmota32-ir
105+
#- tasmota32-lvgl
106+
#- tasmota32c2
107+
- tasmota32c3
108+
- tasmota32c6
109+
#- tasmota32s2
110+
#- tasmota32s2cdc
111+
#- tasmota32s3
112+
#- tasmota32solo1
113+
steps:
114+
- uses: actions/checkout@v4
115+
- name: Set up Python
116+
uses: actions/setup-python@v5
117+
with:
118+
python-version: '3.x'
119+
- name: Install dependencies
120+
run: |
121+
pip install wheel
122+
pip install -U platformio
123+
- name: Download safeboot firmwares
124+
uses: actions/download-artifact@v4
125+
with:
126+
pattern: tasmota32*
127+
path: ./temp
128+
- name: Move safeboot files
129+
run: |
130+
mkdir -p ./firmware/firmware
131+
find ./temp -type f -exec cp -t ./firmware/firmware {} +
132+
- name: Add "release" to footer
133+
run: |
134+
#sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
135+
- name: Run PlatformIO
136+
run: platformio run -e ${{ matrix.variant }}
137+
- name: Upload firmware artifacts
138+
uses: actions/upload-artifact@v4
139+
with:
140+
name: ${{ matrix.variant }}
141+
path: ./build_output
142+
143+
language-images:
144+
needs: safeboot-images
145+
runs-on: ubuntu-latest
146+
continue-on-error: true
147+
strategy:
148+
matrix:
149+
variant: [ tasmota, tasmota32 ]
150+
#language: [ AD, AF, BG, BR, CN, CZ, DE, ES, FR, FY, GR, HE, HU, IT, KO, LT, NL, PL, PT, RO, RU, SE, SK, TR, TW, UK, VN ]
151+
language: [ AD, DE]
152+
steps:
153+
- uses: actions/checkout@v4
154+
- name: Set up Python
155+
uses: actions/setup-python@v5
156+
with:
157+
python-version: '3.x'
158+
- name: Install dependencies
159+
run: |
160+
pip install wheel
161+
pip install -U platformio
162+
- name: Download safeboot firmwares
163+
uses: actions/download-artifact@v4
164+
with:
165+
pattern: tasmota32*
166+
path: ./temp
167+
- name: Move safeboot files
168+
run: |
169+
mkdir -p ./firmware/firmware
170+
find ./temp -type f -exec cp -t ./firmware/firmware {} +
171+
- name: Add "release" to footer
172+
run: |
173+
#sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
174+
- name: Run PlatformIO
175+
run: platformio run -e ${{ matrix.variant }}-${{ matrix.language }}
176+
- name: Upload language firmware artifacts
177+
uses: actions/upload-artifact@v4
178+
with:
179+
name: ${{ matrix.variant }}-${{ matrix.language }}
180+
path: ./build_output
181+
182+
Release:
183+
needs: [base-images, base32-images, language-images]
184+
runs-on: ubuntu-latest
185+
continue-on-error: true
186+
steps:
187+
- uses: actions/checkout@v4
188+
- name: Download all Tasmota artifacts
189+
uses: actions/download-artifact@v4
190+
with:
191+
pattern: tasmota*
192+
path: ./temp
193+
- name: Move files
194+
run: |
195+
mkdir -p ./release
196+
find ./temp -type f -exec cp -t ./release {} +
197+
- name: Display structure of downloaded files
198+
run: ls -R ./release/
199+
- name: Release
200+
uses: jason2866/action-gh-release@v1.2
201+
#if: startsWith(github.ref, 'refs/tags/')
202+
with:
203+
tag_name: ${{ github.run_number }}
204+
files: |
205+
./release/tasmota*
206+
env:
207+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

CHANGELOG.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,28 @@
11
# Changelog
22
All notable changes to this project will be documented in this file.
33

4+
## [Released]
5+
6+
## [14.6.0] 20250416
7+
- Release Ryan
8+
9+
10+
## [14.6.0.1]
11+
### Added
12+
- Command `JsonPP 0..7` to enable (>0) JSON Pretty Print on user interfaces and set number of indents
13+
14+
### Breaking Changed
15+
16+
### Changed
17+
18+
### Fixed
19+
- Berry `bytes().asstring()` now truncates a string if buffer contains NULL (#23311)
20+
- Berry string literals containing NULL are truncated (#23312)
21+
22+
### Removed
23+
24+
25+
426
## [Released]
527

628
## [14.6.0] 20250416

RELEASENOTES.md

Lines changed: 6 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -114,58 +114,18 @@ The latter links can be used for OTA upgrades too like ``OtaUrl https://ota.tasm
114114

115115
[Complete list](BUILDS.md) of available feature and sensors.
116116

117-
## Changelog v14.6.0 Ryan
117+
118+
## Changelog v14.6.0.1
119+
118120
### Added
119-
- Filesystem command ``UfsList[2]``
120-
- Extend command `GPIO` with different display options and allowing updating of module GPIO's in one go
121-
- Support Vango Technologies V924x ultralow power, single-phase, power measurement [#23127](https://github.com/arendst/Tasmota/issues/23127)
122-
- Support for HLK-LD2402 24GHz smart wave motion sensor [#23133](https://github.com/arendst/Tasmota/issues/23133)
123-
- Support for Telnet server using command `Telnet <0|1|port>[,<IP filter>]` if enabled with `#define USE_TELNET`
124-
- Support for XMODEM over serial and telnet if enabled with `#define USE_XYZMODEM`
125-
- PZEM_AC device address in JSON and GUI [#23268](https://github.com/arendst/Tasmota/issues/23268)
126-
- Allow acl in mqtt when client certificate is in use with `#define USE_MQTT_CLIENT_CERT` [#22998](https://github.com/arendst/Tasmota/issues/22998)
127-
- AlpineJS 2.8.2 - optional for now [#23259](https://github.com/arendst/Tasmota/issues/23259)
128-
- ESP32 show network interface priority in `Status 5` debug logging [#23302](https://github.com/arendst/Tasmota/issues/23302)
129-
- Berry experimental driver for AXP2101 for M5Core2v1.1 [#23039](https://github.com/arendst/Tasmota/issues/23039)
130-
- Berry `tasmota.when_network_up()` and simplified Matter using it [#23057](https://github.com/arendst/Tasmota/issues/23057)
131-
- Berry `introspect.solidified()` to know if a Berry object is solidified or in RAM [#23063](https://github.com/arendst/Tasmota/issues/23063)
132-
- Berry `global.undef()` to undefine a global variable [#23073](https://github.com/arendst/Tasmota/issues/23073)
133-
- Berry load `.tapp` files in `/.extensions/` then in `/` [#23113](https://github.com/arendst/Tasmota/issues/23113)
134-
- Berry `re.dump()` [#23162](https://github.com/arendst/Tasmota/issues/23162)
135-
- Berry `bytes.add()` now accepts 3-bytes values [#23200](https://github.com/arendst/Tasmota/issues/23200)
136-
- Berry expose `esp_http_server` for websockets [#23206](https://github.com/arendst/Tasmota/issues/23206)
137-
- Matter prepare for ICD cluster [#23158](https://github.com/arendst/Tasmota/issues/23158)
138-
- LVGL experimental mirroring of display on Web UI [#23041](https://github.com/arendst/Tasmota/issues/23041)
139-
- HASPmota autostart when `pages.jsonl` exists [#23181](https://github.com/arendst/Tasmota/issues/23181)
121+
- Command `JsonPP 0..7` to enable (>0) JSON Pretty Print on user interfaces and set number of indents
140122

141123
### Breaking Changed
142-
- Berry remove `Leds.create_matrix` from the standard library waiting for reimplementation [#23114](https://github.com/arendst/Tasmota/issues/23114)
143-
- HASPmota added `y2_min` and `y2_max` to control the second series of `chart` [#23287](https://github.com/arendst/Tasmota/issues/23287)
144-
- HASPmota default theme is now Tasmota-style [#23288](https://github.com/arendst/Tasmota/issues/23288)
145124

146125
### Changed
147-
- ESP32 Platform from 2025.02.30 to 2025.04.30, Framework (Arduino Core) from v3.1.1.250203 to v3.1.3.250411 and IDF from v5.3.2.250120 to 5.3.2.250403 [#23280](https://github.com/arendst/Tasmota/issues/23280)
148-
- Output of commands `GPIO` and `GPIOs` swapped
149-
- Smoothen light gamma curve when using `Fade` [#23230](https://github.com/arendst/Tasmota/issues/23230)
150-
- RCSwitch `RCSWITCH_SEPARATION_LIMIT` from 4100 to 3600
151-
- GPIOViewer from v1.6.1 to v1.6.2 (No functional change)
152-
- HLK-LD2402 updates for firmware 3.3.5+ [#23281](https://github.com/arendst/Tasmota/issues/23281)
153-
- ESP8266 enable FTP for >= 4MB variants [#23120](https://github.com/arendst/Tasmota/issues/23120)
154-
- ESP32 enable webcam version 2 [#18732](https://github.com/arendst/Tasmota/issues/18732)
155-
- Berry update flasher for Sonoff ZBBridge Pro [#23136](https://github.com/arendst/Tasmota/issues/23136)
156-
- Berry `re` now accepts `bytes()` as precompiled patterns, added `re.compilebytes()` [#23149](https://github.com/arendst/Tasmota/issues/23149)
157-
- LVGL, prepare for HASPmota theme, change: no-grow when clicked, DPI set to 160 [#23040](https://github.com/arendst/Tasmota/issues/23040)
158-
- LVGL Mirroring add checkbox to enable/disable the feature (in the iterim for a better solution) [#23047](https://github.com/arendst/Tasmota/issues/23047)
159-
- Leds Panel add checkbox to enable/disable the feature (in the iterim for a better solution) [#23048](https://github.com/arendst/Tasmota/issues/23048)
160126

161127
### Fixed
162-
- Too many zeros in RCSwitch received data regression from v14.4.1.4 [#23050](https://github.com/arendst/Tasmota/issues/23050)
163-
- INA226 driver fixes [#23197](https://github.com/arendst/Tasmota/issues/23197)
164-
- TLS increase timeout and fix crash [#23249](https://github.com/arendst/Tasmota/issues/23249)
165-
- ESP32 receive incomplete serial data over 128 bytes [#23156](https://github.com/arendst/Tasmota/issues/23156)
166-
- ESP32 intermittent exception on WiFi AP cannot be reached [#23115](https://github.com/arendst/Tasmota/issues/23115)
167-
- ESP32-C3 WiFi sleep [#23096](https://github.com/arendst/Tasmota/issues/23096)
168-
- Berry prevent `import` from hiding a solidified class [#23112](https://github.com/arendst/Tasmota/issues/23112)
169-
- Berry `readline` when a line is exactly 98 characters [#23276](https://github.com/arendst/Tasmota/issues/23276)
128+
- Berry `bytes().asstring()` now truncates a string if buffer contains NULL [#23311](https://github.com/arendst/Tasmota/issues/23311)
129+
- Berry string literals containing NULL are truncated [#23312](https://github.com/arendst/Tasmota/issues/23312)
170130

171131
### Removed

0 commit comments

Comments
 (0)