tickets
63 rows where "changetime" is on date 2007-12-02
This data as json, CSV (advanced)
Suggested facets: stage, component, type, severity, version, resolution, owner, has_patch, needs_better_patch, needs_tests, needs_docs, created (date), last_pulled_from_trac (date)
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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
590 | 2005-10-04 06:29:58 | 2007-12-02 17:59:19 | 2022-03-06 03:21:09.098604 | Design decision needed | closed | Core (Cache system) | enhancement | trivial | wontfix | Hinting cache from views (vary cache time by object age) | Currently cache system uses rather simple way to specify expiration time: it is either some global value for per-site cache, or decorator's parameter for per-view cache. In reality in many cases it depends on content. For example, any news-oriented site (newspaper, blog, message board, ad place, and so on) rarely (if ever) changes archived articles. It is normal to go and change a recent article --- some typos, omissions, and recent development may warrant updates. In this case it makes sense to set hours (days? weeks?) for old articles, and few minutes for recent ones. Possibly some gradations would be required depending on age of underlying document. It is quite possible to find other influences on cache item expiration time: tags, trends of user's activity, and so on. I propose to add a property to '''response''' object, which will indicate the desired expiration time. It can be set by view methods (or some custom middleware). If it is set, it's used by cache middleware. If not, existing mechanism is used. This change doesn't break existing code. Required code changes are rather trivial --- existing cache middleware uses similar mechanism already ('''request''' object is used instead of '''response''' object). That's why I don't submit a patch this time --- it boils down to invention of right name for the property. I trust you guys would be far more consistent than me. | nobody | eugene@lazutkin.com | cache | 0 | 0 | 0 | 0 | 0 | 0 | |
685 | 2005-10-24 00:09:23 | 2007-12-02 15:43:35 | 2022-03-06 03:21:25.191291 | Ready for checkin | closed | Generic views | defect | major | dev | fixed | [patch] list_detail and archive_* generic views should default allow_empty to True | Ideally default behaviour should correlate with the assumptions of the majority. Although it is clearly documented otherwise, I suspect that most people (like me :) will assume that the list_detail generic view handles an empty list exactly as it handles a populated list. I was surprised at getting 404s after reseting my database. Current bahviour has the potential to facilitate unnoticed bugs. I suggest defaulting 'allow_empty' to True. Of course this must be weighed against the hassle of backwards incompatibility and I suspect it may lose out on these grounds, but I thought it was worth ticketing for consideration. | nobody | django@kieranholland.com | 0 | 1 | 0 | 0 | 0 | 0 | |
785 | 2005-11-14 03:47:53 | 2007-12-02 01:21:14 | 2022-03-06 03:21:39.560674 | Accepted | closed | Database layer (models, ORM) | enhancement | normal | dev | duplicate | many2many table and legacy databases. | hi. I have the following table in a legacy database. {{{ CREATE TABLE `hostgroup_membership` ( `hostid` int(11) NOT NULL default '0', `groupid` int(11) NOT NULL default '0', KEY `hostid` (`hostid`), KEY `groupid` (`groupid`), CONSTRAINT `hostgroup_membership_ibfk_1` FOREIGN KEY (`hostid`) REFERENCES `host` (`id`) ON DELETE CA SCADE, CONSTRAINT `hostgroup_membership_ibfk_2` FOREIGN KEY (`groupid`) REFERENCES `hostgroup` (`id`) ON DEL ETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Hostgroup membership'; }}} and i would like to use a many2many field in my model to represent this. right now I have 2 limitations. 1. I can not specify the table name. 2. I can not specify the field names and what they map too. what I would like to be able to do is somehow specify the tablename, as well as how the fields map to their respective column names. something like {{{ class Host(meta.model): Groups = meta.manyTomanyfield(Groups, db_table='foo', columns={self_col:'hostid', to_col:'groupid' }) }}} and have the manytomany code do the right thing. | nobody | Ian@holsman.net | 0 | 1 | 1 | 0 | 0 | 0 | |
1037 | 2005-12-10 21:30:33 | 2007-12-02 18:10:03 | 2022-03-06 03:22:17.998103 | Design decision needed | closed | Core (Other) | enhancement | normal | invalid | ManyToMany should have support for deleting a single relation | Currently you would have to get the list of relations for a ManyToMany field, remove the relation you want to delete and set the list of relations new. With large numbers of relations this can be inefficient (actually it's inefficient with smaller numbers, too, but might just not be such a problem). I think it would be a good idea to have a delete_<field> as a complementary of the existing add_<field> method. | nobody | hugo | feature_request | 0 | 0 | 0 | 0 | 0 | 0 | |
1194 | 2006-01-09 02:49:45 | 2007-12-02 18:18:37 | 2022-03-06 03:22:42.463820 | Design decision needed | closed | Core (Other) | enhancement | normal | wontfix | [patch] Check for file permissions for proper error messages | I'm not sure how possible it is, but sometimes the error messages (eg TemplateDoesNotExist) don't reflect the correct problem. I've had a few times where it was simply a case of the apache user not being able to read the files, but the error message meant that I was looking at the problem from the wrong persective. Would this be hard / worthwhile to implement? Maybe even at a basic level it could tell the user in the error message to check permissions? | nobody | Tim | 0 | 1 | 0 | 1 | 0 | 0 | ||
1636 | 2006-04-13 20:02:33 | 2007-12-02 18:21:03 | 2022-03-06 03:23:52.716305 | Design decision needed | closed | Database layer (models, ORM) | enhancement | minor | wontfix | [patch] Add support for CIDR datatype | This patch extends Django to support the CIDR datatype - whilst this is native in PostgreSQL, checks that are not reliant on the database engine are performed in order to support the other database systems. The code is at http://rob.sh/files/django_cidr.diff and questions/problems with the code can be addresses to me at rob@catalyst2.net | nobody | Rob Shakir (rob@catalyst2.net) | 0 | 1 | 1 | 0 | 0 | 0 | ||
1654 | 2006-04-17 20:36:38 | 2007-12-02 18:21:57 | 2022-03-06 03:23:55.342778 | Design decision needed | closed | Database layer (models, ORM) | defect | normal | fixed | Output sql satement on OperationalError | Hi, Is it possible to output the sql statement in the debug information when encountering an OperationalError? As a default the OperationalError spits out the "there is a problem at xx" with your statement (referring to the sql). While we shouldn't worry about the sql, it can make the error harder to trace because knowing the error from a statement I issued by proxy doesnt necessarily help me. It might help trouble shooting real bugs too. | nobody | django@radbrad.rucus.net | 0 | 0 | 0 | 0 | 0 | 0 | ||
1824 | 2006-05-09 16:47:27 | 2007-12-02 18:22:38 | 2022-03-06 03:24:23.472861 | Design decision needed | closed | Database layer (models, ORM) | defect | normal | duplicate | Name clashes in user-installed apps cause duplications in Admin Interface | I naively created a new Django application called 'admin', created a suitable model to access an existing database, and set up the admin interface to access it. Unfortunately, this resulted in two 'Admin' modules, and two sets of my models appearing in the admin interface. Debugging this, I see that in django.db.models.loading there is a _app_models dictionary which only stores as a key the name of the modules - 'admin' in this case, rather than the whole path. This is handled with code such as: {{{ return _app_models.get(app_mod.__name__.split(".")[-2], {}).values() }}} I appreciate that app names want to be short and unique for database use, but feel that either: 1. This should work and use a fully-qualified name, particularly given users are likely to use many 3rd-party applications in the future and conflicts will arise. 1. It should raise an Exception if conflicting module names exist. | nobody | jermy | 0 | 0 | 0 | 0 | 0 | 0 | ||
2101 | 2006-06-06 23:49:17 | 2007-12-02 01:47:42 | 2022-03-06 03:25:06.555767 | Accepted | closed | Database layer (models, ORM) | defect | trivial | fixed | maxlength should be max_length | I have a feeling this isn't going to go over too well, but the "maxlength" parameter for the various field types should be "max_length." This really isn't an issue about cosmetics, but rather one about consistency. FloatField has "max_digits" and ForeignKey has "max_num_in_admin", while CharField, CommaSeparatedIntegerField, and SlugField have "maxlength." Many times I find myself going to type the parameter one way only to find it should be the other way. It's one of those little gotchas in the framework. My personal recommendation would be to add the "max_length" parameter without removing "maxlength." This way, backwards-compatibility can be maintained while promoting consistency moving forward. The best of both worlds. | adrian | nirvdrum | maxlength max_length | 0 | 1 | 0 | 0 | 0 | 0 | |
2381 | 2006-07-20 15:03:00 | 2007-12-02 18:34:14 | 2022-03-06 03:25:51.482434 | Design decision needed | closed | contrib.admin | enhancement | minor | wontfix | [patch] Add accesskeys to admin-site forms | Would be nice if in the admin interface there were accesskey's for the various save buttons and such. So that people could use 'alt-s' instead of clicking save every time. Not a huge deal, but would be a minor improvement that can really help when people are doing massive data entry. | nobody | umbrae@gmail.com | None | 0 | 1 | 0 | 0 | 0 | 0 | |
2437 | 2006-07-27 17:05:57 | 2007-12-02 00:00:36 | 2022-03-06 03:26:00.521980 | Ready for checkin | closed | Uncategorized | enhancement | normal | dev | fixed | [patch] Quick Copy to pastebin | Hi, I read that there is an "little, easy improvements" open. Since the owner was 'just starting' I tried it myself and thought that it wasn't really difficult to solve. Regards, Dirk | ekarulf | dummy@habmalnefrage.de | pastebin, sprintsept14, sprintdec1 | 0 | 1 | 1 | 0 | 0 | 0 |
2447 | 2006-07-29 17:22:40 | 2007-12-02 18:38:17 | 2022-03-06 03:26:02.392236 | Design decision needed | closed | Core (Other) | enhancement | normal | duplicate | [patch] Experimental time zone support for date and time fields, database backend utilities | The attached patch attempts to improve Django's support for time zones. Specifically, it modifies the date and time fields so that they return str(self.data), which will yield an ISO 8601 formatted date, but with a space separator instead of a T. That format will include a time zone offset using the [+-]HH:MM format if the underlying datetime object is not naive. That format is understood by most databases. It also modifies the function typecast_timestamp from db.backend.util such that it will try to parse time zone offsets. If no such format is found, it will still produce a non-naive datetime object, set in the current time zone. | nobody | bahamut@macstorm.org | timezone, time zone, UTC | 0 | 1 | 1 | 0 | 0 | 0 | |
2631 | 2006-08-31 01:43:56 | 2007-12-02 19:31:13 | 2022-03-06 03:26:34.167361 | Design decision needed | closed | Database layer (models, ORM) | defect | trivial | invalid | pysqlite2.dbapi2.OperationalError: no such table - SQLite needs full path for settings.DATABASE_NAME | If the sqlite database is given a relative path in settings.DATABASE_NAME ( e.g. "database.db" ), then any trying to load it from a subdir fails at first database access as pysqlite can't find the table (i.e. it's assuming we're creating the database). e.g.: {{{ project/databasename.db/ project/somedir/ project/somedir/script.py }}} script.py looks like: {{{ #!/usr/bin/env python import sys,os # Django bootstrap from http://fnordia.org/?q=node/483 project_dir = os.path.abspath('../') project_name = os.path.basename(project_dir) sys.path.append(os.path.join(project_dir, '..')) sys.path.append("..") sys.path.pop() os.environ['DJANGO_SETTINGS_MODULE'] = '%s.settings' % project_name from django.conf import settings from wnmm.monkeys.models import Play P = Play.objects.get(pk=1) }}} and does this: {{{ minerva:~/wnmm/data simon$ python script.py Traceback (most recent call last): File "script.py", line 16, in ? P = Play.objects.get(pk=1) File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/db/models/manager.py", line 67, in get return self.get_query_set().get(*args, **kwargs) File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/db/models/query.py", line 211, in get obj_list = list(clone) File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/db/models/query.py", line 103, in __iter__ return iter(self._get_data()) File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/db/models/query.py", line 430, in _get_data self._result_cache = list(self.iterator()) File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/db/models/query.py", line 172, in iterator cursor.execute("SELECT " + (self._distinct and "DISTINCT " or "") + ",".join(select) + sql, params) File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site-packages/django/db/ba… | nobody | dev@simon.net.nz | 0 | 0 | 0 | 0 | 0 | 0 | ||
2694 | 2006-09-11 06:17:02 | 2007-12-02 19:32:59 | 2022-03-06 03:26:44.160714 | Design decision needed | closed | Core (Other) | enhancement | trivial | invalid | [patch] urlencode to use optional safe argument for urllib.quote | I know this issue got set as wontfix before but the previous solution was not backwards compatible and this one is. {{{ def urlencode(value, safe='/'): "Escapes a value for use in a URL" import urllib return urllib.quote(value, safe) }}} urlencode will work exactly as is does now but can *optionally* set which characters won't be escaped. The / character is the default for urllib.quote http://docs.python.org/lib/module-urllib.html Test case for this is when you have a url stored in the db e.g. "http://djangoproject.com/" if you do a var|urlencode on that you get back 'http%3A//djangoproject.com/' which will cause the browser to show http://example.com/http://djangoproject.com/ which is not what you want but if you can use var|urlencode:":/" you'll get the link working properly. | nobody | Kaaya | urlencode | 0 | 1 | 0 | 0 | 0 | 0 | |
2835 | 2006-09-27 19:18:12 | 2007-12-02 19:43:56 | 2022-03-06 03:27:06.306650 | Design decision needed | closed | Core (Other) | enhancement | normal | wontfix | Processing of urlconf extra args, and removing args | Allows for arguments to be pre-processed to allow urls to be more sensible, ie. comments below blog post. Also allows arguments to be removed so arguments needed for preprocessing can be removed befor being passed to views. Not sure if this is a good idea, but i just wanted to see if this is something django needs. Example code: form page.models import Page class comments_urlprocessor: def __init__(self, model, args=[]): self.model, self.args = model, args def __call__(self, *args, **kwargs): for key in kwargs.keys(): if key not in self.args: del kwargs['key'] try: commented_object = self.model.objects.get(**kwargs) except: commented_object = False return {'commented_object': commented_object} info_dict = { 'queryset': Page.objects.all(), } commments_dict = { 'process_kwargs': ['comments_urlprocessor'], 'remove_kwargs': ['pk','comments_urlprocessor'], 'comments_urlprocessor': comments_urlprocessor(Page, ['pk']), 'commented_object_template': 'page.html' } urlpatterns = patterns('', (r'^(?P<object_id>\d+)/$', 'django.views.generic.list_detail.object_detail', dict(info_dict, object_id=1, template_name='page.html')), (r'^(?P<pk>\d+)/comments/', include('advancedcomments.urls'), commments_dict ), ) | nobody | oyvind@saltvik.no | 0 | 0 | 0 | 0 | 0 | 0 | ||
2946 | 2006-10-22 19:57:03 | 2007-12-02 19:47:52 | 2022-03-06 03:27:23.273817 | Design decision needed | closed | Core (Other) | enhancement | normal | invalid | HttpResponse should set charset for mimetypes starting with 'text/' | I came across this point during doing some Ajax related responses with return mostly text/xml in utf-8. If I create HttpResponse(data, mimetype='text/xml') the default charset won't be set by django. Instead I have to call it HttpResponse(data, mimetype='text/xml; charset=\'utf-8\'') which is not the right way in my opinion. | nobody | dummy@habmalnefrage.de | 0 | 0 | 0 | 0 | 0 | 0 | ||
2947 | 2006-10-22 20:49:23 | 2007-12-02 19:50:24 | 2022-03-06 03:27:23.436164 | Design decision needed | closed | Core (Other) | defect | normal | duplicate | ImportError raised in my management.py is swallowed | This code in "management.py" has the same bug as was reported in ticket 2669 http://code.djangoproject.com/ticket/2669 # Import the 'management' module within each installed app, to register # dispatcher events. for app_name in settings.INSTALLED_APPS: try: __import__(app_name + '.management', '', '', ['']) except ImportError: pass If mysite/myapp/management.py tries to import a non-existent module, or imports a module that imports a non-existent module, then management.py is ignored silently. This is very hard to diagnost and debug! At first, I had no idea why management.py seemed to cease to exist. Then after a while, I guessed, based on my knowledge of how Python works. The solution should be the same as for 2669. Perhaps it would be good to audit all situations where ImportError is raised. | nobody | paul@prescod.net | 0 | 0 | 0 | 0 | 0 | 0 | ||
3083 | 2006-11-30 09:22:48 | 2007-12-02 19:52:37 | 2022-03-06 03:27:45.001000 | Design decision needed | closed | Database layer (models, ORM) | defect | normal | fixed | MySQL IntegrityError Exception on object creation | When two users try to register _simulaneously_ with the same username, they both pass validation (because at that moment nobody of them is registered), but when we do actual user.save(), one of them gets MySQL IntegrityError (Duplicate Key Error). Yes, I can handle it, {{{ from MySQLdb import IntegrityError try: user.save() except IntegrityError: errors['username'] = 'User with this username already exists', }}} but there is dependence to MySQL. I can't simply do "except:", because there can be another trouble, such as no connectivity to database during restart, but user would get confusing message about invalid username. The same thing is with all models. | nobody | anonymous | 0 | 0 | 0 | 0 | 0 | 0 | ||
3113 | 2006-12-07 20:30:09 | 2007-12-02 19:54:26 | 2022-03-06 03:27:50.059413 | Design decision needed | closed | Forms | enhancement | normal | wontfix | [patch] newforms support for parsedatetime with DateField | What about these for "cleaning" Date-based fields? Or maybe for a "HumanDateTimeField()"? They would allow people to enter in hazy, non specific dates and times, like "tomorrow", "next tuesday", or "10/24/2006". [http://cheeseshop.python.org/pypi/ParseTime/1.0] [http://cheeseshop.python.org/pypi/parsedatetime/0.8.0] The second seems more robust, but the first seems more lightweight. | nobody | Brantley <deadwisdom@gmail.com> | 0 | 1 | 0 | 0 | 1 | 0 | ||
3168 | 2006-12-20 01:42:42 | 2007-12-02 19:55:04 | 2022-03-06 03:28:00.443971 | Design decision needed | closed | Generic views | enhancement | normal | wontfix | [patch] object_list should accept lists as well as QuerySets | object_list should accept lists as well as QuerySets. This is perhaps a matter of opinion. Obviously getting access to a list in urls.py isn't practical. However, lots of people use generic views as a way to "finish off" real views. It therefore seems a bit limiting to only accept QuerySets. A view may parse some items in an xml file and return them as a list or may do a raw SQL query rather than using Django's ORM. So this is not an impractical addition. I haven't renamed the queryset argument since it is often specified by keyword. Another, perhaps cleaner solution would be to rename queryset to sequence and accept queryset as a deprecated (or not) argument. | nobody | Grimboy | 0 | 1 | 1 | 0 | 0 | 0 | ||
3228 | 2007-01-04 13:43:46 | 2007-12-02 23:25:55 | 2022-03-06 03:28:10.001729 | Ready for checkin | closed | Core (Other) | enhancement | normal | dev | fixed | Added SmartSlashMiddleware | Implements a new way of 'append slash redirect', as described here: http://groups.google.com/group/django-developers/browse_thread/thread/d6ca6e1442658598 This patch requires some of the small refactorings from ticket #3224. | mtredinnick | mihai_preda@yahoo.com | APPEND_SLASH middleware | 0 | 1 | 0 | 0 | 0 | 0 |
3285 | 2007-01-11 19:09:28 | 2007-12-02 20:09:08 | 2022-03-06 03:28:18.891340 | Design decision needed | closed | Contrib apps | enhancement | normal | wontfix | Signed cookies | In response to some discussion on Chapter 20 of the Django book, and Jacob's suggestion on django-users ([http://groups.google.com/group/django-users/browse_thread/thread/cf05d6559b9b05fe/ here]), this is a proposal for a `contrib` app (tentatively called `django.contrib.signed_cookies`) to implement signed cookies throughout a Django project. The only setting necessary to activate it is the inclusion of the middleware class to `MIDDLEWARE_CLASSES`, as it uses the existing `SECRET_KEY` setting to help generate the signature used to authenticate the cookies. Its position in `MIDDLEWARE_CLASSES` matters, as it transparently handles the signature encryption, validation and signature removal, so that other middlewares and views don't need to have any knowledge of its presence. * Each new cookie's name and value is taken along with the site's `SECRET_KEY` to generate a digest signature * The signature is then prepended to the cookie's value. * When a request comes in, it then recalculates the digest and validates it against the signature it contains. * If the cookie doesn't contain a signature, or if it fails to validate, the cookie is removed from `request.COOKIES`. * In this case, the view would usually reset the cookie, at which point it would be signed properly. * If all succeeds, the signature is removed from the cookie's value in `request.COOKIES`. Currently it uses MD5, but could easily be adapted to use a setting that would control which digest utility is used to generate the signature. | nobody | Marty Alchin (Gulopine) <gulopine@gamemusic.org> | signed cookies | 0 | 1 | 0 | 0 | 0 | 0 | |
3295 | 2007-01-13 11:01:29 | 2007-12-02 20:12:21 | 2022-03-06 03:28:20.421706 | Design decision needed | closed | Forms | enhancement | normal | wontfix | [patch] newforms: I'd like to have a group functionality in forms | I use my custom group fields in my class forms. I set an attribute in my form class: {{{ #!python class myform(forms): field1 = ... field2 = ... group_myfields = ['field1','field2'] }}} {{{field1}}} and {{{field2}}} are fields sets in my custom form class. I can retrive html output, writing this: {{{ #!python myform().myfields.as_p() myform().myfields.as_table() }}} and retrive only fileds listed in {{{group_myfields}}}. | nobody | ivan | 0 | 1 | 0 | 0 | 0 | 0 | ||
3323 | 2007-01-18 19:06:43 | 2007-12-02 23:18:40 | 2022-03-06 03:28:24.650622 | Ready for checkin | closed | Database layer (models, ORM) | dev | fixed | Unhelpful error message in case of unresolved string relation ('str' object has no attribute '_meta') | imagine the following model: {{{ class Test(models.model): rel = models.ForeignKey("bleh") }}} if the relation is not resolvable, in case of a typo or if it's in a different file, the user gets a rather unhelpful exception: {{{ Unhandled exception in thread started by <function inner_run at 0x2af9aa4e9668> Traceback (most recent call last): File "/home/alex/source/svn/django/django/core/management.py", line 1108, in inner_run validate() File "/home/alex/source/svn/django/django/core/management.py", line 1070, in validate num_errors = get_validation_errors(outfile) File "/home/alex/source/svn/django/django/core/management.py", line 936, in get_validation_errors for r in rel_opts.get_all_related_objects(): File "/home/alex/source/svn/django/django/db/models/options.py", line 127, in get_all_related_objects if f.rel and self == f.rel.to._meta: AttributeError: 'str' object has no attribute '_meta' }}} a quick hacky fix is attached, but i guess it should be done in django.core.management.validate | nobody | alex@gc-web.de | sprintsept14 sprintdec01 | 0 | 1 | 0 | 0 | 0 | 0 | ||
3694 | 2007-03-10 08:22:41 | 2007-12-02 00:07:36 | 2022-03-06 03:29:26.276301 | Accepted | closed | contrib.admin | dev | duplicate | admin docstrings not added to doc pages because of stringfilter decorator | The decorator {{{stringfilter}}} in defaultfilters.py overrides the docstrings, making the documentation for those filters in {{{/admin/doc/filters/}}} empty. This is similar to #1840, but in a different component and with a different side effect, however the discussion there might prove useful in resolving this. A possible (ugly)solution may be to call stringfilter inside all the filters which need it, rather than decorating. | gwilson | Simon G. <dev@simon.net.nz> | 0 | 0 | 0 | 0 | 0 | 0 | |||
3883 | 2007-03-31 03:50:09 | 2007-12-02 20:57:53 | 2022-03-06 03:29:54.775324 | Ready for checkin | closed | Documentation | dev | fixed | Add documentation for LocalFlavor | Here's a first pass for LocalFlavor documentation (see http://groups.google.com/group/django-developers/browse_thread/thread/2907d367f9bb69c2) | nickefford | Simon G. <dev@simon.net.nz> | localflavor, sprintdec01 | 0 | 1 | 0 | 0 | 0 | 0 | ||
3961 | 2007-04-08 08:52:21 | 2007-12-02 18:43:02 | 2022-03-06 03:30:05.795105 | Ready for checkin | closed | contrib.localflavor | dev | fixed | Add South African / za localflavor | The attached patch adds support for South African ID numbers and postal codes. The patch also creates {{{django.utils.checksums}}} (with only a luhn function for now), as [http://groups.google.com/group/django-developers/browse_thread/thread/2840162b37af5f76/3ec09f3acc8cc62a suggested by Malcolm Tredinnick on django-developers] | nobody | Russell Cloran <russell@rucus.net> | localflavor, za | 0 | 1 | 0 | 0 | 0 | 0 | ||
3989 | 2007-04-10 11:50:13 | 2007-12-02 00:02:53 | 2022-03-06 03:30:10.064333 | Design decision needed | closed | Validators | dev | duplicate | Django seems to parse only the addr-spec production of RFC 2822 | The [http://www.rfc-editor.org/rfc/rfc2822.txt RFC 2822] defines some productions for the grammar of electronic mail adresses. The {{{mailbox}}} production enables the use of addresses like: {{{John Doe <john.doe@example.com>}}} The address within brackets is defined by the {{{addr-spec}}} production, which by itself constitutes a simpler but valid address format. (see the ABNF rules and their comment in 3.4) When I used a [http://c2i-alsace.u-strasbg.fr/contact/ contact form] in a web site powered by Django, an address satisfying the {{{mailbox}}} production was not accepted, but one satisfying {{{addr-spec}}} was. I was told on the {{{#django}}} channel that it should be an issue not specific to this site, but to Django itself. | nobody | Pierre Thierry <nowhere.man@levallois.eu.org> | 0 | 1 | 0 | 1 | 0 | 0 | |||
4115 | 2007-04-22 09:35:54 | 2007-12-02 20:36:47 | 2022-03-06 03:30:30.771020 | Design decision needed | closed | Contrib apps | dev | wontfix | contrib.thumbnails | The idea has been bantered about in the dev group, so I thought I'd put together something to start the ball rolling at least. | nobody | SmileyChris | 0 | 1 | 0 | 0 | 0 | 0 | |||
4151 | 2007-04-25 12:43:08 | 2007-12-02 17:28:43 | 2022-03-06 03:30:36.867945 | Design decision needed | closed | Contrib apps | dev | duplicate | Patch to add support for more secure password hashes in Python 2.5 or newer | Django currently uses the {{{sha}}} module from the standard library to compute the SHA-1 hash of a password. Developers with particular concerns about security may prefer to use a stronger, more secure hashing algorithm such as SHA-256. Such algorithms are available in the standard library as of Python 2.5, via the {{{hashlib}}} module. This patch modifies {{{django.contrib.auth.models}}} in two ways. First, it adds support for {{{hashlib}}} and the SHA-224, SHA-256 and SHA-384 algorithms to the {{{check_password}}} function. (For SHA-512 to be supported, the {{{password}}} field of the {{{User}}} model would need to be lengthened.) Second, it modifies the {{{set_password}}} method of the {{{User}}} model to use SHA-256 by default for password hashing, falling back on the {{{sha}}} module if {{{hashlib}}} cannot be imported. doctests for the {{{check_password}}} function are included with the patch. | nobody | Nick Efford <nick@efford.org> | authentication, password, hash | 0 | 1 | 1 | 0 | 0 | 0 | ||
4394 | 2007-05-26 11:47:19 | 2007-12-02 20:40:09 | 2022-03-06 03:31:19.617153 | Design decision needed | closed | Contrib apps | dev | wontfix | Common fractions in humanize | The "humanize" tags are very useful for making a site friendly, but one thing that is missing are common/vulgar fractions, which are much more human than decimal fractions in many contexts. This patch adds text_fraction (which produces fractions like "1 1/4") and html_fraction (which generates HTML using sup and sub tags to position the numerator and denomenator). | nobody | max.rabkin@gmail.com | humanize fractions | 0 | 1 | 0 | 0 | 0 | 0 | ||
4563 | 2007-06-14 16:27:47 | 2007-12-02 23:57:23 | 2022-03-06 03:31:47.919727 | Ready for checkin | closed | Template system | dev | fixed | Context should expose removed/added scope objects (dicts) | Originally suggested it [http://groups.google.com/group/django-developers/msg/987347b0da607839 in the 'ForNode multiple args' thread], but opening a ticket for it now since it's generally useful. Basically, proposing that Context.(push|update) return the newly added scope, and that Context.pop() returns the removed scope (for reasons of API symmetry mainly). The main reasoning behind this is that it's useful to bypass Context when doing more then setting a key or two- Context's api isn't as full featured as dicts (nor necessarily should it be). Right now, can do similar tricks via passing in the new scope to update, but that's not particularly friendly/obvious- alternative being reaching into the Context internal stack, which again, isn't very friendly (screws encapsulation anyways). Bypassing context for doing scope updates is actually fairly useful- very least, access to .clear() is a nice way to avoid continual pop/push on the stack per iteration. | nobody | (removed) | 0 | 1 | 0 | 0 | 0 | 0 | |||
4771 | 2007-07-05 11:05:57 | 2007-12-02 20:21:17 | 2022-03-06 03:32:33.706638 | Design decision needed | closed | Core (Mail) | dev | wontfix | EmailHTML - EmailMessage with HTML and related/inline images support | Seems we need the ability to specify Content-Type 'name' header for attachments, when using the new mail objects. I'm trying to send an HTML mail with images, using EmailMultiAlternatives, attach_alternative, and attach_file, but the resulting message isn't readable. It's attaching everything OK, but not with the right headers. | nobody | sime <simon@quo.com.au> | EmailMessage multipart mail html attachments Content-ID | 0 | 0 | 0 | 0 | 0 | 0 | ||
5002 | 2007-07-28 13:18:32 | 2007-12-02 23:26:01 | 2022-03-06 03:33:13.188436 | Ready for checkin | closed | Core (Other) | dev | fixed | [patch] using pdb with django | Set project directory to current if no one found, this lets use pdb with django test.py: {{{ import sys import django.core.management as management import settings management.setup_environ(settings) import django }}} this will work invoked by python test.py and no if by pdb: {{{ >/home/vitja/Desktop/xxx/test.py(1)?() -> import sys (Pdb) n >/home/vitja/Desktop/xxx/test.py(2)?() -> import django.core.management as management (Pdb) >/home/vitja/Desktop/xxx/test.py(3)?() -> import settings (Pdb) >/home/vitja/Desktop/xxx/test.py(5)?() -> management.setup_environ(settings) (Pdb) ValueError: 'Empty module name' }}} This patch fixes this. | nobody | vitja <dummylink@gmail.com> | pdb | 0 | 1 | 0 | 0 | 0 | 0 | ||
5157 | 2007-08-14 18:48:20 | 2007-12-02 20:49:09 | 2022-03-06 03:33:41.199550 | Design decision needed | closed | Core (Other) | dev | wontfix | Direct Apache to serve a static file from view code | Django is not meant to be a static file server, but there is no easy method to direct Apache to serve a file. I have a use case where I need to authenticate a user and decide which static media file to pass back based on some model and view logic. Usage: if serve_static: raise http.HttpInternalRedirect('/path/to/file/') | nobody | mgiger@earthbrowser.com | apache, static file, feature | 0 | 1 | 0 | 1 | 1 | 0 | ||
5245 | 2007-08-24 12:55:14 | 2007-12-02 02:26:23 | 2022-03-06 03:33:54.428858 | Unreviewed | closed | django-admin.py runserver | dev | wontfix | manager runserver don't reload after fixing error | since some days, manager runserver don't reload even if error is fixed in file. It was not the case before. Case to reproduce: Error in a manager imported from managers.py file: indentation. Server don't reload after fixing line. | nobody | bchesneau@gmail.com | runserver reload | 0 | 0 | 0 | 0 | 0 | 0 | ||
5248 | 2007-08-24 17:01:06 | 2007-12-02 00:44:18 | 2022-03-06 03:33:54.859032 | Design decision needed | closed | Core (Mail) | dev | wontfix | Add mail_options to SMTPConnection | This patch makes it easier to set the mail_options when sending email using the SMTPConnection class. The patch adds support for setting this value on a class instance level and a global level. For example, passing ['XVERP'] to postfix activates variable envelope return path (VERP) delivery. VERP is beneficial when processing bounce backs from mass emails. | nobody | mmcclain@signpostnetworks.com | feature | 0 | 1 | 0 | 0 | 0 | 0 | ||
5265 | 2007-08-26 14:46:59 | 2007-12-02 02:41:18 | 2022-03-06 03:33:57.443318 | Unreviewed | closed | Internationalization | dev | invalid | translations subsystem doesn't capitalize correctly (for turkish?) | in turkish, "i" is capitalized as "İ". django chooses to capitalize it as "I". | nobody | Can Burak Cilingir <canburak@cs.bilgi.edu.tr> | 0 | 0 | 0 | 0 | 0 | 0 | |||
5362 | 2007-09-08 10:51:01 | 2007-12-02 21:01:17 | 2022-03-06 03:34:11.354736 | Ready for checkin | closed | Testing framework | dev | fixed | markup test with docutils failed | Hi, I have python 2.5, docutils 0.5 and SVN-trunk (Rev 6066) Django installed. I run the django/contrib/markup/tests.py and I wondered that the docutils test failed. Attached a fix for the bug !? Regards, Dirk | keithb | Dirk Datzert <dummy@habmalnefrage.de> | 0 | 1 | 0 | 0 | 0 | 0 | |||
5676 | 2007-10-03 17:19:30 | 2007-12-02 20:41:31 | 2022-03-06 03:35:05.354601 | Ready for checkin | closed | contrib.localflavor | dev | fixed | mx localflavor | Patch to add a Mexican localfavor for State fields. | nobody | arien <regexbot@gmail.com> | localflavor, l10n, mx | 0 | 1 | 0 | 0 | 0 | 0 | ||
5692 | 2007-10-06 12:56:20 | 2007-12-02 21:03:40 | 2022-03-06 03:35:08.183133 | Ready for checkin | closed | contrib.localflavor | dev | duplicate | Countries list for localflavor | This is a new file to place in django/contrib/localflavor/generic/ The file include a tuple of counties ISO-3166-1. The country names should be not translated. My suggestion for the file name is "country.py". | nobody | Davide "Design" Muzzarelli <info@dav-muz.net> | countries | 0 | 1 | 0 | 0 | 0 | 0 | ||
5743 | 2007-10-12 08:14:42 | 2007-12-02 15:27:44 | 2022-03-06 03:35:16.095358 | Ready for checkin | closed | Core (Other) | dev | fixed | Django breaks Python 2.5's help() | If you have Django installed for Python 2.5, the internal help system breaks up. To reproduce just open the normal shell (not through manage.py), type "help()" and "modules". Setting DJANGO_SETTINGS_MODULE works around this, but shouldn't be required for vanilla shell. Also 2.4 works just fine (don't have 2.3 anymore). Both 0.96 and HEAD have the same symptoms. | anonymous | 0 | 1 | 0 | 0 | 0 | 0 | ||||
5790 | 2007-10-21 15:38:50 | 2007-12-02 00:51:31 | 2022-03-06 03:35:23.529519 | Design decision needed | closed | Core (Other) | dev | wontfix | Add support for Cc: in django/core/mail.py | The attached patch adds support for Cc: in django/core/mail.py. Using the already existing 'headers' argument of the EmailMessage constructor is not enough, because just like Bcc addresses, Cc addresses must be passed to the RCPT TO command, so they must be present in the list returned by the recipients() method. | nobody | tpetazzoni | 0 | 1 | 0 | 0 | 0 | 0 | |||
5808 | 2007-10-23 21:14:34 | 2007-12-02 00:51:07 | 2022-03-06 03:35:26.463973 | Design decision needed | closed | Core (Other) | dev | duplicate | Cannot pickle the default filters | Reproduction code: from django import template t = template.Template("{{ firstname|capfirst }}") c = template.Context("firstname": "simon") p = pickle.dumps(t) print pickle.loads(p).render(c) Expected result: Simon Actual result: <class 'pickle.PicklingError'>: Can't pickle <function _dec at 0x83c010c>: it's not found as django.template.defaultfilters._dec | nobody | simon@akoha.org | template pickle filter | 0 | 1 | 0 | 0 | 0 | 0 | ||
5821 | 2007-10-26 13:20:14 | 2007-12-02 00:49:01 | 2022-03-06 03:35:28.608411 | Design decision needed | closed | Tools | dev | wontfix | Adds decode_entities to utils.html | This patch adds html entities decoding function to utils.html == Description == Replaces HTML entities (name, decimal and hexadecimal) with unicode equivalents.[[BR]] Ampersands, quotes and carets are not replaced by default. == Usage == '''decode_entities''' can be used to normalize and store user input from a js html editor for example.[[BR]] If you need to cut a string that could contain HTML entities, you can decode it before the cut without the fear of cutting through an entity. == Examples == {{{ #!python >>> from django.utils.html import decode_entities >>> html = u'<Déjà 〈>' >>> decode_entities(html) u'<D\xe9j\xe0 \u2329>' >>> decode_entities(html, decode_all=True) u'<D\xe9j\xe0 \u2329>' }}} | nobody | Samuel Adam <samuel.adam@gmail.com> | html | 0 | 1 | 0 | 0 | 0 | 0 | ||
5828 | 2007-10-28 02:39:01 | 2007-12-02 18:14:11 | 2022-03-06 03:35:29.746043 | Accepted | closed | contrib.admin | newforms-admin | fixed | Changeset 6613 seems to have broken edit inline | All edit_inlines have started being required; i.e. when saving, and the rest of the blank rows get validation errors saying they need to be filled in. | nobody | Øyvind Saltvik <oyvind@saltvik.no> | 0 | 1 | 0 | 0 | 0 | 0 | |||
5857 | 2007-11-01 18:32:09 | 2007-12-02 00:48:02 | 2022-03-06 03:35:34.296720 | Design decision needed | closed | Forms | dev | wontfix | exclude_fields to pair with fields in form_for_model | I was thinking, if there is the parameter "fields" with form_for_model, as a helper, it should existe something like exclude_fields, because sometimes, one wants to hide from his form but one field. Doesn't seem "kind" to make a poor developer to write a full set of fields just to "hide" a single one. Example: {{{ class Example(models.Model): name = models.CharField(maxlength=20) name2 = models.CharField(maxlength=20) name3 = models.CharField(maxlength=20) show = models.BooleanField(default=True) ExForm1 = form_for_model(Example, fields=('name1', 'name2', 'name3')) #exists ExForm2 = form_for_model(Example, exclude_fields=('show')) #should exist ExForm1 == ExForm2 -> True }}} -- Kind is good {{{^__^}}} | nobody | italomaia <italo.maia@gmail.com> | form_for_model enhancement | 0 | 0 | 0 | 0 | 0 | 0 | ||
5895 | 2007-11-08 00:04:14 | 2007-12-02 18:30:12 | 2022-03-06 03:35:40.278968 | Accepted | closed | Forms | newforms-admin | fixed | inline-edit performance problem after changeset 6655 | I noticed a massive performance problem today after updating to the latest newforms-admin. Attempting to load a change page for one of my models that has another model edited inline pegged the CPU and started eating memory. I tracked it down to this code in /django/newforms/models.py, in the init for BaseModelFormSet: {{{ if self.queryset: kwargs['initial'] = [initial_data(obj) for obj in self.get_queryset()] }}} Problem is self.queryset is an unfiltered queryset for the entire inline-edited model, it is not filtered by the pk of the parent instance until the self.get_queryset() call in the 2nd line, and "if self.queryset:" actually (apparently) calls {{{ __len__ }}} on the queryset. {{{ __len__ }}} in turn calls _get_data(), which in my case meant going and retrieving over 800,000 rows from the database, bringing my machine to its knees. Fix (attached) is simple: {{{ if self.queryset is not None: kwargs['initial'] = [initial_data(obj) for obj in self.get_queryset()] }}} | jkocherhans | Karen Tracey <kmtracey@gmail.com> | 0 | 1 | 0 | 0 | 0 | 0 | |||
5919 | 2007-11-11 13:53:09 | 2007-12-02 18:15:16 | 2022-03-06 03:35:44.912986 | Unreviewed | closed | contrib.admin | newforms-admin | fixed | 6655 formset update makes adding imposible (when model have inlines) | From 6654 to 6655 there were changes in the branch: {{{ U django/newforms/models.py A tests/modeltests/model_formsets A tests/modeltests/model_formsets/__init__.py A tests/modeltests/model_formsets/models.py }}} Since 6655 i can't add new objects of models that have `inlines` options. When options without `intlines` it is all right. Error is: {{{ TypeError at /admin/gmaps/point/add/ __init__() takes at least 2 arguments (1 given) Request Method: GET Request URL: http://localhost:8000/admin/gmaps/point/add/ Exception Type: TypeError Exception Value: __init__() takes at least 2 arguments (1 given) Exception Location: /home/longman/django-svn/newforms-admin/django/contrib/admin/options.py in add_view, line 505 Python Executable: /usr/bin/python Python Version: 2.5.1 }}} Traceback: {{{ Traceback (most recent call last): File "/home/longman/django-svn/newforms-admin/django/core/handlers/base.py" in _real_get_response 81. response = callback(request, *callback_args, **callback_kwargs) File "/home/longman/django-svn/newforms-admin/django/contrib/admin/sites.py" in root 136. return self.model_page(request, *url.split('/', 2)) File "/home/longman/django-svn/newforms-admin/django/contrib/admin/sites.py" in model_page 153. return admin_obj(request, rest_of_url) File "/home/longman/django-svn/newforms-admin/django/contrib/admin/options.py" in __call__ 251. return self.add_view(request) File "/home/longman/django-svn/newforms-admin/django/contrib/admin/options.py" in add_view 505. inline_formset = FormSet() TypeError at /admin/gmaps/point/add/ __init__() takes at least 2 arguments (1 given) }}} | nobody | LongMan <alx.gsv@gmail.com> | inline add | 0 | 1 | 0 | 0 | 0 | 0 | ||
5921 | 2007-11-11 20:21:09 | 2007-12-02 20:33:17 | 2022-03-06 03:35:45.180205 | Design decision needed | closed | Contrib apps | dev | wontfix | Common parent class for User and AnonymousUser | Howdy! While I know of and respect Django's deference to Pythonic duck-typing, it would be helpful for {{{isinstance(obj, klass)}}} to confirm whether an object is a user or not, regardless of authentication. However User inherits solely from models.Model and !AnonymousUser inherits from object -- they have no common lineage despite common interface. This patch creates an abstract parent class for both User and !AnonymousUser so a check for {{{isinstance(obj, django.contrib.auth.models.UserClass)}}} returns True whether the user is authenticated or not. It provides this functionality without any other modification to the external interface, so there are no side-effects or other impacts of this change. I've tested it against the Django test suite and it passes. -jag | nobody | jag@flowtheory.net | 0 | 1 | 0 | 0 | 0 | 0 | |||
5961 | 2007-11-16 10:38:09 | 2007-12-02 20:41:34 | 2022-03-06 03:35:52.051494 | Unreviewed | closed | contrib.comments | dev | wontfix | Use template_name for all views in comments | In django.contrib.comments, all the templates locations and names are hard coded in the views themselves. It expected to find them in TEMPLATE_DIRS[X]/comments. I recently used the comments app for my own project but didn't want to put them in that directory. This trivial change adds the template_name parameter to each view function and it defaults to the template location currently in the code. You would need to make a urls.py somewhere that has views that point to the comment system's views and pass a template_name, like how most everything else works (e.g. django.contrib.auth.views.login). A simple change but it makes the system a bit more flexible for those who want to use it. | nobody | Ryan Kaskel <ryan@ryankaskel.com> | comments | 0 | 1 | 0 | 0 | 0 | 0 | ||
5967 | 2007-11-17 16:43:45 | 2007-12-02 20:46:15 | 2022-03-06 03:35:52.982683 | Unreviewed | closed | *.djangoproject.com | dev | fixed | weblog archive links missing from August 2007 on | If you visit http://www.djangoproject.com/weblog/ the sidebar on the right contains links to monthly archives of the weblog in descending order. The first link is "July 2007", and links for August, September, October and November 2007 are missing even though there have been postings in each of those months. Typing the URL for a missing link, e.g. http://www.djangoproject.com/weblog/2007/oct/ does bring up the correct archive page. On the http://www.djangoproject.com/weblog/ main page the missing links don't matter much, since all postings between July 1st and the present date do fit on the front page. But if you navigate to, say, http://www.djangoproject.com/weblog/2005/jul/ and would like to return to see October 2007 postings, there is no link for that nor any link to the list of most recent postings. | nobody | akaihola | 0 | 0 | 0 | 0 | 0 | 0 | |||
6013 | 2007-11-22 15:10:27 | 2007-12-02 03:58:52 | 2022-03-06 03:36:00.340160 | Unreviewed | closed | Core (Other) | dev | duplicate | management.find_commands makes distribute django app difficultly. | django.core.management.find_commands only searches the commands that ends with .py, but if I want to distribute django application to others and don't want to distribute source code, this will be a barrier. Actually, I want to distribute my django application using py2exe to be a desktop application. My approach in this time is: import django.core.management def find_commands(management_dir): command_dir = os.path.join(management_dir, 'commands') try: return [f[:-4] for f in os.listdir(command_dir) if not f.startswith('_') and f.endswith('.pyo')] except OSError: return [] django.core.management.find_commands = find_commands from django.core.management import ProjectManagementUtility os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' utility = ProjectManagementUtility(sys.argv, executableDir) utility.execute() It looks silly. If django.core.management.find_commands can search .py, .pyc and .pyo, I don't need to this anymore. This will make distribute django more easily and more flexible. Thanks for your effort. | jdetaeye | bear330 | 0 | 0 | 0 | 0 | 0 | 0 | |||
6020 | 2007-11-23 14:14:05 | 2007-12-02 20:36:21 | 2022-03-06 03:36:01.486930 | Design decision needed | closed | Contrib apps | dev | wontfix | Allow group comparing with basestring | Sometimes, i have to check is a user is in a particular group(from auth), and i have to load the group i'm checking against, before i can use the "in" operator. Something like this: {{{ MyGroupName="badass_people" group=Group.objects.get(name=MyGroupName) if group in user.groups: ... else: ... }}} I would like to suggest the overwrite of the method __cmp__, so that something like this: {{{ group="badass_people" if group in user.groups: ... else: ... }}} I believe the code to do so is something like this: {{{ class Group(models.Model): #stuff stuff ... def __cmp__(self, group): if isinstance(group, basestring): return cmp(self.name,group) #more stuff... }}} | nobody | italomaia <italo.maia@gmail.com> | auth, group, improvement | 0 | 0 | 0 | 0 | 0 | 0 | ||
6040 | 2007-11-27 21:01:19 | 2007-12-02 20:40:06 | 2022-03-06 03:36:04.748349 | Unreviewed | closed | Contrib apps | dev | invalid | post_syncdb signal and contrib.auth permissions | This is a feature request for contrib.auth's management.py In an app's management.py, doing: {{{ from myapp import models from django.contrib.auth.models import Permission def init_data(): perm = Permission.objects.get(codename=<permission string for models.my_model>) dispatcher.connect(init_data, sender=models, signal=signals.post_syncdb) }}} where <permission string for models.my_model> is something like "change_mymodel", will trigger a DoesNotExist exception on first run of syncdb. The problem is that contrib.auth is receiving the post_syncdb signal before "myapp", and there doesn't appear to be a way to force myapp to be the last receiver of the signal. Changing the order of the apps in settings.py has no effect. A suggested solution would be to add a new signal fired by contrib.auth after creation of permissions. Or am I missing an obvious way to handle after contrib.auth? | nobody | Dan <danielnaab@gmail.com> | auth contrib.auth post_syncdb management.py | 0 | 0 | 0 | 0 | 0 | 0 | ||
6042 | 2007-11-28 03:58:35 | 2007-12-02 19:29:55 | 2022-03-06 03:36:05.057181 | Accepted | closed | Forms | dev | fixed | ModelForms | New syntax to replace form_for_model and form_for_instance as discussed [http://groups.google.com/group/django-developers/browse_thread/thread/44a782308af81796 on django-dev]. | nobody | jkocherhans | 0 | 1 | 0 | 0 | 0 | 0 | |||
6070 | 2007-12-01 04:06:55 | 2007-12-02 15:33:08 | 2022-03-06 03:36:09.924966 | Ready for checkin | closed | Documentation | dev | fixed | Document that SITE_ID is no longer required to run all tests | I just ran all tests successfully with the following settings.py file: {{{ #!python URL_CONF = "urls" DATABASE_ENGINE = "sqlite3" }}} so the mention about "and a SITE_ID setting (any non-zero integer value will do) in order for all the tests to pass." in the [http://www.djangoproject.com/documentation/contributing/ Contributing to Django] page is wrong. Btw, why not put the above settings.py file in the tests directory to make it even easier for people to get going and start running tests? Just name it {{{sample_test_settings.py}}}. | nobody | anonymous | 0 | 0 | 0 | 0 | 0 | 0 | |||
6071 | 2007-12-01 09:16:41 | 2007-12-02 20:17:10 | 2022-03-06 03:36:10.081739 | Accepted | closed | Forms | dev | fixed | Revison 6777 / 6778: maximum recursion depth exceeded | Until revison 6777 my Django-program works fine. If I update to version 6778, I'll get the following error: Request Method: GET Request URL: http://dms.bildung.hessen.de/wir_ueber_uns/intern/index.html/edit/ Exception Type: RuntimeError Exception Value: maximum recursion depth exceeded Exception Location: /usr/local/lib64/python2.5/site-packages/django/utils/safestring.py in __add__, line 73 Python Executable: /usr/local/bin/python Python Version: 2.5.1 The error occurs, if I try to show a form (newforms). | trey | hans.rauch@gmx.net | 0 | 1 | 0 | 0 | 0 | 0 | |||
6072 | 2007-12-01 10:32:03 | 2007-12-02 00:26:50 | 2022-03-06 03:36:10.249054 | Ready for checkin | closed | Internationalization | dev | fixed | January translation for catalan missing | When displaying the calendar on the admin contrib application with your locale in catalan the January month appears as undefined. | aaloy | aaloy | 0 | 1 | 0 | 0 | 0 | 0 | |||
6087 | 2007-12-01 21:00:36 | 2007-12-02 15:32:34 | 2022-03-06 03:36:12.623673 | Ready for checkin | closed | contrib.sessions | dev | fixed | Sessions should support setdefault | Sessions don't currently support `setdefault`. They probably should. | __hawkeye__ | __hawkeye__ | 0 | 1 | 0 | 0 | 0 | 0 | |||
6091 | 2007-12-01 23:51:08 | 2007-12-02 00:00:36 | 2022-03-06 03:36:13.173486 | Unreviewed | closed | Uncategorized | dev | fixed | Update to AUTHORS | Adding my name to the AUTHORS file | mtredinnick | ekarulf | AUTHORS | 0 | 1 | 0 | 0 | 0 | 0 | ||
6097 | 2007-12-02 05:14:02 | 2007-12-02 15:03:36 | 2022-03-06 03:36:14.022923 | Ready for checkin | closed | Documentation | dev | fixed | r6798 broke a link in the template.txt documentation page | See r6798 and notice that the link around "Cross Site Scripting" in the "Automatic HTML escaping" is broken, resulting in a single backtick and no link being displayed on the html documentation page. I'm adding back in the link that was present in r6792. | simeon | simeon | 0 | 1 | 0 | 0 | 0 | 0 | |||
6105 | 2007-12-02 21:01:07 | 2007-12-02 21:06:39 | 2022-03-06 03:36:15.295044 | Unreviewed | closed | contrib.admin | newforms-admin | duplicate | The save_as admin option is not implemented in newfroms-admin | nobody | jkocherhans | 0 | 0 | 0 | 0 | 0 | 0 |
Advanced export
JSON shape: default, array, newline-delimited, object
CREATE TABLE tickets ( 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 );