Opened 12 years ago

Closed 4 years ago

#33768 closed enhancement (fixed)

cherokee shouldn't use negatively-named variants

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: herbygillot (Herby Gillot)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: cherokee

Description

cherokee uses many negatively-named variants (no_ipv6, no_pam, no_epoll, etc.). Since the release of MacPorts 2.0, negatively-named variants are deprecated and should no longer be used.

In general, variants should only be provided where there's a reasonable expectation that a user might want to disable a particular feature. So first, decide which, if any, of the existing variants can be removed.

For the remaining variants, rename any "no_" variants to positively-named versions (e.g. ipv6, pam, epoll, etc.); these new variants would then do the opposite of what they do now: they would enable the feature in question, instead of disable it. Then you use default_variants to turn on by default those variants you feel users are likely to want.

To help users upgrading from the negatively-named variants, the negatively-named variants should be retained, as stub variants that merely set or unset the positively-named variant; these legacy variants can be removed after most users have upgraded; we usually leave them in place for one year.

For example, if you decided it was essential that users be able to disable IPv6 functionality, you might have these lines in the Portfile:

configure.args-append --disable-ipv6

variant ipv6 description {Enable IPv6 support} {
    configure.args-delete --disable-ipv6
    configure.args-append --enable-ipv6
}

variant no_ipv6 conflicts ipv6 description {Legacy compatibility variant} {}
if {[variant_isset no_ipv6]} {
    default_variants -ipv6
} else {
    default_variants +ipv6
}

Additional variant-related issues you may or may not want to incorporate are in #30324.

Change History (2)

comment:1 Changed 5 years ago by mf2k (Frank Schima)

Owner: michael@… deleted
Status: newassigned
Version: 2.0.4

See #58384.

comment:2 Changed 4 years ago by herbygillot (Herby Gillot)

Owner: set to herbygillot
Resolution: fixed
Status: assignedclosed

In daed60864683925cef2999bfe3bcadbab25039fe/macports-ports (master):

cherokee: update to 1.2.204

  • use distfiles from Github as official site points to Github-hosted assets
  • use recommended checksum types
  • patch and configure to use $prefix/var/www as www root
  • remove all variants, add new variants for ffmpeg and LDAP
  • add Python 2.7 as lib dependency, also needed for build process
  • use automake/autoconf/libtool in build process

Closes: #30324
Closes: #33768
Closes: #44766
See: #33767
See: #43704

Note: See TracTickets for help on using tickets.