improve local development support in cookiecutter template
_type-checking failures are a regression unrelated to this MR. They have been fixed in !80 (merged) _
A walk through of the changes introduced in this MR can be viewed at https://drive.google.com/file/d/1NCbVhjxICYEWzyl2eZNPjkXKqTR_UkjL/view?usp=sharing.
This MR refactors the cookiecutter template to fix deprecated API use (error_sink
), cleans up the test suite configuration and improves documentation.
The cookiecutter template has been renamed to match terminology adopted in other parts of the documentation.
A tutorial is provided under doc/TUTORIAL.md
.
- The cookiecutter template now ships with a default
config.yaml
andstream_config.json
templates, that can be used to support (local) development. - The test suite in cookiecutter has been update to support current
error_sink
APIs. - The cookiecutter template now ships with a Blubber file and Gitlab CI pipeline that integrate with Wikimedia's Deployment pipeline.
- Cookiecutter should declare a dependency on a pacakge wheel file. bump2version would default to
dev
versions, that are not published to pypi. The template has been modified to default to the latest available wheel, unless a user specifies a version to pin. - Generate documentation for
stream_manager
config file.sphinx-argparse
and similar extensions seem to conflict with our implementation ofjsonargparse
and/or theautodoc
extension. As a workaround, aconfig.yaml
asset is generated at (doc) build time and embedded indocs/configuration.rst
.
cc / @tchin
Bug: T345193
Bug: T345390