depot/users/grfn/xanthous/src/Xanthous/Orphans.hs, branch refs/r/6494 monorepo for the virus lounge http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F6494 2022-12-29T20:06:12+00:00 chore(3p/sources): Bump channels & overlays 2022-12-29T20:06:12+00:00 sterni sternenseemann@systemli.org 2022-12-27T13:32:52+00:00 urn:sha1:5a063def51c72611c98fa2aadaa4c938a12271fa The main change is that nixpkgs updated to GHC 9.2 and Stackage LTS-20, so we suffer from a bit of churn. * //3p/overlays/haskell: - use updated dhall-nix patch for hnix 0.16 - use superrecord fork with fixes for GHC 9.2 - use graphmod-1.4.5.1 which has support for GHC 9.2 * //users/Profpatsch: relax constraints on base in Haskell pkgs * //users/Profpatsch/cas-serve: inherit superrecord from 3p * //users/grfn/xanthous: - //3p/overlays/haskell for 8.10.7: * Provide missing dependency of binary-orphans. Fix already commited upstream as e238c3fdaab710a2ce0135e5a77cd7e6bb023a22, can be dropped when channel advances. * Downgrade to brick 0.71.1, the latest version xanthous supports. - Adjust to generic-arbitrary >= 1.0, providing Arg constraints where necessary. - Increase constraint-solver-iterations to 6 (default 4), so Xanthous.Command and Xanthous.Data can be typechecked. - Drop NFData instances for Key and Modifier which have been added to vty upstream. Change-Id: I2170438c2ce8130b65f1a9fe07c4fecab5683d66 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7654 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: tazjin <tazjin@tvl.su> Reviewed-by: grfn <grfn@gws.fyi> Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI feat(grfn/xanthous): Load keybindings from a data file 2022-04-14T14:22:28+00:00 Griffin Smith grfn@gws.fyi 2022-04-10T15:06:53+00:00 urn:sha1:79aceaec17b469dc6533470ea6c807f23eb7fe3e Change-Id: I62ac54543da5c855c86d39956e611fd44515e9a9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/5443 Autosubmit: grfn <grfn@gws.fyi> Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI chore(3p/sources): Bump channels & overlays 2022-04-11T19:37:01+00:00 sterni sternenseemann@systemli.org 2022-03-31T16:40:08+00:00 urn:sha1:11f9306b9a90e11b549fb6fa331742e4f729da7e Use nixos-unstable-small which fixes CVE-2018-25032 (out of bounds write while compressing). * //users/grfn/xanthous: - Supporting random-fu 0.3 requires considerable changes and patching random-extras (https://github.com/aristidb/random-extras/pull/5). For now we downgrade random-fu and its dependency rvar to 0.2.*, forcing us to build xanthous with GHC 8.10.7, due to random-fu 0.2.* not supporting that version. Nix expressions for the downgraded packages are checked in to avoid the potential need to compile Haskell at pipeline eval time. - generic-arbitrary exposes a GenericArbitrary newtype now. This means we no longer have to implement it in xanthous downstream and patch generic-arbitrary to expose the GArbitrary type class. - Minor adjustments for lens 5.0: Xanthous.Game.Memo: clear needs to use ASetter' instead of Lens' Xanthous.Data.EntityMap: TraversableWithIndex no longer has an itraversed function. - Xanthous.Orphans: adjust for aeson's KeyMap, use KM.size explicitly instead of relying on MonoTraversable's length * //nix/buildLisp: the CCL issue has resurfaced, disabling the implementation once again. * //3p/arion: remove, as depot uses the nixpkgs package of it anyways. * //users/wpcarro: accomodate GHC 9.0.1's stricter parsing of operators. * //users/tazjin: disable rustfmt as it stopped respecting settings * //3p/overlays: upgrade home-manager until fix for serivce generation has landed upstream * //users/grfn/system: remove rr override, as the pinned commit is part of the 5.5.0 release shipped by nixpkgs. Change-Id: If229e7317ba48498f85170b57ee9053f6997ff8a Reviewed-on: https://cl.tvl.fyi/c/depot/+/5428 Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: grfn <grfn@gws.fyi> Reviewed-by: tazjin <tazjin@tvl.su> Reviewed-by: wpcarro <wpcarro@gmail.com> feat(xanthous): Describe *where* the item is in the inventory 2021-06-23T21:52:08+00:00 Griffin Smith grfn@gws.fyi 2021-06-20T19:35:08+00:00 urn:sha1:76258fbfa1fc04c3ef3ecdb539c6dc48dc4131a5 When describing items in the inventory, both in detail and when producing menus from those items, describe not just the item itself but also *where* in the inventory the item is (either in the backpack, or wielded in either or both of the hands). This uses a new InventoryPosition datatype, and a method to get a list of items in the inventory associated with their inventory position. When *removing* items from the inventory (to wield, drop, or eat them), we want to make sure we remove from the right position, so this also introduces a `removeItemAtPosition` method to make that happen correctly. Finally, some of the tests for this stuff was getting really slow - I narrowed this down to runaway arbitrary generation for message Templates, so I've tweaked the Arbitrary instance for that type to generate smaller values. Change-Id: I24e9948adae24b0ca9bf13955602108ca9079dcc Reviewed-on: https://cl.tvl.fyi/c/depot/+/3228 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI feat(xanthous): Track the volume and density of item types 2021-06-23T21:52:08+00:00 Griffin Smith grfn@gws.fyi 2021-06-19T14:42:32+00:00 urn:sha1:8b97683f6ef53605130542ea6de1e587b353aa5b Allow the itemType raw to have density and volume fields, both of which represent *intervals* of both density and volume (because both can hypothetically vary a bit). The idea here is that when we're making an *instance* of one of these items, we pick a random value in the range. Lots of stuff in this commit is datatype and typeclass instances to support things like intervals being fields on datatypes that get serialized to saved games - including a manual definition of Ord for Item since Ord isn't well-defined for intervals Change-Id: Ia088f2f75cdce9d00560297e5c269e3310b85bc3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3225 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI feat(xanthous): Add configurable natural attacks 2021-06-18T17:51:43+00:00 Griffin Smith grfn@gws.fyi 2021-06-18T16:42:42+00:00 urn:sha1:fb5bec8d952b57fe4afa0d842ee606cf4e548563 Allow configuring the natural attacks (eg, part of their body rather than an item) of a creature. Each attack has a description and a damage associated with it. Change-Id: I69698a8ac4ee2da91e4c88e419593627519522a5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3220 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI feat(xanthous): Add a generator for random english syllables 2021-06-13T01:24:47+00:00 Griffin Smith grfn@gws.fyi 2021-06-13T01:11:58+00:00 urn:sha1:2cfe4069bb9b46778d737f5ca535edcb9993f356 Add a new "speech" generator module, with the beginnings of the vague definition of the phonotactics of the language (there's one in here for English based on the wikipedia article for English phonology, but it's less than ideal as it has generated words like "sprurlkt") and the ability to generate random syllables of a language by picking an onset, nucleus, and coda from the list for that language (within a range of the number of allowed of each syllable part). This will be used down the road to automatically generate utterances from various non-english-speaking creatures (so the accuracy is less important, just that it "feels real"). Change-Id: I7b81375ec595239c05c5c800cbde1a2a900e38ac Reviewed-on: https://cl.tvl.fyi/c/depot/+/3202 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI refactor(users/glittershark): Rename to grfn 2021-04-12T14:45:51+00:00 Griffin Smith grfn@gws.fyi 2021-04-11T21:53:27+00:00 urn:sha1:6266c5d32f9ff651fcfc3a4cc0c68e89da56ca65 Rename my //users directory and all places that refer to glittershark to grfn, including nix references and documentation. This may require some extra attention inside of gerrit's database after it lands to allow me to actually push things. Change-Id: I4728b7ec2c60024392c1c1fa6e0d4a59b3e266fa Reviewed-on: https://cl.tvl.fyi/c/depot/+/2933 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: glittershark <grfn@gws.fyi>
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/users/grfn/xanthous/src/Xanthous/Orphans.hs, branch refs/r/6494</title>
<subtitle>monorepo for the virus lounge</subtitle>
<id>http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F6494</id>
<link rel="self" href="http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F6494"/>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/"/>
<updated>2022-12-29T20:06:12+00:00</updated>
<entry>
<title>chore(3p/sources): Bump channels & overlays</title>
<updated>2022-12-29T20:06:12+00:00</updated>
<author>
<name>sterni</name>
<email>sternenseemann@systemli.org</email>
</author>
<published>2022-12-27T13:32:52+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=5a063def51c72611c98fa2aadaa4c938a12271fa"/>
<id>urn:sha1:5a063def51c72611c98fa2aadaa4c938a12271fa</id>
<content type="text"> The main change is that nixpkgs updated to GHC 9.2 and Stackage LTS-20, so we suffer from a bit of churn. * //3p/overlays/haskell: - use updated dhall-nix patch for hnix 0.16 - use superrecord fork with fixes for GHC 9.2 - use graphmod-1.4.5.1 which has support for GHC 9.2 * //users/Profpatsch: relax constraints on base in Haskell pkgs * //users/Profpatsch/cas-serve: inherit superrecord from 3p * //users/grfn/xanthous: - //3p/overlays/haskell for 8.10.7: * Provide missing dependency of binary-orphans. Fix already commited upstream as e238c3fdaab710a2ce0135e5a77cd7e6bb023a22, can be dropped when channel advances. * Downgrade to brick 0.71.1, the latest version xanthous supports. - Adjust to generic-arbitrary >= 1.0, providing Arg constraints where necessary. - Increase constraint-solver-iterations to 6 (default 4), so Xanthous.Command and Xanthous.Data can be typechecked. - Drop NFData instances for Key and Modifier which have been added to vty upstream. Change-Id: I2170438c2ce8130b65f1a9fe07c4fecab5683d66 Reviewed-on: https://cl.tvl.fyi/c/depot/+/7654 Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: tazjin <tazjin@tvl.su> Reviewed-by: grfn <grfn@gws.fyi> Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI </content>
</entry>
<entry>
<title>feat(grfn/xanthous): Load keybindings from a data file</title>
<updated>2022-04-14T14:22:28+00:00</updated>
<author>
<name>Griffin Smith</name>
<email>grfn@gws.fyi</email>
</author>
<published>2022-04-10T15:06:53+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=79aceaec17b469dc6533470ea6c807f23eb7fe3e"/>
<id>urn:sha1:79aceaec17b469dc6533470ea6c807f23eb7fe3e</id>
<content type="text"> Change-Id: I62ac54543da5c855c86d39956e611fd44515e9a9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/5443 Autosubmit: grfn <grfn@gws.fyi> Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI </content>
</entry>
<entry>
<title>chore(3p/sources): Bump channels & overlays</title>
<updated>2022-04-11T19:37:01+00:00</updated>
<author>
<name>sterni</name>
<email>sternenseemann@systemli.org</email>
</author>
<published>2022-03-31T16:40:08+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=11f9306b9a90e11b549fb6fa331742e4f729da7e"/>
<id>urn:sha1:11f9306b9a90e11b549fb6fa331742e4f729da7e</id>
<content type="text"> Use nixos-unstable-small which fixes CVE-2018-25032 (out of bounds write while compressing). * //users/grfn/xanthous: - Supporting random-fu 0.3 requires considerable changes and patching random-extras (https://github.com/aristidb/random-extras/pull/5). For now we downgrade random-fu and its dependency rvar to 0.2.*, forcing us to build xanthous with GHC 8.10.7, due to random-fu 0.2.* not supporting that version. Nix expressions for the downgraded packages are checked in to avoid the potential need to compile Haskell at pipeline eval time. - generic-arbitrary exposes a GenericArbitrary newtype now. This means we no longer have to implement it in xanthous downstream and patch generic-arbitrary to expose the GArbitrary type class. - Minor adjustments for lens 5.0: Xanthous.Game.Memo: clear needs to use ASetter' instead of Lens' Xanthous.Data.EntityMap: TraversableWithIndex no longer has an itraversed function. - Xanthous.Orphans: adjust for aeson's KeyMap, use KM.size explicitly instead of relying on MonoTraversable's length * //nix/buildLisp: the CCL issue has resurfaced, disabling the implementation once again. * //3p/arion: remove, as depot uses the nixpkgs package of it anyways. * //users/wpcarro: accomodate GHC 9.0.1's stricter parsing of operators. * //users/tazjin: disable rustfmt as it stopped respecting settings * //3p/overlays: upgrade home-manager until fix for serivce generation has landed upstream * //users/grfn/system: remove rr override, as the pinned commit is part of the 5.5.0 release shipped by nixpkgs. Change-Id: If229e7317ba48498f85170b57ee9053f6997ff8a Reviewed-on: https://cl.tvl.fyi/c/depot/+/5428 Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org> Reviewed-by: grfn <grfn@gws.fyi> Reviewed-by: tazjin <tazjin@tvl.su> Reviewed-by: wpcarro <wpcarro@gmail.com> </content>
</entry>
<entry>
<title>feat(xanthous): Describe *where* the item is in the inventory</title>
<updated>2021-06-23T21:52:08+00:00</updated>
<author>
<name>Griffin Smith</name>
<email>grfn@gws.fyi</email>
</author>
<published>2021-06-20T19:35:08+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=76258fbfa1fc04c3ef3ecdb539c6dc48dc4131a5"/>
<id>urn:sha1:76258fbfa1fc04c3ef3ecdb539c6dc48dc4131a5</id>
<content type="text"> When describing items in the inventory, both in detail and when producing menus from those items, describe not just the item itself but also *where* in the inventory the item is (either in the backpack, or wielded in either or both of the hands). This uses a new InventoryPosition datatype, and a method to get a list of items in the inventory associated with their inventory position. When *removing* items from the inventory (to wield, drop, or eat them), we want to make sure we remove from the right position, so this also introduces a `removeItemAtPosition` method to make that happen correctly. Finally, some of the tests for this stuff was getting really slow - I narrowed this down to runaway arbitrary generation for message Templates, so I've tweaked the Arbitrary instance for that type to generate smaller values. Change-Id: I24e9948adae24b0ca9bf13955602108ca9079dcc Reviewed-on: https://cl.tvl.fyi/c/depot/+/3228 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI </content>
</entry>
<entry>
<title>feat(xanthous): Track the volume and density of item types</title>
<updated>2021-06-23T21:52:08+00:00</updated>
<author>
<name>Griffin Smith</name>
<email>grfn@gws.fyi</email>
</author>
<published>2021-06-19T14:42:32+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=8b97683f6ef53605130542ea6de1e587b353aa5b"/>
<id>urn:sha1:8b97683f6ef53605130542ea6de1e587b353aa5b</id>
<content type="text"> Allow the itemType raw to have density and volume fields, both of which represent *intervals* of both density and volume (because both can hypothetically vary a bit). The idea here is that when we're making an *instance* of one of these items, we pick a random value in the range. Lots of stuff in this commit is datatype and typeclass instances to support things like intervals being fields on datatypes that get serialized to saved games - including a manual definition of Ord for Item since Ord isn't well-defined for intervals Change-Id: Ia088f2f75cdce9d00560297e5c269e3310b85bc3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3225 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI </content>
</entry>
<entry>
<title>feat(xanthous): Add configurable natural attacks</title>
<updated>2021-06-18T17:51:43+00:00</updated>
<author>
<name>Griffin Smith</name>
<email>grfn@gws.fyi</email>
</author>
<published>2021-06-18T16:42:42+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=fb5bec8d952b57fe4afa0d842ee606cf4e548563"/>
<id>urn:sha1:fb5bec8d952b57fe4afa0d842ee606cf4e548563</id>
<content type="text"> Allow configuring the natural attacks (eg, part of their body rather than an item) of a creature. Each attack has a description and a damage associated with it. Change-Id: I69698a8ac4ee2da91e4c88e419593627519522a5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3220 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI </content>
</entry>
<entry>
<title>feat(xanthous): Add a generator for random english syllables</title>
<updated>2021-06-13T01:24:47+00:00</updated>
<author>
<name>Griffin Smith</name>
<email>grfn@gws.fyi</email>
</author>
<published>2021-06-13T01:11:58+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=2cfe4069bb9b46778d737f5ca535edcb9993f356"/>
<id>urn:sha1:2cfe4069bb9b46778d737f5ca535edcb9993f356</id>
<content type="text"> Add a new "speech" generator module, with the beginnings of the vague definition of the phonotactics of the language (there's one in here for English based on the wikipedia article for English phonology, but it's less than ideal as it has generated words like "sprurlkt") and the ability to generate random syllables of a language by picking an onset, nucleus, and coda from the list for that language (within a range of the number of allowed of each syllable part). This will be used down the road to automatically generate utterances from various non-english-speaking creatures (so the accuracy is less important, just that it "feels real"). Change-Id: I7b81375ec595239c05c5c800cbde1a2a900e38ac Reviewed-on: https://cl.tvl.fyi/c/depot/+/3202 Reviewed-by: grfn <grfn@gws.fyi> Tested-by: BuildkiteCI </content>
</entry>
<entry>
<title>refactor(users/glittershark): Rename to grfn</title>
<updated>2021-04-12T14:45:51+00:00</updated>
<author>
<name>Griffin Smith</name>
<email>grfn@gws.fyi</email>
</author>
<published>2021-04-11T21:53:27+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=6266c5d32f9ff651fcfc3a4cc0c68e89da56ca65"/>
<id>urn:sha1:6266c5d32f9ff651fcfc3a4cc0c68e89da56ca65</id>
<content type="text"> Rename my //users directory and all places that refer to glittershark to grfn, including nix references and documentation. This may require some extra attention inside of gerrit's database after it lands to allow me to actually push things. Change-Id: I4728b7ec2c60024392c1c1fa6e0d4a59b3e266fa Reviewed-on: https://cl.tvl.fyi/c/depot/+/2933 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: glittershark <grfn@gws.fyi> </content>
</entry>
</feed>