Commit Graph

390 Commits

Author SHA1 Message Date
03dfd0cba0
Require --isolate to have an absolute directory, fixes #367 2022-05-23 23:50:49 +02:00
0e64d1f22f
Improve AlreadyInstalled 2022-05-23 23:49:43 +02:00
c7774450bf
Refactor excepts 2022-05-23 23:37:09 +02:00
9375255452
Warn on all tools when shadowed 2022-05-23 16:50:23 +02:00
2845425099
Restructure modules 2022-05-22 21:11:40 +02:00
df89ddcdf5
Use internal tmpdir 2022-05-20 23:19:33 +02:00
430b655785
Improve error handling for mergeFileTree 2022-05-20 00:15:25 +02:00
c9790e5823
Use strongly types GHCupPath and restrict destructive operations 2022-05-13 21:35:34 +02:00
48aee1e76c
[WIP] Prototype of recording installed files
This also installs makefile based build system via DESTDIR
into a temporary directory and then merges it into the filesystem.
2022-05-13 00:46:47 +02:00
dc0ea5a59c
Document and handle '--force' option better 2022-05-12 13:28:09 +02:00
a6a54f34cf
Merge branch 'issue-360' 2022-05-11 20:35:56 +02:00
f7811961b5
Merge branch 'isolateDir' 2022-05-11 20:35:38 +02:00
5787a662ed
Add a --quick switch to 'ghcup run'
Also fixes #360, because we resolve all tags/versions now
by default.
2022-05-11 20:11:35 +02:00
991e540c11
Refactor code around isolateDirs, so we have proper knowledge 2022-05-11 16:18:35 +02:00
b036c9861f
Re-enable upgrade functionality for all configurations
Adds a --fail-if-shadowed switch.
2022-05-04 14:15:17 +02:00
Nick Suchecki
e83612a06c Fix typo in compile hls --help subcommand. 2022-05-01 15:12:39 +00:00
92bd333552
Fix double appstate 2022-03-18 17:47:49 +01:00
8eeb32c495
Overhaul metadata merging and add 'ghcup config add-release-channel URI' 2022-03-18 17:47:49 +01:00
fdcd6822c4
Don't do update check on --no-verbose 2022-03-18 17:47:49 +01:00
71390c84da
Apply hlint 2022-03-18 17:47:48 +01:00
84d01b1091
Don't do padding for --raw-format 2022-03-18 17:47:40 +01:00
0c70feb09c
Fix rather humongous bug in 'ghcup list' 2022-03-17 20:04:59 +01:00
f9a38e616d
Add --raw-format to 'tool-requirements' subcommand 2022-03-17 15:05:18 +01:00
e511fc3c0a
Fix predictable /tmp dirs so ghcup gc -t fires 2022-03-16 23:15:09 +01:00
4c0160bb28
Merge branch 'issue-330' 2022-03-14 11:49:40 +01:00
8f7d937e26
Use predictable /tmp names for ghcup run, fixes #329 2022-03-14 00:38:57 +01:00
604a6fc92b
Fix bug with isolated installation of not previously installed versions
It would error out trying to set the version.
2022-03-14 00:36:08 +01:00
8c205fd18c
Add --no-set to install commands, fixes #330
This also slightly changes the default for
'ghcup install cabal/stack/hls'... instead of
only setting the installed version if it's the latest,
we always set it. So the default is `--set`.

For GHC, the default is `--no-set`.
2022-03-13 22:48:45 +01:00
96cb99e1b5
Improve --repository completion 2022-03-07 22:23:39 +01:00
1f0a891bab
Fix 'ghcup install cabal/hls/stack --set' wrt #324 2022-03-05 20:50:58 +01:00
6c63a65983
Fix bad error message wrt #323 2022-03-05 20:19:54 +01:00
199d3b7aee
Fix downloader completer 2022-03-05 20:14:10 +01:00
04fc04f586
More improvements to completers 2022-03-05 20:00:32 +01:00
ab702bba9b
Improve completion support 2022-03-05 12:56:19 +01:00
9faf17634b
Fix hlint and windows build 2022-02-10 21:49:19 +01:00
66a62c170c
Fix 'ghcup run' for legacy HLS 2022-02-10 20:35:09 +01:00
5186d959bc
Avoid metadata download when possible 2022-02-10 19:29:32 +01:00
09a8a0bda0
Fix build on windows and stack 2022-02-10 18:35:25 +01:00
c72841ca58
Implement 'ghcup run' 2022-02-09 18:57:59 +01:00
6073ebe476
Fix HLS support and compile errors with boot and TH files 2022-02-06 00:32:18 +01:00
6b978b42bc
Improve rmHLSNoGHC 2022-02-05 19:12:13 +01:00
51690d1df3
Support HLS dynamic builds 2022-02-05 16:33:05 +01:00
072161ada2
Don't fail to set ghc version if already installed
Fixes #291
2022-01-30 17:59:27 +01:00
c9216fb444
Improve help output of hls compile 2022-01-29 20:02:33 +01:00
b245c11b1d
Allow to disable self-upgrade functionality wrt #305 2022-01-28 23:08:35 +01:00
James Hobson
5d43168370
Updated help message for ghcup compile ghc -h 2022-01-12 10:06:38 +01:00
43ea85b495
Also fix redundant upgrade warnings for 'ghcup upgrade' 2021-11-14 16:24:13 +01:00
2e03b075f8
Avoid redundant warnings when installing tools, fixes #283 2021-11-13 22:59:52 +01:00
a9630d0802
Cooler patching 2021-11-12 19:52:00 +01:00
c5c6c431b5
Allow remote URIs for --cabal-project-local wrt #281 2021-11-12 19:05:13 +01:00
274978a8a7
Allow to pass cabal args to 'compile hls'
This breaks the existing cli interface, but whatever.
2021-11-12 01:13:57 +01:00
c05876cc60
Fix build with ghc-8.6.5 2021-11-02 19:53:22 +01:00
2c57def8f1
Fix parsing of atypical ghc versions 2021-11-02 01:22:06 +01:00
62b16e957b
Merge branch 'issue-276' 2021-10-30 14:17:52 +02:00
190b5dedba
Allow to control the metadata cache, fixes #278 2021-10-30 14:16:45 +02:00
360daf2a09
Make upgrading ghcup in TUI more pleasant 2021-10-30 12:54:05 +02:00
72c4ea70c4
Migrate ghcup-gen to haskell/ghcup-metadata 2021-10-27 15:33:39 +02:00
4574f3aa4f
Switch to yaml-streamly 2021-10-21 23:39:07 +02:00
2a11e85a95
Allow to specify config value as JSON 2021-10-19 20:46:38 +02:00
9f8c9c228d
Reduce IS_WINDOWS CPP 2021-10-17 20:57:22 +02:00
01956d694d
Refactor app Main 2021-10-17 19:15:24 +02:00
c846e52acb
Cleanup during unpack failures as well 2021-10-10 20:48:33 +02:00
5a39ead523
Speed up unset command 2021-09-27 12:52:45 +02:00
9fe7af3335
Hide nuclear command 2021-09-25 22:45:06 +02:00
c19dd5ee8b
Implement ghcup gc command
Fixes #241
2021-09-25 22:29:02 +02:00
9497e310ca
Improve cli interface with partial versions
Fixes #243
2021-09-25 17:13:11 +02:00
041a341879
Merge branch 'issue-242' 2021-09-25 00:19:51 +02:00
15dd810d67
Get rid of concurrent-output
Also improve some NO_COLOR foo.
2021-09-24 23:49:50 +02:00
fa523d590e
Add ListAvailable to ListCriteria 2021-09-24 20:51:29 +02:00
523f2f57e1
Fix ghcup list -t for hls/stack, fixes #244 2021-09-24 20:51:29 +02:00
aece305003
Move logger stuff to logger module 2021-09-23 12:53:01 +02:00
ef8da9bcec
Make sure NO_COLOR also applies to logging 2021-09-23 12:16:49 +02:00
d5b41683ca
Improve HLS compile 2021-09-20 22:24:20 +02:00
3d1d8f1af7
Improve optparse hls stuff 2021-09-20 14:43:43 +02:00
f90741f4d3
Implement compiling HLS from source 2021-09-19 22:04:32 +02:00
4767f3db5b
Implement ghcup unset 2021-09-19 14:17:55 +02:00
c431c0ae00
Implement GPG verification wrt #236 2021-09-18 21:51:19 +02:00
c42c4b64f9
Improve logging 2021-09-18 15:46:53 +02:00
d3a36c2c9a
Merge remote-tracking branch 'origin/merge-requests/156' 2021-09-18 15:19:06 +02:00
Arjun Kathuria
8fc128e89b move some code around for better consistency 2021-09-12 09:25:09 +05:30
Arjun Kathuria
cadb5086e1 Implements --force install for GHC 2021-09-11 23:20:06 +05:30
Arjun Kathuria
10a30bbf38 Implements --force install for Stack 2021-09-11 22:04:54 +05:30
Arjun Kathuria
6ac7a75bab Implements --force install for HLS 2021-09-11 22:04:40 +05:30
jneira
488f25aed6 Include stack and minor correction 2021-09-08 14:14:05 +02:00
Arjun Kathuria
59a9a770a5 implements --force option for cabal installs. 2021-09-07 11:23:26 +05:30
Arjun Kathuria
20bcb26e3d Adds the --force option in install commands 2021-09-07 11:17:10 +05:30
d2346a543a
Fixup 2021-09-04 15:53:29 +02:00
b962bf4af9
Add missing qAddDependentFiles 2021-09-04 15:10:07 +02:00
cc8cf3d12a
Improve --patchdir documentation wrt #226 2021-09-04 14:31:05 +02:00
283f2a6e46
Add ghcup whereis bindir and friends, fixes #221 2021-09-02 15:37:03 +02:00
d98e54a743
Drop yaml/libyaml 2021-08-30 23:36:11 +02:00
13143b8e4d
Drop monad-logger 2021-08-30 23:36:11 +02:00
e9c335eecc
Add --cabal-plan 2021-08-27 14:59:09 +02:00
14fc6b7281
Remove string-interpolate wrt #212 2021-08-25 18:54:58 +02:00
f8cfcd4038
Get rid of tar 2021-08-25 11:48:30 +02:00
57c791106b
Fixup rest of the PR 2021-08-11 16:19:31 +02:00
fcba151fad
Merge remote-tracking branch 'origin/merge-requests/134' 2021-08-11 14:20:04 +02:00
3b24f503d1
Fixup rest of the PR 2021-08-11 13:54:02 +02:00
bd18fd9aa1
Merge remote-tracking branch 'origin/merge-requests/127' 2021-08-11 12:28:48 +02:00
Arjun Kathuria
c2c5625685 implements checking if file already exists for Cabal installs 2021-08-11 10:33:08 +05:30
Arjun Kathuria
dcfb3afdad Revert "implements isolated install sanity-checking for Cabal installs"
This reverts commit 300cfd3ba6.
2021-08-11 09:46:42 +05:30
Arjun Kathuria
300cfd3ba6 implements isolated install sanity-checking for Cabal installs 2021-08-10 20:14:46 +05:30
2792f6f4b6
Fix error handling when we can't find a filename 2021-08-06 19:45:59 +02:00
Arjun Kathuria
2c6d0382cf adds isolate install feature to compiled ghc command 2021-08-04 16:08:12 +05:30
Arjun Kathuria
911089f334 updates usages of new installStackBin across files 2021-08-03 18:08:54 +05:30
Arjun Kathuria
90ed0895d6 updates usages of installHLSBin across files 2021-08-03 18:08:54 +05:30
Arjun Kathuria
236da31af6 updates usages of new installCabalBindist across files. 2021-08-03 18:08:54 +05:30
Arjun Kathuria
37ea18a0d8 updates usages of new installGHCBindist and related installGHCBin 2021-08-03 18:08:54 +05:30
Arjun Kathuria
fdbcd4fafd Adds isolated installs to Stack install 2021-08-03 18:08:54 +05:30
Arjun Kathuria
f212eb4570 Adds isolated install to HLS installs 2021-08-03 18:08:54 +05:30
Arjun Kathuria
476513b0a7 Adds isolate install functionality to 'Cabal' tool installs 2021-08-03 18:08:54 +05:30
Arjun Kathuria
8666fcd120 adds rudimentary isolate capability to ghcup install ghc command 2021-08-03 18:08:54 +05:30
Arjun Kathuria
521ab0aedb adds basic --isolate option structure for install commands 2021-08-03 18:08:54 +05:30
vglfr
1cfff674b7
Implement config CLI MVP 2021-08-03 09:09:47 +03:00
5a34191b88
Fix listTools to always show currently installed GHCup 2021-07-27 22:33:35 +02:00
0c666a6bbe
Fix upgrade subcommand running appstate twice 2021-07-27 20:57:51 +02:00
95ca79f3f8
Turn leftover files into logError 2021-07-26 18:13:41 +02:00
706fe1ffcc
Don't do update checks for all commands 2021-07-26 18:13:20 +02:00
fdf45e0fe6
Do etags hashing wrt #193 2021-07-25 23:15:59 +02:00
9639e695e2
Unhide stack 2021-07-23 16:13:07 +02:00
48d3b3bc3e
Merge branch 'cursor' of https://github.com/mlang/ghcup-hs into mlang-cursor 2021-07-23 14:38:49 +02:00
Mario Lang
761b8cc750 Place an (invisible) cursor at the beginning of the active list item
This change is to support screen readers which use the cursor location
to indicate the focus to the user.

Brick.putCursor is unreleased, so grab the latest version from git via extra-deps.
2021-07-23 11:53:28 +02:00
3bdc82c99b
Redo file handling wrt #165 and #187 2021-07-22 17:44:03 +02:00
1c2cf98850
Fix file/dir removal on windows, fixes #165 2021-07-21 20:50:58 +02:00
a4a7f73fb7
Allow to use Hadrian as build system, fixes #35 2021-07-20 23:51:31 +02:00
9e181b8820
Allow passing "flavor" to 'ghcup compile ghc'
Fixes #183
2021-07-20 13:39:39 +02:00
7a2570019a
Return the version during 'ghcup compile ghc -g <commit>'
Fixes #181
2021-07-20 11:42:36 +02:00
bc13a4555d
Fix runLeanWhereIs on windows 2021-07-19 16:56:28 +02:00
eaad2caf25
Add prefetch command 2021-07-19 16:51:40 +02:00
6143cdf2e0
Add --offline switch wrt #186 2021-07-19 13:49:24 +02:00
2c7176d998
Use LabelOptic and add LeanAppState
Wrt #186
2021-07-18 14:39:49 +02:00
7e14fd4a08
Only run unsafeInterleaveIO when necessary 2021-07-15 20:30:14 +02:00
f04708e8ae
Speed up 'whereis' subcommand wrt #179 2021-07-15 20:01:00 +02:00
227f3acaa5
Implement 'whereis' subcommand, fixes #173 2021-07-12 17:09:18 +02:00
8e820c6e89
Clean up and fix nuke command 2021-07-03 11:15:37 +02:00
Arjun Kathuria
f09f4bd1b7 Update the running of "Nuke" command in Main.hs 2021-06-29 08:47:44 +05:30
Arjun Kathuria
69a461d9c3 Fix a couple of typos in Main.hs 2021-06-28 19:32:09 +05:30
Arjun Kathuria
f7986cb4da integrate new rmGhcupDirs fn into Main.hs 2021-06-26 21:56:52 +05:30
Arjun Kathuria
07fb04bb74 Adds the new rmGhcupDirs function in Main.hs under Nuke command 2021-06-22 23:15:13 +05:30
Arjun Kathuria
82a704ab44 Adds 10s Thread-Delay and relevant Logger messages to Main.hs 2021-06-22 18:53:18 +05:30
Arjun Kathuria
0cb22945fe Adds some logger messages. 2021-06-22 18:52:24 +05:30
Arjun Kathuria
d09adf9159 Updates Main.hs to work with new rmTool. 2021-06-22 18:51:03 +05:30
Arjun Kathuria
ec29332657 Adds basic implementation of rmTool function 2021-06-22 14:29:26 +05:30
Arjun Kathuria
0f6381e67b Move Nuke Command a little down in the file 2021-06-18 15:09:01 +05:30
Arjun Kathuria
877b55e21d Adds basic "nuke" command structure so that it reflects in ghcup cli 2021-06-18 15:01:32 +05:30
08b0ecd057
Allow to skip update checks 2021-06-13 15:05:39 +02:00
b56c44a210
Ensure directories 2021-06-13 13:41:06 +02:00
f14c281841
Fix for real 2021-06-13 08:36:20 +02:00
810870e3a5
Fix Validate 2021-06-07 20:04:55 +02:00
97029e8102
Merge remote-tracking branch 'origin/merge-requests/92' 2021-06-06 12:10:35 +02:00