Skip to main content

Extensible tools for parsing annotations in codebases

Project description

PyPI CI Codecov Documentation Supported Python versions License

Extensible tools for parsing annotations in codebases

Overview

This package provides configurable and extensible tools for parsing and summarizing annotations in a wide range of codebases. Originally intended for annotating code which stores personally identifiable information (PII), these tools are optimized for that use case but can be generalized for other types of annotations.

Additionally, a logically separate part of this repository will contain specific annotation configurations and supporting tools, such as Sphinx extensions for documenting specific annotation types. See the contrib folder.

Documentation

The full documentation is at https://code-annotations.readthedocs.org.

License

The code in this repository is licensed under the AGPL 3.0 unless otherwise noted.

Please see LICENSE.txt for details.

How To Contribute

Contributions are very welcome.

Please read How To Contribute for details.

Even though they were written with edx-platform in mind, the guidelines should be followed for Open edX code in general.

PR description template should be automatically applied if you are sending PR from github interface; otherwise you can find it it at PULL_REQUEST_TEMPLATE.md

Issue report template should be automatically applied if you are sending it from github UI as well; otherwise you can find it at ISSUE_TEMPLATE.md

Reporting Security Issues

Please do not report security issues in public. Please email security@edx.org.

Getting Help

Have a question about this repository, or about Open edX in general? Please refer to this list of resources if you need any assistance.

Change Log

Unreleased

[1.3.0] - 2022-02-07

  • Dropped Django 22, 30 and 31 Support

  • Added Django40 Support in CI

[1.2.0] - 2021-07-26

  • Added Django 3.0, 3.1 & 3.2 Support

[1.1.2] - 2021-05-21

  • Django is not a base requirement for the package now.

  • Removed the click constraint from base requirements.

[1.1.1] - 2021-03-30

  • Internal refactoring of the sphinx utilities and the report generation code

[1.1.0] - 2021-01-28

  • Refactor annotation checking to make it possible to expose errors via pylint

[1.0.2] - 2021-01-22

  • Make setting_warning annotation optional.

[1.0.1] - 2021-01-22

  • Fix grouping of safelisted annotations

[1.0.0] - 2021-01-21

  • BREAKING CHANGE: Improvement of some error messages

  • BREAKING CHANGE: Refactor linting in a way that breaks backward compatibility of certain edge cases

  • Implement optional annotation fields

[0.10.3] - 2020-12-15

  • Updated the travis-badge in README.rst to point to travis-ci.com

[0.10.1] - 2020-11-09

  • Fix Github links generated by the sphinx extension for settings.

[0.10.0] - 2020-10-12

  • Fix table of contents generated by sphinx extensions

[0.9.0] - 2020-09-25

  • Get rid of the documented_elsewhere annotation, which is used nowhere

[0.8.0] - 2020-09-10

  • Add settings Sphinx extension with setting annotation configuration file

[0.7.0] - 2020-09-07

  • Simplify the feature toggle annotation format

[0.6.0] - 2020-08-27

  • Add support for multiline annotations for lines prefixed with single-line comment signs (“#”)

[0.5.1] - 2020-08-25

  • Add support for warnings in the featuretoggles Sphinx extension

[0.5.0] - 2020-08-06

  • Add featuretoggles Sphinx extension

  • Include contrib folder in pip-installable package

  • Add ADR 0001-config-and-tools.rst for adding a place in this repository for shared annotation configs and supporting tools.

[0.4.0] - 2020-07-22

  • Add support for multi-line code annotations

[0.3.4] - 2020-05-06

  • Removed support for Django<2.2

  • Removed support for Python2.7 and Python3.6

  • Added support for Python3.8

[0.3.2] - 2019-06-21

Added

  • Add RST anchors throughout annotation report docs

[0.3.1] - 2019-03-20

Added

  • Bump pyyaml to version 5.1 to address unsafe load() CVE.

[0.1.0] - 2018-11-16

Added

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

code-annotations-1.3.0.tar.gz (32.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

code_annotations-1.3.0-py2.py3-none-any.whl (37.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file code-annotations-1.3.0.tar.gz.

File metadata

  • Download URL: code-annotations-1.3.0.tar.gz
  • Upload date:
  • Size: 32.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for code-annotations-1.3.0.tar.gz
Algorithm Hash digest
SHA256 21870b9b95f47f73d8d0ee6fdaa9f01fd18fbefa4e693901ea0a78572ed08884
MD5 cfcd3d0f1bae14b846345790abac0e1b
BLAKE2b-256 f27906073704a1fd8b48e6692e16821ac694848b322a9cef70e5da223ee3d5a0

See more details on using hashes here.

File details

Details for the file code_annotations-1.3.0-py2.py3-none-any.whl.

File metadata

  • Download URL: code_annotations-1.3.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 37.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for code_annotations-1.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 9d7a5a88cc9a0c589ebdac82343934989db76965439d28be2e1a17ac99b0e760
MD5 fa4ccd01383409af6b82329d3491df4e
BLAKE2b-256 05d6d2fd54a5068691e77443e4d6ae948b255a235cbc5327b26708a3dc98c9d7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page