%global _empty_manifest_terminate_build 0 Name: python-annotell-auth Version: 2.0.1 Release: 1 Summary: Annotell Authentication License: MIT URL: https://github.com/annotell/annotell-python Source0: https://mirrors.nju.edu.cn/pypi/web/packages/54/76/4ab1bc8baaf5b8bab3350c197e1598e06667660c42ccb53c8a0de79c1331/annotell-auth-2.0.1.tar.gz BuildArch: noarch Requires: python3-authlib Requires: python3-requests Requires: python3-httpx Requires: python3-httpx Requires: python3-requests %description # Annotell Authentication Python 3 library providing foundations for Annotell Authentication on top of the `requests` or `httpx` libraries. Install with `pip install annotell-auth[requests]` or `pip install annotell-auth[httpx]` Builds on the standard OAuth 2.0 Client Credentials flow. There are a few ways to provide auth credentials to our api clients. Annotell Python clients such as in `annotell-input-api` accept an `auth` parameter that can be set explicitly or you can omit it and use environment variables. There are a few ways to set your credentials in `auth`. 1. Set the environment variable `ANNOTELL_CREDENTIALS` to point to your Annotell Credentials file. The credentials will contain the Client Id and Client Secret. 2. Set to the credentials file path like `auth="~/.config/annotell/credentials.json"` 3. Set environment variables `ANNOTELL_CLIENT_ID` and`ANNOTELL_CLIENT_SECRET` 4. Set to credentials tuple `auth=(client_id, client_secret)` API clients such as the `InputApiClient` accept this `auth` parameter. Under the hood, they commonly use the AuthSession class which is implements a `requests` session with automatic token refresh. An `httpx` implementation is also available. ```python from annotell.auth.requests.auth_session import RequestsAuthSession sess = RequestsAuthSession() # make call to some Annotell service with your token. Use default requests sess.get("https://api.annotell.com") ``` ## Changelog ### 2.0.0 (2022-05-02) Refactor for backend separation, with optional dependencies for either `httpx` or `requests`. ### 1.8.0 (2022-04-12) - Initial support for httpx (BETA). Solves refresh token expiry by reset without the `FaultTolerantAuthRequestSession` - The library will be refactored by a breaking 2.0 release, and make the same changes to the requests version. The `authsession` module backed by `requests` is untouched for now. ### 1.7.0 (2022-04-11) - Fix compatibility issue with authlib >= 1.0.0. Resetting the auth session failed, when the refresh token had expired. ### 1.6.0 (2021-02-21) - Expose underlying `requests.Session` on `FaultTolerantAuthRequestSession` - Fix some thread locks ### 1.5.0 (2020-10-20) - Add `FaultTolerantAuthRequestSession` that handles token refresh on long running sessions. ### 1.4.0 (2020-04-16) - Add support for `auth` parameter, with path to credentials file or `AnnotellCredentials` object - Drop support for legacy API token %package -n python3-annotell-auth Summary: Annotell Authentication Provides: python-annotell-auth BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-annotell-auth # Annotell Authentication Python 3 library providing foundations for Annotell Authentication on top of the `requests` or `httpx` libraries. Install with `pip install annotell-auth[requests]` or `pip install annotell-auth[httpx]` Builds on the standard OAuth 2.0 Client Credentials flow. There are a few ways to provide auth credentials to our api clients. Annotell Python clients such as in `annotell-input-api` accept an `auth` parameter that can be set explicitly or you can omit it and use environment variables. There are a few ways to set your credentials in `auth`. 1. Set the environment variable `ANNOTELL_CREDENTIALS` to point to your Annotell Credentials file. The credentials will contain the Client Id and Client Secret. 2. Set to the credentials file path like `auth="~/.config/annotell/credentials.json"` 3. Set environment variables `ANNOTELL_CLIENT_ID` and`ANNOTELL_CLIENT_SECRET` 4. Set to credentials tuple `auth=(client_id, client_secret)` API clients such as the `InputApiClient` accept this `auth` parameter. Under the hood, they commonly use the AuthSession class which is implements a `requests` session with automatic token refresh. An `httpx` implementation is also available. ```python from annotell.auth.requests.auth_session import RequestsAuthSession sess = RequestsAuthSession() # make call to some Annotell service with your token. Use default requests sess.get("https://api.annotell.com") ``` ## Changelog ### 2.0.0 (2022-05-02) Refactor for backend separation, with optional dependencies for either `httpx` or `requests`. ### 1.8.0 (2022-04-12) - Initial support for httpx (BETA). Solves refresh token expiry by reset without the `FaultTolerantAuthRequestSession` - The library will be refactored by a breaking 2.0 release, and make the same changes to the requests version. The `authsession` module backed by `requests` is untouched for now. ### 1.7.0 (2022-04-11) - Fix compatibility issue with authlib >= 1.0.0. Resetting the auth session failed, when the refresh token had expired. ### 1.6.0 (2021-02-21) - Expose underlying `requests.Session` on `FaultTolerantAuthRequestSession` - Fix some thread locks ### 1.5.0 (2020-10-20) - Add `FaultTolerantAuthRequestSession` that handles token refresh on long running sessions. ### 1.4.0 (2020-04-16) - Add support for `auth` parameter, with path to credentials file or `AnnotellCredentials` object - Drop support for legacy API token %package help Summary: Development documents and examples for annotell-auth Provides: python3-annotell-auth-doc %description help # Annotell Authentication Python 3 library providing foundations for Annotell Authentication on top of the `requests` or `httpx` libraries. Install with `pip install annotell-auth[requests]` or `pip install annotell-auth[httpx]` Builds on the standard OAuth 2.0 Client Credentials flow. There are a few ways to provide auth credentials to our api clients. Annotell Python clients such as in `annotell-input-api` accept an `auth` parameter that can be set explicitly or you can omit it and use environment variables. There are a few ways to set your credentials in `auth`. 1. Set the environment variable `ANNOTELL_CREDENTIALS` to point to your Annotell Credentials file. The credentials will contain the Client Id and Client Secret. 2. Set to the credentials file path like `auth="~/.config/annotell/credentials.json"` 3. Set environment variables `ANNOTELL_CLIENT_ID` and`ANNOTELL_CLIENT_SECRET` 4. Set to credentials tuple `auth=(client_id, client_secret)` API clients such as the `InputApiClient` accept this `auth` parameter. Under the hood, they commonly use the AuthSession class which is implements a `requests` session with automatic token refresh. An `httpx` implementation is also available. ```python from annotell.auth.requests.auth_session import RequestsAuthSession sess = RequestsAuthSession() # make call to some Annotell service with your token. Use default requests sess.get("https://api.annotell.com") ``` ## Changelog ### 2.0.0 (2022-05-02) Refactor for backend separation, with optional dependencies for either `httpx` or `requests`. ### 1.8.0 (2022-04-12) - Initial support for httpx (BETA). Solves refresh token expiry by reset without the `FaultTolerantAuthRequestSession` - The library will be refactored by a breaking 2.0 release, and make the same changes to the requests version. The `authsession` module backed by `requests` is untouched for now. ### 1.7.0 (2022-04-11) - Fix compatibility issue with authlib >= 1.0.0. Resetting the auth session failed, when the refresh token had expired. ### 1.6.0 (2021-02-21) - Expose underlying `requests.Session` on `FaultTolerantAuthRequestSession` - Fix some thread locks ### 1.5.0 (2020-10-20) - Add `FaultTolerantAuthRequestSession` that handles token refresh on long running sessions. ### 1.4.0 (2020-04-16) - Add support for `auth` parameter, with path to credentials file or `AnnotellCredentials` object - Drop support for legacy API token %prep %autosetup -n annotell-auth-2.0.1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-annotell-auth -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Wed May 10 2023 Python_Bot - 2.0.1-1 - Package Spec generated