| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
We aim for:
VDK coding styles aim for code style and formatting consistent across its components. The value of consistency is enabling automated formatting, avoiding back and forth reformatting, and making the code easy to read for all contributors.
We follow 12 factor app recommendation for building web/api services. Make sure you have read and are familiarized with the document.
The rules outlined in https://opensource.zalando.com/restful-api-guidelines/ are recommended read and nice to follow but not a must.
We follow Google Java Coding style and it is enforced by a pre-commit hook.
The coding standard is the Python regular PEP 8. It's enforced by pre-commit hooks like black.
Python uses _ (underscore) symbol to determine the access control for a specific data member or a member function of a class
Any backwards compatibility guarantees apply only to public interfaces. Public interfaces are modules and packages defined or imported in vdk.api.*. unless the documentation explicitly declares them to be provisional or internal interfaces. Anything else is considered internal. All public interfaces (classes or methods) must have documentation. The documentation must specify clearly:
Anything not in vdk.api.* is considered internal, with exceptions made fo modules under vdk.internal.core which may be used in plugin development only.
This policy applies to all public-facing APIs, modules, classes, methods, and any other public functionalities.
import warnings
def deprecated_function():
warnings.warn("deprecated_function is deprecated and will be removed in version 2.0.0. Use new_function instead.", DeprecationWarning)Versatile Data Kit Helm Charts aim to be part of Bitnami Application Catalog. We try to follow (where feasible) best practices established by Bitnami and reuse best practices, charts, and ideas from bitnami charts repository
Each public python distribution (for example a vdk plugin) should be classified based on its development status.
We use the same semantics for the development status of nonpython releases as well.
CLI is built following 12 Factor CLI Apps. Make sure you have read and are familiarized with the document.
Summarized those are:
Errors should not explain our (the developer) problem. Explain their (the user, and sometimes the caller) problem, and provide info valuable for THEM to understand what actions to take.
To ensure efficient communication and effective troubleshooting, all user-facing errors, warnings, and alerts must include clear information on:
See also Error handling format which explains in more detail and proposes a format that aims to help write clearer and more consistent error messages.
Each VDK project or plugin has a README file that resides in its root folder and is named README.md. Each independentally releasable sub-component (e.g plugin, job-builder, job-base image) must have a README file as well.
A README file is written in Markdown.
A README file of a project or a plugin should contain (whichever is applicable):
SDK Key Concepts
Control Service Key Concepts
Operations UI
PluginsCommunity
Contacts
| Back | FazBrowse Home | New Git URL |