shapely 1.6.4.post2__tar.gz → 1.7a1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/CHANGES.txt +22 -5
- {Shapely-1.6.4.post2/Shapely.egg-info → Shapely-1.7a1}/PKG-INFO +32 -17
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/README.rst +4 -4
- {Shapely-1.6.4.post2 → Shapely-1.7a1/Shapely.egg-info}/PKG-INFO +32 -17
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/Shapely.egg-info/SOURCES.txt +3 -0
- Shapely-1.7a1/VERSION.txt +1 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/markers.py +1 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/requirements.py +3 -3
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/specifiers.py +3 -3
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/version.py +8 -8
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/docs/manual.rst +123 -28
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/setup.cfg +1 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/setup.py +14 -11
- Shapely-1.7a1/shapely/__init__.py +1 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/_buildcfg.py +1 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/ctypes_declarations.py +4 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/base.py +7 -4
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/geo.py +4 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/linestring.py +10 -3
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/multilinestring.py +1 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/multipoint.py +1 -2
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/point.py +2 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/polygon.py +4 -5
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/proxy.py +1 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geos.py +52 -30
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/iterops.py +0 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/ops.py +88 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/predicates.py +1 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/prepared.py +4 -2
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/speedups/_speedups.c +1026 -797
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/speedups/_speedups.pyx +26 -9
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/validation.py +0 -2
- Shapely-1.7a1/shapely/wkb.py +55 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/__init__.py +1 -5
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/conftest.py +10 -0
- Shapely-1.7a1/tests/test_clip_by_rect.py +109 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_delaunay.py +1 -4
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_linear_referencing.py +3 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_linestring.py +12 -4
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_mapping.py +5 -2
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_point.py +4 -0
- Shapely-1.7a1/tests/test_prepared.py +67 -0
- Shapely-1.7a1/tests/test_substring.py +75 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_vectorized.py +5 -5
- Shapely-1.7a1/tests/test_wkb.py +51 -0
- Shapely-1.6.4.post2/VERSION.txt +0 -1
- Shapely-1.6.4.post2/shapely/__init__.py +0 -1
- Shapely-1.6.4.post2/shapely/wkb.py +0 -37
- Shapely-1.6.4.post2/tests/test_prepared.py +0 -51
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/CREDITS.txt +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/LICENSE.txt +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/Shapely.egg-info/dependency_links.txt +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/Shapely.egg-info/requires.txt +1 -1
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/Shapely.egg-info/top_level.txt +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/__init__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/__about__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/__init__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/_compat.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/_structures.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/_vendor/packaging/utils.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/docs/design.rst +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/docs/index.rst +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/docs/project.rst +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/_geos.pxi +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/affinity.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/algorithms/__init__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/algorithms/cga.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/algorithms/polylabel.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/coords.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/errors.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/examples/__init__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/examples/dissolve.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/examples/geoms.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/examples/intersect.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/ftools.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/__init__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/collection.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/geometry/multipolygon.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/impl.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/linref.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/speedups/__init__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/strtree.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/topology.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/vectorized/__init__.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/vectorized/_vectorized.pyx +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/shapely/wkt.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/binascii_hex.txt +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_affinity.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_box.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_cga.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_collection.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_coords.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_default_impl.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_delegated.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_dlls.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_doctests.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_emptiness.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_empty_polygons.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_equality.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_geointerface.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_geomseq.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_geos_err_handler.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_getitem.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_hash.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_invalid_geometries.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_iterops.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_linemerge.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_locale.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_minimum_rotated_rectangle.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_multi.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_multilinestring.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_multipoint.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_multipolygon.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_ndarrays.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_nearest.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_operations.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_operators.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_parallel_offset.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_persist.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_pickle.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_polygon.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_polygonize.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_polylabel.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_predicates.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_products_z.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_shared_paths.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_singularity.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_snap.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_split.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_strtree.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_styles.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_svg.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_transform.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_union.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_validation.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_wkt.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/test_xy.py +0 -0
- {Shapely-1.6.4.post2 → Shapely-1.7a1}/tests/threading_test.py +0 -0
|
@@ -1,11 +1,29 @@
|
|
|
1
1
|
Changes
|
|
2
2
|
=======
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
Next
|
|
5
|
+
-----
|
|
6
|
+
|
|
7
|
+
New features:
|
|
6
8
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
+
- A Python version check is made by the package setup script. Shapely 1.7
|
|
10
|
+
supports only Python versions 2.7 and 3.4+ (#610).
|
|
11
|
+
- Added a new `EmptyGeometry` class to support GeoPandas (#514).
|
|
12
|
+
- Added new `shapely.ops.substring` function (#459).
|
|
13
|
+
- Added new `shapely.ops.clip_by_rect` function (#583).
|
|
14
|
+
- Use DLLs indicated in sys._MEIPASS' to support PyInstaller frozen apps
|
|
15
|
+
(#523).
|
|
16
|
+
- `shapely.wkb.dumps` now accepts an `srid` integer keyword argument to write
|
|
17
|
+
WKB data including a spatial reference ID in the output data (#593).
|
|
18
|
+
|
|
19
|
+
Bug fixes:
|
|
20
|
+
|
|
21
|
+
- `shapely.geometry.shape` can now marshal empty GeoJSON representations
|
|
22
|
+
(#573).
|
|
23
|
+
- An exception is raised when an attempt is made to `prepare`
|
|
24
|
+
a `PreparedGeometry` (#577, #595).
|
|
25
|
+
- Keyword arguments have been removed from a geometry object's `wkt` property
|
|
26
|
+
getter (#581, #594).
|
|
9
27
|
|
|
10
28
|
1.6.4.post1 (2018-01-24)
|
|
11
29
|
------------------------
|
|
@@ -612,4 +630,3 @@ TODO: fill gap here
|
|
|
612
630
|
1.0 RC1 (2008-01-14)
|
|
613
631
|
--------------------
|
|
614
632
|
- First release candidate
|
|
615
|
-
|
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
Metadata-Version:
|
|
1
|
+
Metadata-Version: 1.1
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.7a1
|
|
4
4
|
Summary: Geometric objects, predicates, and operations
|
|
5
5
|
Home-page: https://github.com/Toblerity/Shapely
|
|
6
6
|
Author: Sean Gillies
|
|
7
7
|
Author-email: sean.gillies@gmail.com
|
|
8
|
-
Maintainer: Sean Gillies
|
|
9
|
-
Maintainer-email: sean.gillies@gmail.com
|
|
10
8
|
License: BSD
|
|
11
9
|
Description: =======
|
|
12
10
|
Shapely
|
|
13
11
|
=======
|
|
14
12
|
|
|
15
|
-
.. image:: https://travis-ci.org/Toblerity/Shapely.
|
|
13
|
+
.. image:: https://travis-ci.org/Toblerity/Shapely.svg?branch=master
|
|
16
14
|
:target: https://travis-ci.org/Toblerity/Shapely
|
|
17
15
|
|
|
18
16
|
.. image:: https://coveralls.io/repos/github/Toblerity/Shapely/badge.svg?branch=master
|
|
@@ -28,7 +26,7 @@ Description: =======
|
|
|
28
26
|
planar geometric objects. It is based on the widely deployed `GEOS
|
|
29
27
|
<http://trac.osgeo.org/geos/>`__ (the engine of `PostGIS
|
|
30
28
|
<http://postgis.org>`__) and `JTS
|
|
31
|
-
<
|
|
29
|
+
<https://locationtech.github.io/jts/>`__ (from which GEOS is ported)
|
|
32
30
|
libraries. Shapely is not concerned with data formats or coordinate systems,
|
|
33
31
|
but can be readily integrated with packages that are. For more details, see:
|
|
34
32
|
|
|
@@ -40,7 +38,7 @@ Description: =======
|
|
|
40
38
|
|
|
41
39
|
Shapely 1.6 requires
|
|
42
40
|
|
|
43
|
-
* Python
|
|
41
|
+
* Python 2.7, >=3.4
|
|
44
42
|
* GEOS >=3.3
|
|
45
43
|
|
|
46
44
|
Installing Shapely 1.6
|
|
@@ -54,7 +52,7 @@ Description: =======
|
|
|
54
52
|
|
|
55
53
|
Windows users have two good installation options: the wheels at
|
|
56
54
|
http://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely and the
|
|
57
|
-
Anaconda platform's
|
|
55
|
+
Anaconda platform's `conda-forge <https://conda-forge.github.io/>`__
|
|
58
56
|
channel.
|
|
59
57
|
|
|
60
58
|
OS X and Linux users can get Shapely wheels with GEOS included from the
|
|
@@ -243,11 +241,29 @@ Description: =======
|
|
|
243
241
|
Changes
|
|
244
242
|
=======
|
|
245
243
|
|
|
246
|
-
|
|
247
|
-
|
|
244
|
+
Next
|
|
245
|
+
-----
|
|
246
|
+
|
|
247
|
+
New features:
|
|
248
248
|
|
|
249
|
-
|
|
250
|
-
|
|
249
|
+
- A Python version check is made by the package setup script. Shapely 1.7
|
|
250
|
+
supports only Python versions 2.7 and 3.4+ (#610).
|
|
251
|
+
- Added a new `EmptyGeometry` class to support GeoPandas (#514).
|
|
252
|
+
- Added new `shapely.ops.substring` function (#459).
|
|
253
|
+
- Added new `shapely.ops.clip_by_rect` function (#583).
|
|
254
|
+
- Use DLLs indicated in sys._MEIPASS' to support PyInstaller frozen apps
|
|
255
|
+
(#523).
|
|
256
|
+
- `shapely.wkb.dumps` now accepts an `srid` integer keyword argument to write
|
|
257
|
+
WKB data including a spatial reference ID in the output data (#593).
|
|
258
|
+
|
|
259
|
+
Bug fixes:
|
|
260
|
+
|
|
261
|
+
- `shapely.geometry.shape` can now marshal empty GeoJSON representations
|
|
262
|
+
(#573).
|
|
263
|
+
- An exception is raised when an attempt is made to `prepare`
|
|
264
|
+
a `PreparedGeometry` (#577, #595).
|
|
265
|
+
- Keyword arguments have been removed from a geometry object's `wkt` property
|
|
266
|
+
getter (#581, #594).
|
|
251
267
|
|
|
252
268
|
1.6.4.post1 (2018-01-24)
|
|
253
269
|
------------------------
|
|
@@ -855,7 +871,6 @@ Description: =======
|
|
|
855
871
|
--------------------
|
|
856
872
|
- First release candidate
|
|
857
873
|
|
|
858
|
-
|
|
859
874
|
Keywords: geometry topology gis
|
|
860
875
|
Platform: UNKNOWN
|
|
861
876
|
Classifier: Development Status :: 5 - Production/Stable
|
|
@@ -863,12 +878,12 @@ Classifier: Intended Audience :: Developers
|
|
|
863
878
|
Classifier: Intended Audience :: Science/Research
|
|
864
879
|
Classifier: License :: OSI Approved :: BSD License
|
|
865
880
|
Classifier: Operating System :: OS Independent
|
|
866
|
-
Classifier: Programming Language :: Python :: 2
|
|
881
|
+
Classifier: Programming Language :: Python :: 2
|
|
867
882
|
Classifier: Programming Language :: Python :: 2.7
|
|
868
883
|
Classifier: Programming Language :: Python :: 3
|
|
884
|
+
Classifier: Programming Language :: Python :: 3.4
|
|
885
|
+
Classifier: Programming Language :: Python :: 3.5
|
|
886
|
+
Classifier: Programming Language :: Python :: 3.6
|
|
869
887
|
Classifier: Topic :: Scientific/Engineering :: GIS
|
|
870
888
|
Requires: Python (>=2.6)
|
|
871
889
|
Requires: libgeos_c (>=3.3)
|
|
872
|
-
Provides-Extra: vectorized
|
|
873
|
-
Provides-Extra: all
|
|
874
|
-
Provides-Extra: test
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Shapely
|
|
3
3
|
=======
|
|
4
4
|
|
|
5
|
-
.. image:: https://travis-ci.org/Toblerity/Shapely.
|
|
5
|
+
.. image:: https://travis-ci.org/Toblerity/Shapely.svg?branch=master
|
|
6
6
|
:target: https://travis-ci.org/Toblerity/Shapely
|
|
7
7
|
|
|
8
8
|
.. image:: https://coveralls.io/repos/github/Toblerity/Shapely/badge.svg?branch=master
|
|
@@ -18,7 +18,7 @@ Shapely is a BSD-licensed Python package for manipulation and analysis of
|
|
|
18
18
|
planar geometric objects. It is based on the widely deployed `GEOS
|
|
19
19
|
<http://trac.osgeo.org/geos/>`__ (the engine of `PostGIS
|
|
20
20
|
<http://postgis.org>`__) and `JTS
|
|
21
|
-
<
|
|
21
|
+
<https://locationtech.github.io/jts/>`__ (from which GEOS is ported)
|
|
22
22
|
libraries. Shapely is not concerned with data formats or coordinate systems,
|
|
23
23
|
but can be readily integrated with packages that are. For more details, see:
|
|
24
24
|
|
|
@@ -30,7 +30,7 @@ Requirements
|
|
|
30
30
|
|
|
31
31
|
Shapely 1.6 requires
|
|
32
32
|
|
|
33
|
-
* Python
|
|
33
|
+
* Python 2.7, >=3.4
|
|
34
34
|
* GEOS >=3.3
|
|
35
35
|
|
|
36
36
|
Installing Shapely 1.6
|
|
@@ -44,7 +44,7 @@ Built distributions
|
|
|
44
44
|
|
|
45
45
|
Windows users have two good installation options: the wheels at
|
|
46
46
|
http://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely and the
|
|
47
|
-
Anaconda platform's
|
|
47
|
+
Anaconda platform's `conda-forge <https://conda-forge.github.io/>`__
|
|
48
48
|
channel.
|
|
49
49
|
|
|
50
50
|
OS X and Linux users can get Shapely wheels with GEOS included from the
|
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
Metadata-Version:
|
|
1
|
+
Metadata-Version: 1.1
|
|
2
2
|
Name: Shapely
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.7a1
|
|
4
4
|
Summary: Geometric objects, predicates, and operations
|
|
5
5
|
Home-page: https://github.com/Toblerity/Shapely
|
|
6
6
|
Author: Sean Gillies
|
|
7
7
|
Author-email: sean.gillies@gmail.com
|
|
8
|
-
Maintainer: Sean Gillies
|
|
9
|
-
Maintainer-email: sean.gillies@gmail.com
|
|
10
8
|
License: BSD
|
|
11
9
|
Description: =======
|
|
12
10
|
Shapely
|
|
13
11
|
=======
|
|
14
12
|
|
|
15
|
-
.. image:: https://travis-ci.org/Toblerity/Shapely.
|
|
13
|
+
.. image:: https://travis-ci.org/Toblerity/Shapely.svg?branch=master
|
|
16
14
|
:target: https://travis-ci.org/Toblerity/Shapely
|
|
17
15
|
|
|
18
16
|
.. image:: https://coveralls.io/repos/github/Toblerity/Shapely/badge.svg?branch=master
|
|
@@ -28,7 +26,7 @@ Description: =======
|
|
|
28
26
|
planar geometric objects. It is based on the widely deployed `GEOS
|
|
29
27
|
<http://trac.osgeo.org/geos/>`__ (the engine of `PostGIS
|
|
30
28
|
<http://postgis.org>`__) and `JTS
|
|
31
|
-
<
|
|
29
|
+
<https://locationtech.github.io/jts/>`__ (from which GEOS is ported)
|
|
32
30
|
libraries. Shapely is not concerned with data formats or coordinate systems,
|
|
33
31
|
but can be readily integrated with packages that are. For more details, see:
|
|
34
32
|
|
|
@@ -40,7 +38,7 @@ Description: =======
|
|
|
40
38
|
|
|
41
39
|
Shapely 1.6 requires
|
|
42
40
|
|
|
43
|
-
* Python
|
|
41
|
+
* Python 2.7, >=3.4
|
|
44
42
|
* GEOS >=3.3
|
|
45
43
|
|
|
46
44
|
Installing Shapely 1.6
|
|
@@ -54,7 +52,7 @@ Description: =======
|
|
|
54
52
|
|
|
55
53
|
Windows users have two good installation options: the wheels at
|
|
56
54
|
http://www.lfd.uci.edu/~gohlke/pythonlibs/#shapely and the
|
|
57
|
-
Anaconda platform's
|
|
55
|
+
Anaconda platform's `conda-forge <https://conda-forge.github.io/>`__
|
|
58
56
|
channel.
|
|
59
57
|
|
|
60
58
|
OS X and Linux users can get Shapely wheels with GEOS included from the
|
|
@@ -243,11 +241,29 @@ Description: =======
|
|
|
243
241
|
Changes
|
|
244
242
|
=======
|
|
245
243
|
|
|
246
|
-
|
|
247
|
-
|
|
244
|
+
Next
|
|
245
|
+
-----
|
|
246
|
+
|
|
247
|
+
New features:
|
|
248
248
|
|
|
249
|
-
|
|
250
|
-
|
|
249
|
+
- A Python version check is made by the package setup script. Shapely 1.7
|
|
250
|
+
supports only Python versions 2.7 and 3.4+ (#610).
|
|
251
|
+
- Added a new `EmptyGeometry` class to support GeoPandas (#514).
|
|
252
|
+
- Added new `shapely.ops.substring` function (#459).
|
|
253
|
+
- Added new `shapely.ops.clip_by_rect` function (#583).
|
|
254
|
+
- Use DLLs indicated in sys._MEIPASS' to support PyInstaller frozen apps
|
|
255
|
+
(#523).
|
|
256
|
+
- `shapely.wkb.dumps` now accepts an `srid` integer keyword argument to write
|
|
257
|
+
WKB data including a spatial reference ID in the output data (#593).
|
|
258
|
+
|
|
259
|
+
Bug fixes:
|
|
260
|
+
|
|
261
|
+
- `shapely.geometry.shape` can now marshal empty GeoJSON representations
|
|
262
|
+
(#573).
|
|
263
|
+
- An exception is raised when an attempt is made to `prepare`
|
|
264
|
+
a `PreparedGeometry` (#577, #595).
|
|
265
|
+
- Keyword arguments have been removed from a geometry object's `wkt` property
|
|
266
|
+
getter (#581, #594).
|
|
251
267
|
|
|
252
268
|
1.6.4.post1 (2018-01-24)
|
|
253
269
|
------------------------
|
|
@@ -855,7 +871,6 @@ Description: =======
|
|
|
855
871
|
--------------------
|
|
856
872
|
- First release candidate
|
|
857
873
|
|
|
858
|
-
|
|
859
874
|
Keywords: geometry topology gis
|
|
860
875
|
Platform: UNKNOWN
|
|
861
876
|
Classifier: Development Status :: 5 - Production/Stable
|
|
@@ -863,12 +878,12 @@ Classifier: Intended Audience :: Developers
|
|
|
863
878
|
Classifier: Intended Audience :: Science/Research
|
|
864
879
|
Classifier: License :: OSI Approved :: BSD License
|
|
865
880
|
Classifier: Operating System :: OS Independent
|
|
866
|
-
Classifier: Programming Language :: Python :: 2
|
|
881
|
+
Classifier: Programming Language :: Python :: 2
|
|
867
882
|
Classifier: Programming Language :: Python :: 2.7
|
|
868
883
|
Classifier: Programming Language :: Python :: 3
|
|
884
|
+
Classifier: Programming Language :: Python :: 3.4
|
|
885
|
+
Classifier: Programming Language :: Python :: 3.5
|
|
886
|
+
Classifier: Programming Language :: Python :: 3.6
|
|
869
887
|
Classifier: Topic :: Scientific/Engineering :: GIS
|
|
870
888
|
Requires: Python (>=2.6)
|
|
871
889
|
Requires: libgeos_c (>=3.3)
|
|
872
|
-
Provides-Extra: vectorized
|
|
873
|
-
Provides-Extra: all
|
|
874
|
-
Provides-Extra: test
|
|
@@ -73,6 +73,7 @@ tests/conftest.py
|
|
|
73
73
|
tests/test_affinity.py
|
|
74
74
|
tests/test_box.py
|
|
75
75
|
tests/test_cga.py
|
|
76
|
+
tests/test_clip_by_rect.py
|
|
76
77
|
tests/test_collection.py
|
|
77
78
|
tests/test_coords.py
|
|
78
79
|
tests/test_default_impl.py
|
|
@@ -120,11 +121,13 @@ tests/test_snap.py
|
|
|
120
121
|
tests/test_split.py
|
|
121
122
|
tests/test_strtree.py
|
|
122
123
|
tests/test_styles.py
|
|
124
|
+
tests/test_substring.py
|
|
123
125
|
tests/test_svg.py
|
|
124
126
|
tests/test_transform.py
|
|
125
127
|
tests/test_union.py
|
|
126
128
|
tests/test_validation.py
|
|
127
129
|
tests/test_vectorized.py
|
|
130
|
+
tests/test_wkb.py
|
|
128
131
|
tests/test_wkt.py
|
|
129
132
|
tests/test_xy.py
|
|
130
133
|
tests/threading_test.py
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.7a1
|
|
@@ -110,16 +110,16 @@ class Requirement(object):
|
|
|
110
110
|
parts = [self.name]
|
|
111
111
|
|
|
112
112
|
if self.extras:
|
|
113
|
-
parts.append("[{
|
|
113
|
+
parts.append("[{}]".format(",".join(sorted(self.extras))))
|
|
114
114
|
|
|
115
115
|
if self.specifier:
|
|
116
116
|
parts.append(str(self.specifier))
|
|
117
117
|
|
|
118
118
|
if self.url:
|
|
119
|
-
parts.append("@ {
|
|
119
|
+
parts.append("@ {}".format(self.url))
|
|
120
120
|
|
|
121
121
|
if self.marker:
|
|
122
|
-
parts.append("; {
|
|
122
|
+
parts.append("; {}".format(self.marker))
|
|
123
123
|
|
|
124
124
|
return "".join(parts)
|
|
125
125
|
|
|
@@ -82,7 +82,7 @@ class _IndividualSpecifier(BaseSpecifier):
|
|
|
82
82
|
def __init__(self, spec="", prereleases=None):
|
|
83
83
|
match = self._regex.search(spec)
|
|
84
84
|
if not match:
|
|
85
|
-
raise InvalidSpecifier("Invalid specifier: '{
|
|
85
|
+
raise InvalidSpecifier("Invalid specifier: '{}'".format(spec))
|
|
86
86
|
|
|
87
87
|
self._spec = (
|
|
88
88
|
match.group("operator").strip(),
|
|
@@ -106,7 +106,7 @@ class _IndividualSpecifier(BaseSpecifier):
|
|
|
106
106
|
)
|
|
107
107
|
|
|
108
108
|
def __str__(self):
|
|
109
|
-
return "{
|
|
109
|
+
return "{}{}".format(*self._spec)
|
|
110
110
|
|
|
111
111
|
def __hash__(self):
|
|
112
112
|
return hash(self._spec)
|
|
@@ -134,7 +134,7 @@ class _IndividualSpecifier(BaseSpecifier):
|
|
|
134
134
|
return self._spec != other._spec
|
|
135
135
|
|
|
136
136
|
def _get_operator(self, op):
|
|
137
|
-
return getattr(self, "_compare_{
|
|
137
|
+
return getattr(self, "_compare_{}".format(self._operators[op]))
|
|
138
138
|
|
|
139
139
|
def _coerce_version(self, version):
|
|
140
140
|
if not isinstance(version, (LegacyVersion, Version)):
|
|
@@ -79,7 +79,7 @@ class LegacyVersion(_BaseVersion):
|
|
|
79
79
|
return self._version
|
|
80
80
|
|
|
81
81
|
def __repr__(self):
|
|
82
|
-
return "<LegacyVersion({
|
|
82
|
+
return "<LegacyVersion({})>".format(repr(str(self)))
|
|
83
83
|
|
|
84
84
|
@property
|
|
85
85
|
def public(self):
|
|
@@ -199,7 +199,7 @@ class Version(_BaseVersion):
|
|
|
199
199
|
# Validate the version and parse it into pieces
|
|
200
200
|
match = self._regex.search(version)
|
|
201
201
|
if not match:
|
|
202
|
-
raise InvalidVersion("Invalid version: '{
|
|
202
|
+
raise InvalidVersion("Invalid version: '{}'".format(version))
|
|
203
203
|
|
|
204
204
|
# Store the parsed out pieces of the version
|
|
205
205
|
self._version = _Version(
|
|
@@ -231,14 +231,14 @@ class Version(_BaseVersion):
|
|
|
231
231
|
)
|
|
232
232
|
|
|
233
233
|
def __repr__(self):
|
|
234
|
-
return "<Version({
|
|
234
|
+
return "<Version({})>".format(repr(str(self)))
|
|
235
235
|
|
|
236
236
|
def __str__(self):
|
|
237
237
|
parts = []
|
|
238
238
|
|
|
239
239
|
# Epoch
|
|
240
240
|
if self._version.epoch != 0:
|
|
241
|
-
parts.append("{
|
|
241
|
+
parts.append("{}!".format(self._version.epoch))
|
|
242
242
|
|
|
243
243
|
# Release segment
|
|
244
244
|
parts.append(".".join(str(x) for x in self._version.release))
|
|
@@ -249,16 +249,16 @@ class Version(_BaseVersion):
|
|
|
249
249
|
|
|
250
250
|
# Post-release
|
|
251
251
|
if self._version.post is not None:
|
|
252
|
-
parts.append(".post{
|
|
252
|
+
parts.append(".post{}".format(self._version.post[1]))
|
|
253
253
|
|
|
254
254
|
# Development release
|
|
255
255
|
if self._version.dev is not None:
|
|
256
|
-
parts.append(".dev{
|
|
256
|
+
parts.append(".dev{}".format(self._version.dev[1]))
|
|
257
257
|
|
|
258
258
|
# Local version segment
|
|
259
259
|
if self._version.local is not None:
|
|
260
260
|
parts.append(
|
|
261
|
-
"+{
|
|
261
|
+
"+{}".format(".".join(str(x) for x in self._version.local))
|
|
262
262
|
)
|
|
263
263
|
|
|
264
264
|
return "".join(parts)
|
|
@@ -273,7 +273,7 @@ class Version(_BaseVersion):
|
|
|
273
273
|
|
|
274
274
|
# Epoch
|
|
275
275
|
if self._version.epoch != 0:
|
|
276
|
-
parts.append("{
|
|
276
|
+
parts.append("{}!".format(self._version.epoch))
|
|
277
277
|
|
|
278
278
|
# Release segment
|
|
279
279
|
parts.append(".".join(str(x) for x in self._version.release))
|