1## generic-lens-2.1.0.0 (2021-01-25)
2- Bump to generic-lens-core-2.1.0.0
3
4## generic-lens-2.0.0.0 (2020-02-11)
5- Drop support for GHC < 8.4
6- Better inference for `field'`
7- Param traversal now properly recurses deeply (#88)
8- Reorganise internals (see generic-lens-core)
9
10### Breaking API changes:
11- `HasTypesUsing` now takes 4 params
12- Removed `HasConstraints` traversal
13
14## generic-lens-1.2.0.1
15- Give HasAny/AsAny the same VTA behavior on 8.6 and 8.8 (Ryan Scott)
16
17## generic-lens-1.2.0.0
18- Add `HasTypesUsing` and `HasTypesCustom` for custom traversals (Lysxia)
19- Improve type errors when no Generic instance is defined
20- `types` now supports Text by default
21
22### Breaking API changes
23- `HasType` now includes a reflexive case so that every type 'contains' itself (Matt Parsons)
24- `AsSubtype` and `Subtype` now include a reflexive case so that every type is a subtype of itself
25
26## generic-lens-1.1.0.0
27- Fix regression in type inference for polymorphic optics
28- Add `HasField0`, `HasPosition0`, `AsConstructor0`, `HasField_`, `HasPositon_`, and `AsConstructor_` (Lysxia)
29- `types` now supports Data.Word and Data.Int (Lysxia)
30- Add `Wrapped` iso for newtypes (Isaac Elliott)
31- Expose internals through Data.GenericLens.Internal
32- Add labels for prisms (Daniel Winograd-Cort)
33
34## generic-lens-1.0.0.2
35- Fix compile-time performance regression
36
37## generic-lens-1.0.0.1
38- Remove dump-core dependency
39- Relax upper bound on criterion (#42)
40
41## generic-lens-1.0.0.0
42- Traversals (types, param, constraints)
43- Prisms are now optimal too
44- Monomorphic versions of lenses and prisms also included
45
46### Breaking API changes
47- `projectSub` now returns `Maybe sub` instead of `Either sup sub` (#21)
48
49## generic-lens-0.5.1.0
50- Infer input type from result type (#25)
51- Allow changing of multiple type parameters (#24)
52- Allow changing of type parameters that have kinds other than `*` (#23)
53- Fix error message in subtype lens
54
55## generic-lens-0.5.0.0
56
57- Lenses and prisms are now type-changing.
58- More informative error messages
59- More readable type signatures in type errors and when using `:t`
60- Use `doctest`
61- Include examples in Haddock
62
63### Breaking API changes
64
65- The type parameters of the classes have been changed to accommodate
66  the type-changing update:
67
68  `class HasField name a s` -> `class HasField name s t a b` etc.
69
70  Accordingly, `field :: Lens' s a` -> `field :: Lens s t a b`
71