This afternoon, Bert JW Regeer wished that FreshPorts “would show information from the quarterly branches too…”.
I knew I had done some work on this and that there was a way to display branch information. I check the source code and found the ?branch= parameter, but there was nothing in the database for this branch.
I discovered several missing items. I apologize that this list will not refer to something you can check. It is mostly for my own notes when i come back to this later.
- No checked out 2016Q2 branch
- No 2016Q2 in scripts/branches.pm</li>
- FreshPort was not receiving email from the svn-ports-branches mailing list
To try getting one commit into the try, I did this:
cd /usr/FreshPorts/ports-jail/usr/local</li> sudo mkdir PORTS-2016Q2 sudo chown dan PORTS-2016Q2 cd PORTS-2016Q2 svn co svn://svn.freebsd.org/ports/branches/2016Q2 .
That took some time…
I grabbed a raw email from https://docs.freebsd.org/mail/current/svn-ports-branches.html and used it for testing. It seems that branches.pm needs to contain a hash of all branches we are using. Once I added 2016Q2 to that file, the commit was processed and loaded up.
That allows http://www.freshports.org/?branch=2016Q2 to display something.
Short term
In the short term, this needs to be done:
- svn co of each branch of the ports tree (now underway)
- Get copy of all emails sent to the svn-ports-branches email list (i.e. https://docs.freebsd.org/mail/archive/svn-ports-branches.html
- Remove requirement for each quarterly branch to be listed in branches.pm
- Automate the process of checking out each quarterly branch
I have the archives now: https://gist.github.com/dlangille/018e41ce3765783cce35049e56e77ec4
It seems I can remove the hash from scripts/branches.pm without affecting the code.
Items 1-3 of the above are either moot or completed in my dev environment.
I’ve hit a problem:
The problem arise when the code tries to execute PortsDependenciesAdd( ‘databases/mariadb100-client’, ‘security/openssl’, ‘R’ ). The code picks the branch on head for that, because the table does not cater for branches.
But wait, the table does cater for branches, via element_id. Look at this: