71 Commits

Author SHA1 Message Date
Maxim Prokhorov
071131260f pio: specify revision as prerelease 2021-01-20 23:39:28 +03:00
Maxim Prokhorov
7817e3abd5 pio: accept external revision string 2021-01-20 23:35:36 +03:00
Maxim Prokhorov
3a34d555d5 ci: don't mention travis 2021-01-14 18:11:14 +03:00
Maxim Prokhorov
f11468abba ci: github actions
- remove .travis.yml
- ./travis_{script,install}.sh -> ./ci_{script,install}.sh
- flush stdout in test script to see logs more promptly
- adjust git config to ignore 'detachedHead' warnings
2020-12-30 22:44:28 +03:00
Maxim Prokhorov
3287dbcee7 pio: small helper to use libdeps installer 2020-12-15 01:02:45 +03:00
Maxim Prokhorov
850db61b76 pio: filter single-source files by absolute path
Specifically, this will break RFM69_SUPPORT on case insensitive
filesystems due to the RFM69.cpp from the RFM69 lib being ignored
when adding ESPurna's rfm69.cpp
2020-11-16 10:52:54 +03:00
Maxim Prokhorov
e1b643fd00 pio: update ldpath as soon as possible
trying to fix #2343
*** [.pio\build\$PIOENV\firmware.bin] TypeError
`expected str, bytes or os.PathLike object, not Dir' trying to evaluate `${__get_flash_size(__env__)}'

as it turns out, PIO platform internals (sometimes) did not use the correct ldscript path
2020-09-04 23:00:40 +03:00
Max Prokhorov
1d957506b3 PIO: remove Arduino Core 2.3.0 support (#2333)
As this is no longer an option since PIO 4.4.0
ref.
04694b4126
https://docs.platformio.org/en/latest/core/history.html

*...I have known you for so long
When we ran in circles...*
2020-08-22 01:36:44 +03:00
Rui Marinho
6266930a4d sns: Add BME680 (#2295)
Add support for BME680 using libalgobsec proprietary algorithms for precise Indoor Air Quality (IAQ) measurement. Unlike traditional CO2 sensors - and good ones are expensive - it measures nearly all VOCs compounds in the air (plus other gases) and compensates those measurements with its built-in temperature and humidity sensors to determine indoor air quality.

Co-authored-by: Max Prokhorov <prokhorov.max@outlook.com>
2020-08-02 09:12:38 +03:00
Maxim Prokhorov
8e49523710 test: add --no-single-source to check whether normal build process works 2020-07-16 05:27:42 +03:00
Max Prokhorov
cb8443dfa3 Use #include for single source build (#2267)
* [1/2] use #include for single source

* [2/2] use #include for single source
2020-05-31 05:48:47 +03:00
Maxim Prokhorov
50163fc051 Add line hint to the single source file
c/p from the InoToCpp converter that uses scons file node path
while we write binary data as utf-8 (and assume it is utf-8!),
we only ever need this in CI and source is always relative.
with luck, this is on the safe side.
2020-05-01 10:19:26 +03:00
Max Prokhorov
edb23dbfc4 Convert .ino -> .cpp (#2228)
- general conversion from .ino modules into a separate .cpp files
- clean-up internal headers, place libraries into .h. guard .cpp with _SUPPORT flags 
- fix some instances of shared variables instead of public methods
- tweak build system to still build a single source file via os environment variable ESPURNA_BUILD_SINGLE_SOURCE
2020-04-30 13:55:07 +03:00
Maxim Prokhorov
492a35926f ci: rework build.sh & release.sh generator
- don't depend on TRAVIS environment variables
- depend on CI flag to add release variables
- chmod +x
2020-04-08 23:28:43 +03:00
Max Prokhorov
db50be91bc PIO: fix env definitions (again) (#2212)
* base envs

* CI: speed up release process (since we still want some .bin files)

* fixup! CI: speed up release process (since we still want some .bin files)

* release dry run

* fixup! release dry run

* adjust

* fix .bin name

* it works

* minor cleanup for current git

* use pio suggestion about ldscript, reduce build_flags impact

* fix linker

* parse ${vars} instead of ignoring them

* add filtering and override file (sneak peak into tasmota's pio config)

* don't generate secure client (for now)

* formatting

* codacy
2020-04-07 21:20:32 +03:00
Max Prokhorov
a4d4231ae0 PIO: remove -ota envs, handle OTA condition in extra script (#2099)
* PIO: remove -ota envs, handle OTA condition in extra script
* Tweak ESPURNA_BOARD variable
* Support git and latest in ota script
* Handle ESPURNA_FLAGS too
* Try to handle env and projenv in pylint
* Add deprecation comment about -ota envs
* regen arduino.h
2020-01-20 17:41:10 +03:00
Max Prokhorov
5ac420dfcd Scripts: memanalyzer can use size instead of objdump (#2021)
* utils: use size instead of objdump, include .text1 in .text calculation

* cleanup class attrs, import
2019-11-28 19:48:53 +03:00
Max Prokhorov
f743ca4c6c Reword comments regarding 2.4.0 (#2024) 2019-11-28 19:47:31 +03:00
Max Prokhorov
0b5d200de1 Scripts: memanalyser fixes (#2014)
* scripts: memanalyzer fixes

- cleanup duplication
- cleanup external dependencies
- properly use subprocess when calling pio, add debug mode
- cleanup argparse usage, use store_true actions instead of counters
- use python3 syntax and python3 shebang by default
- fix some issues with module dependencies

* move to scripts

* use simple return

* quick fix for rfm

* codacy unused import

* formatting

* show defaults

* while at it, rewrite to make pylint happy

* fix unused

* add windows support + note
2019-11-27 01:07:50 +03:00
Maxim Prokhorov
b36e5ee396 test: allow to run a single configuration test, improve commandline handling 2019-10-22 15:17:22 +03:00
Max Prokhorov
c18490cc4a PIO: pass APP_REVISION via extra scripts (#1946)
* utils/version: use git description token as version, add memoization

* pio: move extra scripts to a separate directory

* pio: add -DAPP_REVISION=... as local build flag
2019-10-16 14:41:43 +03:00