After the commit, I uninstalled asymptote, removed the reference to my local port hierarchy from sources.conf, and did a selfupdate.
Why did you do that? What did the entry that you removed look like, and what lead you to the conclusion that you needed to remove it in the first place?
My goal was to verify that the new asymptote Portfile functioned correctly. While I was developing the Portfile my sources.conf looked like file:///Users/luis/macports/ports rsync://rsync.macports.org/release/ports/ I assume that while the "file:///..." line precedes the "rsync:///...", port will pickup my copy of the Portfile rather than the newly committed one. So I removed the first line and did a selfupdate. Two questions: - What is the best description of the ports referenced by "file:///..."? I called it "my local port hierarchy", but I now think this might be confusing. (It might mean my *copy* of "rsync:// rsync.macports...".) - After developing a new Portfile, what is the best way to pick up the newly committed Portfile? Should I leave sources.conf as is, delete my Portfile (the one under "file:///...") and re-portindex? See below for the source of my thick-headedness.
However port seemed to not find the new asymptote port:
% port info asymptote Error: Port asymptote not found
But ${prefix}/var/macports/sources/rsync.macports.org/release/ ports/graphics/asymptote/Portfile does exist. I tried deleting $ {prefix}/var/macports/sources/rsync.macports.org/release/ports/ PortIndex and doing another selfupdate, but that did not help.
Entries in sources.conf point MacPorts to a valid PortIndex file, from which ports and their info are gathered; if there are no entries in sources.conf, no PortIndex will be found (regardless of the file(s) actually existing on the local filesystem). In the case of a stock MacPorts intallation, the rsync://rsync.macports.org/ release/ports/ URL is the only entry in the souces.conf file, and it gets mapped locally to ${prefix}/var/macports/sources/ rsync.macports.org/release/ports/PortIndex as you infer. Nevertheless, again, if you remove the entry from sources.conf the corresponding index will not be found by MacPorts.
I'm curious as to what lead you to believe you needed to remove the entry, in case it's something in our documentation that's misleading you. In any case, the only thing you need to update your local ports tree and get fresh search results is put the entry back and issue a "selfupdate" regularly, plain and simple.
Duh! PortIndex is under version control -- I thought it was generated locally after a sync. Thanks! Luis