Skip to content

Releases: calvinmetcalf/shapefile-js

v6.2.0

30 Sep 13:54
445a610

Choose a tag to compare

Have you ever had people send you pathologically bad shapefiles where they somehow have the polygons going the wrong direction maybe even with holes inside that are also wound the wrong direction? What about bizarre shapes that are all one geometry but have polygons with holes in them that have other polygons inside them?

Me neither, but some guy in Perth Australia did so now we can handle it.

v6.0.1

15 Jul 18:26
1eaf755

Choose a tag to compare

Major redesign

  1. rewrites all logic to use DataView objects (available in node and the browser) instead of node buffers.
  2. Avoid all node specific APIs in the library and its dependencies, this includes changing to use but-unzip for unzipping stuff.
  3. no more poly filling for older browsers, this means we've gone from 234K MINIFIED to 226K UNMINIFIED (97k minified).
  4. Adds new API to pass an object containing shp and optional dbf, prj and cpg properties, allowing you to easily shapefile where the pieces were given to you individually, (it's the same, function, just accepts an object now).
  5. updates to the readme.

v5.0.2

05 Jul 14:24
06730da

Choose a tag to compare

handles relative urls in projects now

V5.0.1 Now handles shapefiles that lie to you

07 May 14:01
4af6518

Choose a tag to compare

should also work better with rollup

V5.0.0 Now with ESM modules

26 Mar 15:52
fc4fdb7

Choose a tag to compare

During a minor change to fix how inner rings were calculated I decided to modernize the code, we've upgraded to ESM modules and switched our build system to rollup. Additionally I removed lru cache as I don't think it was actually doing much and was causing some problems

be less trusting of file lengths

12 Jul 18:24
8cc8283

Choose a tag to compare

sensibly handle certain malformed files

V4.0.1 very minor breaking changes

12 Jul 17:21
165ae82

Choose a tag to compare

breaking changes

  • shp.parseZip is now returns a promise instead of being synchronous, this is due to jszip being async in version 3
  • we use modern JS features like async functions, async/await, the WHATWG URL API, if your using this in a old browser it might stop worker

other stuff

  • it will correctly work with urls that have query params on them
  • it handles some edge cases like multiple null geometries in a row better