Code

Changes between Version 101 and Version 102 of Version1.1Features


Ignore:
Timestamp:
11/13/08 10:25:54 (6 years ago)
Author:
jacob
Comment:

Reorganized, and added "codes" for each features so that it'll be easy to refer to them in shorthand.

Legend:

Unmodified
Added
Removed
Modified
  • Version1.1Features

    v101 v102  
    1 == Proposed features for Django 1.1 == 
     1= Proposed features for Django 1.1 = 
     2 
     3[[TOC()]] 
    24 
    35'''Feature proposals for 1.1 are frozen as of November 13th. A draft list of accepted features will be posted shortly.''' 
    46 
    5 ORM: 
    6   * [http://code.google.com/p/django-aggregation/ ORM aggregation] (see also [http://groups.google.com/group/django-developers/browse_thread/thread/749ebaf0fa80f807/892c890bc5f1f551 this django-dev thread]) 
    7   * [http://code.djangoproject.com/wiki/AuditTrail Object history] (discussed many times in `django-dev` as well) 
    8   * [ticket:6845 model validation] 
    9   * [http://groups.google.com/group/django-developers/browse_thread/thread/5482009f35c9cff5 Manager.update_or_create] and model `instance.update(**kwargs)` (see also #3182) 
    10   * [ticket:2705 add optional FOR UPDATE clause to QuerySets] 
    11   * [http://groups.google.com/group/django-developers/browse_thread/thread/09f0353fe0682b73 multiple database APIs] 
    12   * [ticket:7338 Cache queryset results] 
    13   * [ticket:17 Identity Map] (see also [wiki:DjangoSpecifications/Core/SingleInstance]) 
    14   * [ticket:7210 Referencing fields in queries and updates in the ORM] (possibly part of django aggregation, I know the GSOC student has worked on this) 
     7== Admin == 
     8 
     9  * ''Admin-01'' Bulk-edit on changelist pages. 
     10  * ''Admin-02'' Integrate [http://code.google.com/p/django-batchadmin/ django-batchadmin] 
     11  * ''Admin-03'' [ticket:6470 Make the admin use a url resolver] 
     12  * ''Admin-04'' [ticket:8500 Improve flexibility of admin.autodiscover for custom admin sites] 
     13  * ''Admin-05'' [ticket:3987 ModelAdmin should allow for overriding of ForeignKey/ManyToMany options] 
     14  * ''Admin-06'' [http://groups.google.com/group/django-developers/browse_thread/thread/611425acc40b78bb Read-only fields] (applies to forms as well) 
     15  * ''Admin-07'' [ticket:5833 Custom FilterSpecs] 
     16  * ''Admin-08'' [http://groups.google.com/group/django-developers/browse_thread/thread/4d1f075ff4c92ea0?hl=en Make filters in admin changelists persistent] (#6903) 
     17 
     18== Auth == 
     19 
     20  * ''Auth-01'' [http://code.djangoproject.com/ticket/9444 AnonymousUser that you can set specific permissions for] 
     21  * ''Auth-02'' [http://code.djangoproject.com/ticket/3011 Allow for extendable auth_user module] (add an abstract base class for User too) 
     22 
     23== Contrib == 
     24 
     25Including packages proposed for addition to contrib. 
     26 
     27  * ''Contrib-01'' [ticket:9200 Add a session based form wizard] (see also [http://groups.google.com/group/django-developers/browse_thread/thread/c419d8c2ba7fefc5/7ef4febc59078573?hl=en%07ef4febc59078573 this django-dev thread]) 
     28  * ''Contrib-02'' [http://groups.google.com/group/django-developers/browse_thread/thread/9f5d117fdbb05a12 customizability of contrib.comments] (see also #8630) 
     29  * ''Contrib-03'' [ticket:9282 Inclusion of comment-utils] 
     30  * ''Contrib-04'' [ticket:9562 Make comment templatetags use get_comment_app like the post view does] 
     31  * ''Contrib-05'' [http://code.google.com/soc/2008/django/appinfo.html?csaid=B58713A6BDC1E322 Integrate GSOC2008 djangosearch as django.contrib.search] 
     32  * ''Contrib-06'' [ticket:4604 Message Passing For Anonymous Users] 
     33  * ''Contrib-07'' [ticket:689 Honour the REMOTE_USER provided by the server] 
     34  * ''Contrib-08'' [ticket:3570 Implement Atom Publishing Protocol] (and related #3569) 
     35  * ''Contrib-09'' [https://groups.google.com/group/django-developers/browse_thread/thread/94efe43b1d1c7787 Media management for apps] 
     36  * ''Contrib-10'' [http://code.google.com/p/django-logging django-logging] 
     37  * ''Contrib-11'' [http://www.djangosnippets.org/snippets/1026/ Breadcrumbs] 
     38  * ''Contrib-12'' [http://groups.google.com/group/django-developers/browse_thread/thread/464ced0637fc6d1f Signed cookies] (http://code.google.com/p/django-signedcookies) 
     39  * ''Contrib-13'' [ticket:6791 Cached DB session backend] 
     40 
     41== Forms == 
     42 
     43  * ''Form-01'' [http://code.google.com/p/django-html/ Selectable HTML output for forms/fields]) ([http://groups.google.com/group/django-developers/browse_thread/thread/f04aed2bc60274f0 see also]) 
     44  * ''Form-02'' [http://groups.google.com/group/django-developers/t/2c33621003992d07 django.forms.SafeForm - forms with built-in CSRF protection] 
     45 
     46== Models/ORM == 
     47 
     48  * ''ORM-01'' [http://code.google.com/p/django-aggregation/ ORM aggregation] 
     49  * ''ORM-02'' [http://code.djangoproject.com/wiki/AuditTrail Object history] 
     50  * ''ORM-03'' [ticket:6845 Model validation] 
     51  * ''ORM-04'' [http://groups.google.com/group/django-developers/browse_thread/thread/09f0353fe0682b73 Public-facing multiple database API] 
     52  * ''ORM-05'' [ticket:17 ORM identity map] 
     53  * ''ORM-06'' [ticket:7210 Expression support in QuerySet.update()] 
     54  * ''ORM-07'' [http://groups.google.com/group/django-developers/browse_thread/thread/9a672d5bbbe67562 Denormalized model fields] (#8946) 
     55  * ''ORM-08'' SchemaEvolution 
     56  * ''ORM-09'' [http://groups.google.com/group/django-developers/browse_thread/thread/5482009f35c9cff5 Manager.update_or_create()] and `Model.update()` (#3182) 
     57  * ''ORM-10'' [ticket:2705 QuerySet.select_for_update() method] 
     58  * ''ORM-11'' [ticket:7338 QuerySet.cache() method] 
     59  * ''ORM-12'' [ticket:3148 Allow the use of property() in fields] 
     60  * ''ORM-13'' [ticket:6422 Support for 'DISTINCT ON' queries with QuerySet.distinct()] 
     61  * ''ORM-14'' [ticket:5420 Exclude fields in a SELECT] (`QuerySet.defer()`) 
     62  * ''ORM-15'' [http://groups.google.com/group/django-developers/browse_thread/thread/54a8cc0cafc16776 Day-of-week filter for date/datetime Fields] (#7672) 
     63  * ''ORM-16'' [http://groups.google.com/group/django-developers/browse_thread/thread/620ccff354c859c2 Native autocommit option for Postgresql backend] (#3460) 
     64  * ''ORM-17'' [http://groups.google.com/group/django-developers/browse_thread/thread/8bad63d6286580ed/ {% default %} clause for {% for %} loops] (#6398). 
     65  * ''ORM-18'' [ticket:5390 Add signals to ManyRelatedManager] 
     66  * ''ORM-19'' [ticket:6148 Add support for database schemas] 
     67  * ''ORM-20'' [http://groups.google.com/group/django-developers/browse_thread/thread/dde95291e5c8e225 implement force_insert and force_update in ModelForm.save()] (#8672) 
     68  * ''ORM-21''  Rename `Model.Meta.verbose_name` to `label`, like `django.forms` 
     69  * ''ORM-22'' Ordering field and revitalize `order_with_respect_to` (See [http://groups.google.am/group/django-developers/browse_thread/thread/397175d2381e73dd A], [http://groups.google.com/group/django-developers/browse_thread/thread/480662576c49edd/338138c32201022f?lnk=gst&q=orderingfield#338138c32201022f B]) 
     70  * ''ORM-23'' [ticket:3591 INSTALLED_APPS refactoring] (`app()` object) 
     71 
     72== Templates == 
     73 
     74  * ''Template-01'' [ticket:9093  Extend inclusion tag syntax to allow custom templates] 
     75  * ''Template-02'' [ticket:1105 Enhanced simple-tag decorator (access to context and easy block tags)] (see also [http://groups.google.com/group/django-developers/browse_thread/thread/fba22c3e3c910bb9 django-dev thread]) 
     76  * ''Template-03'' [ticket:7438 Add keyword support to simple_tag and inclusion_tag] 
     77  * ''Template-04'' [ticket:7806 Refactor django.template] (see also: [http://groups.google.com/group/django-developers/browse_thread/thread/4f5b01719e497325/45a8869c7366f838 these] [http://groups.google.com/group/django-developers/browse_thread/thread/ba0644b835e3ec40/c4905ee811ba4d05 django-dev] [http://groups.google.com/group/django-developers/browse_thread/thread/35aae0e8da804bd9/f0642c0b55782cbd threads])   
     78  * ''Template-05'' [ticket:2539 Namespace support for template libraries] 
     79  * ''Template-06'' Better template tag loading (#6587, #3349) 
     80 
     81== Testing == 
     82 
     83  * ''Test-01'' [ticket:4476 Follow redirect chains on the Test Client] 
     84  * ''Test-02'' [ticket:8638 Disable all e-mail sending for debugging] 
     85  * ''Test-03'' [ticket:8138 Make the Django testcases use transactions to rollback DB changes created in a test] 
     86  * ''Test-04'' [http://code.google.com/p/django-testmaker/ Integrate django-testmaker] 
     87 
     88== Views == 
     89 
     90  * ''View-01'' [ticket:6735 Class-Based Generic Views] 
     91  * ''View-02'' Add RequestContext(request) to render_to_response as default argument (i.e. make it behave more like `direct_to_template` generic view). ('''needs ticket''') 
     92  * ''View-03'' [http://groups.google.com/group/django-developers/browse_thread/thread/297cbd7dec84ffb8/2f9d2878ae11284e `wsgi.file_wrapper` for large file serving] (see also #2131, #7894, #7581, [PEP 333 http://www.python.org/dev/peps/pep-0333/#optional-platform-specific-file-handling], and [http://groups.google.com/group/django-developers/browse_thread/thread/3e0d78b98498c159/f08036fb1e7fe6b9 another thread]) 
     93  * ''View-04'' [http://groups.google.com/group/django-developers/browse_thread/thread/3417b90f0e6fda9f URL resolver refactor] 
     94  * ''View-05'' [http://groups.google.com/group/django-developers/browse_thread/thread/bb001e5ef255dd7c Decouple authentication from calling a view] 
     95 
     96== Not in consideration == 
     97 
     98=== Small/just bugs === 
     99 
     100Features proposed on this list that area just bugs to be fixed or really tiny feature additions that are not controversial in any way. They're still here for posterity, but have no real role in the feature proposal process. 
     101 
    15102  * [ticket:7270 Make select_related work with reverse onetoones] 
    16   * [ticket:3148 Allow the use of property() in fields] 
    17   * [ticket:6422 Support for 'DISTINCT ON' queries with QuerySet.distinct()] 
    18   * [http://groups.google.com/group/django-developers/browse_thread/thread/9a672d5bbbe67562 Support denormalization] (#8946, see also [http://www.youtube.com/watch?v=i6Fr65PFqfk Cal Henderson's DjangoCon talk]) 
    19   * [ticket:5420 Allow database API users to specify the fields to exclude in a SELECT statement] 
    20   * [http://groups.google.com/group/django-developers/browse_thread/thread/54a8cc0cafc16776 Day of Week filter on Date/DateTime Fields] (see ticket #7672) 
    21   * [http://groups.google.com/group/django-developers/browse_thread/thread/620ccff354c859c2 Native autocommit option for Postgresql backend] (see ticket #3460) 
    22   * [ticket:5099 Provide the ability to update database to reflect changes in model definitions (i.e., schema evolution)] (see also [ticket:5934 Database Migrations] and SchemaEvolution) 
    23   * [ticket:5390 Add signals to ManyRelatedManager] [http://groups.google.com/group/django-users/browse_thread/thread/77e7884f51212899/73786ddd0e3ae7ff?hl=en&lnk=gst&q=m2m+save#73786ddd0e3ae7ff Access to m2m relations in model.save] 
    24   * [ticket:6148 Add support for database schemas] 
    25   * [http://groups.google.com/group/django-developers/browse_thread/thread/dde95291e5c8e225 ModelForm.save() should implement force_insert and force_update, like Model.save()] (see ticket #8672) 
    26   * Rename verbose_name to label, like django.forms 
     103  * [ticket:5335 Add an append method to ErrorDict] 
     104  * [ticket:6362 Remove blank spaces with strip when validating data] 
     105  * #9124, #6231 
     106  * Wrap help_text in "<span class="helptext"></span>", like errors in "<ul class="errorlist"></ul>" in HTML output. ('''needs ticket''') 
     107  * [ticket:7048 Support clearing FileFields in the admin if blank=True] 
     108  * [http://groups.google.com/group/django-developers/browse_thread/thread/6dd78862b887438c?hl=en& ModelAdmin hook for customising the "show on site" button] (#8261) 
     109  * Fix missing proxies throughout django.core.files.* -- See: tickets #9344 and #9404, and also [http://groups.google.com/group/django-developers/browse_thread/thread/4e561161080ae2dc on the dev-list]. 
     110  * #5245 
     111  * [http://groups.google.com/group/django-developers/browse_thread/thread/d27261561bc36d96 Avoid double imports] (see [ticket:8193]) 
     112  * #7980  
     113  * #9015 
    27114 
    28 Forms and templates: 
    29   * [http://groups.google.com/group/django-developers/browse_thread/thread/f04aed2bc60274f0 better HTML output for form fields] (see also [http://code.google.com/p/django-html/ django-html]) 
    30   * [ticket:9093  Extend inclusion tag syntax to allow custom templates] 
    31   * [ticket:1105 Enhanced simple-tag decorator (access to context and easy block tags)] (see also [http://groups.google.com/group/django-developers/browse_thread/thread/fba22c3e3c910bb9 django-dev thread]) 
    32   * [ticket:7438 Add keyword support to simple_tag and inclusion_tag] 
    33   * [http://groups.google.com/group/django-developers/t/2c33621003992d07 django.forms.SafeForm - forms with built-in CSRF protection] 
    34   * [ticket:7806 Refactor django.template] (see also: [http://groups.google.com/group/django-developers/browse_thread/thread/4f5b01719e497325/45a8869c7366f838 these] [http://groups.google.com/group/django-developers/browse_thread/thread/ba0644b835e3ec40/c4905ee811ba4d05 django-dev] [http://groups.google.com/group/django-developers/browse_thread/thread/35aae0e8da804bd9/f0642c0b55782cbd threads]) 
    35   * [ticket:5335 Add an append method to ErrorDict] 
    36   * [ticket:9200 Add a session based form wizard] (see also [http://groups.google.com/group/django-developers/browse_thread/thread/c419d8c2ba7fefc5/7ef4febc59078573?hl=en%07ef4febc59078573 this django-dev thread]) 
    37   * [ticket:6362 Remove blank spaces with strip when validating data] 
    38   * [ticket:9124 Add improvements to the SelectDateWidget] (look at the patch in ticket #6231) 
    39   * Add SelectTimeWidget (like SelectDateWidget) and SelectSplitDateTimeWidget (SelectDateWidget + SelectTimeWidget) for SplitDateTimeField. (look at the patch in ticket #6231) 
    40   * Wrap help_text in "<span class="helptext"></span>", like errors in "<ul class="errorlist"></ul>" in HTML output. 
    41   * [ticket:2539 Namespace support for template libraries] 
    42   * Add RequestContext(request) to render_to_response as default argument. 
     115=== Rejected procedurally === 
    43116 
    44 Admin: 
    45   * [http://www.youtube.com/watch?v=M1Qr9rSBGBE&feature=PlayList&p=D415FAF806EC47A1&index=2 Multiple edit arbitrary fields in the admin]  
    46   * [http://www.youtube.com/watch?v=M1Qr9rSBGBE&feature=PlayList&p=D415FAF806EC47A1&index=2 Integrate Databrowse into the admin] 
    47   * [http://code.google.com/p/django-batchadmin/ Integration of django-batchadmin into core] 
    48   * [ticket:6470 Switch the admin to use a url resolver and be reversable] 
    49   * [ticket:8500 Improve flexibility of admin.autodiscover for custom admin sites] 
    50   * [ticket:3987 ModelAdmin should allow for overriding of ForeignKey/ManyToMany options] 
    51   * Add the ability to add fields to admin forms and the ability to intercept form submissions so the values of those fields could be accessed. This way admin plugins could be developed. 
    52   * [http://groups.google.com/group/django-developers/browse_thread/thread/611425acc40b78bb Read-only fields] (applies to forms as well) 
    53   * [ticket:5833 Custom FilterSpecs] 
    54   * [ticket:7048 Support clearing FileFields in the admin if blank=True] 
    55   * [http://groups.google.com/group/django-developers/browse_thread/thread/4d1f075ff4c92ea0?hl=en Make filters in admin persistent] (see also #6903) 
    56   * [http://groups.google.com/group/django-developers/browse_thread/thread/6dd78862b887438c?hl=en& ModelAdmin hook for customising the "show on site" button] (#8261) 
    57   * [http://groups.google.am/group/django-developers/browse_thread/thread/397175d2381e73dd Ordering in the admin and via the model API] 
     117These are proposed features that, as of the close date for proposals, lacked concrete proposals, proof-of-concept implementations, or details needed to start implementing. 
    58118 
    59 Serving dynamic content: 
    60   * [http://groups.google.com/group/django-developers/browse_thread/thread/297cbd7dec84ffb8/2f9d2878ae11284e `wsgi.file_wrapper` for large file serving] (see also #2131, #7894 and http://www.python.org/dev/peps/pep-0333/#optional-platform-specific-file-handling) 
    61   * [http://groups.google.com/group/django-developers/browse_thread/thread/3e0d78b98498c159/f08036fb1e7fe6b9 Add support for streamed content] (see also #7581) 
    62  
    63 Files: 
    64   * Fix missing proxies throughout django.core.files.* -- See: tickets #9344 and #9404, and also [http://groups.google.com/group/django-developers/browse_thread/thread/4e561161080ae2dc on the dev-list]. 
    65  
    66 Comments: 
    67   * [http://groups.google.com/group/django-developers/browse_thread/thread/9f5d117fdbb05a12 customizability of contrib.comments] (see also #8630) 
    68   * [ticket:9282 Inclusion of comment-utils] 
    69   * [ticket:9562 Make comment templatetags use get_comment_app like the post view does] 
    70  
    71 Testing, debugging: 
    72   * [ticket:4476 Follow redirect chains on the Test Client] 
    73   * [ticket:8638 Disable all e-mail sending for debugging] 
    74   * [ticket:8138 Make the Django testcases use transactions to rollback DB changes created in a test] 
    75   * [http://groups.google.com/group/django-developers/browse_thread/thread/564cf6d244c8b68c Create a benchmark to measure the impact changes have to code] (ticket #8949) 
    76   * [http://code.google.com/p/django-testmaker/ Integrate the recording of tests into the Django testserver command] 
    77   * [ticket:5245 Please consider fixing the bug, that runserver do not restart after program errors] 
    78  
    79 General: 
    80   * [ticket:6972 Please make Django installable with easy_install] (ticket #6972, #3812) 
    81   * [wiki:VersionOneFeatures#DeferredUntilPost-1.0 the four features that were deferred until post-1.0] 
    82   * [ticket:6735 Class-Based Generic Views] 
    83   * [http://groups.google.com/group/django-developers/browse_thread/thread/3417b90f0e6fda9f URL resolver refactor] 
    84   * [http://code.google.com/soc/2008/django/appinfo.html?csaid=B58713A6BDC1E322 Integrate GSOC2008 search project] 
    85   * [http://groups.google.com/group/django-developers/browse_thread/thread/d27261561bc36d96 Avoid double imports] (see [ticket:8193]) 
    86   * [ticket:4604 Message Passing For Anonymous Users] 
    87   * [ticket:689 Honour the REMOTE_USER provided by the server] 
    88   * [ticket:3570 Implement Atom Publishing Protocol] (and related #3569) 
    89   * [http://groups.google.com/group/django-developers/browse_thread/thread/34d45b5296e06150 Signal Connection Decorators] (see #9015) 
    90   * [https://groups.google.com/group/django-developers/browse_thread/thread/94efe43b1d1c7787 Some form of media management for apps] 
    91   * [http://groups.google.com/group/django-developers/browse_thread/thread/5156569398816860 Address logging] 
    92   * [http://www.djangosnippets.org/snippets/1026/ A preferred way of creating breadcrumbs would be nice. This would improve plugability of applications] 
    93   * Multilingual support in the db. There are some projects that could be integrated into the trunk as django-multilingual. 
    94   * [http://groups.google.com/group/django-developers/browse_thread/thread/bb001e5ef255dd7c Decoupling authentication from calling a view] 
    95   * (?) [http://groups.google.com/group/django-developers/browse_thread/thread/464ced0637fc6d1f Signed cookies] (#3285 seems to be closed as wontfix, but as the feature is genrally useful, it may be justified to be a contrib app; see also http://code.google.com/p/django-signedcookies) 
    96   * [http://code.djangoproject.com/ticket/9444 AnonymousUser that you can set specific permissions for] 
    97   * [http://code.djangoproject.com/ticket/3011 Allow for extendable auth_user module] (add an abstract base class for User too) 
    98   * [ticket:6791 Add a cached DB session backend] 
    99   * [ticket:7980 Store localised values for things like default number entry, date order, first day of week, etc] 
    100  
    101 ---- 
    102  
    103 Misc: 
    104  * create a list of tickets in trac db that have a high interested people count (as if something is important to many, it should be considered): 
    105   {{{ 
    106   select summary from ticket where length(cc) > 50;  
    107   }}} 
    108   tickets with [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&cc=~%2C%25%2C%25%2C%25%2C&order=priority 5 or more], [http://code.djangoproject.com/query?status=new&status=assigned&status=reopened&cc=~%2C%25%2C%25%2C%25%2C%25%2C%25%2C%25%2C%25%2C%25%2C&order=priority 10 or more] cc entries. 
    109  
     119  * Add the ability to add fields to admin forms and the ability to intercept form submissions so the values of those fields could be accessed. This way admin plugins could be developed. ''[No concrete proposal]'' 
     120  * [ticket:6972 Please make Django installable with easy_install] (ticket #6972, #3812) ''[Will be fixed with the 1.0.1 release]''. 
     121  * [http://groups.google.com/group/django-developers/browse_thread/thread/564cf6d244c8b68c Create a benchmark to measure the impact changes have to code] ''[No concrete proposal; doesn't need to be part of the release process reguardless]'' 
     122  * Multilingual support in the db. There are some projects that could be integrated into the trunk as django-multilingual. ''[No concrete proposal]''