Cabal (software) - Cabal (software)
Původní autoři | Isaac Potoczny-Jones |
---|---|
Vývojáři | Duncan Coutts |
První vydání | Leden 2005 |
Stabilní uvolnění | 3.2.0.0[1] / Duben 2020 |
Úložiště | |
Napsáno | Haskell |
Operační systém | Žádný Unixový, Microsoft Windows |
Velikost | 0.4 megabajtů |
K dispozici v | Angličtina |
Typ | Správce balíčků na úrovni aplikace |
Licence | BSD |
webová stránka | www |
The Haskell Cabal (společná architektura pro stavbu aplikace a knihovny ) pomůcky při balení a distribuci softwarové balíčky. Je obsažen v Haskell Platform.
Dějiny
Cabal byl představen za účelem zjednodušení balení softwaru a modulů Haskell[Citace je zapotřebí ]. Byl přidán do Překladač Glasgow Haskell verze 6.4 jako výchozí správce balíčků,[2] spolu s interním manažerem GHC ghc-pkg. Skutečná binární kabala[3] a knihovna Cabal[4] jsou vyvíjeny v různých balíčcích.
Během svého vývoje získal další funkce, například pískoviště[Citace je zapotřebí ], které umožňují uniknout z takzvaného Cabal pekla (viz níže).
Použití
Balíčky Cabal poskytují standardní sadu metadata a proces sestavení; je tedy možné vyvinout nástroje pro nahrávání balíčků Cabal do CPAN - jako komunitní úložiště softwaru, Hackování, nebo dokonce umožňují automatické stahování, kompilaci a instalaci požadovaných balíčků z Hackage.[3]
Kritika
Protože Cabal ve výchozím nastavení používá globální úložiště balíčků, mohou konflikty verzí v závislostech vést Cabal peklo, stav, kdy se určité balíčky nemohou nainstalovat bez přeinstalace již existujících a tedy rozbití ostatních balíčků.[5][6]
Ačkoli verze 1.18 představila karantény a vylepšila to závislost peklo,[7] nevhodné použití karantén může stále vést k problémům, protože balíčky na Hackage se nemusí stavět nebo hranice verzí závislostí byly příliš volné.[Citace je zapotřebí ] Výsledkem byla stabilnější (ale méně krvácející hrana) varianta Hackage Zásobník byl vytvořen.[8] Později byl rozšířen o Haskell LTS[Citace je zapotřebí ] a nástroj zásobník,[9][10] který nesdílí své problémy.
Reference
- ^ „Getting the Haskell Cabal“. Citováno 23. května 2020.
- ^ „1.4. Poznámky k verzi verze 6.4“. Uživatelská příručka GHC 6.4. Citováno 2016-01-12.
- ^ A b "cabal-install: Rozhraní příkazového řádku pro Cabal a Hackage". Hackování. Citováno 12. ledna 2016.
- ^ „Cabal: Rámec pro balení softwaru Haskell“. Hackování. Citováno 12. ledna 2016.
- ^ „Cabal / Survival - HaskellWiki“. HaskellWiki. Citováno 12. ledna 2016.
- ^ „Jak bychom mohli zrušit Cabal Hell?“. Dobře napsaný - The Haskell Consultants. Citováno 12. ledna 2016.
- ^ „[Haskell-cafe] ANN: Cabal v1.18.0 vydáno“. Seznam adresátů Haskell-cafe. Citováno 12. ledna 2016.
- ^ "Stackage Server". FP Complete. Citováno 12. ledna 2016.
- ^ „OZNAMOVÁNÍ: první veřejná beta verze zásobníku“. FP Complete. Citováno 12. ledna 2016.
- ^ „Co chtějí Haskellers? Více než tisíc nám to řekne“.
Správa balíčků s kabalou je jediným nejhorším aspektem používání Haskellu. Na otázku, zda by zlepšení správy balíčků změnilo jejich budoucí výběr Haskellu pro projekt, 38% uvedlo, že by to bylo „zásadní“ a dalších 29% uvedlo, že by to bylo „důležité“. Komentáře spojovaly kabalu se slovy jako peklo, bolest, hrozné, naštvané, frustrující a odporné. Pouze toto téma ukázalo takovou vážnou nespokojenost.
externí odkazy
- Oficiální webové stránky
- „Haskell Cabal: Společná architektura pro vytváření aplikací a nástrojů“ - (původní návrh a specifikace, Isaac Jones, Simon Peyton Jones, Simon Marlow, Malcolm Wallace a Ross Patterson; verze byla předložena na Haskell Workshop, 2005)
- Cabal mluvit[trvalý mrtvý odkaz ] - (snímky)