Changes between Version 96 and Version 97 of Version1.2Features


Ignore:
Timestamp:
10/23/2009 11:10:25 AM (5 years ago)
Author:
jacob
Comment:

Drafted high/med/low priority for 1.2.

Legend:

Unmodified
Added
Removed
Modified
  • Version1.2Features

    v96 v97  
    1 = Django 1.2 Features =
     1= Django 1.2 features =
    22
    3 [[TOC()]]
     3These are the features proposed for inclusion in Django 1.2, broken into high, medium, and low priorities. For more
     4details, see :trac:`Version1.2Roadmap`.
    45
    5 This page lists features which have been proposed for development/inclusion in Django 1.2. So far no decisions have been made regarding any of these features. See [wiki:Version1.2Roadmap] for information on the process and definition of terms.
     6== High priority ==
    67
    7 == Major features ==
     8These features have many interested committers and are being emphasized for 1.2. If you want to help out, please start here.
    89
    9 These are the feature proposals that represent major architectural changes for Django.
     10|| '''Code'''       || '''Feature'''                        || '''Committer(s)'''   || '''Ticket(s)'''  || '''Commit''' ||
     11|| Contrib-08       || row-level permissions hooks in auth  || MT, JK               || #11010           || ||
     12|| Contrib-10       || Admin actions in CommentsAdmin       || JKM, RKM, JB         || #11625           || ||
     13|| Core-01          || Improved/reworked CsrfProtection     || SW, LP, RKM, JB      || #9977, #10816    || ||
     14|| Core-05          || Integrate `logging` with Django      || MT, SW, RKM          ||                  || ||
     15|| Forms-02         || required/error classes on form rows  || JKM, MT, BR, SW, JK, JB || #3512         || ||
     16|| GSoC-1           || Merge admin-ui branch                || JKM, VR, SW, JB      ||                  || ||
     17|| GSoC-2           || Merge http-wsgi-improvements branch  || MT, JB               ||                  || ||
     18|| GSoC-3           || Merge i18n-improvements branch       || MT, JB               ||                  || ||
     19|| GSoC-4           || Merge model-validation branch        || JK, JB               ||                  || ||
     20|| GSoC-5           || Merge multidb branch                 || SW, RKM              ||                  || ||
     21|| GSoC-6           || Merge test-improvements branch       || KT, JB               ||                  || ||
     22|| ORM-10           || exists() method on QuerySets         || MT, LP, JB           || #11402           || ||
     23|| ORM-12           || Model.objects.raw(SQL)               || JKM, MY, SW, RKM, JB || #11863           || ||
     24|| Serialization-01 || Foreign keys in serializers          || JKM, MT, BR, RKM, JB || #7052            || ||
     25|| Templates-02     || Smarter {% if %} tag                 || SW, LP, RKM          || [http://www.djangosnippets.org/snippets/1350/ snippet] || ||
     26|| Templates-04     || Better template tag loading          || MT, JB               || #3349, #6587     || ||
     27|| Templates-05     || Support caching compiled templates   || MT, RKM              || #6262            || ||
     28|| URLs-01          || Replace get_absolute_url()           || JKM, SW              || ReplacingGetAbsoluteUrl || ||
     29|| Views-01         || Class-based generic views            || JK, JB               || #6735            || ||
    1030
    11   * Admin UI Enhancements (Zain Memon's GSoC project)
    12   * Improved/reworked CsrfProtection (see #9977, #10816)
    13   * i18n improvements (Marc Garcia's GSoC project)
    14   * #6845 Model validation (Honza Kral's GSoC project)
    15   * Multi-database support (Alex Gaynor's GSoC project)
    16   * Add {% doctype %} and {% field %} template tags from http://github.com/simonw/django-html/
    17   * Add support for [wiki:Signing Signing and Signed Cookies]
    18   * #12012 Integrate the Python standard library logging module with Django - LoggingProposal
    19   * Support for non-relational databases: Tokyo Cabinet/Tyrant, MongoDB, Cassandra, Google Bigtable (AppEngine, #10192), Amazon SimpleDB, CouchDB, ZODB, etc
    20   * #17 Identity mapping in the ORM
    21   * #373 Multi-part primary keys
    22   * #6735 Class-based generic views
     31== Medium priority ==
    2332
    24 == 3rd party packages for integration ==
     33These features have at least one committer interested, but are less well supported and will probably need some advocacy to be considered for committing.
    2534
    26 These are the external projects that have been proposed for addition to Django's core.
     35|| '''Code'''   || '''Feature'''                             || '''Committer(s)'''  || '''Ticket(s)'''  || '''Commit''' ||
     36|| Admin-02     || Custom FilterSpecs                        || BR, LP              || #5833            || ||
     37|| Contrib-05   || Syndication feed views                    || JKM, SW             || http://github.com/bfirsh/syndication-view/ || ||
     38|| Core-02      || Signing and Signed Cookies                || SW                  ||                  ||
     39|| Email-01     || Pluggable email backends.                 || RKM                 || #10355           || ||
     40|| Forms-01     || Read-only form fields                     || MT                  || #342             ||
     41|| Forms-03     || Fieldsets for newforms                    || MT                  || #6630            || ||
     42|| ORM-03       || Multi-part primary keys                   || MT                  || #373             || ||
     43|| ORM-04       || Support bigint fields                     || KT                  || #399             || ||
     44|| ORM-08       || Add support for database schemas          || JB                  || #6148            || ||
     45|| ORM-11       || Remove unnecessary savepoints with Oracle || JKM                 || #11156           || ||
     46                                                                                             
     47Note: ''Admin-02'', ''Forms-01'', ''ORM-03'', and ''ORM-04'' are controversial (both +1 and -1 votes) and may need
     48discussion on django-dev before commit.
    2749
    28   * Add South (http://south.aeracode.org/) to contrib
    29   * Add IBM DB2 django adapter (http://code.google.com/p/ibm-db/wiki/ibm_db_django_README) to django.db.backends
    30   * Add Sybase SQL Anywhere backend (http://code.google.com/p/sqlany-django/) to django.db.backends
    31   * Search support in the ORM: http://github.com/bfirsh/django/tree/search
    32   * #4604 Message Passing For Anonymous Users (See also: SessionMessages)
    33   * #11698 Add Django Debug Toolbar to contrib
    34   * #11982 Integrate Reversion as a django contrib app
    35   * Add Alex's django-filters (http://github.com/alex/django-filter) instead of admin filters and #5833 Custom `FilterSpecs` proposal
     50== Low priority ==
    3651
    37 == Features under consideration ==
     52These features have no direct interest by a committer, and so will need a ''very'' good patch and a dedicated developer or three.
    3853
    39 === Admin ===
    40   * #494 Option for classes on admin inlines
    41   * #5833 Custom `FilterSpecs`
    42   * #10871 Support for input arguments on admin actions.
     54|| '''Code'''   || '''Feature'''                                 || '''Ticket(s)'''   || '''Commit''' ||
     55|| Admin-01     || Option for classes on admin inlines           || #494              || ||
     56|| Contrib-02   || Message Passing For Anonymous Users           || #4604             || ||
     57|| Contrib-07   || Session-based FormWizard                      || #9200             || ||
     58|| Contrib-09   || LDAP authentication backend                   ||                   || ||
     59|| Contrib-11   || Implement Atom Publishing Protocol            || #3569             || ||
     60|| ORM-06       || Store datetime values as UTC                  || #1480, #2626      || ||
     61|| ORM-07       || Implement DurationFields                      || #2443             || ||
     62|| ORM-09       || Add ON DELETE and ON UPDATE support           || #7539             || ||
     63|| Templates-03 || Easier conditional template tags              || http://djangosnippets.org/snippets/1538 || ||
     64|| Templates-06 || Capture in a template variable                || #6378             || ||
     65|| Templates-07 || django.template refactoring                   || #7806             || ||
     66|| URLs-02      || Support for subdomains in the url patterns    || #8896             || ||
    4367
    44 === Cache system ===
    45   * #11269 Allow `cache_page` decorator key_prefix argument to be a callable, enabling e.g. per-user cached pages
    46   * #11503 Expose a method to manually flush all cache backends.
     68Note: ''Contrib-09'' and ''ORM-07'' are controversial (both +1 and -1 votes) and may need discussion on django-dev before commit.
    4769
    48 === Contrib ===
    49   * Syndication feed views: http://github.com/bfirsh/syndication-view/
    50   * #3011 Allow for extendable auth_user module
    51   * #9200 Session-based `FormWizard`
    52   * #11010 Support row-level permissions by updating the User-Object and Authbackends, to take an optional `object` parameter, so 3rd party Apps can implement the functionality easily.
    53   * #2507, #11526 LDAP authentication backend
    54   * #11625 Add admin actions to the `CommentsAdmin`
     70== Highly unlikely ==
    5571
    56 === Email ===
    57   * #10355 Add support for pluggable email backends.
     72Some features were voted on and were essentially rejected from 1.2. They're labeled "highly unlikely" to reflect that
     73fact that consensus ''can'' change. However, with multiple -1 votes, the following features are highly unlikely to make
     74it into Django 1.2:
    5875
    59 === Forms ===
    60   * #342 Read-only form fields
    61   * #3512 Add "required" & "error" CSS classes to form rows in as_* methods
    62   * #6630 Fieldsets for newforms
    63   * #9223 Declarative widgets
    64 
    65 === ORM ===
    66   * #399 Support 8-byte integer DB-fields (`bigint`)
    67   * #1480, #2626 Store datetime values as UTC, handle them consistently regardless of RDBMS, platform and make things easier for multi-timezone applications.
    68   * #2443 Implement `DurationFields`
    69   * #6148 Add support for database schemas
    70   * #7539 Add ON DELETE and ON UPDATE support
    71   * #11402 exists() method on `QuerySets`
    72   * #11156 Remove unnecessary savepoints with Oracle
    73   * #11863 Add a method to the ORM to create Model instances from raw sql queries (useful when the orm is limiting you)
    74 
    75 === Serialization ===
    76   * #4656 Full serialization (Implementation available at http://code.google.com/p/wadofstuff/wiki/DjangoFullSerializers)
    77   * #7052 dumpdata/loaddata: Support using lookup dictionaries as foreign keys in JSON/XML/YAML data dumps
    78 
    79 === Templates ===
    80   * Smarter {% if %} tag from http://www.djangosnippets.org/snippets/1350/
    81   * Easier conditional template tags (http://www.djangosnippets.org/snippets/1538/)
    82   * #3349, #6587 Better template tag loading
    83   * #3569 Implement Atom Publishing Protocol
    84   * #6262 Support caching compiled templates
    85   * #6378 Capture arbitrary output as a template variable (or add a capture ttag)
    86   * #7806 django.template refactoring
    87   * ZPT templates (http://zpt.sourceforge.net/) would be a nice addition to the template machinery
    88 
    89 === URLs ===
    90   * Replace get_absolute_url() with methods that are more useful and have more realistic names (See also: ReplacingGetAbsoluteUrl) 
    91   * #8896 Support for subdomains in the url patterns, to allow easy reversing (or better: to allow reversing at all ;))
    92 
    93 === HTTP ===
    94 
    95   * #9886 File-like interface for HttpRequest (streaming request)
     76 * Admin-03 (Support for input arguments on admin actions.) - this would overly complicate the admin UI and dilute the purpose of the admin actions.
     77 * Contrib-01 (Add South to contrib) - general consensus - including that of South's lead developer - is that South isn't yet ready to be a bonafide part of Django.
     78 * Contrib-03 (Add Django Debug Toolbar to contrib) - DDT's author prefers it as an external project.
     79 * Contrib-04 (Integrate Reversion as a django contrib app) - too specialized to be included in Django.
     80 * Contrib-06 (Allow for extendable auth_user module) - none of the proposals for how this would work have any sort of wide support.
     81 * Core-04 (Add IBM DB2 django adapter django.db.backends) - immaturity; the authors haven't offered support for inclusion.
     82 * ORM-01 (Support for non-relational databases) - way to big a feature to get done in a couple months. Incremental improvement is the way to go here.
     83 * ORM-02 (Identity mapping in the ORM) - the feature doesn't seem to fit with the philosophy of Django's ORM, and works fine as an external plugin.
     84 * ORM-13 (integrate http://github.com/bfirsh/django/tree/search) - it's not clear what's being proposed here.
     85 * Templates-01 (integrate http://github.com/simonw/django-html)) - while there was agreement on the need for a solution, many felt that this particular solution was less than ideal.
    9686
    9787== Not in consideration ==
     
    126116  * Make profiling easy, possibly by integrating profiling into Debug Toolbar (see dcramer's fork)
    127117  * #6460 Multilingual Content in the db
    128 
    129 == Lieutenants and Committers ==
    130 
    131 The lieutenants and committers for each feature will be decided when the feature list is formalized.
Back to Top