depot/third_party/lisp/restas.nix, branch refs/r/5929 monorepo for the virus lounge http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F5929 2022-01-05T13:28:20+00:00 chore(3p/lisp): remove unused lisp packages 2022-01-05T13:28:20+00:00 Vincent Ambo mail@tazj.in 2022-01-05T11:44:41+00:00 urn:sha1:9f0671edc9e26b145d0f694e07c44718cbb5b389 Change-Id: Id259341e251170c1caeeab5c9fcb6fbd973372f8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/4816 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> feat(nix/buildLisp): add ecl 2021-08-24T22:00:15+00:00 sterni sternenseemann@systemli.org 2021-08-09T00:47:07+00:00 urn:sha1:02566cdcfb15043070c990ec17c0405313a13874 Adds ECL as a second supported implementation, specifically a statically linked ECL. This is interesting because we can create statically linked binaries, but has a few drawbacks which doesn't make it generally useful: * Loading things is very slow: The statically linked ECL only has byte compilation available, so when we do load things or use the REPL it is significantly worse than with e. g. SBCL. * We can't load shared objects via the FFI since ECL's dffi is not available when linked statically. This means that as it stands, we can't build a statically linked //web/panettone for example. Since ECL is quite slow anyways, I think these drawbacks are worth it since the biggest reason for using ECL would be to get a statically linked binary. If we change our minds, it shouldn't be too hard to provide ecl-static and ecl-dynamic as separate implementations. ECL is LGPL and some libraries it uses as part of its runtime are as well. I've outlined in the ecl-static overlay why this should be of no concern in the context of depot even though we are statically linking. Currently everything is building except projects that are using cffi to load shared libaries which have gotten an appropriate `badImplementations` entry. To get the rest building the following changes were made: * Anywhere a dependency on UIOP is expressed as `bundled "uiop"` we now use `bundled "asdf"` for all implementations except SBCL. From my testing, SBCL seems to be the only implementation to support using `(require 'uiop)` to only load the UIOP package. Where both a dependency on ASDF and UIOP exists, we just delete the UIOP one. `(require 'asdf)` always causes UIOP to be available. * Where appropriate only conditionally compile SBCL-specific code and if any build the corresponding files for ECL. * //lisp/klatre: Use the standard condition parse-error for all implementations except SBCL in try-parse-integer. * //3p/lisp/ironclad: disable SBCL assembly optimization hack for all other platforms as it may interfere with compilation. * //3p/lisp/trivial-mimes: prevent call to asdf function by substituting it out of the source since it always errors out in ECL and we hardcode the correct path elsewhere anyways. As it stands ECL still suffers from a very weird problem which happens when compiling postmodern and moptilities: https://gitlab.com/embeddable-common-lisp/ecl/-/issues/651 Change-Id: I0285924f92ac154126b4c42145073c3fb33702ed Reviewed-on: https://cl.tvl.fyi/c/depot/+/3297 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: eta <tvl@eta.st> feat(3p/lisp): Add many packages 2020-07-23T00:08:29+00:00 Griffin Smith grfn@gws.fyi 2020-07-21T22:53:18+00:00 urn:sha1:08397fd7579c32a9a1d9bdd1b33abce9209f7c47 Add the following packages along with their transitive dependencies: - trivial-ldap - defclass-std - easy-routes Change-Id: Ib24517f18d14d57540362132c9a24ff2a5a4bd9d Reviewed-on: https://cl.tvl.fyi/c/depot/+/1336 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: kanepyork <rikingcoding@gmail.com>
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<feed xmlns="http://www.w3.org/2005/Atom">
<title>depot/third_party/lisp/restas.nix, branch refs/r/5929</title>
<subtitle>monorepo for the virus lounge</subtitle>
<id>http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F5929</id>
<link rel="self" href="http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F5929"/>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/"/>
<updated>2022-01-05T13:28:20+00:00</updated>
<entry>
<title>chore(3p/lisp): remove unused lisp packages</title>
<updated>2022-01-05T13:28:20+00:00</updated>
<author>
<name>Vincent Ambo</name>
<email>mail@tazj.in</email>
</author>
<published>2022-01-05T11:44:41+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=9f0671edc9e26b145d0f694e07c44718cbb5b389"/>
<id>urn:sha1:9f0671edc9e26b145d0f694e07c44718cbb5b389</id>
<content type="text"> Change-Id: Id259341e251170c1caeeab5c9fcb6fbd973372f8 Reviewed-on: https://cl.tvl.fyi/c/depot/+/4816 Autosubmit: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> </content>
</entry>
<entry>
<title>feat(nix/buildLisp): add ecl</title>
<updated>2021-08-24T22:00:15+00:00</updated>
<author>
<name>sterni</name>
<email>sternenseemann@systemli.org</email>
</author>
<published>2021-08-09T00:47:07+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=02566cdcfb15043070c990ec17c0405313a13874"/>
<id>urn:sha1:02566cdcfb15043070c990ec17c0405313a13874</id>
<content type="text"> Adds ECL as a second supported implementation, specifically a statically linked ECL. This is interesting because we can create statically linked binaries, but has a few drawbacks which doesn't make it generally useful: * Loading things is very slow: The statically linked ECL only has byte compilation available, so when we do load things or use the REPL it is significantly worse than with e. g. SBCL. * We can't load shared objects via the FFI since ECL's dffi is not available when linked statically. This means that as it stands, we can't build a statically linked //web/panettone for example. Since ECL is quite slow anyways, I think these drawbacks are worth it since the biggest reason for using ECL would be to get a statically linked binary. If we change our minds, it shouldn't be too hard to provide ecl-static and ecl-dynamic as separate implementations. ECL is LGPL and some libraries it uses as part of its runtime are as well. I've outlined in the ecl-static overlay why this should be of no concern in the context of depot even though we are statically linking. Currently everything is building except projects that are using cffi to load shared libaries which have gotten an appropriate `badImplementations` entry. To get the rest building the following changes were made: * Anywhere a dependency on UIOP is expressed as `bundled "uiop"` we now use `bundled "asdf"` for all implementations except SBCL. From my testing, SBCL seems to be the only implementation to support using `(require 'uiop)` to only load the UIOP package. Where both a dependency on ASDF and UIOP exists, we just delete the UIOP one. `(require 'asdf)` always causes UIOP to be available. * Where appropriate only conditionally compile SBCL-specific code and if any build the corresponding files for ECL. * //lisp/klatre: Use the standard condition parse-error for all implementations except SBCL in try-parse-integer. * //3p/lisp/ironclad: disable SBCL assembly optimization hack for all other platforms as it may interfere with compilation. * //3p/lisp/trivial-mimes: prevent call to asdf function by substituting it out of the source since it always errors out in ECL and we hardcode the correct path elsewhere anyways. As it stands ECL still suffers from a very weird problem which happens when compiling postmodern and moptilities: https://gitlab.com/embeddable-common-lisp/ecl/-/issues/651 Change-Id: I0285924f92ac154126b4c42145073c3fb33702ed Reviewed-on: https://cl.tvl.fyi/c/depot/+/3297 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: eta <tvl@eta.st> </content>
</entry>
<entry>
<title>feat(3p/lisp): Add many packages</title>
<updated>2020-07-23T00:08:29+00:00</updated>
<author>
<name>Griffin Smith</name>
<email>grfn@gws.fyi</email>
</author>
<published>2020-07-21T22:53:18+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=08397fd7579c32a9a1d9bdd1b33abce9209f7c47"/>
<id>urn:sha1:08397fd7579c32a9a1d9bdd1b33abce9209f7c47</id>
<content type="text"> Add the following packages along with their transitive dependencies: - trivial-ldap - defclass-std - easy-routes Change-Id: Ib24517f18d14d57540362132c9a24ff2a5a4bd9d Reviewed-on: https://cl.tvl.fyi/c/depot/+/1336 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: kanepyork <rikingcoding@gmail.com> </content>
</entry>
</feed>