Skip to content

Commit

Permalink
feat: initialize repo
Browse files Browse the repository at this point in the history
Signed-off-by: develop-cs <[email protected]>
  • Loading branch information
develop-cs committed Mar 21, 2024
1 parent 19b8339 commit 404e077
Show file tree
Hide file tree
Showing 75 changed files with 5,182 additions and 26 deletions.
22 changes: 22 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. First step...
2. ...

**Expected behavior**
A clear and concise description of what you expected to happen.

**Logs**
If applicable, add logs to help explain your problem.

**Desktop (please complete the following information):**
- Python Version(s): [e.g. 3.12]
- OS: [e.g. macOS]
- IDE: [e.g. VSCode]
- Arta Version [e.g. 1.0.0]

**Additional context**
Add any other context about the problem here.
2 changes: 2 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
---
blank_issues_enabled: false
12 changes: 12 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
## Description
A few sentences describing the overall goals of the pull request's commits.

## Todos
- [ ] Tests
- [ ] Documentation

## Steps to Test or Reproduce
Outline the steps to test or reproduce the PR here.

1. First step
2. ...
49 changes: 49 additions & 0 deletions .github/workflows/ci-cd-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
name: Documentation CI/CD
on:
push:
branches:
- main
pull_request:
types:
- opened
- synchronize
branches:
- main

jobs:
check:
if: ${{ github.actor != 'dependabot[bot]' }}
name: Check docs build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install package with optional dependency 'doc'
run: |
python -m pip install --upgrade pip
pip install .[doc]
- name: Run MkDocs build
working-directory: ./docs
run: mkdocs build
publish:
if: success() && startsWith(github.ref, 'refs/tags')
name: Publish docs on GH Pages
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install package with optional dependency 'doc'
run: |
python -m pip install --upgrade pip
pip install .[doc]
- name: Run MkDocs deploy
working-directory: ./docs
run: mkdocs gh-deploy

59 changes: 59 additions & 0 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
name: Package CI/CD
on:
push:
branches:
- main
pull_request:
types:
- opened
- synchronize
branches:
- main

jobs:
pre-commit:
name: Apply pre-commit hooks
runs-on: ubuntu-latest
strategy:
max-parallel: 1
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12"]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install extra dependencies
run: |
python -m pip install --upgrade pip
pip install .[dev,test]
- name: Cache pre-commit hooks
uses: action/cache@v4
with:
path: ~/.cache/pre-commit
key: ${{ runner.os }}-precommit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Run pre-commit hooks
run: pre-commit run --all-files
publish:
if: success() && startsWith(github.ref, 'refs/tags')
name: Publish to PyPI
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python version
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Build package
run: |
python -m pip install --upgrade build
python -m build
- name: Publish package distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
138 changes: 138 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
# 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/
pip-wheel-metadata/
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/

# 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
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
.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

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

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

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

# mlflow
mlruns/

# tensorboard
runs/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
*/site

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

# Pyre type checker
.pyre/

# VSCode
.vscode
40 changes: 40 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
default_language_version:
python: python3
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.3.2
hooks:
- id: ruff
args: [ --fix ]
- id: ruff-format
- repo: https://github.com/pre-commit/mirrors-mypy
rev: 'v1.9.0'
hooks:
- id: mypy
args: [--config-file=pyproject.toml]
files: src
- repo: https://github.com/gitleaks/gitleaks
rev: v8.18.2
hooks:
- id: gitleaks
- repo: https://github.com/compilerla/conventional-pre-commit
rev: v3.1.0
hooks:
- id: conventional-pre-commit
stages: [commit-msg]
args: [feat, fix, ci, chore, test, docs]
- repo: local
hooks:
- id: tox-check
name: Tests
entry: tox
language: system
pass_filenames: false
always_run: true
- id: cov-check
name: Coverage
language: system
entry: pytest -v --cov=./src/arta --cov-fail-under=90
types: [ python ]
pass_filenames: false
always_run: true
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.7.0] - 2014-04-13

### Added
- Beta release implementing what you can find in its [documentation](https://pages.github.com/MAIF/arta).

### Changed
- Nothing.

### Removed
- Nothing.
Loading

0 comments on commit 404e077

Please sign in to comment.