Skip to content

Releases: openfun/richie

1.0.0

29 May 12:27
Compare
Choose a tag to compare

This is the first stable release of Richie 🎉

Added

  • Add sensible defaults for third party settings that Richie requires,
  • Add a home page to the site structure to avoid a 404 error on startup.

Changed

  • Make sure the recursive_page_creation helper respects an existing home
    page and plays well with multiple sites,
  • Configure Django settings to pass all heartbeat checks,
  • Make filter autosuggestions dynamic based on backend settings. Also runs
    separate autocompletion requests for each meta category and shows them
    under their separate titles.

Fixed

  • Fix blockplugin templatetag breaking all pages using it when in edit mode,
  • Fix error when one of the site's languages was not found in ALL_LANGUAGES.
  • The richie_init job is now idempotent and can thus be run multiple times.

1.0.0-beta.9

23 May 05:39
Compare
Choose a tag to compare

Added

  • Replace DjangoCMS picture plugin by our simple picture plugin: only one
    field to upload the image, all attributes that control how the image is
    resized, cropped and displayed are now in the code,
  • In the sandbox project, configure Django Filer to serve private files,
  • Create a user group for each course and give it the permission to manage
    pages below the course (snapshots and course runs),
  • Create a folder in Django Filer for each organization and for each course,
  • When a new course is created for an organization, automatically associate
    permissions to organization admins (as defined in settings or with sensible
    defaults),
  • Configure permission checks on page creations via the CMS wizard,
  • Automatically create a page role and associate admin permissions when a new
    organization page is created (as defined in settings or with sensible
    defaults),
  • Add page roles to link a user group to a CMS page, searchable via the admin,
  • Add page roles to link a user group to a CMS page,
  • Add a persons index and viewset to enable text queries and autocomplete
    requests on person names from the API.
  • Index person names on courses to allow users to find courses when they
    type a related person's name in full text search.
  • Add a persons filter to the course Search view and suggest persons in
    autocomplete search field.
  • Add a management command to create the required site structure,
  • Allow to dynamically set webpack publicPath. This is useful if a CDN is used
    to load statics. Define the settings CDN_DOMAIN and it will be used as base
    domain to fetch js chunks.

Changed

  • Restrict course content to plain text in standard sections,
  • Change the order of placeholders on the course page following feedback from
    our support team,
  • Simplify the Docker development stack to have a single Dockerfile and
    docker-compose configuration for testing either with MySQL or PostgreSQL
    database backend
  • Standardize the project's Makefile to make it more easily maintainable by
    our peers
  • Database ports are no longer exposed in the development environment

Removed

  • Alpine images are no longer maintained and have been removed from the project

Fixed

  • Fix production image by removing dependency to factory in production code,
  • Fail and return a meaningful error when an invalid slug is submitted in
    page creation wizards,
  • Fix person placeholders mistakenly showing on the organization page,
  • Fix serializer that was failing for a course indexed with no organization,
  • The language filter, which is not a drilldown filter, no longer behaves
    like one. Ditto for any future similar filters,
  • All children are now shown when a parent filter value is "opened", instead
    of just the top 5 by facet count.

1.0.0-beta.8

24 Apr 21:02
Compare
Choose a tag to compare

Added

  • Link persons to a random set of organizations in the demo site,
  • Add organizations to a person via plugins on the person detail page,
  • Show related persons on the organization detail page,
  • On a person detail page, show courses to which s.he participated and blogposts s.he authored,
  • Show results count in the course search results list.

Changed

  • Search as the user types in the course search field. This replaces autosuggest in course names with a full index search,
  • Prevent search filters from jumping around by displaying facets with zero results as disabled and always reserving the space for the "Clear filters" button,
  • Improve demo dataset by assigning each person to an organization,
  • Use checkboxes to enable/disable filters in search page,
  • Improve autosuggest tests to increase reliability.

Fixed

  • Use proper HTML elements for accessibility of search filter groups.

1.0.0-beta.7

18 Apr 07:00
Compare
Choose a tag to compare

Changed

  • Update French and Canadian French .po files with the latest translations.

Fixed

  • Fix a display glitch with parent filters when active.

1.0.0-beta.6

18 Apr 05:53
Compare
Choose a tag to compare

Added

  • Allow tagging persons with categories,
  • A "Clear x active filters" button in the search filters pane lets the user remove all active filters with one click
  • Add template and styling for persons list page,
  • Add template and styling for categories list page,
  • Add sub categories in category detail page.
  • Show CTAs to Enroll on course glimpses in Search.
  • Make the RICHIE_ES_HOST configurable in the sandbox

Changed

  • Harmonize how cards look on the site (grey border and white background),
  • Move all the code related to the demo site to its own application,
  • Activating a filter that is a parent or child of a current active filter removes this active relative. This makes the experience of adding those relative filters more intuitive,
  • Simplify Richie settings and provide defaults for those unlikely to be customized (search, languages, plugins, general),
  • Change layout global background to darker grey,
  • Improve 'categories' page layout,
  • Every organization in a list is now displayed with an organization glimpse.

Fixed

  • Fix links between objects managed via plugins (e.g. categories on a course) that allowed draft links to display objects on public pages.
  • Show the highlighted organization on course glimpses in Search.
  • Show a placeholder image on course glimpses in Search when the cover for the course is missing.

1.0.0-beta.5

11 Apr 14:06
Compare
Choose a tag to compare

Added

  • Enable parent/children filters in the filters pane in Search,
  • Add a template filter to check if a placeholder is empty,
  • Add a new "Assessment" section in the course page.

Changed

  • Hide empty placeholders from the course public page,
  • Simplify the page creation wizard by reducing possibilities and automating object relations based on the navigation context:
    • ensure we are not creating duplicate slugs when creating a page,
    • reduce number of fields on form to create a new course run (remove languages and resource_link) and add a checkbox to easily snapshot the course when creating the course run,
    • automatically link courses with an organization when created from this organization's page,
    • create nested categories automatically when visiting the parent category page,
    • show button to create course runs only when visiting a course page and automatically link the course run to the current course,
    • hide button to create normal pages/subpages from wizard in sections governed by Richie.
  • Translations are loaded dynamically in frontend application,
  • Optimized frontend build in our official Docker image.

Fixed

  • Remove possibility to edit course title from the course run page as it breaks publishing.
  • Fix an issue that crashed the app when a category was selected in search autocomplete.
  • Committed CSS files are now included in the Docker image
  • The python package now includes statics build in production mode

1.0.0-beta.4

08 Apr 17:55
Compare
Choose a tag to compare

Added

  • Add i18n tooling to export strings to Crowdin, retrieve and compile translations, for the
    frontend and the backend. All translations are committed inside the project,
  • Add links to switch language from the menu,
  • Add social network badges in the footer, on course pages and on blog posts,
  • Make categories configurable via the CMS, multi-dimensional and nested,
  • Add blog post pages in a section called News,
  • Update Elasticsearch indexes each time a page is modified and published,
  • Improve fulltext search to match partial words,
  • Add end-to-end tests for the search functionality to secure behavior.

Changed

  • Make site look generic and deploy it to richie.education,
  • Build frontend in production mode,
  • Upgrade to Python 3.7,
  • Switch to indexing courses instead of course runs,
  • Allow course run dates to be null. If a start date is null, the course run is
    to be programmed, if an end date is null, the course run (or its enrollment) is deemed to
    last forever,
  • Use our own Elasticsearch image to allow running it with a non-root user,
  • Move persons to the courses app,
  • Rename database tables to richie_* to regain control of their name,
  • Improve structure and packaging to allow using Richie as a third party application in another
    DjangoCMS project,
  • Many cosmetic and UI fixes and improvements following first user feedbacks.

1.0.0-beta.3

15 Mar 11:53
Compare
Choose a tag to compare
1.0.0-beta.3 Pre-release
Pre-release

Changed

  • Improved Docker image: now it does not ship with the project sources but only with runtime-required requirements (i.e. the sandbox and richie's package installed globally).

Fixed

  • Richie templates now live in core instead of sandbox.
  • Reorganize the search frontend to support nested filters.
  • The CI now effectively tests packaging issues.
  • The apps.core.fields module is no longer missing from Richie's package.
  • Fixed the bin/pylint script to work with the default database engine (PostgreSQL)
  • Fixed rebuild & bootstrap Makefile rules

1.0.0-beta.2

13 Mar 16:28
Compare
Choose a tag to compare
1.0.0-beta.2 Pre-release
Pre-release

Added

  • Users can create a custom taxonomy of categories in the CMS (eg. Subjects with Computer Science (incl. Algorithms & Data Structures), History, etc., and Levels with Beginner, Intermediate, etc.).
  • Filters are dynamically generated by the backend to support custom meta categories (level 1 nodes in the category taxonomy) and fix structual issues with dates.
  • Integrate the homepage and fill it with content in the demo-site.
  • Integrate a design for the list of organizations page.

Fixed

  • Richie is compatible with MySQL, with database switching utilities and dedicated tests.
  • Full-text searches also search in linked object names, such as categories & organizations.
  • Make improvements to the demo site to make it more representative of real-world use.
  • Don't break course pages if there is no linked organization.
  • Fix i18n issues that broke the backend when using other languages than the default english.
  • Prevent display glitches during loading of the courses search page.

1.0.0-beta.1

09 Feb 10:44
Compare
Choose a tag to compare
1.0.0-beta.1 Pre-release
Pre-release

Added:

  • Publish a master tagged docker image to DockerHub. It is supposed to reflect
    the master branch state.

Fixed:

  • The simple_text_ckeditor plugin was not discovered as a python module and thus not distributed with Richie's python package.
  • The organization logo maximal size is now restrained to its container size.
  • We no longer publish development images to DockerHub as they appear useless.