diff --git a/client/src/api/schema/schema.ts b/client/src/api/schema/schema.ts index 62f8142fa725..525387aee7e1 100644 --- a/client/src/api/schema/schema.ts +++ b/client/src/api/schema/schema.ts @@ -178,12 +178,7 @@ export interface paths { /** * Resolve parameters as a list for nested display. * @deprecated - * @description Resolve parameters as a list for nested display. More client logic - * here than is ideal but it is hard to reason about tool parameter - * types on the client relative to the server. Job accessibility checks - * are slightly different than dataset checks, so both methods are - * available. - * + * @description Resolve parameters as a list for nested display. * This API endpoint is unstable and tied heavily to Galaxy's JS client code, * this endpoint will change frequently. */ @@ -964,12 +959,7 @@ export interface paths { "/api/jobs/{job_id}/parameters_display": { /** * Resolve parameters as a list for nested display. - * @description Resolve parameters as a list for nested display. More client logic - * here than is ideal but it is hard to reason about tool parameter - * types on the client relative to the server. Job accessibility checks - * are slightly different than dataset checks, so both methods are - * available. - * + * @description Resolve parameters as a list for nested display. * This API endpoint is unstable and tied heavily to Galaxy's JS client code, * this endpoint will change frequently. */ @@ -11055,12 +11045,7 @@ export interface operations { /** * Resolve parameters as a list for nested display. * @deprecated - * @description Resolve parameters as a list for nested display. More client logic - * here than is ideal but it is hard to reason about tool parameter - * types on the client relative to the server. Job accessibility checks - * are slightly different than dataset checks, so both methods are - * available. - * + * @description Resolve parameters as a list for nested display. * This API endpoint is unstable and tied heavily to Galaxy's JS client code, * this endpoint will change frequently. */ @@ -15533,12 +15518,7 @@ export interface operations { resolve_parameters_display_api_jobs__job_id__parameters_display_get: { /** * Resolve parameters as a list for nested display. - * @description Resolve parameters as a list for nested display. More client logic - * here than is ideal but it is hard to reason about tool parameter - * types on the client relative to the server. Job accessibility checks - * are slightly different than dataset checks, so both methods are - * available. - * + * @description Resolve parameters as a list for nested display. * This API endpoint is unstable and tied heavily to Galaxy's JS client code, * this endpoint will change frequently. */ diff --git a/lib/galaxy/managers/jobs.py b/lib/galaxy/managers/jobs.py index fcb09f1b9a84..a1ac6728591a 100644 --- a/lib/galaxy/managers/jobs.py +++ b/lib/galaxy/managers/jobs.py @@ -880,6 +880,8 @@ def summarize_job_parameters(trans, job): Precondition: the caller has verified the job is accessible to the user represented by the trans parameter. """ + # More client logic here than is ideal but it is hard to reason about + # tool parameter types on the client relative to the server. def inputs_recursive(input_params, param_values, depth=1, upgrade_messages=None): if upgrade_messages is None: diff --git a/lib/galaxy/security/idencoding.py b/lib/galaxy/security/idencoding.py index 9c0b10ce2a20..e1eca5d2a314 100644 --- a/lib/galaxy/security/idencoding.py +++ b/lib/galaxy/security/idencoding.py @@ -35,9 +35,11 @@ def __init__(self, **config): per_kind_id_secret_base = config.get("per_kind_id_secret_base", self.id_secret) self.id_ciphers_for_kind = _cipher_cache(per_kind_id_secret_base) - def encode_id(self, obj_id, kind=None): + def encode_id(self, obj_id, kind=None, strict_integer=False): if obj_id is None: raise galaxy.exceptions.MalformedId("Attempted to encode None id") + if strict_integer and not isinstance(obj_id, int): + raise galaxy.exceptions.MalformedId("Attempted to encode id that is not an integer") id_cipher = self.__id_cipher(kind) # Convert to bytes s = smart_str(obj_id) diff --git a/lib/galaxy/webapps/galaxy/api/jobs.py b/lib/galaxy/webapps/galaxy/api/jobs.py index 50e829fd5ee6..bd19370dd6ae 100644 --- a/lib/galaxy/webapps/galaxy/api/jobs.py +++ b/lib/galaxy/webapps/galaxy/api/jobs.py @@ -372,12 +372,7 @@ def parameters_display_by_job( trans: ProvidesUserContext = DependsOnTrans, ) -> JobDisplayParametersSummary: """ - Resolve parameters as a list for nested display. More client logic - here than is ideal but it is hard to reason about tool parameter - types on the client relative to the server. Job accessibility checks - are slightly different than dataset checks, so both methods are - available. - + Resolve parameters as a list for nested display. This API endpoint is unstable and tied heavily to Galaxy's JS client code, this endpoint will change frequently. """ @@ -398,12 +393,7 @@ def parameters_display_by_dataset( trans: ProvidesUserContext = DependsOnTrans, ) -> JobDisplayParametersSummary: """ - Resolve parameters as a list for nested display. More client logic - here than is ideal but it is hard to reason about tool parameter - types on the client relative to the server. Job accessibility checks - are slightly different than dataset checks, so both methods are - available. - + Resolve parameters as a list for nested display. This API endpoint is unstable and tied heavily to Galaxy's JS client code, this endpoint will change frequently. """