0.11.0.0
Breaking changes (😱!!!):
-
Remove
psc-package
-related commands (#423, #425)Since we are approaching a stable release and
spago
feature set is a superset ofpsc-package
ones,
from this release we do not support the commands to interop withpsc-package
:
psc-package-local-setup
,psc-package-insdhall
andpsc-package-clean
commands. -
Start sharing the
output
folder in monorepos, to reduce build duplication (#377, #422)This is a breaking change because your build might stop working if you were relying on the
output
folder being in a certain place, and if you were passing--output
as an option topurs
.
However, you can pass the--no-share-output
flag to disable this behavior -
Build static binaries for Linux (#437, 427)
This should fix the dynamic-library-compatibility problems on some distributions.
It should work as well as the old dynamic binary, but it's theoretically a breaking change since
some behaviours might be different. -
Move all logging to
stderr
(#256, #475, #476, #486)All "business output" (e.g.
spago sources
) will stay onstdout
, so in practice everything
should be fine, but this is theoretically a breaking change since someone might be depending
on the output we had so far.
New features:
-
add support for
spago build
andspago run
with alternate backends (#355, #426, #452, #435)E.g: add the key
backend = "psgo"
inspago.dhall
to compile/run withpsgo
-
add new command
spago path
that returns the paths used in the project.E.g.
spago path output
returns the output path so that it can be shared with tools such aspurs-loader
. (#463) -
spago docs
now displays a link to the generated docs'index.html
, and opens them in the browser when passed the--open
flag (#379, #421) -
spago init
has new--no-comments
flag which skips adding tutorial comments to the generatedspago.dhall
andpackages.dhall
files (#417, #428) -
spago verify-set
now compiles everything, to detect duplicate module names. This can be disabled with--no-check-modules-unique
(#438) -
spago install purescript-XYZ
will now strippurescript-
prefix and install XYZ (if it exists in package set) instead of just failing with a warning (#367, #443) -
spago run
now allows to pipestdin
to your running project (#488, #490)
Bugfixes:
- Fix Ctrl-C handling in REPL when using NPM installation on Windows (#493, #483)
- Fix confusing warning when trying to
spago install
a package already present in project dependencies list (#436, #439) - Warn (but don't error) when trying to
--watch
missing directories (#406, #420, #447, #448) - Do not watch files in
.spago
folder when running with--watch
(#430, #446) - The
--clear-screen
flag (usable e.g. withspago build --watch
) now also resets cursor position, so the rebuild message always appears at top left of the screen (#465, #466) - Allow additional fields in the config for local packages (#470)
- Fix
--config
option: get the correct paths when config file is in another directory (#478, #484)
Other improvements:
- Tests: speed up test suite by replacing some end-to-end tests with unit/property tests (#445, #440)
- Tests: update instructions to run tests (#449)
- Tests: always run test suites with UTF8 encoding (#482)
- Docs: various improvements to README (#432, #457, #464, #487)
- Docs: add "getting started" guides for Parcel, Webpack and Nodemon (#456, #461, #473)
- Errors: improve cache skipping error (#453, #480, #481)
- Errors: add a nice error message when trying to run
spago test
with no test modules (#489, #383, #492) - Refactor: fix
hlint
warnings (#450) - Refactor: rewrite Curator for moar maintainability (#458, #419)
- Deps: update to Dhall 1.27 and Purs 0.13.4 (#469)
- Deps: revert to GHC 8.4.4 and LTS-12 (#479)
- CI: fix release code (#494, #495)