-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
IOHK
committed
Nov 23, 2023
1 parent
2674c27
commit fcfcc23
Showing
42 changed files
with
1,330 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
43 changes: 43 additions & 0 deletions
43
hackage/MicroHs-0.8-r0-52bdc9c5067041783428335af6c36910ae7c85ab8b2810c24da47195b85db4c6.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "3.0"; | ||
identifier = { name = "MicroHs"; version = "0.8"; }; | ||
license = "Apache-2.0"; | ||
copyright = "2023 Lennart Augustsson"; | ||
maintainer = "[email protected]"; | ||
author = "[email protected]"; | ||
homepage = ""; | ||
url = ""; | ||
synopsis = "A compiler for a subset of Haskell"; | ||
description = "A compiler for a subset of Haskell.\nThe compiler translates to combinators and can compile itself."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
exes = { | ||
"mhs" = { | ||
depends = [ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) | ||
(hsPkgs."ghc-prim" or (errorHandler.buildDepError "ghc-prim")) | ||
(hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) | ||
(hsPkgs."time" or (errorHandler.buildDepError "time")) | ||
(hsPkgs."pretty" or (errorHandler.buildDepError "pretty")) | ||
(hsPkgs."process" or (errorHandler.buildDepError "process")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
}; | ||
} |
35 changes: 35 additions & 0 deletions
35
...ition-extra-2.1.0-r0-aa6048510f8f00818c6fc15a63268ce28da5facadf71aeea02a4c1069e87c797.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "1.10"; | ||
identifier = { name = "composition-extra"; version = "2.1.0"; }; | ||
license = "BSD-3-Clause"; | ||
copyright = ""; | ||
maintainer = "[email protected]"; | ||
author = "Athan Clark"; | ||
homepage = ""; | ||
url = ""; | ||
synopsis = "Combinators for unorthodox structure composition"; | ||
description = "Increase the unreadability of your code through operators"; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."contravariant" or (errorHandler.buildDepError "contravariant")) | ||
(hsPkgs."composition" or (errorHandler.buildDepError "composition")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
} |
40 changes: 40 additions & 0 deletions
40
...vexHullNd-0.1.0.0-r0-d60aa422ad89b6da13602e7a59a72479a875404b3a47ef3e154d08f63c27d1cb.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "2.2"; | ||
identifier = { name = "convexHullNd"; version = "0.1.0.0"; }; | ||
license = "GPL-3.0-only"; | ||
copyright = "2023 Stéphane Laurent"; | ||
maintainer = "[email protected]"; | ||
author = "Stéphane Laurent"; | ||
homepage = "https://github.com/stla/convexHullNd#readme"; | ||
url = ""; | ||
synopsis = "Convex hull"; | ||
description = "Computes the convex hull of a set of points in arbitrary dimension.\n\nThis library uses the C library 'qhull'.\n\nFor examples, look at the README file."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."extra" or (errorHandler.buildDepError "extra")) | ||
(hsPkgs."ilist" or (errorHandler.buildDepError "ilist")) | ||
(hsPkgs."hashable" or (errorHandler.buildDepError "hashable")) | ||
(hsPkgs."insert-ordered-containers" or (errorHandler.buildDepError "insert-ordered-containers")) | ||
(hsPkgs."Unique" or (errorHandler.buildDepError "Unique")) | ||
(hsPkgs."regex-compat" or (errorHandler.buildDepError "regex-compat")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
} |
56 changes: 56 additions & 0 deletions
56
...json-spec-0.2.1.2-r0-194dd7516268a84b93f03cb2cae8f24f8ec4d26e777c8b3353c81198387312ce.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "3.0"; | ||
identifier = { name = "json-spec"; version = "0.2.1.2"; }; | ||
license = "MIT"; | ||
copyright = ""; | ||
maintainer = "[email protected]"; | ||
author = "Rick Owens"; | ||
homepage = "https://github.com/owensmurray/json-spec"; | ||
url = ""; | ||
synopsis = "Type-level JSON specification"; | ||
description = "= Motivation\nThis package provides a way to specify the shape of\nyour JSON data at the type level. The particular use\ncases we focus on are enabling (but not providing\nin this package):\n\n1. Auto-generating documentation to ensure it\n is correct.\n2. Auto-generating client code in front-end languages\n to ensure it is correct.\n\nThere are already tools available to achieve this,\nbut they all have one major drawback: they rely on\ngenerically derived Aeson instances. Some people\nstrongly object to using generically derived Aeson\ninstances for encoding/decoding http api data because\nof how brittle it is. It can be surprisingly easy\naccidentally break your API without noticing because\nyou don't realize that a small change to some type\nsomewhere affects the API representation. Avoiding\nthis requires very strict discipline about how you\norganize and maintain your code. E.g. you will see\na lot of comments like\n\n> --| BEWARE, Changing any of the types in this file will change the API\n> -- representation!!\n> module My.API (...) where\n\nBut then the types in this api might reference\ntypes in in other modules where it isn't as obvious\nthat you might be changing the api when you make\nan update.\n\nI have even seen people go so far as to mandate\nthat /every/ type appearing on the API must be\nin some similar \\\"API\\\" module. This usually ends\nbadly because you end up with a bunch of seemingly\nspurious (and quite tedious) translations between\nbetween \\\"business\\\" types and almost identical\n\\\"API\\\" types.\n\nThe other option is to simply not use generically\nderived instances and code all or some of your\n'ToJSON'/'FromJSON' instances by hand. That\n(sometimes) helps solve the problem of making it a\nlittle more obvious when you are making a breaking\napi change. And it definitely helps with the ability\nto update the haskell type for some business purpose\nwhile keeping the encoding backwards compatible.\n\nThe problem now though is that you can't take\nadvantage of any of the above tooling without\nwriting every instance by hand. Writing all the\nindividual instances by hand defeat's the purpose\nbecause you are back to being unsure whether they\nare all in sync!\n\nThe approach this library takes is to take a cue\nfrom `servant` and provide a way to specify the\nJSON encoding at the type level. You must manually\nspecify the encoding, but you only have to do so\nonce (at the type level). Other tools can then\ninspect the type using either type families or\ntype classes to generate the appropriate artifacts\nor behavior. Aeson integration (provided by this\npackage) works by using a type family to transform\nthe spec into a new Haskell type whose structure\nis analogous to the specification. You are then\nrequired to transform your regular business\nvalue into a value of this \\\"structural type\\\"\n(I strongly recommend using type holes to make this\neasier). Values of the structural type will always\nencode into specification-complient JSON.\n\n= Example\n\n> data User = User\n> { name :: Text\n> , lastLogin :: UTCTime\n> }\n> deriving stock (Show, Eq)\n> deriving (ToJSON, FromJSON) via (SpecJSON User)\n> instance HasJsonEncodingSpec User where\n> type EncodingSpec User =\n> JsonObject\n> '[ '(\"name\", JsonString)\n> , '(\"last-login\", JsonDateTime)\n> ]\n> toJSONStructure user =\n> (Field @\"name\" (name user),\n> (Field @\"last-login\" (lastLogin user),\n> ()))\n> instance HasJsonDecodingSpec User where\n> type DecodingSpec User = EncodingSpec User\n> fromJSONStructure\n> (Field @\"name\" name,\n> (Field @\"last-login\" lastLogin,\n> ()))\n> =\n> pure User { name , lastLogin }"; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."time" or (errorHandler.buildDepError "time")) | ||
(hsPkgs."vector" or (errorHandler.buildDepError "vector")) | ||
]; | ||
buildable = true; | ||
}; | ||
tests = { | ||
"jsonspec" = { | ||
depends = [ | ||
(hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."time" or (errorHandler.buildDepError "time")) | ||
(hsPkgs."vector" or (errorHandler.buildDepError "vector")) | ||
(hsPkgs."json-spec" or (errorHandler.buildDepError "json-spec")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."hspec" or (errorHandler.buildDepError "hspec")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
}; | ||
} |
56 changes: 56 additions & 0 deletions
56
...json-spec-0.2.1.3-r0-7b06a8fb14c4cbd2515e16be19540ef12b763c777fb02e5fa6bc226874ec30aa.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "3.0"; | ||
identifier = { name = "json-spec"; version = "0.2.1.3"; }; | ||
license = "MIT"; | ||
copyright = ""; | ||
maintainer = "[email protected]"; | ||
author = "Rick Owens"; | ||
homepage = "https://github.com/owensmurray/json-spec"; | ||
url = ""; | ||
synopsis = "Type-level JSON specification"; | ||
description = "= Motivation\nThis package provides a way to specify the shape of\nyour JSON data at the type level. The particular use\ncases we focus on are enabling (but not providing\nin this package):\n\n1. Auto-generating documentation to ensure it\n is correct.\n2. Auto-generating client code in front-end languages\n to ensure it is correct.\n\nThere are already tools available to achieve this,\nbut they all have one major drawback: they rely on\ngenerically derived Aeson instances. Some people\nstrongly object to using generically derived Aeson\ninstances for encoding/decoding http api data because\nof how brittle it is. It can be surprisingly easy\naccidentally break your API without noticing because\nyou don't realize that a small change to some type\nsomewhere affects the API representation. Avoiding\nthis requires very strict discipline about how you\norganize and maintain your code. E.g. you will see\na lot of comments like\n\n> --| BEWARE, Changing any of the types in this file will change the API\n> -- representation!!\n> module My.API (...) where\n\nBut then the types in this api might reference\ntypes in in other modules where it isn't as obvious\nthat you might be changing the api when you make\nan update.\n\nI have even seen people go so far as to mandate\nthat /every/ type appearing on the API must be\nin some similar \\\"API\\\" module. This usually ends\nbadly because you end up with a bunch of seemingly\nspurious (and quite tedious) translations between\nbetween \\\"business\\\" types and almost identical\n\\\"API\\\" types.\n\nThe other option is to simply not use generically\nderived instances and code all or some of your\n'ToJSON'/'FromJSON' instances by hand. That\n(sometimes) helps solve the problem of making it a\nlittle more obvious when you are making a breaking\napi change. And it definitely helps with the ability\nto update the haskell type for some business purpose\nwhile keeping the encoding backwards compatible.\n\nThe problem now though is that you can't take\nadvantage of any of the above tooling without\nwriting every instance by hand. Writing all the\nindividual instances by hand defeat's the purpose\nbecause you are back to being unsure whether they\nare all in sync!\n\nThe approach this library takes is to take a cue\nfrom `servant` and provide a way to specify the\nJSON encoding at the type level. You must manually\nspecify the encoding, but you only have to do so\nonce (at the type level). Other tools can then\ninspect the type using either type families or\ntype classes to generate the appropriate artifacts\nor behavior. Aeson integration (provided by this\npackage) works by using a type family to transform\nthe spec into a new Haskell type whose structure\nis analogous to the specification. You are then\nrequired to transform your regular business\nvalue into a value of this \\\"structural type\\\"\n(I strongly recommend using type holes to make this\neasier). Values of the structural type will always\nencode into specification-complient JSON.\n\n= Example\n\n> data User = User\n> { name :: Text\n> , lastLogin :: UTCTime\n> }\n> deriving stock (Show, Eq)\n> deriving (ToJSON, FromJSON) via (SpecJSON User)\n> instance HasJsonEncodingSpec User where\n> type EncodingSpec User =\n> JsonObject\n> '[ '(\"name\", JsonString)\n> , '(\"last-login\", JsonDateTime)\n> ]\n> toJSONStructure user =\n> (Field @\"name\" (name user),\n> (Field @\"last-login\" (lastLogin user),\n> ()))\n> instance HasJsonDecodingSpec User where\n> type DecodingSpec User = EncodingSpec User\n> fromJSONStructure\n> (Field @\"name\" name,\n> (Field @\"last-login\" lastLogin,\n> ()))\n> =\n> pure User { name , lastLogin }"; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."time" or (errorHandler.buildDepError "time")) | ||
(hsPkgs."vector" or (errorHandler.buildDepError "vector")) | ||
]; | ||
buildable = true; | ||
}; | ||
tests = { | ||
"jsonspec" = { | ||
depends = [ | ||
(hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."time" or (errorHandler.buildDepError "time")) | ||
(hsPkgs."vector" or (errorHandler.buildDepError "vector")) | ||
(hsPkgs."json-spec" or (errorHandler.buildDepError "json-spec")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."hspec" or (errorHandler.buildDepError "hspec")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
}; | ||
} |
56 changes: 56 additions & 0 deletions
56
...lsp-types-1.4.0.1-r2-2552b14b90419c39a6b15266cb2657dc1aa0faee35aeb1ff313b51403ac16a0b.nix
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
{ system | ||
, compiler | ||
, flags | ||
, pkgs | ||
, hsPkgs | ||
, pkgconfPkgs | ||
, errorHandler | ||
, config | ||
, ... }: | ||
{ | ||
flags = {}; | ||
package = { | ||
specVersion = "2.2"; | ||
identifier = { name = "lsp-types"; version = "1.4.0.1"; }; | ||
license = "MIT"; | ||
copyright = "Alan Zimmerman, 2016-2021"; | ||
maintainer = "[email protected]"; | ||
author = "Alan Zimmerman"; | ||
homepage = "https://github.com/haskell/lsp"; | ||
url = ""; | ||
synopsis = "Haskell library for the Microsoft Language Server Protocol, data types"; | ||
description = "An implementation of the types to allow language implementors to\nsupport the Language Server Protocol for their specific language."; | ||
buildType = "Simple"; | ||
}; | ||
components = { | ||
"library" = { | ||
depends = [ | ||
(hsPkgs."base" or (errorHandler.buildDepError "base")) | ||
(hsPkgs."aeson" or (errorHandler.buildDepError "aeson")) | ||
(hsPkgs."binary" or (errorHandler.buildDepError "binary")) | ||
(hsPkgs."bytestring" or (errorHandler.buildDepError "bytestring")) | ||
(hsPkgs."containers" or (errorHandler.buildDepError "containers")) | ||
(hsPkgs."data-default" or (errorHandler.buildDepError "data-default")) | ||
(hsPkgs."deepseq" or (errorHandler.buildDepError "deepseq")) | ||
(hsPkgs."Diff" or (errorHandler.buildDepError "Diff")) | ||
(hsPkgs."directory" or (errorHandler.buildDepError "directory")) | ||
(hsPkgs."dlist" or (errorHandler.buildDepError "dlist")) | ||
(hsPkgs."filepath" or (errorHandler.buildDepError "filepath")) | ||
(hsPkgs."hashable" or (errorHandler.buildDepError "hashable")) | ||
(hsPkgs."hslogger" or (errorHandler.buildDepError "hslogger")) | ||
(hsPkgs."lens" or (errorHandler.buildDepError "lens")) | ||
(hsPkgs."mtl" or (errorHandler.buildDepError "mtl")) | ||
(hsPkgs."network-uri" or (errorHandler.buildDepError "network-uri")) | ||
(hsPkgs."mod" or (errorHandler.buildDepError "mod")) | ||
(hsPkgs."rope-utf16-splay" or (errorHandler.buildDepError "rope-utf16-splay")) | ||
(hsPkgs."scientific" or (errorHandler.buildDepError "scientific")) | ||
(hsPkgs."some" or (errorHandler.buildDepError "some")) | ||
(hsPkgs."text" or (errorHandler.buildDepError "text")) | ||
(hsPkgs."template-haskell" or (errorHandler.buildDepError "template-haskell")) | ||
(hsPkgs."temporary" or (errorHandler.buildDepError "temporary")) | ||
(hsPkgs."unordered-containers" or (errorHandler.buildDepError "unordered-containers")) | ||
]; | ||
buildable = true; | ||
}; | ||
}; | ||
} |
Oops, something went wrong.