-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit dd157e7
Showing
61 changed files
with
7,624 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Sphinx build info version 1 | ||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. | ||
config: 36d3f78dd3ce0c90dcdc2fdb2bf4bd79 | ||
tags: 645f666f9bcd5a90fca523b33c5a78b7 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
Confectioner API | ||
================ | ||
|
||
Core API | ||
-------- | ||
.. automodule:: confectioner.core | ||
:members: | ||
:special-members: | ||
:inherited-members: | ||
:show-inheritance: | ||
|
||
.. autoclass:: confectioner.baker.Baker | ||
:special-members: | ||
|
||
File Utilities | ||
-------------- | ||
.. automodule:: confectioner.files | ||
:members: | ||
:special-members: | ||
:inherited-members: | ||
:show-inheritance: | ||
|
||
Templating Utilities | ||
-------------------- | ||
.. automodule:: confectioner.templating | ||
:members: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Changelog | ||
|
||
## Version 1.1.0 | ||
- Release as open source |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# Contributing | ||
|
||
If you would like to add new functionality or fix a bug, we welcome contributions. All change requests should start with | ||
an [issue on the repo](https://github.com/8451/confectioner/issues/new/choose). If you would like to develop the | ||
solution yourself, us the following flow: | ||
|
||
1. Read the [style guide](#style-guide) below | ||
2. Tag Austin Warner (austinwarner-8451) in the issue and request to be assigned the issue | ||
- If this is your first time contributing, ask to be granted write access to the repo | ||
3. Create a new branch based off of [develop](https://github.com/8451/confectioner/tree/develop) | ||
- Give your branch a name starting with `feature/`, `bug/` or `misc/` | ||
- For example, if you were requesting that toml files be supported by default, create | ||
a branch called `feature/toml` | ||
4. Clone the repo in your favorite IDE, check out your new branch, and add your changes | ||
5. Run the tests to ensure nothing breaks | ||
- `pip install -e .[test]` | ||
- `pytest` | ||
6. Push the changes on your branch to the repo, and open a Pull Request where the base branch is `develop` | ||
- Request a review from Austin Warner | ||
|
||
## Style Guide | ||
|
||
### Pre-Commit | ||
The repo has [pre-commit](https://pre-commit.com/) configured to enforce much (but not all) of the style guide | ||
automatically. When developing locally, please perform the one-time setup using `pip install pre-commit` followed by | ||
`pre-commit install` before making any commits. | ||
|
||
### PEP 8 | ||
We try to follow [PEP 8](https://peps.python.org/pep-0008/) wherever possible. Feel free to familiarize yourself | ||
with it, but most IDEs will automatically help you. Alternatively, you can use a code formatter like | ||
[black](https://pypi.org/project/black/) to format your code for you. | ||
|
||
### Imports | ||
Imports should take place at the top of the file and be broken into 4 sections, each section with a single empty line between | ||
them. The sections are: | ||
1. Standard library imports (i.e. typing, regex, math) | ||
2. 3rd-party library imports (i.e. numpy, pandas) | ||
3. Relative imports (importing other modules from the confectioner package) | ||
|
||
For sections 1-3, prefer using the fully-qualified namespace over an unqualified import (`import json` over | ||
`from json import load`). An exception to this rule is imports from the typing library (`from typing import List`). | ||
|
||
When importing another module from `confectioner`, write it like `from . import core`. | ||
|
||
Under no circumstances should `from module import *` be used. | ||
|
||
### Typing | ||
All function definitions should be fully type-hinted (arguments and return value). Where applicable, use | ||
generic types from the `typing` library like `List[str]` vs `list`. If a function does not return anything, mark the | ||
return type as `None`. | ||
|
||
### Naming | ||
Prefer long, descriptive function names over short abbreviated names. For example, `load_config` is preferred over | ||
`ld_cfg`. | ||
|
||
Function and variable names should be lowercase with underscores separating words (`my_function`). Class names should be | ||
camel case (`MyClass`). Constants should be all uppercase with underscores separating words (`MY_CONSTANT`). | ||
|
||
Any function, variable, or constant that is not intended to be used outside of the module it is defined in should be | ||
prefixed with an underscore (`_my_private_function`). | ||
|
||
### Documentation | ||
All public-facing functions should be documented using docstrings in the | ||
[Numpy Style](https://numpydoc.readthedocs.io/en/latest/format.html#docstring-standard). | ||
|
||
### Functional Programming | ||
We strongly prefer Functional Programming over Object-Oriented programming. OOP is used specifically to store | ||
configuration data in an object for later use. Regardless of paradigm, there is a preference for stateless programming | ||
and avoiding in-place data mutation where possible. For example, when combining two lists, prefer `list_a + list_b` | ||
over `list_a.extend(list_b)`. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
.. confect documentation master file, created by | ||
sphinx-quickstart on Wed Mar 2 11:50:23 2022. | ||
You can adapt this file completely to your liking, but it should at least | ||
contain the root `toctree` directive. | ||
Confectioner | ||
------------ | ||
|
||
Confectioner is a modular configuration framework for Python applications. Get started with the | ||
:doc:`Installation Instructions <installation>`. | ||
|
||
|
||
.. toctree:: | ||
:hidden: | ||
:maxdepth: 1 | ||
:caption: References | ||
|
||
Installation <../../installation> | ||
Usage <usage> | ||
API <api> | ||
Changelog <changelog> | ||
Contributing <contributing> | ||
|
||
|
||
Indices and tables | ||
================== | ||
|
||
* :ref:`genindex` | ||
* :ref:`search` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# Installation | ||
|
||
Confectioner is for install via pip. | ||
|
||
```bash | ||
pip install confectioner | ||
```` |
Oops, something went wrong.