wiki:ksammons

Version 2 (modified by ksammons@…, 10 years ago) (diff)

--

Kyle Sammons is a Google Sumer of Code 2014 (GSoC 2014) participant from the University of Oregon, who's currently working on his GSoC 2014 project, Project Clean-up Stuff. You can find his personal GitHub here, where he puts the latest updates for his GSoC 2014 project.

Personal

Kyle is currently a Freshman at the University of Oregon, with the aim of graduating with a Bachelors of Computer Science with an Applied Mathematics minor in 2016. He's an experienced in the C, D, and Python programming languages, though he's dabbled in plenty others over the years (Java/PHP/NASM/Haskell/VB.NET). He frequently enjoys hiking and backpacking in the Pacific-Northwest, and reading up on programming language development.

IRC nick - centip3de

Email - ksammons@…

Google Summer of Code 2014

Project Clean-up Stuff

Kyle's project for the Google Summer of Code 2014 (GSoC 2014) is titled, "Project Clean-up Stuff". The project itself involves improving the current 'port clean' command to be more efficient in cleaning out dist files, as well as adding the ability to delete dist files from a certain version, or those that are no longer in use. The other half of the project involves adding in the ability to detect common issues in the MacPorts environment, similar to how Homebrew's 'brew doctor' works.

The full text of "Project Clean-up Stuff" submission:

The plans for this project are to combine the ideas of "Reclaim Disk Space" and "Configuration and Environment Selftest". While these are clearly two different projects, their similar theme and seeming ease of completion gave me the thought of combining them into one larger project. This means I'd be adding a "brew doctor"-esque command which will look for common issues such as a port that is known to cause issues, multiple versions of the same library, not having the correct dependency installed, or any other common issue and then report all found to the user. It also means I would also be improving the already implemented "port clean" command to be able to delete and clear out more disk space than it currently is able to by deleting distribution files from a certain version of an application, removing distribution files currently not needed/in use, deleting/uninstalling ports that are no longer in use, or any other way possible.

Milestones

  • Started working (4/28/2014)

Progress

Weekly updates for "Project Clean-up Stuff":

Week (4/28/2014 - 5/2/2014)

  • Created GitHub repo
  • Created Wiki on self
  • Added project to GSoC 2014 project page
  • Got unit tests up and running
  • Removed redundant code in portclean
  • Added code to get all applications that are no longer active.

Week (5/5/2014 - 5/10/2014):

  • Added a utility to function to test for inactivity in an application
  • Added code to uninstall inactive ports automatically
  • Added docstrings to all the code I added
  • Changed ‘get_info’ to now return a multidimensional array, instead of some hacked-together regex
  • Found the list of issues to test for and implement! https://trac.macports.org/wiki/ProblemHotlist
  • Fixed copyright year in portclean
  • Removed functions only used locally from the namespace

Week (5/12/2014 - 5/16/2014):

  • Fixed a large bug where after running the code, port install would no longer work.

Week (5/19/2014 - 5/23/2014):

  • Set up SVN branch
  • Removed unnecessary function arguments
  • Created new files to contain code in macports1.0/cleanup.tcl
  • Registered new command, “port cleanup” in port.tcl!
  • Moved over code/documentation to new file
  • Cleaned up left over code from portclean.tcl
  • Setup pkgIndex in macports1.0 to allow importing into port.tcl

Week (5/27/2014 - 5/30/2014):

  • Changed command to ‘port reclaim’, rather than ‘port cleanup’
  • Added functions to walk through all distfiles and delete them upon request
  • Added docstrings to all functions
  • Removed unneeded imports
  • Added these weekly updates to the wiki

Issues

Known issues for "Project Clean-up Stuff":