Skip to content

Commit

Permalink
Merge pull request #410 from MatthewFluet/20200817-release
Browse files Browse the repository at this point in the history
20200817 release
  • Loading branch information
MatthewFluet authored Aug 17, 2020
2 parents 0dd27f0 + 16f1ff8 commit 4ba3671
Show file tree
Hide file tree
Showing 11 changed files with 136 additions and 28 deletions.
10 changes: 8 additions & 2 deletions CHANGELOG.adoc
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
= CHANGELOG

== Version YYYYMMDD
== Version 20200817

Here are the changes from version 20200722 to version YYYYMMDD.
Here are the changes from version 20200722 to version 20200817

=== Summary

* Compiler
** Fixed bug in `RssaShrink` optimization that would result in an unbound
variable and an internal compiler error.
* Other.
** Fixes for Solaris and MinGW platforms.

=== Details

* 2020-07-30
Expand Down
5 changes: 5 additions & 0 deletions doc/guide/src/Bugs20200817.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Bugs20200817
============

Here are the known bugs in <:Release20200817:MLton 20200817>, listed
in reverse chronological order of date reported.
2 changes: 2 additions & 0 deletions doc/guide/src/Home.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ a lexer generator, a parser generator, and a profiler.

== What's new? ==

* 20200817: Please try out our latest release, <:Release20200817:MLton 20200817>.

* 20200722: Please try out our latest release, <:Release20200722:MLton 20200722>.

* 20180207: Please try out our latest release, <:Release20180207:MLton 20180207>.
Expand Down
2 changes: 1 addition & 1 deletion doc/guide/src/Release20200722.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Release20200722

Here you can download the latest public release of MLton, version 20200722.

== Changes since the last public release ==
== Changes since <:Release20180207:MLton 20180207> ==

* Compiler.
** Added expert `-pi-style {default|npi|pic|pie}` and
Expand Down
95 changes: 95 additions & 0 deletions doc/guide/src/Release20200817.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
Release20200817
===============

Here you can download the latest public release of MLton, version 20200817.

== Changes since <:Release20200722:MLton 20200722> ==

* Compiler.
** Fixed bug in `RssaShrink` optimization that would result in an unbound
variable and an internal compiler error.
* Other.
** Fixes for Solaris and MinGW platforms.

For a complete list of changes and bug fixes since
<:Release20180207:>, see the
<!ViewGitFile(mlton,on-20200817-release,CHANGELOG.adoc)> and
<:Bugs20180207:>.

== Changes since <:Release20180207:MLton 20180207> ==

* Compiler.
** Added expert `-pi-style {default|npi|pic|pie}` and
`-native-pic {false|true}` options, which can be used to override a
target-determined default.
** Fix a number of instances of excessive live data during
compilation.
** Disable `Zone` SSA optimization pass by default; the `Zone` pass
is known to not be safe-for-space.
** Statically allocate and initialize some global objects.
** Many updates and improvements to C and LLVM codegens.
** Add new `BounceVars` RSSA optimization pass to split the live
ranges of RSSA variables.
** Improve `RssaShrink` optimization.
** Add support for alternate globalization strategies in
`ConstantPropagation`.
** Strengthen `Useless` optimization with respect to a number of
primitives.
** Add new `DuplicateGlobals` and `SplitTypes` SSA optimization
passes.
** Introduce new `Overflow`-checking primitives and remove old
`Overflow`-checking primitives and special-case code required (e.g.,
`Arith` transfers in IRs) to support them.
** Add parsers for XML, SXML, SSA, and SSA2 IRs.
* Runtime.
** Detect and report incompatible use of ASLR/PIE on `load-world`.
** Added support for RISC-V architecture.
* Language.
* Libraries.
** Basis Library.
*** Change `OS.IO.poll` to not be restarted when interrupted by a
signal. (This is consistent with `Socket.select`.)
*** Add `MLton.sizeAll: unit -> IntInf.int` that returns the size
of reachable live data.
*** Change type of `MLton.size` from `'a -> int` to
`'a -> IntInf.int`, because with 64-bit systems, the size of a
single object can exceed that representable by a signed 32-bit
integer.
** Other libraries.
*** Updated: ckit library, MLLPT library, MLRISC library, SML/NJ library
* Tools.
* Other.
** Updates to simplify porting MLton.
** Support parallel build (i.e., `make -j`). This mainly supports
platforms/packagers that use a parallel `make` by default; it does
not obtain significant build speedups.
** Various updates to `Makefile`-s. See `Makefile.config` for
common and user-customizable configuration.
** Characterize MLton-LICENSE as an instance of the Historical
Permission Notice and Disclaimer (HPND) license, rather than
BSD-style.

For a complete list of changes and bug fixes since
<:Release20180207:>, see the
<!ViewGitFile(mlton,on-20200817-release,CHANGELOG.adoc)> and
<:Bugs20180207:>.

== 20200817 binary packages ==

* AMD64 (aka "x86-64" or "x64")
** https://sourceforge.net/projects/mlton/files/mlton/20200817/mlton-20200817-1.amd64-darwin-19.6.gmp-homebrew.tgz[Darwin (.tgz)] 19.6 (Mac OS X Catalina), dynamically linked against <:GMP:> in `/usr/local/lib` (suitable for https://brew.sh/[Homebrew] install of <:GMP:>)
** https://sourceforge.net/projects/mlton/files/mlton/20200817/mlton-20200817-1.amd64-darwin-19.6.gmp-static.tgz[Darwin (.tgz)] 19.6 (Mac OS X Catalina), statically linked against <:GMP:> (but requires <:GMP:> for generated executables)
** https://sourceforge.net/projects/mlton/files/mlton/20200817/mlton-20200817-1.amd64-darwin-17.7.gmp-homebrew.tgz[Darwin (.tgz)] 17.7 (Mac OS X High Sierra), dynamically linked against <:GMP:> in `/usr/local/lib` (suitable for https://brew.sh/[Homebrew] install of <:GMP:>)
** https://sourceforge.net/projects/mlton/files/mlton/20200817/mlton-20200817-1.amd64-darwin-17.7.gmp-static.tgz[Darwin (.tgz)] 17.7 (Mac OS X High Sierra), statically linked against <:GMP:> (but requires <:GMP:> for generated executables)
** https://sourceforge.net/projects/mlton/files/mlton/20200817/mlton-20200817-1.amd64-linux.tgz[Linux], glibc 2.27 (Ubuntu 18.04)

== 20200817 source packages ==

* https://sourceforge.net/projects/mlton/files/mlton/20200817/mlton-20200817.src.tgz[mlton-20200817.src.tgz]

== Also see ==

* <:Bugs20200817:>
* http://www.mlton.org/guide/20200817/[MLton Guide (20200817)].
+
A snapshot of the MLton website at the time of release.
40 changes: 20 additions & 20 deletions doc/guide/src/ReleaseChecklist.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@ ReleaseChecklist
git clone http://github.com/MLton/mlton mlton.git
cd mlton.git
git checkout master
git tag -a -m "Tagging YYYYMMDD release" on-YYYYMMDD-release master
git push origin on-YYYYMMDD-release
git tag -a -m "Tagging ${YYYYMMDD} release" on-${YYYYMMDD}-release master
git push origin on-${YYYYMMDD}-release
----

== Packaging ==
Expand All @@ -75,25 +75,25 @@ sftp> quit
----
git clone http://github.com/MLton/mlton mlton
cd mlton
git checkout on-YYYYMMDD-release
make MLTON_VERSION=YYYYMMDD source-release
git checkout on-${YYYYMMDD}-release
make MLTON_VERSION=${YYYYMMDD} source-release
cd ..
----
+
or
+
----
wget https://github.com/MLton/mlton/archive/on-YYYYMMDD-release.tar.gz
tar xzvf on-YYYYMMDD-release.tar.gz
cd mlton-on-YYYYMMDD-release
make MLTON_VERSION=YYYYMMDD source-release
wget https://github.com/MLton/mlton/archive/on-${YYYYMMDD}-release.tar.gz
tar xzvf on-${YYYYMMDD}-release.tar.gz
cd mlton-on-${YYYYMMDD}-release
make MLTON_VERSION=${YYYYMMDD} source-release
cd ..
----

* Upload `mlton-YYYYMMDD.src.tgz`:
+
-----
scp mlton-YYYYMMDD.src.tgz user@frs.sourceforge.net:/home/frs/project/mlton/mlton/YYYYMMDD/
scp mlton-${YYYYMMDD}.src.tgz user@frs.sourceforge.net:/home/frs/project/mlton/mlton/${YYYYMMDD}/
-----

* Update *ReleaseYYYYMMDD* with `mlton-YYYYMMDD.src.tgz` link.
Expand All @@ -103,16 +103,16 @@ scp mlton-YYYYMMDD.src.tgz user@frs.sourceforge.net:/home/frs/project/mlton/mlto
* Build and create `mlton-YYYYMMDD-1.ARCH-OS.tgz`:
+
----
wget http://sourceforge.net/projects/mlton/files/mlton/YYYYMMDD/mlton-YYYYMMDD.src.tgz
tar xzvf mlton-YYYYMMDD.src.tgz
cd mlton-YYYYMMDD
wget http://sourceforge.net/projects/mlton/files/mlton/${YYYYMMDD}/mlton-${YYYYMMDD}.src.tgz
tar xzvf mlton-${YYYYMMDD}.src.tgz
cd mlton-${YYYYMMDD}
make binary-release
----

* Upload `mlton-YYYYMMDD-1.ARCH-OS.tgz`:
+
-----
scp mlton-YYYYMMDD-1.ARCH-OS.tgz user@frs.sourceforge.net:/home/frs/project/mlton/mlton/YYYYMMDD/
scp mlton-${YYYYMMDD}-1.ARCH-OS.tgz user@frs.sourceforge.net:/home/frs/project/mlton/mlton/${YYYYMMDD}/
-----

* Update *ReleaseYYYYMMDD* with `mlton-YYYYMMDD-1.ARCH-OS.tgz` link.
Expand All @@ -123,14 +123,14 @@ scp mlton-YYYYMMDD-1.ARCH-OS.tgz user@frs.sourceforge.net:/home/frs/project/mlto
* Shell commands:
+
----
wget http://sourceforge.net/projects/mlton/files/mlton/YYYYMMDD/mlton-YYYYMMDD.src.tgz
tar xzvf mlton-YYYYMMDD.src.tgz
cd mlton-YYYYMMDD
wget http://sourceforge.net/projects/mlton/files/mlton/${YYYYMMDD}/mlton-${YYYYMMDD}.src.tgz
tar xzvf mlton-${YYYYMMDD}.src.tgz
cd mlton-${YYYYMMDD}
cd doc/guide
cp -prf localhost YYYYMMDD
tar czvf guide-YYYYMMDD.tgz YYYYMMDD
rsync -avzP --delete -e ssh YYYYMMDD user@web.sourceforge.net:/home/project-web/mlton/htdocs/guide/
rsync -avzP --delete -e ssh guide-YYYYMMDD.tgz user@web.sourceforge.net:/home/project-web/mlton/htdocs/guide/
cp -prf localhost ${YYYYMMDD}
tar czvf guide-${YYYYMMDD}.tgz ${YYYYMMDD}
rsync -avzP --delete -e ssh ${YYYYMMDD} user@web.sourceforge.net:/home/project-web/mlton/htdocs/guide/
rsync -avzP --delete -e ssh guide-${YYYYMMDD}.tgz user@web.sourceforge.net:/home/project-web/mlton/htdocs/guide/
----

== Announce release ==
Expand Down
2 changes: 1 addition & 1 deletion man/mllex.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH mllex 1 "July 22, 2020"
.TH mllex 1 "August 17, 2020"
.SH NAME
\fBmllex\fP \- lexer generator for use with Standard ML and MLton
.SH SYNOPSIS
Expand Down
2 changes: 1 addition & 1 deletion man/mlnlffigen.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH mlnlffigen 1 "July 22, 2020"
.TH mlnlffigen 1 "August 17, 2020"
.SH NAME
\fBmlnlffigen\fP \- glue-code generator for use with the new "NLFFI" foreign function interface for Standard ML and MLton
.SH SYNOPSIS
Expand Down
2 changes: 1 addition & 1 deletion man/mlprof.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH mlprof 1 "July 22, 2020"
.TH mlprof 1 "August 17, 2020"
.SH NAME
\fBmlprof\fP \- display profiling information for a MLton-compiled executable
.SH SYNOPSIS
Expand Down
2 changes: 1 addition & 1 deletion man/mlton.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH mlton 1 "July 22, 2020"
.TH mlton 1 "August 17, 2020"
.SH NAME
\fBmlton\fP \- whole-program compiler for the Standard ML (SML) programming
language
Expand Down
2 changes: 1 addition & 1 deletion man/mlyacc.1
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.TH mlyacc 1 "July 22, 2020"
.TH mlyacc 1 "August 17, 2020"
.SH NAME
\fBmlyacc\fP \- parser generator for use with Standard ML and MLton
.SH SYNOPSIS
Expand Down

0 comments on commit 4ba3671

Please sign in to comment.