88 rows where "changetime" is on date 2006-10-14

View and edit SQL

Suggested facets: component, type, severity, version, resolution, owner, keywords, has_patch, created (date), last_pulled_from_trac (date)

changetime (date)

  • 2006-10-14 · 88
id ▼ created changetime last_pulled_from_trac stage status component type severity version resolution summary description owner reporter keywords easy has_patch needs_better_patch needs_tests needs_docs ui_ux
42 2005-07-17 05:47:13 2006-10-14 14:31:41 2019-06-24 00:15:43.604540 Unreviewed closed Database layer (models, ORM) defect normal   fixed OneToOneField missing from DATA_TYPES dict revision 138 on trunk is missing entries for OneToOneField fields, and so sql generation fails if you have such a field in one of your models. below is a simple patch to add it to the backends. {{{ Index: django/core/db/backends/postgresql.py =================================================================== --- django/core/db/backends/postgresql.py (revision 134) +++ django/core/db/backends/postgresql.py (working copy) @@ -105,6 +105,7 @@ 'IPAddressField': 'inet', 'ManyToManyField': None, 'NullBooleanField': 'boolean', + 'OneToOneField': None, 'PhoneNumberField': 'varchar(20)', 'PositiveIntegerField': 'integer CHECK (%(name)s >= 0)', 'PositiveSmallIntegerField': 'smallint CHECK (%(name)s >= 0)', Index: django/core/db/backends/mysql.py =================================================================== --- django/core/db/backends/mysql.py (revision 134) +++ django/core/db/backends/mysql.py (working copy) @@ -95,6 +95,7 @@ 'IPAddressField': 'char(15)', 'ManyToManyField': None, 'NullBooleanField': 'bool', + 'OneToOneField': None, 'PhoneNumberField': 'varchar(20)', 'PositiveIntegerField': 'integer UNSIGNED', 'PositiveSmallIntegerField': 'smallint UNSIGNED', }}} the patch fixes sql generation for simple cases such as: {{{ class Piece(meta.Model): fields = ( meta.CharField('title', 'title', maxlength=256), meta.DateTimeField('publishDate', 'date published'), meta.ManyToManyField(Category), ) class ImagePiece(meta.Model): fields = ( meta.OneToOneField(Piece), meta.FileField('data', 'data', upload_to='pieces'), ) }}} but more complicated models haven't been tested. adrian nullstyle@gmail.com   0 0 0 0 0 0
328 2005-08-15 20:59:50 2006-10-14 14:30:28 2019-06-24 00:18:45.929970 Unreviewed closed Core (Other) enhancement normal   fixed [patch] Add a archive_week date-based generic view I could really use an archive_week generic view or some way to get a similar effect because archive_day is too little and archive_month is too much. just throwing it out there. adrian Dagur generic view archive week 0 1 0 0 0 0
439 2005-08-30 17:46:48 2006-10-14 14:28:26 2019-06-24 00:19:57.470091 Unreviewed closed *.djangoproject.com enhancement minor   fixed Add support info to top of "Create New Ticket" page This may already be on your list, but I think the Create New Ticket" template could use some links/pointers to support resources -- the mailing lists and IRC, a reminder of the search box and documentation links above, and so on. Hopefully this would reduce the number of "please help me" tickets. I believe the Trac file to modify is templates/newticket.cs. jacob pb@e-scribe.com   0 0 0 0 0 0
495 2005-09-12 20:19:49 2006-10-14 14:23:39 2019-06-24 00:20:32.829245 Unreviewed closed Metasystem enhancement normal   invalid manipulators inherit from admin Seems repetitive writing out in self.fields for a minipulator when much of the fields (at least for me) are redundant to the META.admin.fields. Requested behavior would be to have the the manipulator inherit from the admin view on each field and have them overwritten should they exist explicitely in the manipulator. adrian pspierce@gmail.com   0 0 0 0 0 0
502 2005-09-14 06:43:53 2006-10-14 13:01:47 2019-06-24 00:20:37.306889 Unreviewed closed contrib.syndication enhancement trivial   fixed [patch] added category to feed items Per RSS 2.0 Specification (http://blogs.law.harvard.edu/tech/rss) I've added categories to post items. !SyndicationFeed.add_item() can accept kw-parameter 'category', which can be a unicode string or a list of unicode strings. Rss201rev2Feed uses it to generate one or multiple <category> tags per item. {{{ Index: feedgenerator.py =================================================================== --- feedgenerator.py (revision 640) +++ feedgenerator.py (working copy) @@ -33,7 +33,7 @@ def add_item(self, title, link, description, author_email=None, author_name=None, pubdate=None, comments=None, unique_id=None, - enclosure=None): + enclosure=None, category=None): """ Adds an item to the feed. All args are expected to be Python Unicode objects except pubdate, which is a datetime.datetime object, and @@ -49,6 +49,7 @@ 'comments': comments, 'unique_id': unique_id, 'enclosure': enclosure, + 'category': category, }) def num_items(self): @@ -142,6 +143,12 @@ handler.addQuickElement(u"enclosure", '', {u"url": item['enclosure'].url, u"length": item['enclosure'].length, u"type": item['enclosure'].mime_type}) + if item['category'] is not None: + if isinstance(item['category'], list): + for cat in item['category']: + handler.addQuickElement(u"category", cat, {}) + else: + handler.addQuickElement(u"category", item['category'], {}) handler.endElement(u"item") # This isolates the decision of what the system default is, so calling code can }}} adrian eugene@lazutkin.com   0 1 0 0 0 0
583 2005-10-01 09:51:42 2006-10-14 13:07:34 2019-06-24 00:21:29.911365 Unreviewed closed Template system enhancement normal   fixed [patch] Add app-template dirs to TEMPLATE_DIRS This patch automatically adds templates/ directories under app-modules to TEMPLATE_DIRS. This is nice :) adrian sune.kirkeby@gmail.com   0 1 0 0 0 0
598 2005-10-08 14:49:58 2006-10-14 13:02:46 2019-06-24 00:21:39.246676 Unreviewed closed contrib.admin enhancement normal   fixed [patch] Include tag This is the include tag I am using in the new-admin branch and in my own projects. The reasons why {% include "path/to/template" %} is better / more useful than {%ssi /absolute/path/to/template parsed %}: ssi is a wierd name that only makes sense if you know the history of httpds. "Server side? This whole thing is server side, right?" Absolute paths are useless for redistribution, do not allow overriding in different template paths. "parsed" is a bit arbitrary and meaningless to the target audience for templates. In {% include "path" %}, constant strings get special cased and hoisted up into the calling template instance rather than being looked up every time. Variables can also be used. adrian robert@wittams.com   0 1 0 0 0 0
625 2005-10-14 14:35:01 2006-10-14 13:00:53 2019-06-24 00:21:56.261104 Unreviewed closed Template system defect normal   fixed [patch] Add template decorators This patch includes two decorators for making template tags easier to create. {{{ @simple_tag : }}} This one is for converting functions that return a string into template tags. eg. definition: {{{ @simple_tag def monkey_tag(verb): return "I %s no evil" % verb }}} use: {{{ {% monkey_tag "hear"%} }}} arguments are resolved using template.resolve_variable -> ie currently limited to variable references and constant strings. {{{ @inclusion_tag }}} This decorator turns a function returning a dictionary into a template tag that renders another template inline using that dictionary as the context. The decorator takes three arguments : * path - required path to template * context_class - kwarg to override the default context created * takes_context - kwarg boolean. If true, the first argument of the function must be called 'context', and the context of the calling template will be passed into this argument. Useful if it is heavily context dependent and there would be a huge number of arguments. The point of not just using the parent context is to make it easy to tell which context variables are used in which templates, ie avoid dynamic scoping hell. eg: {{{ @inclusion_tag('farming/cow_detail') def cow_display(cow): return { 'name': cow.name, 'similar': find_similar_cows(cow) } }}} template : 'farming/cow_detail' {{{ <div> <h2>{{name}}</h2> <b> similar cows: </b> {%for cow in similar %} <p>{{cow.name}}</p> {% end for %} </div> }}} use: {{{ {% cow_display cow %} }}} adrian rjwittams   0 1 0 0 0 0
729 2005-11-04 19:39:47 2006-10-14 14:30:14 2019-06-24 00:23:02.416529 Unreviewed closed contrib.admin defect normal   fixed SlugFields and local characters When I use prepopulate_from with a SlugField, and use swedish characters (å, ä and ö), these characters are used in the SlugField, but when I press submit, the admin tells me that the SlugField contains illegal characters. The admin is right in this case. The ideal solution would be to convert letters like å and ä to a, ö to o and so on, but a simpler solution would be to simply remove them. In any case: they shouldn't be there. This is of course also true for many other languages, and would be good if it worked better. Personally, I added three replace-lines to urlify.py, but I suspect that solution sucks, is slow, and not very extendable. adrian ozamosi@blinkenlights.se   0 0 0 0 0 0
876 2005-11-22 13:39:51 2006-10-14 14:33:26 2019-06-24 00:24:36.269110 Unreviewed closed Documentation enhancement trivial master fixed Typo in trunk/docs/forms.txt The diff is: $ diff forms.txt forms.txt.new 103c103 < * You'll have to separate create a form (and view) that submits to this --- > * You'll have to separately create a form (and view) that submits to this 308c308 < # Grab the Place object is question for future use. --- > # Grab the Place object in question for future use. BTW: would someone please to tell me what's the preferred option for diff to generate a diff file for Django? Thanks. jacob czhang   0 0 0 0 0 0
911 2005-11-25 21:41:23 2006-10-14 13:05:49 2019-06-24 00:24:58.686829 Unreviewed closed contrib.admin defect normal   fixed [patch] Make template system scoped to the parser So currently, template tags and filters are loaded into module level dictionaries. This means that tags and filters are available in places that they haven't been loaded. What this leads to is namespace pollution by previous requests - so your code might work one minute, as a previous request loaded the lib, and break the next if you are the first request. So this patch moves filters and tags onto parsers. As a bonus, filters are now parsed at compile time rather than runtime, so they don't get parsed multiple times in loops. The changes are: At the top of a tag/filter library, do {{{ import django.core.template register = template.Library() }}} then to register tags or filters, use {{{ register.tag('name', func) register.filter('name', func) # No has_arg, see below }}} In tags, resolve_variable_with_filters is gone. The functionality is split in two. In your compile function, do {{{ filter_expr = parser.compile(filter_string) }}} pass this into your node class as usual. in render, do {{{ filter_result = filter_expr.resolve(context) }}} instead of resolve_variable_with_filters. the tag decorators are also now members of the library class, so do {{{ @register.simple_tag }}} and {{{ @register.inclusion_tag('cow_detail') }}} for those. Filters can now have default arguments, and whether they have an argument is inferred from the signature. So any {{{ def filter_func(obj, _): }}} should be changed to {{{ def filter_func(obj): }}} and the has_arg argument is no longer accepted or useful. Filter arguments can be also now be variables which are resolved in the context as well as constant strings. adrian rjwittams   0 1 0 0 0 0
959 2005-11-29 01:30:39 2006-10-14 13:58:13 2019-06-24 00:25:28.918450 Unreviewed closed Template system defect normal   invalid [patch]Template improvements * Multiple args for filters,comma separated including varargs . Changed removetags filter to use it and put the old version in old_filters template library for people who do not want to fix all thier templates. You can load it in templates, or use template.add_to_builtins('django.template_tags.old_filters') in your settings file to apply it universally. Are there any other filters that should use it? * Integers and float literals in resolve_variable . I didn't know what the this should mean for 'add' and the like, so left as is. * Fixed standalone template tests to work with the testapp - so all tests pass in all situations. * Added a 'lookup' filter, useful now vars work in templates. {{my_dict|lookup:my_index}} for example - a common mailing list request. adrian rjwittams   0 1 0 0 0 0
992 2005-12-04 15:34:31 2006-10-14 14:29:57 2019-06-24 00:25:49.741445 Unreviewed closed Generic views defect major master fixed [patch] archive_month generic view leaves out last day of month Items published on the last day of a month won't be listed by the archive_month generic view (for example, at the moment the latest entry in the Django weblog is dated Nov. 30, and doesn't show up in the November archive of the Django blog); the view calculates the first and last day of the month, and uses those in a range lookup, but apparently this isn't inclusive (which is contrary to what the DB API docs claim). The view needs to use the first day of the next month as its last day instead. jacob ubernostrum   0 1 0 0 0 0
1141 2005-12-30 03:53:39 2006-10-14 00:16:44 2019-06-24 00:27:23.670063 Unreviewed closed Core (Other) defect minor   fixed [patch] Fix various unit test failures in r1799 As of r1799, there are 6 unit tests failing in the magic-removal branch. 3 faillures were introduced by r1794, when a !__repr!__ method was added to MultiValueDict. 3 failures were introduced by r1797, when a debug print statement was left in the commit for do_html2python. This patch resolves these 6 failures. adrian freakboy@iinet.net.au magic-removal unit test failure 0 1 0 0 0 0
1184 2006-01-07 16:00:27 2006-10-14 14:25:32 2019-06-24 00:27:50.919881 Unreviewed closed contrib.admin defect normal master fixed Russian translation of admin system dies when adding object When you`re using russian translation of admin system and trying to add new object you may get 500 error with text: !ValueError at /admin/your/path/here/add unsupported format character '�' (0xffffffd0) at index 37 There is a bug in django/conf/locale/ru/LC_MESSAGES/django.po on line 411 '''now:''' msgid "You may add another %s below." msgstr "Вы можете добавить % внизу." '''should be:''' msgid "You may add another %s below." msgstr "Вы можете добавить %s внизу." adrian sergey@jeez.ru   0 0 0 0 0 0
1234 2006-01-16 07:42:24 2006-10-14 00:18:00 2019-06-24 00:28:22.786792 Unreviewed closed contrib.admin defect major master fixed [patch] problems with multiple window logins, last_login not updated I was making some changes to multiple windows of the admin interface, was prompted for a login as my session had expired, and promptly lost everything in my model! I was greeted with a nasty looking page complaining that none of the required fields were filled in, which indeed was true. In the process of debugging I discovered the last_login field was not being updated in admin. They are in the same method so this patch fixes both. To reproduce the login failure: 1. Add the missing change_stage staff_member_required thing (it's in magic_removal, but is needed to reproduce this problem): see [1830] 2. turn on the admin interface on some model(s) 3. set your myproj/settings.py SESSION_COOKIE_AGE to something very low so you can set plenty of session expirations. I used 30 (meaning, 30 seconds). Log out and log in again to get the low cookie expiration. 4. display a change list 5. wait until the session expires 6. use "open in new window" or "open in new tab" to have the edit view of several objects open in different windows. In other words, right-click on the href for those items in the change list. Each window will produce a login prompt. 7. Try to log in on each of those edit views The first screen should be fine, subsequent ones will return you to the edit screen with no fields displayed/selected and lots of errors. (You can use the back button to recover your work, however.) Minor variations on the above steps will lead to similar problems. The problem is the POST has been encoded, and when it is used again of course the view function can't find the things it is looking for. adrian oggie rob <oz.robharvey@gmail.com>   0 1 0 0 0 0
1400 2006-02-26 00:29:57 2006-10-14 13:04:53 2019-06-24 00:30:08.909763 Unreviewed closed Template system enhancement normal   wontfix [magic-removal] [patch] proposed update to template system Django's template tags do not always resolve arguments consistently and as more people write custom template tags there is a risk that there will be a proliferation of arbitrary argument syntaxes, each with its own quirks. Currently, arguments are sometimes resolved as context variables ('if' tag and 'ifequal' in a slightly different way), sometimes as pure tag-specific syntax ('as', 'in'), sometimes as Python primitives (strings and numbers in 'simple_tag' tags but not strings containing whitespace), sometimes variables take filters, sometimes not... For people writing custom template tags it would be nice if there was one (simple) way of doing things. Some related tickets: #365, #566, #959, #1338 Robert's 'simple_tag' decorator introduced the nice idea of mapping template tags directly to Python callables. The existing implementation is a bit convoluted in order to allow the first argument to be either an alternative name or the decorated function. This seems a bit "magic": {{{ register.tag(tag_function) register.tag('another_name', tag_function) }}} How come the first argument changed its meaning? {{{ register.inclusion_tag('mytemplate')(tag_function) }}} Why does inclusion_tag have a double-call syntax (if not used as a decorator)? Proposed solution This patch to the magic-removal branch supersedes #1105 and provides a more regular mapping from 'simple_tag' to python callables. Argument resolution handles quoted strings with whitespace, boolean literals, and optional named "keyword" arguments. Also fixes #1338. This works as expected: {{{ @register.simple_tag def chant(message): return '<p>%s</p>' % message }}} {{{ {% chant "Django beats Chuck Norris." %} }}} outputs: {{{ <p>Django beats Chuck Norris.</p> }}} Optional arguments are useful for letting template authors customise output: {{{ @register.simple_tag(takes_context=True, takes_block=True) def chant(context, block, color='red', bold=False, class_='chant'): attri… russellm django@kieranholland.com   0 1 0 0 0 0
1424 2006-02-28 20:03:57 2006-10-14 14:30:01 2019-06-24 00:30:24.081778 Unreviewed closed contrib.admin enhancement normal   worksforme tutorial barfs owing to mysql settings? Hi, everything going great guns until I got to tutorial02.txt line 46 so far as I can remember I've got a default installation of mysql looks like a great package. Do you know if it works with cygwin? trace follows: C:\usr\NIK\dev\try_on\django\myproject>c:\Python24\python.exe manage.py createsuperuser Username (only letters, digits and underscores): django Traceback (most recent call last): File "manage.py", line 11, in ? execute_manager(settings) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\management.py", line 990, in execute_manager execute_from_command_line(action_mapping) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\management.py", line 910, in execute_from_command_line action_mapping[action]() File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\management.py", line 515, in createsuperuser users.get_object(username__exact=username) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\utils\functional.py", line 3, in _curried return args[0](*(args[1:]+moreargs), **dict(kwargs.items() + morekwargs.items())) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\meta\__init__.py", line 1355, in function_get_object obj_list = function_get_list(opts, klass, **kwargs) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\meta\__init__.py", line 1395, in function_get_list return list(function_get_iterator(opts, klass, **kwargs)) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\meta\__init__.py", line 1378, in function_get_iterator cursor.execute("SELECT " + (kwargs.get('distinct') and "DISTINCT " or "") + ",".join(select) + sql, params) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\db\base.py", line 10, in execute result = self.cursor.execute(sql, params) File "c:\python24\lib\site-packages\Django-0.91-py2.4.egg\django\core\db\backends\mysql.py", line 32, in execute return … adrian nicholasjames2@hotmail.com   0 0 0 0 0 0
1451 2006-03-02 17:49:06 2006-10-14 14:30:05 2019-06-24 00:30:41.397018 Unreviewed closed Database layer (models, ORM) defect major   fixed [magic-removal] AttributeError when editing User in admin When editing a user in the admin, as of rev 2475, we get an AttributeError: {{{ Traceback (most recent call last): File "/Users/james/dev/magic-removal/magic-removal/django/core/handlers/base.py" in get_response 73. response = callback(request, *callback_args, **callback_kwargs) File "/Users/james/dev/magic-removal/magic-removal/django/contrib/admin/views/decorators.py" in _checklogin 54. return view_func(request, *args, **kwargs) File "/Users/james/dev/magic-removal/magic-removal/django/contrib/admin/views/main.py" in change_stage 352. new_data = manipulator.flatten_data() File "/Users/james/dev/magic-removal/magic-removal/django/db/models/manipulators.py" in flatten_data 247. new_data.update(f.flatten_data(fol, obj)) File "/Users/james/dev/magic-removal/magic-removal/django/db/models/fields/__init__.py" in flatten_data 413. return {date_field: (val is not None and val.strftime("%Y-%m-%d") or ''), AttributeError at /admin/auth/user/1/ 'str' object has no attribute 'strftime'} }}} adrian ubernostrum   0 0 0 0 0 0
1535 2006-03-24 09:20:39 2006-10-14 13:05:19 2019-06-24 00:31:34.574964 Unreviewed closed Database layer (models, ORM) defect normal magic-removal fixed [patch] ManyToMany query problems on magic-removal Hi, When querying a model where one of the query terms includes a ManyToMany relation, some data which should appear in the result doesn't. This occurs if the ManyToMany relation does not have any data. To be more clear, here is an example: {{{ class Issue: ... cc = models.ManyToManyField(User, blank=True) client = models.ForeignKey(User) .... >>> Issue.objects.filter(Q(client=u.id)) [Issue 1, Issue 7] >>> Issue.objects.filter(Q(cc__id__exact=u.id)) [Issue 7, Issue 8] >>> Issue.objects.filter(Q(cc__id__exact=u.id) | Q(client=u.id)) [Issue 7, Issue 8] }}} The result for the last query should include "Issue 1", as far as I can tell. The following patch solves the problem, but it was derived by watching which queries happened and hacking the code to make my case work, so I don't know what it breaks :) {{{ =================================================================== --- django/db/models/query.py (revision 2546) +++ django/db/models/query.py (working copy) @@ -769,7 +769,7 @@ if intermediate_table: joins[backend.quote_name(current_table)] = ( backend.quote_name(intermediate_table), - "INNER JOIN", + "LEFT OUTER JOIN", "%s.%s = %s.%s" % \ (backend.quote_name(table), backend.quote_name(current_opts.pk.column), }}} adrian Russell Cloran <russell@hbd.com>   0 1 0 0 0 0
1561 2006-03-30 16:28:55 2006-10-14 14:32:18 2019-06-24 00:31:51.022322 Unreviewed closed Database layer (models, ORM) enhancement normal magic-removal wontfix [patch] enhance inspectdb to reorder models and get a functional model immediately inspectdb should order Models so that you can really use the result: * avoid forward dependencies * use unique `related_name` for multiple references to the same class The attached patch attempts a smart sort, and figures out when a related_name is required. It also tries to handle circular foreign key references in a sensible way, i.e. adds comments about the problem and replaces the `ForeignKey` with a plain field. adrian mir@noris.com   0 1 0 0 0 0
1563 2006-03-30 16:43:14 2006-10-14 13:08:24 2019-06-24 00:31:52.302092 Unreviewed closed Generic views enhancement normal magic-removal wontfix [patch] generic views should accept `manipulator` parameter I'd like to be able to pass a Manipulator object into the generic views. This allows a very nice code pattern: * the view function handles fetching the required data and doing sanity checks, creates a manipulator and calls the generic view * the generic view handles all the ugly http and form processing, eventually calling the manipulator * the manipulator does all the customized field stuff (additional/modified fields) Sometimes this needs to pass special parameters to the initializer of the manipulator (e.g., a `ChangeManipulator`) must prepopulate default values dependent on the some other parameter of the view). I think this makes a great general pattern. I'm willing to put something up in the wiki if you're interested. jacob mir@noris.de manipulator 0 1 0 0 0 0
1605 2006-04-09 16:57:32 2006-10-14 13:03:30 2019-06-24 00:32:18.721400 Unreviewed closed Core (Other) defect normal 0.91 fixed DateTime fields not being populated back There's a problem with DateTime fields not being populated back to the form using the edit_place function. This seems to provide the solution: In place of: new_data = place.__dict__ use: new_data = manipulator.flatten_data() adrian yml   0 0 0 0 0 0
1697 2006-04-26 18:31:04 2006-10-14 14:00:42 2019-06-24 00:33:16.986111 Unreviewed closed Core (Other) enhancement normal magic-removal fixed [patch] magic-removal: the choices keyword for Fields is restricted The choices keyword is restricted to a list or tuple by the management.py, get_validation_errors(). It should instead allow anything that is iterable. For instance, a generator could then be used. I've attached a simple patch. adrian brantley validate choices 0 1 0 0 0 0
1786 2006-05-06 21:15:14 2006-10-14 13:06:31 2019-06-24 00:34:14.415627 Unreviewed closed Documentation enhancement normal   worksforme Reordering of RemovingTheMagic by topics RemovingTheMagic is comprehensive but difficult to use as a cheat sheet. A user has to jump from file to file in order to upgrade her application. It would be better to order instructions by topics: * changes to databases * changes to settings * changes to models * changes to views * changes to templates * changes to template tags It will the upgrade easier for novices. jacob eugene@lazutkin.com   0 0 0 0 0 0
1787 2006-05-06 21:31:32 2006-10-14 13:02:17 2019-06-24 00:34:15.118801 Unreviewed closed Documentation defect normal   fixed Regeneration of permissions after magic-removal switch RemovingTheMagic describes how to add {{{content_type_id}}} integer field to {{{auth_permission}}} table. This new field is going to be initialized with 0. It breaks permissions for regular users (super users are not affected). Clearly this field should be properly initialized with IDs of proper {{{django_content_type}}} records. It would be nice, if RemovingTheMagic says so explicitly, or explains how to set them (re-installing apps?). jacob eugene@lazutkin.com   0 0 0 0 0 0
1810 2006-05-08 19:16:41 2006-10-14 13:06:24 2019-06-24 00:34:29.838630 Unreviewed closed Core (Other) enhancement normal   wontfix DATABASE_DSN sets all database settings at once, w/ patch patch is against rev 2844 of django/trunk. Have a look at the tests for all the different DSNs that are supported and let me know if I missed anything. The docs should explain some choices I made since DSNs are a little tricky not very well standardized. adrian Kumar McMillan <support-forums4@farmdev.com> patch 0 0 0 0 0 0
1884 2006-05-15 16:08:09 2006-10-14 14:28:09 2019-06-24 00:35:17.793472 Unreviewed closed Metasystem enhancement normal   fixed [patch] Make django.db.models.options.get_verbose_name smarter When you have model named like VPNAccount current get_verbose_name function results in "v p n account" so your permission names and content_type name looks not so good, while its apparent that you expect "vpn account". Patch below is to fix this behavoiur to saner one. adrian Alex Dedul   0 1 0 0 0 0
1898 2006-05-16 13:52:39 2006-10-14 14:29:33 2019-06-24 00:35:26.688068 Unreviewed closed Database layer (models, ORM) defect normal master wontfix unique=True does not work for ImageField if you set uniq=True for an ImageField you get the error 'Error binding parameter 0 - probably unsupported type.' when saving. adrian mdt@emdete.de   0 0 0 0 0 0
2045 2006-05-31 03:39:11 2006-10-14 14:24:32 2019-06-24 00:36:59.345263 Unreviewed closed Validators defect normal   fixed TypeError: string indices must be integers I created a manipulator with self.fields = [forms.FileUploadField('exportfile')] When submitting the form with a file named 'testfile', there is an error message: "TypeError: string indices must be integers". Apparently isNonEmptyFile expects field_data to be a dictionary or something. The bottom of the trace is as follows: /sw/lib/python2.4/site-packages/Django-0.91-py2.4.egg/django/forms/__init__.py in isNonEmptyFile 637. 638. class FileUploadField(FormField): 639. def __init__(self, field_name, is_required=False, validator_list=[]): 640. self.field_name, self.is_required = field_name, is_required 641. self.validator_list = [self.isNonEmptyFile] + validator_list 642. 643. def isNonEmptyFile(self, field_data, all_data): 644. if not field_data['content']: ... 645. raise validators.CriticalValidationError, gettext("The submitted file is empty.") 646. 647. def render(self, data): 648. return '<input type="file" id="%s" class="v%s" name="%s" />' % \ 649. (self.get_id(), self.__class__.__name__, self.field_name) 650. ▼ Local vars Variable Value all_data <MultiValueDict: {'exportfile': ['testfile']}> field_data 'testfile' self FormField "exportfile" adrian amcnabb@mcnabbs.org   0 0 0 0 0 0
2089 2006-06-05 09:03:46 2006-10-14 14:26:05 2019-06-24 00:37:27.073917 Unreviewed closed Internationalization enhancement normal   fixed BiDi supporting patches for docs, template context and admin This follows #1660. It adds: * LANGUAGE_BIDI context variable * updates docs/i18n.txt to include information about the new context variable * Modifies admin's login.html and base.html to feed rtl stylesheets which import the corresponding stylesheets and override the ltr specific settings * 2 RTL enabled admin stylesheets (base_rtl.css and login_rtl.css). Also see attached a screenshot of the admin's RTL login screen. hugo meir@mksoft.co.il   0 0 0 0 0 0
2093 2006-06-06 00:12:07 2006-10-14 14:25:18 2019-06-24 00:37:29.811291 Unreviewed closed Core (Other) enhancement minor   duplicate [patch] Better paginator There's no orhpan feature for the paginator. For example: {{{ 22 records, num_per_page=10, orphan=2 --> pages==2, len(self.get_page(1))==12 }}} The paginator should work with lists too. The patch fixes these and also provides more accurate validation. adrian SmileyChris paginator patch 0 1 0 0 0 0
2095 2006-06-06 10:32:45 2006-10-14 13:04:55 2019-06-24 00:37:31.170188 Unreviewed closed Core (Other) enhancement trivial   fixed [patch] allow choices to be any sequence, not just tuple or list This patch allows the 'choices' property on fields to be any sequence, not just a tuple or list. Useful for creating choices on-the-fly. adrian Matias Hermanrud Fjeld <mhf@hex.no>   0 1 0 0 0 0
2117 2006-06-08 01:49:51 2006-10-14 14:31:07 2019-06-24 00:37:46.183141 Unreviewed closed *.djangoproject.com defect minor   fixed djangoproject.com/community/ doesn't seem to be updating itself The [http://www.djangoproject.com/community/ feed aggregator on the django website] doesn't seem to have updated the RSS feeds since May 31st, the same date the website was upgraded to magic-removal. Posts have definately been made in blogs referenced by the community page (eg on [http://www.rossp.org/tag/django/ my blog] - two posts a few hours ago, that still aren't displayed on djangoproject.com) jacob ross@rossp.org   0 0 0 0 0 0
2152 2006-06-14 08:42:35 2006-10-14 14:05:15 2019-06-24 00:38:08.315935 Unreviewed closed contrib.admin defect normal   fixed [patch] Username is not escaped in django admin If you set your user first name to '<script>alert(1)</script>' you will get JS alert for each django admin page. adrian Sergey Kirillov <rushman@mail.ru>   0 1 0 0 0 0
2181 2006-06-17 22:55:16 2006-10-14 13:04:34 2019-06-24 00:38:26.783525 Unreviewed closed Template system enhancement normal   fixed [patch] templatetag should do openbrace, closebrace The templatetag tag system isn't quite enough in some situations. For example, there are problems when templating a LaTeX file. There is a LaTeX command of the form \includegraphics{myfilename.jpg}. Unfortunately, {{{ \includegraphics{{{ filename }}} }}} is a syntax error in the templating system, so it's difficult to specify a filename to be filled in, especially since \includegraphics{ myfilename.jpg } is illegal in LaTeX (extra spaces aren't allowed). I would recommend adding {% templatetag openbrace %} and {% templatetag closebrace %} to the already existing templatetag to allow escaping in this situation. adrian amcnabb@mcnabbs.org   0 1 0 0 0 0
2208 2006-06-21 17:04:54 2006-10-14 14:30:58 2019-06-24 00:38:44.037377 Unreviewed closed Template system defect normal   fixed [patch] Allow filter arguments to be empty strings I'm not sure if it makes sense in all cases, but the case that brought it up was finding out that you can't do {{ var|join:"" }}. As a hack, you can do {{ var|join:nonexistantvar }}, but it seems like passing "" as the arg should be allowed. adrian mattmcc   0 1 0 0 0 0
2237 2006-06-26 03:48:27 2006-10-14 00:16:40 2019-06-24 00:39:02.754889 Unreviewed closed contrib.admin defect normal master duplicate Setting TEMPLATE_STRING_IF_INVALID causes admin page headline to vanish Vladimir Pouzanov <farcaller@gmail.com> reports: When I add {{{ TEMPLATE_STRING_IF_INVALID = 'INVALID' }}} to my config, first page of admin (i.e. http://127.0.0.1:8000/admin/) is rendered without 'Django administration' headline. adrian russellm admin TEMPLATE_STRING_IF_INVALID 0 0 0 0 0 0
2255 2006-06-28 12:44:24 2006-10-14 14:29:17 2019-06-24 00:39:14.143230 Unreviewed closed Core (Other) enhancement normal   wontfix Setting up mod_python for Django via a .htaccess file In [http://www.djangoproject.com/documentation/modpython/ How to use Django with mod_python] is described how someone could set up django for use with Apache and mod_python. That works good, if you have a Apache setup like these described there. I have another setup (hint: all is done via mod_vhost_alias, which dynamically search the appropriate folder for the given domain itself, so for example a subdomain is created as simply as create a new folder at the right place in the filesystem) and while I thought about how to get django work altough, I asked myself "why dont use .htaccess?" [http://www.turbogears.org/docs/deployment/mod_python.html TurboGears does that], and it works great, but as I tried for django it doesnt work. Other people seem to have same problems. A few minutes ago in the #django IRC channel: {{{ '''Pistahh:''' mpathy: few months ago I did not have success with .htaccess+django '''Pistahh:''' mpathy: I had mysterious errors }}} I set the priority to high, because I think handling the Apache configuration via a external file, placed in the folder of the project, is much more flexible than any other ways to setup Apache. Its also feels a little bit more django for me, than fumbling on these and that - and it also could be simply generated from django in further versions. But before I get too verbose for a ticket, just a few questions: * Why it doesnt work? * Would it be hard to tweak django that it works with .htaccess files instead of modifiying the apache confs? * Dont you think it would be great (if it finally works with django) to include a .htaccess file to the files that are generated if a new project starts, or make django-admin script able to generate a .htaccess file for the project? * What other possibilities would I have to use django with a Apache + mod_python + mod_vhost_alias - setup? I would really appreciate a working .htaccess support (and perhaps our company would donate sth. if I tell them what the oppurtunities would be for us *g*) in django!! adrian mm@mpathy.de mod_python, Apache, .htaccess 0 0 0 0 0 0
2269 2006-06-29 19:03:46 2006-10-14 14:27:56 2019-06-24 00:39:23.246814 Unreviewed closed Core (Other) defect normal master fixed limit_choices_to should use to_field When I do something like this: {{{ class Blupp(models.Model): kind = IntegerField() another_key=IntegerField() class Blipp(models.Model): wont_work = ForeignKey(Blupp, limit_choices_to({'kind__exact': 1}), to_field='another_key') }}} Then the choices for Blipp will be computed to the primary key of Blupp, no to ``another_key`` I blame ``Field.get_choices()``, here's the code: {{{ def get_choices(self, include_blank=True, blank_choice=BLANK_CHOICE_DASH): "Returns a list of tuples used as SelectField choices for this field." first_choice = include_blank and blank_choice or [] if self.choices: return first_choice + list(self.choices) rel_model = self.rel.to return first_choice + [(x._get_pk_val(), str(x)) for x in rel_model._default_manager.complex_filter(self.rel.limit_choices_to)] }}} In the second last line, x._get_pk_val() needs to be replaced. adrian mir@noris.de   0 0 0 0 0 0
2272 2006-06-30 10:09:24 2006-10-14 14:33:18 2019-06-24 00:39:25.326447 Unreviewed closed Database layer (models, ORM) enhancement normal master fixed [patch] Bug fix and improvements for SQLite introspection This patch includes the following improvements: * Bug fix for get_table_description to return a proper 7 element DB-API cursor.description tuple * Skip sqlite_sequence system table in get_table_list * Implementation of get_indexes for primary key and unique index introspection adrian dne@mayonnaise.net introspection sqlite 0 1 0 0 0 0
2297 2006-07-06 04:48:14 2006-10-14 14:30:36 2019-06-24 00:39:41.145950 Unreviewed closed Database layer (models, ORM) defect normal   invalid ForeignKey and *_set accessor method broke I revved to v3278 and my app broke. In my view I adjust some fields of the model. My model looks something like this {{{ class Foo(models.Model): name = models.CharField(maxlength=30) class Bar(model.Model): foo = models.ForeignKey(Foo) data = models.CharField(maxlength=30) }}} later on I iterate over my bars and try and get my foos from them. ie {{{ for foo in bar.foo_set.all(): #do something with foo }}} I now get an attribute error when trying to do this: {{{ AttributeError at /fooapp/ 'Bar' object has no attribute 'foo_set' Request Method: GET Request URL: http://localhost:8000/fooapp/ Exception Type: AttributeError Exception Value: 'Bar' object has no attribute 'foo_set' }}} Just wondering if there was a change that broke then _set functionality recently I apologize for how vague this is. I have another model that has a foreign key and code similar to the above still works with that. I've briefly diffed the sources didn't chance on anything that looked to cause this change.... adrian matthewharrison@gmail.com ForeignKey _set 0 0 0 0 0 0
2330 2006-07-11 23:11:49 2006-10-14 14:05:00 2019-06-24 00:40:02.066180 Unreviewed closed Tools defect minor   fixed Exceptions are raised when terminating the development server with USE_I18N = False The following exception tracebacks are printed when terminating or reloading the development server with USE_I18N = False. When that setting is set to True, those exceptions do no occur. {{{ Error in atexit._run_exitfuncs: Traceback (most recent call last): File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/atexit.py", line 24, in _run_exitfuncs func(*targs, **kargs) File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/threading.py", line 638, in __exitfunc self._Thread__delete() File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/threading.py", line 522, in __delete del _active[_get_ident()] KeyError: -1610551912 Error in sys.exitfunc: Traceback (most recent call last): File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/atexit.py", line 24, in _run_exitfuncs func(*targs, **kargs) File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/threading.py", line 638, in __exitfunc self._Thread__delete() File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/threading.py", line 522, in __delete del _active[_get_ident()] KeyError: -1610551912 }}} I am running Django from Subversion trunk on Mac OS X 10.4.7 PPC, python 2.4 (from DarwinPorts). adrian bahamut@macstorm.org   0 0 0 0 0 0
2332 2006-07-12 03:31:41 2006-10-14 13:05:18 2019-06-24 00:40:03.330733 Unreviewed closed Contrib apps enhancement normal   fixed [patch] is_loggedin method for User and AnonymousUser models. This `is_loggedin` method replaces the `is_anonymous` method. Discussion from the django-developers group follows ([http://groups.google.com/group/django-developers/browse_thread/thread/2cc178fe7c8c9046/ see thread]). Templates treat non-existing variables as False; therefore; a request.user somehow failing to get assigned would result in the template treating the user as they are authenticated (is_anonymous evaluates False). An is_loggedin would be a more secure option because if request.user failed to get assigned, the template would treat the user as anonymous. I would much rather mistakenly treat an authenticated user as anonymous than mistakenly treat an anonymous user as authenticated. adrian SmileyChris auth user 0 1 0 0 0 0
2362 2006-07-16 20:02:27 2006-10-14 14:03:35 2019-06-24 00:40:22.155452 Unreviewed closed Generic views defect normal master fixed [patch] update_object is unable to update objects with OneToOneFields The update_object generic view causes a ProgrammingError when trying to save an instance of a model with a OneToOneField. The problem is caused by using object._meta.pk.name instead of object._meta.pk.column, see the attached patch. jacob marcink@elksoft.pl   0 1 0 0 0 0
2375 2006-07-19 06:13:42 2006-10-14 13:04:48 2019-06-24 00:40:30.539441 Unreviewed closed Contrib apps enhancement normal   fixed [patch] Let email template be variable for password reset Similar to the other fairly recent changes where you can pass in a different template name for login, logout, password_change[_done], password_reset[_done] in urls.py, the email template should also have the ability to be overridden. For example, in my case, I'm putting all login related stuff in the accounts template directory. Without this functionality you always need a registration template directory. I've got a proposed diff that is tested and is working on a site I'm developing. I'll submit it after posting this. I'm not sure of the correct way to submit a patch so I'm using "svn diff > email_template.patch". What this will do is allow one to override the email template you set it in your urls.py like so: (r'^accounts/password_reset/$', 'django.contrib.auth.views.password_reset', {'template_name': 'accounts/pwreset.html', 'email_template_name': 'accounts/pwreset_email.txt'}), Note the new key "email_template_name" is new. adrian treborhudson@gmail.com   0 1 0 0 0 0
2397 2006-07-22 02:24:41 2006-10-14 00:18:06 2019-06-24 00:40:44.645137 Unreviewed closed Testing framework defect normal   fixed [patch] Markdown test fails With markdown 1.5 installed, django (trunk rev 3419) fails its markdown tests, because of (non-semantic) whitespace changes. This was also an issue in #1632. Here is a patch to make the test more lenient. adrian shields@msrl.com   0 1 0 0 0 0
2406 2006-07-24 00:42:42 2006-10-14 13:05:58 2019-06-24 00:40:50.373623 Unreviewed closed Core (Management commands) enhancement normal   wontfix [patch] new command for management -- runjobs some of my applications require maintenance tasks run on them at defined periods, to do things like emailing out reminders, archiving and things like that. so instead of creating a whole slew of cronjobs, and then providing install instructions etc etc etc for each one, I thought running a single command might be better, and could possibly become part of the default django install instructions $ django-admin runjobs daily would run all the scheduled 'daily' jobs that the apps have defined. The would define this by listening for the run_daily_jobs signal in their management.py file. adrian ian@holsman.net   0 1 0 0 0 0
2454 2006-07-30 12:33:31 2006-10-14 13:05:56 2019-06-24 00:41:21.075868 Unreviewed closed Template system enhancement normal master fixed [patch] for-loops reset state of inner ifchanged Hi, I have a use-case of ifchanged which maybe worth to talk about: Normally ifchanged is placed in a for-loop (or other kind of loop). If this loop is enclosed by an other loop the state of the ifchanged in the inner loop maybe incorrect respective to the outer loop. Since I'm not really good at explaining this I made two hardcopies which should explain it better. I have a template which display tournaments in the outer loop and within the tournaments a loop of competitions with a competition-date which should only rendered if the competition-date has changed regarding the previous value. Normally this result in the output of ifchanged-demo1.png . Please look after 'Sparda-Bank West Mannschaftsturnier, Bochum, 16./17.9.2006' In the next line the date 16.09.2006 is missing. With the patch the result would be shown as in for-reset-ifchanged-demo1.png. This maybe break some of the normal usecase of ifchanged, so this needs to be reviewed and discussed forther. Regards, Dirk adrian dummy@habmalnefrage.de   0 1 0 0 0 0
2456 2006-07-30 15:40:09 2006-10-14 14:25:38 2019-06-24 00:41:22.386561 Unreviewed closed Template system defect major   fixed [patch] addslashes filter doesn't escape backslashes addslashes filter doesn't escape backslashes. This is important when you want to pass a string that contains backslashes to a JavaScript template. Here's a patch: {{{ Index: django/template/defaultfilters.py =================================================================== --- django/template/defaultfilters.py   (revision 3496) +++ django/template/defaultfilters.py   (working copy) @@ -15,7 +15,7 @@    def addslashes(value):      "Adds slashes - useful for passing strings to JavaScript, for example." -    return value.replace('"', '\\"').replace("'", "\\'") +    return value.replace('\\', '\\\\').replace('"', '\\"').replace("'", "\\'")    def capfirst(value):      "Capitalizes the first character of the value" }}} adrian tom@eggdrop.ch   0 1 0 0 0 0
2458 2006-07-30 15:57:33 2006-10-14 13:03:49 2019-06-24 00:41:23.693971 Unreviewed closed Database layer (models, ORM) defect major   fixed [patch] Backslashes in LIKE queries are not escaped Say you have a model called MyModel with a ''TextField'' called ''text'' and want to get all objects where ''text'' contains a backslash. The following query, however, doesn't return anything: {{{ models.MyModel.objects.filter(text__conatins='\\') }}} This query does: {{{ models.MyModel.objects.filter(text__conatins='\\\\') }}} Here is a patch that fixes the problem: {{{ Index: django/db/models/fields/__init__.py =================================================================== --- django/db/models/fields/__init__.py (revision 3496) +++ django/db/models/fields/__init__.py (working copy) @@ -20,7 +20,7 @@  BLANK_CHOICE_NONE = [("", "None")]    # prepares a value for use in a LIKE query -prep_for_like_query = lambda x: str(x).replace("%", "\%").replace("_", "\_") +prep_for_like_query = lambda x: str(x).replace("\\", "\\\\").replace("%", "\%").replace("_", "\_")    # returns the <ul> class for a given radio_admin value  get_ul_class = lambda x: 'radiolist%s' % ((x == HORIZONTAL) and ' inline' or '') }}} adrian tom@eggdrop.ch   0 1 0 0 0 0
2515 2006-08-10 13:18:46 2006-10-14 13:05:34 2019-06-24 00:42:00.409334 Unreviewed closed Core (Other) defect major master fixed [patch] json serializer don't pass options to simplejson.dump I'm lost a few hours finding out why my utf-8 encoded strings end up with double-byte characters encoded like {{{\u00xx\u00xx}}}. Finally I found {{{ensure_ascii=False}}} option but it didn't work. ... (time passes) ... Well, it seems that options are not passed to SimpleJSON -- patch attached. Also, it's worth mentioning in docs that if you have utf-8 encoded data you '''must''' use {{{ensure_ascii=False}}} option -- or simply make that default. adrian nesh <nesh [at] studioquattro [dot] co [dot] yu> patch 0 1 0 0 0 0
2558 2006-08-17 20:52:24 2006-10-14 13:06:13 2019-06-24 00:42:27.622107 Unreviewed closed Core (Other) defect normal   duplicate forms.RawIdAdminField fails with NoneType on split() A snippet of my model is that I have a 'person' who can have one or more 'address'es associated, and vice versa. (Many people live at the same address, yes?) Therefore, I have a model that requires a ManyToManyField to be treated as a raw_id_admin, because data size creates real performance issues. I also render the 'address' data on a custom form using a render_raw_admin_id in templatetags. When adding a new instance of 'person', we do not have any 'address'es associated as yet; So when I save the 'person', I get the NoneType failure on the split. I have managed to get around this by adding a check for None in the RawIdAdminField.html2python, and returning an empty list if true. Am I missing the point here? adrian anonymous   0 0 0 0 0 0
2560 2006-08-18 13:32:23 2006-10-14 14:29:10 2019-06-24 00:42:28.897560 Unreviewed closed Core (Other) defect normal   fixed [patch] HttpResponse should support close() for iterators WSGI kinda suggests that a server should call 'close()' method of after getting content from a response iterator if it has one. This is very logical since one of the most common examples of an iterator is a file and it really should be closed afterwards. And incidentally 'flup' which is commonly used to run FastCGI server indeed does this. The problem is that our HttpResponse wraps the actual iterator into a generator (for unicode conversion). And this generator doesn't have 'close()' method and hence the iterator never closed. I've rewrote this to handle 'close()', patch follows. adrian Ivan Sagalaev <Maniac@SoftwareManiacs.Org>   0 1 0 0 0 0
2578 2006-08-21 12:45:16 2006-10-14 00:22:04 2019-06-24 00:42:40.441234 Unreviewed closed contrib.admin defect major master fixed [patch] Using a non-field in "admin.list_display_links" raises misleading exception A model's "admin.list_display" will happily accept non-fields. If the first listed item is a non-field it is linked to the object change page, as a field would be. However, if a non-field is listed in "admin.list_display_links" a misleading exception is raised. ex: "admin.list_filter" refers to 'example', which isn't a field. This message is obviously incorrect (referring to "admin.list_filter", not "admin.list_display_links"), and the check itself seems redundant. The valid field check can seemingly be removed; at worst, the exception message should be altered actually refer to "admin.list_display_links". adrian robbie <robbie@prelab.net>   0 1 0 0 0 0
2600 2006-08-24 11:38:37 2006-10-14 13:07:38 2019-06-24 00:42:54.253553 Unreviewed closed Core (Other) defect normal   fixed [patch] Development server doesn't serve custom admin media If the ADMIN_MEDIA_PREFIX is set to a relative path containing customised files, and the urls.py configured to serve static files from that path, the development server (django-admin runserver) will still serve the standard admin media from django/contrib/admin/media/ The attached patch adds a setting SERVE_DEFAULT_ADMIN_MEDIA (default True), which if False will prevent this behaviour. adrian adurdin@gmail.com   0 1 0 0 0 0
2602 2006-08-24 22:10:03 2006-10-14 14:27:43 2019-06-24 00:42:55.523252 Unreviewed closed Core (Other) enhancement normal   fixed [patch] add User Agent to broken link emails i'm getting slammed by a bad bot.. this will give me some more information on what is causing the link error. {{{ Index: common.py =================================================================== --- common.py (revision 3656) +++ common.py (working copy) @@ -64,8 +64,9 @@ is_internal = referer and (domain in referer) path = request.get_full_path() if referer and not _is_ignorable_404(path) and (is_internal or '?' not in referer): + ua = request.META.get('HTTP_USER_AGENT','-none-') mail_managers("Broken %slink on %s" % ((is_internal and 'INTERNAL ' or ''), domain), - "Referrer: %s\nRequested URL: %s\n" % (referer, request.get_full_path())) + "Referrer: %s\nRequested URL: %s\nUA: %s\n" % (referer, request.get_full_path(),ua)) return response # Use ETags, if requested. }}} adrian ian@holsman.net session handling 0 1 0 0 0 0
2604 2006-08-26 00:02:57 2006-10-14 13:06:03 2019-06-24 00:42:56.725285 Unreviewed closed Internationalization defect normal master fixed compile-messages.py fails on win32 compile-messages.py script is too much UNIX related so it does not work for Windows. Fixing is easy. Instead of {{{ os.environ['djangocompilemo'] = pf + '.mo' os.environ['djangocompilepo'] = pf + '.po' cmd = 'msgfmt -o "$djangocompilemo" "$djangocompilepo"' }}} it should be {{{ cmd = 'msgfmt -o "%s" "%s"' % (pf + '.mo', pf + '.po') }}} hugo Jarosław Zabiełło win32 i18n 0 0 0 0 0 0
2619 2006-08-30 00:26:39 2006-10-14 13:05:15 2019-06-24 00:43:06.237218 Unreviewed closed Template system enhancement normal   wontfix Create a helper like simple_tag that sets the context If there are many places in which you need to use inclusion_tag , it gets annoying that you have to extract all these *short and simple* snippets into separate template files. If simple_tag can also set context, that will be more convenient. for detail see [http://groups.google.com/group/django-developers/browse_frm/thread/3c4f8112341038d7/b791042941e34904?hl=zh-CN#b791042941e34904] mtredinnick slowness chen   0 0 0 0 0 0
2640 2006-09-01 17:54:10 2006-10-14 14:23:46 2019-06-24 00:43:20.691782 Unreviewed closed Validators defect normal master fixed [patch] django.forms.CheckboxField should be able to use is_required There is currently no way of using the is_required attribut for a !CheckboxField. Use case: In some forms it is usual practice to but confirmation checkboxes that users must check (aknowleding EULA and such) before a form is considered complete. In my mind !ValidationError should be raised for !FormWrapper when this is not the case. Notes: The current version of !CheckboxField takes a validator_list, which may be useful, but these are only called when the checkbox is visible in request.POST, ie. when the user has checked the checkbox. What is needed for the use case is a boolean validator to run even if checkbox is not visible in request.POST. html2python: I did some testing, and html2python is only called if the checkbox has been checked, and as the checkbox widget is a boolean, I choose to just return true, as a situation where one would return false will not arise. adrian torbjornthorsen@gmail.com Manipulator Validator Checkbox 0 1 0 0 0 0
2647 2006-09-03 01:38:12 2006-10-14 13:07:06 2019-06-24 00:43:25.147421 Unreviewed closed contrib.admin defect normal   duplicate Error when changing ManyToManyField referencing "self" with raw_id_admin When a model field is defined as follows: subcomponents = models.ManyToManyField("self", blank=True, null=True, symmetrical=False, #raw_id_admin=True, # <- Django bug activated: raw on "self" broken ) (with the comment removed) the admin interface will raise an ObjectNotFound exception when you edit an object of this type (and you don't have to change this particular field). I narrowed it down through trial-and-error to that combination of parameters. adrian dart@google.com   0 0 0 0 0 0
2653 2006-09-04 17:33:38 2006-10-14 14:29:01 2019-06-24 00:43:28.922646 Unreviewed closed Core (Other) defect normal master fixed multiple manytomanyfield on self causes complaint in manage.py Consider: {{{ #!python class Foo(models.Model): related = models.ManyToManyField('self') suggestions = models.ManyToManyField('self') }}} Both relations should be symmetrical. If A suggests B, B suggests A (for this code base anyways). What I expected to happen is adding B to A would add A to B. Instead I get: app.foo: Accessor for m2m field 'menu_suggestions' clashes with related m2m field 'Foo.foo_set'. Add a related_name argument to the definition for 'suggestions'. app.foo: Accessor for m2m field 'related' clashes with related m2m field 'Foo.foo_set'. Add a related_name argument to the definition for 'related'. Doesn't matter whether I set symmetrical to false or true. The confusion stems from model-api.txt which states: {{{ ``symmetrical`` Only used in the definition of ManyToManyFields on self. Consider the following model: class Person(models.Model): friends = models.ManyToManyField("self") When Django processes this model, it identifies that it has a ``ManyToManyField`` on itself, and as a result, it doesn't add a ``person_set`` attribute to the ``Person`` class. Instead, the ``ManyToManyField`` is assumed to be symmetrical -- that is, if I am your friend, then you are my friend. If you do not want symmetry in ``ManyToMany`` relationships with ``self``, set ``symmetrical`` to ``False``. This will force Django to add the descriptor for the reverse relationship, allowing ``ManyToMany`` relationships to be non-symmetrical. }}} russellm shaleh@speakeasy.net   0 0 0 0 0 0
2662 2006-09-06 09:21:41 2006-10-14 14:26:57 2019-06-24 00:43:34.439150 Unreviewed closed Database layer (models, ORM) enhancement normal   fixed [patch] dictfetchmany and dictfetchall should use generators In db.backends.util, dictfetchmany and dictfetchall currently use list comprehensions and will cause all rows to be loaded in to memory. Those functions should be generators, allowing rows to be loaded one at a time. adrian Simon Willison   0 1 0 0 0 0
2665 2006-09-06 19:03:21 2006-10-14 13:08:36 2019-06-24 00:43:36.267891 Unreviewed closed Database layer (models, ORM) defect normal   duplicate Allow customizing a m2m table name while porting a legacy app i wanted to use the existing table name for the m2m table malcolmt: cain: yeah, you can't control that name (yet). One day it should be possible, though, since it bit me recently when porting a legacy app. mtredinnick wolfram@kriesing.de   0 0 0 0 0 0
2678 2006-09-08 16:52:51 2006-10-14 14:06:14 2019-06-24 00:43:44.368574 Unreviewed closed Validators defect normal master fixed [patch] Move the list of profanities for the hasNoProfanities validator to the settings file Here is a patch against trunk (3738) that moves the list of profanities to be used in the {{{ hasNoProfanities }}} validator and the comments framework. If {{{ PROFANITIES_LIST }}} is not found in the settings file it will fall back on the defaults that ship with django. The patch includes an addition to the settings documentation. adrian mcroydon   0 1 0 0 0 0
2704 2006-09-12 09:25:49 2006-10-14 13:07:29 2019-06-24 00:44:01.230291 Unreviewed closed Core (Management commands) defect normal 0.95 fixed User name is not asked again by manage.py if invalid value is given When creating superuser and given name is invalid, manage.py does not request the name again but asks for email address. After password is given, Null user is tried to write into database. adrian jmu   0 0 0 0 0 0
2707 2006-09-12 22:31:08 2006-10-14 13:08:40 2019-06-24 00:44:03.143705 Unreviewed closed Contrib apps defect normal   fixed [patch] Backend for Xapian working in branche search-api Note that this does not implement the sortFields yet, I'm working in it. adrian sdm@underlinux.com.br search-api xapian 0 1 0 0 0 0
2730 2006-09-14 10:56:43 2006-10-14 14:04:48 2019-06-24 00:44:17.580060 Unreviewed closed Translations defect normal master duplicate PasswordResetForm.isValidUserEmail is not ready for translation PasswordResetForm.isValidUserEmail is not ready for translation. Patch included hugo michael.samoylov@gmail.com   0 0 0 0 0 0
2731 2006-09-14 11:20:52 2006-10-14 14:25:55 2019-06-24 00:44:18.223705 Unreviewed closed Translations defect normal master fixed PasswordChangeForm class is not ready for translation patch included hugo michael.samoylov@gmail.com   0 0 0 0 0 0
2758 2006-09-18 17:12:15 2006-10-14 14:28:49 2019-06-24 00:44:35.322108 Unreviewed closed Documentation defect normal   fixed [patch] Broken link in README The top-level README file in rev 3679 states that IRC discussions are archived at http://loglibrary.com/179 but visiting this URL (on 2006-09-18) results in a 404 error. Ironically, further investigation of http://loglibrary.com/ suggests that this is site is running Rails... :) jacob nick@efford.org   0 1 0 0 0 0
2760 2006-09-18 17:25:49 2006-10-14 13:04:48 2019-06-24 00:44:36.580407 Unreviewed closed contrib.admin defect normal master fixed [patch] Admin interface doesn't handle negative FloatFields 1. Create a model with {{{ FloatField(max_digits=8, decimal_places=5, blank=True) }}} 1. Use the Admin interface to set the FloatField to '-122.19217' Expected: Changes saved. Bug: * "Please correct the error below." * "Please enter a valid decimal number with a whole part of at most 3 digits." * Entry truncated to '-122.1921', because the HTML input can only take 9 characters (max_digits=8 plus the decimal separator '.') adrian Eddy Mulyono <eddymulyono@mail.com>   0 1 0 0 0 0
2770 2006-09-19 22:48:18 2006-10-14 13:03:54 2019-06-24 00:44:42.826298 Unreviewed closed Contrib apps defect normal master fixed [patch] django.contrib.auth.handlers.modpython doesn't send signals.request_*, leaks db connections The module django.contrib.auth.handlers.modpython does not send signals.request_started before it begins processing, and more importantly, doesn't send signals.request_finished once it's completed, which means that the callback established by the line """dispatcher.connect(connection.close, signal=signals.request_finished)""" in django.db's __init__.py is never called. As such, the database connection is not closed (until the python interpreter is culled, eg when apache2 restarts) and is left to fester. I spotted this as I was using it to authenticate all access to an SVN repository, and "svn diff" was making so many requests that eventually postgres gave an error of "connection limit exceeded for non-superusers". Patch to follow. mtredinnick lec9@leicester.ac.uk   0 1 0 0 0 0
2784 2006-09-21 15:09:44 2006-10-14 14:24:20 2019-06-24 00:44:51.576266 Unreviewed closed Core (Other) enhancement normal master wontfix extend URL resolver support for HTTP Methods This patch introduces HTTP method support into the URL resolver allowing for easy creating of REST style applications. At the urls file you can specify which view is supposed to respond to what HTTP method. Currently only POST,GET,PUT,DELETE are supported and those are specified in django.conf.urls.defaults {{{ from django.conf.urls.defaults import * urlpatterns = patterns('', # Example: (r'^django_rest_urls/get/(?P<id>\d+)', 'django_rest_urls.restful.views.get'), (r'^django_rest_urls/(?P<id>\d+)', { 'GET': 'django_rest_urls.restful.views.get', 'POST': 'django_rest_urls.restful.views.post', 'PUT': 'django_rest_urls.restful.views.put', 'DELETE': 'django_rest_urls.restful.views.delete', }), # Uncomment this for admin: # (r'^admin/', include('django.contrib.admin.urls')), ) }}} adrian simon@eight.nl HTTP Methods 0 0 0 0 0 0
2804 2006-09-23 20:05:31 2006-10-14 14:27:19 2019-06-24 00:45:04.065453 Unreviewed closed Contrib apps defect minor master fixed [patch] sitemaps.xml & friends not installed The Sitemap Framework seemingly doesn't install it's templates completely and thus is unusable. This fixed the issue for me: {{{ --- setup.py (revision 3810) [...] + 'django.contrib.sitemaps': ['templates/*.xml'], }} (complete patch available at http://c0re.23.nu/c0de/misc/django-3810-install-sitemaps_xml.diff) adrian Maximillian dornseif <md@hudora.de>   0 1 0 0 0 0
2805 2006-09-23 20:49:54 2006-10-14 13:02:06 2019-06-24 00:45:04.695254 Unreviewed closed Contrib apps enhancement trivial 0.95 fixed [patch] make sitemaps more space effective The XML generates by sitemaps contains lot of whitespace. Since sitemaps are meant to be only processed by machines and the templates are only seldom edited by humans it makes sense to strip out most unneeded whitespace. Basically this is a readability bandwidth tradeoff. This patch changes the sitemaps framework to use the same approach as the syndication framework: prefer bandwidth over readability. It reduced the size of my sitemap by about 20 %. Get the Patch at http://c0re.23.nu/c0de/misc/django-3810-sitemap_space_saver.diff adrian Maximillian dornseif <md@hudora.de>   0 1 0 0 0 0
2808 2006-09-24 08:42:22 2006-10-14 14:25:27 2019-06-24 00:45:06.542700 Unreviewed closed Translations enhancement normal master fixed updated danish translation of django.po Update of the Danish translation of django.po hugo runerlaursen@gmail.com   0 0 0 0 0 0
2816 2006-09-25 19:02:40 2006-10-14 14:26:03 2019-06-24 00:45:11.508265 Unreviewed closed Contrib apps defect normal   fixed more user add/password change from translatable strings Mark a couple of extra strings as translatable adrian ramiro   0 0 0 0 0 0
2817 2006-09-25 19:36:31 2006-10-14 14:25:24 2019-06-24 00:45:12.097551 Unreviewed closed contrib.admin defect trivial master fixed [patch] missing space in ADmin documentation for related fields There is a space missing in Many to Many fields in Admin. Example: gifen a field like {{{ models.ManyToManyField('Product', [...], help_text='Wenn [...]7150/01".') }}} I get in Admin: {{{ Wenn [...]7150/01".Mehrere IDs können mit Komma getrennt werden. ^ missing space }}} The space between help_text and 'Separate multiple IDs with commas.' is missing. Easy fix: {{{ Index: django/db/models/fields/related.py --- django/db/models/fields/related.py (revision 3841) [...] - self.help_text = string_concat(self.help_text, msg) + self.help_text = string_concat(self.help_text, " ", msg) }}} complete patch at http://c0re.23.nu/c0de/misc/django-3841-related_field_documation.diff adrian Maximillian Dornseif <md@hudora.de>   0 1 0 0 0 0
2819 2006-09-25 21:03:03 2006-10-14 13:03:21 2019-06-24 00:45:13.345308 Unreviewed closed contrib.admin enhancement normal   wontfix Generic views for manipulators As far as i know, there are very handy generic views for creating, updating objects. Their limit is that you have to use them on an object, and they use the object's default manipulator. What if my manipulator doesn't have a related object (e.g. i have a manipulator that creates two objects)? And what if want to use a different manipulator? Since the view code to use the manipulator is essentially the same, this calls for a generic view. Then django can be enhanched in 2 ways: 1. Provide a way to assign manipulators to objects to replace the auto-generated one (altough this would mess up the admin i think) 2. Provide a generic view which accepts a manipulator rather than an object. We're not even using the original object in the context of the create_object generic view! I could provide one myself, although you could probably write it in 3 seconds and be more consistent with the arguments required. adrian r.pelizzi@gmail.com generic view, manipulator 0 0 0 0 0 0
2823 2006-09-26 10:02:16 2006-10-14 14:25:39 2019-06-24 00:45:15.812019 Unreviewed closed Core (Other) defect normal   fixed [patch] Correctly call itertools.count() in django.utils.itercompat Now it tries to call count() without importing it, patch is trivial {{{ Index: django/utils/itercompat.py =================================================================== --- django/utils/itercompat.py (revision 3852) +++ django/utils/itercompat.py (working copy) @@ -15,7 +15,7 @@ # deliberate and safe in this instance. def gen(next, data={}, cnt=[0]): dpop = data.pop - for i in count(): + for i in itertools.count(): if i == cnt[0]: item = data[i] = next() cnt[0] += 1 }}} adrian Alex Dedul   0 1 0 0 0 0
2827 2006-09-26 15:56:36 2006-10-14 13:08:21 2019-06-24 00:45:18.326802 Unreviewed closed Tools defect blocker master fixed manage.py broken after svn update After an update to the latest svn (r 3865), I get the following error when doing a 'python manage.py syncdb' Traceback (most recent call last): File "manage.py", line 11, in ? execute_manager(settings) File "/usr/lib/python2.4/site-packages/django/core/management.py", line 1404, in execute_manager execute_from_command_line(action_mapping, argv) File "/usr/lib/python2.4/site-packages/django/core/management.py", line 1315, in execute_from_command_line action_mapping[action](int(options.verbosity), options.interactive) File "/usr/lib/python2.4/site-packages/django/core/management.py", line 436, in syncdb _check_for_validation_errors() File "/usr/lib/python2.4/site-packages/django/core/management.py", line 1045, in _check_for_validation_errors num_errors = get_validation_errors(s, app) File "/usr/lib/python2.4/site-packages/django/core/management.py", line 868, in get_validation_errors db_version = connection.get_server_version() File "/usr/lib/python2.4/site-packages/django/db/backends/mysql/base.py", line 122, in get_server_version self.server_version = tuple([int(x) for x in version[:3]]) + tuple(version[3:]) ValueError: invalid literal for int(): 24a Here's my Python info: Python 2.4.4c0 (#2, Jul 30 2006, 15:43:58) [GCC 4.1.2 20060715 (prerelease) (Debian 4.1.1-9)] on linux2 adrian gtaylor@clemson.edu manage.py 0 0 0 0 0 0
2830 2006-09-27 02:48:53 2006-10-14 13:02:24 2019-06-24 00:45:20.180628 Unreviewed closed Template system enhancement normal   wontfix Patch to add subviews for template tags In {{{django/template/__init__.py}}}, there exists a special tag function for performing common inclusion tasks, basically to insert the output of another template into a given template. This is quite useful, but in most cases it'd be better for a template tag to call a python function rather than just inserting another template. I took the code for {{{inclusion_tag}}}, and created a new tag function, {{{subview_tag}}}, which instead uses a python function to generate content for a template tag. Like {{{inclusion_tag}}}, it is allowed to take the context and just pass it along. In my case, I use subview_tags to be able to write custom tags in templates that end up doing rather complex tasks in python, without having to go through the normal hassle. Here's an example of using {{{subview_tag}}}: {{{ #!python # Subview function def my_subview(context, some_argument): return "This is an example page, with an argument %s" % some_argument # register a new syntax tag: {% view my_argument %} register.subview_tag('view', takes_context=True)(my_subview) }}} adrian gch@cs.cmu.edu   0 0 0 0 0 0
2834 2006-09-27 16:17:05 2006-10-14 13:00:00 2019-06-24 00:45:22.653521 Unreviewed closed Core (Other) defect minor master wontfix Indents in base.py comments breaks epydoc doc generation. Running the [http://epydoc.sourceforge.net/ Epydoc] document generator on a model returns the following error message: {{{ File: c:\dev\python-2.4.2\lib\site-packages\django\db\models\base.py, line 243, in django.db.models.base.Model._collect_sub_objects Lines 246, 247: Improper paragraph indentation }}} Looking at those lines, we find: {{{ def _collect_sub_objects(self, seen_objs): """ Recursively populates seen_objs with all objects related to this object. When done, seen_objs will be in the format: {model_class: {pk_val: obj, pk_val: obj, ...}, model_class: {pk_val: obj, pk_val: obj, ...}, ...} """ }}} The problem appears to be with the extra tabs in the last two lines of that comment. I've fixed it in my local version, but someone may want to fix the version in the repository so it doesn't break for others. adrian     0 0 0 0 0 0
2845 2006-09-28 23:14:21 2006-10-14 13:05:04 2019-06-24 00:45:29.609029 Unreviewed closed Documentation task normal   fixed [patch] Various spelling corrections to docs I've fixed a few various spelling mistakes in the docs. I've tried to avoid things like "website"->"web-site" since things like that are in common usage. And also "referer" which should be "referrer" but is misspelled in the HTTP specifications anyway. :) Some could argue we shouldn't change the British spelling of "behaviour" to the American spelling of "behavior" but I've included these here as well. It can be easily backed out if need be. (patch coming next) jacob treborhudson@gmail.com   0 1 0 0 0 0
2852 2006-09-30 15:24:10 2006-10-14 14:27:47 2019-06-24 00:45:34.034430 Unreviewed closed contrib.admin defect normal   invalid Admin Inner Class Hello, I am having difficulties adding information to the admin using admin inner class. What could be the problem? Thank you, John adrian anonymous   0 0 0 0 0 0
2857 2006-10-02 08:12:48 2006-10-14 13:07:22 2019-06-24 00:45:37.237054 Unreviewed closed contrib.admin enhancement minor 0.95 duplicate Implement multi delete Implement in the Admin interface a multi delete that will delete all the objects that have been selected by checkboxes. Implementing this change will ease administration of data. adrian anonymous   0 0 0 0 0 0
2862 2006-10-03 04:02:51 2006-10-14 13:08:38 2019-06-24 00:45:40.399465 Unreviewed closed Template system enhancement normal   wontfix [patch] Make escape filter smarter The following patch makes the `escape` filter (or technically, the `escape` function in `django.utils.html`) smarter so it can escape the items of lists, too. Useful for this sort of thing: {{{ {{ names_list|escape|join:'<br />' }} }}} adrian SmileyChris   0 1 0 0 0 0
2893 2006-10-10 03:29:50 2006-10-14 13:03:36 2019-06-24 00:45:59.953752 Unreviewed closed Core (Other) defect normal   duplicate IntegerField (and subclasses), FloatField lack to_python method !IntegerField (in django.db.models.fields) and !FloatField subclass Field but do not define a to_python method. They inherit Field's simple 'return value' to_value implementation. This can be a problem when using Django's XML serializer and deserializer together. Since the deserializer passes in a string representation of the value to to_python, a string representation of the value is written to the object. This can make string formatting (%d, %f) and presumably other code unhappy. I suspect that this may not cause a problem in all cases. If an error is not triggered, it may be possible for the values to be saved to the database without incident, thereby allowing future retrievals to have the appropriate types. !AutoField provides an implementation of to_python which seems appropriate to copy-and-paste into place for !IntegerField. The positive integer variants may benefit from bounds checking. !FloatField would need logic along similar lines adrian andrew@theptrgroup.com   0 0 0 0 0 0

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE "tickets_full" (
        id int primary key,
        created datetime,
        changetime datetime,
        last_pulled_from_trac datetime,
        stage text,
        status text,
        component text,
        type text,
        severity text,
        version text,
        resolution text,
        summary text,
        description text,
        owner text,
        reporter text,
        keywords text,
        easy boolean,
        has_patch boolean,
        needs_better_patch boolean,
        needs_tests boolean,
        needs_docs boolean,
        ui_ux boolean
    );