mirror of
https://github.com/scratchfoundation/paper.js.git
synced 2024-12-29 09:22:22 -05:00
Check in first version of a CHANGELOG for the upcoming v0.10.0 and beyond.
Initiated by @bmacnaughton's push to finally keep a log. From here onwards, we shall http://keepachangelog.com/
This commit is contained in:
parent
e0d2d0d1b6
commit
b2ddb29c44
1 changed files with 73 additions and 0 deletions
73
CHANGELOG.md
Normal file
73
CHANGELOG.md
Normal file
|
@ -0,0 +1,73 @@
|
|||
# Change Log
|
||||
All notable changes to Paper.js shall be documented in this file, following common [CHANGELOG](http://keepachangelog.com/) conventions. As of `0.10.0`, Paper.js adheres to [Semantic Versioning](http://semver.org/).
|
||||
|
||||
## `0.10.0` (Unreleased)
|
||||
|
||||
### Changed
|
||||
- Significant overhaul and improvement of boolean path operations (`#unite()`,
|
||||
`#subtract()`, `#intersect()`, `#exclude()`, `#divide()`):
|
||||
- Improve handling of self-intersecting paths and non-zero fill-rules.
|
||||
- Handle operations on identical paths.
|
||||
- Improve handling of near-collinear lines.
|
||||
- Better handle self-intersecting paths that merely "touch" themselves.
|
||||
- Handle situations where all encountered intersections are part of overlaps.
|
||||
- Significant improvement of reliability of bezier fat-line clipping code in
|
||||
`#getIntersections()` and `#getCrossings()`.
|
||||
- Complete refactoring of key-event handling to increase reliably when handling
|
||||
special keys.
|
||||
- Complete refactoring of mouse-event handling on item and view, to better
|
||||
handle event bubbling and `Item#removeOn()` calls.
|
||||
- Rename `#windingRule` to `#fillRule` on `Item` and `Style`.
|
||||
- Do not replace existing named child reference on `Item#children` with new one
|
||||
when the name is identical.
|
||||
- Update internal Acorn JavaScript parser to `0.5.0`, the last small version.
|
||||
- Update QUnit to `1.20.0`.
|
||||
|
||||
### Added
|
||||
- Multiple additions to SVG export (`#exportSVG()`):
|
||||
- Support `{ precision: value }` option.
|
||||
- Support `#fillRule` through the SVG `fill-rule` attribute.
|
||||
- Support `#blendMode` through the CSS `mix-blend-mode` attribute.
|
||||
- Various additions to `#getItems()` on `Project` and `Item`:
|
||||
- Add support for `{ recursive: false }` as a way to prevent iterating over
|
||||
all children of children.
|
||||
- Add support for `{ match: function() {} }`, so the match function can be
|
||||
passed in combination with other options.
|
||||
- Add `Item#copyAttributes()` and `Item#copyContent()`, and use them in
|
||||
`Item#clone()`.
|
||||
- Add `insert` parameter to `Path#toShape()`, `Shape#toPath()`,
|
||||
`Item#rasterize()`, controlling whether the created item is inserted into the
|
||||
scene graph or not.
|
||||
- Add visual item comparison to QUnit, through rasterization and Resemble.js
|
||||
diffing.
|
||||
- Add many unit tests for known edge cases in boolean operations and curve
|
||||
intersections.
|
||||
- Start using automatic code testing through Travis CI.
|
||||
- Reach JSHint compliance and include regular linting in Travis CI tests.
|
||||
- Define code format standards in .editorconfig file
|
||||
|
||||
### Deprecated
|
||||
- Deprecate `#windingRule` on `Item` and `Style` in favor of `#fillRule`.
|
||||
|
||||
<!--
|
||||
### Removed
|
||||
-->
|
||||
|
||||
### Fixed
|
||||
- Improve hit-testing and `#contains()` checks on path with horizontal lines (#819).
|
||||
- Handle non-reversible matrices in `Item#hitTest()` (#617).
|
||||
- Fix various issues with adding and removing of segments in paths (#815).
|
||||
- Support bubbling up of `doubleclick` events on `Group` (#834).
|
||||
- Fix wrong `#key` values in key-events that do not match character (#881).
|
||||
- Fix handling of control and meta key sequences and special character handling
|
||||
(#860).
|
||||
- Handle incorrect mouse event on `ctrl-alt-del` key sequence on Chrome/Windows
|
||||
(#800).
|
||||
- Do not rasterize items if the resulting raster will be empty (#828).
|
||||
- Fix SVG serialization in JSDOM `7.0.0` and newer (#821).
|
||||
- Correctly handle gradients in SVG import on Firefox (#666).
|
||||
- Fix `Shape#strokeBounds` when `#strokeScaling` is false (#856).
|
||||
- Consistently interpret curves as straight or not-straight (#838).
|
||||
- Switch blendMode to 'lighter' in CandyCrash (#453).
|
||||
|
||||
… and many more.
|
Loading…
Reference in a new issue