diff -r 504a67206fdc -r f0bb16be11d0 doc/dev/features_list.rst --- a/doc/dev/features_list.rst Wed Sep 09 18:52:56 2015 +0200 +++ b/doc/dev/features_list.rst Thu Nov 19 12:29:42 2015 +0100 @@ -2,21 +2,21 @@ CubicWeb features ================= -This page tries to resume features found in the bare cubicweb framework, +This page summarizes features found in the bare cubicweb framework and indicates how mature and documented they are. :code maturity (CM): - 0: experimental, not ready at all for production, may be killed - - 1: draft / unsatisfying, api may change in a near future, much probably in long - term + - 1: draft / unsatisfying, API may change in a near future, and will + certainly change in the long term - - 2: good enough, api sounds good but will probably evolve a bit with more + - 2: good enough, API sounds good but will probably evolve a bit with more hindsight - - 3: mature, backward incompatible changes unexpected (may still evolve though, - of course) + - 3: mature, backward incompatible changes unexpected (may still evolve + though, of course) :documentation level (DL): @@ -25,7 +25,7 @@ - 1: poor documentation - - 2: some valuable documentation but some parts keep uncovered + - 2: some valuable documentation but incomplete coverage - 3: good / complete documentation @@ -33,191 +33,306 @@ Instance configuration and maintainance ======================================= -+====================================================================+====+====+ -| FEATURE | CM | DL | -+====================================================================+====+====+ -| setup - installation | 2 | 3 | -| setup - environment variables | 3 | 2 | -| setup - running modes | 2 | 2 | -| setup - administration tasks | 2 | 2 | -| setup - configuration file | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| configuration - user / groups handling | 3 | 1 | -| configuration - site configuration | 3 | 1 | -| configuration - distributed configuration | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| multi-sources - capabilities | NA | 0 | -| multi-sources - configuration | 2 | 0 | -| multi-sources - ldap integration | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| usage - custom ReST markup | 2 | 0 | -| usage - personal preferences | 2 | 1 | -+--------------------------------------------------------------------+----+----+ +.. table:: + +-------------------------------------------------------------------+----+----+ + | FEATURE | CM | DL | + +===============+===================================================+====+====+ + | setup | installation | 2 | 3 | + | +---------------------------------------------------+----+----+ + | | environment variables | 3 | 2 | + | +---------------------------------------------------+----+----+ + | | running modes | 2 | 2 | + | +---------------------------------------------------+----+----+ + | | administration tasks | 2 | 2 | + | +---------------------------------------------------+----+----+ + | | configuration file | 2 | 1 | + +---------------+---------------------------------------------------+----+----+ + | configuration | user / groups handling | 3 | 1 | + | +---------------------------------------------------+----+----+ + | | site configuration | 3 | 1 | + | +---------------------------------------------------+----+----+ + | | distributed configuration | 2 | 1 | + +---------------+---------------------------------------------------+----+----+ + | multi-sources | capabilities | NA | 0 | + | +---------------------------------------------------+----+----+ + | | configuration | 2 | 0 | + | +---------------------------------------------------+----+----+ + | | ldap integration | 2 | 1 | + +---------------+---------------------------------------------------+----+----+ + | usage | custom ReST markup | 2 | 0 | + | +---------------------------------------------------+----+----+ + | | personal preferences | 2 | 1 | + +---------------+---------------------------------------------------+----+----+ Core development ================ -+====================================================================+====+====+ -| FEATURE | CM | DL | -+====================================================================+====+====+ -| base - concepts | NA | 3 | -| base - security model | NA | 2 | -| base - database initialization | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| rql - base | 2 | 2 | -| rql - write | 2 | 2 | -| rql - function | 2 | 0 | -| rql - outer joins | 2 | 1 | -| rql - aggregates | 2 | 1 | -| rql - subqueries | 2 | 0 | -+--------------------------------------------------------------------+----+----+ -| schema - base | 2 | 3 | -| schema - constraints | 3 | 2 | -| schema - security | 2 | 2 | -| schema - inheritance | 1 | 1 | -| schema - customization | 1 | 1 | -| schema - introspection | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| vregistry - appobject | 2 | 2 | -| vregistry - registration | 2 | 2 | -| vregistry - selection | 3 | 2 | -| vregistry - core selectors | 3 | 3 | -| vregistry - custom selectors | 2 | 1 | -| vregistry - debugging selection | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| entities - interfaces | 2 | ? | -| entities - customization (`dc_`, ...) | 2 | ? | -| entities - app logic | 2 | 2 | -| entities - orm configuration | 2 | 1 | -| entities - pluggable mixins | 1 | 0 | -| entities - workflow | 3 | 2 | -+--------------------------------------------------------------------+----+----+ -| dbapi - connection | 3 | 1 | -| dbapi - data management | 1 | 1 | -| dbapi - result set | 3 | 1 | -| dbapi - transaction, undo | 2 | 0 | -+--------------------------------------------------------------------+----+----+ -| cube - layout | 2 | 3 | -| cube - new cube | 2 | 2 | -+--------------------------------------------------------------------+----+----+ -| migration - context | 2 | 1 | -| migration - commands | 2 | 2 | -+--------------------------------------------------------------------+----+----+ -| testlib - CubicWebTC | 2 | 1 | -| testlib - automatic tests | 2 | 2 | -+--------------------------------------------------------------------+----+----+ -| i18n - mark string | 3 | 2 | -| i18n - customize strings from other cubes / cubicweb | 3 | 1 | -| i18n - update catalog | 3 | 2 | -+--------------------------------------------------------------------+----+----+ -| more - reloading tips | NA | 0 | -| more - site_cubicweb | 2 | ? | -| more - adding options in configuration file | 3 | 0 | -| more - adding options in site configuration / preferences | 3 | ? | -| more - optimizing / profiling | 2 | 1 | -| more - c-c plugins | 3 | 0 | -| more - crypto services | 0 | 0 | -| more - massive import | 2 | 0 | -| more - mime type based conversion | 2 | 0 | -| more - CWCache | 1 | 0 | -+--------------------------------------------------------------------+----+----+ +.. table:: + + +--------------------------------------------------------------------+----+----+ + | FEATURE | CM | DL | + +===========+========================================================+====+====+ + | base | concepts | NA | 3 | + | +--------------------------------------------------------+----+----+ + | | security model | NA | 2 | + | +--------------------------------------------------------+----+----+ + | | database initialization | 2 | 1 | + +-----------+--------------------------------------------------------+----+----+ + | rql | base | 2 | 2 | + | +--------------------------------------------------------+----+----+ + | | write | 2 | 2 | + | +--------------------------------------------------------+----+----+ + | | function | 2 | 0 | + | +--------------------------------------------------------+----+----+ + | | outer joins | 2 | 1 | + | +--------------------------------------------------------+----+----+ + | | aggregates | 2 | 1 | + | +--------------------------------------------------------+----+----+ + | | subqueries | 2 | 0 | + +-----------+--------------------------------------------------------+----+----+ + | schema | base | 2 | 3 | + | +--------------------------------------------------------+----+----+ + | | constraints | 3 | 2 | + | +--------------------------------------------------------+----+----+ + | | security | 2 | 2 | + | +--------------------------------------------------------+----+----+ + | | inheritance | 1 | 1 | + | +--------------------------------------------------------+----+----+ + | | customization | 1 | 1 | + | +--------------------------------------------------------+----+----+ + | | introspection | 2 | 1 | + +-----------+--------------------------------------------------------+----+----+ + | vregistry | appobject | 2 | 2 | + | +--------------------------------------------------------+----+----+ + | | registration | 2 | 2 | + | +--------------------------------------------------------+----+----+ + | | selection | 3 | 2 | + | +--------------------------------------------------------+----+----+ + | | core selectors | 3 | 3 | + | +--------------------------------------------------------+----+----+ + | | custom selectors | 2 | 1 | + | +--------------------------------------------------------+----+----+ + | | debugging selection | 2 | 1 | + +-----------+--------------------------------------------------------+----+----+ + | entities | interfaces | 2 | ? | + | +--------------------------------------------------------+----+----+ + | | customization (`dc_`, ...) | 2 | ? | + | +--------------------------------------------------------+----+----+ + | | app logic | 2 | 2 | + | +--------------------------------------------------------+----+----+ + | | orm configuration | 2 | 1 | + | +--------------------------------------------------------+----+----+ + | | pluggable mixins | 1 | 0 | + | +--------------------------------------------------------+----+----+ + | | workflow | 3 | 2 | + +-----------+--------------------------------------------------------+----+----+ + | dbapi | connection | 3 | 1 | + | +--------------------------------------------------------+----+----+ + | | data management | 1 | 1 | + | +--------------------------------------------------------+----+----+ + | | result set | 3 | 1 | + | +--------------------------------------------------------+----+----+ + | | transaction, undo | 2 | 0 | + +-----------+--------------------------------------------------------+----+----+ + | cube | layout | 2 | 3 | + | +--------------------------------------------------------+----+----+ + | | new cube | 2 | 2 | + +-----------+--------------------------------------------------------+----+----+ + | migration | context | 2 | 1 | + | +--------------------------------------------------------+----+----+ + | | commands | 2 | 2 | + +-----------+--------------------------------------------------------+----+----+ + | testlib | CubicWebTC | 2 | 1 | + | +--------------------------------------------------------+----+----+ + | | automatic tests | 2 | 2 | + +-----------+--------------------------------------------------------+----+----+ + | i18n | mark string | 3 | 2 | + | +--------------------------------------------------------+----+----+ + | | customize strings from other cubes / cubicweb | 3 | 1 | + | +--------------------------------------------------------+----+----+ + | | update catalog | 3 | 2 | + +-----------+--------------------------------------------------------+----+----+ + | more | reloading tips | NA | 0 | + | +--------------------------------------------------------+----+----+ + | | site_cubicweb | 2 | ? | + | +--------------------------------------------------------+----+----+ + | | adding options in configuration file | 3 | 0 | + | +--------------------------------------------------------+----+----+ + | | adding options in site configuration / preferences | 3 | ? | + | +--------------------------------------------------------+----+----+ + | | optimizing / profiling | 2 | 1 | + | +--------------------------------------------------------+----+----+ + | | c-c plugins | 3 | 0 | + | +--------------------------------------------------------+----+----+ + | | crypto services | 0 | 0 | + | +--------------------------------------------------------+----+----+ + | | massive import | 2 | 0 | + | +--------------------------------------------------------+----+----+ + | | mime type based conversion | 2 | 0 | + | +--------------------------------------------------------+----+----+ + | | CWCache | 1 | 0 | + +-----------+--------------------------------------------------------+----+----+ Web UI development ================== -+====================================================================+====+====+ -| FEATURE | CM | DL | -+====================================================================+====+====+ -| base - web request | 2 | 2 | -| base - exceptions | 2 | 0 | -| base - session, authentication | 1 | 0 | -| base - http caching | 2 | 1 | -| base - external resources | 2 | 2 | -| base - static files | 2 | ? | -| base - data sharing | 2 | 2 | -| base - graphical chart customization | 1 | 1 | -+--------------------------------------------------------------------+----+----+ -| publishing - cycle | 2 | 2 | -| publishing - error handling | 2 | 1 | -| publishing - transactions | NA | ? | -+--------------------------------------------------------------------+----+----+ -| controller - base | 2 | 2 | -| controller - view | 2 | 1 | -| controller - edit | 2 | 1 | -| controller - json | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| views - base | 2 | 2 | -| views - templates | 2 | 2 | -| views - boxes | 2 | 1 | -| views - components | 2 | 1 | -| views - primary | 2 | 1 | -| views - tabs | 2 | 1 | -| views - xml | 2 | 0 | -| views - text | 2 | 1 | -| views - table | 2 | 1 | -| views - plot | 2 | 0 | -| views - navigation | 2 | 0 | -| views - calendar, timeline | 2 | 0 | -| views - index | 2 | 2 | -| views - breadcrumbs | 2 | 1 | -| views - actions | 2 | 1 | -| views - debugging | 2 | 1 | -+--------------------------------------------------------------------+----+----+ -| form - base | 2 | 1 | -| form - fields | 2 | 1 | -| form - widgets | 2 | 1 | -| form - captcha | 2 | 0 | -| form - renderers | 2 | 0 | -| form - validation error handling | 2 | 0 | -| form - autoform | 2 | 2 | -| form - reledit | 2 | 0 | -+--------------------------------------------------------------------+----+----+ -| facets - base | 2 | ? | -| facets - configuration | 2 | 1 | -| facets - custom facets | 2 | 0 | -+--------------------------------------------------------------------+----+----+ -| css - base | 1 | 1 | -| css - customization | 1 | 1 | -+--------------------------------------------------------------------+----+----+ -| js - base | 1 | 1 | -| js - jquery | 1 | 1 | -| js - base functions | 1 | 0 | -| js - ajax | 1 | 0 | -| js - widgets | 1 | 1 | -+--------------------------------------------------------------------+----+----+ -| other - page template | 0 | 0 | -| other - inline doc (wdoc) | 2 | 0 | -| other - magic search | 2 | 0 | -| other - url mapping | 1 | 1 | -| other - apache style url rewrite | 1 | 1 | -| other - sparql | 1 | 0 | -| other - bookmarks | 2 | 1 | -+--------------------------------------------------------------------+----+----+ +.. table:: + + +--------------------------------------------------------------------+----+----+ + | FEATURE | CM | DL | + +============+=======================================================+====+====+ + | base | web request | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | exceptions | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | session, authentication | 1 | 0 | + | +-------------------------------------------------------+----+----+ + | | http caching | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | external resources | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | static files | 2 | ? | + | +-------------------------------------------------------+----+----+ + | | data sharing | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | graphical chart customization | 1 | 1 | + +------------+-------------------------------------------------------+----+----+ + | publishing | cycle | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | error handling | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | transactions | NA | ? | + +------------+-------------------------------------------------------+----+----+ + | controller | base | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | view | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | edit | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | json | 2 | 1 | + +------------+-------------------------------------------------------+----+----+ + | views | base | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | templates | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | boxes | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | components | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | primary | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | tabs | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | xml | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | text | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | table | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | plot | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | navigation | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | calendar, timeline | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | index | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | breadcrumbs | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | actions | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | debugging | 2 | 1 | + +------------+-------------------------------------------------------+----+----+ + | form | base | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | fields | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | widgets | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | captcha | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | renderers | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | validation error handling | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | autoform | 2 | 2 | + | +-------------------------------------------------------+----+----+ + | | reledit | 2 | 0 | + +------------+-------------------------------------------------------+----+----+ + | facets | base | 2 | ? | + | +-------------------------------------------------------+----+----+ + | | configuration | 2 | 1 | + | +-------------------------------------------------------+----+----+ + | | custom facets | 2 | 0 | + +------------+-------------------------------------------------------+----+----+ + | css | base | 1 | 1 | + | +-------------------------------------------------------+----+----+ + | | customization | 1 | 1 | + +------------+-------------------------------------------------------+----+----+ + | js | base | 1 | 1 | + | +-------------------------------------------------------+----+----+ + | | jquery | 1 | 1 | + | +-------------------------------------------------------+----+----+ + | | base functions | 1 | 0 | + | +-------------------------------------------------------+----+----+ + | | widgets | 1 | 1 | + | +-------------------------------------------------------+----+----+ + | | ajax | 1 | 0 | + | +-------------------------------------------------------+----+----+ + | | widgets | 1 | 1 | + +------------+-------------------------------------------------------+----+----+ + | other | page template | 0 | 0 | + | +-------------------------------------------------------+----+----+ + | | inline doc (wdoc) | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | magic search | 2 | 0 | + | +-------------------------------------------------------+----+----+ + | | url mapping | 1 | 1 | + | +-------------------------------------------------------+----+----+ + | | apache style url rewrite | 1 | 1 | + | +-------------------------------------------------------+----+----+ + | | sparql | 1 | 0 | + | +-------------------------------------------------------+----+----+ + | | bookmarks | 2 | 1 | + +------------+-------------------------------------------------------+----+----+ Repository development ====================== -+====================================================================+====+====+ -| FEATURE | CM | DL | -+====================================================================+====+====+ -| base - session | 2 | 2 | -| base - more security control | 2 | 0 | -| base - debugging | 2 | 0 | -+--------------------------------------------------------------------+----+----+ -| hooks - development | 2 | 2 | -| hooks - abstract hooks | 2 | 0 | -| hooks - core hooks | 2 | 0 | -| hooks - control | 2 | 0 | -| hooks - operation | 2 | 2 | -+--------------------------------------------------------------------+----+----+ -| notification - sending email | 2 | ? | -| notification - base views | 1 | ? | -| notification - supervisions | 1 | 0 | -+--------------------------------------------------------------------+----+----+ -| source - storages | 2 | 0 | -| source - authentication plugins | 2 | 0 | -| source - custom sources | 2 | 0 | -+--------------------------------------------------------------------+----+----+ +.. table:: + + +--------------------------------------------------------------------+----+----+ + | FEATURE | CM | DL | + +==============+=====================================================+====+====+ + | base | session | 2 | 2 | + | +-----------------------------------------------------+----+----+ + | | more security control | 2 | 0 | + | +-----------------------------------------------------+----+----+ + | | debugging | 2 | 0 | + +--------------+-----------------------------------------------------+----+----+ + | hooks | development | 2 | 2 | + | +-----------------------------------------------------+----+----+ + | | abstract hooks | 2 | 0 | + | +-----------------------------------------------------+----+----+ + | | core hooks | 2 | 0 | + | +-----------------------------------------------------+----+----+ + | | control | 2 | 0 | + | +-----------------------------------------------------+----+----+ + | | operation | 2 | 2 | + +--------------+-----------------------------------------------------+----+----+ + | notification | sending email | 2 | ? | + | +-----------------------------------------------------+----+----+ + | | base views | 1 | ? | + | +-----------------------------------------------------+----+----+ + | | supervisions | 1 | 0 | + +--------------+-----------------------------------------------------+----+----+ + | source | storages | 2 | 0 | + | +-----------------------------------------------------+----+----+ + | | authentication plugins | 2 | 0 | + | +-----------------------------------------------------+----+----+ + | | custom sources | 2 | 0 | + +--------------+-----------------------------------------------------+----+----+ +