aboutsummaryrefslogtreecommitdiff
path: root/compatibility
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2018-11-20 14:52:59 -0800
committerBruce Hill <bruce@bruce-hill.com>2018-11-20 14:54:40 -0800
commit2bbc035f5dcc3ecd62724b9d1de0e7e3ea902379 (patch)
tree34a83497f7570946b6252183b3e8fe0ce2010595 /compatibility
parentf30413853063483147d941ffccc4b663b71bc943 (diff)
Simplifying the filesystem code (no longer entangled with nomsupath) and
using that to simplify the tools. Now the tools directly take lists of file paths rather than things that might go through nomsupath or directories or get processed by filetype. Use your shell for globbing stuff like `nomsu tools/test.nom core/*.nom`
Diffstat (limited to 'compatibility')
-rw-r--r--compatibility/3.5.5.6.nom6
-rw-r--r--compatibility/3.nom4
-rw-r--r--compatibility/4.11.nom5
-rw-r--r--compatibility/compatibility.nom6
4 files changed, 15 insertions, 6 deletions
diff --git a/compatibility/3.5.5.6.nom b/compatibility/3.5.5.6.nom
index de6cc1f..c428b0d 100644
--- a/compatibility/3.5.5.6.nom
+++ b/compatibility/3.5.5.6.nom
@@ -7,7 +7,5 @@ use "compatibility/compatibility.nom"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
upgrade action "traceback" to "3.5.5.6" via (..)
- -> (barf "'traceback' has been deprecated")
-
-upgrade action "traceback 1" to "3.5.5.6" via (..)
- -> (barf "'traceback 1' has been deprecated")
+ for %tree:
+ compile error at %tree "'traceback' has been deprecated."
diff --git a/compatibility/3.nom b/compatibility/3.nom
index a1ce99b..87f5c0c 100644
--- a/compatibility/3.nom
+++ b/compatibility/3.nom
@@ -10,4 +10,6 @@ upgrade action (method %spec %body) to "3" as (my action %spec %body)
upgrade action (me) to "3" as %me
upgrade action (@) to "3" as %me
upgrade action "as" to "3" via (..)
- -> (barf "Object API has changed. Use (%obj::action ...) instead of (as %obj: action ...)")
+ for %tree:
+ compile error at %tree "Object API has changed and 'as' is no longer supported." "\
+ ..Use (%obj::action ...) instead of (as %obj: action ...)"
diff --git a/compatibility/4.11.nom b/compatibility/4.11.nom
index 042da1e..8021be3 100644
--- a/compatibility/4.11.nom
+++ b/compatibility/4.11.nom
@@ -27,6 +27,11 @@ upgrade action "set" to "4.11" via (..)
%rhs.%i = %entry.2
return (SyntaxTree {type: "Action", source: %tree.source, 1: %lhs, 2: "=", 3: %rhs})
+upgrade action "1 with 2 ~>" to "4.11" via (..)
+ for %tree:
+ compile error at %tree "This method has been deprecated." "\
+ ..Perhaps this could be use %tree::map instead."
+
# Changing filesystem API:
upgrade action (for file %f in %path %body) to "4.11" as (..)
for %f in (files for %path) %body
diff --git a/compatibility/compatibility.nom b/compatibility/compatibility.nom
index 5be8eeb..4d96d89 100644
--- a/compatibility/compatibility.nom
+++ b/compatibility/compatibility.nom
@@ -92,7 +92,11 @@ externally [..]
add %k = (%v upgraded from %start_version to %end_version)
set %with_upgraded_args's metatable to (%tree's metatable)
%tree = (%UPGRADES.%ver %with_upgraded_args %end_version)
- %tree.shebang = "#!/usr/bin/env nomsu -V\%end_version\n"
+ if (%tree.version != %end_version):
+ %tree = (SyntaxTree {: for %k = %v in %tree: add %k = %v})
+ %tree.version = %end_version
+ if %tree.shebang:
+ %tree.shebang = "#!/usr/bin/env nomsu -V\%end_version\n"
return %tree
externally (%tree upgraded from %start_version) means (..)