Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v.0.1.0 #13

Merged
merged 67 commits into from
May 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
91b5f98
Feature/package structure (#1)
alexandermentormate Apr 1, 2024
de851a1
Feature/accommodate tox (#2)
alexandermentormate Apr 2, 2024
7967b4e
Feature/accommodate pre commit (#3)
alexandermentormate Apr 2, 2024
28225de
Feature/ci cd pipeline (#4)
alexandermentormate Apr 4, 2024
ee4bf1b
Feature/ci cd pypi workflow (#5)
alexandermentormate Apr 5, 2024
df2c891
Update package version
alexandermentormate Apr 5, 2024
294ca65
Feature/semantic release (#6)
alexandermentormate Apr 8, 2024
7d362a7
Feature/poetry migration (#7)
alexandermentormate Apr 9, 2024
9220338
fix: Fix missing version for the release step
alexandermentormate Apr 9, 2024
e173803
fix: Include personal access token for the failing step in the publis…
alexandermentormate Apr 9, 2024
6d020e4
fix: Include missing parameters for the 'Publish package' step
alexandermentormate Apr 9, 2024
85247f9
fix: Uncomment the build step, because of missing dist/
alexandermentormate Apr 9, 2024
4d6b324
fix: Include explicit branch config for semantic release
alexandermentormate Apr 9, 2024
f81e085
0.0.1
invalid-email-address Apr 9, 2024
0600fee
fix: Remove invalid classifier
alexandermentormate Apr 9, 2024
50559ec
Merge branch 'development' of github.com:MentorMate/python-project-cl…
alexandermentormate Apr 9, 2024
91cc618
0.0.2
invalid-email-address Apr 9, 2024
b230adc
Update package version
alexandermentormate Apr 9, 2024
85c7339
feat: Update package version
alexandermentormate Apr 9, 2024
357670d
0.1.0
invalid-email-address Apr 9, 2024
3df54b9
docs: Edit the deploy reference
alexandermentormate Apr 9, 2024
4881d20
ci: Optimise the CI process
alexandermentormate Apr 9, 2024
65f6958
ci: Optimise the CI process
alexandermentormate Apr 9, 2024
1817176
ci: Optimise the CI process
alexandermentormate Apr 9, 2024
440392b
ci: Update version
alexandermentormate Apr 9, 2024
d5d5452
ci: Test alternative configurations
alexandermentormate Apr 9, 2024
6e7c296
fix: Simple semantic-release config test
alexandermentormate Apr 10, 2024
98a1266
0.1.0
invalid-email-address Apr 10, 2024
a3945a9
feat: Add divide_by_two test feature
alexandermentormate Apr 10, 2024
e977c20
0.2.0
invalid-email-address Apr 10, 2024
754c1d6
ci: Test pypi publish with new setup
alexandermentormate Apr 10, 2024
a3b8dee
feat: Test deploy
alexandermentormate Apr 10, 2024
ef5b779
0.3.0
invalid-email-address Apr 10, 2024
4dee22e
ci: Test skip release job
alexandermentormate Apr 10, 2024
a70b741
ci: Test skip publish package
alexandermentormate Apr 10, 2024
b5b5132
ci: Test skip publish package
alexandermentormate Apr 10, 2024
e52f1a9
ci: Test skip publish package
alexandermentormate Apr 10, 2024
133897b
feat: Important feature added
alexandermentormate Apr 10, 2024
3bc263c
0.4.0
invalid-email-address Apr 10, 2024
f5cb529
docs: Update README.md with notes on how to use python-semantic-relea…
alexandermentormate Apr 10, 2024
fd55c50
ci: Clean the commented code from the workflows; Uncomment the tests
alexandermentormate Apr 10, 2024
893c27d
ci: Separate the release and publish jobs
alexandermentormate Apr 10, 2024
c54435f
Revert "ci: Separate the release and publish jobs"
alexandermentormate Apr 10, 2024
6057a53
fix: Update the README title; Force patch release
alexandermentormate Apr 10, 2024
814475b
0.4.1
invalid-email-address Apr 10, 2024
b598a9d
Feature/integrate ruff (#8)
alexandermentormate Apr 11, 2024
2908b72
feat: Update README.md; Trigger new feature release after the project…
alexandermentormate Apr 11, 2024
60ea5ee
Merge pull request #10 from MentorMate/feature/exclude-squash-merging…
alexandermentormate Apr 11, 2024
dd4d0f7
0.5.0
invalid-email-address Apr 11, 2024
e7b3d1c
fix: Remove the mock project directories and files
alexandermentormate Apr 16, 2024
fb0a2ed
chore: Update the pre-commit to call hooks from poetry
alexandermentormate Apr 16, 2024
a4eece8
chore: Add typer to poetry; Update poetry.lock
alexandermentormate Apr 16, 2024
71723e1
feat: Add base typer example code; Separate the ruff check and format…
alexandermentormate Apr 16, 2024
e008957
chore: Remove example pytest files
alexandermentormate Apr 25, 2024
24424e9
feat: Add cookiecutter library
alexandermentormate Apr 25, 2024
5f503e7
feat: Create typer cli commands: generate, version and status
alexandermentormate Apr 25, 2024
702bacf
test: Add unit tests for the new cli commands
alexandermentormate Apr 25, 2024
13e39e4
test: Limit the test_status, because it's not passing in tox environemnt
alexandermentormate Apr 25, 2024
e831a4f
Merge pull request #11 from MentorMate/feature/ebctn-489
alexandermentormate Apr 25, 2024
5372cdf
0.6.0
invalid-email-address Apr 25, 2024
d6d3ede
feat: Create an alias called python-cli for more convenient cli access
alexandermentormate Apr 30, 2024
4b55e3a
Update LICENSE from MIT to UNLICENSED
alexandermentormate Apr 30, 2024
26cff70
ci: Create workflow for pypi release
alexandermentormate Apr 30, 2024
7128e51
docs: Update the documentation with the basic commands
alexandermentormate Apr 30, 2024
5015b97
Merge branch 'development' into feature/ebctn-490
alexandermentormate Apr 30, 2024
744c905
Reset CHANGELOG
alexandermentormate May 12, 2024
7b7d112
Merge pull request #12 from MentorMate/feature/ebctn-490
alexandermentormate May 12, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
## code changes will send PR to the following users
* @alexandermentormate @ie-mm @divanov-mentormate @gp-mentormate
40 changes: 40 additions & 0 deletions .github/workflows/main_release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: 🐍 + 📦 => PyPI

on:
workflow_run:
workflows: ["Tests"]
branches: [main]
types:
- completed

jobs:

release:
runs-on: ubuntu-latest
concurrency: release

permissions:
id-token: write
contents: write

environment:
name: pypi
url: https://pypi.org/p/python-project-cli

steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Check for new Relase and ...release
uses: python-semantic-release/python-semantic-release@master
with:
github_token: ${{ secrets.ACCESS_TOKEN }}

- name: Publish package to PyPI if new release available
uses: pypa/gh-action-pypi-publish@release/v1
if: ${{ hashFiles('dist/') != '' }}
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
repository-url: https://pypi.org/legacy/
40 changes: 40 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: 🐍 + 📦 => TestPyPI

on:
workflow_run:
workflows: ["Tests"]
branches: [development]
types:
- completed

jobs:

release:
runs-on: ubuntu-latest
concurrency: release

permissions:
id-token: write
contents: write

environment:
name: testpypi
url: https://test.pypi.org/p/python-project-cli

steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Check for new Relase and ...release
uses: python-semantic-release/python-semantic-release@master
with:
github_token: ${{ secrets.ACCESS_TOKEN }}

- name: Publish package to TestPyPI if new release available
uses: pypa/gh-action-pypi-publish@release/v1
if: ${{ hashFiles('dist/') != '' }}
with:
user: __token__
password: ${{ secrets.TEST_PYPI_API_TOKEN }}
repository-url: https://test.pypi.org/legacy/
34 changes: 34 additions & 0 deletions .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Tests

on:
push:
branches:
- 'development'
- 'master'
pull_request:
branches:
- 'development'
- 'master'

jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
# python-version: ['3.10', '3.11', '3.12']
python-version: ['3.11']

steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry
poetry install
- name: Test with tox
run: poetry run tox
160 changes: 160 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
19 changes: 19 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
fail_fast: true
repos:
- repo: local
hooks:
- id: mypy
name: mypy
entry: poetry run mypy
language: system
types: [file, python]
- id: ruff_check
name: ruff check
entry: poetry run ruff check
language: system
types: [file, python]
- id: ruff_format
name: ruff format
entry: poetry run ruff format
language: system
types: [file, python]
Empty file added CHANGELOG.md
Empty file.
24 changes: 24 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
This is free and unencumbered software released into the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means.

In jurisdictions that recognize copyright laws, the author or authors
of this software dedicate any and all copyright interest in the
software to the public domain. We make this dedication for the benefit
of the public at large and to the detriment of our heirs and
successors. We intend this dedication to be an overt act of
relinquishment in perpetuity of all present and future rights to this
software under copyright law.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

For more information, please refer to <https://unlicense.org>
Loading
Loading