#28447: django.contrib.gis.geos can't parse version string "3.6.2-CAPI-1.10.2
4d2925d6"
-------------------------------------+-------------------------------------
     Reporter:  Lyle Scott III       |                    Owner:  Lyle
         Type:                       |  Scott III
  Cleanup/optimization               |                   Status:  closed
    Component:  GIS                  |                  Version:  1.10
     Severity:  Normal               |               Resolution:  duplicate
     Keywords:  geos version         |             Triage Stage:
                                     |  Unreviewed
    Has patch:  0                    |      Needs documentation:  0
  Needs tests:  0                    |  Patch needs improvement:  0
Easy pickings:  1                    |                    UI/UX:  0
-------------------------------------+-------------------------------------
Changes (by Tim Graham):

 * status:  assigned => closed
 * resolution:   => duplicate


Old description:

> I updated Python via brew yesterday (3.6.1 to 3.6.2) and have been having
> problems running Django since then.
> https://code.djangoproject.com/ticket/28441 references the issue, but for
> Django 1.11.x. Looking at the PR for that ticket,
> https://github.com/django/django/pull/8817, it looks like that is not a
> clean patch to Django 1.10.x
>
> * macOS Sierra - 10.12.5 (16F73)
> * Homebrew 1.2.5
> * Python 3.6.2 from brew
>
> {{{
> Traceback (most recent call last):
>   File "gooee_django/manage.py", line 10, in <module>
>     execute_from_command_line(sys.argv)
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/core/management/__init__.py", line 367, in
> execute_from_command_line
>     utility.execute()
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/core/management/__init__.py", line 341, in execute
>     django.setup()
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/__init__.py", line 27, in setup
>     apps.populate(settings.INSTALLED_APPS)
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/apps/registry.py", line 108, in populate
>     app_config.import_models(all_models)
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/apps/config.py", line 199, in import_models
>     self.models_module = import_module(models_module_name)
>   File
> "/Users/lyle/.virtualenvs/project/lib/python3.6/importlib/__init__.py",
> line 126, in import_module
>     return _bootstrap._gcd_import(name[level:], package, level)
>   File "<frozen importlib._bootstrap>", line 978, in _gcd_import
>   File "<frozen importlib._bootstrap>", line 961, in _find_and_load
>   File "<frozen importlib._bootstrap>", line 950, in
> _find_and_load_unlocked
>   File "<frozen importlib._bootstrap>", line 655, in _load_unlocked
>   File "<frozen importlib._bootstrap_external>", line 678, in exec_module
>   File "<frozen importlib._bootstrap>", line 205, in
> _call_with_frames_removed
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/auth/models.py", line 4, in <module>
>     from django.contrib.auth.base_user import AbstractBaseUser,
> BaseUserManager
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/auth/base_user.py", line 52, in <module>
>     class AbstractBaseUser(models.Model):
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/db/models/base.py", line 119, in __new__
>     new_class.add_to_class('_meta', Options(meta, app_label))
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/db/models/base.py", line 316, in add_to_class
>     value.contribute_to_class(cls, name)
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/db/models/options.py", line 214, in contribute_to_class
>     self.db_table = truncate_name(self.db_table,
> connection.ops.max_name_length())
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/db/__init__.py", line 33, in __getattr__
>     return getattr(connections[DEFAULT_DB_ALIAS], item)
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/db/utils.py", line 211, in __getitem__
>     backend = load_backend(db['ENGINE'])
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/db/utils.py", line 115, in load_backend
>     return import_module('%s.base' % backend_name)
>   File
> "/Users/lyle/.virtualenvs/project/lib/python3.6/importlib/__init__.py",
> line 126, in import_module
>     return _bootstrap._gcd_import(name[level:], package, level)
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/db/backends/postgis/base.py", line 5, in
> <module>
>     from .features import DatabaseFeatures
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/db/backends/postgis/features.py", line 1, in
> <module>
>     from django.contrib.gis.db.backends.base.features import
> BaseSpatialFeatures
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/db/backends/base/features.py", line 4, in
> <module>
>     from django.contrib.gis.db.models import aggregates
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/db/models/__init__.py", line 2, in <module>
>     from django.contrib.gis.db.models.aggregates import *  # NOQA
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/db/models/aggregates.py", line 1, in <module>
>     from django.contrib.gis.db.models.fields import ExtentField
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/db/models/fields.py", line 1, in <module>
>     from django.contrib.gis import forms
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/forms/__init__.py", line 3, in <module>
>     from .fields import (  # NOQA
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/forms/fields.py", line 4, in <module>
>     from django.contrib.gis.geos import GEOSException, GEOSGeometry
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/geos/__init__.py", line 18, in <module>
>     HAS_GEOS = geos_version_info()['version'] >= '3.3.0'
>   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
> packages/django/contrib/gis/geos/libgeos.py", line 191, in
> geos_version_info
>     raise GEOSException('Could not parse version info string "%s"' % ver)
> django.contrib.gis.geos.error.GEOSException: Could not parse version info
> string "3.6.2-CAPI-1.10.2 4d2925d6"
> }}}
>
> It just looks like the regex is off. This is a management command, but
> the error show its self in many utilities.

New description:

 I updated Python via brew yesterday (3.6.1 to 3.6.2) and have been having
 problems running Django since then. #28441 references the issue, but for
 Django 1.11.x. Looking at the PR for that ticket,
 https://github.com/django/django/pull/8817, it looks like that is not a
 clean patch to Django 1.10.x

 * macOS Sierra - 10.12.5 (16F73)
 * Homebrew 1.2.5
 * Python 3.6.2 from brew

 {{{
 Traceback (most recent call last):
   File "gooee_django/manage.py", line 10, in <module>
     execute_from_command_line(sys.argv)
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/core/management/__init__.py", line 367, in
 execute_from_command_line
     utility.execute()
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/core/management/__init__.py", line 341, in execute
     django.setup()
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/__init__.py", line 27, in setup
     apps.populate(settings.INSTALLED_APPS)
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/apps/registry.py", line 108, in populate
     app_config.import_models(all_models)
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/apps/config.py", line 199, in import_models
     self.models_module = import_module(models_module_name)
   File
 "/Users/lyle/.virtualenvs/project/lib/python3.6/importlib/__init__.py",
 line 126, in import_module
     return _bootstrap._gcd_import(name[level:], package, level)
   File "<frozen importlib._bootstrap>", line 978, in _gcd_import
   File "<frozen importlib._bootstrap>", line 961, in _find_and_load
   File "<frozen importlib._bootstrap>", line 950, in
 _find_and_load_unlocked
   File "<frozen importlib._bootstrap>", line 655, in _load_unlocked
   File "<frozen importlib._bootstrap_external>", line 678, in exec_module
   File "<frozen importlib._bootstrap>", line 205, in
 _call_with_frames_removed
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/auth/models.py", line 4, in <module>
     from django.contrib.auth.base_user import AbstractBaseUser,
 BaseUserManager
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/auth/base_user.py", line 52, in <module>
     class AbstractBaseUser(models.Model):
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/db/models/base.py", line 119, in __new__
     new_class.add_to_class('_meta', Options(meta, app_label))
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/db/models/base.py", line 316, in add_to_class
     value.contribute_to_class(cls, name)
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/db/models/options.py", line 214, in contribute_to_class
     self.db_table = truncate_name(self.db_table,
 connection.ops.max_name_length())
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/db/__init__.py", line 33, in __getattr__
     return getattr(connections[DEFAULT_DB_ALIAS], item)
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/db/utils.py", line 211, in __getitem__
     backend = load_backend(db['ENGINE'])
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/db/utils.py", line 115, in load_backend
     return import_module('%s.base' % backend_name)
   File
 "/Users/lyle/.virtualenvs/project/lib/python3.6/importlib/__init__.py",
 line 126, in import_module
     return _bootstrap._gcd_import(name[level:], package, level)
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/db/backends/postgis/base.py", line 5, in
 <module>
     from .features import DatabaseFeatures
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/db/backends/postgis/features.py", line 1, in
 <module>
     from django.contrib.gis.db.backends.base.features import
 BaseSpatialFeatures
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/db/backends/base/features.py", line 4, in
 <module>
     from django.contrib.gis.db.models import aggregates
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/db/models/__init__.py", line 2, in <module>
     from django.contrib.gis.db.models.aggregates import *  # NOQA
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/db/models/aggregates.py", line 1, in <module>
     from django.contrib.gis.db.models.fields import ExtentField
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/db/models/fields.py", line 1, in <module>
     from django.contrib.gis import forms
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/forms/__init__.py", line 3, in <module>
     from .fields import (  # NOQA
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/forms/fields.py", line 4, in <module>
     from django.contrib.gis.geos import GEOSException, GEOSGeometry
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/geos/__init__.py", line 18, in <module>
     HAS_GEOS = geos_version_info()['version'] >= '3.3.0'
   File "/Users/lyle/.virtualenvs/project/lib/python3.6/site-
 packages/django/contrib/gis/geos/libgeos.py", line 191, in
 geos_version_info
     raise GEOSException('Could not parse version info string "%s"' % ver)
 django.contrib.gis.geos.error.GEOSException: Could not parse version info
 string "3.6.2-CAPI-1.10.2 4d2925d6"
 }}}

 It just looks like the regex is off. This is a management command, but the
 error show its self in many utilities.

--

Comment:

 Per our [https://docs.djangoproject.com/en/dev/internals/release-process
 /#supported-versions supported versions policy], 1.10 is only receiving
 fixes for security and data loss issues, so we won't fix this issue there.

 Closing as duplicate of #28441.

-- 
Ticket URL: <https://code.djangoproject.com/ticket/28447#comment:2>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/067.f6e7094ebce16c977247656d88ce07cf%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to