Releases: purescript/purescript
v0.15.16-4
This is an automated preview release. Get the latest stable release here.
v0.15.16-3
This is an automated preview release. Get the latest stable release here.
v0.15.16-2
This is an automated preview release. Get the latest stable release here.
v0.15.16-1
This is an automated preview release. Get the latest stable release here.
v0.15.16-0
This is an automated preview release. Get the latest stable release here.
v0.15.15
New features:
-
Add
--exclude-file
to more commands (#4530 by @JordanMartinez)This CLI arg was added to the
compile
command, but not to other commands
where such a usage would be relevant (e.g.docs
,repl
,graph
, andide
). -
Enable passing source input globs via
--source-globs-file path/to/file
(#4530 by @JordanMartinez)--source-globs-file
support has been added to the following commands:
compile
,docs
,graph
,ide
, andpublish
.Due to a shell character limitation on Windows where a large list of
source globs cannot be passed (e.g.purs compile ... glob1000/src/**/*.purs
),
source globs can be stored in a file according to the format below
and the file is passed in instead viapurs compile ---source-globs-file path/to/file
.# Lines starting with '#' are comments. # Blank lines are ignored. # Otherwise, every line is a glob. .spago/foo-1.2.3/src/**/*.purs .spago/bar-2.3.3/src/**/*.purs my-package/src/**/*.purs my-package/tests/**/*.purs
--source-globs-file
is an optional argument. Mixing it with the normal source globs is fine.
Assuming.spago/source-globs
containssrc/**/*.purs
, each command below will use
the same input globs:purs compile src/**/*.purs purs compile --source-globs .spago/source-globs purs compile --source-globs .spago/source-globs src/**/*.purs
In the command...
purs compile inputGlob1 inputGlob2 --source-globs-file fileWithMoreGlobs --exclude-files excludeGlob1
the files passed to the compiler are: all the files found by
inputGlob1
,inputGlob2
, and all the globs listed infileWithMoreGlobs
minus the files found byexcludeGlob1
.
v0.15.15-0
This is an automated preview release. Get the latest stable release here.
v0.15.14
Bugfixes:
-
Fix a compilation memory regression for very large files (#4521 by @mjrussell)
When compiling a a very large file (>12K lines)
the CSE pass could balloon memory and result in increased
compilation times.This fix uses a strict Map instead of a lazy Map to avoid
building up unnecessary thunks during the optimization pass. -
Fix two space leaks while compiling many modules (#4517 by @MonoidMusician)
The first would interleave compilation of too many modules at once, which
would increase memory usage, especially for single threaded builds with
+RTS -N1 -RTS
. Now the number of concurrent modules is limited to
the number of threads available to the
GHC runtime system.The second would hold on to memory from modules that compiled with warnings
until the end of the build when the warnings were printed and the memory freed.
This is now fixed with additionalNFData
instances.
v0.15.14-2
This is an automated preview release. Get the latest stable release here.
v0.15.14-1
This is an automated preview release. Get the latest stable release here.