CHANGES
=======

1.8.0
-----

* ci: skip macos, aarch64
* ci: updated to artifactv3
* fixtest: remove macos (will build locally)
* fixtest: putting down test failure to different compilers/libraries
* feat: expose min error (#40)
* fixtest: allow tiny differences in floating point
* feat: add vtk mesh display to zmesh meshes
* ci: add deps for py312
* ci: update test set
* install: add pyproject.toml

1.7.2
-----

* ci: rebuild for numpy 2.0
* feat: support more types of obj files

1.7.1
-----

* fix: some setup issues for py312
* build: update cibuildwheel
* fix: re-simplification works
* fix(simplify): double multiplication by resolution
* fix: avoid numpy import error
* docs: removed sentence about design flaw

1.7.0
-----

* release(1.7.0): deprecates get\_mesh in favor of get
* fix: transpose of mesh image (#38)

1.6.2
-----

* release(1.6.2): obj import accepts scientific notation
* feat: allow from\_obj to parse scientific notation (e.g. 1e-5)
* test: check broken fanc example to prevent regressions
* build: update cibuildwheel
* docs: update installation instructions

1.6.1
-----

* release(1.6.1): fixes bug in marching cubes
* docs: remove old comment
* test: check C and F meshes same
* fix(marching\_cubes): incorrect strides when array is C order
* update build system for py311

1.6.0
-----

* release(1.6.0): removed dependency on BOOST
* refactor/install: remove Boost as dependency (#37)

1.5.0
-----

* release(1.5.0): major performance enhancement to MC and simplify
* fix: remove other unnecessary always inline
* fix: remove always\_inline as it doesn't seem necessary for perf
* build: bump windows to c++17
* test: only check simplified meshes on macos
* perf+refactor: faster and cleaner marching cubes implementation
* test: remove F order simplify test
* test: add simplification test
* refactor: switch \_faces back to unordered\_map
* install: move macro declaration in front of cpp files
* perf: use robin\_hood flat hash map to improve simplification (#33)
* perf: remove seemingly unnecessary check (#32)
* docs: how much does simplification save?
* feat(Mesh): add nbytes property
* feat: add simplification benchmark
* docs: discuss why data.T

1.4.2
-----

* fix: simplification works on larger meshes (#31)

1.4.1
-----

* release(1.4.1): misspelled variable name
* fix: misspelled variable
* redesign: shrink unordered\_map when clearing data
* build: fix incorrect tox parameter

1.4.0
-----

* release(1.4.0): both C and F order are fast in marching cubes
* perf: marching cubes works at full speed on both C and F order arrays (#29)
* refactor: rename and remove some variables
* refactor: std::size\_t -> size\_t
* fix: silence additional annoying warnings
* fix: silence several annoying compile time warnings
* refactor: remove vert loops (#28)

1.3.0
-----

* release(1.3.0): even faster marching cubes
* docs: update perf numbers in comment
* test: add scikit image in very rough comparison to zmesh
* perf: much faster marching cubes (#27)
* chore: also exclude test image data from source dist
* chore: add MANIFEST.in to exclude test files

1.2.0
-----

* release(1.2.0): Faster marching cubes
* perf: faster marching cubes (#26)

1.1.0
-----

* release(1.1.0): small performance improvements
* perf: skip simplifier prep if not simplifying
* perf(int\_mesh::fill\_simplifier): reserve unordered\_map capacity
* test: add performance benchmark and some data
* docs: update performance turning guidance

1.0.0
-----

* release(1.0.0): memory improvements, closed param, voxel\_centered param
* build: update zmesh build to support py310
* feat: add option for closed meshes on the dataset boundaries (#24)
* perf: don't make extra copies of the input data unnecessarily (#23)
* feat: 0.5 voxel offset voxel\_centered parameter (#22)

0.5.1
-----

* chore: remove pypy from build
* chore: replace hyphens with underscores in setup.cfg
* docs: update capabilities of 32-bit mode
* fix: 32-bit mode supports full x range to 1023 voxels
* chore: fix tests and change badge to GHA from travis
* chore: add tests to GHA

0.5.0
-----

* release(0.5.0): support for floating point resolutions
* chore: only build py36+
* chore: try cibuildwheel with github actions
* chore: update metadata to reflect py36+ support
* fix: py39 requires new cython compilation
* Fix comma→dot in readme documentation (#17)
* fix: remove int restrictions from voxel\_resolution
* docs: add references for mesh simplification
* docs: update ChangeLog
* docs: add compute\_normals example

0.4.0
-----

* release(0.4.0): add simplify method
* docs: add simplify example
* feat: breaking simplification routine out from get\_mesh (#8)
* docs: update credits
* release: 0.3.0
* add support to read binary ply file (#10)
* release: 0.3.0
* chore: set description type to markdown
* Update README.md
* feat: obj decoder (#7)
* Update README.md
* docs: added travis badge
* release: 0.2.0
* docs: added mesh format shifting functions to examples
* test: add pytest to travis
* test: add boost to testing dependencies
* test: add .travis.yml
* feat: add simple manual cube generation test for obj and ply
* refactor: simplified ply generation code
* fix: fixed issues in obj and ply formats
* feat: add to\_obj and to\_ply functions
* refactor: make modifying Mesh class easier
* fix: bump max\_simplification\_error default to 40 from 8
* feat: add Precomputed format conversion operators
* perf: make sure division doesn't create rvalue array
* feat: return Mesh object
* Update README.md
* docs: added binary installation method

0.1.0
-----

* release: version 0.1.0
* test: added extremely basic test
* fix: prevent C++11 in CentOS docker from freaking out
* docs: add Related Projects section
* docs: PyPI badge
* docs: added Boost to docs
* fix: zmesh needs boost in the Docker
* fix: accept non-numpy arrays for anisotropy
* chore: add manylinux Dockerfile
* nova: initial commit
* Initial commit
