The new mechanism for marking that a unit has discussions is to use the discussion_enabled flag instead of adding a discussion block. This change adds code that is run during the course rerun process to mark any existing units that have a discussion block as discussible using the new mechanism. It doesn't touch the existing discussion blocks. If the new discussions configuration experience is globally enabled, this will also switch from the legacy provider to the new provider. It analyses the course for any discussion blocks that have been added to graded subsections, and if that is the case, it also automatically enables discussions in graded subsections (which are otherwise disabled for new courses by default).
Open edX -------- This is the root package for Open edX. The intent is that all importable code from Open edX will eventually live here, including the code in the lms, cms, and common directories. If you're adding a new Django app, place it in core/djangoapps. If you're adding utilities that require Django, place them in core/djangolib. If you're adding code that defines no Django models or views of its own but is widely useful, put it in core/lib. Note: All new code should be created in this package, and the legacy code will be moved here gradually. For now the code is not structured like this, and hence legacy code will continue to live in a number of different packages.