1.2.0: 2018-08-22
-----------------

This is a larger release with some enhancements and bug fixes.

Features Added
``````````````

- Partial GitHub Apps support. We added the following:

  - ``GitHub.login_as_app`` to login using JWT as an Application

  - ``GitHub.login_as_app_installation`` to login using a token obtained from
    an App's JWT

  - ``GitHub.app`` to retrieve an application by its "slug"

  - ``GitHub.app_installation`` to retrieve a specific installation by its ID

  - ``GitHub.app_installations`` to retrieve all of an App's installations

  - ``GitHub.app_installation_for_organization`` to retrieve an organization's
    installation of an App

  - ``GitHub.app_installation_for_repository`` to retrieve an installation for
    a specific repository

  - ``GitHub.app_installation_for_user`` to retrieve an installation for a
    specific user

  - ``GitHub.authenticated_app`` to retrieve the metadata for a specific App

  - Not supported as of this release:

    - `Installations API`_

    - `List installations for user`_

    - `User-to-server OAuth access token`_

- Organization Invitations Preview API is now supported. This includes an
  additional ``Invitation`` object. This is the result of hard work by Hal
  Wine.

- A ``ShortLabel`` class was added to represent the shorter (description-less)
  representation of labels returned by the API.

- The branch protections API is now completely represented in github3.py.

- We now support the GPG Keys API.

- We now support the Commit Search API.

- We now support Repository Invitations.

- We now have assign and unassign methods that support assigning and
  unassigning multiple users at once.

- We now support review requests on Pull Requests.

- We now support the ability for a user to activate their membership in an
  Organization.

- We now support recurisvely traverse a tree via the API.

- We now support enabling or disabling projects on a Repository.

- We now support editing and reading Repository topics.

- We now support Repository Pull Request merge settings.


Bugs Fixed
``````````

- No longer require a Gist to have an owner.

- ``Branch.latest_sha()`` now returns text (unicode) as documented.


Special Thanks
``````````````

A great deal of the exception feature work done above was performed by the
newest team member of the github3.py project: Jacopo Notarstefano (a.k.a,
``@jacquerie`` on GitHub). This project has had new life breathed into it
thanks to Jacopo.


.. links
.. _Installations API:
    https://developer.github.com/v3/apps/installations/

.. _List installations for user:
    https://developer.github.com/v3/apps/#list-installations-for-user

.. _User-to-server OAuth access token:
    https://developer.github.com/apps/building-github-apps/identifying-and-authorizing-users-for-github-apps/#identifying-users-on-your-site
