Skip to content

Commit

Permalink
[MERGE] Release canidit for Version 1.3.0
Browse files Browse the repository at this point in the history
Initial Stable Base

 - b93f1a6 & 3bea4e8 Initial Setup Scripts and Configs
 - 7758e33 Initial `Makefile`...
 - c03fe27 Initial `README` Document
 - 73f2ce1 Initial requirements file (for python dependancies)
 - 35bd95c Initail `CI` settings for all the things 🎉
 - 60a5685 & a182d34 & 067a294 Initial Tests
   + New project Github Actions for CI testing #10
   + New Minimal Acceptance Testing 731726b
   + New user-install option 53e8a8f
   + Fix for project Build Testing
   + Fix for project Testing Coverage 60dfe04
   + Fix for User-Install Testing ( see #26 )
   + ...and More ( see #1 & #15 & #17 & #29 )

 - 8fc88a8 Cleaned up numerous anti-patterns
 - 4354c2c improved stability of `make clean`
 - 5c94cc7 fix for typos
 - 241922e Fixes for cli argument wrangling ( see #28 & #34 )
 - 7d03fef & 8ba92c3 & b49aee5 Reduced some complexity in test utilities
 - 1ddaa5a Renamed tests by new convention ( see #34 )
 - ...and improved stability throughout project

 - 4ec2e21 & fe25e79 & d7a8ea5 Dropped Travis-CI support due to paywall.
 - 0698978 Python 3.10+ not stable at this time ( see #29 )
 - fd8772e (BREAK-FIX) EOL python 2.x (and so deprecates unstable `setup.py test`)

Initial Point of passing initial tests and such (caveat: low code-coverage)
- [x] Closes #2
- [x] Closes #3
- [x] Closes #4
- [x] Closes #6
- [x] Closes #7
- [x] Closes #8
- [x] Resolved #9
- [x] Closes #12
- [x] Opens #13 🏷️
- [x] Closes #14
- [x] Closes #16
- [x] Closes #17
- [x] Opens #18 🏷️
- [x] Closes #21
- [x] Closes #22
- [x] Closes #23
- [x] Opens #24 🏷️
- [x] Opens #25 🏷️
  - [x] Closes #19
  - [x] Opens #20 🏷️
  - [x] Closes #28
  - [x] Closes #15
- [x] Opens #26 🏷️
- [x] Opens #27 🏷️
- [x] Closes #29
- [x] Closes #30
- [x] Opens #31 🏷️
- [x] Opens #32 🏷️
- [x] Opens #33
- [x] Closes #34
- [x] Opens #35 🏷️
- [x] Closes #36
  • Loading branch information
reactive-firewall committed Mar 8, 2022
2 parents fb4922c + a68e5ef commit 82df954
Show file tree
Hide file tree
Showing 31 changed files with 2,322 additions and 951 deletions.
13 changes: 10 additions & 3 deletions .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ branches:
skip_tags: true
max_jobs: 1
image:
- Visual Studio 2022
- Visual Studio 2019
- Visual Studio 2017
- Visual Studio 2015
clone_depth: 50
init:
- cmd: >-
Expand All @@ -23,14 +24,20 @@ init:
python -m pip install coverage || VER>NUL
python -m pip install --upgrade doctest || VER>NUL
python -m pip install pytest || VER>NUL
python -m pip install pytest-cov || VER>NUL
choco install codecov || VER>NUL
dir
build_script:
- cmd: make clean
test_script:
- cmd: >-
make test || VER>NUL
make test-pytest || VER>NUL
dir
Expand All @@ -42,7 +49,7 @@ test_script:
dir
codecov || VER>NUL
codecov -f coverage.xml || VER>NUL
dir
Expand Down
52 changes: 33 additions & 19 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@ version: 2
jobs:
build:
docker:
- image: circleci/python:3.6.1
- image: circleci/python:3.7
- image: circleci/python:3.8
- image: circleci/python:3.9
- image: circleci/python:3.9
resource_class: medium
environment:
CI: cicleci
DEBIAN_FRONTEND: noninteractive
LANG: en_US.UTF-8
LC_CTYPE: en_EN.UTF-8
LC_CTYPE: en_US.UTF-8
SHELL: /bin/bash
working_directory: ~/python-repo
working_directory: ~/multicast
steps:
- checkout
- run:
Expand All @@ -29,31 +29,31 @@ jobs:
shell: /bin/bash
name: "install coverage attempt"
command: |
python3 -m pip install --user coverage || true
python3 -m pip install --upgrade --user coverage || true
- run:
name: "install flake8 attempt"
command: |
python3 -m pip install --user flake8 || true
python3 -m pip install --upgrade --user flake8 || true
when: on_success
- save_cache:
key: v1-repo-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/python-repo
- ~/multicast

test:
docker:
- image: circleci/python:3.6.1
- image: circleci/python:3.7
- image: circleci/python:3.8
- image: circleci/python:3.9
- image: circleci/python:3.9
parallelism: 2
resource_class: medium
environment:
CI: cicleci
DEBIAN_FRONTEND: noninteractive
LANG: en_US.UTF-8
LC_CTYPE: en_EN.UTF-8
LC_CTYPE: en_US.UTF-8
SHELL: /bin/bash
working_directory: ~/python-repo
working_directory: ~/multicast
steps:
- restore_cache:
key: v1-repo-{{ .Environment.CIRCLE_SHA1 }}
Expand All @@ -67,7 +67,7 @@ jobs:
shell: /bin/bash
name: "Installing newer deps"
command: |
python3 -m pip install --user coverage3 || true
python3 -m pip install --upgrade --user coverage3 || true
when: on_fail
- run:
shell: /bin/bash
Expand Down Expand Up @@ -96,33 +96,45 @@ jobs:

pytest:
docker:
- image: circleci/python:3.6.1
- image: circleci/python:3.7
- image: circleci/python:3.8
- image: circleci/python:3.9
- image: circleci/python:3.9
parallelism: 2
resource_class: medium
environment:
CI: cicleci
DEBIAN_FRONTEND: noninteractive
LANG: en_US.UTF-8
LC_CTYPE: en_EN.UTF-8
LC_CTYPE: en_US.UTF-8
SHELL: /bin/bash
working_directory: ~/python-repo
working_directory: ~/multicast
steps:
- restore_cache:
key: v1-repo-{{ .Environment.CIRCLE_SHA1 }}
- run:
shell: /bin/bash
name: "setup for doctest"
command: |
python3 -m pip install --upgrade --user doctest || true
when: on_success
- run:
shell: /bin/bash
name: "clean up for test"
command: |
python3 -m pip install --user coverage || true
python3 -m pip install --upgrade --user coverage || true
when: on_success
- run:
shell: /bin/bash
name: "setup up for pytest"
command: |
python3 -m pip install --user pytest || true
when: on_success
- run:
shell: /bin/bash
name: "setup up for pytest"
command: |
python3 -m pip install --user pytest-cov || true
when: on_success
- run:
shell: /bin/bash
name: "clean up for pytest"
Expand Down Expand Up @@ -157,13 +169,14 @@ jobs:
lint:
docker:
- image: circleci/python:3.9
resource_class: medium
environment:
CI: cicleci
DEBIAN_FRONTEND: noninteractive
LANG: en_US.UTF-8
SHELL: /bin/bash
LC_CTYPE: en_EN.UTF-8
working_directory: ~/python-repo
LC_CTYPE: en_US.UTF-8
working_directory: ~/multicast
steps:
- restore_cache:
key: v1-repo-{{ .Environment.CIRCLE_SHA1 }}
Expand Down Expand Up @@ -201,3 +214,4 @@ workflows:
- pytest:
requires:
- build
- test
71 changes: 61 additions & 10 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,68 @@
codecov:
max_report_age: off


coverage:
precision: 2
range: "80...100"
status:
default_rules:
flag_coverage_not_uploaded_behavior: exclude
project:
default: on
target: 95%
default:
target: auto
base: auto
tests:
branches:
- master
- stageing
- stable
if_ci_failed: error #success, failure, error, ignore
only_pulls: false
multicast:
target: 95%
threshold: 1%
flags:
- multicast
paths:
- "multicast/"
- "setup.py"
- "!tests/"
unittests:
target: 80%
flags: tests
threshold: 5%
flags:
- unittests
paths:
- tests
- "tests/"


flags:
tests:
paths:
- tests
joined: false
flag_management:
default_rules: # the rules that will be followed for any flag added, generally
carryforward: false
statuses:
- name_prefix: project-
type: project
target: auto
threshold: 0%
- name_prefix: patch-
type: patch
target: 50%
individual_flags: # exceptions to the default rules above, stated flag by flag
- name: multicast #fill in your own flag name
paths:
- multicast/*.py #fill in your own path. Note, accepts globs, not regexes
- setup.py
carryforward: true
statuses:
- type: project
target: 90%
- name: tests
paths:
- tests/check_* #fill in your own path. Note, accepts globs, not regexes
- tests/*.py #fill in your own path. Note, accepts globs, not regexes
- "!multicast/"
carryforward: true
- name: unittests
paths:
- tests/ #fill in your own path. Note, accepts globs, not regexes
carryforward: true
52 changes: 39 additions & 13 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -1,24 +1,50 @@
[run]
parallel = True
branch = True
concurrency = multiprocessing

[report]
include = multicast*,tests*
# Regexes for lines to exclude from consideration
exclude_lines =
# Have to re-enable the standard pragma
pragma: no cover
except Exception
except BaseException:
# Don't complain if tests don't hit defensive assertion code:
raise AssertionError
raise NotImplementedError
raise ImportError
except unittest.SkipTest
except IOError
except OSError
# Have to re-enable the standard pragma
pragma: no cover
from . import
except Exception
except BaseException:
# Don't complain if tests don't hit defensive assertion code:
raise AssertionError
raise NotImplementedError
raise ImportError
except subprocess.CalledProcessError
except ..Error
# don't complain about sys.modules
sys.modules
not in sys.modules:
# Don't complain if non-runnable code isn't run:
if __name__ in u'__main__':
if __name__ .. .__main__.:
if __sys_path__ not in sys.path:
os.abort()
exit

# Don't complain if non-runnable code isn't run:
if __name__ in '__main__':

partial_branches =
# Have to re-enable the standard pragma rules
pragma: no branch
finally:
except unittest.SkipTest
# Don't complain if non-runnable code isn't run:
if __name__ in u'__main__':
if __name__ in '__main__':
if __sys_path__ not in sys.path:
# don't complain about sys.modules
sys.modules
not in sys.modules:
if context.__name__ is None:
if 'os' not in sys.modules:
if 'os.path' not in sys.modules:
if 'argparse' not in sys.modules:

ignore_errors = True

11 changes: 7 additions & 4 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,18 @@
*.cfg text diff=config
*.txt text
*.py text working-tree-encoding=UTF-8 diff=python
multicast/*.py text working-tree-encoding=UTF-8 diff=python
tests/*.py text working-tree-encoding=UTF-8 diff=python
*.pyc -text
*.sh text
*.bash text
*.bash text diff=shell
*.ini text
*.md text
*.md text working-tree-encoding=UTF-8
*.yml text
*.jpg -text
*.png -text
*.conf text
*.conf text diff=config
*.bat text
*.rst text
tests/check_* text
tests/check_* text working-tree-encoding=UTF-8 diff=shell
Makefile text diff=makefile
11 changes: 11 additions & 0 deletions .github/workflows/Labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: "Pull Request Labeler"
on:
- pull_request_target

jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v3
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
Loading

0 comments on commit 82df954

Please sign in to comment.