Skip to main content

Library and utilities for feature toggles

Project description

PyPI Github CI Codecov Documentation Supported Python versions License

Library and utilities for implementing and reporting on feature toggles.

Documentation is on Read the Docs. Code repository is on GitHub.

See the scripts README for more information on the scripts for reporting on the status of feature toggles.

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

[1.2.1] - 2020-12-17

  • Improve monitoring of legacy Waffle class imports. We should watch for “edx_toggles.toggles.internal.waffle.legacy.WaffleSwitch” custom attributes.

[1.2.0] - 2020-11-05

  • Start the deprecation process of the waffle namespace classes:

    • Introduce LegacyWaffleFlag, LegacyWaffleSwitch for use with namespaces.

    • Begin deprecation/refactoring of namespacing code, including deprecation monitoring and warnings.

    • Note: WaffleFlag and WaffleSwitch still use namespaces as well (for now).

    • Introduce the toggles.__future__ module for applications that need to be forward-compatible right away.

[1.1.1] - 2020-10-27

  • Fix cache-checking in WaffleSwitchNamespace

[1.1.0] - 2020-10-23

  • Backport override_waffle_switch test utility function from edx-platform

[1.0.0] - 2020-10-13

  • Fix missing module_name argument in SettingDictToggle constructor.

  • Extract waffle classes from edx-platform and move them here following ADR #2, #3, #4. This does not introduce backward-incompatible changes, yet.

  • Fix pinned requirements and incorrect root url that overrode edx-platform’s.

[0.3.0] - 2020-09-23

First release to PyPI (2020-10-02)

  • Implement SettingToggle and SettingDictToggle.

[0.2.2] - 2020-09-11

  • Document the writing of feature toggles annotations.

[0.2.1] - 2020-08-03

  • Add ADR for the purpose of this repository.

  • Add ADR for implementing a Toggle State endpoint.

  • Add toggles report with CSV output using new CsvRenderer.

  • Add CourseWaffleFlag and course override data to toggle report.

  • Add output for waffle flag course overrides to data gatherer

  • Add additional options to scripts/feature_toggle_report_generator

    • filter toggle types and envs, add github_url, and change name of ida in report

  • Modified scripts/feature_toggle_report_generator to work based on envs

  • Removed confluence integration

  • Moved HtmlRenderer to its own file

  • Add ADR for new SettingToggle. (see 0003-django-setting-toggles.rst)

[0.2.0] - 2020-05-27

  • Removed caniusepython3.

[0.2.0] - 2020-05-05

  • Added support for python 3.8 and dropped support Django versions older than 2.2

[0.1.0] - 2019-04-08

  • Initial version

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

edx-toggles-1.2.1.tar.gz (30.0 kB view details)

Uploaded Source

Built Distribution

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

edx_toggles-1.2.1-py2.py3-none-any.whl (31.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file edx-toggles-1.2.1.tar.gz.

File metadata

  • Download URL: edx-toggles-1.2.1.tar.gz
  • Upload date:
  • Size: 30.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.6

File hashes

Hashes for edx-toggles-1.2.1.tar.gz
Algorithm Hash digest
SHA256 6de053b6fbba8655c911ccff54e81347379978da86c16e890fb89056f4c39978
MD5 8440e9776dfcb6b3c6c0bf78228c3828
BLAKE2b-256 38f692e7c82f2497f1734f509f36c2ee9357ba6c82153d77deffa924cd981def

See more details on using hashes here.

File details

Details for the file edx_toggles-1.2.1-py2.py3-none-any.whl.

File metadata

  • Download URL: edx_toggles-1.2.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 31.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.6

File hashes

Hashes for edx_toggles-1.2.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 fd473dccaa2ca0ae68a6cf4732b9eeb99e48775f94eee23f382299189d0fdc19
MD5 35336e95903a409b3933116844a1d286
BLAKE2b-256 09b506b78fdab6a7b02c2eba0df631b4075ac628d26866b24405d688231705c8

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