Galaxy server metapackage
Project description
The latest information about Galaxy can be found on the Galaxy Community Hub.
Community support is available at Galaxy Help.
Galaxy Quickstart
Galaxy requires Python 3.10 or higher. To check your Python version, run:
$ python -V
Python 3.10.12
Start Galaxy:
$ sh run.sh
Once Galaxy completes startup, you should be able to view Galaxy in your browser at: http://localhost:8080
For more installation details please see: https://getgalaxy.org/
Documentation is available at: https://docs.galaxyproject.org/
Tutorials on how to use Galaxy, perform scientific analyses with it, develop Galaxy and its tools, and admin a Galaxy server are at: https://training.galaxyproject.org/
Tools
Tools can be either installed from the Tool Shed or added manually. For details please see the tutorial. Note that not all dependencies for the tools provided in the tool_conf.xml.sample are included. To install them please visit “Manage dependencies” in the admin interface.
Issues and Galaxy Development
Please see CONTRIBUTING.md .
History
26.0.0 (2026-04-08)
Bug fixes
Attempt to fix transient API test failure for jobs search. by @jmchilton in #20898
Infer type from extension for mzml by @bgruening in #21033
Bump python-ldap from 3.4.0 to 3.4.5 in /lib/galaxy/dependencies by @dependabot[bot] in #21042
Update config samples from schema by @davelopez in #21053
Cross product tools: Fix typos in help section by @RZ9082 in #21061
Drop down revision for drop_job_params migration by @mvdbeek in #21122
Pin Ansible version during Docker image building by @ksuderman in #21131
Change invocation step state display selector to fix styling by @ahmedhamidawan in #21144
Simplify transiently failing test (#21224) see if this stabilizes it at all by @jmchilton in #21239
Plumbing for tracking potential fixes for transient failures (and a fix demonstrating it) by @jmchilton in #21243
Fix differentiation between single handler and handler tag by @natefoo in #21252
Fix quoting issue getting the Galaxy version by @ksuderman in #21316
Use uv also for the lint_openapi_schema GitHub workflow by @nsoranzo in #21319
Extend startup probe timeout by @ksuderman in #21326
remove a tool from sample that is no longer included in dist by @martenson in #21371
Attempt to fix transiently failing tests that click this tab. by @jmchilton in #21376
Attempt to fix transient failure in list_list_copy by @jmchilton in #21381
Use icon classes instead of strings for history content item states by @guerler in #21393
Bump urllib3 from 2.5.0 to 2.6.0 in /lib/galaxy/dependencies by @dependabot[bot] in #21399
Assorted tool shed fixes. by @jmchilton in #21424
Use Playwright from the Galaxy virtualenv by @nsoranzo in #21425
Fix tool shed repository last updated time by @mvdbeek in #21427
Don’t set OAUTHLIB_INSECURE_TRANSPORT setting in user_data by @nuwang in #21451
Bump filelock from 3.20.0 to 3.20.1 in /lib/galaxy/dependencies by @dependabot[bot] in #21476
Fixes select field clipping and filtering by @guerler in #21479
Add tool_shed_url config for explicit hostname setting by @jmchilton in #21499
Provide more accurate step hints for failing subworkflow steps by @mvdbeek in #21514
Restrict collection of dynamic working dir output to specified directory in pulsar by @mvdbeek in #21515
Accept 404 as valid intermediate state when waiting for dataset purge by @mvdbeek in #21521
Fix input tags not being copied when using copy_inputs_to_history by @mvdbeek in #21529
Bump aiohttp from 3.13.2 to 3.13.3 in /lib/galaxy/dependencies by @dependabot[bot] in #21538
Preserve assistant messages with tool calls by @guerler in #21545
Bump urllib3 from 2.6.2 to 2.6.3 in /lib/galaxy/dependencies by @dependabot[bot] in #21546
Bump werkzeug from 3.1.4 to 3.1.5 in /lib/galaxy/dependencies by @dependabot[bot] in #21549
Fix width and height assignment for image metadata using Pillow by @kostrykin in #21554
Better error message for unencoded/unresolvable filesource uri by @dannon in #21562
Fix loading spinner positioning in admin grid by @dannon in #21564
Fix Vite 5 upgrade compatibility issues for tool shed frontend by @mvdbeek in #21581
Remove dummy header from JupyterLite requests by @guerler in #21585
Bump pyasn1 from 0.6.1 to 0.6.2 in /lib/galaxy/dependencies by @dependabot[bot] in #21605
Fix Auto Layout crash with conditional (when) step inputs by @jmchilton in #21616
Fix package test using --index-strategy unsafe-best-match to match pip behavior by @mvdbeek in #21619
Fix ace import in cell-based markdown editor by @guerler in #21622
Bump python-multipart from 0.0.21 to 0.0.22 in /lib/galaxy/dependencies by @dependabot[bot] in #21663
Fix incorrect router tag in plugins API by @dannon in #21669
Add missing types to visualization model by @guerler in #21672
Fix storing origin for workflow landing requests by @mvdbeek in #21696
Hide interactivetools activity when disabled in config by @dannon in #21755
Hide ChatGXY activity when LLM API isn’t configured by @dannon in #21756
Handle TPV floating point memory values by @ksuderman in #21763
Deserialize json string for export_metadata from old records by @mvdbeek in #21772
Removes unnecessary overflow restriction in upload method panel by @davelopez in #21774
Fix upload local file drop zone when listing by @davelopez in #21776
Fixes navigation back to added URLs in upload panel by @davelopez in #21796
Fix passing invalid job_destination dict to JobState constructor by @mvdbeek in #21798
Avoid slash duplication in display application urls by @guerler in #21809
Update get_definitions() to FastAPI 0.128.8 by @nsoranzo in #21834
Fix selenium test test_rename_history by @davelopez in #21835
When getting tool by uuid, get that exact tool by @mvdbeek in #21844
Fix OMERO file source download multi channel TIFF by @davelopez in #21856
Fix infinite request loop on dataset preview fetch failure by @dannon in #21881
Fixes some more optional fields in templates by @davelopez in #21891
Fix missing sharable link URL in TS2.0 emails by @jmchilton in #21892
Parse input collections as well in markdown editor by @ahmedhamidawan in #21913
Fix collection step Job markdown elements not rendering by @ahmedhamidawan in #21917
Fix Pydantic UnsupportedFieldAttributeWarning for Field defaults in Annotated by @mvdbeek in #21923
Remove unused handle_tool_shed_url_protocol by @mvdbeek in #21925
Backport paired or unpaired mapping fix by @mvdbeek in #21936
Fix HTML dataset extra files 404 in preview by @dannon in #21981
Fix dict leaking to process_dataset() during workflow execution by @mvdbeek in #21982
Fix dataset collection tag duplication when copying a history by @mvdbeek in #21984
Use inference_services config for plugin chat proxy by @dannon in #21986
Restore file doesn’t match sniffed datatype message by @mvdbeek in #21988
Fix repo metadata persistence in fix_tool_config_paths.py by @mvdbeek in #22012
Fix uncaught ImplicitConversionRequired by @mvdbeek in #22027
Fix toolshed “copy page link” copying relative URL instead of absolute by @mvdbeek in #22028
Fix AttributeError when fetching citations for missing tools by @mvdbeek in #22029
Fix invalid function schema error for tools with None parameters by @mvdbeek in #22030
AttributeError when history is None during tool execution by @mvdbeek in #22031
Fix subworkflow editing navigation and enable e2e test by @mvdbeek in #22032
Fix AttributeError when export_metadata is a string instead of dict by @mvdbeek in #22033
Fix AttributeError serializing implicit output collections during job prep by @mvdbeek in #22034
Fix ToolExpressionOutput.to_model() for boolean type. by @jmchilton in #22038
Fix preferred_object_store_id not respected for discovered outputs with extended metadata by @mvdbeek in #22056
Fix TypeError when column_names metadata is None by @mvdbeek in #22057
Fail job gracefully when output name exceeds 255 character DB limit by @mvdbeek in #22059
Fix FileNotFoundError when workflow references purged HDA by @mvdbeek in #22060
Fix AttributeError when dataset in inheritance chain has no user by @mvdbeek in #22062
Add check_database_connection to workflow scheduling path by @mvdbeek in #22063
Use base64 URL instead of GitHub URL in test_stage_fetch_decompress_true by @mvdbeek in #22069
Store tool shed search index test data in repo by @mvdbeek in #22071
Move history panel expand button to top by @ahmedhamidawan in #22076
Fix subworkflow editing navigation and enable e2e test by @mvdbeek in #22082
Fix workflow search broken after auto layout by @dannon in #22093
Fix legacy_expose_api error callable returning str instead of bytes by @mvdbeek in #22106
Fix WSGI middlewares returning strings by @mvdbeek in #22108
Model hidden_data params as optional data in tool meta-models. by @jmchilton in #22116
Fix nested collection query performance by @mvdbeek in #22119
Fix CardinalityViolation in nested collection ARRAY walk scalar subqueries by @mvdbeek in #22123
Fix unhandled exceptions in tool form model population by @guerler in #22129
Use skip_locked also when updating collection by @mvdbeek in #22133
Backport transient CI fixes from #22102 to release_26.0 by @mvdbeek in #22135
Do not render hide button on non-optional activities in activity bar by @ahmedhamidawan in #22140
Fix redundant empty collection elements by @mvdbeek in #22154
Do not queue paused jobs by @martenson in #22156
Fix AmbiguousColumn error in job search for tools with long input names by @mvdbeek in #22167
Bump tiffviewer visualization to v0.0.4 by @davelopez in #22168
Fix make all histories private controller None id bug by @ahmedhamidawan in #22174
Fixes for gxformat2 by @jmchilton in #22179
Add batch celery task for history dataset purging by @mvdbeek in #22180
Include missing tools in stock_tool_paths. by @jmchilton in #22181
Throw ParameterValueError instead of generic error by @guerler in #22188
Back port collection fixes from #22170. by @jmchilton in #22193
Fix event loop blocking in async API routes by @mvdbeek in #22202
Fix race condition in history list when rapidly changing search filters by @mvdbeek in #22223
Use /api/tool_data endpoints in DataTables.vue & DataManagerTable.vue by @mvdbeek in #22229
Optimize dataset get_edit API by deferring expensive role queries by @mvdbeek in #22232
Fix TypeError in ExternalIdentities by always including provider_label in authnz response by @guerler in #22234
Add optional dataset collection mode to harmonize tool by @mvdbeek in #22236
Fix batch history purge not updating user’s update_time by @mvdbeek in #22238
Delete dummy error controller, fix type error on invalid requests by @mvdbeek in #22245
Fix file source removal by @davelopez in #22246
Make sure origins for data landings are persisted by @d-callan in #22248
Validate replacement_params values are strings before storing by @mvdbeek in #22250
Fix N+1 queries in fetch_job_states for jobs_summary endpoints by @mvdbeek in #22251
Fix oauth2 template validation by @davelopez in #22253
Drop stored workflow menu entries from user serialization by @mvdbeek in #22254
Replace BaseHTTPMiddleware with pure ASGI middleware for X-Frame-Options by @mvdbeek in #22255
Batch-prefetch HDCA job_state_summary in history contents listing by @mvdbeek in #22256
Fixes optional integer form handling in templates by @davelopez in #22257
Fix OMERO temp directory handling by @davelopez in #22262
Fix DOMPurify sanitize TypeError in Library components by @dannon in #22263
Sequence datatypes: only read first character per line for setting metadata by @bernt-matthias in #22276
Raise error when API client sends invalid parameter keys by @mvdbeek in #22277
Fix refresh time in object store caches by @bgruening in #22279
Fix validation of certain classes of text validators in tools. by @jmchilton in #22280
Fail early wehn no route match is found by @mvdbeek in #22284
Raise MessageException instead of generic Exception in rules_dsl by @mvdbeek in #22285
Fix toolshed static image url encoding by @mvdbeek in #22286
Fix nested DatasetCollectionElement in dynamic options by @mvdbeek in #22287
Fix flaky job search for HDCA inputs on PostgreSQL by @mvdbeek in #22290
Fix HDCA shown as unavailable on tool form rerun by @mvdbeek in #22291
Fix AttributeError when anonymous user searches workflows with is:bookmarked by @mvdbeek in #22296
Improve timeout and error handling in /api/proxy endpoint by @mvdbeek in #22297
Downgrade authnz OAuth callback errors from ERROR/EXCEPTION to WARNING by @mvdbeek in #22300
Skip WorkflowHub tests when workflowhub.eu is down by @mvdbeek in #22302
Delay workflow scheduling when collection has unresolved ‘auto’ extension by @mvdbeek in #22303
Fix atomicity issues when pulling files into object store cache by @mvdbeek in #22304
Fix slow get_private_role_user_emails_dict query by @mvdbeek in #22307
Pass tool_uuid as proper query parameter instead of reusing URL path id by @mvdbeek in #22309
Strip content-length and accept-ranges headers from proxied streaming responses by @mvdbeek in #22314
Mark dataset collections as deleted when purging a history by @mvdbeek in #22315
Wrap webhook scripts in IIFE to prevent redeclaration errors by @mvdbeek in #22320
Handle inaccessible history errors in route-level components by @mvdbeek in #22323
Ignore aborted requests in rethrowSimple by @mvdbeek in #22325
Fix AbortSignal being serialized as dataset view query parameter by @mvdbeek in #22326
Discard rest of line in chunks in iter_start_of_line by @mvdbeek in #22332
Fix tool “Copy Link” generating broken /root?tool_id= URLs by @mvdbeek in #22339
Backport: Fix tool discovery help data race condition and stale results by @mvdbeek in #22340
Throw RequestAbortedError instead of returning undefined by @mvdbeek in #22352
Remove broken serialize_urls from HDASerializer by @mvdbeek in #22358
Fix HideDatasetAction not applied for cached workflow jobs by @mvdbeek in #22360
Fix timestamp parsing in job import/export by @mvdbeek in #22372
Don’t retry JobNotReadyException in job destination mapping by @mvdbeek in #22377
Fix Content-Disposition header with trailing whitespace by @mvdbeek in #22379
Fix workflow extract NoneType on LDDA leaf in implicit collection by @jmchilton in #22381
Show error message when display action not ready by @mvdbeek in #22383
Ensure x-content-truncated header is string by @mvdbeek in #22386
Validate workflow invocation parameters values are dicts by @mvdbeek in #22388
Fix invalid request error for get_metadata_file endpoint by @mvdbeek in #22389
Offload AsyncClient construction to worker thread by @mvdbeek in #22392
Fix dataset preview rendering to preserve newlines by @mvdbeek in #22397
Serialize data provider errors as MessageException subclasses by @mvdbeek in #22398
Handle MaxDiscoveredFilesExceededError for dynamic collections by @mvdbeek in #22402
Silence social_core’s noisy handle_http_errors logging by @mvdbeek in #22403
Unwrap HDCAs/DCEs nested in multi data input lists by @mvdbeek in #22405
Reject HDCA submitted to single data parameter by @mvdbeek in #22406
Fix headings in selenium package readme by @guerler in #22411
Enhancements
Replace Copy Dataset Mako with Vue Component by @guerler in #17507
Blur input path instead of requiring explicit enter in FormDirectory input by @dannon in #20047
Fix output dataset collection visualizations by @mvdbeek in #20544
Improve docs for invalidjobexception_state and _retry of DRMAA runners by @bernt-matthias in #20612
Refactor/cleanup admin_cleanup_datasets.py script by @ccoulombe in #20819
Add Support for HTTP Headers in URL Fetch Requests with Secure Storage for Landing Requests by @davelopez in #20924
Tool Request API by @jmchilton in #20935
Move database revision tags to separate file by @guerler in #20998
Integrate ‘uv’ for enhanced package management by @arash77 in #21002
Add service account support for Google Cloud Storage client initialization by @dannon in #21027
Selenium test cases for IGV. by @jmchilton in #21034
Convert Modal to plain JavaScript and remove from Galaxy object by @guerler in #21038
Selenium test for the new storage delete confirm dialog. by @jmchilton in #21039
Selenium test for #20886 (sharing private histories) by @jmchilton in #21040
Update Python dependencies by @galaxybot in #21043
Bump github/codeql-action from 3 to 4 by @dependabot[bot] in #21048
Improve type annotation of job runners by @nsoranzo in #21050
Selenium test exercising workflow debug, failed jobs, etc… (20912) by @jmchilton in #21058
Selenium test case for basic tools list functionality. by @jmchilton in #21059
Remove jquery from legacy onload helpers and Rule Builder by @guerler in #21063
Add Playwright Backend Support to Galaxy Browser Automation Framework by @jmchilton in #21102
Update Python dependencies by @galaxybot in #21104
Remove tabular chunked, binary and large file mako by @guerler in #21106
Enhance Confirm Dialog Types and More by @itisAliRH in #21108
Bump actions/setup-node from 5 to 6 by @dependabot[bot] in #21116
Add select all, simple search and pagination to Zip file selector by @davelopez in #21120
Remove legacy Visualization Mako and Controllers by @guerler in #21133
Add Custom Validation for User-Configured Templates by @davelopez in #21155
Fix various bugs/hacks with tool_data_table handling. by @jmchilton in #21163
Add type annotations to job handling code by @nsoranzo in #21171
Bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in #21176
Refactor client imports for better ES module compatibility by @dannon in #21194
Add an easy to access/obvious button to hide history panel by @ahmedhamidawan in #21207
Richer tracking of transient failures. by @jmchilton in #21227
Update Python dependencies by @galaxybot in #21229
Reimplement keycloak/cilogon as PSA providers and remove custos by @nuwang in #21234
Bump actions/checkout from 4 to 5 by @dependabot[bot] in #21236
Allow filtering job searches by history ID by @nsoranzo in #21257
Slight improvement of mztab2 datatype by @nguilhot in #21258
Add “show in multiview” to mutiple history selection by @davelopez in #21260
Move js-client bootstrapping to FastAPI by @guerler in #21264
Smoke test and PR by @ksuderman in #21277
Update Python dependencies by @galaxybot in #21301
Add workflow dispatch to artifact building workflow by @mvdbeek in #21323
Implement GA4GH WES API by @jmchilton in #21335
Add Beta Upload Activity - User Interface Redesign by @davelopez in #21338
Annotates archive explorer tests as Selenium-only by @davelopez in #21341
Update Python dependencies by @galaxybot in #21345
Add citation reminder to job completion email by @Syrinx55 in #21347
Migrate client tests from Jest to Vitest by @dannon in #21348
Bump peter-evans/create-pull-request from 6 to 7 by @dependabot[bot] in #21352
Bump actions/checkout from 5 to 6 by @dependabot[bot] in #21353
Bump actions/setup-python from 4 to 6 by @dependabot[bot] in #21354
Bump jupyterhub/action-k3s-helm from 3 to 4 by @dependabot[bot] in #21355
Link to an external profile when user accounts are managed by a single OIDC provider by @marius-mather in #21356
Vitest followup: switch to happy-dom, cleanup/fixes to mocks by @dannon in #21359
Migrate rate limiter tests from Jest to Vitest by @davelopez in #21361
Add OMERO File Source Plugin by @davelopez in #21367
Update Python dependencies by @galaxybot in #21368
Replace Webpack with Vite for client build by @dannon in #21369
Replace gulp with native Node.js build script by @dannon in #21370
Fix: tool execution typing improvements/fixes by @jmchilton in #21374
More use of base64 to improve test stability. by @jmchilton in #21383
Update fastapi to 0.123.4 and get_openapi() fork by @nsoranzo in #21384
Add initial support for the DICOM format by @kostrykin in #21385
Add new Azure Flat object store file source by @guerler in #21398
Update Python dependencies by @galaxybot in #21400
Redesign TS landing page with prominent search box. by @jmchilton in #21430
A couple more tool shed fixes. by @jmchilton in #21433
Add Google Batch job runner by @ksuderman in #21443
Update Python dependencies by @galaxybot in #21449
Bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in #21460
Bump actions/cache from 4 to 5 by @dependabot[bot] in #21461
Bump peter-evans/create-pull-request from 7 to 8 by @dependabot[bot] in #21462
Add Jupyternaut adapter for JupyterLite integration by @guerler in #21463
Enable attaching sample sheet to landing requests by @mvdbeek in #21489
Modernize UrlTracker into a Typescript composable by @davelopez in #21490
Tool testing: add min/max attributes to test output collections by @bernt-matthias in #21495
Update Python dependencies by @galaxybot in #21500
Add functional test for filtering outputs by parameters in repeats by @bernt-matthias in #21501
Various test documentation updates. by @jmchilton in #21507
Raise ConfigurationError instead etree.ParseError by @mvdbeek in #21509
Include subworkflow jobs in invocation metrics by @mvdbeek in #21511
Implement subworkflow invocation export by @mvdbeek in #21512
Update Python dependencies by @galaxybot in #21513
Fix use of function, method and argument names deprecated in pyparsing 3.0.0 by @nsoranzo in #21517
Add workflow API test for use_cached_job with sample sheet collections by @mvdbeek in #21522
Add ruff –check to pre-commit sample config by @mvdbeek in #21523
Add support for workflow landing requests using simple URLs by @mvdbeek in #21525
Update Python dependencies by @galaxybot in #21526
Extend image_diff and image content assertions to handle boolean images by @kostrykin in #21527
Implement workflow completion monitoring with extensible hooks by @mvdbeek in #21532
Migrate client package manager from Yarn to pnpm by @dannon in #21539
Update dependencies for IGV and Plotly by @guerler in #21543
Update Python dependencies by @galaxybot in #21552
Add Claude Code slash commands for GitHub issue triage by @jmchilton in #21579
Add discarded_data option to model store import API by @mvdbeek in #21582
Sort data managers using case-insensitive order for display in admin UI by @jdavcs in #21587
Adds vue-eslint-parser as a dev dependency by @davelopez in #21588
Switch Google Cloud Storage file source from fs-gcsfs to gcsfs (fsspec) by @mvdbeek in #21590
Unify extensions of file source templates by @bernt-matthias in #21594
Use fail-on-cache-miss when restoring the client cache by @nsoranzo in #21597
Update Python dependencies by @galaxybot in #21606
Move legacy Visualization Plugins API to FastAPI by @guerler in #21612
Apply 2026 black style by @galaxybot in #21618
Migrate remaining vitest tests from axios-mock-adapter to useServerMock by @dannon in #21634
Fix slow startup regression by @ksuderman in #21637
Remove sanitization from built-in grep tool by @wm75 in #21648
Update Python dependencies by @galaxybot in #21653
Improve ruff configuration to mimic our isort settings by @nsoranzo in #21666
Check file source template config files for determining conditional dependencies + add constraint for zero-ice by @bernt-matthias in #21688
Standardize agent API schemas and response metadata by @dannon in #21692
Various fixes to file source template’s validation system by @davelopez in #21704
Revert startup probe timeout by @ksuderman in #21748
Send a Slack notification if the Docker image build or smoke test fails by @ksuderman in #21751
Adds indicator to show if upload target history is current by @davelopez in #21830
Replaced deprecated actions with modern equivalents by @ksuderman in #21849
Allow connecting sample sheet inputs to compatible collection inputs in editor by @mvdbeek in #21859
Adds ImageJ metadata support to TIFF export by @davelopez in #21882
Backports: Return redirection instead of a JSON with the redirect URI by @davelopez in #21902
Update qiskit interactive tool by @thepineapplepirate in #21948
Use ParameterValueError for dataset count validation to reduce Sentry noise by @mvdbeek in #22058
Add linter to validate required_files include paths exist by @mvdbeek in #22061
Use mock test server when tests don’t target external galaxy server by @mvdbeek in #22103
Add _F/_R auto-pairing filter for forward/reverse datasets by @jmchilton in #22267
Other changes
Version 26.0.dev by @ahmedhamidawan in #21020
Update client API schema by @davelopez in #21147
Merge 25.1 into dev, fix openapi schema generation for TypedDict by @mvdbeek in #21168
Remove unused javascript from toolshed test makos by @guerler in #21387
Fix tool request API for multiple select parameters with defaults. by @jmchilton in #21416
Merge 25.1 into dev and create alembic merge revision by @mvdbeek in #21440
Merge 25.1 into dev by @jmchilton in #21505
Add automated npm publishing for client-api package by @dannon in #21533
Don’t return 404 when file name can’t be serialized by @mvdbeek in #21577
Fix test_value_restriction_with_select_from_multiple_subworkflow_inputs formatting by @mvdbeek in #21723
Use 1-based step index in invocation metric UI by @mvdbeek in #21799
Backport: Fix dbkey filter returning no options when dbkey unset by @bernt-matthias in #21945
Show invalid tool error reasons in Tool Shed UI by @mvdbeek in #22040
25.1.2 (2026-03-09)
Bug fixes
Add missing enable_beta_tool_formats config option by @bernt-matthias in #21190
Properly parse build info from requirement info by @bernt-matthias in #21481
Fix private dataset sharing error handling by @davelopez in #21689
Add selenium test and fix inline images in workflow report tables by @mvdbeek in #21698
Fix route to workflow editor with version does not load expected version by @ahmedhamidawan in #21711
Fix database migration error from 25.0 > 25.1 by @jdavcs in #21737
Fix npm trusted publishing in 25.1 release workflow by @dannon in #21747
Make galaxy-web-apps package compatible with latest FastAPI by @nsoranzo in #21753
Fix disable_local_accounts displays register link by @davelopez in #21764
Fix help forum integration by @davelopez in #21773
Fix workflow rename modal is not reactive to prop changes by @ahmedhamidawan in #21785
Fix tag dropdown not closing on outside click, and not selecting in Safari by @mvdbeek in #21797
Make database heartbeat more robust (backport) by @mvdbeek in #21812
Allow workflow download with missing file source references by @mvdbeek in #21814
Fix AWS Batch monitor crash, delete copied monitor method by @mvdbeek in #21818
Fix form number negative handling by @davelopez in #21819
Fix tool credentials on containerized (Singularity/Docker) destinations by @arash77 in #21821
Pin setuptools<82 for galaxy-files package - Backport #21824 by @nsoranzo in #21826
Add builtin_converters section to integrated tool panel by @ahmedhamidawan in #21838
Fix Galaxy UI nesting in data manager job info view by @mvdbeek in #21840
Fix output dataset permission guessing by @mvdbeek in #21862
Fix loading non-tool files from watched tool directories by @mvdbeek in #21880
Fix credential validation logic in tool form component by @itisAliRH in #21889
Ensure markdown elements do not render if argument is undefined by @ahmedhamidawan in #21908
Fix “Create New” in workflow editor not resetting editor state by @ahmedhamidawan in #21918
Enforce storage quota for Celery-based data fetch jobs by @mvdbeek in #21941
Fix optional parameter persisting NO_REPLACEMENT sentinel when not provided by @mvdbeek in #21964
Fix recording duplicate workflow_request_input_step_parameter rows by @mvdbeek in #21980
Fix AttributeError when requesting invalid metadata file by @mvdbeek in #21985
Fix NoReplacement handling in workflow callback_helper by @mvdbeek in #21994
Fix pick_value output inheriting hidden state from input datasets by @mvdbeek in #21995
Enhancements
Add Deacon idx format by @SantaMcCloud in #21632
Add amnis cif flow cytometry data type by @bernt-matthias in #21829
Other changes
25.1.1 (2026-02-03)
Bug fixes
Record input parameter invocation inputs by @mvdbeek in #21452
Remove ref and polish release-drafter workflow by @ahmedhamidawan in #21467
Maintain column definitions on map over by @mvdbeek in #21468
Add missing test file for sig datatype by @SaimMomin12 in #21473
Remove release-drafter workflow and add a release config file to improve generated notes by @ahmedhamidawan in #21478
Do not update a user’s update_time when an admin archives (and purges) a history by @natefoo in #21484
Add missing ending newline to test.sig test data file by @nsoranzo in #21485
Fix subworkflow runs for disconnected required inputs with defaults by @mvdbeek in #21488
change locuszoom package version to 0.0.7 by @elmedjadjirayane in #21494
Pin release prebuilt client package exactly by @dannon in #21498
Usability fixes for sample sheet selection. by @jmchilton in #21503
Fix exception message to enable debugging of missing dataset issue. by @jmchilton in #21504
Fix type annotation for invocation report errors field by @mvdbeek in #21508
Add missing dependencies to galaxy-files package by @nsoranzo in #21518
Filter out failed_metadata HDAs from job cache by @mvdbeek in #21544
Fix pulsar with rewrite_parameters: false by @mvdbeek in #21557
Show “Expires today” instead of “Expires soon” in Expiration Warning by @mvdbeek in #21560
Use quotes for Galaxy citation bibtex by @bernt-matthias in #21563
Supports Dataverse file access via both persistent and database IDs by @davelopez in #21569
Fix Pulsar with default_file_action: none by @mvdbeek in #21578
Fix #21542 - allow workbook bootstrap generation for sample sheet collection types. by @jmchilton in #21584
Add belated deprecation of Python 3.9 support by @nsoranzo in #21598
Fix loading of credentials when associated tools are missing by @arash77 in #21599
Fix race condition in workflow collection populated state check by @mvdbeek in #21613
Harden Dataverse integration by @davelopez in #21624
Add split paired or unpaired tool to sample tool conf by @bernt-matthias in #21647
Fix secret credential editing and add clear button by @itisAliRH in #21650
Fix condor typo by @gsaudade99 in #21651
Fix HTCondor runner unwatching jobs when stopping containers by @kysrpex in #21656
Fix data manager .loc file selection logic by @jdavcs in #21664
Fixes storage management check for anonymous users by @davelopez in #21680
Resets selection filter when loading dialog by @davelopez in #21681
Fixes duplicated entries in “share with individual users” component by @davelopez in #21683
Simplify docker build, use node as specified in requirements by @mvdbeek in #21695
Remove Discover Tools button in the workflow tool panel by @ahmedhamidawan in #21697
Fix option propagation for workflow inputs connected to multiple subworkflows by @mvdbeek in #21712
Fix collection job state not preserved during history export/import by @mvdbeek in #21716
Add missing filter_failed_collection_1.1.0.xml tool by @mvdbeek in #21719
Strip inline comments in conditional requirements by @mvdbeek in #21720
Exclude node_modules at all depths in Docker builds by @mvdbeek in #21721
Enhancements
Add sample sheet support to many database operation tools by @mvdbeek in #21465
Add Sourmash sig new datatype by @SaimMomin12 in #21469
Add new jupyter version by @bgruening in #21531
Adds object_expires_after_days example usage to sample config by @davelopez in #21547
Add tool credentials system documentation and schema updates by @arash77 in #21561
Add a few datatypes from the digital humanities domain by @bgruening in #21596
Add new datatype pg and hg for pangenomics by @SaimMomin12 in #21620
Add database operation tool to convert sample sheets to list collections by @mvdbeek in #21625
Add new datatypes required for VG tool by @SaimMomin12 in #21644
Document security considerations for using secrets by @bernt-matthias in #21654
Other changes
Update 25.1 release notes with config changes by @ahmedhamidawan in #21444
Fix 25.1 release month on user facing notes by @ahmedhamidawan in #21450
Merge 25.1 into master by @ahmedhamidawan in #21482
Improve tempdir cleanup in integration tests by @mvdbeek in #21520
25.1.0 (2025-12-12)
Bug fixes
Workaround to numeric sorting in the local portion of tool versions if they are galaxy “build” numbers by @natefoo in #13570
Change wording of the client side storage handling by @bgruening in #19815
Check for format="input" as well as format="auto" in datatype linter by @bernt-matthias in #20177
Add missing galaxy slots and memory tool by @mvdbeek in #20262
Fix a transiently failing API test. by @jmchilton in #20278
Fix test timeout in k8s test_slots_and_memory test by @mvdbeek in #20284
Add built visualizations path to .gitignore by @guerler in #20355
Remove 8 year old note that points at a non-existent subdomain by @scottcain in #20361
Bump requests from 2.32.3 to 2.32.4 in /lib/galaxy/dependencies by @dependabot[bot] in #20422
Update mulled_containers.rst by @ccoulombe in #20446
Fix transient selenium error when adding collection input. by @jmchilton in #20460
Collection API related spelling fix. by @jmchilton in #20470
Fix alembic down_revision for trigger replacement migration by @mvdbeek in #20501
Add a merge migration, revert previous edit by @jdavcs in #20507
Update core.history tour by @pavanvidem in #20576
Fix UI Bug - don’t allow checking deferred for local files. by @jmchilton in #20609
Require user for visualizations create endpoint by @guerler in #20615
Use store to cache step jobs summary by @ahmedhamidawan in #20638
Fix typo in lib/galaxy/config/sample/job_conf.sample.yml: enviroment –> environment by @blankenberg in #20652
Remove select and deselect labels from visualization select field by @guerler in #20665
Fix assertion on python version by @ccoulombe in #20696
Remove decoded ids from job/dataset error report email by @ahmedhamidawan in #20714
Fix various collection descriptions in history panel. by @jmchilton in #20736
Various client unit test fixes and cleanup. by @jmchilton in #20752
More client unit test clean up. by @jmchilton in #20755
More cleanup for Jest output. by @jmchilton in #20769
Fix Switch to history link click actions and add extensive jests by @ahmedhamidawan in #20783
Only show breadcrumb when on history permissions route (not in sharing view) by @ahmedhamidawan in #20800
Fix Ipynb datatype sniffer and add unit tests. by @ksuderman in #20811
Ignore yaml and json in prettier pre-commit hook by @mvdbeek in #20823
Bump requirement of directory converters by @bernt-matthias in #20834
Fix lint error in WorkflowRunSuccess by @ahmedhamidawan in #20837
Fix multiple=”true” data collection map over for shell_command tools by @mvdbeek in #20859
Fix test in configfile_user_defined.yml by @nsoranzo in #20873
Likely fix for transiently failing published histories test. by @jmchilton in #20890
Bump codecov/codecov-action from 3 to 5 by @dependabot[bot] in #20920
Extract: do not use common prefix dir by @bernt-matthias in #20929
Fix default conditional test parameters… by @jmchilton in #20942
Fix JupyterLite History Identifier Retrieval Without Dataset by @guerler in #20971
Apply overscroll behavior setting to html by @guerler in #20975
Fix jest tests – wait for async calls in grid list by @dannon in #20986
Fix comp1 / test_subworkflow_map_over_data_column by @mvdbeek in #20992
Save IGV locus and improve error handling by @guerler in #20996
Fix content wrapping in cards and preference title by @guerler in #21009
Fix horizontal scrolling w/ GButton in input-group-append by @dannon in #21025
Fix GCS file source to handle virtual directories without marker objects by @dannon in #21051
Fix Huggingface timestamp parsing when last_commit is missing by @davelopez in #21072
Allow cors on data and tool landing pages by @mvdbeek in #21078
Fix invocation export dataset exclusion by @davelopez in #21091
Fix copy export download link for old exports by @davelopez in #21094
Fix invalid invocation tab handling and unify disabled tab components by @ahmedhamidawan in #21115
Fix shift+click range select not working in history list by @ahmedhamidawan in #21117
Improve _touch_collection_update_time_cte performance by @mvdbeek in #21134
Fix type annotation in test_run_workflow_use_cached_job_implicit_conv… by @mvdbeek in #21138
Use corepack to link yarn into $VIRTUALENV/bin by @mvdbeek in #21140
Pin Ansible version by @ksuderman in #21141
Remove invocation view connection animations by @ahmedhamidawan in #21145
Mark user creation API endpoint as admin-only by @mvdbeek in #21149
Set minimum profile version for expression tools by @mvdbeek in #21151
Add Convert characters1 to workflow safe updates by @mvdbeek in #21160
Use yarn instead of npx to use pinned openapi-typescript by @mvdbeek in #21164
Fix proxy endpoint encoding by @davelopez in #21169
Enable drag-and-drop of collection elements in IGV by @guerler in #21173
Save build date to GITHUB_OUTPUT by @ksuderman in #21181
Don’t show the “view sheet” button for non-sample sheet collections. by @jmchilton in #21191
Allow collection builder to be invoked consecutively by @ahmedhamidawan in #21193
Don’t create extra watchers when switching tabs by @natefoo in #21197
Drop single ‘pair’ from standard upload UI, preferring lists, or lists of pairs as options for user by @dannon in #21200
Assorted workbook upload fixes. by @jmchilton in #21203
Wrap ontology card in tool discovery view below list view selector by @ahmedhamidawan in #21212
Add missing more-itertools dependency by @nsoranzo in #21214
Fix downloading subworkflows without stored workflow by @mvdbeek in #21223
Apply tool test timeout only once by @bernt-matthias in #21246
Fix workbook download link by @jmchilton in #21261
Fixes download for restricted Zenodo records by @davelopez in #21274
Update the mulled.py script to check json output by @nilchia in #21276
Prevent duplicate current_history_json calls by @ahmedhamidawan in #21282
Prevent duplicate fetches for full workflow in invocation view by @ahmedhamidawan in #21284
Add a rate limiter to the API client factory by @ahmedhamidawan in #21286
Fix keyed cache fetching over and over if fetched value is 0 by @ahmedhamidawan in #21293
Fix invocations scroll list cards to show update time by @ahmedhamidawan in #21294
Set create_time as the default time for sorting/display for invocations by @ahmedhamidawan in #21314
Fix TERMINAL_STATES array has a duplicate state by @ahmedhamidawan in #21342
Backport smoke-test and pr jobs from dev branch by @ksuderman in #21350
Use anaconda API to find package download URL by @nsoranzo in #21360
Use a new format tox environment in lint GitHub action by @nsoranzo in #21419
Fix optional subworkflow input scheduling bug by @mvdbeek in #21435
Maintain columns on sample sheet map over by @mvdbeek in #21436
Enhancements
Don’t serialize view of item in delete/purge request by @mvdbeek in #18732
Support credentials(secrets/variables) in tool requirements by @arash77 in #19084
Allow several Galaxy Markdown directives to be embedded. by @jmchilton in #19086
Add tags to output datasets from tool form by @PlushZ in #19225
Implement Sample Sheets by @jmchilton in #19305
Refactor and use ScrollList component in more places by @mvdbeek in #19318
User preferences redesign by @itisAliRH in #19658
Refactor Object Store Selection Modals UI by @itisAliRH in #19697
Consider collections in on_strings for parameters accepting multiple datasets by @bernt-matthias in #19817
Add selectedItems composable by @ahmedhamidawan in #19973
Update Python dependencies by @galaxybot in #20139
Selenium tests for various 24.2 features. by @jmchilton in #20215
Update Javascript package licenses to MIT by @mr-c in #20264
Split Login and Register, enable OIDC Registration. by @uwwint in #20287
Empower Users to More Pragmatically Import Datasets & Collections From Tables by @jmchilton in #20288
Update GitHub workflows to use PostgreSQL 17 image by @nsoranzo in #20292
Switch Default Visualization Endpoint to script, migrate to YAML by @guerler in #20303
Add short term storage expiration indicator to history items by @davelopez in #20332
Update Python dependencies by @galaxybot in #20347
Install Visualization plugins as self-contained packages by @guerler in #20348
Add LocusZoom Visualization by @elmedjadjirayane in #20354
Refactor CollectionDescription component props to use HDCASummary by @davelopez in #20356
Update create_time field to be required in history content items by @davelopez in #20357
Prepare ToolBox.dynamic_tool_to_tool() for CWL formats by @nsoranzo in #20364
Install visualizations directly to static path, avoid duplication by @guerler in #20372
Update Python dependencies by @galaxybot in #20383
Use full page width in reports and pages by @guerler in #20384
Workflow Graph Search by @ElectronicBlueberry in #20390
History CitationsList export improvements by @dannon in #20402
Enhance citations page by @davelopez in #20408
Base Implementation of GFormInput by @ElectronicBlueberry in #20418
Type annotation fixes for mypy 1.16.0 by @nsoranzo in #20424
Implement dataset source requested transformations. by @jmchilton in #20435
Add username_key setting to configure python-social-auth OIDC by @marius-mather in #20497
Test case for using URL-based workflow inputs with implicit conversions. by @jmchilton in #20509
Remove deprecated tool document cache by @nsoranzo in #20510
Fixes for invocation import. by @jmchilton in #20528
Update Python dependencies by @galaxybot in #20537
Decode OIDC access token as part of authentication pipeline by @marius-mather in #20547
Add Dataverse template by @davelopez in #20551
Update Python dependencies by @galaxybot in #20577
Display the Galaxy Citation within the Export Tool References List by @mschatz in #20584
Add recent downloads page for STS requests by @davelopez in #20585
Implement Data Landing Requests by @jmchilton in #20592
Update Python dependencies by @galaxybot in #20601
Improve BreadcrumbHeading and add unit tests by @itisAliRH in #20618
Add a “Debug” (email report) tab to Workflow Invocations by @ahmedhamidawan in #20624
Update location of latest tpv shared db by @nuwang in #20651
Update Python dependencies by @galaxybot in #20653
Add markdown hint to schema by @bgruening in #20654
Update tiffviewer visualization to version 0.0.3 by @davelopez in #20658
Improve GCard visibility handling and type definitions by @itisAliRH in #20663
Removes entries from purged filter label in history grid by @guerler in #20664
Unify History export UX using wizard by @davelopez in #20666
Sort collection dialog by HID descending. by @jmchilton in #20674
Update Python dependencies by @galaxybot in #20680
Fix resource watcher composable race condition by @davelopez in #20690
Add special case for BAM files in RStudio by @bgruening in #20692
Add fsspec base implementation for File Source plugins by @davelopez in #20698
Update Python dependencies by @galaxybot in #20699
History Components Navigation/Heading Improvements by @itisAliRH in #20702
Improve cli and slurmcli runner traceability for job status and failure reasons by @selten in #20717
Attempt to reuse previously materialized datasets by @mvdbeek in #20718
Make workflow invocation tabs routable by @ahmedhamidawan in #20719
Drop ucsc test server from sample build sites by @mvdbeek in #20723
Refactor Files Sources Framework for stronger typing using pydantic models by @davelopez in #20728
Hierarchical display collection dataset states by @mvdbeek in #20731
Update Python dependencies by @galaxybot in #20732
Fix Client Linting Run Error by @itisAliRH in #20734
Add embed-compatible view for galaxy pages by @dannon in #20737
Make invocations panel reactive using the invocation store by @ahmedhamidawan in #20738
New History List Using GCard by @itisAliRH in #20744
Change Advanced Tool Search to a Tool Discovery View by @ahmedhamidawan in #20747
Update Python dependencies by @galaxybot in #20753
Consolidate visualization mako, avoid user agent styles by @guerler in #20760
Add configfiles support and various enhancements for user defined tools by @mvdbeek in #20761
Fix WorkflowComment tests warnings by @davelopez in #20762
A production data types checklist to aid creating/reviewing new data types by @jmchilton in #20768
Fail Jest tests on warn/error console logging. by @jmchilton in #20770
Modernize and Refactor Tour components by @ahmedhamidawan in #20771
Increase wait time (retry) in UCSC data source test by @davelopez in #20772
Drop old load_workflow controller method, use API by @mvdbeek in #20774
Allow fine-grained selection of included files in Invocation Export Wizard by @davelopez in #20776
Stabilize client build after client-dev-server by @davelopez in #20777
Update Python dependencies by @galaxybot in #20779
Remove Backbone from UI bootstrap initialization by @guerler in #20786
Adapt S3 file source to fsspec by @davelopez in #20794
Remove Backbone dependency from webhook wrappers by @guerler in #20797
Fix fsspec fs path handling by @davelopez in #20799
Add Hugging Face 🤗 file source and user-defined template by @davelopez in #20805
Refactor MESSAGES constant in FileSourceTypeSpan.vue by @davelopez in #20806
Fix new linting errors in unit test mounts by @davelopez in #20807
Update Python dependencies by @galaxybot in #20812
Enable data label column selection in basic Plotly plots and add heatmap by @guerler in #20813
Add small improvements for running CWL tools by @nsoranzo in #20826
Bump jspdf from 2.5.1 to 3.0.2 in /client by @dependabot[bot] in #20828
Migrate icon defs in CollectionOperations.vue to best practices. by @jmchilton in #20829
Update Python dependencies by @galaxybot in #20841
Allow adding extra steps to the default pipeline of the OIDC authentication by @marius-mather in #20845
Use a streaming based parser (ijson) when setting metadata for biom1 files. by @ksuderman in #20851
Support remote file source hashes by @davelopez in #20853
Various Container Execution Enhancements (including GCP Batch support) by @jmchilton in #20862
Update maf tools with profiles, required_files, and requirements. by @natefoo in #20865
Add support for hierarchical module systems in lmod + module dependency resolvers by @t1mk1k in #20866
Replace tour_generator webhook with internal API and frontend by @ahmedhamidawan in #20868
Update Python dependencies by @galaxybot in #20869
Improve type annotation for job runners and InteractiveToolManager by @nsoranzo in #20871
Add axt and maf to auto_compressed_types by @richard-burhans in #20875
Drop Python helper script from sort1 tool by @nsoranzo in #20876
Bump vite from 6.3.5 to 6.3.6 in /client-api by @dependabot[bot] in #20885
Set default option to make datasets accessible only to individual users when sharing histories with particular users by @davelopez in #20886
Refactor sharing logic for unified type handling by @davelopez in #20888
Small cleanup of tool execution code. by @jmchilton in #20899
Update Python dependencies by @galaxybot in #20905
Add Multiple Sequence Alignment Viewer 2.0 by @guerler in #20907
Improve Invocation View step display by @ahmedhamidawan in #20912
Allow creation of visualizations without dataset by @guerler in #20914
Enable dependabot version updates for GitHub actions by @nsoranzo in #20915
Add support for picking from_work_dir directory by @mvdbeek in #20916
Bump docker/login-action from 2 to 3 by @dependabot[bot] in #20918
Bump docker/build-push-action from 4 to 6 by @dependabot[bot] in #20919
Bump actions/setup-node from 4 to 5 by @dependabot[bot] in #20921
Bump docker/setup-buildx-action from 2 to 3 by @dependabot[bot] in #20922
Add tool to add nesting level to collection by @bernt-matthias in #20926
Update Python dependencies by @galaxybot in #20930
Make jupyterlite default visualization for ipynb by @guerler in #20931
Allow addressing user defined tools in job config by @mvdbeek in #20932
Wire up and test resource requirement via tpv by @mvdbeek in #20936
Bump actions/checkout from 4 to 5 by @dependabot[bot] in #20937
Bump peter-evans/create-pull-request from 6 to 7 by @dependabot[bot] in #20938
Bump docker/metadata-action from 4 to 5 by @dependabot[bot] in #20939
Bump actions/setup-python from 5 to 6 by @dependabot[bot] in #20940
Bump actions/github-script from 7 to 8 by @dependabot[bot] in #20941
Add a dedicated ToolFormTags component for tool form output tags by @ahmedhamidawan in #20945
Limit admin requirement of selected tool data api endpoints by @guerler in #20949
Add resource docs and tweak tool source schema title generation by @mvdbeek in #20951
Allow specifying a command for determining a docker host port by @natefoo in #20953
Allow sending and tracking landing request origin by @mvdbeek in #20957
Move tours schema to schema directory (to fix package structure) by @ahmedhamidawan in #20965
Update Python dependencies by @galaxybot in #20968
Log task execution errors with log.exception by @mvdbeek in #20970
Bump actions/labeler from 5 to 6 by @dependabot[bot] in #20976
Simplify plugin staging with explicit clean step by @dannon in #20983
Update Python dependencies by @galaxybot in #21005
Fix and migrate HIV-TRACE to Charts Visualization Framework by @guerler in #21006
Add README and update the minimal visualization example by @guerler in #21007
Bump up total-perspective-vortex dependency by @mvdbeek in #21014
Fix GCard Layout and White Spaces by @itisAliRH in #21026
Add Keyboard Navigation to History Lists by @itisAliRH in #21035
Use workflow-style payload in data landing request by @mvdbeek in #21107
Release notes by @ahmedhamidawan in #21162
Add Release Drafter GitHub Action integration by @dannon in #21195
Tighter API for tool run tagging. by @jmchilton in #21210
Makes “set as current” the primary action in history list by @davelopez in #21233
Optimize /api/invocations/steps/{step_id} by @mvdbeek in #21249
[igv] Allow selection of genomes from history fasta/2bit by @guerler in #21269
Update tool profile version for credentials by @davelopez in #21273
New datatype addition: HAL by @SaimMomin12 in #21379
Add PNTS datatype for 3D Tiles Point Cloud by @kgerb in #21414
A better way to designate config_watcher by @jdavcs in #21426
Optionally include column headers in sample sheet file by @mvdbeek in #21439
Other changes
Small tweaks and cleanup from sample sheets branch by @jmchilton in #20229
Version 25.1.dev by @ahmedhamidawan in #20268
Merge release_25.0 into dev by @davelopez in #20484
Merge release_25.0 into dev by @davelopez in #20490
Bump pillow from 11.2.1 to 11.3.0 in /lib/galaxy/dependencies by @dependabot[bot] in #20591
Bump linkifyjs from 4.1.1 to 4.3.2 in /client by @dependabot[bot] in #20707
Sample Sheet Bug Fixes around Preserving Collection Metadata by @jmchilton in #20749
Add tool_id and tool_version column to tool_landing_request table by @mvdbeek in #20795
Implement bare-bones view of sample sheet collections as sheet. by @jmchilton in #20798
Fix optional numeric column definitions for sample sheets. by @jmchilton in #20830
Validate sample sheet column definitions in workflow definitions on backend. by @jmchilton in #20880
Bump axios from 1.8.2 to 1.12.0 in /client by @dependabot[bot] in #20906
Merge 25.0 into dev by @ahmedhamidawan in #20911
Bump default milestone to 26.0 by @ahmedhamidawan in #20946
Add 25.1 migration tags by @ahmedhamidawan in #21017
Update version to 25.1.rc1 by @ahmedhamidawan in #21019
Fix TOOL_WITH_SHELL_COMMAND import source by @mvdbeek in #21070
Drop fastapi extra dep from sentry-sdk by @mvdbeek in #21156
Resolve possible symlink before establishing tool file location by @mvdbeek in #21175
25.0.4 (2025-11-18)
Bug fixes
Skip sam metadata if we have too many references by @mvdbeek in #20820
Fix select field cut off in dataset view by @ahmedhamidawan in #20947
Check for expiration in refresh token dictionary by @jdavcs in #20954
Deactivate user file source on unknown error by @mvdbeek in #20962
Don’t create workflow outputs to recover input parameter outputs by @mvdbeek in #20980
Fix test_multiple_decorators unit test for FastAPI 0.118.0 by @nsoranzo in #20982
Fix PUT /api/workflows for user defined tools by @mvdbeek in #20987
Backport of #20984 by @davelopez in #20994
Improves zip file type detection for uploads under windows by @caroott in #20999
Require OK datasets for filtering empty datasets by @bernt-matthias in #21023
Fix InvalidRequestError when saving workflow step with dynamic tool by @mvdbeek in #21056
Fix has_size assertion by @bernt-matthias in #21081
Run landing request state through validator by @mvdbeek in #21087
Fix workflow run form input restrictions by @mvdbeek in #21095
Prefix download link by @martenson in #21112
Create new datasets when creating skipped database operation tool outputs by @mvdbeek in #21142
Fix workflow landing rendering if public query param not provided by @mvdbeek in #21165
Fix optional param unset in RO-Crate export by @davelopez in #21192
Fix refresh token expiration retrieval logic by @nuwang in #21213
Fix direct tool execution not using the latest version by @jmchilton in #21240
Fix proxy url validation for non-printable characters by @davelopez in #21280
Swap to NPM trusted publishing for prebuilt client by @dannon in #21290
Enhancements
Use job cache also for implicit conversions by @mvdbeek in #21021
Add LAS and LAZ file format by @bgruening in #21049
New datatype addition: gam for vg toolkit by @SaimMomin12 in #21096
Harden proxy redirect validation by @davelopez in #21185
Other changes
New datatype addition: beast.trees datatype by @SaimMomin12 in #21055
Add display_in_upload to LAZ and LAS by @bgruening in #21060
Backport Fix proxy endpoint encoding by @davelopez in #21184
25.0.3 (2025-09-23)
Bug fixes
Cascade newly created windows in window manager by @guerler in #20780
Remove packages/meta/requirements.txt by @nsoranzo in #20782
Ensure that workflow invocations are persisted with state by @mvdbeek in #20784
Fix password reset functionality for lowercase emails by @jdavcs in #20801
Disable Run Tool button when there are errors by @ahmedhamidawan in #20839
Drop eager argument from invocation related methods by @mvdbeek in #20863
Improve dataset collection fetch performance in the invocation view by @ahmedhamidawan in #20870
Use populated_optimized when serializing collection by @mvdbeek in #20872
Speed up ImplicitCollectionJobs.job_list by @mvdbeek in #20887
Make check for existing user in custos_authnz.py case insensitive by @cat-bro in #20893
Avoid potential race condition in replacement_for_connection by @mvdbeek in #20909
Fix collection element sorting in extended_metadata by @mvdbeek in #20928
Enhancements
Other changes
Undo accidental push by @bernt-matthias in #20854
Merge 25.0 into dev by @ahmedhamidawan in #20911
25.0.2 (2025-08-13)
Bug fixes
Remove num_unique_values tiff metadata element by @mvdbeek in #20464
Bump up python for for pulsar package tests by @mvdbeek in #20521
Prevent DCE collections from being renamed by @ahmedhamidawan in #20534
Use venv instead of virtualenv in package make setup-venv by @natefoo in #20536
Move definition of DatasetCollectionDescriptionT before its use by @nsoranzo in #20539
Fix restricting user defined tool input datasets extensions by @mvdbeek in #20545
Fix description and metadata of some packages by @nsoranzo in #20546
Fix activity bar reordering persistence by @dannon in #20550
Fix PDF preview functionality in dataset view by @dannon in #20552
Propagate cached job output replacement to copies of outputs by @mvdbeek in #20553
Fix workflow invocation report pdf generate by @itisAliRH in #20558
Fix Storage Dashboard Link to Dataset Details by @itisAliRH in #20565
Upgrade requests-unixsocket for requests compatibility by @natefoo in #20566
Don’t assume cwd = job directory when running prepare dirs by @natefoo in #20571
Don’t fail volume mount construction for tools without tool directory by @mvdbeek in #20593
Prevent importing workflows with invalid step UUID by @davelopez in #20596
Fix workflow loading error handling by @davelopez in #20597
Constraint conditional redis version to allow only minor updates by @davelopez in #20603
fix Admin job limit query by @martenson in #20626
Ignore webob http exceptions for logging purposes by @mvdbeek in #20630
Fix bug: tool output file may be overwritten by Runner’s multi work t… by @jianzuoyi in #20639
Fix IntersectionObserver updates when replacing items by @davelopez in #20646
Fix optional unspecified input to conditional step by @mvdbeek in #20647
Avoid postgres truncation of aliases and labels by @mvdbeek in #20649
Fix deferred datasets in multiple dataset parameters. by @jmchilton in #20650
Fix empty default Optionals for tool_shed_repositories API. by @jmchilton in #20656
Remove content from packages/meta/requirements.txt by @nsoranzo in #20662
Add num_unique_values tiff metadata element, fixed by @kostrykin in #20669
Fix invocation header by @qchiujunhao in #20676
Fix Invenio file downloads for published records with draft by @davelopez in #20685
Input linter: add missing attribute to sort_by by @bernt-matthias in #20693
Fix dataset serializers and response models by @arash77 in #20694
Add username filter to published pages grid by @ahmedhamidawan in #20703
Fix parameter models for optional color params. by @jmchilton in #20705
Prevent negative offset in historyStore handleTotalCountChange by @davelopez in #20708
Fix test_base_image_for_targets mulled test to use mzmine by @nsoranzo in #20713
DatasetView Header - fixes text wrapping issues on small screens by @dannon in #20721
Fix maximum workflow invocation duration test by @mvdbeek in #20729
Remove base_dir from zip in make_fast_zipfile by @davelopez in #20739
fix config for nginx in docs by @martenson in #20757
Enhancements
add fasta.bz2 as auto_compressed type by @bernt-matthias in #20496
Add redis conditional dependency by @davelopez in #20502
Clarify how to separate job and workflow scheduling by @mvdbeek in #20625
Other changes
Require user for visualizations create endpoint by @mvdbeek in #20629
Merge 24.2 into 25.0 by @ahmedhamidawan in #20681
25.0.1 (2025-06-20)
Bug fixes
Fix single data element identifier to be a regular string by @mvdbeek in #20438
Relax validation of XML test assertion parsing by @mvdbeek in #20511
Add id-token: write for npm publishing by @mvdbeek in #20519
Do not expose user info to non authenticated users by @bernt-matthias in #20524
names of package extras cannot contain underscores by @mr-c in #20525
Pin isa-rwval 0.10.11, drop conditional import handling by @natefoo in #20527
Fix import of galaxy.tool_util.cwl module by @nsoranzo in #20529
Fix galaxy-config script, move install to galaxy-dependencies in app package by @natefoo in #20531
Enhancements
Other changes
Merge Release 25.0 into the master branch by @ahmedhamidawan in #20514
Fixes for static handling and the web_client package by @natefoo in #20516
Fix link in user release notes by @bgruening in #20518
25.0.0 (2025-06-18)
Bug fixes
Stabilize HistoryView.test.js by @jmchilton in #19165
Cleanup Jest Test Output (part 2) by @jmchilton in #19178
Fix Pesky warning with PersistentTaskProgressMonitorAlert.test.ts by @ElectronicBlueberry in #19180
Cleanup Jest Test Output (part 3) by @jmchilton in #19185
Cleanup Jest Test Output (part 4) by @jmchilton in #19186
Bump tornado from 6.4.1 to 6.4.2 in /lib/galaxy/dependencies by @dependabot[bot] in #19189
Don’t calculate dataset hash for datasets in non-OK state by @nsoranzo in #19191
Cleanup test output console for tool panel tests. by @jmchilton in #19210
Update Vizarr package version to 0.1.6 by @davelopez in #19228
Bump python-multipart from 0.0.17 to 0.0.18 in /lib/galaxy/dependencies by @dependabot[bot] in #19233
Use resource_path() to access datatypes_conf.xml.sample as a package resource by @nsoranzo in #19331
Require importlib-resources also for Python 3.9-3.11 by @nsoranzo in #19358
Bump jinja2 from 3.1.4 to 3.1.5 in /lib/galaxy/dependencies by @dependabot[bot] in #19369
Better handling of public pages and workflows authored by deleted users by @jdavcs in #19394
Use id entity attribute when setting exampleOfWork property by @nsoranzo in #19396
Display email activation help only if user activation is enabled by @jdavcs in #19402
Avoid using custos refresh tokens which are expired by @martenson in #19411
Fix wrong id in test_combined_mapping_and_subcollection_mapping by @mvdbeek in #19481
Fix preferred object store id reactivity by @ElectronicBlueberry in #19491
Fix wrong URI written to ExportObjectResultMetadata when exporting histories to eLabFTW by @kysrpex in #19541
Fix test_mulled_build.py::test_mulled_build_files_cli with use_mamba=True by @kysrpex in #19545
Fix package test errors: Ignore mypy errors caused by social-auth-core 4.5.5 by @jdavcs in #19620
Update eLabFTW file source template docs by @kysrpex in #19632
Fix more vue tsc indicated type issues by @jmchilton in #19650
Yet More Vue Typing Error Fixes by @jmchilton in #19680
Fix incorrect type in tool_util.deps and fix package structure. by @jmchilton in #19702
Add linter argument to linter report function calls by @bernt-matthias in #19708
Refactor tool panel handling, resolve transiently failing jest test by @guerler in #19733
Jest Cleanup (Part 5) by @jmchilton in #19743
Use fissix also when python3-lib2to3 is not installed by @nsoranzo in #19749
Fix setting env and tags on resubmission by @bernt-matthias in #19753
Revise consistently failing edam tool panel view test. by @jmchilton in #19762
Add missing tool test file by @jmchilton in #19763
Bump axios from 1.7.4 to 1.8.2 in /client by @dependabot[bot] in #19773
Fix wording of API doc string by @bernt-matthias in #19776
Add better WorkflowSummary type by @ahmedhamidawan in #19779
Fix workflow run graph non input steps not appearing bug by @ahmedhamidawan in #19781
Update webdav user file source template help text by @sanjaysrikakulam in #19784
HelpText improvements (content, sizing) and WorkflowInvocationHeader tweaks. by @dannon in #19792
Remove unused (define* - compiler macro) imports from TextEditor.vue by @dannon in #19793
Fix Selenium workflow tests not updating param type properly. by @jmchilton in #19810
Fix Galaxy ignoring job object_store_id for quota check by @bernt-matthias in #19854
Cleanup circular dependencies around utils.ts. by @jmchilton in #19857
Remove circular dependency around user store. by @jmchilton in #19859
Move some store types out into own file to reduce circular dependencies. by @jmchilton in #19860
Fix most new vue typescript errors discovered in #19851 by @jmchilton in #19862
Create rucio.cfg from inside Rucio objectstore by @SergeyYakubov in #19863
Fix broken optimisation introduced in #19852 by @nsoranzo in #19871
Fix various mypy issues around mapped attributes by @mvdbeek in #19883
More fixes to FormData drag and drop and typing by @ahmedhamidawan in #19900
Use FA Component (w/svg) instead of span+font in RunWorkflow header by @dannon in #19901
Change wording in the google drive user file source template by @sanjaysrikakulam in #19927
Move FormBoolean back to FormElement field in workflow run form by @ahmedhamidawan in #19938
Fix adding tags popup closing logic on focus out by @itisAliRH in #19950
Use lower case extension for setting datatype in data discovery by @bernt-matthias in #19954
Fix ownership check in history contents update route by @mvdbeek in #19969
Remove hgv_sift from tool_conf.xml.sample by @natefoo in #19972
Unwind more client dependencies at top of stack. by @jmchilton in #19983
Fix keyedCache never allowing multiple fetches by @ahmedhamidawan in #20020
Fix linting with markdown in tool help by @bgruening in #20058
Update breadcrumb item ‘to’ type for better routing support by @itisAliRH in #20065
Always render Outputs tab in invocation view by @ahmedhamidawan in #20073
Remove collapse invocations panel on mouseleave feature by @ahmedhamidawan in #20074
Bump http-proxy-middleware from 2.0.7 to 2.0.9 in /client by @dependabot[bot] in #20086
Fix test_workflow_run export selenium by @ahmedhamidawan in #20089
Add hid to selection field in visualization creation form by @guerler in #20108
Remove only the Docker images specific for the test by @nsoranzo in #20109
Fixes for GButtons with disabled state by @ahmedhamidawan in #20121
Allow deferred and ok state datasets for vis by @guerler in #20143
Fix certain cases of collection parameter handling during workflow execution. by @jmchilton in #20152
Use backports.zoneinfo in job_metrics package under Python <3.9 by @nsoranzo in #20178
Update tabular_csv.py to use less memory in tsv->csv conversion by @cat-bro in #20187
Corrects header levels in Visualization Help Markdown by @guerler in #20199
Move UnprivilegedToolResponse into api by @mvdbeek in #20207
Fix NFDI auth by @bgruening in #20217
Fix next milestone by @martenson in #20219
Replace Bootstrap Popover with Popper wrapper by @guerler in #20246
Fix tool-provided metadata for CONVERTER_tar_to_directory by @mr-c in #20260
Remove duplicated job id in job success view by @ahmedhamidawan in #20289
Skip multiple pasted URLs when checking for remote Zip by @davelopez in #20300
Increase proxy API robustness by validating URL before use by @davelopez in #20311
Rerun workflows for the correct version/instance by @ahmedhamidawan in #20313
Avoid displaying dataset tab view in window manager by @guerler in #20317
Fix workflow bookmark filtering by @davelopez in #20325
Add test for workflow instance download fix by @ahmedhamidawan in #20326
Add basic validation to workflow creator attribute by @jdavcs in #20328
Fix broken admin navigation option and add missing menu items by @dannon in #20333
Error on duplicate labels by @ElectronicBlueberry in #20335
Small UI fixes for ag-grid based rule grid. by @jmchilton in #20358
Fix selection issue when adding tags to workflows in bulk by @davelopez in #20362
Remove redundant badge when creating collection from upload by @ahmedhamidawan in #20367
Make invocation errors more compact by @ahmedhamidawan in #20369
Generate a tenant-unique UID for tapis. by @dannon in #20370
Use router to route to creating a new file source by @ahmedhamidawan in #20374
Fix radio button options in CopyModal by @davelopez in #20378
Fix conda_link to use platform.machine() for architecture detection by @chrisagrams in #20381
Fix create file source button, show only at root by @davelopez in #20385
Prevent waiting for history item state to be ok in uploader by @ahmedhamidawan in #20397
Add job config variable for singularity –contain by @bernt-matthias in #20400
Fix form select input sorting by @davelopez in #20401
Bug fix: allow any collection type in FormCollectionType. by @jmchilton in #20403
Fixes for the admin jobs interface by @martenson in #20405
Fix $app attribute access in cheetah templates by @mvdbeek in #20414
Fix job rerun with tool version change by @mvdbeek in #20417
Fix workflow logo URL not being persisted. by @jmchilton in #20428
Fix css alignment styling of login page by @ahmedhamidawan in #20429
Add user-facing explanation for legacy workflow run form usage by @ahmedhamidawan in #20431
Upgrade tensorflow conditional dependency version to 2.15.1 by @cat-bro in #20434
Fix copying of job metrics for cached jobs by @mvdbeek in #20436
Dataset Display and Preferred Viz fixes by @dannon in #20439
Wrap Tool and Workflow run headers properly by @ahmedhamidawan in #20440
Fix inconsistent styling in List Collection Builder selector by @ahmedhamidawan in #20442
Fix add button is enabled when empty tag list by @davelopez in #20443
Set GALAXY_CONFIG_FILE env var if starting handler with -c by @mvdbeek in #20449
Fix pagination state in FilesDialog by @davelopez in #20452
Data Libraries - persist number of entries displayed in folders by @dannon in #20455
Fix multiple remote file upload to collection creator by @ahmedhamidawan in #20456
Bug fix: paired_or_unpaired also endswith paired. by @jmchilton in #20458
Fix bug with handling compressed file names while auto-pairing. by @jmchilton in #20459
Fix dataset error button not using router by @ahmedhamidawan in #20472
Don’t fit workflow if it doesn’t have steps by @mvdbeek in #20480
Remove rename modal from List Collection Creator by @ahmedhamidawan in #20487
Use DatasetAsImage component for DatasetView image display by @dannon in #20488
Allow workflow description to show full text by @davelopez in #20500
Enhancements
Dynamic options: add data table filter by @bernt-matthias in #12941
Run the tool working dir backup/restore on Pulsar by @natefoo in #16696
Strip galaxy filename annotation on upload by @GomeChas in #18561
Isolate singularity containers more thoroughly for better reproducibility. by @rhpvorderman in #18628
Upgrade bundled/requested node version to 22.15.0 by @dannon in #18710
Workflow Editor Activity Bar by @ElectronicBlueberry in #18729
Add author and tools details in RO-Crate by @Marie59 in #18820
Extend image metadata by @kostrykin in #18951
Implement tool markdown reports. by @jmchilton in #19054
Avoid persisting credentials on checkout step of the Github actions by @arash77 in #19089
Let file sources choose a path for uploaded files by @kysrpex in #19154
Move heatmap visualization to new script endpoint by @guerler in #19176
Calculate hash for new non-deferred datasets when finishing a job by @nsoranzo in #19181
Update Python dependencies by @galaxybot in #19190
Move phylocanvas to script entry point by @guerler in #19193
Drop thumbs up reaction as pull request approval method by @nsoranzo in #19202
Update visualizations to latest charts package by @guerler in #19213
Explicitly add cwl-utils to dependencies by @nsoranzo in #19257
Refactor for better reuse of workflow parameter type constants by @nsoranzo in #19260
Workflow Run Form Enhancements by @ahmedhamidawan in #19294
Minor drag style adjustment for activities by @guerler in #19299
Extract and typescript-ify datatype selection in wfeditor. by @jmchilton in #19304
Migrate WF Collection Input Form Definition to Client Side by @jmchilton in #19313
eLabFTW integration via Galaxy file source by @kysrpex in #19319
Add workflow selection and bulk actions by @itisAliRH in #19336
Use popper wrapper for help text popover by @guerler in #19340
Rework some form components for reuse. by @jmchilton in #19347
Hide outdated visualizations from visualizations activity panel by @guerler in #19353
Update Python dependencies by @galaxybot in #19366
Add Dataverse RDM repository integration by @KaiOnGitHub in #19367
Type annotation fixes for mypy 1.14.0 by @nsoranzo in #19372
Make conditional discriminators literals instead of generic string/bool by @mvdbeek in #19374
Empower Users to Build More Kinds of Collections, More Intelligently by @jmchilton in #19377
Clarify that extra_scopes is sometimes non-optional by @martenson in #19385
Documentation around highlighting PRs for release notes. by @jmchilton in #19390
Change galaxy system user uid for K8s image by @afgane in #19403
Set safe default extraction filter for tar archives by @nsoranzo in #19406
Prevent users from reusing a banned email after account is purged by @jdavcs in #19413
Update Python dependencies by @galaxybot in #19418
Enable cloning subworkflows by @ElectronicBlueberry in #19420
Allow controlling strict channel priority in mulled-build by @bernt-matthias in #19425
Add IGB display support for CRAM files by @paige-kulzer in #19428
Document $__user_name__ by @bernt-matthias in #19433
Handles S3 listing errors by @itisAliRH in #19446
Improve asynchronous tasks error handling and reporting by @davelopez in #19448
Reset invocation export wizard after completion by @davelopez in #19449
Workflow Editor Auto Zoom by @ElectronicBlueberry in #19451
Update main citation to 2024 community paper by @nsoranzo in #19453
Add test that verifies workflow source_metadata is preserved on landing claim by @mvdbeek in #19454
Update Python dependencies by @galaxybot in #19464
Add eLabFTW file source from file source templates by @kysrpex in #19493
Update Python dependencies by @galaxybot in #19510
Remote File Sources and Storage Locations redesign by @itisAliRH in #19521
Support setting and displaying timezone with the core metrics plugin by @natefoo in #19527
Allow to send notifications when Admins cancel jobs by @davelopez in #19547
Add config options for tool dependency installs by @afgane in #19565
Update Python dependencies by @galaxybot in #19567
Remove tags used by @ElectronicBlueberry in #19576
Support setting masthead height in a theme by @ksuderman in #19581
Expand workflow metadata for readme. by @jmchilton in #19591
Add vue-tsc baseline comparison to client-lint workflow by @dannon in #19593
Add failed jobs working directory cleanup as a celery periodic task by @sanjaysrikakulam in #19594
Add InvenioRDM file source template by @davelopez in #19619
Use discriminated unions in object stores and file source template configs by @davelopez in #19621
Use correct plugin_kind in user file sources by @davelopez in #19622
Update Python dependencies by @galaxybot in #19623
Add Zenodo file source template by @davelopez in #19638
Workflow landing request - collapse activity bar by default. by @dannon in #19652
Enhance ListHeader Component for Reusability by @itisAliRH in #19655
Add Breadcrumb Heading Component by @itisAliRH in #19656
Mention default values for truevalue and falsevalue by @pvanheus in #19657
Update test_create_dataset_in_subfolder to check for the dataset presence by @davelopez in #19660
Relax job status check in test_delete_user_cancel_all_jobs by @davelopez in #19661
Refactor dependencies for tool output actions. by @jmchilton in #19662
More Vue Typescript Fixes by @jmchilton in #19663
Click to edit history name in HistoryPanel by @ahmedhamidawan in #19665
Generate correct types for Dataset source transformations on backend. by @jmchilton in #19666
Remove unused(?) data_dialog form element type. by @jmchilton in #19669
Add webdavclient3 to conditional-requirements.txt by @bgruening in #19671
Update Python dependencies by @galaxybot in #19682
Define simple models for job messages. by @jmchilton in #19688
Data-source tool for DICED database (https://diced.lerner.ccf.org/) added. by @jaidevjoshi83 in #19689
Add forgotten linter test by @bernt-matthias in #19690
Fix MarkdownDialog types by @davelopez in #19703
Move RequiredAppT back into galaxy packages. by @jmchilton in #19704
Use model classes from galaxy.model instead of app.model object - Part 1 by @nsoranzo in #19706
Improved simplicity and isolation in transiently failing test. by @jmchilton in #19709
Speedup mulled build test by @bernt-matthias in #19712
Update TypeScript version to 5.7.3 by @davelopez in #19713
Augments popper wrapper, add click and escape handler by @guerler in #19717
Move vega wrapper to shared common directory and add error handler by @guerler in #19718
Move Markdown components to subdirectory for modularity by @guerler in #19719
Rucio templates by @SergeyYakubov in #19720
Preserve workflow labels in final invocation reports by @guerler in #19721
ToolShed 2.1 - Various bugfixes and enhancements. by @jmchilton in #19722
Use model classes from galaxy.model instead of app.model object - Part 2 by @nsoranzo in #19726
Update Python dependencies by @galaxybot in #19727
Add a script to reorganize tool data based on the new layout for genomic Data Managers by @natefoo in #19728
Fix Tours and add tooltips to history items by @guerler in #19734
Show workflow help (and readme?) in run form by @ahmedhamidawan in #19736
Enhance breadcrumb navigation UX in small screen sizes by @itisAliRH in #19737
ToolShed2 - Add more context when navigating between tools an repositories. by @jmchilton in #19738
Improvements to package decomposition. by @jmchilton in #19759
Add cell-based markdown editor for pages by @guerler in #19769
Rename tool “Citations” to “References” by @nsoranzo in #19770
Update Python dependencies by @galaxybot in #19772
Add visualization framework interface to cell-based markdown editor by @guerler in #19775
Allow overriding datatypes for planemo lint by @selten in #19780
Introduce reusable GCard component for unified card layout by @itisAliRH in #19785
Add history sharing and accessibility management view by @ahmedhamidawan in #19786
Add bigbed to bed converter and tests by @d-callan in #19787
xsd: use CollectionType for collections in tests by @bernt-matthias in #19802
Update Python dependencies by @galaxybot in #19816
Workflow Run Form Enhancements follow up by @ahmedhamidawan in #19825
More user feedback in FormRulesEdit (for Apply Rules tool) by @jmchilton in #19827
Use direct icon references in FormSelectMany.vue. by @jmchilton in #19829
Populate image metadata without allocating memory for the entire image content by @kostrykin in #19830
Syntactic sugar to ease TPV configuration. by @jmchilton in #19834
Improve markdown editor modularity and structure by @guerler in #19835
Add mandatory RO-Crate metadata when exporting by @elichad in #19846
Enable lazy loading for ace-builds by @ElectronicBlueberry in #19847
Add basic support for icons in tools by @davelopez in #19850
Improve type annotations of ModelPersistenceContext and derived classes by @nsoranzo in #19852
Migrate from Prism to Monaco for ToolSource display. by @dannon in #19861
Update Python dependencies by @galaxybot in #19874
Make preferences drop down available in single user deployments by @ksuderman in #19888
Clarify is_active method usage for Python Social Auth in Galaxy by @dannon in #19899
Improve docs for output filters by @bernt-matthias in #19904
Various styling improvements to Workflow Run and Invocation views by @ahmedhamidawan in #19905
Overhaul workflow runtime settings display. by @dannon in #19906
Allow embedding vitessce visualizations by @mvdbeek in #19909
Replace backend-based page creation controller endpoint by @guerler in #19914
Migrate Page editing controller endpoint to API by @guerler in #19923
Update Python dependencies by @galaxybot in #19929
Show pre-populated landing data values in workflow run form by @ahmedhamidawan in #19935
First steps of bootstrap replacement by @ElectronicBlueberry in #19946
Decrease sentry_sdk.errors log level to INFO by @natefoo in #19951
Allow PathLike parameters in make_fast_zipfile() by @nsoranzo in #19955
Add link to view history on dataset info page by @natefoo in #19956
Allow resizing Visualizations in Markdown editor by @guerler in #19958
Add share button for invocations by @ahmedhamidawan in #19959
Add type hints around collection copying and job things by @mvdbeek in #19961
Job cache allow different names when possible by @mvdbeek in #19962
Button replacement batch 1 by @ElectronicBlueberry in #19963
Update Python dependencies by @galaxybot in #19964
Adds a trimInputs prop to FormGeneric to trim string values on submit. by @dannon in #19971
Add Katex Equation rendering plugin to Markdown Editor by @guerler in #19988
Allow different AI providers (as long as they are openai compatible) by @uwwint in #19989
Button replacement batch 2 by @ElectronicBlueberry in #19990
Improve type annotation of tool parameter wrapping by @nsoranzo in #19991
Selenium test cases for running workflow from form upload. by @jmchilton in #19997
Update Python dependencies by @galaxybot in #19998
Restore Visualization insertion options in Reports Editor by @guerler in #20000
Implement dataset collection support in workflow landing requests by @mvdbeek in #20004
Enable warn_redundant_casts mypy option and drop redundant casts by @nsoranzo in #20008
Merge Inputs/Parameters and Outputs/Collections Tabs by @ahmedhamidawan in #20019
Show workflow README in split view next to the form inputs by @ahmedhamidawan in #20026
Move README to center panel in workflow editor by @ahmedhamidawan in #20029
Add help text popovers for workflow runtime settings by @ahmedhamidawan in #20031
Add rerun option for workflows by @ahmedhamidawan in #20032
Add support for Markdown help text in visualizations by @guerler in #20043
Add sample datasets for visualizations by @guerler in #20046
Add ZIP explorer to import individual files from local or remote ZIP archives by @davelopez in #20054
Add docx datatype by @bgruening in #20055
Add markdown datatype by @bgruening in #20056
Add flac audio format by @bgruening in #20057
Client refactorings ahead of #19377. by @jmchilton in #20059
Add rd datatype by @richard-burhans in #20060
GLink implementation by @ElectronicBlueberry in #20063
GCard Full Description by @itisAliRH in #20064
Enhance Storage Dashboard Selected Item UI by @itisAliRH in #20070
Add activity panel width to local storage by @ahmedhamidawan in #20072
Hide non-functional and replaced visualizations (e.g. Nora, MSA) by @guerler in #20077
Flexible mapping from collection parameter types to collection builder components. by @jmchilton in #20082
Route to creating a new file source in remote file browser modal by @ahmedhamidawan in #20084
Use visualization dropdown solely for examples by @guerler in #20094
Set node version to 22.13.0 by @davelopez in #20095
Update Python dependencies by @galaxybot in #20096
Adds Example Datasets and Help Text for Visualizations by @guerler in #20097
Enhance external login interface styling by @ahmedhamidawan in #20100
Improve type annotation of galaxy.util submodules by @nsoranzo in #20104
Add alignment.js for multiple sequence alignment rendering by @guerler in #20110
Add specific datatypes for Cytoscape and Kepler.gl by @guerler in #20117
Run integration tests on latest Ubuntu by @nsoranzo in #20118
Migrate Transition Systems Visualization by @guerler in #20125
Add logo, description and help for aequatus by @guerler in #20128
Add more metadata, esp infer_from to datatypes configuration by @bgruening in #20142
Show job ids on job success by @ahmedhamidawan in #20145
Additional type hints for toolbox.get_tool / toolbox.has_tool by @mvdbeek in #20150
Create working dir output outside of tool evaluator by @mvdbeek in #20153
Improved rule builder display for non-nested lists (most of them). by @jmchilton in #20156
Revise transiently failing data source test. by @jmchilton in #20157
Yaml parser fixes and improvements (part 1) by @mvdbeek in #20158
Add three AAI providers by @martenson in #20165
Add replacement_dataset option to collection filter tools by @simonbray in #20166
Implement file source to integrate Galaxy with RSpace by @kysrpex in #20167
G modal implementation by @ElectronicBlueberry in #20168
Bump vega from 5.30.0 to 5.32.0 in /client by @mvdbeek in #20188
Visualization-First Display functionality by @dannon in #20190
Improve type annotation of galaxy.model.dataset_collections by @nsoranzo in #20194
Have make dist in the web_client package build the client by @natefoo in #20195
Enable visualizations for anonymous user by @guerler in #20210
Display invocation inputs and outputs in workflow report by @mvdbeek in #20222
Use TUS streaming and remove redundant IndexDB temp store in Zip Explorer by @davelopez in #20226
Add more descriptions to custom tool source schema by @mvdbeek in #20266
Improve handling of very large files in Tabulator by @guerler in #20271
Improve performance of job cache query by @mvdbeek in #20319
Remove type import side-effects by @ElectronicBlueberry in #20321
Enable retrieving contents from extra file paths when request contains leading / by @mvdbeek in #20336
Release notes by @ahmedhamidawan in #20386
Update tiffviewer to latest version supporting more formats by @davelopez in #20457
Add Aladin as standard FITS viewer by @bgruening in #20465
Add molstar as default viewer for some molecule formats by @bgruening in #20467
Add /api/datasets/{dataset_id}/extra_files/raw/{filename:path} by @mvdbeek in #20468
Other changes
Merge 24.2 into dev. by @jmchilton in #19273
Bump @babel/runtime-corejs3 from 7.23.2 to 7.26.10 in /client by @dependabot[bot] in #19788
Rebuild API schema for latest dev. by @jmchilton in #19789
Fix import and update_page type signature by @mvdbeek in #19932
Merge 24.2 into dev by @ahmedhamidawan in #19933
Fix copying job output from discovered outputs by @mvdbeek in #19999
Add env var to skip CircularDependencyPlugin in development mode by @dannon in #20038
Bump h11 from 0.14.0 to 0.16.0 in /lib/galaxy/dependencies by @dependabot[bot] in #20088
Fix formatting in webapp and client/install.py by @dannon in #20185
Bump axios from 1.7.4 to 1.8.2 in /client by @dependabot[bot] in #20205
Bug fixes around wizard usage. by @jmchilton in #20224
Bug fix - allow file drops into PasteData widget. by @jmchilton in #20232
Only show custom tool editor in activity bar settings when user has access by @mvdbeek in #20247
Add 25.0 migration tags by @ahmedhamidawan in #20265
Update version to 25.0.rc1 by @ahmedhamidawan in #20267
Bug fix - auto-pairing step not connected to collection builder in wizard. by @jmchilton in #20345
Rename vitessce_json file_ext to vitessce.json by @mvdbeek in #20473
24.2.4 (2025-06-17)
Bug fixes
Fix #19515 - invalid citation handling changed with 24.2. by @jmchilton in #19716
Reduce default framework tool test timeout to 60 seconds by @mvdbeek in #19819
Backport #19810: Fix workflow param tests not updating param type. by @mvdbeek in #19820
Fix various job concurrency limit issues by @mvdbeek in #19824
Do not reorder options in FormSelect component when multiselect disabled by @jdavcs in #19837
Decode/encode FormDirectory paths to allow spaces (and other characters) by @ahmedhamidawan in #19841
Try to recover from recurring activation link error by @jdavcs in #19844
Add spacing between workflow author and invocation count by @ahmedhamidawan in #19849
Fix default ordering of items sorted by name by @jdavcs in #19853
Handle directories with percents directories with export_remote.xml. by @jmchilton in #19865
Fix drag and drop for dataset collection elements by @ahmedhamidawan in #19866
Don’t collect unnamed outputs twice in extended metadata mode by @mvdbeek in #19868
Lazy-load invocation step jobs as needed by @mvdbeek in #19877
Fix tabular metadata setting on pulsar with remote metadata by @mvdbeek in #19891
Drop unused alembic-utils from galaxy-data package requirements by @nsoranzo in #19896
Fix duplicate extensions for data inputs by @ahmedhamidawan in #19903
Skip implicit HDA conversions in DataToolParameter options by @davelopez in #19911
Fix duplicate entries when using drag and drop in multiple mode by @davelopez in #19913
Let pysam use extra threads available in job by @mvdbeek in #19917
Report TestCaseValidation as linter error for 24.2 and above by @bernt-matthias in #19928
Better interactive tool entry point query by @mvdbeek in #19942
Drop unnecessary job cache job subquery by @mvdbeek in #19945
Fix attempt restriction on multiple connections by @mvdbeek in #19948
Fix various parameter validation issues. by @jmchilton in #19949
Do not print OIDC access tokens to the logs by @kysrpex in #19966
Renew OIDC access tokens using valid refresh tokens by @kysrpex in #19967
Fix bug in psa-authnz redirect handling by @dannon in #19968
Add missing job state history entry for queued state by @mvdbeek in #19977
Restrict job cache to terminal jobs (and other fixes) by @mvdbeek in #19978
Do not display default labels obscuring selectable options in a vue-multiselect component by @jdavcs in #19981
Fix dynamic filter option access when building command line by @mvdbeek in #19982
Ensure job states are fetched in invocation view by @ahmedhamidawan in #20010
Renew access tokens from PSA using valid refresh tokens by @kysrpex in #20040
Fix edit permission for datasets delete button in storage dashboard overview by location by @itisAliRH in #20066
Fix mulled-search –destination quay, add index reuse by @natefoo in #20107
Skip param_value filter if ref value is runtime value by @mvdbeek in #20144
Fix DataCollectionParameterModel factory by @mvdbeek in #20164
Fix invocation failure dataset reference by @mvdbeek in #20200
Conditionally import from galaxy.config in galaxy.model.mapping if TYPE_CHECKING by @natefoo in #20209
Refactor display_as URL generation for UCSC links and fix to remove double slashes in URL by @natefoo in #20239
Fall back to name in job summary if no input label given by @mvdbeek in #20258
Fix WF Run RO-Crate logo width in Firefox by @davelopez in #20305
Skip validation of expression.json input in workflow parameter validator by @mvdbeek in #20412
Fix legacy get_metadata_file controller route by @mvdbeek in #20477
Prevent running datatype autodetect on purged datasets by @mvdbeek in #20479
Link workflow invocation outputs upon importing invocation by @mvdbeek in #20485
Make optional edam-ontology in datatypes registry optional by @natefoo in #20492
Enhancements
Point install_requires at requirements.txt file by @mvdbeek in #19864
Fix Invenio file source downloads not working with some Invenio instances by @davelopez in #19930
Update selectable object stores after adding or editing them by @davelopez in #19992
Other changes
19.9.0 (2019-11-21)
Initial import from dev branch of Galaxy during 19.09 development cycle.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file galaxy-26.0.0.tar.gz.
File metadata
- Download URL: galaxy-26.0.0.tar.gz
- Upload date:
- Size: 142.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb39117f058c611895f911184ab4e77a6ace9623f146ee910fa516fa6f0f7223
|
|
| MD5 |
86b021b8bd73ce7e596c7f3bff8f690f
|
|
| BLAKE2b-256 |
e65624227fb787c8211af3738f1ee1384249c688721c9759a742b7a1b059f4cd
|
Provenance
The following attestation bundles were made for galaxy-26.0.0.tar.gz:
Publisher:
publish_artifacts.yaml on galaxyproject/galaxy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
galaxy-26.0.0.tar.gz -
Subject digest:
eb39117f058c611895f911184ab4e77a6ace9623f146ee910fa516fa6f0f7223 - Sigstore transparency entry: 1266885921
- Sigstore integration time:
-
Permalink:
galaxyproject/galaxy@854899453b9107df24336d3b6c2cbf90ed753153 -
Branch / Tag:
refs/tags/v26.0.0 - Owner: https://github.com/galaxyproject
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_artifacts.yaml@854899453b9107df24336d3b6c2cbf90ed753153 -
Trigger Event:
release
-
Statement type:
File details
Details for the file galaxy-26.0.0-py3-none-any.whl.
File metadata
- Download URL: galaxy-26.0.0-py3-none-any.whl
- Upload date:
- Size: 49.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d6d9ebf2e65debdcf57908a0db2599f70da1d8e80ee514faf05ec0d69673c2e
|
|
| MD5 |
dc8c7700d73b245c27b7a59e0fba9504
|
|
| BLAKE2b-256 |
e1adcf330c61d5578d965d523969e6469a3a801eda6926c769bc5324f3a0094c
|
Provenance
The following attestation bundles were made for galaxy-26.0.0-py3-none-any.whl:
Publisher:
publish_artifacts.yaml on galaxyproject/galaxy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
galaxy-26.0.0-py3-none-any.whl -
Subject digest:
9d6d9ebf2e65debdcf57908a0db2599f70da1d8e80ee514faf05ec0d69673c2e - Sigstore transparency entry: 1266887089
- Sigstore integration time:
-
Permalink:
galaxyproject/galaxy@854899453b9107df24336d3b6c2cbf90ed753153 -
Branch / Tag:
refs/tags/v26.0.0 - Owner: https://github.com/galaxyproject
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish_artifacts.yaml@854899453b9107df24336d3b6c2cbf90ed753153 -
Trigger Event:
release
-
Statement type: