I just updated my Python installation to 3.5 Alpha 1 and started with Django today and I hit a road block already. It all went fine, when I created the virtual environment and installed Django 1.7.4 in it. And then when I did
Now, all we can do is, wait for the version of django which officially supports Python 3.5 or manually patch html_parser.py file as per the above shown fix. Even if we patch it manually, there is no guarantee that everything else will work fine.
startproject
, I got AttributeError: module 'html.parser' has no attribute 'HTMLParseError'
.(py3.5venv) ➜ myProject git:(master) ✗ django-admin.py startproject myProject Traceback (most recent call last): File "/py3.5venv/bin/django-admin.py", line 5, inThen Antti Haapala (a friend from Stakoverflow's Python Chat room) found out that it is becausemanagement.execute_from_command_line() File "/py3.5venv/lib/python3.5/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line utility.execute() File "/py3.5venv/lib/python3.5/site-packages/django/core/management/__init__.py", line 354, in execute django.setup() File "/py3.5venv/lib/python3.5/site-packages/django/__init__.py", line 18, in setup from django.utils.log import configure_logging File "/py3.5venv/lib/python3.5/site-packages/django/utils/log.py", line 13, in from django.views.debug import ExceptionReporter, get_exception_reporter_filter File "/py3.5venv/lib/python3.5/site-packages/django/views/debug.py", line 10, in from django.http import (HttpResponse, HttpResponseServerError, File "/py3.5venv/lib/python3.5/site-packages/django/http/__init__.py", line 4, in from django.http.response import ( File "/py3.5venv/lib/python3.5/site-packages/django/http/response.py", line 13, in from django.core.serializers.json import DjangoJSONEncoder File "/py3.5venv/lib/python3.5/site-packages/django/core/serializers/__init__.py", line 23, in from django.core.serializers.base import SerializerDoesNotExist File "/py3.5venv/lib/python3.5/site-packages/django/core/serializers/base.py", line 6, in from django.db import models File "/py3.5venv/lib/python3.5/site-packages/django/db/models/__init__.py", line 6, in from django.db.models.query import Q, QuerySet, Prefetch # NOQA File "/py3.5venv/lib/python3.5/site-packages/django/db/models/query.py", line 13, in from django.db.models.fields import AutoField, Empty File "/py3.5venv/lib/python3.5/site-packages/django/db/models/fields/__init__.py", line 18, in from django import forms File "/py3.5venv/lib/python3.5/site-packages/django/forms/__init__.py", line 6, in from django.forms.fields import * # NOQA File "/py3.5venv/lib/python3.5/site-packages/django/forms/fields.py", line 18, in from django.forms.utils import from_current_timezone, to_current_timezone File "/py3.5venv/lib/python3.5/site-packages/django/forms/utils.py", line 15, in from django.utils.html import format_html, format_html_join, escape File "/py3.5venv/lib/python3.5/site-packages/django/utils/html.py", line 16, in from .html_parser import HTMLParser, HTMLParseError File "/py3.5venv/lib/python3.5/site-packages/django/utils/html_parser.py", line 12, in HTMLParseError = _html_parser.HTMLParseError AttributeError: module 'html.parser' has no attribute 'HTMLParseError'
HTMLParseError
is deprecated from Python 3.3 onwards and removed in Python 3.5, as per the official documentation. He continued the investigation and found out that django guys are already aware of this, as they have a bug raised, and the fix has been already delivered to the code repository.Now, all we can do is, wait for the version of django which officially supports Python 3.5 or manually patch html_parser.py file as per the above shown fix. Even if we patch it manually, there is no guarantee that everything else will work fine.