Ticket #147 (closed enhancement: fixed)

Opened 6 years ago

Last modified 3 years ago

Replace Extension type with (newtyped?) String

Reported by: guest Owned by:
Priority: normal Milestone: _|_
Component: Cabal library Version: 1.1.6
Severity: normal Keywords:
Cc: Difficulty: normal
GHC Version: 6.4.2 Platform: Linux

Description

Currently it is not possible to put extensions that Cabal does not know about in Cabal files. With GHC's -XFoo and --supported-extension flags there is no need for Cabal to maintain its own extension list, so this type should be replaced with either

type Extension = String

or

newtype Extension = Extension String

Change History

Changed 6 years ago by duncan

  • type changed from defect to enhancement
  • milestone set to Cabal-1.4

Changed 5 years ago by duncan

  • priority changed from high to normal
  • milestone changed from Cabal-1.4 to _|_

Discussion inconclusive.

Changed 3 years ago by duncan

  • status changed from new to closed
  • resolution set to fixed

I'm closing this. The original problem is fixed though not via the suggested solution. That is to say that Cabal does now let you list extensions in the .cabal file that Cabal does not know about and if ghc supports them then it'll work.

However we still want to maintain a registry of known semi-standardised extensions. Then the choice between using a newtyped String and an enumeration with an UnknownExtension String case is a more detailed question of API and implementation. If anyone feels strongly about the latter then they should present their arguments (and patches) in this ticket or a new ticket.

Alternatively if anyone feels strongly that Cabal should not maintain the registry of known semi-standardised extensions, then that's a discussion we should probably hold on the mailing list.

Note: See TracTickets for help on using tickets.