upt-macports project update and feedback request

Karan Sheth karan.sheth at somaiya.edu
Thu Jun 6 02:36:53 UTC 2019

Dear all,

As you may know, I am working on "Automating Packaging for MacPorts” using
upt (https://framagit.org/upt/upt) as my GSoC project. So I just wanted to
inform the MacPorts community about the current status of the project and
there are a few topics where we would like some input:

Project Link: https://github.com/macports/upt-macports

Project update: The backend for MacPorts is complete for Python (PyPI) and
almost complete for Perl (CPAN) and RubyGems, with some final changes to be

Community feedback is requested on the following topics:

1. The naming convention of Python ports
For upt to be able to process dependencies correctly and add missing
packages recursively, it is important to have a consistent naming scheme
for ports. Currently, that is not completely the case, although most ports
follow “py-<PyPI/upstream>”. In some cases though we keep the
capitalization, for some others we convert it to all lowercase;
additionally, some ports do not follow this convention (e.g., py-dateutil,
where PyPI is “python-dateutil” or “py-codestyle”, where PyPI is

Our proposal is to use “py-<upstream.lowercase()>” for all Python ports
going forward and renaming the ones that currently do not follow this
convention. Are there any concerns, objections, and/or considerations here
we might have missed? In any case, we will need to do some renaming to get
everything consistent (irrespective of what convention we choose), but it
will help for maintainability in the long run.

2. Packaging of Ruby ports
There is an “upt-rubygems” frontend in upt that we can leverage to generate
Ruby portfiles and we are currently looking into this. As many of the
current Ruby ports are outdated and are supporting EOL versions of Ruby, my
mentor @reneeotten suggested the following:
"Disclaimer: I am not very familiar with Ruby and only spend an hour or so
looking through the PortGroup and some of the ports; so this is by no means
fully worked out, but it seems to me that the PortGroup could use some
attention to start with. I’d suggest updating the current PortGroup (or
probably better to add a new one as ruby-1.1.tcl) in which we add support
for the most recent Ruby version (2.6) and ideally drop support for EOLed
versions, including the 1.x branch."

Any feedback from MacPorts/Ruby users at this time on both the proposal to
drop older versions and things to consider for the PortGroup or Ruby
packaging, in general, would be highly appreciated.

Finally, if you’re interested in this GSoC project, please take a look at
the repository (https://github.com/macports/upt-macports) or install the
“py37-upt” port and give it a try. The template for PyPI/Python ports is
complete, the templates for CPAN/Perl and RubyGems/Ruby are fairly
complete, but we’re still working out some details. Feedback from the
community is very welcome!

Karan Sheth


 <https://www.somaiya.edu>        <http://www.somaiya-ayurvihar.org>  
<http://nareshwadi.org>  <http://somaiya.com>  <http://www.helpachild.in>  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20190606/050e5f2d/attachment.html>

More information about the macports-dev mailing list