Skip to content

Commit b79b9a1

Browse files
committed
Merge branch 'release/4.4' into development
2 parents 03b8f53 + ed6a958 commit b79b9a1

File tree

8 files changed

+417
-12
lines changed

8 files changed

+417
-12
lines changed

.github/workflows/pre-release.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Match pre release beta tags on release branches.
2+
name: Pre-release
3+
4+
on:
5+
push:
6+
branches:
7+
- release*
8+
tags:
9+
# Matches 1.2b3 and 1.2.3b4
10+
- "[0-9]+.[0-9]+[ab][0-9]+"
11+
- "[0-9]+.[0-9]+.[0-9]+[ab][0-9]+"
12+
13+
jobs:
14+
pre-release:
15+
runs-on: ubuntu-latest
16+
name: Build pre-release package
17+
18+
steps:
19+
- uses: actions/checkout@v2
20+
21+
- uses: actions/setup-python@master
22+
name: Setup Python 3.8
23+
with:
24+
python-version: 3.8
25+
26+
- name: Install dependencies
27+
run: python -m pip install -U poetry
28+
29+
- name: Build Package
30+
id: build_package
31+
run: |
32+
rm -rf dist
33+
poetry build
34+
cd dist
35+
echo "::set-output name=source::$(ls *.tar.gz)"
36+
echo "::set-output name=wheel::$(ls *.whl)"
37+
38+
- name: Create a Release
39+
id: create_release
40+
uses: actions/create-release@v1
41+
env:
42+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
43+
with:
44+
tag_name: ${{ github.ref }}
45+
release_name: Pre-release ${{ github.ref }}
46+
prerelease: true
47+
48+
- name: Upload Release Wheel
49+
uses: actions/upload-release-asset@v1
50+
env:
51+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
52+
with:
53+
upload_url: ${{ steps.create_release.outputs.upload_url }}
54+
asset_path: ./dist/${{ steps.build_package.outputs.wheel }}
55+
asset_name: ${{ steps.build_package.outputs.wheel }}
56+
asset_content_type: application/x-pywheel+zip
57+
58+
- name: Upload Release Source
59+
uses: actions/upload-release-asset@v1
60+
env:
61+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
62+
with:
63+
upload_url: ${{ steps.create_release.outputs.upload_url }}
64+
asset_path: ./dist/${{ steps.build_package.outputs.source }}
65+
asset_name: ${{ steps.build_package.outputs.source }}
66+
asset_content_type: application/x-tar+gzip

.github/workflows/release.yml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# Match release tags on master branch
2+
name: Release
3+
4+
on:
5+
push:
6+
branches:
7+
- master
8+
tags:
9+
# Matches 1.2.3 and 1.2.3.4
10+
- "[0-9]+.[0-9]+.[0-9]+"
11+
- "[0-9]+.[0-9]+.[0-9].+[0-9]+"
12+
13+
jobs:
14+
release:
15+
runs-on: ubuntu-latest
16+
name: Build release package
17+
18+
steps:
19+
- uses: actions/checkout@v2
20+
21+
- uses: actions/setup-python@master
22+
name: Setup Python 3.8
23+
with:
24+
python-version: 3.8
25+
26+
- name: Install dependencies
27+
run: python -m pip install -U poetry
28+
29+
- name: Build Package
30+
id: build_package
31+
run: |
32+
rm -rf dist
33+
poetry build
34+
cd dist
35+
echo "::set-output name=source::$(ls *.tar.gz)"
36+
echo "::set-output name=wheel::$(ls *.whl)"
37+
38+
- name: Create a Release
39+
id: create_release
40+
uses: actions/create-release@v1
41+
env:
42+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
43+
with:
44+
tag_name: ${{ github.ref }}
45+
release_name: Pre-release ${{ github.ref }}
46+
prerelease: true
47+
48+
- name: Upload Release Wheel
49+
uses: actions/upload-release-asset@v1
50+
env:
51+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
52+
with:
53+
upload_url: ${{ steps.create_release.outputs.upload_url }}
54+
asset_path: ./dist/${{ steps.build_package.outputs.wheel }}
55+
asset_name: ${{ steps.build_package.outputs.wheel }}
56+
asset_content_type: application/x-pywheel+zip
57+
58+
- name: Upload Release Source
59+
uses: actions/upload-release-asset@v1
60+
env:
61+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
62+
with:
63+
upload_url: ${{ steps.create_release.outputs.upload_url }}
64+
asset_path: ./dist/${{ steps.build_package.outputs.source }}
65+
asset_name: ${{ steps.build_package.outputs.source }}
66+
asset_content_type: application/x-tar+gzip
67+
68+
# - name: Upload to PyPI

.github/workflows/test-cases.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# This workflow will install Python dependencies, run tests and lint with a single version of Python
2+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3+
4+
name: Test Cases
5+
6+
on: [push]
7+
8+
jobs:
9+
test:
10+
11+
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
python-version: [3.6, 3.7, 3.8]
15+
16+
name: Test Python ${{ matrix.python-version }}
17+
steps:
18+
- uses: actions/checkout@v2
19+
20+
- name: Setup Python ${{ matrix.python-version }}
21+
uses: actions/setup-python@master
22+
with:
23+
python-version: ${{ matrix.python-version }}
24+
25+
- name: Setup coverage reporter
26+
run: |
27+
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
28+
chmod +x ./cc-test-reporter
29+
GIT_BRANCH=$GITHUB_REF GIT_COMMIT_SHA=$GITHUB_SHA ./cc-test-reporter before-build
30+
31+
- name: Install dependencies
32+
run: |
33+
python -m pip install -U poetry coverage
34+
poetry install
35+
36+
- name: Test with pytest
37+
run: |
38+
poetry run pytest
39+
40+
- name: Codecov
41+
uses: codecov/[email protected]
42+
43+
- name: Report coverage
44+
env:
45+
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
46+
run: |
47+
GIT_BRANCH=$GITHUB_REF GIT_COMMIT_SHA=$GITHUB_SHA ./cc-test-reporter after-build -t coverage.py --exit-code $?

HISTORY

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,45 @@
1+
4.4.beta-4
2+
==========
3+
4+
Features
5+
--------
6+
7+
- Delayed logging on startup, initial log messages are stored (critical messages
8+
are still displayed) to allow for logging to be configured before the stored
9+
messages are replayed for the now active logger. This also opens up the option
10+
of file only based logging.
11+
12+
- Command signature can now accept the Optional values for both positional are
13+
optional arguments, this allows for optional positional arguments.
14+
15+
16+
4.4.beta-3
17+
==========
18+
19+
Features
20+
--------
21+
22+
- Argument grouping support enable, with builtin CLI commands grouped.
23+
24+
25+
Bug fixes
26+
---------
27+
28+
- Custom logging configuration was not being applied for logging defined in settings
29+
30+
- Using an _ in a positional argument signature caused an exception in argparse
31+
32+
33+
4.4.beta-2
34+
==========
35+
36+
Bug fixes
37+
---------
38+
39+
- Positional arguments caused an exception in argparse, a entire new suit of tests
40+
was added to address this issue.
41+
42+
143
4.4.beta-1
244
==========
345

README.rst

Lines changed: 33 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -76,30 +76,53 @@ So what do we handle?
7676
Extensions
7777
==========
7878

79-
- SQLAlchemy - `pyapp.sqlalchemy`_
80-
- Redis - `pyapp.redis`_
81-
- AIOBotocore - `pyapp.aiobotocore`_
79+
- 🔌 SQLAlchemy - `pyapp.sqlalchemy`_
80+
- 🔌 Redis - `pyapp.redis`_
81+
82+
In Beta
83+
-------
84+
85+
- 🐛 Rollbar - `pyapp.rollbar`_
86+
87+
- 📧 AIO SMTPlib - `pyapp.aiosmtplib`_ Extension for aiosmtplib
88+
89+
- ☁ Boto3 - `pyapp.boto3`_
90+
91+
- ☁ AIOBotocore - `pyapp.aiobotocore`_
92+
93+
- 📨 Messaging - `pyapp.messaging`_ - Extension to provide abstract interfaces for Message Queues.
94+
95+
- 📨 AWS Messaging - `pyapp.messaging-aws`_ - Messaging extension for AWS (SQS/SNS)
8296

8397
In development
8498
--------------
8599

86-
- SMTP - `pyapp.SMTP`_
87-
- Boto3 - `pyapp.boto3`_
88-
- Messaging - `pyapp.messaging` - Extension to provide abstract interfaces for Message Queues.
89-
- Aio-Pika - `pyapp.aiopika` - Messaging extension for pika (RabbitMQ/AMQP)
90-
- AIOBotocore - `pyapp.aiobotocore` - Messaging extension for AWS (SQS/SNS)
91-
100+
- 📧 SMTP - `pyapp.SMTP`_
101+
102+
- 📨 Aio-Pika - `pyapp.aiopika`_ - Messaging extension for pika (RabbitMQ/AMQP)
103+
104+
- 🔌 PySpark - `pyapp.pyspark`_ - Extension for PySpark
105+
106+
- 🔎 Elastic Search - `pyapp.elasticsearch`_ - Extension for Elasticsearch
92107

93108
Coming soon
94109
-----------
95110

96-
Extensions for LDAP, Paramiko.
111+
- 📨 AMQP Messaging - Messaging extension for AMQP (RabbitMQ)
112+
97113

98114
.. _pyapp.sqlalchemy: https://www.github.com/pyapp-org/pyapp.sqlalchemy
99115
.. _pyapp.redis: https://www.github.com/pyapp-org/pyapp.redis
100116
.. _pyapp.aiobotocore: https://www.github.com/pyapp-org/pyapp.aiobotocore
101117
.. _pyapp.SMTP: https://www.github.com/pyapp-org/pyapp.SMTP
102118
.. _pyapp.boto3: https://www.github.com/pyapp-org/pyapp.boto3
119+
.. _pyapp.rollbar: https://www.github.com/pyapp-org/pyapp.rollbar
120+
.. _pyapp.aiosmtplib: https://www.github.com/pyapp-org/pyapp.aiosmtplib
121+
.. _pyapp.messaging: https://www.github.com/pyapp-org/pyapp-messaging
122+
.. _pyapp.messaging-aws: https://www.github.com/pyapp-org/pyapp-messaging-aws
123+
.. _pyapp.aiopika: https://www.github.com/pyapp-org/pyapp.aiopika
124+
.. _pyapp.pyspark: https://www.github.com/pyapp-org/pyapp.pyspark
125+
.. _pyapp.elasticsearch: https://www.github.com/pyapp-org/pyapp.elasticsearch
103126

104127

105128
Contributions

docs/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,10 +92,11 @@ Table of Contents
9292
:maxdepth: 2
9393

9494
getting-started
95+
sys-admin-playbook
9596
recipes/index
97+
reference/index
9698
extensions
9799
developers
98-
reference/index
99100
change-history
100101

101102
Indices and tables

0 commit comments

Comments
 (0)