Closed nathanshammah closed 4 years ago
Some comments:
asking folks to check code with black
What does this mean @nathanshammah ?
consider using docker for CI even beyond PyQuil (In a python-only environment this may be an overkill, but certainly it makes everything robust) consider adding templates for PRs or issues: It would certainly help new contributors, may be cumbersome for UF team.
These IMO are not needed for launch. They can be added later.
have guides for contributors and maintainers and possibly autoreleases to pypi, test pypi.
We have contributor guides already no? @karalekas How much work is it to set up the autoreleases?
@willzeng edited that item to make it more clear: check code formatting with black or pycodestyle.
@willzeng
another potential checklist item: type checking with mypy. this is another code quality thing that can be enforced with CI, and is of course easier to implement the sooner you do it. my guess would be about half a day, only because I'd need to understand the QPROGRAM
issue (#253)
yet another potential checklist item: enforcing code coverage. this can be done using coveralls. we're currently at ~85%, and id bet we could get it over 90% in an hour
Name Stmts Miss Cover
---------------------------------------------------------------------------
mitiq/__init__.py 5 0 100%
mitiq/_about.py 24 11 54%
mitiq/_typing.py 10 2 80%
mitiq/_version.py 4 0 100%
mitiq/benchmarks/__init__.py 0 0 100%
mitiq/benchmarks/maxcut.py 45 1 98%
mitiq/benchmarks/random_circuits.py 44 2 95%
mitiq/benchmarks/randomized_benchmarking.py 20 1 95%
mitiq/benchmarks/tests/test_maxcut.py 17 0 100%
mitiq/benchmarks/tests/test_random_circuit.py 31 0 100%
mitiq/benchmarks/tests/test_randomized_benchmaking.py 42 0 100%
mitiq/benchmarks/utils.py 8 0 100%
mitiq/factories.py 224 27 88%
mitiq/folding.py 236 8 97%
mitiq/mitiq_pyquil/__init__.py 0 0 100%
mitiq/mitiq_pyquil/conversions.py 12 12 0%
mitiq/mitiq_pyquil/pyquil_utils.py 65 65 0%
mitiq/mitiq_pyquil/quil.py 63 63 0%
mitiq/mitiq_pyquil/tests/__init__.py 0 0 100%
mitiq/mitiq_pyquil/tests/test_conversions.py 0 0 100%
mitiq/mitiq_pyquil/tests/test_quil.py 23 23 0%
mitiq/mitiq_pyquil/tests/test_zne.py 38 38 0%
mitiq/mitiq_qiskit/__init__.py 2 0 100%
mitiq/mitiq_qiskit/conversions.py 12 0 100%
mitiq/mitiq_qiskit/qiskit_utils.py 32 19 41%
mitiq/tests/test_factories.py 174 0 100%
mitiq/tests/test_folding.py 552 0 100%
mitiq/tests/test_utils.py 110 0 100%
mitiq/tests/test_zne.py 39 3 92%
mitiq/utils.py 19 1 95%
mitiq/zne.py 26 0 100%
---------------------------------------------------------------------------
TOTAL 1877 276 85%
these two I think are definitely worth doing, even if you choose to pass for now on mypy / coverage stuff:
changes.rst
to the top-level directory and make it a markdown file. Having a markdown changelog and requiring contributors to add to it when opening a PR is a really great way to let release notes write themselves.yet another potential checklist item: enforcing code coverage. this can be done using coveralls. we're currently at ~85%, and id bet we could get it over 90% in an hour
Name Stmts Miss Cover --------------------------------------------------------------------------- mitiq/__init__.py 5 0 100% mitiq/_about.py 24 11 54% mitiq/_typing.py 10 2 80% mitiq/_version.py 4 0 100% mitiq/benchmarks/__init__.py 0 0 100% mitiq/benchmarks/maxcut.py 45 1 98% mitiq/benchmarks/random_circuits.py 44 2 95% mitiq/benchmarks/randomized_benchmarking.py 20 1 95% mitiq/benchmarks/tests/test_maxcut.py 17 0 100% mitiq/benchmarks/tests/test_random_circuit.py 31 0 100% mitiq/benchmarks/tests/test_randomized_benchmaking.py 42 0 100% mitiq/benchmarks/utils.py 8 0 100% mitiq/factories.py 224 27 88% mitiq/folding.py 236 8 97% mitiq/mitiq_pyquil/__init__.py 0 0 100% mitiq/mitiq_pyquil/conversions.py 12 12 0% mitiq/mitiq_pyquil/pyquil_utils.py 65 65 0% mitiq/mitiq_pyquil/quil.py 63 63 0% mitiq/mitiq_pyquil/tests/__init__.py 0 0 100% mitiq/mitiq_pyquil/tests/test_conversions.py 0 0 100% mitiq/mitiq_pyquil/tests/test_quil.py 23 23 0% mitiq/mitiq_pyquil/tests/test_zne.py 38 38 0% mitiq/mitiq_qiskit/__init__.py 2 0 100% mitiq/mitiq_qiskit/conversions.py 12 0 100% mitiq/mitiq_qiskit/qiskit_utils.py 32 19 41% mitiq/tests/test_factories.py 174 0 100% mitiq/tests/test_folding.py 552 0 100% mitiq/tests/test_utils.py 110 0 100% mitiq/tests/test_zne.py 39 3 92% mitiq/utils.py 19 1 95% mitiq/zne.py 26 0 100% --------------------------------------------------------------------------- TOTAL 1877 276 85%
@karalekas, about this: we had a discussion some time back (#122), and neither one of us seemed to know the difference between coveralls and pytest-cov. Are they just the same service, the former wrapped with APIs so that it shows up in the GH PR conversation, the latter more basic? The first one can be more helpful, the second one is less "intrusive". Personally, I am happy to go for it.
+1 for coverage and mypy.
+1 for coverage and mypy
On Wed, Jul 29, 2020, 5:31 PM Ryan LaRose notifications@github.com wrote:
+1 for coverage and mypy.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/unitaryfund/mitiq/issues/268#issuecomment-665939605, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABHZDAS3UTGPSELCXLVD6HTR6CIMTANCNFSM4PKZQRLA .
Added CHANGELOG.md
and README.md
bullets to the issue description, which we can discuss tomorrow @nathanshammah
NB: Once we open-source the repo, we should drop the review-requested/assigned restriction on triggering the build.
This is a good point. What should we replace it with? We’ll still want to be conservative about eating up too much of our cloud compute github time.
On Mon, Aug 3, 2020 at 13:10 Peter Karalekas notifications@github.com wrote:
NB: Once we open-source the repo, we should drop the review-requested/assigned restriction on triggering the build.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/unitaryfund/mitiq/issues/268#issuecomment-668137533, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABHZDAXNEJP6IRQ5HJ54XC3R63VRVANCNFSM4PKZQRLA .
-- https://unitary.fund/ Creating a quantum technology ecosystem that benefits the most people.
@karalekas These are the current usage stats:
With #330 the needed parts for this issue are checked and so will close this issue
This is a checklist of tasks to do before the repository becomes public. Some are proposals of things that could be implemented or improved and should be discussed, possibly here if on github, take them as ideas:
Needed for Launch
CHANGELOG.md
README.md
(#330 )mypy
(see also: #253)Immediately after open-sourcing
Optional stuff: