Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
c2b3ad8
First draft with lots of errors.
tobiasraabe Dec 20, 2021
c5f300f
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Dec 20, 2021
52f5de3
Adopt src layout.
tobiasraabe Dec 20, 2021
f4a0c9a
Fix pre-commit.
tobiasraabe Dec 21, 2021
14a9ea2
Merge branch 'first-version' of https://github.com/pytask-dev/cookiec…
tobiasraabe Dec 21, 2021
dc2822a
Run only end to end tests.
tobiasraabe Dec 21, 2021
92249f2
fix.
tobiasraabe Dec 21, 2021
e58c3a6
Escape curly braces for tox.
tobiasraabe Dec 21, 2021
10bc13d
install package.
tobiasraabe Dec 21, 2021
3a8e783
Fix test.
tobiasraabe Dec 21, 2021
25fc8bb
Set up license.
tobiasraabe Dec 21, 2021
6ba6b69
New version.
tobiasraabe Dec 22, 2021
78e3c33
New version.
tobiasraabe Dec 22, 2021
90e9180
fix.
tobiasraabe Dec 22, 2021
0e11048
Fix tests.
tobiasraabe Dec 22, 2021
ae9bcae
Commit new hooks.
tobiasraabe Dec 22, 2021
b31ff97
Add hook to make first commit.
tobiasraabe Dec 22, 2021
8f6cfe0
Make initia commit on main branch.
tobiasraabe Dec 22, 2021
be8a6cd
Fix hooks.
tobiasraabe Dec 22, 2021
48654b7
prepare release last fixes.
tobiasraabe Dec 22, 2021
d07d716
Remove placeholder folders.
tobiasraabe Dec 22, 2021
e931977
Better readme.
tobiasraabe Dec 22, 2021
7ffc087
remove unused variable:
tobiasraabe Dec 22, 2021
8de632e
Add badges.
tobiasraabe Dec 22, 2021
6ebabec
Reformat README and docs.
tobiasraabe Jan 3, 2022
7196e6b
Add pytask.ini and fix collection path.
tobiasraabe Jan 3, 2022
ddfb878
Some final touches.
tobiasraabe Jan 5, 2022
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
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---

name: Bug Report
about: Create a bug report to help us improve cookiecutter-pytask
title: "BUG:"
labels: "bug"

---

- [ ] I have checked that this issue has not already been reported.

- [ ] I have confirmed this bug exists on the latest version of cookiecutter-pytask.

- [ ] (optional) I have confirmed this bug exists on the `main` branch of
cookiecutter-pytask.

---

**Note**: Please read [this
guide](https://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports) detailing
how to provide the necessary information for us to reproduce your bug.

#### Code Sample, a copy-pastable example

```python
# Your code here
```

#### Problem description

Explain **why** the current behaviour is a problem and why the expected output is a
better solution.

#### Expected Output
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---

name: Documentation Improvement
about: Report wrong or missing documentation
title: "DOC:"
labels: "documentation"

---

#### Location of the documentation

Provide the location of the documentation, e.g. an URL to a section of the readme.

#### Documentation problem

Provide a description of what documentation you believe needs to be fixed/improved.

#### Suggested fix for documentation

Explain the suggested fix and **why** it's better than the existing documentation.
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---

name: Enhancement
about: Suggest an idea for cookiecutter-pytask
title: "ENH:"
labels: "enhancement"

---

#### Is your feature request related to a problem?

Provide a description of what the problem is, e.g. "I wish I could use
cookiecutter-pytask to do [...]".

#### Describe the solution you'd like

Provide a description of the feature request and how it might be implemented.

#### API breaking implications

Provide a description of how this feature will affect the API.

#### Describe alternatives you've considered

Provide a description of any alternative solutions or features you've considered.

#### Additional context

Add any other context, code examples, or references to existing implementations about
the feature request here.

```python
# Your code here, if applicable
```
18 changes: 18 additions & 0 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---

name: Submit Question
about: Ask a general question about cookiecutter-pytask
title: "QST:"
labels: "question"

---

#### Question about pytask

**Note**: If you'd still like to submit a question, please read [this guide](
https://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports) detailing how to
provide the necessary information for us to reproduce your question.

```python
# Your code here, if applicable
```
9 changes: 9 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#### Changes

Provide a description and/or bullet points to describe the changes in this PR.

#### Todo

- [ ] Reference issues which can be closed due to this PR with "Closes #x".
- [ ] Review whether the documentation needs to be updated.
- [ ] Document PR in CHANGES.rst.
84 changes: 84 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: main

on:
push:
branches:
- main
pull_request:
branches:
- '*'

jobs:

run-tests:

name: Run tests for ${{ matrix.os }} on ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
env:
CONDA_EXE: mamba

strategy:
fail-fast: false
matrix:
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
python-version: ['3.7', '3.8', '3.9']

steps:
- uses: actions/checkout@v2
- uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: ${{ matrix.python-version }}

- name: Install core dependencies.
shell: bash -l {0}
run: conda install -c conda-forge tox-conda coverage

# Unit, integration, and end-to-end tests.

# - name: Run unit tests and doctests.
# shell: bash -l {0}
# run: tox -e pytest -- "\{\{cookiecutter.project_slug\}\}" tests -m "unit or (not integration and not end_to_end)" --cov=./ --cov-report=xml -n auto

# - name: Upload coverage report for unit tests and doctests.
# if: runner.os == 'Linux' && matrix.python-version == '3.8'
# shell: bash -l {0}
# run: bash <(curl -s https://codecov.io/bash) -F unit -c

# - name: Run integration tests.
# shell: bash -l {0}
# run: tox -e pytest -- "\{\{cookiecutter.project_slug\}\}" tests -m integration --cov=./ --cov-report=xml -n auto

# - name: Upload coverage reports of integration tests.
# if: runner.os == 'Linux' && matrix.python-version == '3.8'
# shell: bash -l {0}
# run: bash <(curl -s https://codecov.io/bash) -F integration -c

- name: Run end-to-end tests.
shell: bash -l {0}
run: tox -e pytest -- "\{\{cookiecutter.project_slug\}\}" tests -m end_to_end --cov=./ --cov-report=xml -n auto

- name: Upload coverage reports of end-to-end tests.
if: runner.os == 'Linux' && matrix.python-version == '3.8'
shell: bash -l {0}
run: bash <(curl -s https://codecov.io/bash) -F end_to_end -c


docs:

name: Run documentation.
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true

- name: Install core dependencies.
shell: bash -l {0}
run: conda install -c conda-forge tox-conda

- name: Build docs
shell: bash -l {0}
run: tox -e sphinx
25 changes: 24 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ instance/
.scrapy

# Sphinx documentation
docs/_build/
docs/build/

# PyBuilder
target/
Expand Down Expand Up @@ -127,3 +127,26 @@ dmypy.json

# Pyre type checker
.pyre/

# Files
.coverage
coverage.*

# Folders
.idea
.ipynb_checkpoints
.tox
.vscode
_build
__pycache__
_generated

*.egg-info
.eggs

.pytask.sqlite3

build
dist

version.py
106 changes: 106 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.0.1
hooks:
- id: check-added-large-files
args: ['--maxkb=25']
- id: check-case-conflict
- id: check-merge-conflict
- id: check-vcs-permalinks
- id: check-yaml
exclude: "{{cookiecutter.project_slug}}/environment.yml"
- id: debug-statements
- id: end-of-file-fixer
- id: fix-byte-order-marker
- id: forbid-new-submodules
- id: mixed-line-ending
- id: no-commit-to-branch
args: [--branch, main]
- id: trailing-whitespace
- repo: https://github.com/pre-commit/pygrep-hooks
rev: v1.9.0
hooks:
- id: python-check-blanket-noqa
- id: python-check-mock-methods
- id: python-no-eval
- id: python-no-log-warn
- id: python-use-type-annotations
- id: rst-backticks
- id: rst-directive-colons
- id: rst-inline-touching-normal
- id: text-unicode-replacement-char
- repo: https://github.com/asottile/pyupgrade
rev: v2.29.1
hooks:
- id: pyupgrade
args: [--py36-plus]
- repo: https://github.com/asottile/reorder_python_imports
rev: v2.6.0
hooks:
- id: reorder-python-imports
- repo: https://github.com/asottile/setup-cfg-fmt
rev: v1.20.0
hooks:
- id: setup-cfg-fmt
- repo: https://github.com/psf/black
rev: 21.12b0
hooks:
- id: black
- repo: https://github.com/asottile/blacken-docs
rev: v1.12.0
hooks:
- id: blacken-docs
additional_dependencies: [black]
- repo: https://github.com/PyCQA/flake8
rev: 4.0.1
hooks:
- id: flake8
additional_dependencies: [
flake8-alfred,
flake8-bugbear,
flake8-builtins,
flake8-comprehensions,
flake8-docstrings,
flake8-eradicate,
flake8-print,
flake8-pytest-style,
flake8-todo,
flake8-typing-imports,
flake8-unused-arguments,
pep8-naming,
pydocstyle,
Pygments,
]
- repo: https://github.com/PyCQA/doc8
rev: 0.10.1
hooks:
- id: doc8
- repo: https://github.com/econchick/interrogate
rev: 1.5.0
hooks:
- id: interrogate
args: [-v, --fail-under=40, "{{cookiecutter.project_slug}}"]
pass_filenames: false
- repo: https://github.com/codespell-project/codespell
rev: v2.1.0
hooks:
- id: codespell
- repo: https://github.com/guilatrova/tryceratops
rev: v1.0.0
hooks:
- id: tryceratops
- repo: https://github.com/pre-commit/mirrors-mypy
rev: 'v0.910-1'
hooks:
- id: mypy
args: [
--no-strict-optional,
--ignore-missing-imports,
]
pass_filenames: false
language_version: "3.9"
- repo: meta
hooks:
- id: check-hooks-apply
- id: check-useless-excludes
# - id: identity # Prints all files passed to pre-commits. Debugging.
10 changes: 10 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
version: 2

build:
image: latest

python:
version: 3.8

conda:
environment: docs/rtd_environment.yml
11 changes: 11 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Changes
=======

This is a record of all past cookiecutter-pytask releases and what went into them in
reverse chronological order.


1.0.0 - 2021-12-22
------------------

- :gh:`1` creates first release of a minimal cookiecutter template for a pytask project.
Loading