--
Ticket URL: <https://code.djangoproject.com/ticket/34686>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* stage: Unreviewed => Accepted
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:1>
* owner: nobody => Olivier Tabone
* status: new => assigned
Comment:
I'l have a look
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:2>
Comment (by Mariusz Felisiak):
We can see some failures with GEOS 3.12:
{{{
======================================================================
FAIL: test_union_filter (gis_tests.relatedapp.tests.RelatedGeoModelTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/django/django/test/testcases.py", line 1428, in skip_wrapper
return test_func(*args, **kwargs)
File "/django/tests/gis_tests/relatedapp/tests.py", line 408, in
test_union_filter
self.assertIn(
AssertionError: 'MULTIPOINT ((12.75 10.05), (3.7128 -5.006))' not found in
['MULTIPOINT (12.75 10.05, 3.7128 -5.006)', 'MULTIPOINT (3.7128 -5.006,
12.
75 10.05)']
======================================================================
FAIL: test02_wktwriter (gis_tests.geos_tests.test_io.GEOSIOTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/django/tests/gis_tests/geos_tests/test_io.py", line 44, in
test02_wktwriter
self.assertEqual(ref_wkt, wkt_w.write(ref).decode())
AssertionError: 'POINT (5.0000000000000000 23.0000000000000000)' != 'POINT
(5 23)'
- POINT (5.0000000000000000 23.0000000000000000)
+ POINT (5 23)
======================================================================
FAIL: test_wkt_writer_trim (gis_tests.geos_tests.test_io.GEOSIOTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/django/tests/gis_tests/geos_tests/test_io.py", line 137, in
test_wkt_writer_trim
self.assertEqual(
AssertionError: b'POINT (1 1)' != b'POINT (1.0000000000000000
1.0000000000000000)'
======================================================================
ERROR: test_make_valid
(gis_tests.geoapp.test_functions.GISFunctionsTests.test_make_valid)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/django/tests/gis_tests/geoapp/test_functions.py", line 489, in
test_make_valid
self.assertIs(invalid.repaired.valid, True)
^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'valid'
======================================================================
ERROR: test_make_valid_multipolygon
(gis_tests.geoapp.test_functions.GISFunctionsTests.test_make_valid_multipolygon)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/django/tests/gis_tests/geoapp/test_functions.py", line 509, in
test_make_valid_multipolygon
self.assertIs(invalid.repaired.valid, True)
^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'valid'
======================================================================
FAIL: test_collect_filter
(gis_tests.relatedapp.tests.RelatedGeoModelTest.test_collect_filter)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/django/tests/gis_tests/relatedapp/tests.py", line 325, in
test_collect_filter
self.assertEqual(
AssertionError: 'MULTIPOINT ((1.7128 -2.006), (4.7128 5.006))' !=
'MULTIPOINT (1.7128 -2.006, 4.7128 5.006)'
- MULTIPOINT ((1.7128 -2.006), (4.7128 5.006))
? - - - -
+ MULTIPOINT (1.7128 -2.006, 4.7128 5.006)
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:3>
Comment (by Olivier Tabone):
Hi
I made some progress on failed tests, fixed on my branch
- test_union_filter / test_collect_filter fails because of
https://github.com/libgeos/geos/pull/903
- test_wkt_writer_trim / test02_wktwriter fails because of
https://github.com/libgeos/geos/pull/915
I'll have a look at the other failing tests in the coming days
cheers
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:4>
* has_patch: 0 => 1
Comment:
Remaining tests are a pass on my setup (mac os, postgres 15). Will have a
look at pr's checks upon completion
[https://github.com/django/django/pull/17061 PR]
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:5>
* needs_better_patch: 0 => 1
* needs_docs: 0 => 1
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:6>
Comment (by Olivier Tabone):
found a regression in
gis_tests.geoapp.tests.GeoModelTest.test_empty_geometries because of
https://github.com/libgeos/geos/pull/887 (GEOS now considers some empty
geometries as 3 dimensional geometries)
the PR has been updated.
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:7>
Comment (by Olivier Tabone):
Update on this topic:
spatialite 5.1.0 will support GEOS 3.12. There is a release candidate
available.
- https://groups.google.com/g/spatialite-
users/c/hAJ2SgitN4M/m/VnuR2l1sBAAJ
Will update the PR upon spatialite public release.
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:8>
* needs_better_patch: 1 => 0
* needs_docs: 1 => 0
Comment:
Hi, the PR has been synced with master and last code suggestions added.
The remaining issue when using libspatialite 5.1
{{{
FAIL: test_asgml
(gis_tests.geoapp.test_functions.GISFunctionsTests.test_asgml)
}}}
is not related to GEOS and should be fixed in a separate ticket in my
opinion.
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:9>
* stage: Accepted => Ready for checkin
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:10>
* status: assigned => closed
* resolution: => fixed
Comment:
In [changeset:"f46a6b2816819ed12d4d0150c99d66920070ca15" f46a6b28]:
{{{
#!CommitTicketReference repository=""
revision="f46a6b2816819ed12d4d0150c99d66920070ca15"
Fixed #34686 -- Added support for GEOS 3.12.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34686#comment:11>