Skip to content

Commit

Permalink
Merge branch 'main' into refactor-fal-toolkit-file
Browse files Browse the repository at this point in the history
  • Loading branch information
badayvedat committed Jan 19, 2024
2 parents 8830dd8 + 02887b3 commit 8b8f6cf
Show file tree
Hide file tree
Showing 47 changed files with 1,874 additions and 608 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/integration_tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:

- uses: actions/setup-python@v4
with:
python-version: "3.9"
python-version: "3.10"

- name: Install dependencies
run: |
Expand Down
20 changes: 18 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,13 @@ jobs:
poetry version $VERSION_TYPE
poetry build
echo "version=$(poetry version --short)" >> "$GITHUB_OUTPUT"
# set in GITHUB_ENV
BUILT_VERSION=$(poetry version -s)
echo "BUILT_VERSION=$BUILT_VERSION"
echo "BUILT_VERSION=$BUILT_VERSION" >> $GITHUB_ENV
echo "version=$BUILT_VERSION" >> "$GITHUB_OUTPUT"
- name: Publish PyPI
env:
Expand All @@ -94,15 +100,25 @@ jobs:
working-directory: projects/fal
run: poetry publish -u $PYPI_USERNAME -p $PYPI_PASSWORD -v -n

- name: Clean git changes
working-directory: projects/fal
run: |
git add poetry.lock
git checkout -- .
git reset
- name: Bump repo version
working-directory: projects/fal
run: |
# Set the version in the pyproject.toml
poetry version ${{ env.BUILT_VERSION }}
# And bump it for development
poetry version prerelease
- name: Create Pull Request
uses: peter-evans/create-pull-request@v4
with:
branch: bump-fal-version
branch: bump-fal-version-${{ env.BUILT_VERSION }}
delete-branch: true
title: Bump the pyproject.toml version for fal
base: main
Expand Down
18 changes: 14 additions & 4 deletions .github/workflows/release_isolate_proto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ jobs:
poetry build
# set in GITHUB_ENV
ISOLATE_PROTO_VERSION=$(poetry version -s)
echo "ISOLATE_PROTO_VERSION=$ISOLATE_PROTO_VERSION"
echo "ISOLATE_PROTO_VERSION=$ISOLATE_PROTO_VERSION" >> $GITHUB_ENV
BUILT_VERSION=$(poetry version -s)
echo "BUILT_VERSION=$BUILT_VERSION"
echo "BUILT_VERSION=$BUILT_VERSION" >> $GITHUB_ENV
- name: Publish PyPI
env:
Expand All @@ -56,15 +56,25 @@ jobs:
working-directory: projects/isolate_proto
run: poetry publish -u $PYPI_USERNAME -p $PYPI_PASSWORD -v -n

- name: Clean git changes
working-directory: projects/isolate_proto
run: |
git add poetry.lock
git checkout -- .
git reset
- name: Bump repo version
working-directory: projects/isolate_proto
run: |
# Set the version in the pyproject.toml
poetry version ${{ env.BUILT_VERSION }}
# And bump it for development
poetry version prerelease
- name: Create Pull Request
uses: peter-evans/create-pull-request@v4
with:
branch: bump-proto-version-${{ env.ISOLATE_PROTO_VERSION }}
branch: bump-proto-version-${{ env.BUILT_VERSION }}
delete-branch: true
title: Bump the pyproject.toml version for isolate-proto
base: main
Expand Down
3 changes: 2 additions & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ repos:
- id: black
exclude: |
(?x)(
^projects/fal/src/fal/toolkit/image/image.py
^projects/fal/src/fal/toolkit/image/image.py |
^projects/fal/openapi-fal-rest/
)
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.3.0
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
from http import HTTPStatus
from typing import Any, Dict, List, Optional, Union, cast

import httpx

from ... import errors
from ...client import Client
from ...models.http_validation_error import HTTPValidationError
from ...types import Response


def _get_kwargs(
*,
client: Client,
) -> Dict[str, Any]:
url = "{}/admin/users/invoice_users".format(client.base_url)

headers: Dict[str, str] = client.get_headers()
cookies: Dict[str, Any] = client.get_cookies()

return {
"method": "get",
"url": url,
"headers": headers,
"cookies": cookies,
"timeout": client.get_timeout(),
"follow_redirects": client.follow_redirects,
}


def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Union[HTTPValidationError, List[str]]]:
if response.status_code == HTTPStatus.OK:
response_200 = cast(List[str], response.json())

return response_200
if response.status_code == HTTPStatus.UNPROCESSABLE_ENTITY:
response_422 = HTTPValidationError.from_dict(response.json())

return response_422
if client.raise_on_unexpected_status:
raise errors.UnexpectedStatus(response.status_code, response.content)
else:
return None


def _build_response(*, client: Client, response: httpx.Response) -> Response[Union[HTTPValidationError, List[str]]]:
return Response(
status_code=HTTPStatus(response.status_code),
content=response.content,
headers=response.headers,
parsed=_parse_response(client=client, response=response),
)


def sync_detailed(
*,
client: Client,
) -> Response[Union[HTTPValidationError, List[str]]]:
"""Get Invoice Users
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Response[Union[HTTPValidationError, List[str]]]
"""

kwargs = _get_kwargs(
client=client,
)

response = httpx.request(
verify=client.verify_ssl,
**kwargs,
)

return _build_response(client=client, response=response)


def sync(
*,
client: Client,
) -> Optional[Union[HTTPValidationError, List[str]]]:
"""Get Invoice Users
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Union[HTTPValidationError, List[str]]
"""

return sync_detailed(
client=client,
).parsed


async def asyncio_detailed(
*,
client: Client,
) -> Response[Union[HTTPValidationError, List[str]]]:
"""Get Invoice Users
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Response[Union[HTTPValidationError, List[str]]]
"""

kwargs = _get_kwargs(
client=client,
)

async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
response = await _client.request(**kwargs)

return _build_response(client=client, response=response)


async def asyncio(
*,
client: Client,
) -> Optional[Union[HTTPValidationError, List[str]]]:
"""Get Invoice Users
Raises:
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
httpx.TimeoutException: If the request takes longer than Client.timeout.
Returns:
Union[HTTPValidationError, List[str]]
"""

return (
await asyncio_detailed(
client=client,
)
).parsed
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,7 @@ def _get_kwargs(
}


def _parse_response(
*, client: Client, response: httpx.Response
) -> Optional[Union[HTTPValidationError, str]]:
def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Union[HTTPValidationError, str]]:
if response.status_code == HTTPStatus.OK:
response_200 = cast(str, response.json())
return response_200
Expand All @@ -54,9 +52,7 @@ def _parse_response(
return None


def _build_response(
*, client: Client, response: httpx.Response
) -> Response[Union[HTTPValidationError, str]]:
def _build_response(*, client: Client, response: httpx.Response) -> Response[Union[HTTPValidationError, str]]:
return Response(
status_code=HTTPStatus(response.status_code),
content=response.content,
Expand Down
Loading

0 comments on commit 8b8f6cf

Please sign in to comment.