Opened 4 years ago

Closed 4 years ago

#61218 closed defect (fixed)

hs-alex: should indicate conflict with alex or be replaced by it

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone:
Component: ports Version: 2.6.3
Keywords: Cc: essandess (Steve Smith)
Port: hs-alex

Description

Trying to install ghc, I get this error:

Error: Can't install alex because conflicting ports are active: hs-alex

Looks like alex already indicates that it conflicts with hs-alex, but hs-alex does not indicate that it conflicts with alex; it should indicate this.

Why do we need two alexes? Could one of them be replaced by the other?

Change History (4)

comment:1 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Same question for:

  • bibutils and hs-bibutils
  • cpphs and hs-cpphs
  • curl and hs-curl
  • entropy and hs-entropy
  • happy and hs-happy
  • hscolour and hs-hscolour
  • html and hs-html
  • mtl and hs-mtl
  • parallel and hs-parallel
  • readline and hs-readline
  • zlib and hs-zlib

comment:2 Changed 4 years ago by neverpanic (Clemens Lang)

Some of your examples do not apply – for example, hs-zlib isn't the same thing as zlib, since the former contains bindings for the zlib library for Haskell, whereas cpphs and hs-cpphs indeed provide the same thing.

However, most of the hs- ports are dead anyway. Our new approach is to package the stack tool and use that in all ports that need a haskell compiler to build. There is no added value to providing the various hs- library ports anymore, so they should just be deleted.

comment:3 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

For documentation, here's your PR to delete them: https://github.com/macports/macports-ports/pull/8636

comment:4 Changed 4 years ago by neverpanic (Clemens Lang)

Resolution: fixed
Status: assignedclosed

In e5c6a53381ccb92fa84a7ee6f422dd6afeacaec7/macports-ports (master):

haskell-platform, hs-*: Delete

It is too complicated to keep up with the development of
haskell-platform in its current state, and while there is technically
nothing wrong with the approach, it has turned out that nobody has the
time to maintain copies of the hundreds of libraries that are required
to provide the full haskell platform as defined at [1].

Fortunately, there is a more modern alternative available in the form of
stack, which works similar to virtualenvs for python. We are now using
stack (in the form of the haskell_stack PortGroup) for all Haskell tools
we are packaging in MacPorts (e.g. darcs, git-annex, pandoc or
shellcheck). It is also the best alternative for our users.

I am not marking haskell-platform or any of the hs-* ports as obsoleted
using the obsolete PortGroup, because these ports have not built
successfully for a while now, and the users that still have successfully
compiled copies of these tools and libraries would likely rather keep
them around than having them replaced by a file telling them that the
ports are obsolete.

This currently breaks the following ports:

  • hedgewars
  • hsshellscript
  • distract
  • buddha

[1]: https://www.haskell.org/platform/contents.html

Closes: #53652
Closes: #60241
Closes: #60359
Closes: #61020
Closes: #61162
Closes: #61218
Closes: #61263

Note: See TracTickets for help on using tickets.