Sunday 9 November 2014

Week 9

I could tell this week that we're getting into the late fall and nearing the end of the semester. Not from the weather, of course, since I spent all week sitting indoors at school: I could tell because my various class assignment deadlines are so unreasonably close together, and the labs are packed even on weekend nights. I always wonder why most classes seem to present about 50% of the assigned work in the last 25% of the term.

This means it's also the UCOSP home stretch! I spent this past week trying to implement features needed for the Configuration API that are missing from the Freeseer ProfileManager, as well as adding json-schemas to the Configuration and Option classes.


What I Worked On

Some of the functionality needed from Freeseer's ProfileManager for remote Configuration is missing, or just unimplemented: Listing profiles, deleting profiles, and explicit creation of Profiles. I extended the ProfileManager class to add this functionality so that it can then be used by the Configuration API. This work is here:


I then spent some time reading and learning about json-schema from here (http://json-schema.org/), so that I could add methods to both the Options and Config classes that returned their schemas. This functionality will be useful for the Configuration API, as it makes validation of a user's PATCH requests much simpler, and also makes it easy to tell a user what form their requests need to be made in. The work for json-schemas is here:



What I Will Be Working On

The first part of this week must unfortunately be a Freeseer-free time for me: I have two rather large assignments due on Monday and Wednesday, along with two smaller ones also due over the same two days (seriously, who schedules these things?!).

I plan on focusing on Freeseer starting on Thursday. Hopefully the two above pull requests can get merged by then, which means I can continue to focus on the Configuration API itself:

- Implementing all of the Profile endpoints.
- Add the json-schema validation to requests.
- Re-focus on implementing the plugin endpoints.
- Any accompanying unit tests.

The bolded item may require some further tweaking of Freeseer's Config and Option classes, as noted in my notes in the Config API spec:

No comments:

Post a Comment