Project: edx-when

Your project description goes here

Project Details

Latest version
2.4.0
Home Page
https://github.com/openedx/edx-when
PyPI Page
https://pypi.org/project/edx-when/

Project Popularity

PageRank
0.006051841780125275
Number of downloads
46981

edx-when

|pypi-badge| |CI| |codecov-badge| |doc-badge| |pyversions-badge| |license-badge|

Overview

edx-when is designed to be the central source of dates for the LMS. This repository is deployed to PyPI and designed to be installed and imported by an installation of edx-platform. As part of being integrated into edx-platform, edx-when shares the same database as the rest of the platform. It is written to by Studio when a Course is published (via https://github.com/openedx/edx-platform/blob/master/openedx/core/djangoapps/course_date_signals/handlers.py) and then the LMS reads from it in several locations. This repo contains start, end, and due dates for Courses and offers the functionality to have both absolute and relative dates.

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 <https://github.com/openedx/.github/blob/master/CONTRIBUTING.md>_ for details.

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 <https://github.com/openedx/edx-when/blob/master/.github/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 <https://github.com/openedx/edx-when/blob/master/.github/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.

.. _list of resources: https://open.edx.org/getting-help

.. |pypi-badge| image:: https://img.shields.io/pypi/v/edx-when.svg :target: https://pypi.python.org/pypi/edx-when/ :alt: PyPI

.. |CI| image:: https://github.com/openedx/edx-when/workflows/Python%20CI/badge.svg?branch=master :target: https://github.com/openedx/edx-when/actions?query=workflow%3A%22Python+CI%22 :alt: CI

.. |codecov-badge| image:: http://codecov.io/github/edx/edx-when/coverage.svg?branch=master :target: http://codecov.io/github/edx/edx-when?branch=master :alt: Codecov

.. |doc-badge| image:: https://readthedocs.org/projects/edx-when/badge/?version=latest :target: http://edx-when.readthedocs.io/en/latest/ :alt: Documentation

.. |pyversions-badge| image:: https://img.shields.io/pypi/pyversions/edx-when.svg :target: https://pypi.python.org/pypi/edx-when/ :alt: Supported Python versions

.. |license-badge| image:: https://img.shields.io/github/license/edx/edx-when.svg :target: https://github.com/openedx/edx-when/blob/master/LICENSE.txt :alt: License

Change Log

.. All enhancements and patches to edx_when will be documented in this file. It adheres to the structure of http://keepachangelog.com/ , but in reStructuredText instead of Markdown (for ease of incorporation into Sphinx documentation and the PyPI description).

This project adheres to Semantic Versioning (http://semver.org/).

.. There should always be an "Unreleased" section for changes pending release.

Unreleased


* Switch from ``edx-sphinx-theme`` to ``sphinx-book-theme`` since the former is
  deprecated

[2.4.0] - 2023-06-21
  • Support added for Django 4.2

[2.3.0] - 2022-02-15

* Added Django40 support
* Dropped Django22, 30 and 31 support


[2.2.2] - 2021-10-21
  • Bug fix to bust cache when Personalized Learner Schedules are updated.

[2.2.1] - 2021-09-15

* Bug fix for optimization in 2.2.0, to account for missing block_type data.

[2.2.0] - 2021-08-27
  • Added optimization when requesting course block dates for an outline, where block dates below subsections are unneeded.
  • Use current version of the course to improve the cache key, along with using the TieredCache to cache date data.

[2.1.0] - 2021-07-23

Added Django 3.2 Support

[2.0.0] - 2021-01-19

Dropped python3.5 support.

[1.3.2] - 2021-01-15


Don't warn about missing schedules for relative dates.
It happens for legitimate reasons, and the layer above can check instead.

[1.3.1] - 2020-11-19

Updated travis badge in README.rst to point to travis-ci.com instead of travis-ci.org

[1.3.0] - 2020-07-16


Django 3.x deprecation warnings are fixed

[1.2.9] - 2020-06-30

Don't return due dates for enrollments originally created too close to the course end to allow for finishing the course in time.

[1.2.8] - 2020-06-17


Don't return due dates for enrollments created after course end

[1.2.4] - 2020-06-01

Updates function in API for finding learners with a specific Schedule that has an assignment on a given day, to also be inclusive of absolute date schedules (everyone active in the course without an override).

[1.2.3] - 2020-04-30


* Dropped support for Django versions below 2.2
* Added support for python 3.8

[1.1.4] - 2019-03-30
  • Drop the active index from ContentDate. It has low cardinality and Aurora was doing a lot of extra work to try to do an intersect query with that and the course_id index, when using the latter by itself would be far more efficient.

[1.1.3] - 2019-03-25


* Use memcache to cache ContentDate information in get_dates_for_course


[0.1.0] - 2019-03-04

Added


  • First release on PyPI.