aboutsummaryrefslogtreecommitdiff
path: root/stdlib
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib')
-rw-r--r--stdlib/commands.md5
-rw-r--r--stdlib/project.clj4
-rw-r--r--stdlib/project.lux16
-rw-r--r--stdlib/source/library/lux/tool/compiler/language/lux/version.lux2
-rw-r--r--stdlib/source/library/lux/tool/compiler/meta/packager/jvm.lux6
-rw-r--r--stdlib/source/program/aedifex/artifact/snapshot/version/value.lux14
-rw-r--r--stdlib/source/program/aedifex/command/build.lux86
-rw-r--r--stdlib/source/program/aedifex/command/deps.lux62
-rw-r--r--stdlib/source/program/aedifex/dependency/deployment.lux80
-rw-r--r--stdlib/source/program/aedifex/dependency/resolution.lux117
-rw-r--r--stdlib/source/program/aedifex/metadata/artifact.lux82
-rw-r--r--stdlib/source/program/aedifex/metadata/snapshot.lux12
-rw-r--r--stdlib/source/program/aedifex/pom.lux61
-rw-r--r--stdlib/source/program/aedifex/repository/remote.lux6
-rw-r--r--stdlib/source/test/aedifex/dependency/deployment.lux104
-rw-r--r--stdlib/source/test/aedifex/repository/remote.lux82
16 files changed, 374 insertions, 365 deletions
diff --git a/stdlib/commands.md b/stdlib/commands.md
index a2329b8f0..27d476e1b 100644
--- a/stdlib/commands.md
+++ b/stdlib/commands.md
@@ -101,6 +101,11 @@ cd ~/lux/stdlib/ \
&& lein with-profile aedifex lux auto build
cd ~/lux/stdlib/ \
+&& lein clean \
+&& lein with-profile aedifex lux build \
+&& mv target/program.jar aedifex.jar
+
+cd ~/lux/stdlib/ \
&& lux clean \
&& lux with jvm with aedifex auto build
diff --git a/stdlib/project.clj b/stdlib/project.clj
index 64cb8d3b7..9cc874af8 100644
--- a/stdlib/project.clj
+++ b/stdlib/project.clj
@@ -1,4 +1,4 @@
-(def version "0.6.0")
+(def version "0.6.2")
(def repo "https://github.com/LuxLang/lux")
(def sonatype-releases "https://oss.sonatype.org/service/local/staging/deploy/maven2/")
(def sonatype-snapshots "https://oss.sonatype.org/content/repositories/snapshots/")
@@ -7,7 +7,7 @@
:description "Standard library for the Lux programming language."
:url ~repo
- :license {:name "Lux License v0.1.1"
+ :license {:name "Lux License v0.1.2"
:url ~(str repo "/blob/master/license.txt")}
:plugins [[com.github.luxlang/lein-luxc ~version]]
:deploy-repositories [["releases" {:url ~sonatype-releases :creds :gpg}]
diff --git a/stdlib/project.lux b/stdlib/project.lux
index a5a2df7d7..496763b00 100644
--- a/stdlib/project.lux
+++ b/stdlib/project.lux
@@ -2,12 +2,12 @@
[... An optional identity for the project.
... It can also be specified or overriden in a non-default profile.
... This will be the name given to the project when installed/deployed as a dependency.
- "identity" ["com.github.luxlang" "stdlib" "0.6.0"]
+ "identity" ["com.github.luxlang" "stdlib" "0.6.2"]
... Every piece of information, and the whole "info" bundle, are optional.
"info" ["url" "https://github.com/LuxLang/lux"
"scm" "https://github.com/LuxLang/lux.git"
- "licenses" [["name" "Lux License v0.1.1"
+ "licenses" [["name" "Lux License v0.1.2"
"url" "https://github.com/LuxLang/lux/blob/master/license.txt"
"type" "repo"]]
... "organization" [["name" "Lux Foundation"
@@ -41,36 +41,36 @@
... The following are alternative profiles to use in various situations.
"jvm"
[... "compiler" specifies the dependency to fetch and use as the compiler.
- "compiler" ["com.github.luxlang" "lux-jvm" "0.6.0" "jar"]
+ "compiler" ["com.github.luxlang" "lux-jvm" "0.6.2" "jar"]
... "dependencies" is an optional list of dependencies to fetch.
... The dependencies have the same shape as when specifying the compiler.
... When omitting the packaging format of the dependency, "tar" will be assumed.
... "dependencies" [["org.ow2.asm" "asm-all" "5.0.3" "jar"]
- ... ["com.github.luxlang" "stdlib" "0.6.0"]]
+ ... ["com.github.luxlang" "stdlib" "0.6.2"]]
... The OS command to use when running JVM tests. The default is described below.
... "java" ["java" "-jar"]
]
"js"
- ["compiler" ["com.github.luxlang" "lux-js" "0.6.0" "js"]
+ ["compiler" ["com.github.luxlang" "lux-js" "0.6.2" "js"]
... The OS command to use when running JS tests. The default is described below.
... "js" ["node" "--stack_size=8192"]
]
"python"
- ["compiler" ["com.github.luxlang" "lux-python" "0.6.0" "jar"]
+ ["compiler" ["com.github.luxlang" "lux-python" "0.6.2" "jar"]
... The OS command to use when running Python tests. The default is described below.
... "python" ["python3"]
]
"lua"
- ["compiler" ["com.github.luxlang" "lux-lua" "0.6.0" "jar"]
+ ["compiler" ["com.github.luxlang" "lux-lua" "0.6.2" "jar"]
... The OS command to use when running Lua tests. The default is described below.
... "lua" ["lua"]
]
"ruby"
- ["compiler" ["com.github.luxlang" "lux-ruby" "0.6.0" "jar"]
+ ["compiler" ["com.github.luxlang" "lux-ruby" "0.6.2" "jar"]
... The OS command to use when running Ruby tests. The default is described below.
... "ruby" ["ruby"]
]
diff --git a/stdlib/source/library/lux/tool/compiler/language/lux/version.lux b/stdlib/source/library/lux/tool/compiler/language/lux/version.lux
index de36f2803..733188447 100644
--- a/stdlib/source/library/lux/tool/compiler/language/lux/version.lux
+++ b/stdlib/source/library/lux/tool/compiler/language/lux/version.lux
@@ -6,4 +6,4 @@
(def: .public version
Version
- 00,06,00)
+ 00,06,02)
diff --git a/stdlib/source/library/lux/tool/compiler/meta/packager/jvm.lux b/stdlib/source/library/lux/tool/compiler/meta/packager/jvm.lux
index fc1642ba2..9d1fca9af 100644
--- a/stdlib/source/library/lux/tool/compiler/meta/packager/jvm.lux
+++ b/stdlib/source/library/lux/tool/compiler/meta/packager/jvm.lux
@@ -222,8 +222,10 @@
(let [entry_path (java/util/zip/ZipEntry::getName entry)
entry_size (java/util/zip/ZipEntry::getSize entry)]
(if (not (or (java/util/zip/ZipEntry::isDirectory entry)
- (text.starts_with? "META-INF/maven/" entry_path)
- (text.starts_with? "META-INF/leiningen/" entry_path)))
+ (or (text.starts_with? "META-INF/maven/" entry_path)
+ (text.starts_with? "META-INF/leiningen/" entry_path))
+ (or (text.ends_with? ".SF" entry_path)
+ (text.ends_with? ".DSA" entry_path))))
(case (java/util/jar/JarOutputStream::putNextEntry (java/util/jar/JarEntry::new entry_path) sink)
{try.#Failure error}
(again entries
diff --git a/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux b/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux
index 9ce004ab5..f01c01522 100644
--- a/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux
+++ b/stdlib/source/program/aedifex/artifact/snapshot/version/value.lux
@@ -29,16 +29,16 @@
(def: .public snapshot
"SNAPSHOT")
-(def: .public (format (^open "[0]"))
+(def: .public (format (^open "/[0]"))
(%.Format Value)
- (case snapshot
+ (case /#snapshot
{///.#Local}
- version
+ /#version
{///.#Remote stamp}
- (let [(^open "[0]") stamp]
+ (let [(^open "/[0]") stamp]
(%.format (text.replaced ..snapshot
- (///time.format time)
- version)
+ (///time.format /#time)
+ /#version)
..separator
- (%.nat build)))))
+ (%.nat /#build)))))
diff --git a/stdlib/source/program/aedifex/command/build.lux b/stdlib/source/program/aedifex/command/build.lux
index 8ad4c15f6..9fbc34542 100644
--- a/stdlib/source/program/aedifex/command/build.lux
+++ b/stdlib/source/program/aedifex/command/build.lux
@@ -1,46 +1,46 @@
(.using
- [library
- [lux "+"
- ["[0]" ffi {"+" import:}]
- [abstract
- [order {"+" Order}]
- [monad {"+" do}]]
- [control
- ["[0]" try {"+" Try}]
- ["[0]" exception {"+" exception:}]
- ["[0]" io {"+" IO}]
- [concurrency
- ["[0]" async {"+" Async} ("[1]#[0]" monad)]]]
- [data
- ["[0]" product]
- ["[0]" text ("[1]#[0]" order)
- ["%" format {"+" format}]]
- [collection
- ["[0]" list ("[1]#[0]" functor mix)]
- ["[0]" dictionary {"+" Dictionary}]
- ["[0]" set]]]
- [math
- [number
- ["n" nat]
- ["i" int]]]
- [world
- ["[0]" program {"+" Program}]
- ["[0]" file {"+" Path}]
- ["[0]" shell {"+" Exit Process Shell}]
- ["[0]" console {"+" Console}]
- [net
- ["[0]" uri]]]]]
- ["[0]" /// "_"
- ["[1]" profile]
- ["[1][0]" action]
- ["[1][0]" command {"+" Command}]
- ["[1][0]" local]
- ["[1][0]" repository]
- ["[1][0]" runtime]
- ["[1][0]" dependency {"+" Dependency}
- ["[1]/[0]" resolution {"+" Resolution}]]
- ["[1][0]" artifact {"+" Group Name Version Artifact}
- ["[1]/[0]" type]]])
+ [library
+ [lux "*"
+ ["[0]" ffi {"+" import:}]
+ [abstract
+ [order {"+" Order}]
+ [monad {"+" do}]]
+ [control
+ ["[0]" try {"+" Try}]
+ ["[0]" exception {"+" exception:}]
+ ["[0]" io {"+" IO}]
+ [concurrency
+ ["[0]" async {"+" Async} ("[1]#[0]" monad)]]]
+ [data
+ ["[0]" product]
+ ["[0]" text ("[1]#[0]" order)
+ ["%" format {"+" format}]]
+ [collection
+ ["[0]" list ("[1]#[0]" functor mix)]
+ ["[0]" dictionary {"+" Dictionary}]
+ ["[0]" set]]]
+ [math
+ [number
+ ["n" nat]
+ ["i" int]]]
+ [world
+ ["[0]" program {"+" Program}]
+ ["[0]" file {"+" Path}]
+ ["[0]" shell {"+" Exit Process Shell}]
+ ["[0]" console {"+" Console}]
+ [net
+ ["[0]" uri]]]]]
+ ["[0]" /// "_"
+ ["[1]" profile]
+ ["[1][0]" action]
+ ["[1][0]" command {"+" Command}]
+ ["[1][0]" local]
+ ["[1][0]" repository]
+ ["[1][0]" runtime]
+ ["[1][0]" dependency {"+" Dependency}
+ ["[1]/[0]" resolution {"+" Resolution}]]
+ ["[1][0]" artifact {"+" Group Name Version Artifact}
+ ["[1]/[0]" type]]])
(type: Finder
(-> Resolution (Maybe Dependency)))
@@ -222,7 +222,7 @@
read!))]
[log_output! read]
- [log_error! error]
+ [log_error! fail]
)
(import: java/lang/System
diff --git a/stdlib/source/program/aedifex/command/deps.lux b/stdlib/source/program/aedifex/command/deps.lux
index a8602cd3f..4e32a73b1 100644
--- a/stdlib/source/program/aedifex/command/deps.lux
+++ b/stdlib/source/program/aedifex/command/deps.lux
@@ -1,35 +1,35 @@
(.using
- [library
- [lux "*"
- [abstract
- [monad {"+" do}]]
- [control
- ["[0]" exception]
- [concurrency
- ["[0]" async {"+" Async}]]]
- [data
- [collection
- ["[0]" set {"+" Set}]
- ["[0]" list ("[1]#[0]" mix)]
- ["[0]" dictionary]]
- [text
- ["%" format]]]
- [world
- [net {"+" URL}]
- [program {"+" Program}]
- ["[0]" file]
- ["[0]" console {"+" Console}]]]]
- ["[0]" // "_"
- ["[1][0]" clean]
- ["/[1]" // "_"
- [command {"+" Command}]
- [repository {"+" Repository}]
- ["[1]" profile]
- ["[1][0]" action {"+" Action}]
- ["[1][0]" artifact {"+" Artifact}]
- ["[1][0]" dependency {"+" Dependency}
- ["[1]/[0]" resolution {"+" Resolution}]
- ["[1]/[0]" deployment]]]])
+ [library
+ [lux "*"
+ [abstract
+ [monad {"+" do}]]
+ [control
+ ["[0]" exception]
+ [concurrency
+ ["[0]" async {"+" Async}]]]
+ [data
+ [collection
+ ["[0]" set {"+" Set}]
+ ["[0]" list ("[1]#[0]" mix)]
+ ["[0]" dictionary]]
+ [text
+ ["%" format]]]
+ [world
+ [net {"+" URL}]
+ [program {"+" Program}]
+ ["[0]" file]
+ ["[0]" console {"+" Console}]]]]
+ ["[0]" // "_"
+ ["[1][0]" clean]
+ ["/[1]" // "_"
+ [command {"+" Command}]
+ [repository {"+" Repository}]
+ ["[1]" profile]
+ ["[1][0]" action {"+" Action}]
+ ["[1][0]" artifact {"+" Artifact}]
+ ["[1][0]" dependency {"+" Dependency}
+ ["[1]/[0]" resolution {"+" Resolution}]
+ ["[1]/[0]" deployment]]]])
(def: format
(%.Format Dependency)
diff --git a/stdlib/source/program/aedifex/dependency/deployment.lux b/stdlib/source/program/aedifex/dependency/deployment.lux
index 318475c26..7098505d4 100644
--- a/stdlib/source/program/aedifex/dependency/deployment.lux
+++ b/stdlib/source/program/aedifex/dependency/deployment.lux
@@ -1,44 +1,44 @@
(.using
- [library
- [lux "*"
- [abstract
- [codec {"+" Codec}]
- ["[0]" monad {"+" do}]]
- [control
- ["[0]" try {"+" Try}]
- [concurrency
- ["[0]" async {"+" Async}]]]
- [data
- [binary {"+" Binary}]
- ["[0]" product]
- [text
- ["%" format {"+" format}]
- [encoding
- ["[0]" utf8]]]
- [collection
- ["[0]" dictionary]
- ["[0]" set {"+" Set}]
- ["[0]" list ("[1]#[0]" monoid)]]]
- [time
- ["[0]" instant {"+" Instant}]]]]
- ["[0]" /// "_"
- [repository {"+" Repository}]
- ["[1][0]" hash {"+" Hash}]
- ["[1][0]" package {"+" Package}]
- ["[1][0]" artifact {"+" Artifact}
- ["[1]/[0]" time]
- ["[1]/[0]" type]
- ["[1]/[0]" extension {"+" Extension}]
- ["[1]/[0]" versioning]
- ["[1]/[0]" snapshot
- ["[1]/[0]" version
- ["[1]/[0]" value]]]]
- ["[1][0]" metadata "_"
- ["[1]/[0]" artifact]
- ["[1]/[0]" snapshot {"+" Metadata}]]
- ["[1][0]" dependency {"+" Dependency}
- [resolution {"+" Resolution}]
- ["[1]/[0]" status {"+" Status}]]])
+ [library
+ [lux "*"
+ [abstract
+ [codec {"+" Codec}]
+ ["[0]" monad {"+" do}]]
+ [control
+ ["[0]" try {"+" Try}]
+ [concurrency
+ ["[0]" async {"+" Async}]]]
+ [data
+ [binary {"+" Binary}]
+ ["[0]" product]
+ [text
+ ["%" format {"+" format}]
+ [encoding
+ ["[0]" utf8]]]
+ [collection
+ ["[0]" dictionary]
+ ["[0]" set {"+" Set}]
+ ["[0]" list ("[1]#[0]" monoid)]]]
+ [time
+ ["[0]" instant {"+" Instant}]]]]
+ ["[0]" /// "_"
+ [repository {"+" Repository}]
+ ["[1][0]" hash {"+" Hash}]
+ ["[1][0]" package {"+" Package}]
+ ["[1][0]" artifact {"+" Artifact}
+ ["[1]/[0]" time]
+ ["[1]/[0]" type]
+ ["[1]/[0]" extension {"+" Extension}]
+ ["[1]/[0]" versioning]
+ ["[1]/[0]" snapshot
+ ["[1]/[0]" version
+ ["[1]/[0]" value]]]]
+ ["[1][0]" metadata "_"
+ ["[1]/[0]" artifact]
+ ["[1]/[0]" snapshot {"+" Metadata}]]
+ ["[1][0]" dependency {"+" Dependency}
+ [resolution {"+" Resolution}]
+ ["[1]/[0]" status {"+" Status}]]])
(def: (with_status repository version_template [artifact type] [data status])
(-> (Repository Async) ///artifact.Version Dependency [Binary Status] (Async (Try Any)))
diff --git a/stdlib/source/program/aedifex/dependency/resolution.lux b/stdlib/source/program/aedifex/dependency/resolution.lux
index 4b0aee23d..ffea5d458 100644
--- a/stdlib/source/program/aedifex/dependency/resolution.lux
+++ b/stdlib/source/program/aedifex/dependency/resolution.lux
@@ -1,63 +1,62 @@
(.using
- [library
- [lux "*"
- ["@" target]
- ["[0]" debug]
- ["[0]" ffi {"+" import:}]
- [abstract
- [codec {"+" Codec}]
- [equivalence {"+" Equivalence}]
- [monad {"+" do}]
- ["[0]" predicate {"+" Predicate}]]
- [control
- ["[0]" maybe]
- ["[0]" try {"+" Try} ("[1]#[0]" functor)]
- ["[0]" exception {"+" Exception exception:}]
- ["<>" parser
- ["<[0]>" xml {"+" Parser}]]
- [concurrency
- ["[0]" async {"+" Async}]]]
- [data
- ["[0]" binary {"+" Binary}]
- ["[0]" name]
- ["[0]" text
- ["%" format {"+" format}]
- [encoding
- ["[0]" utf8]]]
- [format
- ["[0]" xml {"+" Tag XML}]]
- [collection
- ["[0]" dictionary {"+" Dictionary}]
- ["[0]" set]
- ["[0]" list ("[1]#[0]" functor monoid)]]]
- [math
- [number
- ["n" nat]
- ["[0]" i64]]]
- [world
- [console {"+" Console}]
- [net {"+" URL}
- ["[0]" uri]
- ["[0]" http "_"
- ["[1]" client]]]]]]
- ["[0]" // {"+" Dependency}
- ["[1][0]" status {"+" Status}]
- ["/[1]" // "_"
- ["/" profile]
- ["[1][0]" hash {"+" Hash SHA-1 MD5}]
- ["[1][0]" pom]
- ["[1][0]" package {"+" Package}]
- ["[1][0]" artifact {"+" Version Artifact}
- ["[1]/[0]" extension {"+" Extension}]
- ["[1]/[0]" versioning]
- ["[0]" snapshot
- [version
- ["[0]" value]]]]
- ["[1][0]" repository {"+" Repository}
- ["[1]/[0]" remote {"+" Address}]
- ["[1]/[0]" origin {"+" Origin}]]
- ["[1][0]" metadata
- ["[1]/[0]" snapshot]]]])
+ [library
+ [lux "*"
+ ["@" target]
+ ["[0]" debug]
+ ["[0]" ffi {"+" import:}]
+ [abstract
+ [codec {"+" Codec}]
+ [equivalence {"+" Equivalence}]
+ [monad {"+" do}]
+ ["[0]" predicate {"+" Predicate}]]
+ [control
+ ["[0]" maybe]
+ ["[0]" try {"+" Try} ("[1]#[0]" functor)]
+ ["[0]" exception {"+" Exception exception:}]
+ ["<>" parser
+ ["<[0]>" xml {"+" Parser}]]
+ [concurrency
+ ["[0]" async {"+" Async}]]]
+ [data
+ ["[0]" binary {"+" Binary}]
+ ["[0]" text
+ ["%" format {"+" format}]
+ [encoding
+ ["[0]" utf8]]]
+ [format
+ ["[0]" xml {"+" Tag XML}]]
+ [collection
+ ["[0]" dictionary {"+" Dictionary}]
+ ["[0]" set]
+ ["[0]" list ("[1]#[0]" functor monoid)]]]
+ [math
+ [number
+ ["n" nat]
+ ["[0]" i64]]]
+ [world
+ [console {"+" Console}]
+ [net {"+" URL}
+ ["[0]" uri]
+ ["[0]" http "_"
+ ["[1]" client]]]]]]
+ ["[0]" // {"+" Dependency}
+ ["[1][0]" status {"+" Status}]
+ ["/[1]" // "_"
+ ["/" profile]
+ ["[1][0]" hash {"+" Hash SHA-1 MD5}]
+ ["[1][0]" pom]
+ ["[1][0]" package {"+" Package}]
+ ["[1][0]" artifact {"+" Version Artifact}
+ ["[1]/[0]" extension {"+" Extension}]
+ ["[1]/[0]" versioning]
+ ["[0]" snapshot
+ [version
+ ["[0]" value]]]]
+ ["[1][0]" repository {"+" Repository}
+ ["[1]/[0]" remote {"+" Address}]
+ ["[1]/[0]" origin {"+" Origin}]]
+ ["[1][0]" metadata
+ ["[1]/[0]" snapshot]]]])
(template [<name>]
[(exception: .public (<name> [artifact Artifact
diff --git a/stdlib/source/program/aedifex/metadata/artifact.lux b/stdlib/source/program/aedifex/metadata/artifact.lux
index cebd4a826..27448f154 100644
--- a/stdlib/source/program/aedifex/metadata/artifact.lux
+++ b/stdlib/source/program/aedifex/metadata/artifact.lux
@@ -1,42 +1,42 @@
(.using
- [library
- [lux "*"
- [abstract
- [monad {"+" do}]
- [equivalence {"+" Equivalence}]]
- [control
- [pipe {"+" do>}]
- ["[0]" try {"+" Try}]
- ["<>" parser
- ["<[0]>" xml {"+" Parser}]
- ["<[0]>" text]]
- [concurrency
- ["[0]" async {"+" Async}]]]
- [data
- ["[0]" product]
- ["[0]" text
- ["%" format]
- [encoding
- ["[0]" utf8]]]
- [format
- ["[0]" xml {"+" XML}]]
- [collection
- ["[0]" list ("[1]#[0]" functor)]]]
- [math
- [number
- ["n" nat]]]
- ["[0]" time {"+" Time}
- ["[0]" instant {"+" Instant}]
- ["[0]" date {"+" Date}]
- ["[0]" year]
- ["[0]" month]]
- [world
- [net
- ["[0]" uri {"+" URI}]]]]]
- ["[0]" //
- ["/[1]" // "_"
- [repository {"+" Repository}]
- ["[1][0]" artifact {"+" Group Name Version Artifact}]]])
+ [library
+ [lux "*"
+ [abstract
+ [monad {"+" do}]
+ [equivalence {"+" Equivalence}]]
+ [control
+ [pipe {"+" do>}]
+ ["[0]" try {"+" Try}]
+ ["<>" parser
+ ["<[0]>" xml {"+" Parser}]
+ ["<[0]>" text]]
+ [concurrency
+ ["[0]" async {"+" Async}]]]
+ [data
+ ["[0]" product]
+ ["[0]" text
+ ["%" format]
+ [encoding
+ ["[0]" utf8]]]
+ [format
+ ["[0]" xml {"+" XML}]]
+ [collection
+ ["[0]" list ("[1]#[0]" functor)]]]
+ [math
+ [number
+ ["n" nat]]]
+ ["[0]" time {"+" Time}
+ ["[0]" instant {"+" Instant}]
+ ["[0]" date {"+" Date}]
+ ["[0]" year]
+ ["[0]" month]]
+ [world
+ [net
+ ["[0]" uri {"+" URI}]]]]]
+ ["[0]" //
+ ["/[1]" // "_"
+ [repository {"+" Repository}]
+ ["[1][0]" artifact {"+" Group Name Version Artifact}]]])
(type: .public Metadata
(Record
@@ -149,6 +149,8 @@
(<xml>.somewhere (..text ..<group>))
(<xml>.somewhere (..text ..<name>))
(<| (<xml>.node ..<versioning>)
+ ... Handle any ignorable tag.
+ (<>.before (<>.some <xml>.any))
($_ <>.and
(<| <xml>.somewhere
(<xml>.node ..<versions>)
@@ -178,8 +180,8 @@
(do async.monad
[project (# repository download (..uri artifact))]
(case project
- {try.#Success project}
- (in (|> project
+ {try.#Success binary_metadata}
+ (in (|> binary_metadata
(do> try.monad
[(# utf8.codec decoded)]
[(# xml.codec decoded)]
diff --git a/stdlib/source/program/aedifex/metadata/snapshot.lux b/stdlib/source/program/aedifex/metadata/snapshot.lux
index 7ac0b1c0e..487b91b8e 100644
--- a/stdlib/source/program/aedifex/metadata/snapshot.lux
+++ b/stdlib/source/program/aedifex/metadata/snapshot.lux
@@ -69,15 +69,15 @@
[version_format Version ..<version> (|>)]
)
-(def: .public (format (^open "[0]"))
+(def: .public (format (^open "/[0]"))
(-> Metadata XML)
- (let [(^open "[0]") #artifact]
+ (let [(^open "//[0]") /#artifact]
{xml.#Node ..<metadata>
xml.attributes
- (list (..group_format group)
- (..name_format name)
- (..version_format version)
- (///artifact/versioning.format #versioning))}))
+ (list (..group_format //#group)
+ (..name_format //#name)
+ (..version_format //#version)
+ (///artifact/versioning.format /#versioning))}))
(def: (text tag)
(-> xml.Tag (Parser Text))
diff --git a/stdlib/source/program/aedifex/pom.lux b/stdlib/source/program/aedifex/pom.lux
index d1294987b..26dd35348 100644
--- a/stdlib/source/program/aedifex/pom.lux
+++ b/stdlib/source/program/aedifex/pom.lux
@@ -1,33 +1,34 @@
(.using
- [library
- [lux "*"
- [abstract
- [monad {"+" do}]]
- [control
- [pipe {"+" case>}]
- ["[0]" maybe ("[1]#[0]" functor)]
- ["[0]" try {"+" Try}]
- ["[0]" exception]
- ["<>" parser
- ["<[0]>" xml {"+" Parser}]]]
- [data
- ["[0]" name]
- ["[0]" text]
- [format
- ["_" xml {"+" Tag XML}]]
- [collection
- ["[0]" list ("[1]#[0]" monoid functor mix)]
- ["[0]" set]
- ["[0]" dictionary]]]
- [world
- ["[0]" file]]]]
- ["[0]" // "_"
- ["/" profile]
- ["[1][0]" dependency {"+" Dependency}]
- [repository
- [remote {"+" Address}]]
- ["[1][0]" artifact {"+" Artifact}
- ["[1]/[0]" type]]])
+ [library
+ [lux "*"
+ [abstract
+ [monad {"+" do}]]
+ [control
+ [pipe {"+" case>}]
+ ["[0]" maybe ("[1]#[0]" functor)]
+ ["[0]" try {"+" Try}]
+ ["[0]" exception]
+ ["<>" parser
+ ["<[0]>" xml {"+" Parser}]]]
+ [data
+ ["[0]" text]
+ [format
+ ["_" xml {"+" Tag XML}]]
+ [collection
+ ["[0]" list ("[1]#[0]" monoid functor mix)]
+ ["[0]" set]
+ ["[0]" dictionary]]]
+ [meta
+ ["[0]" symbol]]
+ [world
+ ["[0]" file]]]]
+ ["[0]" // "_"
+ ["/" profile]
+ ["[1][0]" dependency {"+" Dependency}]
+ [repository
+ [remote {"+" Address}]]
+ ["[1][0]" artifact {"+" Artifact}
+ ["[1]/[0]" type]]])
... https://maven.apache.org/pom.html
@@ -165,7 +166,7 @@
(def: (dependency_parser own_version parent_version)
(-> Text Text (Parser Dependency))
(do [! <>.monad]
- [properties (# ! each (dictionary.of_list name.hash)
+ [properties (# ! each (dictionary.of_list symbol.hash)
(<| (<xml>.node ["" ..dependency_tag])
(<>.some ..property_parser)))]
(<| <>.lifted
diff --git a/stdlib/source/program/aedifex/repository/remote.lux b/stdlib/source/program/aedifex/repository/remote.lux
index 32851902f..9e50e71a6 100644
--- a/stdlib/source/program/aedifex/repository/remote.lux
+++ b/stdlib/source/program/aedifex/repository/remote.lux
@@ -69,11 +69,11 @@
http))]
(case status
(^ (static http/status.ok))
- (# ! each product.right ((value@ #@http.body message) {.#None}))
+ (# ! each product.right ((value@ @http.#body message) {.#None}))
_
(do !
- [_ ((value@ #@http.body message) {.#Some 0})]
+ [_ ((value@ @http.#body message) {.#Some 0})]
(# io.monad in (exception.except ..download_failure [(format address uri) status]))))))
(def: (upload uri content)
@@ -89,7 +89,7 @@
..base_headers)))
{.#Some content}
http))
- _ ((value@ #@http.body message) {.#Some 0})]
+ _ ((value@ @http.#body message) {.#Some 0})]
(case status
(^ (static http/status.created))
(in [])
diff --git a/stdlib/source/test/aedifex/dependency/deployment.lux b/stdlib/source/test/aedifex/dependency/deployment.lux
index ef6d7a4e7..4a3946a53 100644
--- a/stdlib/source/test/aedifex/dependency/deployment.lux
+++ b/stdlib/source/test/aedifex/dependency/deployment.lux
@@ -1,59 +1,59 @@
(.using
- [library
- [lux "*"
- ["_" test {"+" Test}]
- [abstract
- [monad {"+" do}]
- ["[0]" hash {"+" Hash}]]
- [control
- ["[0]" io {"+" IO}]
- ["[0]" maybe ("[1]#[0]" functor)]
- ["[0]" try ("[1]#[0]" functor)]
- [concurrency
- ["[0]" atom {"+" Atom}]
- ["[0]" async]]]
- [data
- ["[0]" product]
- ["[0]" binary {"+" Binary} ("[1]#[0]" equivalence)]
- ["[0]" text
- ["%" format {"+" format}]]
- [collection
- ["[0]" dictionary {"+" Dictionary}]
- ["[0]" set]
- ["[0]" list ("[1]#[0]" mix)]]]
- [math
- ["[0]" random {"+" Random}]
- [number
- ["n" nat]]]
- [world
- [net {"+" URL}
- ["[0]" uri {"+" URI}]
- ["[0]" http "_"
- ["[1]" client]
- ["[1]/[0]" status]
- ["@[1]" /]]]]]]
- ["$[0]" //
- ["[1]/" // "_"
- ["[1][0]" package]]]
- [\\program
- ["[0]" /
- [// {"+" Dependency}
- ["[0]" resolution]
- [//
- ["[0]" profile]
- ["[0]" metadata]
- ["[0]" package {"+" Package}]
- ["[0]" artifact {"+" Artifact} ("[1]#[0]" equivalence)
- ["[1]/[0]" type]
- ["[1]/[0]" extension]]
- ["[0]" repository
- ["[0]" remote]]]]]])
+ [library
+ [lux "*"
+ ["_" test {"+" Test}]
+ [abstract
+ [monad {"+" do}]
+ ["[0]" hash {"+" Hash}]]
+ [control
+ ["[0]" io {"+" IO}]
+ ["[0]" maybe ("[1]#[0]" functor)]
+ ["[0]" try ("[1]#[0]" functor)]
+ [concurrency
+ ["[0]" atom {"+" Atom}]
+ ["[0]" async]]]
+ [data
+ ["[0]" product]
+ ["[0]" binary {"+" Binary} ("[1]#[0]" equivalence)]
+ ["[0]" text
+ ["%" format {"+" format}]]
+ [collection
+ ["[0]" dictionary {"+" Dictionary}]
+ ["[0]" set]
+ ["[0]" list ("[1]#[0]" mix)]]]
+ [math
+ ["[0]" random {"+" Random}]
+ [number
+ ["n" nat]]]
+ [world
+ [net {"+" URL}
+ ["[0]" uri {"+" URI}]
+ ["[0]" http "_"
+ ["[1]" client]
+ ["[1]/[0]" status]
+ ["@[1]" /]]]]]]
+ ["$[0]" //
+ ["[1]/" // "_"
+ ["[1][0]" package]]]
+ [\\program
+ ["[0]" /
+ [// {"+" Dependency}
+ ["[0]" resolution]
+ [//
+ ["[0]" profile]
+ ["[0]" metadata]
+ ["[0]" package {"+" Package}]
+ ["[0]" artifact {"+" Artifact} ("[1]#[0]" equivalence)
+ ["[1]/[0]" type]
+ ["[1]/[0]" extension]]
+ ["[0]" repository
+ ["[0]" remote]]]]]])
(def: good_upload
(@http.Response IO)
[http/status.created
- [#@http.headers (http.headers (list))
- #@http.body (function (_ _)
+ [@http.#headers (http.headers (list))
+ @http.#body (function (_ _)
(|> [0 (binary.empty 0)]
{try.#Success}
io.io))]])
@@ -68,7 +68,7 @@
(do io.monad
[_ (: (IO Any)
(case [method input]
- [{#@http.Put} {.#Some input}]
+ [{@http.#Put} {.#Some input}]
(atom.update! (dictionary.has url input) cache)
_
diff --git a/stdlib/source/test/aedifex/repository/remote.lux b/stdlib/source/test/aedifex/repository/remote.lux
index fc4ccbff1..9cfc118b9 100644
--- a/stdlib/source/test/aedifex/repository/remote.lux
+++ b/stdlib/source/test/aedifex/repository/remote.lux
@@ -1,35 +1,35 @@
(.using
- [library
- [lux "*"
- ["_" test {"+" Test}]
- [abstract
- [monad {"+" do}]]
- [control
- ["[0]" io {"+" IO}]
- ["[0]" maybe ("[1]#[0]" functor)]
- ["[0]" try ("[1]#[0]" monad)]
- ["[0]" exception]
- ["[0]" function]]
- [data
- ["[0]" binary ("[1]#[0]" equivalence)]
- ["[0]" text ("[1]#[0]" equivalence)
- ["%" format {"+" format}]
- [encoding
- ["[0]" utf8]]]
- [collection
- ["[0]" dictionary]]]
- [math
- ["[0]" random {"+" Random}]]
- [world
- [net {"+" URL}
- ["[0]" http "_"
- ["[1]" client]
- ["[1]/[0]" status]
- ["@[1]" /]]]]]]
- [\\program
- ["[0]" /
- ["/[1]" // "_"
- ["[1][0]" identity]]]])
+ [library
+ [lux "*"
+ ["_" test {"+" Test}]
+ [abstract
+ [monad {"+" do}]]
+ [control
+ ["[0]" io {"+" IO}]
+ ["[0]" maybe ("[1]#[0]" functor)]
+ ["[0]" try ("[1]#[0]" monad)]
+ ["[0]" exception]
+ ["[0]" function]]
+ [data
+ ["[0]" binary ("[1]#[0]" equivalence)]
+ ["[0]" text ("[1]#[0]" equivalence)
+ ["%" format {"+" format}]
+ [encoding
+ ["[0]" utf8]]]
+ [collection
+ ["[0]" dictionary]]]
+ [math
+ ["[0]" random {"+" Random}]]
+ [world
+ [net {"+" URL}
+ ["[0]" http "_"
+ ["[1]" client]
+ ["[1]/[0]" status]
+ ["@[1]" /]]]]]]
+ [\\program
+ ["[0]" /
+ ["/[1]" // "_"
+ ["[1][0]" identity]]]])
(def: (url_body url)
(-> URL (@http.Body IO))
@@ -42,8 +42,8 @@
(implementation
(def: (request method url headers input)
(with_expansions [<failure> [http/status.bad_request
- [#@http.headers (http.headers (list))
- #@http.body (..url_body "")]]]
+ [@http.#headers (http.headers (list))
+ @http.#body (..url_body "")]]]
(<| io.io
{try.#Success}
(if (|> headers
@@ -51,19 +51,19 @@
(maybe#each (same? /.user_agent))
(maybe.else false))
(case [method input]
- [#@http.Get {.#None}]
+ [@http.#Get {.#None}]
[http/status.ok
- [#@http.headers (http.headers (list))
- #@http.body (..url_body url)]]
+ [@http.#headers (http.headers (list))
+ @http.#body (..url_body url)]]
- [#@http.Put {.#Some input}]
+ [@http.#Put {.#Some input}]
(if (|> headers
(dictionary.value "Authorization")
(maybe#each (text#= (//identity.basic_auth user password)))
(maybe.else false))
[http/status.created
- [#@http.headers (http.headers (list))
- #@http.body (..url_body url)]]
+ [@http.#headers (http.headers (list))
+ @http.#body (..url_body url)]]
<failure>)
_
@@ -77,8 +77,8 @@
(<| io.io
{try.#Success}
[http/status.bad_request
- [#@http.headers (http.headers (list))
- #@http.body (..url_body "")]]))))
+ [@http.#headers (http.headers (list))
+ @http.#body (..url_body "")]]))))
(def: .public test
Test