Skip to content

Commit 51369dc

Browse files
authored
Add contribution guidelines and list of contributors (#18)
1 parent 5851ddf commit 51369dc

File tree

3 files changed

+98
-4
lines changed

3 files changed

+98
-4
lines changed

AUTHORS.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Authors and Contributors
2+
3+
`codetiming` is written and maintained by the [_Real Python_ team](https://realpython.com/team/).
4+
5+
6+
## Author and Maintainer
7+
8+
- [Geir Arne Hjelle](https://github.com/gahjelle)
9+
10+
11+
## Contributors
12+
13+
- [Jan Freyberg](https://github.com/janfreyberg)
14+
15+
16+
See the [changelog](https://github.com/realpython/codetiming/blob/master/CHANGELOG.md) for more details.

CHANGELOG.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,24 @@ All notable changes to this project will be documented in this file.
55
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).
66

77

8-
## [Unreleased](compare/v1.0.0...HEAD)
8+
## [Unreleased]
99

1010
### Added
1111

12-
- `.last` attribute with the value of the last measured time (by [@janfreyberg](https://github.com/janfreyberg) in [#13](pull/13)).
13-
- `CHANGELOG.md` detailing changes made to `codetiming` since its initial publication.
12+
- `.last` attribute with the value of the last measured time (by [@janfreyberg](https://github.com/janfreyberg) in [#13]).
13+
- `CHANGELOG.md` detailing changes made to `codetiming` since its initial publication ([#17]).
14+
- `CONTRIBUTING.md` with guidelines on how to work with `codetiming` as a developer ([#18]).
15+
- `AUTHORS.md` with a list of maintainers and contributors ([#18])
1416

1517

16-
## [1.0.0](releases/tag/v1.0.0) - 2019-12-31
18+
## [1.0.0](https://github.com/realpython/codetiming/releases/tag/v1.0.0) - 2019-12-31
1719

1820
Initial version of `codetiming`. Version 1.0.0 corresponds to the code in the tutorial [Python Timer Functions: Three Ways to Monitor Your Code](https://realpython.com/python-timer/).
21+
22+
23+
[Unreleased]: https://github.com/realpython/codetiming/compare/v1.0.0...HEAD
24+
[1.0.0]: https://github.com/realpython/codetiming/releases/tag/v1.0.0
25+
26+
[#13]: https://github.com/realpython/codetiming/pull/13
27+
[#17]: https://github.com/realpython/codetiming/pull/17
28+
[#18]: https://github.com/realpython/codetiming/pull/18

CONTRIBUTING.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# Contributing to `codetiming`
2+
3+
Thank you for considering to contribute to `codetiming`. This guide is meant to help you find your way around the project, and let you know which standards that are used.
4+
5+
If you are looking for tutorials or tips on how to use `codetiming`, have a look at the [documentation](https://github.com/realpython/codetiming/blob/master/README.md) and the accompanying article [Python Timer Functions: Three Ways to Monitor Your Code](https://realpython.com/python-timer/).
6+
7+
8+
# Reporting Issues or Suggesting New Features
9+
10+
Have you found an issue with `codetiming`, or do you have a suggestion for a new feature? Great! Have a look at the [known issues](https://github.com/realpython/codetiming/issues/new) to see if anyone has reported it already. If not, please post a [new issue](https://github.com/realpython/codetiming/issues/new).
11+
12+
When reporting an issue, please include as much of the following information as possible:
13+
14+
- Your version of `codetiming`: `print(codetiming.__version__)`
15+
- Your version of Python: `print(sys.version)`
16+
- Your operating system
17+
- A description of your issue, ideally including a short code snippet that reproduces the issue
18+
19+
When suggesting a new feature, try to include an example of how your feature could be used.
20+
21+
22+
# Contributing Code
23+
24+
Do you want to contribute code to `codetiming`? Fantastic! We welcome contributions as **pull requests**.
25+
26+
27+
## Setting Up Your Environment
28+
29+
`codetiming` uses [`flit`](https://flit.readthedocs.io) for package management. You should first install `flit`:
30+
31+
```
32+
$ python -m pip install flit
33+
```
34+
35+
You can then install `codetiming` locally for development with `flit`:
36+
37+
```
38+
$ python -m flit install --pth-file --deps all
39+
```
40+
41+
This will install `codetiming` and all its dependencies, including development tools like [`black`](https://black.readthedocs.io) and [`mypy`](http://mypy-lang.org/). The `--pth-file` option allows you to test your changes without reinstalling. On Linux and Mac, you can use `--symlink` for the same effect.
42+
43+
44+
## Running Tests
45+
46+
Run tests using [`tox`](https://tox.readthedocs.io/). `tox` helps to enforce the following principles:
47+
48+
- Consistent code style using [`black`](https://black.readthedocs.io). You can automatically format your code as follows:
49+
50+
```
51+
$ black codetiming/
52+
```
53+
54+
- Static type hinting using [`mypy`](http://mypy-lang.org/). Test your type hints as follows:
55+
56+
```
57+
$ mypy --strict codetiming/
58+
```
59+
60+
See Real Python's [Python Type Checking guide](https://realpython.com/python-type-checking/) for more information.
61+
62+
- Unit testing using [`pytest`](https://docs.pytest.org/). You can run your tests and see a coverage report as follows:
63+
64+
```
65+
$ pytest --cov=codetiming --cov-report=term-missing
66+
```
67+
68+
Feel free to ask for help in your PR if you are having challenges with any of these tests.

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy