Ports committer, former portmgr member, former bugmeister member, former chief wrangler of package building machines.
Documenting my helper script prepareblacklist for poudriere.
- sparc64 package builds. On occasion, maintainer notifications.
Continuing development and maintainance of portsmon.
Sending email from portsmon informing maintainers about: ports marked BROKEN; ports marked DEPRECATED; ports marked FORBIDDEN; ports marked with an EXPIRATION_DATE; and PRs that they might not know about. Although these emails can be irritating they have also been very effective in getting problems fixed -- especially for maintainers who are not FreeBSD committers and thus do not get any mail from the PR system about their ports. (There is now a per-PR opt-out for the latter email. Also, for that email, if the maintainer is a committer, or the maintainer submitted the update (email message match), then the email is not sent. A per-maintainer opt-out needs to be added to the others.)
Created PkgStatistics (now obsolete).
- bsdort -exp (amd64-10-exp).
- perl5.14-as-default -exp.
- Set up arm build.
- Updated portbuild article for "new architectures".
Documented VMWareBootupSpeed problem.
- Boost -exp.
Slides for 201205DevSummit/Ports, presented at BSDCan 2012.
- Finished RAM/disk needs spreadsheet.
- Help bring up redports on NYI machines.
- C11-merge-to-9 run on 9-exp.
- Ruby -exp.
- Moved portsmon to portsmonj.freebsd.org.
Helped set up a test instance of RackMonkey for clusteradm.
- Brought up more machines for package building at Yahoo!.
- Provided support for Sean Bruno and Ben Haga during various trips out to Yahoo and ISC to update and repair systems.
- Configured several new package building systems at NYI.
- Helped coordinate the setup and testing of the NYI infrastructure.
- Configured several new package building systems at ISC.
- Loaned one of my systems to people to debug various sparc64 problems.
- Helped several new volunteers set up their systems as package building nodes (primarily sparc64).
- Set up several of my own machines as package building nodes.
Helped organize RackspaceWanted.
Updated the package building article to reflect the latest code.
Created a new set of reports on PRs (they are static for now). The page has most recently been reorganized by interest group (everyone; committers; bugbusters). Some correspond to the weekly postings that we already have, but others are new:
PRs correlated by manpage (mostly bin);
PRs indexed by tag (mostly kern);
Created the PortsBrokenBySrcChanges page and recruited help to fix the problems. This has been a huge task.
Assisted SimonNielsen in configuring a firewall for the ISC cluster, and in renumbering the IP addresses of those systems per ISC request.
Assisted BradDavis in debugging problems on the ISC cluster.
- Brought online 14 new sparc64 package build machines, and 4 new i386 package build machines.
Reworked the pointyhat home page, for readability.
Fixed some bugs on pointyhat that were introduced with the new scheduler and directory layouts. In particular, the package building statistics page is back up.
Reworked the proposed FreeBSD support schedule graph, which shows how many simultaneous versions of FreeBSD we are effectively committed to support, as part of the discussion about the impact the release cycles has on ports infrastructure work. Someone else needs to take this over.
Reworked my FreeBSD home page on freefall, so that people can find everything there of interest (including my past conference presentations).
Reworked the BugBusting page.
- Added the 'arm' category to GNATS. Documented all the work that has to be done to add a category.
- Repaired and upgraded some of the systems based at ISC, including ftp4.FreeBSD.org. Documented the systems there.
Helped to get VolkerWerth GNATS access. He has been instrumental in helping to classify and close PRs, as well as working with users to help them understand their problems.
Helped to get BruceCran GNATS access. He has also been very helpful.
Created a page about Sparc64Packages.
Update to portsmon to add ability to view ports with build errors in one environment only. Example: http://portsmon.freebsd.org/portsconcordanceforbuildenv.py?buildenv=i386-7-latest&buildenv2=i386-6-full. Also, added a page to show the state of all uploaded packages; and the ability for the overview page to show the state of the latest successful package build (not just build error).
- Performed sweeps of expired ports. Note: I intend to take "I let my ports expire" as some degree of indication that a maintainer may have lost interest in their ports and thus needs to be asked if their other ports should be reassigned to ports@ -- especially if there are pending PRs. Other people have taken over this task.
- With input from kris, revised the portbuild article.
- Helped with the transition of pointyhat to a newer machine.
- Updated the package error classification script to highlight more gcc4-specific cases, and eliminate some false positives.
Worked with GavinAtkinson to help him understand how to work with the PR backlog, including which PRs to close, how to ask for feedback, and so on. He has been a great help.
- Helped introduce the kld virtual category.
Cleaned up many of the non-ports PRs in a "feedback" state. See PRs in the feedback state which may be stale.
- Moved the various GNATS scripts from my own directory, to ~gnats, so that others can maintain them in the future.
Created a weekly posting of "PRs recommended for committer evaluation", based on a flat-file of PR numbers. The idea is to get more committers involved in clearing PRs. There is now a web page equivalent.
Created a weekly report of submitters of PRs so that we can look for new contributors.
Presented a paper at BSDCan 2008 about changes to portsmon to graph port failures and their dependencies. There is still more work to do to automate this.
Presented some informal thoughts at BSDCan 2008 about GNATS workflow issues.
- Helped to go through all current portmgr-assigned PRs at BSDCan 2007 devsummit; we closed a large number of stale ones.
- Helped to push for the removal of the 4.X support, to try to focus maintainer attention on newer releases. (This was controversial, but I think it was past time to do so.)
- Corresponded with Joerg Sonnenberger and David Maxwell of pkgsrc about projects, including an abstraction layer for ports/packages metadata. It would be great if we could convince the software author community to adopt some kind of standards for publishing metadata.
Continuing the experiment to classify src and i386 PRs by module name (or other "tag" when module name is not avaialable) in an effort to highlight areas that need attention. Also trying to ensure the the "patch" tag is added to PR with patches (there are currently over 1,000 of these in the system!) This was addressed in one of my 2008 talks. See PRs indexed by tag.
- Based on both of the above, created new weekly periodic postings.
- Tightend up the spam-filtering rules for GNATS. This dropped me several positions in the PR closing statistics. There are very few false positives; I handle those.
Helped edit the article Contributing to the FreeBSD Ports Collection which attempt to explain what portmgr expects of our ports committers and maintainers. Some of this information was not really available in the existing documentation.
Updated the Problem Reports article to make it less src-specific. I need to add information about spam filtering.
With help from EdwinGroothuis, implemented change to Ports index page to make the ports categories more browsable. Having done that, went back and reworked the page to break it into several pages with much more informative text.
Used the DistfileSurvey output to remove hundreds of bogus sites both from bsd.sites.mk as well as many other places in the ports tree.
Wrote the Choosing the FreeBSD Version That Is Right For You article in response to the "Quality of FreeBSD" thread on -stable which involved questions about "5.4 or 6.0"? The article is a general guide to -stable vs -current and how FreeBSD releases are made. This information supplants a bunch of more poorly written stuff in the FAQ and the latter needs to be removed. (A companion article would be a feature comparison from release to release; would someone like to do this?)
- Reset assignment of "new port" PRs that has been assigned to the same Responsible for many months. I would like to see much quicker turnaround of PRs that someone takes, or for them to be released so that others can work on them.
Created web pages that describe the various tasks portmgr performs and what its policies are. A recent update refactors the individual policies pages so that committers may more quickly find individual policies such as timeout periods. In addition, new background material was added about design decisions in the Ports Collection and how they influenced these policies.
- Trying to decrease the number of ports PRs in the PR database.
- Trying to decrease the number of broken ports overall, either by fixing them, encouraging others to fix them, or applying the Grim Reaper to ones that have outlived their usefulness.
- Working on ports meta-issues such as infrastructure improvements.
Making updates to the PortersHandbook to make it much more accurate and complete.
- Coming up with some kind of more useful idea about browsing and searching ports that the tools that we have right now, which I consider primitive.
- Suggesting minor changes to the FreeBSD web site to push some links down one page to reduce clutter while at the same time bringing important links up one page.
- Suggesting other changes to make FreeBSD more easily installable and maintainable, as I find them.
- Trying to improve FreeBSD's image outside of its own community, and trying to expand that community.
Projects that have stalled
- Get a jail for portsmon-exp.
Attempting to create some scripts that will allow us to view the state of ports on one buildenv vs. another buildenv (e.g. "ports that are marked BROKEN on amd64 but not on i386"); to view the reason why packages that were not marked BROKEN and thus were attempted did not build. See the preliminary results and the processlogs patch.
- Creating graphs of the state of packages on the various buildenvs over time.
Attempting to identify abandoned distfiles on freefall. (For comparison, here is the list of all distfiles on freefall. Someone else should take this over.
Check to see if eadler actually copied off whatever was useful in ports_links.html, then nuke it.
Merge ActionItems here.
- Set up a sparc64 ports tinderbox.
Coming up with proposals to fix the problems in the PortersHandbook.
Trying to encourage a rework of the FAQ to be something more general, more concise, and more browseable. A proposal was posted on -doc but needs much more work. Currently I am out of cycles to work on this in the near-term.
- Trying to update the concept of when we consider a PR 'too old' -- with particular emphasis on basing it on FreeBSD version. A proposal was posted on -doc.
The FreeBSD architecture chart, showing the availability of various features on a per-architecture basis. It got political. It would be really cool if someone else were to pick it up and bring it back up to date.
- For someone to create a marketplace where users willing to pay for feature developments or updates could be matched with developers willing to perform work to be released under the FreeBSD License.
- To find full-time employment, ideally that would let me remain based in Austin (up to 50% travel would be acceptable), either at competitive rates to do development work, or, as an experiment, reduced rates that would allow me to do FreeBSD work (e.g. bugfixing, writing documentation, QA activities). Resume available on request.
My ports link page on freefall contains dozens of links which are all horribly stale.
aka "why I hate wiki markup".