{{{
$ django-admin.py startproject testproj && cd testproj
$ ./manage.py validate
TypeError: Error when calling the metaclass bases
__init__() keywords must be strings
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/18961>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* status: new => closed
* needs_better_patch: => 0
* resolution: => invalid
* needs_tests: => 0
* needs_docs: => 0
Comment:
Per https://docs.djangoproject.com/en/dev/intro/install/ minimum Python
level for Django 1.5 will be Python 2.6.5. As I recall this was a
conscious choice when choosing the strategy for porting to Python 3. I'm
not a Mac person, I have no idea how old snow leopard is? But unless a
radical change is considered for how we're going to support Python 3, its
default 2.6.1 Python is too old for Django 1.5. I assume there is some way
to install a newer Python?
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:1>
* status: closed => new
* resolution: invalid =>
Comment:
Rephrasing the issue: Django 1.5 doesn't work on Snow Leopard 10.6.8 out
of the box. I'm surprised that this issue is closed with an `invalid`
resolution. Snow Leopard is a common platform (for developers), after all;
It's not //that// old (sold 2009-2011).
Adding an extra python on Snow Leopard isn't for novices, I think.
Installing a fresh 2.7 from the python.org website will likely give some
developers headaches with PATH's and missing modules. If a novice installs
Python 3 for the reason that he/she wants to work with the latest Django,
he/she will probably be in an even far worse situation (db drivers, apps,
and whatnot that doesn't work yet on 3).
I think that a little guidance would be appreciated.
The current `TypeError` is vague and no indication to the actual problem.
Would it be possible to do an explicit version check and error message for
older Pythons?
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:2>
Comment (by kmtracey):
Is there no way to update the installed Python to 2.6.5 rather than adding
an "extra Python"?
It's pretty late in the cycle to add a version check, we're past release
candidate stage...
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:3>
Comment (by mhaligowski):
"System" Python on OS X is provided by Apple itself and as Snow Leopard is
no longer maintined, one shouldn't expect that it will be updated any
more.
In the other hand, installing python.org 2.7 is a common operation for
Python developers and is widely discussed in the web. Moreover, the
installer fixes the paths automatically.
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:4>
* cc: mhaligowski (added)
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:5>
* status: new => closed
* resolution: => invalid
Comment:
I don't think this is a valid defect as Django 1.5 explicitly requires
Python 2.6.5+.
Suggest the solution is to upgrade OS X to 10.7 or 10.8 which ship with
Python 2.7, or use django 1.4 or upgrade Python.
Snow leopard is two versions behind the latest.
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:6>
Comment (by anonymous):
For many people, "upgrade OS X to 10.7 or 10.8" requires buying a new
computer. Upgrading Python on 10.6 is a nightmare. That leaves django 1.4
as the only realistic option for people who want to work with Django on
the machine they have, instead of spending hundreds of dollars or drowning
in the mess that Apple has made of Python environments. Nevertheless,
agree that this is not a "bug" because Django 1.5 explicitly requires
2.6.5+
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:7>
Comment (by aaugustin):
It's easy enough to install another Python version with MacPorts or
Homebrew. I have five Python versions on my Mac to test Django against
them. I'm running Django 1.3 to 1.7 on Python 2.4 to 3.3 on OS X.6 without
any issues.
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:8>
Comment (by elena):
Hi anonymous, We've just encountered this bug. You can install python2.7
*over* the default python2.6.1 installation, which seems to be buggy for
Django 1.5+.
Python2.6.1 explodes terribly when you try to use run Django 1.5+, just
install python version >2.6 for Mac OSX from here:
http://www.python.org/getit/
--
Ticket URL: <https://code.djangoproject.com/ticket/18961#comment:9>