barrucadu / cabal-info Goto Github PK
View Code? Open in Web Editor NEWRead information from cabal files.
License: MIT License
Read information from cabal files.
License: MIT License
If you have an executable called "foo" and a testsuite called "foo", then "foo:name" currently refers to the executable and there is no way to get the name of the testsuite.
Best way to solve this is probably to add another optional prefix, so you can say (eg) "executable:foo:name" and "testsuite:foo:name".
Currently the build platform is used. This is a reasonable default (although the host platform would be even better), but it would be nice to have it as a parameter.
If flag processing is added (#2), then it might be nice to just dump a pretty-printed cabal file with the flags applied, so you can easily see the effects of different flags.
These come up if a field isn't there, but doesn't get a Maybe
value (eg, the description or copyright fields). Could special-case [""]
, but just stripping trailing empty lines might be nicer.
Currently flattenPackageDescription
is used, which just merges everything.
I was skimming the cabal source code, and it mentions that finalizePackageDescription is deprecated and now assumes certain artifacts are always not buildable. I am not sure if that has a direct effect on the values you are displaying.
Also, package level build-depends is overshadowing library/exe level build-depends, I believe.
Would be nice to get the description and default value of a flag. This doesn't nicely fit into use of a PackageDescription
though, need to get those from the GenericPackageDescription
.
Would be nice if there was something like cabal-info executables
to list the names of the executables.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.