Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Refactor Program versions handling | Daniel Gröber | 2020-05-10 | 3 | -12/+22 |
| | | | | | | This mainly renames the program version getters to get* and make them consistenly return Version directly. Such that wrappers like GhcVersion have to be added at the callsites of the relevant functions. | ||||
* | Add suffix V1 to make it explicit | jneira | 2020-05-10 | 1 | -3/+3 |
| | |||||
* | Use forward compatible v1 prefix if available | jneira | 2020-05-10 | 1 | -1/+3 |
| | |||||
* | Ignore setup components from plan.json in readUnitInfo | Daniel Gröber | 2020-05-02 | 1 | -3/+6 |
| | | | | | | Cabal includes the Setup.hs executable as a component in plan.json, however there isn't a target to build it directly so we just ignore it for not when reading unit info. | ||||
* | Move CabalVersion and related types into a new module | Daniel Gröber | 2020-05-02 | 2 | -2/+4 |
| | |||||
* | Fix cabal projects using source-repository-package | Daniel Gröber | 2020-05-02 | 1 | -24/+23 |
| | | | | | | | | | | | Apparently we can get source-repo-packages in plan.json even when filtering for `"style": "local"`(`UnitTypeLocal`). It's possible the root cause here is a cabal bug as source-repository-package should really be treated more like a tarball than a local package. Regardless we simply filter units by actually checking for `uPkgSrc=Just LocalUnpackedPackage` instead of relying on "style". This fixes #99 | ||||
* | Run v2-install in '/' instead of /tmp | Daniel Gröber | 2020-05-01 | 1 | -2/+1 |
| | | | | See #89 | ||||
* | Fix patchBuildToolProgs when haddock cannot be found | Javier Neira | 2020-02-10 | 1 | -1/+1 |
| | | | | Cabal's GHC.configure doesn't demand haddock exist, so we have to handle the case where it's not installed. | ||||
* | Fix invokeGhc when using relative paths | Daniel Gröber | 2020-01-11 | 1 | -4/+8 |
| | |||||
* | Unset GHC_ENVIRONMENT and GHC_PACKAGE_PATH before invocing GHC | Daniel Gröber | 2020-01-11 | 1 | -1/+4 |
| | | | | | | | | | | | | When we are invoked under Stack (as part of HIE's test suite for example) our choice of Cabal library when invoking GHC gets interferred with by the GHC_ENVIRONMENT variable. Since we're just using boot packages simply unsetting GHC package related envvars seems like a fairly decent fix here. See the issue below for more details. Fixes #78 | ||||
* | ghc-session: Get GHC libdir from --print-libdir command | Daniel Gröber | 2019-12-29 | 1 | -0/+4 |
| | | | | | | Using ghc-paths bypasses cabal's rebuild checks though, for example, installing the compiler into a different directory will change the libdir but cabal won't recompile ghc-paths. | ||||
* | Explicitly state package in component | Luke Lau | 2019-11-27 | 1 | -2/+2 |
| | | | | | | | This fixes scenarios such as: cabal: Ambiguous target 'test:foo'. It could be: A:test:foo (component) B:test:foo (component) | ||||
* | Change license to Apache2 | Daniel Gröber | 2019-09-29 | 3 | -33/+18 |
| | | | | | | | | All contributors have agreed on public record at https://github.com/DanielG/cabal-helper/issues/76 Fixes #76 | ||||
* | Use plStackProjectDir instead of 'takeDirectory stack_yaml' | Daniel Gröber | 2019-09-17 | 1 | -4/+4 |
| | |||||
* | Update some code docs | Daniel Gröber | 2019-09-17 | 1 | -0/+8 |
| | |||||
* | Remove pretty-show dependency | Daniel Gröber | 2019-09-17 | 1 | -2/+1 |
| | | | | It's a bit heavy just for a single use-site for debugging. | ||||
* | Fix "Installing lib:Cabal" message | Daniel Gröber | 2019-09-17 | 1 | -1/+1 |
| | |||||
* | Implement cabal v2 backpack unit workaround | Daniel Gröber | 2019-09-17 | 1 | -7/+34 |
| | | | | See https://github.com/haskell/cabal/issues/6201 for details about the bug | ||||
* | Fix some import warnings | Daniel Gröber | 2019-09-17 | 1 | -1/+0 |
| | |||||
* | Break cycle between 'Package' and 'Unit' | Daniel Gröber | 2019-09-17 | 2 | -2/+4 |
| | |||||
* | Add exported interface for running build-tools | Daniel Gröber | 2019-09-17 | 2 | -2/+33 |
| | |||||
* | Introduce Package abstracton | Daniel Gröber | 2019-09-17 | 2 | -46/+77 |
| | | | | | After lamenting the fact that we don't have this in the docs I figured it really ought to be an exposed abstraction. | ||||
* | Refactor ProjType to be more inductive | Daniel Gröber | 2019-09-17 | 1 | -1/+1 |
| | | | | This allows discriminating Stack vs. Cabal at the type level more easily. | ||||
* | Allow passing override-env to process functions | Daniel Gröber | 2019-09-17 | 3 | -12/+12 |
| | | | | | Unfortunately we need this to pass a custom GHC executable path to stack, since it doesn't have an option to override it on the commandline (yet?). | ||||
* | Merge CompPrograms back into Programs | Daniel Gröber | 2019-09-17 | 3 | -19/+19 |
| | | | | | We need to support passing down the path to ghc to new-build/stack in order to support using a non-default 'ghc' executable. | ||||
* | Flesh out project discovery API | Daniel Gröber | 2019-09-17 | 1 | -1/+1 |
| | |||||
* | Fix some warnings | Daniel Gröber | 2019-09-17 | 1 | -6/+4 |
| | | | | | | | | | I'm turning off -Wunused-imports in the modules that have to deal with ancient Cabal versions because maintaining warning cleanlyness really is quite pointless when you have to deal with all sorts of deprecations and stuff moving around. I don't think having too many imports will ever break anything there unless the modules really get deprecated and removed, but we'll notice that ;) | ||||
* | Make compilerVersion accessor project-scope for V1 projects | Daniel Gröber | 2019-04-01 | 1 | -1/+1 |
| | |||||
* | Bestow installCabalLibV2 with the message blub | Daniel Gröber | 2019-03-29 | 1 | -13/+19 |
| | |||||
* | Fix empty package-db being interpreted as "existing" | Daniel Gröber | 2019-02-14 | 1 | -0/+1 |
| | |||||
* | Make Cabal-HEAD lib v2-build cachable | Daniel Gröber | 2019-02-14 | 2 | -10/+16 |
| | |||||
* | Add log-level to verbosity conditional | Daniel Gröber | 2019-01-30 | 1 | -7/+7 |
| | |||||
* | Fix ghc-pkg guessing logic when using v2-install | Daniel Gröber | 2019-01-30 | 1 | -1/+1 |
| | |||||
* | compile: v2-install --libs needs GHC >=8.0 | Daniel Gröber | 2019-01-26 | 1 | -0/+1 |
| | |||||
* | Fix getHelperExe not using correct stack programs | Luke Lau | 2019-01-26 | 1 | -4/+4 |
| | | | | | In turn fixes errors when building cabal-helper exe for stack projects where the resolver uses a different ghc version than system. | ||||
* | Add Stack version check for `stack ide packages --cabal-file` | Daniel Gröber | 2019-01-26 | 1 | -1/+25 |
| | |||||
* | Add support and test coverage for mulit-pkg projects | Daniel Gröber | 2019-01-26 | 1 | -23/+40 |
| | |||||
* | Fix package-envs conflicting with -package flags | Daniel Gröber | 2019-01-22 | 1 | -5/+8 |
| | |||||
* | Make most record fields strict | Daniel Gröber | 2019-01-22 | 1 | -8/+8 |
| | | | | | This lets GHC give better error messages when forgetting to initialize a field when using the `let field = _ in DataType{..}` RecordWildcards syntax. | ||||
* | Add 'uComponentName' query | Daniel Gröber | 2019-01-22 | 1 | -0/+15 |
| | |||||
* | Refactor Compile (for v2-install) | Daniel Gröber | 2019-01-22 | 2 | -47/+125 |
| | |||||
* | Fix wrong target-selector syntax for v2-build | Daniel Gröber | 2019-01-22 | 1 | -1/+3 |
| | |||||
* | Implement behaviour for cabal new-* (#61) | Sebastian Wild | 2019-01-22 | 2 | -2/+8 |
| | | | | | Add list of components to Unit data type to handle v2 based builds per cabal unit. | ||||
* | Split up Compile.hs into multiple modules | Daniel Gröber | 2018-10-27 | 3 | -1/+335 |
| | |||||
* | Suport using Stack's built-in GHC to build the helper | Daniel Gröber | 2018-10-27 | 1 | -1/+6 |
| | |||||
* | Refactor Unit handling | Daniel Gröber | 2018-10-27 | 1 | -5/+6 |
| | |||||
* | Add stack support | Daniel Gröber | 2018-10-27 | 1 | -0/+86 |