summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathon Fernyhough2020-07-13 20:22:53 +0100
committerJonathon Fernyhough2020-07-13 20:22:53 +0100
commit45cffdf55011050fd0be32d6d4a36f517375a3a0 (patch)
treecc7e98e7e8b475340816450597e02bf33921d3af
parent1d09dd970982c76a89fe46764ae81ff55ab8be42 (diff)
downloadaur-45cffdf55011050fd0be32d6d4a36f517375a3a0.tar.gz
Upstream 1.13
-rw-r--r--.SRCINFO7
-rw-r--r--PKGBUILD4
-rw-r--r--lily.changelog92
3 files changed, 98 insertions, 5 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 9b23aeefa49a..f68446fdb10e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,8 +1,9 @@
pkgbase = lily
pkgdesc = An interpreted language with a focus on expressiveness and type safety
- pkgver = 1.10
+ pkgver = 1.13
pkgrel = 1
url = http://lily-lang.org/
+ changelog = lily.changelog
arch = x86_64
arch = i686
arch = aarch64
@@ -10,8 +11,8 @@ pkgbase = lily
license = MIT
makedepends = cmake>=3.0.0
depends = glibc
- source = lily-1.10.tar.gz::https://gitlab.com/FascinatedBox/lily/-/archive/v1.10/lily-v1.10.tar.gz
- sha256sums = d2643d3bfb999ab167c43f16488b59589d5746b8080b052f7f7025ef9367efac
+ source = lily-1.13.tar.gz::https://gitlab.com/FascinatedBox/lily/-/archive/v1.13/lily-v1.13.tar.gz
+ sha256sums = 9a29df8c759cc97bc9ffd3f76f7fcf774bf8a8c03af126ddf850bc32e1bdf57d
pkgname = lily
diff --git a/PKGBUILD b/PKGBUILD
index 1ad2471c5882..9d47a7c00ed1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jonathon Fernyhough <jonathon_at manjaro_org>
pkgname=lily
-pkgver=1.10
+pkgver=1.13
pkgrel=1
pkgdesc='An interpreted language with a focus on expressiveness and type safety'
arch=('x86_64' 'i686' 'aarch64' 'armv7h')
@@ -10,7 +10,7 @@ license=(MIT)
depends=(glibc)
makedepends=('cmake>=3.0.0')
source=($pkgname-$pkgver.tar.gz::https://gitlab.com/FascinatedBox/lily/-/archive/v$pkgver/$pkgname-v$pkgver.tar.gz)
-sha256sums=('d2643d3bfb999ab167c43f16488b59589d5746b8080b052f7f7025ef9367efac')
+sha256sums=('9a29df8c759cc97bc9ffd3f76f7fcf774bf8a8c03af126ddf850bc32e1bdf57d')
changelog=lily.changelog
_update_changelog() {
diff --git a/lily.changelog b/lily.changelog
index 7141041181ca..28d193fda30b 100644
--- a/lily.changelog
+++ b/lily.changelog
@@ -1,3 +1,95 @@
+Version 1.13 (2020-7-10)
+========================
+
+The interpreter now supports a hidden manifest mode. In manifest mode, symbols
+definitions are scanned, but no statements are allowed. This mode has allowed
+the creation of a new bindgen and docgen. The new docgen is able to generate
+documentation for both foreign and native libraries, the latter of which was
+impossible under the old parsekit-based docgen.
+
+This is a small release because most of the work involved the new bindgen and
+docgen.
+
+Version 1.12 (2020-4-10)
+========================
+
+What's new:
+
+* Block handling is no longer recursive. This paves the way for writing a
+ secondary parsing loop for manifest files.
+
+* The tables that lexer and parser rely on are now autogenerated by Lily scripts
+ in the `scripts` directory.
+
+* Parser's dynaload functions went through a rewrite to make them more organized
+ and to remove stale comments.
+
+Changes:
+
+* Static methods are no longer able to directly call class methods. They must
+ now call the class method statically (use `classname.methodname`). This was
+ done for consistency, and is unfortunately a breaking change (#457).
+
+Fixes:
+
+* The scoop type now narrows correctly, making disassemble work again (#456).
+
+* Several unlikely but possible crashes in expressions have been fixed (#458).
+
+Version 1.11 (2020-1-10)
+========================
+
+What's new:
+
+* Marktest, a tool for verifying Lily code in markdown files, was created. Many
+ of the pages on the Lily website are built from markdown and have Lily example
+ code inside. Using marktest, several errors in the example were found and
+ corrected.
+
+* After much thought, the introspection library has been added to the
+ interpreter's prelude. This was done to prevent introspection from
+ accidentally breaking if internals change.
+
+* The lexer went through a substantial rewrite to address the cruft that had
+ built up over time. The rewrite resulted in discovering and fixing several
+ bugs that had gone unnoticed.
+
+* The interpreter's rewind mechanism was put through a stress test. The stress
+ test was built by extracting every failed parse call from the testing suite
+ and running each of them against the same interpreter. This again resulted in
+ discovering several bugs.
+
+* Identifier lookup was rewritten to make it easier to follow. The rewrite
+ resulted in uncovering more bugs.
+
+Changes:
+
+* The interpreter now returns an empty string when the C api is used to ask for
+ the last error message of a valid parse (#439).
+
+* Numeric rescanning, used to fix `x -y` into `x - y`, has been fixed to account
+ for exponents and decimals (#449).
+
+* When importing a slashed path (ex: `import "abc/def"`), the interpreter will
+ no longer check predefined modules (#387). Additionally, those paths will no
+ longer be looked for in the packages directory (#388).
+
+* List and Hash literals no longer complain about mismatched types if the first
+ element has a type that disagrees with inference (#410).
+
+Fixes:
+
+* Shorthand class properties now have a name collision check done against other
+ class properties (#447).
+
+* Lambdas were accidentally allowing token gluing using block comments:
+ `var v = (|| v#[]#a#[]#r w = 10 )` (#450).
+
+* Docblocks were checking every line for preceding non-whitespace, except for
+ the first. The first line is now checked as well (#451).
+
+* Template mode no longer allows `<?lil` to slip by as a valid header (#448).
+
Version 1.10 (2019-10-10)
=========================