{"action":"created","issue":{"url":"https://api.github.com/repos/haskell/cabal/issues/269","labels_url":"https://api.github.com/repos/haskell/cabal/issues/269/labels{/name}","comments_url":"https://api.github.com/repos/haskell/cabal/issues/269/comments","events_url":"https://api.github.com/repos/haskell/cabal/issues/269/events","html_url":"https://github.com/haskell/cabal/issues/269","id":4726141,"number":269,"title":"Add support for convenience libraries","user":{"login":"bos","id":23374,"avatar_url":"https://avatars.githubusercontent.com/u/23374?v=3","gravatar_id":"","url":"https://api.github.com/users/bos","html_url":"https://github.com/bos","followers_url":"https://api.github.com/users/bos/followers","following_url":"https://api.github.com/users/bos/following{/other_user}","gists_url":"https://api.github.com/users/bos/gists{/gist_id}","starred_url":"https://api.github.com/users/bos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bos/subscriptions","organizations_url":"https://api.github.com/users/bos/orgs","repos_url":"https://api.github.com/users/bos/repos","events_url":"https://api.github.com/users/bos/events{/privacy}","received_events_url":"https://api.github.com/users/bos/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/haskell/cabal/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/haskell/cabal/labels/library","name":"library","color":"AECF38"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/haskell/cabal/milestones/5","html_url":"https://github.com/haskell/cabal/milestones/_%7C_","labels_url":"https://api.github.com/repos/haskell/cabal/milestones/5/labels","id":123212,"number":5,"title":"_|_","description":null,"creator":{"login":"bos","id":23374,"avatar_url":"https://avatars.githubusercontent.com/u/23374?v=3","gravatar_id":"","url":"https://api.github.com/users/bos","html_url":"https://github.com/bos","followers_url":"https://api.github.com/users/bos/followers","following_url":"https://api.github.com/users/bos/following{/other_user}","gists_url":"https://api.github.com/users/bos/gists{/gist_id}","starred_url":"https://api.github.com/users/bos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bos/subscriptions","organizations_url":"https://api.github.com/users/bos/orgs","repos_url":"https://api.github.com/users/bos/repos","events_url":"https://api.github.com/users/bos/events{/privacy}","received_events_url":"https://api.github.com/users/bos/received_events","type":"User","site_admin":false},"open_issues":184,"closed_issues":102,"state":"open","created_at":"2012-05-24T04:38:13Z","updated_at":"2015-11-08T11:51:57Z","due_on":null,"closed_at":null},"comments":13,"created_at":"2012-05-24T05:13:30Z","updated_at":"2015-12-02T05:48:35Z","closed_at":null,"body":"(Imported from [Trac #276](http://hackage.haskell.org/trac/hackage/ticket/276), reported by rl on 2008-05-09)\n\nI'd like to have a package with several binaries which all use a convenience library included in that same package. The convenience library should NOT be installed. For this to work, Cabal needs two things. Firstly, it must allow dependencies within a package such that I could describe the library and have the binaries depend on it. Secondly, it should have an \"installable\" flag, similar to \"buildable\". A thing that's not installable would be built but not installed. The same mechanism could be used for package-internal tools."},"comment":{"url":"https://api.github.com/repos/haskell/cabal/issues/comments/161187856","html_url":"https://github.com/haskell/cabal/issues/269#issuecomment-161187856","issue_url":"https://api.github.com/repos/haskell/cabal/issues/269","id":161187856,"user":{"login":"BardurArantsson","id":459138,"avatar_url":"https://avatars.githubusercontent.com/u/459138?v=3","gravatar_id":"","url":"https://api.github.com/users/BardurArantsson","html_url":"https://github.com/BardurArantsson","followers_url":"https://api.github.com/users/BardurArantsson/followers","following_url":"https://api.github.com/users/BardurArantsson/following{/other_user}","gists_url":"https://api.github.com/users/BardurArantsson/gists{/gist_id}","starred_url":"https://api.github.com/users/BardurArantsson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BardurArantsson/subscriptions","organizations_url":"https://api.github.com/users/BardurArantsson/orgs","repos_url":"https://api.github.com/users/BardurArantsson/repos","events_url":"https://api.github.com/users/BardurArantsson/events{/privacy}","received_events_url":"https://api.github.com/users/BardurArantsson/received_events","type":"User","site_admin":false},"created_at":"2015-12-02T05:48:35Z","updated_at":"2015-12-02T05:48:35Z","body":"The problem is that if we don't have a *clear* guideline for exactly how to proceed on any given issue then \"pr welcome\" or \"easy\" issues are, I'd argue, even worse than useless because people will just dive in and immediately get discouraged because these things often unfortunately *aren't* easy due to the state of the cabal-install code base. Either that or we need some person who's willing to be designated \"mentor\" on said issue and who can help guide the person through. (Similar to a hackathon.) I don't deny that these people who want to help exist -- but I think there are more useful issues they could be working on! (See also below.)\r\n\r\nThe problem with labels is that they have no semantics associated with them by GH Issues... and the project doesn't seem to have any either? (Didn't do a particularly thorough search, but I couldn't find any description of what any of the labels in here actually *mean*.) I also have a whole rant about GH Issues... :).\r\n\r\nI'm not necessarily saying that wishlist items should automatically be discarded/closed, but wishlist items with no action since 2008? C'mon, now! That's obviously a wishlist item that no more than 1+\\epsilon people care about. (In general, I think there must be some sort of \"deadline\" for wishlist items, unless we're talking rare cases of wishlist items which are showing clear progress towards being solved.)\r\n\r\nBtw, thanks for the description of a possible solution for this concrete issue. *THIS* is what should be front-and-center (i.e. in the issue description) for any \"easy\" or \"pr welcome\" type issue.\r\n\r\n(This is a bit of side -- but related -- issue, but the project as a whole could definitely do better on the \"pr welcome\" front -- it certainly doesn't *appear* like PRs are particularly welcome at the moment. There are a *lot* of lingering PRs in the queue, many probably obsolete or not which will have to be redone because master has moved on... not encouraging for outsiders :/. I know people are doing their best, but... I think something needs to change.)"}}