Details
-
Type:
Improvement
-
Status:
Resolved
-
Priority:
Critical
-
Resolution: Fixed
-
Component/s: CVS repository
-
Labels:None
Description
Here's my plan for restructuring contrib area very soon:
1) Create a new tree structure there that exactly mirrors the structure of plugins in moodle itself:
admin/reports
blocks
course/format
mod/resource
mod/assignment
questions
etc etc
2) Move all the existing code into this new structure. I know this will break a lot of links and possibly CVS setups, but I think it's worth it to have a nice easy-to-understand structure going forward.
3) Create branches called MOODLE_15_STABLE, MOODLE_16_STABLE and MOODLE_17_STABLE which developers can use if they wish to support separate versions..
4) Fix download.moodle.org so that it packages and stores modules in a way that mirrors the tree structure.
5) Edit Moodle Modules listing and fix all download links in there.
6) Document, advertise, explain to developers.
Great plan! Moving away from 'per-developer' areas is a good move.
A few comments:
/mod/foo - contrib module foo
/mod/assignment/type/blah - contrib type blah for the official mod/assignment
so I'd propose
/mod/foo - contrib module foo
/mod-assignment-type/blah - contrib type blah
and similarly
then actual module/plugin is on the 2nd level subdir: /contrib/$type/$thethingitself
- Might be good to not use 2nd level subdirs for the categories to ensure top-level visibility, and for clarity. The main case is the plugins or submodules to modules. The current structure is confusing in this case when you are looking at the mod/ directory:
/mod/foo - contrib module foo /mod/assignment/type/blah - contrib type blah for the official mod/assignment so I'd propose /mod/foo - contrib module foo /mod-assignment-type/blah - contrib type blah and similarly- admin-reports
- auth-plugins
- course-format
- etc
then actual module/plugin is on the 2nd level subdir: /contrib/$type/$thethingitself