|
1 | 1 | from typing import Annotated |
2 | 2 |
|
3 | | -from common_library.pagination_tools import iter_pagination_params |
4 | 3 | from fastapi import Depends |
5 | 4 | from models_library.basic_types import VersionStr |
6 | 5 | from models_library.products import ProductName |
7 | 6 | from models_library.rest_pagination import MAXIMUM_NUMBER_OF_ITEMS_PER_PAGE |
8 | 7 | from models_library.services_enums import ServiceType |
9 | | -from models_library.services_history import ServiceRelease |
10 | 8 | from models_library.users import UserID |
11 | | -from packaging.version import Version |
12 | 9 |
|
13 | 10 | from .models.schemas.solvers import Solver, SolverKeyId |
14 | 11 | from .services_rpc.catalog import CatalogService |
@@ -49,23 +46,19 @@ async def get_latest_release( |
49 | 46 | solver_key: SolverKeyId, |
50 | 47 | product_name: str, |
51 | 48 | ) -> Solver: |
52 | | - service_releases: list[ServiceRelease] = [] |
53 | | - for page_params in iter_pagination_params(limit=DEFAULT_PAGINATION_LIMIT): |
54 | | - releases, page_meta = await self._catalog_service.list_release_history( |
55 | | - user_id=user_id, |
56 | | - service_key=solver_key, |
57 | | - product_name=product_name, |
58 | | - offset=page_params.offset, |
59 | | - limit=page_params.limit, |
60 | | - ) |
61 | | - page_params.total_number_of_items = page_meta.total |
62 | | - service_releases.extend(releases) |
| 49 | + releases, _ = await self._catalog_service.list_release_history( |
| 50 | + user_id=user_id, |
| 51 | + service_key=solver_key, |
| 52 | + product_name=product_name, |
| 53 | + offset=0, |
| 54 | + limit=1, |
| 55 | + ) |
63 | 56 |
|
64 | | - release = sorted(service_releases, key=lambda s: Version(s.version))[-1] |
| 57 | + assert len(releases) == 1 # nosec |
65 | 58 | service = await self._catalog_service.get( |
66 | 59 | user_id=user_id, |
67 | 60 | name=solver_key, |
68 | | - version=release.version, |
| 61 | + version=releases[0].version, |
69 | 62 | product_name=product_name, |
70 | 63 | ) |
71 | 64 |
|
|
0 commit comments