Skip to content

Commit 843c109

Browse files
Prep 0.15.11 release (purescript#4507)
* Update changelog * Update versions to 0.15.11
1 parent 8ede652 commit 843c109

9 files changed

+59
-46
lines changed

CHANGELOG.d/feature_closed-record-update.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

CHANGELOG.d/feature_empty-fail-instances.md

Lines changed: 0 additions & 8 deletions
This file was deleted.

CHANGELOG.d/fix_vtas-record-inference.md

Lines changed: 0 additions & 14 deletions
This file was deleted.

CHANGELOG.d/fix_vtas-wildcard-inferred.md

Lines changed: 0 additions & 12 deletions
This file was deleted.

CHANGELOG.d/internal_stop-building-if-non-significant-change.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

CHANGELOG.d/internal_use-gh-for-release-artifacts.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

CHANGELOG.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,62 @@
22

33
Notable changes to this project are documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
44

5+
## 0.15.11
6+
7+
New features:
8+
9+
* Move the closed record update optimization (#4489 by @rhendric)
10+
11+
For consumers of CoreFn like alternate backends, the optimization of
12+
replacing a closed record update with an object literal has now been moved to
13+
the point of desugaring CoreFn into JS. The `ObjectUpdate` expression
14+
constructor now contains a `Maybe` field holding a list of record labels to
15+
be copied as-is, for backends that want to perform this optimization also.
16+
17+
* Allow instances that require `Fail` to be empty (#4490 by @rhendric)
18+
19+
A class instance declaration that has `Prim.TypeError.Fail` as a constraint
20+
will never be used. In light of this, such instances are now allowed to have
21+
empty bodies even if the class has members.
22+
23+
(Such instances are still allowed to declare all of their members, and it is
24+
still an error to specify some but not all members.)
25+
26+
Bugfixes:
27+
28+
* Stop emitting warnings for wildcards in Visible Type Applications (#4492 by @JordanMartinez)
29+
30+
Previously, the below usage of a wildcard (i.e. `_`) would
31+
incorrectly cause the compiler to emit a warning.
32+
33+
```purs
34+
f :: forall @a. a -> a
35+
f = identity
36+
37+
x :: { x :: Int }
38+
x = f @{ x :: _ } { x: 42 }
39+
```
40+
41+
* Infer types using VTA inside a record (#4501 by @JordanMartinez)
42+
43+
Previously, `use` would fail to compile
44+
because the `v` type variable would not be inferred
45+
to `String`. Now the below code compiles:
46+
47+
```purs
48+
reflect :: forall @t v . Reflectable t v => v
49+
reflect = reflectType (Proxy @t)
50+
51+
use :: String
52+
use = show { asdf: reflect @"asdf" }
53+
```
54+
55+
Internal:
56+
57+
* Use `gh` for release artifacts (#4493 by @rhendric)
58+
59+
* Stop triggering CI on non-code-related changes (e.g. Readme) (#4502 by @JordanMartinez)
60+
561
## 0.15.10
662

763
New features:

npm-package/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "purescript",
3-
"version": "0.15.10",
3+
"version": "0.15.11",
44
"license": "ISC",
55
"description": "PureScript wrapper that makes it available as a local dependency",
66
"author": {
@@ -43,7 +43,7 @@
4343
],
4444
"scripts": {
4545
"prepublishOnly": "node -e \"require('fs').copyFileSync('purs.bin.placeholder', 'purs.bin');\"",
46-
"postinstall": "install-purescript --purs-ver=0.15.10",
46+
"postinstall": "install-purescript --purs-ver=0.15.11",
4747
"test": "echo 'Error: no test specified' && exit 1"
4848
}
4949
}

purescript.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ cabal-version: 2.4
22

33
name: purescript
44
-- Note: don't add prerelease identifiers here! Add them in app/Version.hs and npm-package/package.json instead.
5-
version: 0.15.10
5+
version: 0.15.11
66
synopsis: PureScript Programming Language Compiler
77
description: A small strongly, statically typed programming language with expressive types, inspired by Haskell and compiling to JavaScript.
88
category: Language

0 commit comments

Comments
 (0)