Skip to content

Commit

Permalink
"AnnoFab"を"Annofab"に変換しました。 (#465)
Browse files Browse the repository at this point in the history
* AnnoFab -> Annofab

* AnnoFab->Annofab

* update
  • Loading branch information
yuji38kwmt committed May 27, 2022
1 parent 5522601 commit ec5f5bc
Show file tree
Hide file tree
Showing 14 changed files with 44 additions and 43 deletions.
1 change: 1 addition & 0 deletions .vscode/cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
],
"words": [
"additionals",
"Annofab",
"astimezone",
"asyncio",
"dateutil",
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# annofab-api-python-client
[AnnoFab Web API](https://annofab.com/docs/api/) のPythonクライアントライブラリです。
[Annofab Web API](https://annofab.com/docs/api/) のPythonクライアントライブラリです。

[![Build Status](https://app.travis-ci.com/kurusugawa-computer/annofab-api-python-client.svg?branch=main)](https://app.travis-ci.com/kurusugawa-computer/annofab-api-python-client)
[![CodeQL](https://github.com/kurusugawa-computer/annofab-api-python-client/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/kurusugawa-computer/annofab-api-python-client/actions/workflows/codeql-analysis.yml)
Expand All @@ -10,10 +10,10 @@



* **AnnoFab Web API Documentation:** https://annofab.com/docs/api/
* **Annofab Web API Documentation:** https://annofab.com/docs/api/
* **Reference Documentation:** https://annofab-api-python-client.readthedocs.io/en/latest/
* **annofab-cli** https://github.com/kurusugawa-computer/annofab-cli
* 「タスクの一括差し戻し」や、「プロジェクト間の差分表示」など、AnnoFabの画面で実施するには時間がかかる操作を、CLIツールとして提供しています。
* 「タスクの一括差し戻し」や、「プロジェクト間の差分表示」など、Annofabの画面で実施するには時間がかかる操作を、CLIツールとして提供しています。
* **開発者用ドキュメント**: [README_for_developer.md](https://github.com/kurusugawa-computer/annofab-api-python-client/blob/main/README_for_developer.md)


Expand All @@ -37,7 +37,7 @@


# Features
cURLやPostmanなどよりも簡単にAnnoFab Web APIにアクセスできます。
cURLやPostmanなどよりも簡単にAnnofab Web APIにアクセスできます。

* ログインを意識せずに、APIを利用できます。
* アクセス過多などで失敗した場合は、リトライされます。
Expand Down Expand Up @@ -123,7 +123,7 @@ service = build()
## `service.api`のサンプルコード

* `service.api`には、Web APIに対応するメソッドが定義されています。
* メソッド名は、[AnnoFab Web APIのOpenAPI specification](https://annofab.com/docs/api/swagger.yaml)に記載されている`operationId`を、スネークケースに変換したものです。
* メソッド名は、[Annofab Web APIのOpenAPI specification](https://annofab.com/docs/api/swagger.yaml)に記載されている`operationId`を、スネークケースに変換したものです。
* 各メソッドの戻り値の型は`Tupple[Content, Response]`です。
Responseは[requestsモジュールのReponseオブジェクト](https://2.python-requests.org/en/master/api/#requests.Response)です。
ContentはReponseの中身です。
Expand Down
10 changes: 5 additions & 5 deletions README_for_developer.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,12 @@ $ make init
# Test

## テストの実行方法
1. AnnoFabの認証情報を`.netrc`ファイルまたは環境変数に設定する。
1. Annofabの認証情報を`.netrc`ファイルまたは環境変数に設定する。
2. 以下のコマンドを実行して、テスト用のプロジェクトとタスクを作成する。
* `poetry run python tests/create_test_project.py --organization ${MY_ORGANIZATION}`
3. `pytest.ini`に、テスト対象の`project_id``task_id`を指定する。
* `task_id`はプロジェクト`project_id`配下であること
* **【注意】テストを実行すると、AnnoFabプロジェクトの内容が変更される**
* **【注意】テストを実行すると、Annofabプロジェクトの内容が変更される**
4. `$ make test`コマンドを実行する。


Expand Down Expand Up @@ -115,17 +115,17 @@ ReadTheDocsのビルド結果は https://readthedocs.org/projects/annofab-api-py


-----------------
# AnnoFab WebAPIの更新により、リリースする
# Annofab WebAPIの更新により、リリースする
### 1.ソースコードの生成

annofabapiのいくつかのファイルは、[AnnoFab Web APIのOpenAPI Spec](https://annofab.com/docs/api/swagger.yaml)から自動生成しています。
annofabapiのいくつかのファイルは、[Annofab Web APIのOpenAPI Spec](https://annofab.com/docs/api/swagger.yaml)から自動生成しています。
以下のコマンドを実行すると、ソースコードが生成されます。詳細は[generate/README.md](generate/README.md)を参照してください。

```
# `generate/swagger/*.yaml`ファイルから、ソースコードを生成する
$ generate/generate.sh
# AnnoFab WebAPIのOpenAPI Spec を`generate/swagger/`にダウンロードしてから、ソースコードを生成する
# Annofab WebAPIのOpenAPI Spec を`generate/swagger/`にダウンロードしてから、ソースコードを生成する
$ generate/generate.sh --download
$ make format && make lint
Expand Down
18 changes: 9 additions & 9 deletions annofabapi/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
logger = logging.getLogger(__name__)

DEFAULT_ENDPOINT_URL = "https://annofab.com"
"""AnnoFab WebAPIのデフォルトのエンドポイントURL"""
"""Annofab WebAPIのデフォルトのエンドポイントURL"""

DEFAULT_WAITING_TIME_SECONDS_WITH_429_STATUS_CODE = 300
"""HTTP Status Codeが429のときの、デフォルト(Retry-Afterヘッダがないとき)の待ち時間です。"""
Expand Down Expand Up @@ -221,9 +221,9 @@ class AnnofabApi(AbstractAnnofabApi):
Web APIに対応したメソッドが存在するクラス。
Args:
login_user_id: AnnoFabにログインするときのユーザID
login_password: AnnoFabにログインするときのパスワード
endpoint_url: AnnoFab APIのエンドポイント。
login_user_id: AnnofabにログインするときのユーザID
login_password: Annofabにログインするときのパスワード
endpoint_url: Annofab APIのエンドポイント。
Attributes:
token_dict: login, refresh_tokenで取得したtoken情報
Expand Down Expand Up @@ -372,7 +372,7 @@ def _execute_http_request(
**kwargs,
) -> requests.Response:
"""
Session情報を使って、HTTP Requestを投げます。AnnoFab WebAPIで取得したAWS S3のURLなどに、アクセスすることを想定しています。
Session情報を使って、HTTP Requestを投げます。Annofab WebAPIで取得したAWS S3のURLなどに、アクセスすることを想定しています。
引数は ``requests.Session.request`` にそのまま渡します。
Args:
Expand Down Expand Up @@ -466,11 +466,11 @@ def _request_wrapper(
raise_for_status: bool = True,
) -> Tuple[Any, requests.Response]:
"""
AnnoFab WebAPIにアクセスして、レスポンスの中身とレスポンスを取得します。
Annofab WebAPIにアクセスして、レスポンスの中身とレスポンスを取得します。
Args:
http_method:
url_path: AnnoFab WebAPIのパス(例:``/my/account``)
url_path: Annofab WebAPIのパス(例:``/my/account``)
query_params: クエリパラメタ
header_params: リクエストヘッダ
request_body: リクエストボディ
Expand Down Expand Up @@ -589,7 +589,7 @@ def _get_signed_cookie(

def _request_get_with_cookie(self, project_id: str, url: str) -> requests.Response:
"""
Signed Cookie を使って、AnnoFabのURLにGET requestを投げる。
Signed Cookie を使って、AnnofabのURLにGET requestを投げる。
Args:
project_id: プロジェクトID
Expand Down Expand Up @@ -694,7 +694,7 @@ def refresh_token(self) -> Tuple[Dict[str, Any], requests.Response]:
@property
def account_id(self) -> str:
"""
AnnoFabにログインするユーザのaccount_id
Annofabにログインするユーザのaccount_id
"""
if self.__account_id is not None:
return self.__account_id
Expand Down
18 changes: 9 additions & 9 deletions annofabapi/resource.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ class Resource:
AnnofabApi, Wrapperのインスタンスを保持するクラス
Args:
login_user_id: AnnoFabにログインするときのユーザID
login_password: AnnoFabにログインするときのパスワード
endpoint_url: AnnoFab APIのエンドポイント。
login_user_id: AnnofabにログインするときのユーザID
login_password: Annofabにログインするときのパスワード
endpoint_url: Annofab APIのエンドポイント。
"""

Expand Down Expand Up @@ -49,9 +49,9 @@ def build(
環境変数は``ANNOFAB_USER_ID`` , ``ANNOFAB_PASSWORD`` を参照する。
Args:
login_user_id: AnnoFabにログインするときのユーザID
login_password: AnnoFabにログインするときのパスワード
endpoint_url: AnnoFab APIのエンドポイント。
login_user_id: AnnofabにログインするときのユーザID
login_password: Annofabにログインするときのパスワード
endpoint_url: Annofab APIのエンドポイント。
Returns:
AnnofabApi, Wrapperのインスタンスを保持するインスタンス
Expand All @@ -71,7 +71,7 @@ def build(
except AnnofabApiException:
pass

raise AnnofabApiException("環境変数または`.netrc`ファイルにAnnoFab認証情報はありませんでした。")
raise AnnofabApiException("環境変数または`.netrc`ファイルにAnnofab認証情報はありませんでした。")

else:
raise ValueError()
Expand All @@ -82,7 +82,7 @@ def build_from_netrc(endpoint_url: str = DEFAULT_ENDPOINT_URL) -> Resource:
``.netrc`` ファイルから、annofabapi.Resourceインスタンスを生成する。
Args:
endpoint_url: AnnoFab APIのエンドポイント。
endpoint_url: Annofab APIのエンドポイント。
Returns:
annofabapi.Resourceインスタンス
Expand Down Expand Up @@ -112,7 +112,7 @@ def build_from_env(endpoint_url: str = DEFAULT_ENDPOINT_URL) -> Resource:
環境変数 ``ANNOFAB_USER_ID`` , ``ANNOFAB_PASSWORD`` から、annofabapi.Resourceインスタンスを生成する。
Args:
endpoint_url: AnnoFab APIのエンドポイント。
endpoint_url: Annofab APIのエンドポイント。
Returns:
annofabapi.Resourceインスタンス
Expand Down
4 changes: 2 additions & 2 deletions annofabapi/wrapper.py
Original file line number Diff line number Diff line change
Expand Up @@ -700,13 +700,13 @@ def put_annotation_for_simple_annotation_json(
annotation_specs_additionals: Optional[List[Dict[str, Any]]] = None,
) -> bool:
"""
AnnoFabからダウンロードしたアノテーションzip配下のJSONと同じフォーマット(Simple Annotation)の内容から、アノテーションを登録する。
Annofabからダウンロードしたアノテーションzip配下のJSONと同じフォーマット(Simple Annotation)の内容から、アノテーションを登録する。
Args:
project_id:
task_id:
input_data_id:
simple_annotation_json: AnnoFabからダウンロードしたアノテーションzip配下のJSONのパス
simple_annotation_json: Annofabからダウンロードしたアノテーションzip配下のJSONのパス
annotation_specs_labels: アノテーション仕様のラベル情報。annotation_specs_additionalsが指定されている場合はV2版、指定されない場合はV1版。
annotation_specs_additionals: アノテーション仕様の属性情報(V2版)
Expand Down
10 changes: 5 additions & 5 deletions docs/user_guide/advanced_usage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -124,28 +124,28 @@ statistics系APIは、統計情報が格納されたJSONのファイルパスを
account_statistics = service.wrapper.get_account_statistics(project_id)
AnnoFabにファイルをアップロードするメソッド
Annofabにファイルをアップロードするメソッド
---------------------------------------------
AnnoFabにファイルをアップロードしてから、入力データや補助情報などを登録するメソッドです。
Annofabにファイルをアップロードしてから、入力データや補助情報などを登録するメソッドです。

* ``put_input_data_from_file``
* ``put_supplementary_data_from_file``

.. code-block:: python
# "sample.png"をAnnoFabにアップロードして、入力データ"input1"を作成する。
# "sample.png"をAnnofabにアップロードして、入力データ"input1"を作成する。
service.wrapper.put_input_data_from_file(project_id, input_data_id="input1",
file_path="sample.png")
# 入力データ"input1"に、"sample.png"を補助情報として登録する
service.wrapper.put_supplementary_data_from_file(project_id, input_data_id="input1",
supplementary_data_id="supplementary1", file_path="sample.png", request_body={"supplementary_data_number":1})
AnnoFabのS3にアップロードのみ実施する場合は、``upload_file_to_s3`` メソッドを利用してください。
AnnofabのS3にアップロードのみ実施する場合は、``upload_file_to_s3`` メソッドを利用してください。

.. code-block:: python
# "sample.png"をAnnoFabにアップロードして、入力データ"input1"を作成する。
# "sample.png"をAnnofabにアップロードして、入力データ"input1"を作成する。
s3_path = service.wrapper.upload_file_to_s3(project_id, file_path="sample.png")
print(s3_path)
# 's3://annotationfactory.production.temporary/xxxxxx'
Expand Down
4 changes: 2 additions & 2 deletions generate/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
# `generate/swagger/*.yaml`ファイルから、ソースコードを生成する
$ generate/generate.sh
# AnnoFab WebAPIのOpenAPI Spec を`generate/swagger/`にダウンロードしてから、ソースコードを生成する
# Annofab WebAPIのOpenAPI Spec を`generate/swagger/`にダウンロードしてから、ソースコードを生成する
$ generate/generate.sh --download
```
Expand Down Expand Up @@ -74,7 +74,7 @@ $ docker run --rm -u `id -u`:`id -g` -v ${PWD}:/local openapitools/openapi-ge


# 設計方針
AnnoFab WebAPIのOpenAPI Specファイルが多少間違っていても、annofabapiは動くような設計になっています。
Annofab WebAPIのOpenAPI Specファイルが多少間違っていても、annofabapiは動くような設計になっています。

OpenAPI Specファイルの間違いを許容する部分/許容しない部分は以下の通りです。

Expand Down
2 changes: 1 addition & 1 deletion generate/swagger/swagger.v2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ info:
上記例 `account_id_count` は、タスクのフィールド `account_id` でタスクを分類したところ「`account_id` が `c5eee002` であるタスクが9件、`9f110e48` であるタスクが5件、`b25dfeb3` であるタスクが1件」だったという結果を表しています。
version: 0.144.0
title: AnnoFab Web API
title: Annofab Web API
x-logo:
url: "https://annofab.com/resource/images/logo_landscape.png"
href: "https://annofab.com/"
Expand Down
2 changes: 1 addition & 1 deletion generate/swagger/swagger.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ info:
また、AggregationResultの集約の件数は、合計で10000件以下に制限されており、それを超える件数がある場合は上位10000件が取得されます。もし、省略された部分を取得したい場合は、検索条件を縛って結果に上る集約の数を減らしてください。
version: 0.144.0
title: AnnoFab Web API
title: Annofab Web API
x-logo:
url: "https://annofab.com/resource/images/logo_landscape.png"
href: "https://annofab.com/"
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[tool.poetry]
name = "annofabapi"
version = "0.60.3"
description = "Python Clinet Library of AnnoFab WebAPI (https://annofab.com/docs/api/)"
description = "Python Clinet Library of Annofab WebAPI (https://annofab.com/docs/api/)"
authors = ["yuji38kwmt"]
license = "MIT"
keywords=["annofab", "api"]
Expand Down
2 changes: 1 addition & 1 deletion pytest.ini
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ addopts = --verbose --capture=no -rs --ignore=tests/test_sandbox.py
endpoint_url = https://annofab.com

# Caution : Annofab project may be changed!!
# Specify AnnoFab project that has owner role assigned to you.
# Specify Annofab project that has owner role assigned to you.
project_id = 1ae6ec18-2a71-4eb5-9ac1-92329b01a5ca
task_id = test_task_1
# 変更されるタスクのtask_id
Expand Down
2 changes: 1 addition & 1 deletion tests/create_test_project.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ def create_input_data(self, project_id: str, input_data_id: str, image_path: str
return

request_body = {
"input_data_name": "AnnoFab Logo Image",
"input_data_name": "Annofab Logo Image",
"input_data_path": "https://annofab.com/images/logo.png",
}
self.service.wrapper.put_input_data_from_file(
Expand Down
2 changes: 1 addition & 1 deletion tests/test_sandbox.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
"""
AnnoFabプロジェクトやタスクに大きく依存したテストコードです
Annofabプロジェクトやタスクに大きく依存したテストコードです
"""
import configparser
import os
Expand Down

0 comments on commit ec5f5bc

Please sign in to comment.