wiki:Meetings/MacPortsMeeting2018/Roadmap

Defining Roadmaps

What are the next steps required until the next MacPorts release(s)?

After a lengty discussion, we identified the following work mode to track base tickets and where they are being released:

  • Base tickets are usually created without milestones.
  • When closing a ticket when a fix is pushed to master, set the milestone field to the milestone for the next feature release to indicate that is now fixed on master.
  • If the fix should be backported to a release branch, set the needs-backport keyword.
  • When backporting to a release branch, set the ticket's milestone to the milestone for the next bugfix release.
  • If there are milestones missing, file a ticket against the trac component and request them.

This documentation should be moved to the guide #56056.

Release Planning

MacPorts 2.4.3

We identified a need for a bugfix release from the 2.4.x branch, because trace mode is currently broken in 2.4.2 on High Sierra. The ticket for that is #55575. There was an email from Ryan a while ago that requested backporting a number of fixes as well. We created #56018 to track this.

#34619
prevent use of unknown subports
#50469
Git clone fails - SSL certificate problem: Couldn't understand the server certificate format
#52218
make test: Error: no mirror had select-0.1.tar.gz for gcc_select
#55492
move: case-only renames fail when no arguments are given
#55560
Failed to locate 'lbzip2' in path: '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?
#55575
port -vst install fails with "/usr/bin/tar: No such file or directory"
#56018
Backport bugfixes to release-2.4 for next release

MacPorts 2.4.4

#26486
Error attempting to install portfile with non-integer revision
#55680
Trace mode fails when ccache is used
#55933
Use MacPorts Subversion when fetch.type svn on OS X El Capitan and earlier
#55939
reclaim does not support distfile tags
#55989
Use MacPorts git when fetch.type git on OS X Mountain Lion and earlier
#56267
Backport changes to release-2.4 for 2.4.4

MacPorts 2.5.0

There are a number of features that we want to get done before the next major version release. We mostly picked branches with some code that don't need a lot of work to merged into master and simple tickets for this milestone. We did not want to set any far-reached goals for 2.5.0.

#22471
Debugging options for startupitems (launchd / daemondo)
#23677
Deactivating a port should automatically unload daemons
#31798
Installation from binary package does not notify user of need to start launch item
#36770
Need for a fix regarding mechanism for startupitem handling
#40074
Add macports.conf setting controlling startupitem.autostart
#44295
support more than one launchd plist
#44496
startupitem_install not respected when installing from binary archive
#44497
Change port load to use MacPorts plists directly
#46807
base: allow dots (.) in variant names
#52445
portpatch.tcl: support xz-compressed patchfiles
#53843
warning: 'syscall' is deprecated: first deprecated in macOS 10.12 - syscall(2) is unsupported; please switch to a supported interface
#53857
port -N reclaim does not remove any ports
#54037
port reclaim missing in man page of port
#54743
Binary-only mode requested with no usable archive sites configured
#55282
Lack of Xcode 9 update not detected with High Sierra OS.
#56053
Respect cxx_stdlib and delete_la_files in selection of archive_site
#56326
rev-upgrade considers gcc as broken due to libstdc++
#56434
Inconsistent flag names --nosync and --no-mirror

MacPorts 2.6.0

We identified a number of features that we think should be the next step after 2.5.0 and added them to the 2.6.0 milestone.

#15186
port upgrade does not work correctly on current pseudo-port
#16373
base should maintain a persistent working copy for all supported VCS fetches
#29093
changing $worksrcdir break the build when using git.fetch or hg.fetch
#37867
Weird library install_names for MacPorts dylibs
#46927
record successfully applied patches in the statefile
#50448
Change filenames of binary packages built against libc++ on < 10.9
#50518
bug: case sensitive port names in boolean expressions
#50708
Base should support fetching git submodules (git submodule update)
#50896
Implement a function to create stable tarballs
#55471
Use separate portindexes for libc++ on older systems
#56019
Support automatic migration between OS releases using 'port migrate'
#56022
Colors in the port command
#56041
Update compiler selection for 10.6-10.8 with libc++
#56042
Bundle libc++ with MacPorts on 10.6
#56055
Support creating MacPorts pkg/dmg by using 'pkg' and 'dmg' targets in the base builds system
#57133
Don't offer universal variant when multiple architectures aren't supported
#57717
archive_site_local doesn't work at all
#57718
Unexpected behavior when archive_site_local contains more than 1 URL
#57719
archive_site_local URLs are attempted twice
#57720
preferred_hosts has no effect on archive_site_local

MacPorts 2.7.0

#15712
Add versions to platforms
#15939
port install : in need of a progressbar
#42207
uninstalling macports could be easier
#46956
base should keep track of explicitly requested variants on install and only preserve those on upgrade
#50969
Provide a generic extract command in base
#54787
Don't install dependencies of packages that can't be installed
#55502
Use size from checksums for curl progress bar when server does not supply length header
#56020
Finalize and merge gsoc10-configfiles
#56021
Finalize and merge gsoc11-post-destroot
#56183
registry: Remove the receipt_flat storage

Base tickets without a milestone

#12048
RFE: Document all the code in the MacPorts base
#20683
port upgrade does nothing with a downgraded package
#23038
Option to automatically clean distfile too
#24520
warn when an unavailable version is requested for install
#24687
port command unnecessarily requires permissions to the cwd
#24778
please add mcpu (march is only for x86)
#25182
add a way to exclude build dependencies from pseudo-portname "leaves"
#25970
Variant names should be treated case-insensitively
#26028
Add feature to show changes between port versions
#26853
MacPorts should say why it is (re)installing a dependency
#26918
MacPorts-1.9.1 compiled to XFS NFS files system
#27097
program suggests running 'port xxx' from within the 'port' interactive shell
#27141
Feature request: make minimum UID/GID for adduser addgroup commands configurable
#27353
selfupdate failing, perhaps a user account issue?
#27788
ports should ignore default +universal when universal archs mismatch
#28001
MacPorts base could support out-of-source builds, or tell user that it doesn't
#28096
stale interpreter reference used after error in interactive mode
#28640
port lint should warn when *-append should be used
#28738
Hard links fail with Macports on AFS
#29009
port incorrectly detects some ports as uninstalled
#29172
remove dependency on Xcode
#30040
Allow case-sensitive build roots
#30067
archives owned by different users
#30328
Enable variants for specific ports in variants.conf
#30562
MacPorts should offer to sign archives
#30622
port should output a message when vacuuming registry
#30736
Local repository with space in path name won't work
#31056
Locking somewhat broken in MacPorts 2
#31472
pextlib crash/segfault in curl code
#32261
Allow building on a RAM disk or other secondary disk
#32266
pkg: tell us where it was created
#32700
port upgrade -u py25-wxpython fails to deactivate old version
#33037
background archiving
#33299
--with-macports-user also sets the group
#33396
Create single mpkg of all installed ports
#33491
Save binary packages to user-specified location
#33629
port -e, environment mode
#33820
base: add ui_msg to output outdated ports during selfupdate
#33890
base: add default compiler variants
#33930
Ignore consequences of broken DNS servers
#33933
Remove "port -u uninstall" functionality
#34832
PORT/work/.home/.subversion and proxy access
#34841
Each MacPorts install adds a $PATH variable even if it already exists; Also, puts it after rvm $PATH variable
#34931
Add "new" to port command
#35093
mpkg / mdmg requires cleaning and reinstalling every time
#35670
could not set effective gid to 0
#36137
Option to mark a port for installation when the port is fixed
#36612
path:-style dep allows non-macports file inside macports prefix
#36951
Feature Request: Notify me when my local Portfiles shadow upstream Portfiles that have been updated
#37583
base: Update m4/tcl.m4 to check for tcl8.6
#37853
RFE: "port provides" should return a different message when used on files provided by base
#38112
RFE: add a "depends_pkg" type of dependency
#38120
RFE: automatically remove .DS_Store files from build directories
#38206
RFE: pubkeys_conf variable in macports.conf
#38381
RFE: pseudo-portnames `depof:` and `rdepof:` should be more granular
#38555
RFE: Move "rec_glob" proc from nodejs portfile into base
#38579
RFE: make the aclocal.m4 file in base safe to regenerate with `aclocal`
#38582
RFE: update the configure.ac file in base to silence some warnings produced by autoscan
#38586
atlas @3.10.1_3: log file contents missing when -k option used
#38662
RFE: Replace "command execution failed" with a more informative error message
#38697
mdmg says it's up-to-date when it isn't
#38859
Use dseditgroup in "addgroup"?
#38862
Automatically clean builds with old statefile formats
#39272
`-p` flag for `port` command doesn't play nice with errors resulting from mismatched requested variants vs. originally-selected variants
#39405
Space character in packagemaker_path attribute in macports.conf breaks mpkg and mdmg
#39423
Uninstalling replaced port with dependents has to be forced
#39659
configure script does not expand "~" for applications_dir and frameworks_dir
#39782
Add keyword to list compatible graphical environments (X11, Quartz, Wayland)?
#39897
Add 'optional' or 'recommended' metadata tags to portfile spec.
#40035
base aborts if current directory does not exist, even when given a port name
#40042
base should ignore variant conflicts when cleaning
#41339
Add "dependencies" as alias of "deps"
#41796
binary package download ignores macosx_deployment_target set globally
#41828
port 2.2.1 mpkg build fails after package has been created
#42731
RFE: Add a conf option to automatically run test phase during normal install process
#43291
more integrated security notification: security page, port selfupdate notice, ...
#43648
mpkg missing daemondo
#43809
port selfupgrade to base v2.3.0 fails on G4
#43996
port select should record its symlinks in the registry
#44067
use "configure.includes {path1 path2}" instead of "configure.cppflags -I{path1} -I{path2}"
#44291
/opt/local/libexec/macports/bin/tclsh8.5 crashed when activating libgpg-error on PPC Leopard, Mac OS X 10.5.8
#44413
Use a compiler wrapper script
#44451
Update Installer System Requirements info
#44493
Support globs in port versions
#44509
selfupdate tried to tell me to run selfupdate again
#44549
Overriding autoreconf.cmd/autoconf.cmd/automake.cmd should delete default autoreconf.args/autoconf.args/automake.args
#44691
port search: return Trac ticket for submission
#44741
ran into a segfault from the tclsh bundled with MacPorts when doing `sudo port -d upgrade php*`
#44786
list of dependencies to be installed can be inaccurate
#44894
base: improve livecheck.type moddate
#44900
Installation of Xcode should be better than Homebrew's process
#45010
RFE: stop "port test" immediately if no test phase defined
#45274
Run portbuild::build_main once for each build.target
#45314
the copy of tclsh8.5 bundled with MacPorts SIGSEGVs when changing internet connections during a curl operation
#45353
base - git and mercurial fetching target directory
#45674
Misleading logging
#45851
port should scan for DYLIB missing the TWOLEVEL flag
#45981
Clearer logging
#46139
postflight.in v2.3.1 Error determining network user's shell
#46229
Uninstalling all active ports - are you sure?
#46543
MacPorts should handle archive signature download failures gracefully
#47442
port: new action_environment and/or environment mode
#47706
base: postflight.in: Missing check causes duplicate PATH entries when sourcing CONF_FILE
#48051
Installing a port +universal needlessly reinstalls recursive dependencies +universal
#48345
Building for 10.4u SDK on 10.6 uses gcc-4.0 even though building directly on 10.4 uses the newer apple-gcc-4.2
#48423
Replace bzip2 and gzip with pbzip2 and pigz system wide?
#48680
port-lint: Add option to disable parent directories checks
#48968
Using port in Eterm: curl progress callback failed: can't read "env(COLUMNS)": no such variable
#48983
portconfigure.tcl : fix for building on Linux
#49101
Ensure that macports $HOME exists and is valid
#49169
port selfupdate fails with an imprecise error message when the Xcode license has not been accepted
#49496
Offer a choice of mirror server in the MacPorts installer package
#49501
Spaces and Backslashes in Group Names
#49645
`port -n upgrade --force foo` should deactivate after creating the new archive
#49855
base fails to build on Linux: sip_copy_proc.c:319: error: ‘struct stat’ has no member named ‘st_mtimespec’
#50168
selfupdate: rsync fails if http_proxy is configured
#50233
port upgrade --force shouldn't uninstall if no permission was given to install a missing dependency
#50770
In rsync_options, use --delete-delay instead of --delete-after
#50918
buildbot-slave: file mkdir in post-extract creates a dir owned by root
#51045
"---> Attempting to fetch" doesn't start in a new line
#51183
MacPorts did not install curl's dependency openssl
#51214
Add option to show binary package URLs
#51298
Base does not prevent conflicting port activation when portfile from registry cannot be executed
#51498
requested (meta) ports get uninstalled on uninstall leaves
#51499
Propose --follow-dependents
#51599
main.log is never deleted with "keeplogs yes"
#51684
xcodebuild exists but failed to execute
#51706
platform statement: support an else clause
#51799
add a concept of 'distributions' for ports that work on specific older architectures
#52000
Add xz to "base" to allow changing the default compression format to .tar.xz in the future
#52303
`port uninstall --follow-dependents` uninstalls more ports than `port rdependents` reports
#52530
conditional PortGroup include
#52575
Report Xcode version and other useful information in main.log
#52700
port rev-upgrade stumbles over -weak_framework library dependencies
#52713
splitting up ports in "runtime" and "-dev" ports, DebUntu style (PoC)
#52767
port lint should warn when modeline is missing
#52873
port sync should open only a single rsync connection
#52898
revision convenience
#52911
rev-upgrade -v should be more verbose about missing architecture
#52952
Ability to list just emails or just GitHub usernames of maintainers
#52973
add setting to allow main.log truncation
#52981
Print custom warnings from Portfile with `port info`
#53089
option-contains
#53387
Pextlib/xinstall : don't ignore directory chmod errors silently
#53404
`port upgrade outdated` changes colours in terminal emulation
#53411
macports-base codesigning ?
#53487
Request: `port provides <file>` should indicate whether or not it points to a macports port file
#53730
copy, delete, move, touch: support -W argument for changing working directory
#53851
Add port action that bumps version and checksum
#53909
port diagnose fails in xcode-select
#54056
MacPorts should warn when not using "macports" rsync module
#54366
2 variant convenience procedures
#54386
variants set with default_variant don't propagate the same way as variants set by the user do.
#54388
port -q should suppress warnings
#54393
Port fails to execute an upgrade with the additional arguments given at invocation but uses it for upgrading the ports on which the given port depends
#54579
Add alias "dependencies" for action "deps"
#54645
Uninstall one Python version removes packages from other Python versions
#54697
`port history` action
#55011
livecheck should have curl request a compressed response
#55085
Trying to install a port which is already installed should mark it as requested.
#55089
Make "port requested" an alias for "port installed requested"
#55139
RFE: Improve Compiler Management Code
#55151
port install fails if $COLUMNS is unset
#55332
chown does not support changing group
#55445
install phase fails with "no destroot found"
#55468
macports destroot.umask not recursively applied
#55508
autorequested (mark some unrequested leaves as requested)
#55514
Add semantic versioning support to livecheck
#55546
Install dependencies without asking
#55634
port "gohome" errors with "A keychain cannot be found." if Safari is not already running
#55637
allow port reactivation (WIP)
#55653
"sudo port upgrade outdated" fails
#55673
destroot.keepdirs should behave better if specified path is not in destroot
#55827
sandbox-exec: execvp() of 'sh' failed: No such file or directory
#55940
Don't import suffix into global namespace
#56008
port mirror does not indicate failure when checksum verification fails
#56016
make test uses the installed version of MacPorts, not the just-built one
#56040
Move some checks out of lint --nitpick
#56120
pkg-config fails to find python3
#56134
shortcut to combine selfupdate and upgrade outdated
#56180
use subdir for trace mode socket
#56201
make dist requires DISTVER to be specified
#56204
Remove prefix string from darwintrace.dylib and Pextlib.dylib
#56245
rev-upgrade: Handling missing architectures on libraries
#56252
macosx_version should contain the full macOS version
#56318
Base should know the installed version of the command line tools
#56345
Make it easier to determine which ports have lint problems
#56365
Create test to verify correct functioning of ptys in system call
#56435
selfupdate should use parallel build
#56437
rev-upgrade ignores -p
#56457
use_dmg: /usr/bin/cpio: illegal option -- 0
#56549
selfupdate loses error message returned by mportsync
#56563
Failed to activate: Cannot restore xattr:com.apple.decmpfs
#56606
port -D install doesn't work for subports
#56619
I ran "sudo port selfupdate" and now I cannot install any ports without an error
#56625
test statefile-unknown fails
#56626
test shellescaping fails
#56629
Feature request: make cxx_stdlib conflicts more verbose
#56704
archivefetch failed verification with key /opt/local/share/macports/macports-pubkey.pem
#56743
--with-no-root-privileges should imply --without-startupitems
#56756
Build doesn't honor --bindir, --libexecdir, etc.
#56757
reclaim removed my ports without asking
#56793
Installing a port with many files appears appears hang
#56817
`port activate`: error selecting already active variant
#56957
attempt to create ccachedir conditionally
#56963
New keywords for bash/zsh tab-completion
#57003
port info order of fields is unexpected
#57011
New keyword for man page/documentation installation
#57075
port diagnose: check directory permissions
#57076
port diagnose: warn about incompatible archs
#57099
[feature request] "replaces" keyword
#57143
Unable to determine location of a macOS SDK
#57160
MacPorts base readline support is not compatible with MacPorts readline port
#57171
Registry operations can take a very long time in 2.5.3 under Mojave
#57391
port log doesn't accept subport
#57507
Old gegl 0.2 port got stuck
#57653
install/upgrade feedback suggestion
#57690
Warning when disabling default archive_sites
#57695
Set AR, NM and RANLIB env. variables
#57730
registry.db files table should have unique constraint over id and path columns
#57736
Allow the location of archive_sites.conf and pubkeys.conf to be configured in macports.conf

Last modified 8 months ago Last modified on Apr 21, 2018, 1:50:41 PM