sigmavirus24/github3.py — pull request #48 by doismellburning (2012-11-19 17:21:42+00:00)
Title: Default Repository.edit() to make no changes for unsupplied parameters

This is a behaviour change, however I feel the previous implementation
was dangerous due to violation of the Principle of Least Surprise.

Under the previous implementation, if I wrote the following:

r.edit(r.name, has_issues=True)

then if `r` was a private repo, I would have inadvertently made it
public on GitHub, because the `private` parameter to `edit` had a
default value of `True`. Technically, this was the behaviour as
documented, but I believe this commit provides an improvement: now all
parameters default to `None`, and in the case of a parameter being
`None` it is not included in the JSON sent in the `PATCH` request, so
the repository setting is left unchanged.