Skip to content

Releases: GeospatialPython/pyshp

Version 2.4.0. Iteration over subranges of records. Last support for Python 2 and Python 3.8

21 Jul 12:14
Compare
Choose a tag to compare

What's Changed

  • Fix PyShp's CI, dropping actions/setup-python, running build.yml Action in Python Docker containers. by @JamesParrott in #267
  • Add spatial filtering for single points by @lgolston in #259
  • SyntaxWarning for identity checks in test_shapefile by @lgolston in #260
  • Fix recursion error when copying Record with deepcopy() by @midichef in #257
  • Added uppercase file extension compatibility for zip files by @bva-bme in #250
  • Run on workflow_dispatch (after manual trigger) by @JamesParrott in #271
  • *.py: Remove trailing empty spaces. by @schwehr in #279
  • changelog.txt: strip trailing spaces and keep as dos formatted file. by @schwehr in #280
  • build.yml: Allow all pushes to run the workflow. by @schwehr in #277
  • build.yml: Change python-versions to leave off patch version. by @schwehr in #282
  • README.md and changelog.txt: codespell by @schwehr in #283
  • Initial sorting of imports. by @schwehr in #296
  • Refactor workflows to support testing before deployment, and testing on Windows and MacOS. by @JamesParrott in #300
  • Run Pylint
  • Add ruff format hook to pre-commit config
  • Combine iter records range into iter records based on work by @lguez in #310

New Contributors

Full Changelog: 2.3.1...2.4.0

PyShp 2.3.1

27 Jul 19:50
Compare
Choose a tag to compare

Bug fixes:

  • Fix recently introduced issue where Reader/Writer closes file-like objects provided by user (#244)

PyShp 2.3.0

30 Apr 08:54
Compare
Choose a tag to compare

New Features:

  • Added support for pathlib and path-like shapefile filepaths (@mwtoews).
  • Allow reading individual file extensions via filepaths.

Improvements:

  • Simplified setup and deployment (@mwtoews)
  • Faster shape access when missing shx file
  • Switch to named logger (see #240)

Bug fixes:

  • More robust handling of corrupt shapefiles (fixes #235)
  • Fix errors when writing to individual file-handles (fixes #237)
  • Revert previous decision to enforce geojson output ring orientation (detailed explanation at SciTools/cartopy#2012)
  • Fix test issues in environments without network access (@sebastic, @musicinmybrain).

PyShp 2.2.0

02 Feb 17:10
57e77b5
Compare
Choose a tag to compare

New Features:

  • Read shapefiles directly from zipfiles.
  • Read shapefiles directly from urls.
  • Allow fast extraction of only a subset of dbf fields through a fields arg.
  • Allow fast filtering which shapes to read from the file through a bbox arg.

Improvements:

  • More examples and restructuring of README.
  • More informative Shape to geojson warnings (see #219).
  • Shape object information when calling repr().
  • Faster ring orientation checks, enforce geojson output ring orientation.

Bug fixes:

  • Remove null-padding at end of some record character fields.
  • Fix dbf writing error when the number of record list or dict entries didn't match the number of fields.
  • Handle rare garbage collection issue after deepcopy (mattijn/topojson#120)
  • Fix bug where records and shapes would be assigned incorrect record number (@karanrn)
  • Fix typos in docs (@timgates)

PyShp 2.1.3

14 Jan 14:07
Compare
Choose a tag to compare

Bug fixes:

  • Fix recent bug in geojson hole-in-polygon checking (see #205)
  • Misc fixes to allow geo interface dump to json (eg dates as strings)
  • Handle additional dbf date null values, and return faulty dates as unicode (see #187)
  • Add writer target typecheck
  • Fix bugs to allow reading shp/shx/dbf separately
  • Allow delayed shapefile loading by passing no args
  • Fix error with writing empty z/m shapefile (@mcuprjak)
  • Fix signed_area() so ignores z/m coords
  • Enforce writing the 11th field name character as null-terminator (only first 10 are used)
  • Minor README fixes
  • Added more tests

PyShp 2.1.2

10 Sep 22:01
059cef1
Compare
Choose a tag to compare

Bug fixes:

  • Fix issue where warnings.simplefilter('always') changes global warning behavior [see #203]

PyShp 2.1.1

09 Sep 20:24
Compare
Choose a tag to compare

Improvements:

  • Handle shapes with no coords and represent as geojson with no coords (GeoJSON null-equivalent)
  • Expand testing to Python 3.6, 3.7, 3.8 and PyPy; drop 3.3 and 3.4
  • Added pytest testing

Bug fixes:

  • Fix incorrect geo interface handling of multipolygons with complex exterior-hole relations
  • Enforce shapefile requirement of at least one field, to avoid writing invalid shapefiles
  • Fix Reader geo interface including DeletionFlag field in feature properties
  • Fix polygons not being auto closed, which was accidentally dropped
  • Fix error for null geometries in feature geojson
  • Misc docstring cleanup

PyShp 2.1.0

15 Feb 20:11
Compare
Choose a tag to compare

New Features:

  • Added back read/write support for unicode field names.
  • Improved Record representation
  • More support for geojson on Reader, ShapeRecord, ShapeRecords, and shapes()

Bug fixes:

  • Fixed error when reading optional m-values
  • Fixed Record attribute autocomplete in Python 3
  • Misc readme cleanup

PyShp 2.0.1

07 Nov 05:58
Compare
Choose a tag to compare

Fix pip install setup.py README decoding error.

PyShp 2.0.0

05 Nov 04:17
d8754f8
Compare
Choose a tag to compare

Major new version. See README or changelog.txt.