592cf1e | mvdbeek | 02 May 2024, 10:27:00 UTC | Create version 24.0.1 | 02 May 2024, 10:27:00 UTC |
49ca43c | Marius van den Beek | 30 April 2024, 15:02:29 UTC | Merge pull request #18068 from davelopez/24.0_fix_history_update_time_after_bulk_op [24.0] Fix history update time after bulk operation | 30 April 2024, 15:02:29 UTC |
6ed6843 | Marius van den Beek | 30 April 2024, 13:58:46 UTC | Merge pull request #18070 from jdavcs/24.0_pendingrollback_rsrepo [24.0] Check database connection to issue a rollback if no connection | 30 April 2024, 13:58:46 UTC |
f237455 | Nicola Soranzo | 30 April 2024, 13:47:24 UTC | Merge branch 'release_23.2' into release_24.0 | 30 April 2024, 13:47:24 UTC |
51d8743 | davelopez | 30 April 2024, 08:41:58 UTC | Update models to include UsesCreateAndUpdateTime mixin For the sake of consistency, those models that have `create_time`, `update_time` and `tags` should share the same interface to update the `update_time` when tags are added or removed. | 30 April 2024, 08:43:48 UTC |
dbdfcb4 | davelopez | 29 April 2024, 16:56:31 UTC | Only call update if it exists | 30 April 2024, 08:43:47 UTC |
407708f | davelopez | 29 April 2024, 14:17:25 UTC | Move update to tag handler | 30 April 2024, 08:43:47 UTC |
a1fc936 | davelopez | 29 April 2024, 12:26:45 UTC | Mark item as updated when undelete had no effect Usually if the dataset was not deleted or if it was purged and un-deleting does not do anything | 30 April 2024, 08:43:46 UTC |
7329257 | davelopez | 29 April 2024, 12:00:52 UTC | Mark the item as updated after altering the associated tags | 30 April 2024, 08:43:46 UTC |
c6f776d | davelopez | 29 April 2024, 12:00:20 UTC | Add tests to ensure history update_time gets updated We need this after a bulk operation to ensure the client will catch-up with the results (even if no-op) so it knows the operation ended. | 30 April 2024, 08:43:45 UTC |
7d1da18 | John Davis | 29 April 2024, 18:29:08 UTC | Merge pull request #18052 from davelopez/24.0_fix_missing_hid_history_export [24.0] Fix history export with missing dataset hids | 29 April 2024, 18:29:08 UTC |
724e795 | John Davis | 29 April 2024, 18:18:16 UTC | Check db connection to issue a rollback if no connection | 29 April 2024, 18:18:16 UTC |
984c53e | Marius van den Beek | 29 April 2024, 13:59:20 UTC | Merge pull request #18060 from ElectronicBlueberry/fix-comments-lost-on-import [24.0] Fix comments lost on import | 29 April 2024, 13:59:20 UTC |
ecef3ef | Marius van den Beek | 29 April 2024, 13:57:47 UTC | Merge pull request #18053 from SaimMomin12/release_23.2 [23.2] Updated the datatypes name for FASTK tool | 29 April 2024, 13:57:47 UTC |
69fb6ce | Laila Los | 26 April 2024, 12:41:42 UTC | fix comments used before assigned | 26 April 2024, 12:41:42 UTC |
f9b2a68 | Laila Los | 26 April 2024, 12:25:50 UTC | use dict instead of relying on list order | 26 April 2024, 12:25:50 UTC |
061d5a4 | Laila Los | 25 April 2024, 13:29:05 UTC | copy comments when copying workflow | 25 April 2024, 13:29:05 UTC |
e0bc13c | Saim Momin | 25 April 2024, 12:09:06 UTC | [23.2] Updated the datatypes name for FASTK tool | 25 April 2024, 12:09:06 UTC |
b7eda89 | davelopez | 25 April 2024, 10:06:28 UTC | Add test to verify export dataset without hid works | 25 April 2024, 10:06:28 UTC |
6748d0e | davelopez | 25 April 2024, 09:24:56 UTC | Remove unused parameters in get_export_dataset_extra_files_dir_name | 25 April 2024, 09:24:56 UTC |
b20f4a0 | davelopez | 25 April 2024, 09:23:26 UTC | Use dataset's encoded_id instead of hid for export filenames | 25 April 2024, 09:23:26 UTC |
21a57d2 | Dannon | 24 April 2024, 16:54:21 UTC | Merge pull request #18046 from mvdbeek/access_logging_middleware [24.0] Add middleware for logging start and end of request | 24 April 2024, 16:54:21 UTC |
ab08738 | mvdbeek | 24 April 2024, 15:38:58 UTC | Update setup-miniconda@v3 action | 24 April 2024, 15:38:58 UTC |
64be33e | mvdbeek | 24 April 2024, 15:11:53 UTC | Update k8s-version | 24 April 2024, 15:11:53 UTC |
f26e90f | mvdbeek | 23 April 2024, 13:50:13 UTC | Log start and end of request Configurable via `use_access_logging_middleware`. Looks like this: ``` galaxy.webapps.base.api DEBUG 2024-04-23 17:14:43,776 [pN:main,p:73562,tN:MainThread] GET /history/current_history_json?since=2024-04-22T17:24:13.936493 f8c75e2c-30eb-4fcb-9b96-25bd4b2df435 galaxy.webapps.base.api DEBUG 2024-04-23 17:14:48,719 [pN:main,p:73562,tN:MainThread] GET /history/current_history_json?since=2024-04-22T17:24:13.936493 f8c75e2c-30eb-4fcb-9b96-25bd4b2df435 200 galaxy.webapps.base.api DEBUG 2024-04-23 17:14:51,767 [pN:main,p:73562,tN:MainThread] GET /history/current_history_json?since=2024-04-22T17:24:13.936493 2fe6094c-67bb-4144-a19f-cbb4a1b18fb4 galaxy.webapps.base.api DEBUG 2024-04-23 17:14:51,786 [pN:main,p:73562,tN:MainThread] GET /history/current_history_json?since=2024-04-22T17:24:13.936493 2fe6094c-67bb-4144-a19f-cbb4a1b18fb4 200 galaxy.webapps.base.api DEBUG 2024-04-23 17:14:53,139 [pN:main,p:73562,tN:MainThread] GET /api/entry_points?running=true 763693e9-4fd3-4a97-a100-a3c259b4b4c8 ``` | 24 April 2024, 15:08:06 UTC |
625cd8a | Martin Cech | 23 April 2024, 15:50:16 UTC | Merge pull request #18033 from martenson/storage-details [24.0] clarify the object store relocate functionality | 23 April 2024, 15:50:16 UTC |
4582704 | Martin Cech | 23 April 2024, 15:49:04 UTC | Merge pull request #18044 from mvdbeek/ensure_offset_and_limit_not_negative [24.0] Ensure that offset and limit are never negative | 23 April 2024, 15:49:04 UTC |
b97825b | John Davis | 23 April 2024, 13:32:11 UTC | Merge pull request #18036 from mvdbeek/implicit_conversion_no_hid_fix [24.0] Fix History Dataset Association creation so that hid is always set | 23 April 2024, 13:32:11 UTC |
5545dcd | mvdbeek | 23 April 2024, 12:00:13 UTC | Adjust and enhance job filtering test | 23 April 2024, 12:00:13 UTC |
4bc09c0 | mvdbeek | 23 April 2024, 09:55:44 UTC | Ensure that offset and limit are never negative And set minimum limit consistently to 1 ... 0 doesn't seem to have much utility but would also be an option. Fixes part of https://github.com/galaxyproject/galaxy/issues/18043. | 23 April 2024, 09:56:36 UTC |
7722cf0 | Martin Cech | 22 April 2024, 19:13:57 UTC | Merge pull request #18040 from mvdbeek/show_error_on_wrong_quota_source_fitler [24.0] Change wrong quota_source value from KeyError to ValueError | 22 April 2024, 19:13:57 UTC |
857a14e | mvdbeek | 22 April 2024, 17:29:43 UTC | Change wrong quota_source value from KeyError to ValueError Which is caught in https://github.com/galaxyproject/galaxy/blob/44782a44c14885df2d9d1bcb91698245bfb3aed8/lib/galaxy/managers/base.py#L1121-L1124 Fixes https://sentry.galaxyproject.org/share/issue/16a3342631224d8292ef792298175dea/: ``` KeyError: "Could not find key nul in object store keys [None, 'scratch']" File "starlette/applications.py", line 123, in __call__ await self.middleware_stack(scope, receive, send) File "starlette/middleware/errors.py", line 186, in __call__ raise exc File "starlette/middleware/errors.py", line 164, in __call__ await self.app(scope, receive, _send) File "starlette_context/middleware/raw_middleware.py", line 92, in __call__ await self.app(scope, receive, send_wrapper) File "starlette/middleware/base.py", line 189, in __call__ with collapse_excgroups(): File "contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "starlette/_utils.py", line 93, in collapse_excgroups raise exc File "starlette/middleware/base.py", line 191, in __call__ response = await self.dispatch_func(request, call_next) File "galaxy/webapps/galaxy/fast_app.py", line 108, in add_x_frame_options response = await call_next(request) File "starlette/middleware/base.py", line 165, in call_next raise app_exc File "starlette/middleware/base.py", line 151, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "starlette/middleware/exceptions.py", line 62, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "starlette/routing.py", line 758, in __call__ await self.middleware_stack(scope, receive, send) File "starlette/routing.py", line 778, in app await route.handle(scope, receive, send) File "starlette/routing.py", line 299, in handle await self.app(scope, receive, send) File "starlette/routing.py", line 79, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "starlette/routing.py", line 74, in app response = await func(request) File "fastapi/routing.py", line 278, in app raw_response = await run_endpoint_function( File "fastapi/routing.py", line 193, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) File "starlette/concurrency.py", line 42, in run_in_threadpool return await anyio.to_thread.run_sync(func, *args) File "anyio/to_thread.py", line 56, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "anyio/_backends/_asyncio.py", line 2144, in run_sync_in_worker_thread return await future File "anyio/_backends/_asyncio.py", line 851, in run result = context.run(func, *args) File "galaxy/webapps/galaxy/api/history_contents.py", line 465, in index items = self.service.index( File "galaxy/webapps/galaxy/services/history_contents.py", line 312, in index return self.__index_v2(trans, history_id, params, serialization_params, filter_query_params, accept) File "galaxy/webapps/galaxy/services/history_contents.py", line 972, in __index_v2 filters = self.history_contents_filters.parse_query_filters_with_relations(filter_query_params, history_id) File "galaxy/managers/history_contents.py", line 525, in parse_query_filters_with_relations return super().parse_query_filters(query_filters) File "galaxy/managers/base.py", line 1087, in parse_query_filters return self.parse_filters(filter_params) File "galaxy/managers/base.py", line 1096, in parse_filters filter_ = self.parse_filter(attr, op, val) File "galaxy/managers/base.py", line 1116, in parse_filter orm_filter = self._parse_orm_filter(attr, op, val) File "galaxy/managers/history_contents.py", line 601, in _parse_orm_filter if (column_filter := get_filter(attr, op, val)) is not None: File "galaxy/managers/history_contents.py", line 595, in get_filter raise KeyError(f"Could not find key {val} in object store keys {list(ids.keys())}") ``` | 22 April 2024, 17:44:31 UTC |
b8c39a5 | Martin Cech | 22 April 2024, 16:58:02 UTC | change language to relocate | 22 April 2024, 16:58:02 UTC |
121f27e | mvdbeek | 22 April 2024, 14:09:22 UTC | Default HID to -1 if for whatever reason we didn't record a HID | 22 April 2024, 15:20:42 UTC |
44782a4 | Marius van den Beek | 22 April 2024, 14:13:36 UTC | Merge pull request #18023 from mvdbeek/fix_non_ready_collection_submission [24.0] Raise appropriate exception if user forces a collection that is not populated with elements as input | 22 April 2024, 14:13:36 UTC |
c2140bd | mvdbeek | 22 April 2024, 11:32:09 UTC | Avoid flush in set_meta by using MetadataFile.uuid | 22 April 2024, 11:32:09 UTC |
badbd3a | mvdbeek | 22 April 2024, 09:06:10 UTC | Fix premature flush in hda_manager.copy | 22 April 2024, 09:52:19 UTC |
a56f642 | mvdbeek | 21 April 2024, 22:04:50 UTC | Drop unused method | 22 April 2024, 09:52:19 UTC |
e1a45a2 | mvdbeek | 21 April 2024, 21:56:43 UTC | Drop unused copy_from_ldda method | 22 April 2024, 09:52:19 UTC |
d889002 | mvdbeek | 21 April 2024, 21:55:41 UTC | Commit only after copying library item to history | 22 April 2024, 09:52:19 UTC |
5aecc08 | mvdbeek | 21 April 2024, 21:45:05 UTC | Fall back to populated method if collection not committed yet | 22 April 2024, 09:52:19 UTC |
bf34997 | mvdbeek | 21 April 2024, 21:44:40 UTC | Fix unitialize typo | 22 April 2024, 09:52:19 UTC |
5648478 | mvdbeek | 21 April 2024, 20:51:36 UTC | Adjust schema for collection elements of collections that aren't populated | 22 April 2024, 09:52:18 UTC |
e3aba2d | mvdbeek | 21 April 2024, 20:51:00 UTC | Relax requirement for DCEs of collections that are not populated | 21 April 2024, 20:51:00 UTC |
1b1094b | mvdbeek | 21 April 2024, 09:48:46 UTC | Set (copied) output hid before queuing job Otherwise we may end up with a history item that either temporarily or permanently lacks a hid. This could currently be encountered via implicit conversion that set `visible=False` in the when calling `datatype.convert_dataset`. | 21 April 2024, 19:10:51 UTC |
b1333e0 | mvdbeek | 21 April 2024, 19:09:21 UTC | Also perform strict checks for new database objects I think that's the missing piece to find all the instances where we might still be committing HDAs without HIDs, and I think we might have a similar bug for DatasetCollectionElements. | 21 April 2024, 19:10:51 UTC |
a671090 | mvdbeek | 19 April 2024, 08:12:18 UTC | Fix test_map_over_empty_collection test It was using the wrong id type, and since we don't prepopulate the collection we need to wait until discovery happens. It actually nicely illustrates the bug. | 21 April 2024, 07:58:22 UTC |
cff711f | mvdbeek | 18 April 2024, 18:51:33 UTC | Raise appropriate exception if user forces non-ready collection as input | 21 April 2024, 07:58:21 UTC |
8f4968f | Marius van den Beek | 21 April 2024, 07:57:19 UTC | Merge pull request #18027 from davelopez/24.0_fix_files_sources_error_handling [24.0] Fix remote files sources error handling | 21 April 2024, 07:57:19 UTC |
03111fa | Martin Cech | 19 April 2024, 20:23:10 UTC | move the link from heading to the body and change to a button - add minor text adjustments - close the modal when clicking on the currently selected storage | 19 April 2024, 20:23:10 UTC |
97371f1 | Martin Cech | 19 April 2024, 19:37:25 UTC | add relocation docs to the object store samples | 19 April 2024, 19:37:25 UTC |
9d715ce | Martin Cech | 19 April 2024, 16:28:45 UTC | Merge pull request #18029 from mvdbeek/colabfold_backport [24.0] Backport colabfold tar file datatype | 19 April 2024, 16:28:45 UTC |
47f2ca6 | Alexander OSTROVSKY | 28 February 2024, 21:06:31 UTC | add colabfold tar file datatype | 19 April 2024, 16:26:23 UTC |
0d1c41f | davelopez | 19 April 2024, 14:36:51 UTC | Prefer AuthenticationRequired for credential issues | 19 April 2024, 14:36:51 UTC |
f98f6f7 | John Davis | 19 April 2024, 14:35:09 UTC | Merge pull request #18025 from jdavcs/24.0_tag_regex [24.0] Fix tag regex pattern | 19 April 2024, 14:35:09 UTC |
ac8338f | John Davis | 19 April 2024, 13:47:38 UTC | Update test/unit/schema/test_schema.py Co-authored-by: Dannon <dannon.baker@gmail.com> | 19 April 2024, 13:47:38 UTC |
90bb4c9 | John Davis | 19 April 2024, 13:47:31 UTC | Update test/unit/schema/test_schema.py Co-authored-by: Dannon <dannon.baker@gmail.com> | 19 April 2024, 13:47:31 UTC |
b798109 | John Davis | 19 April 2024, 13:47:18 UTC | Update lib/galaxy/model/tags.py Co-authored-by: Dannon <dannon.baker@gmail.com> | 19 April 2024, 13:47:18 UTC |
b5a93f0 | John Davis | 19 April 2024, 13:47:11 UTC | Update lib/galaxy/model/tags.py Co-authored-by: Dannon <dannon.baker@gmail.com> | 19 April 2024, 13:47:11 UTC |
645ff00 | John Davis | 19 April 2024, 13:47:00 UTC | Update lib/galaxy/model/tags.py Co-authored-by: Dannon <dannon.baker@gmail.com> | 19 April 2024, 13:47:00 UTC |
b32480c | John Davis | 19 April 2024, 13:46:48 UTC | Update lib/galaxy/model/tags.py Co-authored-by: Dannon <dannon.baker@gmail.com> | 19 April 2024, 13:46:48 UTC |
53f5b5f | davelopez | 19 April 2024, 11:44:08 UTC | Use less cryptic error when unexpected error | 19 April 2024, 11:44:08 UTC |
91bf0c6 | davelopez | 19 April 2024, 11:32:24 UTC | Handle Dropbox special case | 19 April 2024, 11:32:24 UTC |
0bbb982 | davelopez | 19 April 2024, 11:31:30 UTC | Handle errors creating new entries more gracefully | 19 April 2024, 11:31:30 UTC |
e765e66 | davelopez | 19 April 2024, 11:29:02 UTC | Handle PyFilesystem2 errors more gracefully | 19 April 2024, 11:29:02 UTC |
9c26321 | David López | 19 April 2024, 09:57:18 UTC | Merge pull request #18026 from mvdbeek/fix_test_get_tags_histories_content [24.0] Fix ``test_get_tags_histories_content`` test | 19 April 2024, 09:57:18 UTC |
e32b9aa | mvdbeek | 19 April 2024, 08:16:32 UTC | Fix test_get_tags_histories_content test The calling code expects that this creates a dataset, but instead this used to create dataset collection. | 19 April 2024, 08:22:45 UTC |
ee64fc4 | John Davis | 19 April 2024, 01:45:39 UTC | Update client valid tag regex | 19 April 2024, 02:40:18 UTC |
c31bccf | John Davis | 18 April 2024, 23:05:06 UTC | Fix regex pattern | 19 April 2024, 02:40:13 UTC |
7ec1311 | John Davis | 18 April 2024, 22:34:01 UTC | Add unit test to verify spllitting tag string into name/value | 19 April 2024, 02:40:08 UTC |
972f918 | John Davis | 18 April 2024, 22:31:45 UTC | Add unit test (failing) for tag string regex | 19 April 2024, 02:40:04 UTC |
b356b0c | John Davis | 18 April 2024, 22:29:43 UTC | Factor out tag pattern into a const | 19 April 2024, 02:39:59 UTC |
49e46c5 | John Davis | 18 April 2024, 21:51:13 UTC | Rename method, add comment to explain side effects | 19 April 2024, 02:39:54 UTC |
a85f3b3 | Martin Cech | 18 April 2024, 18:41:08 UTC | Merge pull request #18021 from dannon/add-history-link-import [24.0] Add a link to histories list in history import message for situations… | 18 April 2024, 18:41:08 UTC |
b648c60 | Dannon Baker | 18 April 2024, 16:37:45 UTC | Add a link to histories list in history import message for situations where you import without a history visible (e.g. published page view) | 18 April 2024, 16:37:45 UTC |
5addd00 | Marius van den Beek | 18 April 2024, 07:03:45 UTC | Merge pull request #18014 from mvdbeek/debug_and_fix_hidless_hdas [24.0] Don't commit without having set a hid | 18 April 2024, 07:03:45 UTC |
066dbba | Martin Cech | 17 April 2024, 17:32:48 UTC | Merge pull request #18011 from mvdbeek/avoid_apply_rules_exception_when_no_collection_in_history [24.0] Avoid exception when opening apply rules tool and no collection in history | 17 April 2024, 17:32:48 UTC |
37bc454 | mvdbeek | 17 April 2024, 17:18:21 UTC | Don't commit without having seta hid hid-less items in a history are bad, and this is potentially one way to produce them. We've got a bunch of them in the history and this has been showing up in as https://sentry.galaxyproject.org/share/issue/3cc69eedc9f841b6ae8ac02e3f88e8fe/: ``` ValidationError: 210 validation errors for HistoryContentsWithStatsResult contents.0.HDACustom.type Input should be 'file' [type=literal_error, input_value='collection', input_type=str] For further information visit https://errors.pydantic.dev/2.5/v/literal_error contents.0.HDACustom.history_content_type Input should be 'dataset' [type=literal_error, input_value='dataset_collection', input_type=str] For further information visit https://errors.pydantic.dev/2.5/v/literal_error contents.0.HDADetailed.hid Input should be a valid integer [type=int_type, input_value=None, input_type=NoneType] For further information visit https://errors.pydantic.dev/2.5/v/int_type contents.0.HDADetailed.type Input should be 'file' [type=literal_error, input_value='collection', input_type=str] For further information visit https://errors.pydantic.dev/2.5/v/literal_error contents.0.HDADetailed.history_content_type Input should be 'dataset' [type=literal_error, input_value='dataset_collection', input_type=str] For fur... File "starlette/applications.py", line 123, in __call__ await self.middleware_stack(scope, receive, send) File "starlette/middleware/errors.py", line 186, in __call__ raise exc File "starlette/middleware/errors.py", line 164, in __call__ await self.app(scope, receive, _send) File "starlette_context/middleware/raw_middleware.py", line 92, in __call__ await self.app(scope, receive, send_wrapper) File "starlette/middleware/base.py", line 189, in __call__ with collapse_excgroups(): File "contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "starlette/_utils.py", line 93, in collapse_excgroups raise exc File "starlette/middleware/base.py", line 191, in __call__ response = await self.dispatch_func(request, call_next) File "galaxy/webapps/galaxy/fast_app.py", line 108, in add_x_frame_options response = await call_next(request) File "starlette/middleware/base.py", line 165, in call_next raise app_exc File "starlette/middleware/base.py", line 151, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "starlette/middleware/exceptions.py", line 62, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "starlette/routing.py", line 758, in __call__ await self.middleware_stack(scope, receive, send) File "starlette/routing.py", line 778, in app await route.handle(scope, receive, send) File "starlette/routing.py", line 299, in handle await self.app(scope, receive, send) File "starlette/routing.py", line 79, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "starlette/routing.py", line 74, in app response = await func(request) File "fastapi/routing.py", line 278, in app raw_response = await run_endpoint_function( File "fastapi/routing.py", line 193, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) File "starlette/concurrency.py", line 42, in run_in_threadpool return await anyio.to_thread.run_sync(func, *args) File "anyio/to_thread.py", line 56, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "anyio/_backends/_asyncio.py", line 2144, in run_sync_in_worker_thread return await future File "anyio/_backends/_asyncio.py", line 851, in run result = context.run(func, *args) File "galaxy/webapps/galaxy/api/history_contents.py", line 465, in index items = self.service.index( File "galaxy/webapps/galaxy/services/history_contents.py", line 312, in index return self.__index_v2(trans, history_id, params, serialization_params, filter_query_params, accept) File "galaxy/webapps/galaxy/services/history_contents.py", line 1006, in __index_v2 return HistoryContentsWithStatsResult(contents=items, stats={"total_matches": total_matches}) ``` I'm hesitatant to relax the validation here, these are really pretty bad bugs. We do appear to have test coverage here via https://app.codecov.io/gh/galaxyproject/galaxy/commit/4a4ead2b5ee913b61a97b84b60e77f28415d5ad9/blob/lib/galaxy/tools/actions/upload_common.py#L144 | 17 April 2024, 17:18:24 UTC |
f1b934b | John Davis | 17 April 2024, 15:56:28 UTC | Merge pull request #18010 from davelopez/24.0_tweak_polling_intervals [24.0] Reduce notifications polling frequency | 17 April 2024, 15:56:28 UTC |
5ce4986 | mvdbeek | 17 April 2024, 14:39:54 UTC | Avoid exception when opening apply rules tool and no collection in history Fixes https://sentry.galaxyproject.org/share/issue/97b5b9cfcef14ca0b59b851684170698/ ``` AttributeError: 'NoneType' object has no attribute 'id' File "galaxy/tools/__init__.py", line 2601, in populate_model tool_dict = input.to_dict(request_context, other_values=other_values) File "galaxy/tools/parameters/basic.py", line 2648, in to_dict "id": trans.app.security.encode_id(target.id), ``` Which is in a try/except anyway, so fairly inconsequential, but results in cleaner logs / one less sentry error. | 17 April 2024, 14:40:00 UTC |
33538be | mvdbeek | 17 April 2024, 14:20:05 UTC | Merge branch 'release_23.2' into release_24.0 | 17 April 2024, 14:20:05 UTC |
af2c2ed | davelopez | 17 April 2024, 14:19:13 UTC | Set active check for notifications every 30 seconds | 17 April 2024, 14:19:13 UTC |
74bee10 | Marius van den Beek | 17 April 2024, 14:16:14 UTC | Merge pull request #18008 from mvdbeek/include_exception_info_authnz_refresh [24.0] Include exception info when something goes wrong while refreshing tokens | 17 April 2024, 14:16:14 UTC |
a51aa51 | Marius van den Beek | 17 April 2024, 14:15:56 UTC | Merge pull request #18009 from mvdbeek/return_message_exception_when_invocation_report_references_invalid_output [24.0] Raise ``MessageException`` when report references invalid workflow output | 17 April 2024, 14:15:56 UTC |
1c899ab | Marius van den Beek | 17 April 2024, 14:15:31 UTC | Merge pull request #18002 from mvdbeek/fix_invalid_param_reporting [24.0] Don't fail if reporting invalid parameter values | 17 April 2024, 14:15:31 UTC |
91f34ac | davelopez | 17 April 2024, 14:01:41 UTC | Reduce notifications polling frequency | 17 April 2024, 14:01:41 UTC |
aeab88b | mvdbeek | 17 April 2024, 13:06:25 UTC | Raise MessageException when report references invalid workflow output Marginally better than an uncaught exception IMO. Fixes https://sentry.galaxyproject.org/share/issue/45391593603042799ef5ac5b18d22440/: ``` Exception: Failed to find workflow output named [Fasta Statistics on input dataset(s): Fasta summary stats], workflow doesn't define output by that name - valid names are ['Flye assembly on input dataset(s) (consensus)', 'Flye assembly on input dataset(s) (assembly_graph)', 'Flye assembly on input dataset(s) (Graphical Fragment Assembly)', 'Flye assembly on input dataset(s) (assembly_info)', 'Flye assembly on input dataset(s) (log)', None, 'Bandage Image on input dataset(s): Assembly Graph Image', 'Quast on input dataset(s): PDF report', 'Quast on input dataset(s): HTML report', 'Quast on input dataset(s): tabular report', 'Quast on input dataset(s): Log', 'Bar chart showing contig sizes']. File "starlette/applications.py", line 123, in __call__ await self.middleware_stack(scope, receive, send) File "starlette/middleware/errors.py", line 186, in __call__ raise exc File "starlette/middleware/errors.py", line 164, in __call__ await self.app(scope, receive, _send) File "starlette_context/middleware/raw_middleware.py", line 92, in __call__ await self.app(scope, receive, send_wrapper) File "starlette/middleware/base.py", line 189, in __call__ with collapse_excgroups(): File "contextlib.py", line 155, in __exit__ self.gen.throw(typ, value, traceback) File "starlette/_utils.py", line 93, in collapse_excgroups raise exc File "starlette/middleware/base.py", line 191, in __call__ response = await self.dispatch_func(request, call_next) File "galaxy/webapps/galaxy/fast_app.py", line 108, in add_x_frame_options response = await call_next(request) File "starlette/middleware/base.py", line 165, in call_next raise app_exc File "starlette/middleware/base.py", line 151, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "starlette/middleware/exceptions.py", line 62, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "starlette/routing.py", line 758, in __call__ await self.middleware_stack(scope, receive, send) File "starlette/routing.py", line 778, in app await route.handle(scope, receive, send) File "starlette/routing.py", line 299, in handle await self.app(scope, receive, send) File "starlette/routing.py", line 79, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "starlette/routing.py", line 74, in app response = await func(request) File "fastapi/routing.py", line 278, in app raw_response = await run_endpoint_function( File "fastapi/routing.py", line 193, in run_endpoint_function return await run_in_threadpool(dependant.call, **values) File "starlette/concurrency.py", line 42, in run_in_threadpool return await anyio.to_thread.run_sync(func, *args) File "anyio/to_thread.py", line 56, in run_sync return await get_async_backend().run_sync_in_worker_thread( File "anyio/_backends/_asyncio.py", line 2144, in run_sync_in_worker_thread return await future File "anyio/_backends/_asyncio.py", line 851, in run result = context.run(func, *args) File "galaxy/webapps/galaxy/api/workflows.py", line 1485, in show_invocation_report return self.invocations_service.show_invocation_report(trans, invocation_id) File "galaxy/webapps/galaxy/services/invocations.py", line 143, in show_invocation_report wfi_report = self._workflows_manager.get_invocation_report(trans, invocation_id, format=format) File "galaxy/managers/workflows.py", line 428, in get_invocation_report return generate_report( File "galaxy/workflow/reports/__init__.py", line 14, in generate_report return plugin.generate_report_json(trans, invocation, runtime_report_config_json=runtime_report_config_json) File "galaxy/workflow/reports/generators/__init__.py", line 43, in generate_report_json internal_markdown = self._generate_internal_markdown( File "galaxy/workflow/reports/generators/__init__.py", line 73, in _generate_internal_markdown internal_markdown = resolve_invocation_markdown(trans, invocation, workflow_markdown) File "galaxy/managers/markdown_util.py", line 958, in resolve_invocation_markdown galaxy_markdown = _remap_galaxy_markdown_calls(_remap, workflow_markdown) File "galaxy/managers/markdown_util.py", line 1012, in _remap_galaxy_markdown_calls return _remap_galaxy_markdown_containers(_remap_container, markdown) File "galaxy/managers/markdown_util.py", line 971, in _remap_galaxy_markdown_containers (replacement, whole_block) = func(replace) File "galaxy/managers/markdown_util.py", line 1008, in _remap_container return func(match.group(1), f"{matching_line}\n") File "galaxy/managers/markdown_util.py", line 926, in _remap ref_object = invocation.get_output_object(name) File "galaxy/model/__init__.py", line 8593, in get_output_object raise Exception( ``` | 17 April 2024, 13:06:35 UTC |
6da24f2 | mvdbeek | 17 April 2024, 12:52:05 UTC | Include exception info when something goes wrong while refreshing tokens ``` An error occurred when refreshing user token: (invalid_request) Missing Code ``` is the message we're currently logging, that's not enough to do anything with. | 17 April 2024, 12:58:32 UTC |
88dcb25 | Marius van den Beek | 17 April 2024, 10:10:20 UTC | Merge pull request #17990 from ahmedhamidawan/use_select_many_in_tool_form [24.0] Use the new column-select component in `FormData` for multiple select | 17 April 2024, 10:10:20 UTC |
853a645 | David López | 17 April 2024, 08:27:44 UTC | Merge pull request #18005 from dannon/fix-localization-spacing [24.0] Preserve surrounding whitespace when localizing complex nodes | 17 April 2024, 08:27:44 UTC |
3e89eeb | Dannon Baker | 16 April 2024, 20:24:22 UTC | Preserve surrounding whitespace when localizing complex nodes | 16 April 2024, 20:24:22 UTC |
6f3e515 | John Davis | 16 April 2024, 18:17:56 UTC | Merge pull request #18000 from dannon/update-prebuilt-client [24.0] Update prebuilt client | 16 April 2024, 18:17:56 UTC |
f6e19c3 | Ahmed Awan | 16 April 2024, 16:16:38 UTC | remove double ternary op | 16 April 2024, 16:16:38 UTC |
6a28080 | David López | 16 April 2024, 15:49:27 UTC | Merge pull request #17997 from davelopez/23.2_invenio_plugin_fixes [23.2] Invenio plugin fixes | 16 April 2024, 15:49:27 UTC |
48168fa | mvdbeek | 16 April 2024, 15:41:27 UTC | Don't fail if reporting invalid parameter values which can contain None values. Fixes the following traceback: ``` TypeError: sequence item 0: expected str instance, NoneType found File "galaxy/web/framework/decorators.py", line 346, in decorator rval = func(self, trans, *args, **kwargs) File "galaxy/webapps/galaxy/api/tools.py", line 247, in build return tool.to_json(trans, kwd.get("inputs", kwd), history=history) File "galaxy/tools/__init__.py", line 2509, in to_json populate_state(request_context, self.inputs, params.__dict__, state_inputs, state_errors) File "galaxy/tools/parameters/__init__.py", line 412, in populate_state _populate_state_legacy( File "galaxy/tools/parameters/__init__.py", line 625, in _populate_state_legacy check_param(request_context, input, param_value, context, simple_errors=simple_errors) File "galaxy/tools/parameters/__init__.py", line 246, in check_param value = param.from_json(value, trans, param_values) File "galaxy/tools/parameters/basic.py", line 1045, in from_json f"invalid options ({','.join(set(value) - set(legal_values))!r}) were selected (valid options: {','.join(legal_values)})", ``` Where `None` was in values. Note also that pyright underlined these lines, not sure why mypy has ignored this error. | 16 April 2024, 15:41:31 UTC |
769192f | Dannon Baker | 16 April 2024, 12:59:17 UTC | Target client 24.0 for galaxy prebuilt client | 16 April 2024, 14:16:49 UTC |
93a40f2 | Dannon Baker | 16 April 2024, 12:58:55 UTC | Update client versions | 16 April 2024, 14:16:49 UTC |
c36005b | Martin Cech | 16 April 2024, 14:13:10 UTC | Merge pull request #17987 from mvdbeek/fix_tag_commit_in_dry_run [23.2] Don't attempt to commit in dry_run mode | 16 April 2024, 14:13:10 UTC |
26844a1 | Ahmed Awan | 16 April 2024, 00:15:21 UTC | fix jest fail caused by `FormSelection.props.options == null` | 16 April 2024, 14:07:37 UTC |
0f8c379 | Ahmed Awan | 16 April 2024, 00:03:40 UTC | Use the new column-select component in `FormData` for multiple select This allows for easier multiselect with added ease for range select. Fixes https://github.com/galaxyproject/galaxy/issues/17947 | 16 April 2024, 14:07:37 UTC |