1## Change log
2
3### v0.11.0 (2018-07-05)
4  - [tessellation] Move the VertexId representation from u16 to u32.
5  - [tessellation] Fix a circle tessellation bug with large tolerance values.
6  - [tessellation] Add a fast path for ellipses when the radii are equal.
7  - [algorithms] Added the lyon_algorithms crate.
8  - [algorithms] Implement a hatching pattern fill algorithm.
9  - [algorithms] Implement a dotted pattern fill algorithm.
10  - [algorithms] Implement path bounding rectangles.
11  - [algorithms] Implement rectangle fitting transform computation.
12  - [algorithms] Move path walking to the algorithms crate.
13  - [geom] Implement callback based iteration over the monotonic parts of an arc.
14  - [geom] Add LineSegment::set_length.
15  - [geom] Fix an elliptic arc bug.
16  - [geom] Implement precise elliptic arc bounding rectangle.
17  - [cli] Add support for custom formatting in the tessellate command.
18  - [cli] Allow changing the background in the show command.
19  - [cli] Automatically position the view in the show command.
20  - [examples] Add a simple SVG rendering example.
21  - [misc] Update usvg and euclid dependencies.
22
23### v0.10.0 (2018-02-28)
24  - [geom] Fix several arc bugs.
25  - [geom] Implement a much better cubic to quadratic bézier approximation.
26  - [geom] Implement iterating over the monotonic parts of a bézier curve.
27  - [geom] A few API changes.
28  - [lyon] Make serde optional for all crates ("serialization" feature flags).
29  - [tessellation] Implement better error handling.
30  - [extra] Revive the toy software rasterizer.
31
32### v0.9.1 (2018-01-14)
33  - [tessellation] Fix missing vertices when normals are disabled.
34  - [tess2] Add an alternative tessellator based on libtess2.
35  - [cli] Expose the tess2 tessellator in the app.
36
37### v0.9.0 (2018-01-08)
38  - [lyon] Simplify the carte structure:
39    - Rename the `lyon_bezier` crate into `lyon_geom`.
40    - Merge `lyon_path_iterator` and `lyon_path_builder` into the `lyon_path` crate.
41    - Remove the `lyon_core` crate.
42  - [geom] Implement new bézier intersection methods.
43  - [geom] Make geometrix types generic over float types.
44  - [geom] Rename `Vec2` into `Vector`.
45  - [geom] Implement new cubic to quadratic bézier approximations.
46  - [path] Support arcs in `PathEvent`.
47  - [path] Implement walking along a path at constant speed.
48  - [tessellation] Fix some fill tessellation bugs found by the fuzzer.
49  - [tessellation] Use trait objects instead of generics when using `GeometryBuilder` in the API.
50  - [tessellation] Fix incorrect rounded rectangle tessellation.
51  - [svg] Bump svgparser dependecy to 0.6.x.
52
53### v0.8.8 (2018-01-14)
54  - [tessellation] Fix missing vertices when normals are disabled.
55  - [tessellation] Fix incorrect rounded rectangle tessellation.
56
57### v0.8.5 (2017-11-05)
58  - [tessellation] Fix several fill tessellation bugs found by the fuzzer.
59  - [tessellation] Implement Vertex normals in the fill tessellator.
60  - [tessellation] Make the triangle winding order consistent.
61  - [tessellation] Implement stroke miter limit.
62  - [tessellation] Fix incorrect tessellation in fill_convex_polyline.
63  - [tessellation] Add constants to FillOptions and StrokeOptions.
64  - [bezier] Fix some precision issues in the curve flattening code.
65  - [cli] Add an interactive path viewer.
66  - [cli] Improve the interface of the command line app.
67  - [examples] Update the glutin dependency.
68
69### v0.8.4 (2017-10-18)
70  - [tessellation] Fix several fill tessellation bugs found by the fuzzer.
71  - [tessellation] Fix a stroke tessellation bug.
72  - [bezier] Fix a flattening bug.
73  - [cli] Add a simple fuzzer.
74
75### v0.8.2 (2017-10-07)
76  - [tessellation] Fix a floating point precision bug in the fill tessellator with almost-overlapping edges. All tests are now passing.
77
78### v0.8.0 (2017-09-29)
79  - [tessellation] Performance improvements to the fill and stroke path tessellators.
80  - [tessellation] Stroke path tessellator bug fixes.
81  - [tessellation] Fix a bug in the tessellation of circle strokes.
82  - [tessellation] Implement bevel line joins in the stroke tessellator.
83  - [tessellation] Default to bevel joins when the miter length exceeds the limit.
84  - [path_iterator] Rename some iterators to comply with the rust API guidelines.
85  - [tessellation] Minor API changes.
86
87### v0.7.3 (2017-08-20)
88  - [tessellation] Fill tessellator bug fix (#150).
89  - [tessellation] Import tests from Mapbox's earcut tessellator.
90  - [svg] Add path builder that writes a string using the SVG path syntax.
91
92### v0.7.1 (2017-08-02)
93  - [bezier] Fix broken conversion between arc and quadratic béziers.
94  - [tessellation] Fix bug in circle tessellation when center is not the origin.
95  - [tessellation] (re-)implement `basic_shapes::fill_ellipse`.
96  - [tessellation] Implement `basic_shapes::stroke_ellipse`.
97  - [tessellation] Minor doc improvements.
98
99### v0.7.0 (2017-07-31)
100  - [tessellation] Various API improvements.
101  - [tessellation] Implement `basic_shapes::fill_polyline`.
102  - [tessellation] Implement round stroke caps.
103  - [tessellation] Fix bug causing generated stroke width to be half of what it should be.
104
105### v 0.6.2 (2017-07-28)
106  - [tessellation] Improve numerical stability in the stroke tessellator.
107
108### v 0.6.1 (2017-07-08)
109  - [bezier] Intersection between a bézier segment and a line or line segment.
110  - [bezier] Bézier flattening bug fixes.
111  - [tessellation] Implement a stroke tessellator for rounded rectangles.
112  - [tessellation] Bug fixes in the fill tessellator.
113  - [tessellation] Bug fixes in the stroke tessellator.
114
115### v 0.6.0 (2017-07-04)
116  - [svg] Add a helper to build paths from the SVG path syntax.
117  - [bezier] Allow applying transforms to all geometric types.
118  - [bezier] Added Triangle, Line, LineSegment and monotone bézier types.
119  - [bezier] Compute the x/y extremeums of bézier segments.
120  - [bezier] Compute the conservative and minimum bounding rects of bézier segments.
121  - [tessellation] Support for round line joins in the stroke tessellator.
122  - [tessellation] The stroke tessellator applies stroke width by default (optional).
123  - [tessellation] fill_convext_polyline now properly compute normals.
124  - [tessellation] Implement a stroke tessellator for circles.
125  - [tessellation] Arcs to bézier convertion refactored, bugs fixed.
126  - [tessellation] Measure distance along strokes.
127  - [tessellation] Bug fixes in the fill tessellator.
128  - [tessellation] Bug fixes in the stroke tessellator.
129  - [lyon] Bump euclid dependency to 0.15.1.
130  - [cli] The command line tool can be set to find minimal test cases on errors.
131
132### v 0.5.0 (2017-05-23)
133  - [tessellation] Implement fill tessellation for rounded rectangles.
134  - [tessellation] Implement fill tessellation for circles.
135  - [svg] Bump svgparser dependency from 0.0.3 t0 0.4.0.
136  - [lyon] Bump euclid dependency from 0.10.1 to 0.13.
137  - [bezier] Fix a bug (issue #19) in the cubic bézier flattening code.
138  - [bezier] Expose a method to find the inflection points of a cubic bézier curve.
139  - [bezier] Expose a method to compute the length of bézier segments.
140  - [doc] Improve the crate documentations.
141  - [doc] Add CHANGLOG.md
142  - [examples] rename the gfx_logo example into gfx_advanced and add a simpler gfx_basic example.
143
144### v0.4.1 (2017-05-02)
145  - [doc] Make the documentation easier to use in docs.rs.
146  - [tessellation] Work around a floating point precision issue in the stroke tessellator.
147
148### v0.4.0 (2017-02-28)
149  - [tessellation] Allow applying stroke width outside of the tessellator.
150  - [examples] Improve the gfx_logo example.
151  - [tests] Setup travis ci.
152  - [tessellation] Improve the performance of the fill tessellator.
153  - [svg] add the lyon_svg crate.
154
155### v0.3.2 (2016-09-22)
156  - [doc] Improve the documentation.
157
158### v0.3.1 (2016-09-21)
159  - [doc] Add a lot of documentation.
160
161...