Skip to content

Commit e3ca0c6

Browse files
committed
Merge branch 'release/v6.0.2'
2 parents a76e445 + 4ff591b commit e3ca0c6

File tree

180 files changed

+2553
-1629
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

180 files changed

+2553
-1629
lines changed

.github/workflows/core.yml

+7-6
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,19 @@ jobs:
1414
python-version: "3.6"
1515
- os: windows-latest
1616
python-version: "3.10"
17+
1718
runs-on: ${{ matrix.os }}
19+
1820
steps:
19-
- uses: actions/checkout@v2
21+
- uses: actions/checkout@v3
2022
with:
2123
submodules: "recursive"
24+
2225
- name: Set up Python ${{ matrix.python-version }}
23-
uses: actions/setup-python@v2
26+
uses: actions/setup-python@v3
2427
with:
2528
python-version: ${{ matrix.python-version }}
29+
2630
- name: Install dependencies
2731
run: |
2832
python -m pip install --upgrade pip
@@ -31,11 +35,8 @@ jobs:
3135
- name: Python Lint
3236
run: |
3337
tox -e lint
38+
3439
- name: Integration Tests
35-
env:
36-
TEST_EMAIL_LOGIN: ${{ secrets.TEST_EMAIL_LOGIN }}
37-
TEST_EMAIL_PASSWORD: ${{ secrets.TEST_EMAIL_PASSWORD }}
38-
TEST_EMAIL_IMAP_SERVER: ${{ secrets.TEST_EMAIL_IMAP_SERVER }}
3940
run: |
4041
tox -e testcore
4142

.github/workflows/deployment.yml

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: Deployment
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
- "release/**"
8+
9+
jobs:
10+
deployment:
11+
runs-on: ubuntu-latest
12+
environment: production
13+
14+
steps:
15+
- uses: actions/checkout@v3
16+
with:
17+
submodules: "recursive"
18+
19+
- name: Set up Python
20+
uses: actions/setup-python@v3
21+
with:
22+
python-version: "3.9"
23+
24+
- name: Install dependencies
25+
run: |
26+
python -m pip install --upgrade pip
27+
pip install tox
28+
29+
- name: Deployment Tests
30+
env:
31+
TEST_EMAIL_LOGIN: ${{ secrets.TEST_EMAIL_LOGIN }}
32+
TEST_EMAIL_PASSWORD: ${{ secrets.TEST_EMAIL_PASSWORD }}
33+
TEST_EMAIL_IMAP_SERVER: ${{ secrets.TEST_EMAIL_IMAP_SERVER }}
34+
run: |
35+
tox -e testcore
36+
37+
- name: Publish package to PyPI
38+
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags')
39+
uses: pypa/gh-action-pypi-publish@release/v1
40+
with:
41+
user: __token__
42+
password: ${{ secrets.PYPI_API_TOKEN }}

.github/workflows/examples.yml

+12-17
Original file line numberDiff line numberDiff line change
@@ -2,47 +2,44 @@ name: Examples
22

33
on: [push, pull_request]
44

5+
56
jobs:
67
build:
78
strategy:
89
fail-fast: false
910
matrix:
10-
os: [ubuntu-18.04, windows-latest, macos-latest]
11-
python-version: [3.7]
11+
os: [ubuntu-latest, windows-latest, macos-latest]
1212
runs-on: ${{ matrix.os }}
13+
env:
14+
PIO_INSTALL_DEVPLATFORM_OWNERNAMES: "platformio"
15+
PIO_INSTALL_DEVPLATFORM_NAMES: "aceinna_imu,atmelavr,atmelmegaavr,atmelsam,espressif32,espressif8266,nordicnrf52,raspberrypi,ststm32,teensy"
16+
1317
steps:
14-
- uses: actions/checkout@v2
18+
- uses: actions/checkout@v3
1519
with:
1620
submodules: "recursive"
17-
- name: Set up Python ${{ matrix.python-version }}
18-
uses: actions/setup-python@v2
21+
22+
- name: Set up Python
23+
uses: actions/setup-python@v3
1924
with:
20-
python-version: ${{ matrix.python-version }}
25+
python-version: "3.9"
26+
2127
- name: Install dependencies
2228
run: |
2329
python -m pip install --upgrade pip
2430
pip install tox
2531
2632
- name: Run on Linux
2733
if: startsWith(matrix.os, 'ubuntu')
28-
env:
29-
PIO_INSTALL_DEVPLATFORMS_OWNERNAMES: "platformio"
30-
PIO_INSTALL_DEVPLATFORMS_IGNORE: "ststm8,infineonxmc,intel_mcs51"
3134
run: |
32-
# ChipKIT issue: install 32-bit support for GCC PIC32
33-
sudo apt-get install libc6-i386
3435
# Free space
3536
sudo apt clean
3637
docker rmi $(docker image ls -aq)
3738
df -h
38-
# Run
3939
tox -e testexamples
4040
4141
- name: Run on macOS
4242
if: startsWith(matrix.os, 'macos')
43-
env:
44-
PIO_INSTALL_DEVPLATFORMS_OWNERNAMES: "platformio"
45-
PIO_INSTALL_DEVPLATFORMS_IGNORE: "ststm8,infineonxmc,microchippic32,lattice_ice40,gd32v"
4643
run: |
4744
df -h
4845
tox -e testexamples
@@ -52,8 +49,6 @@ jobs:
5249
env:
5350
PLATFORMIO_CORE_DIR: C:/pio
5451
PLATFORMIO_WORKSPACE_DIR: C:/pio-workspace/$PROJECT_HASH
55-
PIO_INSTALL_DEVPLATFORMS_OWNERNAMES: "platformio"
56-
PIO_INSTALL_DEVPLATFORMS_IGNORE: "ststm8,infineonxmc,riscv_gap"
5752
run: |
5853
tox -e testexamples
5954

.github/workflows/projects.yml

+69
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Projects
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
strategy:
8+
fail-fast: false
9+
matrix:
10+
project:
11+
- marlin:
12+
repository: "MarlinFirmware/Marlin"
13+
folder: "Marlin"
14+
config_dir: "Marlin"
15+
env_name: "mega2560"
16+
- esphome:
17+
repository: "esphome/esphome"
18+
folder: "esphome"
19+
config_dir: "esphome"
20+
env_name: "esp32-arduino"
21+
- smartknob:
22+
repository: "scottbez1/smartknob"
23+
folder: "smartknob"
24+
config_dir: "smartknob/firmware"
25+
env_name: "view"
26+
- espurna:
27+
repository: "xoseperez/espurna"
28+
folder: "espurna"
29+
config_dir: "espurna/code"
30+
env_name: "nodemcu-lolin"
31+
- OpenMQTTGateway:
32+
repository: "1technophile/OpenMQTTGateway"
33+
folder: "OpenMQTTGateway"
34+
config_dir: "OpenMQTTGateway"
35+
env_name: "esp32-m5atom"
36+
os: [ubuntu-latest, windows-latest, macos-latest]
37+
exclude:
38+
- os: windows-latest
39+
project: {"esphome": "", "repository": "esphome/esphome", "folder": "esphome", "config_dir": "esphome", "env_name": "esp32-arduino"}
40+
41+
runs-on: ${{ matrix.os }}
42+
steps:
43+
- uses: actions/checkout@v3
44+
with:
45+
submodules: "recursive"
46+
47+
- name: Set up Python ${{ matrix.python-version }}
48+
uses: actions/setup-python@v3
49+
with:
50+
python-version: 3.9
51+
52+
- name: Install PlatformIO
53+
run: pip install -U .
54+
55+
- name: Check out ${{ matrix.project.repository }}
56+
uses: actions/checkout@v2
57+
with:
58+
submodules: "recursive"
59+
repository: ${{ matrix.project.repository }}
60+
path: ${{ matrix.project.folder }}
61+
62+
- name: Install ESPHome dependencies
63+
# Requires esptool package as it's used in a custom prescript
64+
if: ${{ contains(matrix.project.repository, 'esphome') }}
65+
run: pip install esptool==3.*
66+
67+
- name: Compile ${{ matrix.project.repository }}
68+
run: pio run -d ${{ matrix.project.config_dir }} -e ${{ matrix.project.env_name }}
69+

HISTORY.rst

+12-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Release Notes
44
.. |PIOCONF| replace:: `"platformio.ini" <https://docs.platformio.org/en/latest/projectconf.html>`__ configuration file
55
.. |LDF| replace:: `LDF <https://docs.platformio.org/en/latest/librarymanager/ldf.html>`__
66
.. |INTERPOLATION| replace:: `Interpolation of Values <https://docs.platformio.org/en/latest/projectconf/interpolation.html>`__
7+
.. |UNITTESTING| replace:: `Unit Testing <https://docs.platformio.org/en/latest/advanced/unit-testing/index.html>`__
78

89
.. _release_notes_6:
910

@@ -12,6 +13,16 @@ PlatformIO Core 6
1213

1314
**A professional collaborative platform for declarative, safety-critical, and test-driven embedded development.**
1415

16+
6.0.2 (2022-06-01)
17+
~~~~~~~~~~~~~~~~~~
18+
19+
* Control |UNITTESTING| verbosity with a new multilevel `pio test -v <https://docs.platformio.org/en/latest/core/userguide/cmd_test.html#cmdoption-pio-test-v>`__ command option (`issue #4276 <https://github.com/platformio/platformio-core/issues/4276>`_)
20+
* Follow symbolic links during searching for the unit test suites (`issue #4288 <https://github.com/platformio/platformio-core/issues/4288>`_)
21+
* Show a warning when testing an empty project without a test suite (`issue #4278 <https://github.com/platformio/platformio-core/issues/4278>`_)
22+
* Improved support for `Asking for input (prompts) <https://docs.platformio.org/en/latest/scripting/examples/asking_for_input.html>`_
23+
* Fixed an issue when the `build_src_flags <https://docs.platformio.org/en/latest/projectconf/section_env_build.html#build-src-flags>`__ option was applied outside the project scope (`issue #4277 <https://github.com/platformio/platformio-core/issues/4277>`_)
24+
* Fixed an issue with debugging assembly files without preprocessor (".s")
25+
1526
6.0.1 (2022-05-17)
1627
~~~~~~~~~~~~~~~~~~
1728

@@ -53,7 +64,7 @@ Please check the `Migration guide from 5.x to 6.0 <https://docs.platformio.org/e
5364

5465
* **Unit Testing**
5566

56-
- Refactored from scratch `Unit Testing <https://docs.platformio.org/en/latest/advanced/unit-testing/index.html>`_ solution and its documentation
67+
- Refactored from scratch |UNITTESTING| solution and its documentation
5768
- New: `Test Hierarchy <https://docs.platformio.org/en/latest/advanced/unit-testing/structure.html>`_ (`issue #4135 <https://github.com/platformio/platformio-core/issues/4135>`_)
5869
- New: `Doctest <https://docs.platformio.org/en/latest/advanced/unit-testing/frameworks/doctest.html>`__ testing framework (`issue #4240 <https://github.com/platformio/platformio-core/issues/4240>`_)
5970
- New: `GoogleTest <https://docs.platformio.org/en/latest/advanced/unit-testing/frameworks/googletest.html>`__ testing and mocking framework (`issue #3572 <https://github.com/platformio/platformio-core/issues/3572>`_)

README.rst

+6-6
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@ PlatformIO Core
88
.. image:: https://github.com/platformio/platformio-core/workflows/Core/badge.svg
99
:target: https://docs.platformio.org/en/latest/core/index.html
1010
:alt: CI Build for PlatformIO Core
11-
.. image:: https://github.com/platformio/platformio-core/workflows/Examples/badge.svg
12-
:target: https://github.com/platformio/platformio-examples
13-
:alt: CI Build for dev-platform examples
1411
.. image:: https://github.com/platformio/platformio-core/workflows/Docs/badge.svg
1512
:target: https://docs.platformio.org?utm_source=github&utm_medium=core
1613
:alt: CI Build for Docs
14+
.. image:: https://github.com/platformio/platformio-core/workflows/Examples/badge.svg
15+
:target: https://github.com/platformio/platformio-examples
16+
:alt: CI Build for dev-platform examples
17+
.. image:: https://github.com/platformio/platformio-core/workflows/Projects/badge.svg
18+
:target: https://docs.platformio.org/en/latest/tutorials/index.html#projects
19+
:alt: CI Build for the Community Projects
1720
.. image:: https://img.shields.io/pypi/v/platformio.svg
1821
:target: https://pypi.python.org/pypi/platformio/
1922
:alt: Latest Version
20-
.. image:: https://img.shields.io/badge/license-Apache%202.0-blue.svg
21-
:target: https://pypi.python.org/pypi/platformio/
22-
:alt: License
2323
.. image:: https://img.shields.io/badge/PlatformIO-Labs-orange.svg
2424
:alt: PlatformIO Labs
2525
:target: https://piolabs.com/?utm_source=github&utm_medium=core

docs

Submodule docs updated 249 files

platformio/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
import sys
1616

17-
VERSION = (6, 0, 1)
17+
VERSION = (6, 0, 2)
1818
__version__ = ".".join([str(s) for s in VERSION])
1919

2020
__title__ = "platformio"

platformio/__main__.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@
1919
import click
2020

2121
from platformio import __version__, exception, maintenance
22-
from platformio.commands import PlatformioCLI
22+
from platformio.cli import PlatformioCLI
2323
from platformio.compat import IS_CYGWIN, ensure_python3
2424

2525

2626
@click.command(
2727
cls=PlatformioCLI, context_settings=dict(help_option_names=["-h", "--help"])
2828
)
2929
@click.version_option(__version__, prog_name="PlatformIO Core")
30-
@click.option("--force", "-f", is_flag=True, help="DEPRECATED")
30+
@click.option("--force", "-f", is_flag=True, help="DEPRECATED", hidden=True)
3131
@click.option("--caller", "-c", help="Caller ID (service)")
3232
@click.option("--no-ansi", is_flag=True, help="Do not print ANSI control characters")
3333
@click.pass_context
@@ -120,7 +120,7 @@ def main(argv=None):
120120
`pip install -U platformio` command
121121
122122
* Try to find answer in FAQ Troubleshooting section
123-
https://docs.platformio.org/page/faq.html
123+
https://docs.platformio.org/page/faq/index.html
124124
125125
* Report this problem to the developers
126126
https://github.com/platformio/platformio-core/issues
File renamed without changes.

platformio/account/cli.py

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Copyright (c) 2014-present PlatformIO <[email protected]>
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
import click
16+
17+
from platformio.account.commands.destroy import account_destroy_cmd
18+
from platformio.account.commands.forgot import account_forgot_cmd
19+
from platformio.account.commands.login import account_login_cmd
20+
from platformio.account.commands.logout import account_logout_cmd
21+
from platformio.account.commands.password import account_password_cmd
22+
from platformio.account.commands.register import account_register_cmd
23+
from platformio.account.commands.show import account_show_cmd
24+
from platformio.account.commands.token import account_token_cmd
25+
from platformio.account.commands.update import account_update_cmd
26+
27+
28+
@click.group(
29+
"account",
30+
commands=[
31+
account_destroy_cmd,
32+
account_forgot_cmd,
33+
account_login_cmd,
34+
account_logout_cmd,
35+
account_password_cmd,
36+
account_register_cmd,
37+
account_show_cmd,
38+
account_token_cmd,
39+
account_update_cmd,
40+
],
41+
short_help="Manage PlatformIO account",
42+
)
43+
def cli():
44+
pass

platformio/clients/account.py renamed to platformio/account/client.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
import time
1717

1818
from platformio import __accounts_api__, app
19-
from platformio.clients.http import HTTPClient, HTTPClientError
2019
from platformio.exception import PlatformioException
20+
from platformio.http import HTTPClient, HTTPClientError
2121

2222

2323
class AccountError(PlatformioException):

0 commit comments

Comments
 (0)