on dev help sign in
Update RELEASE NOTES.md
4404cd2Eitan Chatav
RELEASE NOTES.md+38
@@ -199,6 +199,44 @@ in printSQL expr
199```
199```
200
200
201Both composite and enum types can be automatically encoded from and decoded to their equivalent Haskell types.
201Both composite and enum types can be automatically encoded from and decoded to their equivalent Haskell types.
202+And they can be dropped.
203+
204+```Haskell
205+>>> :{
206+let
207+ definition :: Definition '["mood" ::: 'Typedef ('PGenum '["sad", "ok", "happy"])] '[]
208+ definition = dropType #mood
209+:}
210+>>> printSQL definition
211+DROP TYPE "mood";
212+```
213+
214+**Additional Changes**
215+
216+Squeal 0.3 also introduces a typeclass `HasAll` similar to `Has` but for a list of aliases.
217+This makes it possible to clean up some unfortunately messy Squeal 0.2 definitions.
218+
219+```Haskell
220+-- Squeal 0.2
221+>>> unique (Column #a :* Column #b :* Nil)
222+
223+-- Squeal 0.3
224+>>> unique (#a :* #b :* Nil)
225+```
226+
227+Squeal 0.3 also adds `IsLabel` instances for `Aliased` expressions and tables as well as
228+heterogeneous lists, allowing for some more economy of code.
229+
230+```Haskell
231+-- Squeal 0.2
232+>>> select (#a `As` #a :* Nil) (from (table (#t `As` #t)))
233+
234+-- Squeal 0.3
235+>>> select #a (from (table #t))
236+```
237+
238+The above changes required major and minor changes to Squeal DSL functions.
239+Please consult the documentation.
202
240
203### Version 0.2.1 - April 7, 2018
241### Version 0.2.1 - April 7, 2018
204
242