-------------
Released on March 30, 2017.
- Geofront now supports ECDSA key.
Under the hood, :func:`geofront.keystore.parse_openssh_pubkey()` function
becomes to be possible to parse ECDSA public keys. [:issue:`14`]
- Geofront now supports Atlassian Bitbucket Cloud.
See also :mod:`geofront.backends.bitbucket` module. [:issue:`4`]
- Geofront now can generate other than RSA master key (e.g. ECDSA).
The new configuration :data:`~config.MASTER_KEY_TYPE` is added to
choose the type of the master key Geofront will generate.
It's :class:`~paramiko.rsakey.RSAKey` by default.
- Added :mod:`geofront.backends.oauth` module which provides
base team implementations for OAuth.
- Added ``key_type`` optional parameter to
:func:`~geofront.masterkey.renew_master_key()` function,
:class:`~geofront.masterkey.PeriodicalRenewal` class constructor, and
:func:`~geofront.regen.regenerate()` function.
- Since ``key_type`` now can be other than :class:`~paramiko.rsakey.RSAKey`,
the ``bits`` optional parameter of
:func:`~geofront.masterkey.renew_master_key()` function,
:class:`~geofront.masterkey.PeriodicalRenewal` class constructor, and
:func:`~geofront.regen.regenerate()` function now have the default value
:const:`None` instead of 2048. :const:`None` automatically choose
the appropriate bits of the ``key_type``.
- Added :func:`~geofront.masterkey.generate_key()` function and
:exc:`~geofront.masterkey.KeyGenerationError` that it raises.
- Added ``alias_namer`` option to :class:`CloudRemoteSet
<geofront.backends.cloud.CloudRemoteSet>` constructor.
- Added :const:`geofront.team.GroupSet` type which is alias of
:class:`~typing.AbstractSet`\ [:class:`~typing.Hashable`].
- Now master key can be found without token through
:http:get:`/masterkey/` API. The server root :http:get:`/` also became
to contain a :http:header:`Link` header to it and ``"master_key_url"`` field.
- Deprecated :http:get:`/tokens/(token_id:token_id)/masterkey/`.
Use :http:get:`/masterkey/` instead.
The existing url redirects to the new url :http:get:`/masterkey/` with
:http:statuscode:`301`.
- Fixed bug that :meth:`CloudKeyStore.list_keys()
<~geofront.backends.cloud.CloudKeyStore>` sometimes returned an empty set
even if there were stored keys.
- Geofront becomes to require Paramiko 2.0.1 or higher.
- Geofront becomes to require Werkzeug 0.11 or higher.
- Geofront becomes to require Flask 0.10.1 or higher.
- Geofront becomes to require Apache Libcloud 1.1.0 or higher.
- Geofront becomes to require OAuthLib 1.1.1 or higher.
- Geofront becomes to require Waitress 1.0.2 or higher.
- Goefront becomes to require typeguard_ 2.1.1 or higher.
- :mod:`geofront.util` is gone now. Geofront instead became to require
:mod:`typing` and typeguard_.
.. _typeguard: https://github.com/agronholm/typeguard