This commit is contained in:
Frank Harkins 2024-08-29 16:29:46 +01:00
parent 480cb1c382
commit cfddf16672
1 changed files with 20 additions and 12 deletions

View File

@ -21,14 +21,15 @@ Most Qiskit projects are hosted on [GitHub](https://github.com/), a source-code
hosting platform. GitHub is based on [Git](https://git-scm.com/) (a version
control system) and provides a large set of tools to help collaborate on your
project and keep it to a high quality. See [Github
skills](https://skills.github.com/) to get up to speed on GitHub quickly. The
rest of this page will assume you have your project hosted on GitHub.
skills](https://skills.github.com/) to get up to speed on GitHub quickly.
Some key features are:
* **Issues and Pull requests:** Users can use issues to report bugs in your
project or request changes to it. Your team and external contributors can use
pull requests to propose and review changes to your project.
* **Issues and Pull requests**
Users can use GitHub to report bugs in your project or request changes to it.
Your team and external contributors can use pull requests to propose and
review changes to your project's code.
If you want to accept contributions from others, make sure to add a
[contributing
@ -36,12 +37,17 @@ Some key features are:
and a [code of
conduct](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project).
* **GitHub actions:** This feature runs scripts when certain events happen in
your GitHub repo. For example, you can run your [test
suite](#test-your-project) when you push new code or automatically
[publishing your package](#publish-to-pypi) when you tag a commit.
* **GitHub actions**
This feature runs scripts when certain events happen in your GitHub repo. For
example, you can run your [test suite](#test-your-project) when you push new
code or automatically [publishing your package](#package-your-project) when
you tag a commit.
* **Security features**
GitHub supports features to keep your projects secure. These include:
* **Security features:** These include
* [Dependabot](https://docs.github.com/en/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates)
a tool to automatically update your dependencies.
* [Trusted publishing to PyPI](https://docs.pypi.org/trusted-publishers/)
@ -51,6 +57,8 @@ Some key features are:
to make sure code meets some criteria before being pushed to certain
branches.
The rest of this page will assume you have your project hosted on GitHub.
## Choose a license
If you want others to use your project, you *must* choose an appropriate
@ -101,13 +109,13 @@ Qiskit code.
Tests are small functions you'll write to make sure your code is working
correctly. A good test suite makes working on your code easier; if the tests
pass, your code is good. This means you can be confident you haven't broken
pass, your code works. This means you can be confident you haven't broken
anything when refactoring or adding new features. Seeing tests in a project's
repository gives users more confidence in the stability of the project.
The two most popular testing frameworks in Python are:
* Python's built-in [`unittest`](https://docs.python.org/3/library/unittest.html)
* [`pytest`](https://docs.pytest.org/en/stable/)
* Python's built-in [`unittest`](https://docs.python.org/3/library/unittest.html)
You can also consider using [`tox`](https://tox.wiki/en/4.18.0/) to test your
project against different versions of Python.