Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 204452f

Browse files
piq9117Gitea
piq9117
authored and
Gitea
committed
Generate packages.dhall (#7)
Generate packages.dhall
1 parent 5e49088 commit 204452f

File tree

3 files changed

+139
-0
lines changed

3 files changed

+139
-0
lines changed

‎src/UmuReactBasic/Capability/ManageCommand.hs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ generateProj mLoc = do
2929
writeComponentDir mLoc
3030
writeTitleComponentFile mLoc
3131
writeSpagoDhallFile mLoc
32+
writePackagesDhallFile mLoc
3233

3334
writeSrcDir :: MonadIO m => Maybe Text -> m ()
3435
writeSrcDir mLoc = do
@@ -68,3 +69,9 @@ writeSpagoDhallFile mLoc = do
6869
liftIO $ TP.writeTextFile
6970
( Turtle.fromText $ mkPathName mLoc "spago.dhall" ) spagoDhallFile
7071
mkMessage "Generating spago.dhall..."
72+
73+
writePackagesDhallFile :: MonadIO m => Maybe Text -> m ()
74+
writePackagesDhallFile mLoc = do
75+
liftIO $
76+
TP.writeTextFile ( Turtle.fromText $ mkPathName mLoc "packages.dhall" ) packagesDhallFile
77+
mkMessage "Generating packages.dhall..."

‎src/UmuReactBasic/Templates.hs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ module UmuReactBasic.Templates
44
, srcMainFile
55
, titleComponentFile
66
, spagoDhallFile
7+
, packagesDhallFile
78
) where
89

910
import Import
@@ -20,3 +21,6 @@ titleComponentFile = $(embedFileUtf8 "templates/TitleComponent.purs")
2021

2122
spagoDhallFile :: Text
2223
spagoDhallFile = $(embedFileUtf8 "templates/spago.dhall")
24+
25+
packagesDhallFile :: Text
26+
packagesDhallFile = $(embedFileUtf8 "templates/packages.dhall")

‎templates/packages.dhall

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
{-
2+
Welcome to your new Dhall package-set!
3+
4+
Below are instructions for how to edit this file for most use
5+
cases, so that you don't need to know Dhall to use it.
6+
7+
## Warning: Don't Move This Top-Level Comment!
8+
9+
Due to how `dhall format` currently works, this comment's
10+
instructions cannot appear near corresponding sections below
11+
because `dhall format` will delete the comment. However,
12+
it will not delete a top-level comment like this one.
13+
14+
## Use Cases
15+
16+
Most will want to do one or both of these options:
17+
1. Override/Patch a package's dependency
18+
2. Add a package not already in the default package set
19+
20+
This file will continue to work whether you use one or both options.
21+
Instructions for each option are explained below.
22+
23+
### Overriding/Patching a package
24+
25+
Purpose:
26+
- Change a package's dependency to a newer/older release than the
27+
default package set's release
28+
- Use your own modified version of some dependency that may
29+
include new API, changed API, removed API by
30+
using your custom git repo of the library rather than
31+
the package set's repo
32+
33+
Syntax:
34+
Replace the overrides' "{=}" (an empty record) with the following idea
35+
The "//" means "merge these two records and
36+
when they have the same value, use the one on the right:"
37+
-------------------------------
38+
let override =
39+
{ packageName =
40+
upstream.packageName // { updateEntity1 = "new value", updateEntity2 = "new value" }
41+
, packageName =
42+
upstream.packageName // { version = "v4.0.0" }
43+
, packageName =
44+
upstream.packageName // { repo = "https://www.example.com/path/to/new/repo.git" }
45+
}
46+
-------------------------------
47+
48+
Example:
49+
-------------------------------
50+
let overrides =
51+
{ halogen =
52+
upstream.halogen // { version = "master" }
53+
, halogen-vdom =
54+
upstream.halogen-vdom // { version = "v4.0.0" }
55+
}
56+
-------------------------------
57+
58+
### Additions
59+
60+
Purpose:
61+
- Add packages that aren't already included in the default package set
62+
63+
Syntax:
64+
Replace the additions' "{=}" (an empty record) with the following idea:
65+
-------------------------------
66+
let additions =
67+
{ package-name =
68+
{ dependencies =
69+
[ "dependency1"
70+
, "dependency2"
71+
]
72+
, repo =
73+
"https://example.com/path/to/git/repo.git"
74+
, version =
75+
"tag ('v4.0.0') or branch ('master')"
76+
}
77+
, package-name =
78+
{ dependencies =
79+
[ "dependency1"
80+
, "dependency2"
81+
]
82+
, repo =
83+
"https://example.com/path/to/git/repo.git"
84+
, version =
85+
"tag ('v4.0.0') or branch ('master')"
86+
}
87+
, etc.
88+
}
89+
-------------------------------
90+
91+
Example:
92+
-------------------------------
93+
let additions =
94+
{ benchotron =
95+
{ dependencies =
96+
[ "arrays"
97+
, "exists"
98+
, "profunctor"
99+
, "strings"
100+
, "quickcheck"
101+
, "lcg"
102+
, "transformers"
103+
, "foldable-traversable"
104+
, "exceptions"
105+
, "node-fs"
106+
, "node-buffer"
107+
, "node-readline"
108+
, "datetime"
109+
, "now"
110+
]
111+
, repo =
112+
"https://github.com/hdgarrood/purescript-benchotron.git"
113+
, version =
114+
"v7.0.0"
115+
}
116+
}
117+
-------------------------------
118+
-}
119+
120+
121+
let upstream =
122+
https://github.com/purescript/package-sets/releases/download/psc-0.13.6-20200226/packages.dhall sha256:3a52562e05b31a7b51d12d5b228ccbe567c527781a88e9028ab42374ab55c0f1
123+
124+
let overrides = {=}
125+
126+
let additions = {=}
127+
128+
in upstream // overrides // additions

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /