# CHANGELOG

## v2.3.1 - Feb 27, 2019

- Add scale factor support to Matrix3 and Matrix4 (#44)
- Implement matrix3 (#41)

## v2.3.0 - Jan 29, 2019

## v2.3.0-beta.2 - Jan 24, 2019

- Test coordinate transforms between poses (#39)
- Decouple Quaternion from Euler to optimize tree-shaking (#38)
- Use ocular-dev-tools instead of local dev scripts. (#37)-

## v2.3.0-beta.1 - Jan 11, 2019

- Quaternion multiplication: b would be undefined (#35)
- Support quaternion to euler conversion (#31)
- Migrate to original gl-matrix package (#34)

## v2.2.0 - Sep 20, 2018

- Use `@babel/runtime`
- Use babel 7
- FIX: `isArray` handles typed arrays correctly

## v2.1.0 - Sep 6, 2018

- Support reconstructing Pose from serialized/deserialized props (#27)
- Fix Matrix4.setElement() when columnMajor = true.

## v2.1.0-alpha.1 - July 29, 2018

- Enable "sideEffects" in package.json to improve tree-shaking
- Delete comments in generated code
- Reuse x,y accessors in Vector

## v2.0.0 - June 25

- Rename experimental classes to use underscore (_).

## v1.2.1 - May 21, 2018

- Add `lerp` utility function

## v1.2.0 - May 4, 2018

- Add experimental Pose class

## v1.1.3 - Apr 16, 2018

- Matrix4 restore default arguments to setters


## v1.1.2 - Apr 16, 2018

- Matrix4 fixes to regressions caused by code size reduction


## v1.1.1 - Apr 16, 2018

- Remove babel-minify to restore source maps


## v1.1.0 - Apr 16, 2018

- Upgrade to babel 7 (#19)
- Add Polygon class implementing Shoelace algorithm (#18)
- Improve error messages (#17)
- Add back Euler as experimental export
- Size reduction: Shared code moved from `Vector*` to `Vector` etc.
- Size reduction: Experimental Euler class no longer exported in index.js
- Size reduction: yarn test-size command
- Size reduction: new esnext main field, with untranspiled code.
- THREE.js Compatibility - doc and mew methods (experimental)
- THREE.js Compability - add test suites, run "unmodified" on math.gl classes


## v1.0

### 1.0.4 (Mar 2, 2018)
- FIX: github url link on npmjs.org

### 1.0.3 (Jan 17, 2018)
- FIX: Matrix4.rotateAxis
- FIX: github URL

### 1.0.2 (Jan 11, 2018)
- FIX: Vector3.len throws error
- FIX: Vector3.normalize throws error
- FIX: Vector3.dot

### 1.0.1 (Jan 9, 2018)
- FIX: missing Vector3.distance



# OLDER PRERELEASES

### v1.1.0-alpha.2
- Add back Euler as experimental export

### v1.1.0-alpha.1
- Size reduction: Shared code moved from `Vector*` to `Vector` etc.
- Size reduction: Experimental Euler class no longer exported in index.js
- Size reduction: yarn test-size command
- Size reduction: new esnext main field, with untranspiled code.

- THREE.js Compatibility - doc and mew methods (experimental)
- THREE.js Compability - add test suites, run "unmodified" on math.gl classes


## v1.0

### v1.0.0-alpha.7
- Website overhaul
- Add Uber license

### 1.0.0-alpha.6
- Matrix4 transforms
- Improved print functions
- Docs (coordinates etc)

### 1.0.0-alpha.5
- SphericalCoordinates overhaul
- Test cases

### 1.0.0-alpha.5
- Add roll/pitch/yaw getters/setters to `Euler`

### 1.0.0-alpha.4
- Vector3.rotate{X,Y,Z} now takes named arguments
- Doc overhaul
- Euler and Spherical are experimental exports

### 1.0.0-alpha.3
- Add Vector3.rotate{X,Y,Z}

### 1.0.0-alpha.2
- Docs
- Fix to Vector* add, subtract, multiply, divide
- Three-shaking test example

### 1.0.0-alpha.1
- Initial source code copy from luma.gl v4.1-alpha branch

