diff --git a/doc/source/releases/24.2.rst b/doc/source/releases/24.2.rst new file mode 100644 index 000000000000..5158d48d380b --- /dev/null +++ b/doc/source/releases/24.2.rst @@ -0,0 +1,814 @@ + +.. to_doc + +24.2 +=============================== + +.. announce_start + +Enhancements +------------------------------- + +.. major_feature + + +.. feature + +* Backport of Workflow Editor Activity Bar + (thanks to `@dannon `__). + `Pull Request 19212`_ +* Add onedata templates + (thanks to `@bwalkowi `__). + `Pull Request 18457`_ +* Add linter to check validity of output filters + (thanks to `@bernt-matthias `__). + `Pull Request 19114`_ +* FITS file table graph visualization plugin + (thanks to `@francoismg `__). + `Pull Request 19003`_ +* Experimental galactic wizard + (thanks to `@dannon `__). + `Pull Request 15860`_ +* Allow OAuth 2.0 user defined file sources (w/Dropbox integration) + (thanks to `@jmchilton `__). + `Pull Request 18272`_ +* Add job metrics per invocation + (thanks to `@mvdbeek `__). + `Pull Request 19048`_ +* Feature - stdout live reporting + (thanks to `@gecage952 `__). + `Pull Request 16975`_ +.. enhancement_tag_viz + +* Fix MSA viz, new dependency specification options + (thanks to `@dannon `__). + `Pull Request 18760`_ +* Parse stored config details to script-based visualizations + (thanks to `@guerler `__). + `Pull Request 18651`_ +* Migrate NGL viewer to npm package + (thanks to `@guerler `__). + `Pull Request 18946`_ +* Support deferred datasets in visualizations + (thanks to `@davelopez `__). + `Pull Request 19097`_ +* Openlayer update to npm package + (thanks to `@hujambo-dunia `__). + `Pull Request 19134`_ +* Replace static Cytoscape plugin with npm package + (thanks to `@itisAliRH `__). + `Pull Request 19127`_ +* Update tiff viewer to use script entry_point + (thanks to `@guerler `__). + `Pull Request 19151`_ +* Migrate Venn Diagram to Script-Tag + (thanks to `@guerler `__). + `Pull Request 19153`_ +* Remove OpenLayers legacy files and add SVG logo + (thanks to `@guerler `__). + `Pull Request 19135`_ +.. enhancement_tag_datatypes + +* Add pod5 datatype + (thanks to `@TomHarrop `__). + `Pull Request 18419`_ +* Handle compressed content in dataset preview for all sequence classes + (thanks to `@PlushZ `__). + `Pull Request 18776`_ +* Improve usability of Directory datatype + (thanks to `@wm75 `__). + `Pull Request 17614`_ +* Add some Zarr-based datatypes + (thanks to `@davelopez `__). + `Pull Request 19040`_ +* Add XML based `vtk` datatype + (thanks to `@tStehling `__). + `Pull Request 19104`_ +.. enhancement_tag_tools + +* Update GPU JupyterLab tool + (thanks to `@anuprulez `__). + `Pull Request 18220`_ +* Add Tool-Centric APIs to the Tool Shed 2.0 + (thanks to `@jmchilton `__). + `Pull Request 18524`_ +* Add BlobToolkit to the list of interactive tools + (thanks to `@Delphine-L `__). + `Pull Request 18630`_ +* Remove some unused dynamic drill down options + (thanks to `@jmchilton `__). + `Pull Request 18892`_ +* Add filter null collection operation tool + (thanks to `@mvdbeek `__). + `Pull Request 18928`_ +* Jupyter Interactive Tool 1.0.1/24.07 + (thanks to `@natefoo `__). + `Pull Request 18861`_ +* Add Interactive Tool Ilastik + (thanks to `@lldelisle `__). + `Pull Request 16837`_ +.. enhancement_tag_workflows + +* Fix usability of workflow best practice attribute checking. + (thanks to `@jmchilton `__). + `Pull Request 19230`_ +* Workflow Inputs Activity + (thanks to `@ElectronicBlueberry `__). + `Pull Request 19252`_ +* Fix default value handling for parameters connected to required parameters + (thanks to `@mvdbeek `__). + `Pull Request 19219`_ +* Allow connecting text param into data column parameter + (thanks to `@mvdbeek `__). + `Pull Request 18674`_ +* Allow specifying multi-select workflow parameters + (thanks to `@mvdbeek `__). + `Pull Request 18715`_ +* Allow access to invocation via shared or published history + (thanks to `@mvdbeek `__). + `Pull Request 18707`_ +* Modelling for Test Assertions + (thanks to `@jmchilton `__). + `Pull Request 18787`_ +* Implement Pydantic model for workflow test format. + (thanks to `@jmchilton `__). + `Pull Request 18884`_ +* Improvements to Planemo test format based on feedback/discussions + (thanks to `@jmchilton `__). + `Pull Request 18889`_ +* Allow CORS requests to /api/workflow_landings + (thanks to `@mvdbeek `__). + `Pull Request 18963`_ +* Workflow landing improvements + (thanks to `@mvdbeek `__). + `Pull Request 18979`_ +* Always validate hashes when provided + (thanks to `@nsoranzo `__). + `Pull Request 19110`_ +* Workflow Landing Requests + (thanks to `@jmchilton `__). + `Pull Request 18807`_ +* Implement Declarative Testing for Workflow Behaviors + (thanks to `@jmchilton `__). + `Pull Request 18542`_ +* Allow recovering a normalized version of workflow request state from API + (thanks to `@jmchilton `__). + `Pull Request 18985`_ +.. enhancement_tag_ui + +* Enable verbatimModuleSyntax, fix jest usage + (thanks to `@dannon `__). + `Pull Request 18595`_ +* Make vite tool shed client proxy configurable + (thanks to `@mvdbeek `__). + `Pull Request 18988`_ +* Upgrade `openapi-typescript` to 7.0.2 + swap to `openapi-fetch` + (thanks to `@davelopez `__). + `Pull Request 18532`_ +.. enhancement_tag_jobs + +* Record container id and type in core job metrics + (thanks to `@mvdbeek `__). + `Pull Request 18579`_ +* Add type annotations to ``JobRunnerMapper`` and related code + (thanks to `@nsoranzo `__). + `Pull Request 19115`_ +* Allow to overwrite `real_system_username` per destination + (thanks to `@bernt-matthias `__). + `Pull Request 18945`_ +.. enhancement_tag_admin + +* Remove `defaults` channel for conda usage + (thanks to `@bernt-matthias `__). + `Pull Request 18757`_ +* Allow setting a few global defaults for file source plugin types + (thanks to `@jmchilton `__). + `Pull Request 18909`_ +* Bring your own file sources: Add the WebDAV template and configuration + (thanks to `@sanjaysrikakulam `__). + `Pull Request 18598`_ +* Decouple user email from role name + (thanks to `@jdavcs `__). + `Pull Request 18966`_ +* Support high-availability setups for the interactive tools proxy + (thanks to `@kysrpex `__). + `Pull Request 18481`_ +* Minor config documentation enhancements + (thanks to `@bgruening `__). + `Pull Request 18499`_ +* Better cleanup of sharing roles on user purge + (thanks to `@jdavcs `__). + `Pull Request 19096`_ +.. enhancement + +* Activity bar add new workflow button + (thanks to `@ElectronicBlueberry `__). + `Pull Request 19281`_ +* Guide users to collection builders + (thanks to `@ahmedhamidawan `__). + `Pull Request 18857`_ +* Updates the About Page + (thanks to `@guerler `__). + `Pull Request 18461`_ +* Moves Libraries from Masthead to Activity Bar + (thanks to `@guerler `__). + `Pull Request 18468`_ +* Adds an option to restore activity bar defaults + (thanks to `@guerler `__). + `Pull Request 18469`_ +* Add errors fast api + (thanks to `@arash77 `__). + `Pull Request 18093`_ +* Add task expiration to persistent task monitor + (thanks to `@davelopez `__). + `Pull Request 18551`_ +* Improve datasets permissions API schema typing + (thanks to `@davelopez `__). + `Pull Request 18563`_ +* Group tool templating exceptions in sentry + (thanks to `@mvdbeek `__). + `Pull Request 18570`_ +* Add a new version of the production s3fs file source template with the writable configuration variable added + (thanks to `@sanjaysrikakulam `__). + `Pull Request 18575`_ +* Move history multiview item actions to top + (thanks to `@ahmedhamidawan `__). + `Pull Request 18265`_ +* Improve update user API payload schema + (thanks to `@davelopez `__). + `Pull Request 18602`_ +* Improve update history payload schema + (thanks to `@davelopez `__). + `Pull Request 18618`_ +* Rev pinned gxformat2 + (thanks to `@jmchilton `__). + `Pull Request 18624`_ +* Improve typing for archived histories API schema + (thanks to `@davelopez `__). + `Pull Request 18586`_ +* Reduce unnecessary requests when browsing tool repositories in Admin Panel + (thanks to `@davelopez `__). + `Pull Request 18632`_ +* Improve types around User in schema and client + (thanks to `@davelopez `__). + `Pull Request 18645`_ +* Rip repository_registry out of tool shed 2.0 + (thanks to `@jmchilton `__). + `Pull Request 18647`_ +* Improve accept header API schema + (thanks to `@davelopez `__). + `Pull Request 18668`_ +* Another round of parameter model improvements + (thanks to `@jmchilton `__). + `Pull Request 18673`_ +* Another round of parameter model enhancements and tool tests + (thanks to `@jmchilton `__). + `Pull Request 18678`_ +* Dynamic Models for Tool Test Validation + (thanks to `@jmchilton `__). + `Pull Request 18679`_ +* Implement tool upgrade assistant + (thanks to `@jmchilton `__). + `Pull Request 18728`_ +* Cache pip directory as part of `setup-python` action + (thanks to `@nsoranzo `__). + `Pull Request 18789`_ +* Refactor FolderTopBar to TypeScript + (thanks to `@itisAliRH `__). + `Pull Request 18488`_ +* Update Visualization FastAPI + (thanks to `@arash77 `__). + `Pull Request 18792`_ +* Add Alireza to committers group + (thanks to `@nsoranzo `__). + `Pull Request 18613`_ +* Improvements to help terms & tool help + (thanks to `@jmchilton `__). + `Pull Request 18722`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 18578`_ +* Add wizard-like export view for workflow invocations + (thanks to `@davelopez `__). + `Pull Request 18796`_ +* Improvements to parameter models for test case inputs + (thanks to `@jmchilton `__). + `Pull Request 18743`_ +* Add docs on indexing for filter column + (thanks to `@bernt-matthias `__). + `Pull Request 18844`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 18864`_ +* Add unique constraints to the email and username fields in the galaxy_user table + (thanks to `@jdavcs `__). + `Pull Request 18493`_ +* Replace History Dataset Picker in Library Folder + (thanks to `@itisAliRH `__). + `Pull Request 18518`_ +* Allow using tracks and groups in visualization xml + (thanks to `@guerler `__). + `Pull Request 18779`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 18904`_ +* Add support for arbitrarily ordered image axes in image content assertions + (thanks to `@kostrykin `__). + `Pull Request 18891`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 18943`_ +* Add BioBlend tests + (thanks to `@arash77 `__). + `Pull Request 18975`_ +* Optimize to_history_dataset_association in create_datasets_from_library_folder + (thanks to `@arash77 `__). + `Pull Request 18970`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 18982`_ +* Add workflow to update PR title based on target branch version + (thanks to `@arash77 `__). + `Pull Request 18835`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 19031`_ +* Enable extra user preferences for remotely authorized users + (thanks to `@maartenschermer `__). + `Pull Request 18887`_ +* UI Improvements for Tool Shed 2.0 + (thanks to `@jmchilton `__). + `Pull Request 19041`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 19062`_ +* Annotate ``DatasetAssociationManager`` as generic type + (thanks to `@nsoranzo `__). + `Pull Request 19063`_ +* Better logging around tool loading + (thanks to `@jmchilton `__). + `Pull Request 19029`_ +* Add `galaxy-upload` link to `UploadModal` + (thanks to `@ahmedhamidawan `__). + `Pull Request 19055`_ +* Do not skip CI tests on missing tools + (thanks to `@jmchilton `__). + `Pull Request 19002`_ +* Add a filter for `labels` (tags) in Tool Search + (thanks to `@ahmedhamidawan `__). + `Pull Request 19076`_ +* Replace poetry with uv + (thanks to `@nsoranzo `__). + `Pull Request 19075`_ +* Add Python 3.13 support + (thanks to `@nsoranzo `__). + `Pull Request 18449`_ +* Allow deferred datasets to behave as URIs + (thanks to `@davelopez `__). + `Pull Request 19077`_ +* uv: Do not recalculate dependencies when exporting + (thanks to `@nsoranzo `__). + `Pull Request 19099`_ +* Test hash validation also for upload by path + (thanks to `@nsoranzo `__). + `Pull Request 19109`_ +* Integrate Tool Parameter Modeling into Linting (for Planemo) + (thanks to `@jmchilton `__). + `Pull Request 19073`_ +* Better search stuff in Tool Shed 2.0 + (thanks to `@jmchilton `__). + `Pull Request 19047`_ +* Enable specifying dataset hash in test jobs + (thanks to `@mvdbeek `__). + `Pull Request 19113`_ +* Access public history in job cache / job search + (thanks to `@mvdbeek `__). + `Pull Request 19108`_ +* Update Python dependencies + (thanks to `@galaxybot `__). + `Pull Request 19123`_ +* Also use miniforge docker for container building + (thanks to `@bernt-matthias `__). + `Pull Request 19128`_ +* Silence the quota manager for updates + (thanks to `@bernt-matthias `__). + `Pull Request 19046`_ +* Enhance relabel_from_file to work with any column pair in mapping file + (thanks to `@wm75 `__). + `Pull Request 19022`_ +* Irods ssl connection + (thanks to `@pauldg `__). + `Pull Request 19014`_ +* Update Japanese locale.js + (thanks to `@manabuishii `__). + `Pull Request 19101`_ +* Update vizarr version to 0.1.5 + (thanks to `@guerler `__). + `Pull Request 19142`_ +* Fix word wrapping in invocation panel list items + (thanks to `@ahmedhamidawan `__). + `Pull Request 19141`_ +* Add Workflow Title and Annotation sections + (thanks to `@hujambo-dunia `__). + `Pull Request 18762`_ +* Assert that `data_column` parameters have a valid `data_ref` + (thanks to `@bernt-matthias `__). + `Pull Request 18949`_ +* Switch update annotate image to new script entry_point + (thanks to `@guerler `__). + `Pull Request 19150`_ +* Workflow license and creator edit keyboard access + (thanks to `@itisAliRH `__). + `Pull Request 18936`_ +* More data access tests, some refactoring and cleanup + (thanks to `@jdavcs `__). + `Pull Request 18312`_ +* Add hint to the tool schema about runtime conditional changes + (thanks to `@martenson `__). + `Pull Request 18996`_ +* Undo stack UI + (thanks to `@ElectronicBlueberry `__). + `Pull Request 18548`_ +* Run installed Galaxy with no config and a simplified entry point + (thanks to `@natefoo `__). + `Pull Request 19050`_ +* A variety of improvements around tool parameter modeling (second try) + (thanks to `@jmchilton `__). + `Pull Request 19027`_ +* Parameter Model Improvements + (thanks to `@jmchilton `__). + `Pull Request 18641`_ +* Masthead Revision + (thanks to `@guerler `__). + `Pull Request 17927`_ +* Workflow Invocation view improvements + (thanks to `@ahmedhamidawan `__). + `Pull Request 18615`_ +* Add linters for datatypes + (thanks to `@bernt-matthias `__). + `Pull Request 17600`_ +.. small_enhancement + +* Update versions of GitHub actions + (thanks to `@nsoranzo `__). + `Pull Request 18197`_ +* Update openapi-typescript dependency to version 6.7.6 + (thanks to `@davelopez `__). + `Pull Request 18519`_ +* Mixed enhancements from CWL branch + (thanks to `@nsoranzo `__). + `Pull Request 18539`_ +* Fix some Toolshed 2.0 development paper-cuts + (thanks to `@davelopez `__). + `Pull Request 18538`_ +* Improvements to Tool Test Parsing + (thanks to `@jmchilton `__). + `Pull Request 18560`_ +* Drop unused datasets controller methods + (thanks to `@mvdbeek `__). + `Pull Request 18568`_ +* Consistent type imports, fixes and linting + (thanks to `@dannon `__). + `Pull Request 18589`_ +* Tighten user notification API response types + (thanks to `@davelopez `__). + `Pull Request 18599`_ +* More tool test typing + (thanks to `@jmchilton `__). + `Pull Request 18590`_ +* Remove unused functions in dataset managers + (thanks to `@jmchilton `__). + `Pull Request 18631`_ +* Better Typing for Tool Execution Plumbing + (thanks to `@jmchilton `__). + `Pull Request 18626`_ +* De-couple XML from tool interface for test collections + (thanks to `@jmchilton `__). + `Pull Request 18676`_ +* Update ExportToRemoteModal.vue to use TypeScript + (thanks to `@davelopez `__). + `Pull Request 18706`_ +* More typing, docs, and decomposition around tool execution + (thanks to `@jmchilton `__). + `Pull Request 18758`_ +* Migrate Visualizations API to FastAPI + (thanks to `@arash77 `__). + `Pull Request 18721`_ +* Refactor ``LibraryDatasetsManager`` and fix type annotation issue + (thanks to `@nsoranzo `__). + `Pull Request 18773`_ +* Update Mypy to 1.11.2 and fix new signature override errors + (thanks to `@nsoranzo `__). + `Pull Request 18811`_ +* Remove Build Dataset Pair option from history actions + (thanks to `@guerler `__). + `Pull Request 18740`_ +* Backend handling of setting user-role, user-group, and group-role associations + (thanks to `@jdavcs `__). + `Pull Request 18777`_ +* Refactor migration testing setup code + (thanks to `@jdavcs `__). + `Pull Request 18886`_ +* Enable ``ignore-without-code`` mypy error code + (thanks to `@nsoranzo `__). + `Pull Request 18898`_ +* Raise exception if CompressedFile used on incompatible file + (thanks to `@mvdbeek `__). + `Pull Request 18888`_ +* Type annotations and fixes + (thanks to `@nsoranzo `__). + `Pull Request 18911`_ +* Remove outdated fimo wrapper and galaxy-sequence-utils dependency + (thanks to `@nsoranzo `__). + `Pull Request 18937`_ +* Migrate Library Contents API to FastAPI + (thanks to `@arash77 `__). + `Pull Request 18838`_ +* Fix extra files path type hint + (thanks to `@davelopez `__). + `Pull Request 18958`_ +* Move TRS import into WorkflowContentManager + (thanks to `@mvdbeek `__). + `Pull Request 19070`_ +* More concise, readable tool execution testing + (thanks to `@jmchilton `__). + `Pull Request 18977`_ +* Libraries Modernisation: Directory Dataset Picker + (thanks to `@itisAliRH `__). + `Pull Request 18638`_ + + +Fixes +------------------------------- + +.. major_bug + + +.. bug_tag_viz + +* Install npm-package viz to the package prefix explicitly + (thanks to `@dannon `__). + `Pull Request 18950`_ +* Restore access to saved visualizations + (thanks to `@guerler `__). + `Pull Request 19136`_ +.. bug_tag_datatypes + +* Add gtf to auto_compressed_types + (thanks to `@mvdbeek `__). + `Pull Request 19175`_ +.. bug_tag_tools + +* Drop "Send to cloud" tool and associated cloudauthz code + (thanks to `@jdavcs `__). + `Pull Request 18196`_ +* Fix commas that shouldn't be in biotools_mappings.tsv + (thanks to `@jmchilton `__). + `Pull Request 18919`_ +.. bug_tag_workflows + +* Fix cancellation of workflow scheduling + (thanks to `@ahmedhamidawan `__). + `Pull Request 19238`_ +* Fix collection type drag and drop validation + (thanks to `@mvdbeek `__). + `Pull Request 18623`_ +.. bug_tag_ui + +* Bump requirejs from 2.3.6 to 2.3.7 in /client + (thanks to `@dependabot[bot] `__). + `Pull Request 18610`_ +* Bump axios from 1.6.2 to 1.7.4 in /client + (thanks to `@dependabot[bot] `__). + `Pull Request 18717`_ +* Bump webpack from 5.89.0 to 5.94.0 in /client + (thanks to `@dependabot[bot] `__). + `Pull Request 18768`_ +* Bump express from 4.19.2 to 4.21.0 in /client + (thanks to `@dependabot[bot] `__). + `Pull Request 18808`_ +* Bump dompurify from 3.0.6 to 3.1.3 in /client + (thanks to `@dependabot[bot] `__). + `Pull Request 18821`_ +* Bump http-proxy-middleware from 2.0.6 to 2.0.7 in /client + (thanks to `@dependabot[bot] `__). + `Pull Request 19060`_ +* Bump dompurify from 2.3.10 to 3.1.6 in /client + (thanks to `@dependabot[bot] `__). + `Pull Request 18880`_ +.. bug_tag_jobs + +* Fixes random job failures in kubernetes + (thanks to `@mapk-amazon `__). + `Pull Request 19001`_ +.. bug_tag_admin + +.. bug + +* Fix activity-bar-id handling wrt activityStore + (thanks to `@dannon `__). + `Pull Request 19316`_ +* Login redirect followup + (thanks to `@dannon `__). + `Pull Request 19251`_ +* Build collection only if populated in collection builder + (thanks to `@ahmedhamidawan `__). + `Pull Request 19250`_ +* Avoid a class of unhelpful accepted format drop downs + (thanks to `@jmchilton `__). + `Pull Request 19241`_ +* Improve the empty history message for guiding users to collections. + (thanks to `@jmchilton `__). + `Pull Request 19242`_ +* Fix PSA Redirect + (thanks to `@dannon `__). + `Pull Request 19247`_ +* release testing - UI tests for new workflow parameters + (thanks to `@jmchilton `__). + `Pull Request 19182`_ +* Return generic message for password reset email + (thanks to `@ahmedhamidawan `__). + `Pull Request 18479`_ +* Raise Message Exception when displaying binary data + (thanks to `@mvdbeek `__). + `Pull Request 18503`_ +* Handle all requests error in ``ApiBiotoolsMetadataSource._raw_get_metadata`` + (thanks to `@nsoranzo `__). + `Pull Request 18510`_ +* Follow-up on `#18212 `__ + (thanks to `@nsoranzo `__). + `Pull Request 18516`_ +* Fix "worklfow" typo here and there + (thanks to `@abretaud `__). + `Pull Request 18523`_ +* Fix MessageException handling in get_edit + (thanks to `@mvdbeek `__). + `Pull Request 18529`_ +* Fix bugs in tool shed tool API + (thanks to `@jmchilton `__). + `Pull Request 18558`_ +* Fix Archive header encoding + (thanks to `@arash77 `__). + `Pull Request 18583`_ +* Fix for not-null in 'column_list' object + (thanks to `@hujambo-dunia `__). + `Pull Request 18553`_ +* Fix API key reveals on mouse hover + (thanks to `@itisAliRH `__). + `Pull Request 18593`_ +* Fix for Numeric form field to allow Null min/max values in validation methods + (thanks to `@hujambo-dunia `__). + `Pull Request 18585`_ +* xsd: allow `change_format` and `actions` also in statically defined collection elements, and break recursion + (thanks to `@bernt-matthias `__). + `Pull Request 18605`_ +* Fixes for errors reported by mypy 1.11.0 + (thanks to `@nsoranzo `__). + `Pull Request 18608`_ +* Bug fix for invalid duplicate id in function test tools + (thanks to `@jmchilton `__). + `Pull Request 18644`_ +* Handle output parsing when tool is not available for tool-centric API + (thanks to `@jmchilton `__). + `Pull Request 18643`_ +* Restore interactive tools watcher + (thanks to `@guerler `__). + `Pull Request 18581`_ +* Strip whitespace when listifying admin users + (thanks to `@jdavcs `__). + `Pull Request 18656`_ +* Update mercurial + (thanks to `@mvdbeek `__). + `Pull Request 18686`_ +* Restore repository update in the tool shed 2.0 + (thanks to `@jmchilton `__). + `Pull Request 18655`_ +* Fix "Latest Updates" order in tool shed 2.0 + (thanks to `@jmchilton `__). + `Pull Request 16894`_ +* Replace types-pkg-resources with types-setuptools + (thanks to `@nsoranzo `__). + `Pull Request 18708`_ +* Update ruff to 0.6.1 + (thanks to `@nsoranzo `__). + `Pull Request 18716`_ +* Fix new flake8-bugbear B039 and mypy type-var errors + (thanks to `@nsoranzo `__). + `Pull Request 18755`_ +* Fixing RegisterForm.vue not appending prefix when set + (thanks to `@mcuaya1 `__). + `Pull Request 18786`_ +* Fix response if dataset requested by display application is deleted + (thanks to `@mvdbeek `__). + `Pull Request 18803`_ +* Fix alert handling in workflow label handler + (thanks to `@guerler `__). + `Pull Request 18836`_ +* Fix transiently failing selenium tooltip issues + (thanks to `@jmchilton `__). + `Pull Request 18847`_ +* Fix flaky `test/integration_selenium/test_toolbox_filters.py::TestToolboxFiltersSeleniumIntegration::test_toolbox_filters` + (thanks to `@ahmedhamidawan `__). + `Pull Request 18854`_ +* Fix migration data fixes tests + (thanks to `@jdavcs `__). + `Pull Request 18885`_ +* data_column params: offer same columns with and without use_header_names + (thanks to `@wm75 `__). + `Pull Request 18879`_ +* Allow users with 'can_modify_folder' permission to delete items in libraries + (thanks to `@npinter `__). + `Pull Request 18924`_ +* Fix `WorkflowInvocationHeader` import type and current user errors + (thanks to `@itisAliRH `__). + `Pull Request 18956`_ +* Explicitly display dataset preview in pages and workflow reports + (thanks to `@guerler `__). + `Pull Request 18968`_ +* Ignore preflight options in API schema + (thanks to `@jmchilton `__). + `Pull Request 18983`_ +* Define environment variables in ``env:`` section + (thanks to `@nsoranzo `__). + `Pull Request 18987`_ +* Fix the bioblend test failures + (thanks to `@arash77 `__). + `Pull Request 18991`_ +* Fix job directory not being cleaned up + (thanks to `@davelopez `__). + `Pull Request 18997`_ +* Fix job search statement building + (thanks to `@mvdbeek `__). + `Pull Request 19010`_ +* Fix test_stock.py unit test + (thanks to `@mvdbeek `__). + `Pull Request 19037`_ +* add data source doc to the list in index + (thanks to `@PlushZ `__). + `Pull Request 18742`_ +* Fix auto-detect metadata from Edit Dataset Attributes panel + (thanks to `@davelopez `__). + `Pull Request 19025`_ +* Fix numerous issues with tool input format "21.01" + (thanks to `@jmchilton `__). + `Pull Request 19030`_ +* Prevent purged users from logging in + (thanks to `@jdavcs `__). + `Pull Request 19094`_ +* Fixes and tests for data fetch models + (thanks to `@jmchilton `__). + `Pull Request 18834`_ +* Run ``uv lock`` under Python 3.9 + (thanks to `@nsoranzo `__). + `Pull Request 19111`_ +* Allow modes `z` and `Z` for docker volumes + (thanks to `@bernt-matthias `__). + `Pull Request 18998`_ +* Fix handling of v2 hashes + (thanks to `@bernt-matthias `__). + `Pull Request 18522`_ +* Dynamics options add library dataset + (thanks to `@gagayuan `__). + `Pull Request 18198`_ +* Add merge migration to merge 2 heads + (thanks to `@jdavcs `__). + `Pull Request 19163`_ +* Disallow /tool_runner? in robots.txt + (thanks to `@dannon `__). + `Pull Request 19020`_ +* Avoid possible negative offset in LibraryFolder + (thanks to `@martenson `__). + `Pull Request 19090`_ +* Fix backend role sharing bug + (thanks to `@jdavcs `__). + `Pull Request 18942`_ +* Update a localized word with a more appropriate one + (thanks to `@mpalmada `__). + `Pull Request 18910`_ +* Fix tag processing in library upload + (thanks to `@davelopez `__). + `Pull Request 18714`_ +* Update plausible script name in mako templates + (thanks to `@sanjaysrikakulam `__). + `Pull Request 18458`_ +* Fix issue with generating slug for sharing + (thanks to `@arash77 `__). + `Pull Request 18986`_ +* Consolidate tag validation + (thanks to `@dannon `__). + `Pull Request 19166`_ +* Move invocation view running actions and improve styling of annotation section + (thanks to `@ahmedhamidawan `__). + `Pull Request 19168`_ +* Fix mulled_hash + (thanks to `@bernt-matthias `__). + `Pull Request 19199`_ +* Add requirement/resource to schema docs + (thanks to `@bernt-matthias `__). + `Pull Request 19172`_ +* Normalize usernames to lowercase in OIDC authentication + (thanks to `@arash77 `__). + `Pull Request 19131`_ + +.. include:: 24.2_prs.rst + diff --git a/doc/source/releases/24.2_announce.rst b/doc/source/releases/24.2_announce.rst index 112bddcd20d5..243f1869d5e7 100644 --- a/doc/source/releases/24.2_announce.rst +++ b/doc/source/releases/24.2_announce.rst @@ -1,12 +1,300 @@ -:orphan: +=========================================================== +24.2 Galaxy Release (January 2025) +=========================================================== + +.. include:: _header.rst + +Highlights +=========================================================== + +Feature1 +-------- + +Feature description. + +Feature2 +-------- + +Feature description. + +Feature3 +-------- + +Feature description. + +DRAFT CONTENT +* Add wizard-like export view for workflow invocations +* Workflow Editor Activity Bar + Undo stack UI +* Masthead Revision +* Guide users to collection builders +* Workflow Invocation view improvements +* Libraries Modernisation: Directory Dataset Picker +* Improvements to help terms & tool help. +* Feature - stdout live reporting +* Allow OAuth 2.0 user defined file sources (w/Dropbox integration) + +Also check out the `24.2 user release notes <24.2_announce_user.html>`__. +Are you an admin? Check out `some admin relevant PRs `__. + +Get Galaxy =========================================================== -October 2024 Galaxy Release (v 24.2) + +The code lives at `GitHub `__ and you should have `Git `__ to obtain it. + +To get a new Galaxy repository run: + .. code-block:: shell + + $ git clone -b release_24.2 https://github.com/galaxyproject/galaxy.git + +To update an existing Galaxy repository run: + .. code-block:: shell + + $ git fetch origin && git checkout release_24.2 && git pull --ff-only origin release_24.2 + +See the `community hub `__ for additional details on source code locations. + + +Administration Notes =========================================================== +DRAFT CONTENT + +* Add job metrics per invocation +* Allow OAuth 2.0 user defined file sources (w/Dropbox integration) +* Support high-availability setups for the interactive tools proxy +* Backend handling of setting user-role, user-group, and group-role associations +* Decouple user email from role name +* Add unique constraints to the email and username fields in the galaxy_user table +* Run installed Galaxy with no config and a simplified entry point -Schedule +Developer Notes =========================================================== - * Planned Freeze Date: 2024-10-07 - * Planned Release Date: 2024-10-28 + +DRAFT CONTENT + +* Replace poetry with uv +* Improvements to help terms & tool help. +* A variety of improvements around tool parameter modeling (second try) +* Allow recovering a normalized version of workflow request state from API +* Implement Declarative Testing for Workflow Behaviors +* More concise, readable tool execution testing. +* More data access tests, some refactoring and cleanup +* Parameter Model Improvements +* Upgrade ``openapi-typescript`` to 7.0.2 + swap to ``openapi-fetch`` +* Workflow Landing Requests + +Configuration Changes +=========================================================== + + +Added +----- + +The following configuration options are new + +config/galaxy.yml.sample:galaxy +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- mapping.galaxy.mapping.file_source_listings_expiry_time +- mapping.galaxy.mapping.file_source_temp_dir +- mapping.galaxy.mapping.file_source_webdav_use_temp_files +- mapping.galaxy.mapping.interactivetoolsproxy_map +- mapping.galaxy.mapping.openai_api_key +- mapping.galaxy.mapping.openai_model +- mapping.galaxy.mapping.workflow_scheduling_separate_materialization_iteration + + +Changed +------- + +The following configuration options have been changed + +config/user_preferences_extra_conf.yml.sample +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- preferences.onedata.inputs has changed from + + :: + + {'name': 'onezone_domain', 'label': 'Domain of the Onezone service (e.g. datahub.egi.eu)', 'type': 'text', 'required': False} + {'name': 'access_token', 'label': 'Your access token, suitable for REST API access in a Oneprovider service', 'type': 'password', 'required': False} + {'name': 'disable_tls_certificate_validation', 'label': 'Allow connection to Onedata servers that do not present trusted SSL certificates. SHOULD NOT be used unless you really know what you are doing.', 'type': 'boolean', 'required': False, 'value': False} + + to + + :: + + {'name': 'onezone_domain', 'label': 'Domain of the Onezone service (e.g. datahub.egi.eu). The minimal supported Onezone version is 21.02.4.', 'type': 'text', 'required': False} + {'name': 'access_token', 'label': 'Your access token, suitable for REST API access in a Oneprovider service', 'type': 'password', 'required': False} + {'name': 'disable_tls_certificate_validation', 'label': 'Allow connection to Onedata servers that do not present trusted SSL certificates. SHOULD NOT be used unless you really know what you are doing.', 'type': 'boolean', 'required': False, 'value': False} + + + +config/file_sources_conf.yml.sample +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- has changed from + + :: + + {'type': 'dropbox', 'id': 'dropbox1', 'label': 'Dropbox files (configure access in user preferences)', 'doc': 'Your Dropbox files - configure an access token via the user preferences', 'access_token': "${user.preferences['dropbox|access_token']}"} + {'type': 'webdav', 'id': 'owncloud1', 'label': 'OwnCloud', 'doc': 'External OwnCloud files (configure access in user preferences)', 'url': "${user.preferences['owncloud|url']}", 'root': "${user.preferences['owncloud|root']}", 'login': "${user.preferences['owncloud|username']}", 'password': "${user.preferences['owncloud|password']}", 'temp_path': '/your/temp/path', 'writable': False} + {'type': 'posix', 'root': '/data/5/galaxy_import/galaxy_user_data/covid-19/data/sequences/', 'id': 'covid19-raw-sequences', 'label': 'COVID-19 FASTQ', 'doc': 'COVID-19 RAW sequences in FASTQ format'} + {'type': 'posix', 'root': '/data/db/databases/pdb/pdb/', 'id': 'pdb-gzip', 'doc': 'Protein Data Bank (PDB)', 'label': 'PDB'} + {'type': 'ftp', 'id': 'ebi-ftp', 'label': 'EBI FTP server', 'doc': 'European Bioinformatic Institute FTP server', 'host': 'ftp.ebi.ac.uk', 'user': 'anonymous', 'passwd': '', 'timeout': 10, 'port': 21} + {'type': 'ftp', 'id': 'ncbi-ftp', 'label': 'NCBI FTP server', 'doc': 'NCBI FTP server', 'host': 'ftp.ncbi.nlm.nih.gov', 'user': 'anonymous', 'passwd': '', 'timeout': 10, 'port': 21} + {'type': 'ftp', 'id': 'ensembl-ftp', 'label': 'ENSEMBL FTP server', 'doc': 'ENSEMBL FTP server', 'host': 'ftp.ensemblgenomes.org/vol1/pub/', 'user': 'anonymous', 'passwd': '', 'timeout': 10, 'port': 21} + {'type': 'ssh', 'id': 'writeable-ssh-dir', 'requires_roles': 'writeable-galaxy-role', 'writable': True, 'label': 'Push your files to me', 'doc': 'This is an example of a writeable SSH dir', 'host': 'coolhost', 'user': 'user', 'passwd': 'passwd', 'timeout': 10, 'path': '/home/cooluser/', 'config_path': '', 'port': 2222} + {'type': 's3fs', 'label': 'My MinIO storage', 'endpoint_url': 'https://minio.usegalaxy.eu', 'id': 'galaxy-minio-storage', 'doc': 'Galaxy MinIO S3 storage', 'anon': False, 'secret': 'UHAJ6asd6asdhasd', 'key': 'MCJU76agdt98GGFAROIP7'} + {'type': 's3fs', 'label': 'Genome Ark', 'id': 'genomeark', 'doc': 'Access to Genome Ark open data on AWS.', 'bucket': 'genomeark', 'anon': True} + {'type': 's3fs', 'label': '1000 Genomes', 'id': '1000genomes', 'doc': 'Access to the 1000 Genomes Project with human genetic variation, including SNPs, structural variants, and their haplotype context.', 'bucket': '1000genomes', 'anon': True} + {'type': 's3fs', 'label': 'The Cancer Genome Atlas', 'id': 'tcga-2-open', 'doc': 'Access to the Cancer Genome Atlas (TCGA)', 'bucket': 'tcga-2-open', 'anon': True} + {'type': 's3fs', 'label': 'COVID-19 Data Lake', 'id': 'covid19-lake', 'doc': 'A centralized repository of up-to-date and curated datasets on or related to the spread and characteristics of the novel corona virus (SARS-CoV-2) and its associated illness, COVID-19', 'bucket': 'covid19-lake', 'anon': True} + {'type': 's3fs', 'label': 'Encyclopedia of DNA Elements (ENCODE)', 'id': 'encode-public', 'doc': 'The Encyclopedia of DNA Elements (ENCODE) Consortium is an international collaboration of research groups funded by the National Human Genome Research Institute (NHGRI)', 'bucket': 'encode-public', 'anon': True} + {'type': 's3fs', 'label': 'Sentinel-3', 'id': 'meeo-s3-nrt', 'doc': 'European Commission’s Copernicus Earth Observation Programme. Sentinel-3 is a polar orbiting satellite that completes 14 orbits of the Earth a day.', 'bucket': 'meeo-s3/NRT/', 'anon': True} + {'type': 's3fs', 'label': 'Sentinel-5P Level 2', 'id': 'meeo-s5p-nrti', 'doc': 'Observations from the Sentinel-5 Precursor satellite of the Copernicus Earth Observation Programme. It contains a polar orbiting satellite that completes 14 orbits of the Earth a day.', 'bucket': 'meeo-s5p/RPRO/', 'anon': True} + {'type': 's3fs', 'label': 'Coupled Model Intercomparison Project 6', 'id': 'esgf-world', 'doc': 'The sixth phase of global coupled ocean-atmosphere general circulation model ensemble', 'bucket': 'esgf-world', 'anon': True} + {'type': 's3fs', 'label': 'CMIP6 GCMs downscaled using WRF', 'id': 'wrf-cmip6-noversioning', 'doc': 'High-resolution historical and future climate simulations from 1980-2100', 'bucket': 'wrf-cmip6-noversioning', 'anon': True} + {'type': 's3fs', 'label': 'NOAA Global Forecast System (GFS)', 'id': 'noaa-gfs-bdp-pds', 'doc': 'The Global Forecast System (GFS) is a weather forecast model produced by the National Centers for Environmental Prediction (NCEP).', 'bucket': 'noaa-gfs-bdp-pds', 'anon': True} + {'type': 's3fs', 'label': 'NOAA Unified Forecast System Subseasonal to Seasonal Prototype 5', 'id': 'noaa-ufs-prototype5-pds', 'doc': 'The Unified Forecast System Subseasonal to Seasonal prototype 5 (UFS S2Sp5) dataset is reforecast data from the UFS atmosphere-ocean.', 'bucket': 'noaa-ufs-prototype5-pds', 'anon': True} + {'type': 's3fs', 'label': 'Copernicus Digital Elevation Model (DEM)', 'id': 'copernicus-dem-30m', 'doc': 'The Copernicus DEM is a Digital Surface Model (DSM) which represents the surface of the Earth including buildings, infrastructure and vegetation.', 'bucket': 'copernicus-dem-30m', 'anon': True} + {'type': 'http', 'label': 'Custom http filesource', 'id': 'httpcustom', 'url_regex': '^https?://myprotectedsite.org/', 'http_headers': {'Authorization': '#import base64\nBasic ${base64.b64encode(str.encode(user.preferences[\'myprotectedsite|username\'] + ":" + user.preferences[\'myprotectedsite|password\'])).decode()}'}, 'doc': 'Only define this if you want custom control over http downloads. You should also define a stock http source (below) or only downloads from this site will be allowed.'} + {'type': 'http', 'label': 'Stock http filesource', 'id': 'httpstock', 'doc': 'Make sure to define this generic http file source if you have defined any other http file sources, or stock http download capability will be disabled.'} + {'type': 'drs', 'label': 'Custom DRS filesource', 'id': 'drscustom', 'url_regex': '^drs://mydrssite.org/', 'http_headers': {'Authorization': '#import base64\nBasic ${base64.b64encode(str.encode(user.preferences[\'mydrssite|username\'] + ":" + user.preferences[\'mydrssite|password\'])).decode()}'}, 'doc': 'Define this if you want custom control over drs downloads. You should also define a stock drs source (below) or only downloads from this drs server will be allowed.'} + {'type': 'drs', 'label': 'Stock DRS filesource', 'id': 'drsstock', 'doc': 'Make sure to define this generic drs file source if you have defined any other drs file sources, or stock drs download capability will be disabled.'} + {'type': 'inveniordm', 'id': 'invenio_sandbox', 'doc': 'This is the Sandbox instance of Invenio. It is used for testing purposes only, content is NOT preserved. DOIs created in this instance are not real and will not resolve.', 'label': 'Invenio RDM Sandbox Repository (TESTING ONLY)', 'url': 'https://inveniordm.web.cern.ch/', 'token': "${user.user_vault.read_secret('preferences/invenio_sandbox/token')}", 'public_name': "${user.preferences['invenio_sandbox|public_name']}", 'writable': True} + {'type': 'zenodo', 'id': 'zenodo', 'doc': 'Zenodo is a general-purpose open-access repository developed under the European OpenAIRE program and operated by CERN. It allows researchers to deposit data sets, research software, reports, and any other research-related digital artifacts. For each submission, a persistent digital object identifier (DOI) is minted, which makes the stored items easily citeable.', 'label': 'Zenodo', 'url': 'https://zenodo.org', 'token': "${user.user_vault.read_secret('preferences/zenodo/token')}", 'public_name': "${user.preferences['zenodo|public_name']}", 'writable': True} + {'type': 'zenodo', 'id': 'zenodo_sandbox', 'doc': 'This is the Sandbox instance of Zenodo. It is used for testing purposes only, content is NOT preserved. DOIs created in this instance are not real and will not resolve.', 'label': 'Zenodo Sandbox (TESTING ONLY)', 'url': 'https://sandbox.zenodo.org', 'token': "${user.user_vault.read_secret('preferences/zenodo_sandbox/token')}", 'public_name': "${user.preferences['zenodo_sandbox|public_name']}", 'writable': True} + {'type': 'onedata', 'id': 'onedata1', 'label': 'Onedata', 'doc': 'Your Onedata files - configure an access token via user preferences', 'accessToken': "${user.preferences['onedata|access_token']}", 'onezoneDomain': "${user.preferences['onedata|onezone_domain']}", 'disableTlsCertificateValidation': "${user.preferences['onedata|disable_tls_certificate_validation']}"} + + to + + :: + + {'type': 'dropbox', 'id': 'dropbox1', 'label': 'Dropbox files (configure access in user preferences)', 'doc': 'Your Dropbox files - configure an access token via the user preferences', 'access_token': "${user.preferences['dropbox|access_token']}"} + {'type': 'webdav', 'id': 'owncloud1', 'label': 'OwnCloud', 'doc': 'External OwnCloud files (configure access in user preferences)', 'url': "${user.preferences['owncloud|url']}", 'root': "${user.preferences['owncloud|root']}", 'login': "${user.preferences['owncloud|username']}", 'password': "${user.preferences['owncloud|password']}", 'temp_path': '/your/temp/path', 'writable': False} + {'type': 'posix', 'root': '/data/5/galaxy_import/galaxy_user_data/covid-19/data/sequences/', 'id': 'covid19-raw-sequences', 'label': 'COVID-19 FASTQ', 'doc': 'COVID-19 RAW sequences in FASTQ format'} + {'type': 'posix', 'root': '/data/db/databases/pdb/pdb/', 'id': 'pdb-gzip', 'doc': 'Protein Data Bank (PDB)', 'label': 'PDB'} + {'type': 'ftp', 'id': 'ebi-ftp', 'label': 'EBI FTP server', 'doc': 'European Bioinformatic Institute FTP server', 'host': 'ftp.ebi.ac.uk', 'user': 'anonymous', 'passwd': '', 'timeout': 10, 'port': 21} + {'type': 'ftp', 'id': 'ncbi-ftp', 'label': 'NCBI FTP server', 'doc': 'NCBI FTP server', 'host': 'ftp.ncbi.nlm.nih.gov', 'user': 'anonymous', 'passwd': '', 'timeout': 10, 'port': 21} + {'type': 'ftp', 'id': 'ensembl-ftp', 'label': 'ENSEMBL FTP server', 'doc': 'ENSEMBL FTP server', 'host': 'ftp.ensemblgenomes.org/vol1/pub/', 'user': 'anonymous', 'passwd': '', 'timeout': 10, 'port': 21} + {'type': 'ssh', 'id': 'writeable-ssh-dir', 'requires_roles': 'writeable-galaxy-role', 'writable': True, 'label': 'Push your files to me', 'doc': 'This is an example of a writeable SSH dir', 'host': 'coolhost', 'user': 'user', 'passwd': 'passwd', 'timeout': 10, 'path': '/home/cooluser/', 'config_path': '', 'port': 2222} + {'type': 's3fs', 'label': 'My MinIO storage', 'endpoint_url': 'https://minio.usegalaxy.eu', 'id': 'galaxy-minio-storage', 'doc': 'Galaxy MinIO S3 storage', 'anon': False, 'secret': 'UHAJ6asd6asdhasd', 'key': 'MCJU76agdt98GGFAROIP7'} + {'type': 's3fs', 'label': 'Genome Ark', 'id': 'genomeark', 'doc': 'Access to Genome Ark open data on AWS.', 'bucket': 'genomeark', 'anon': True} + {'type': 's3fs', 'label': '1000 Genomes', 'id': '1000genomes', 'doc': 'Access to the 1000 Genomes Project with human genetic variation, including SNPs, structural variants, and their haplotype context.', 'bucket': '1000genomes', 'anon': True} + {'type': 's3fs', 'label': 'The Cancer Genome Atlas', 'id': 'tcga-2-open', 'doc': 'Access to the Cancer Genome Atlas (TCGA)', 'bucket': 'tcga-2-open', 'anon': True} + {'type': 's3fs', 'label': 'COVID-19 Data Lake', 'id': 'covid19-lake', 'doc': 'A centralized repository of up-to-date and curated datasets on or related to the spread and characteristics of the novel corona virus (SARS-CoV-2) and its associated illness, COVID-19', 'bucket': 'covid19-lake', 'anon': True} + {'type': 's3fs', 'label': 'Encyclopedia of DNA Elements (ENCODE)', 'id': 'encode-public', 'doc': 'The Encyclopedia of DNA Elements (ENCODE) Consortium is an international collaboration of research groups funded by the National Human Genome Research Institute (NHGRI)', 'bucket': 'encode-public', 'anon': True} + {'type': 's3fs', 'label': 'Sentinel-3', 'id': 'meeo-s3-nrt', 'doc': 'European Commission’s Copernicus Earth Observation Programme. Sentinel-3 is a polar orbiting satellite that completes 14 orbits of the Earth a day.', 'bucket': 'meeo-s3/NRT/', 'anon': True} + {'type': 's3fs', 'label': 'Sentinel-5P Level 2', 'id': 'meeo-s5p-nrti', 'doc': 'Observations from the Sentinel-5 Precursor satellite of the Copernicus Earth Observation Programme. It contains a polar orbiting satellite that completes 14 orbits of the Earth a day.', 'bucket': 'meeo-s5p/RPRO/', 'anon': True} + {'type': 's3fs', 'label': 'Coupled Model Intercomparison Project 6', 'id': 'esgf-world', 'doc': 'The sixth phase of global coupled ocean-atmosphere general circulation model ensemble', 'bucket': 'esgf-world', 'anon': True} + {'type': 's3fs', 'label': 'CMIP6 GCMs downscaled using WRF', 'id': 'wrf-cmip6-noversioning', 'doc': 'High-resolution historical and future climate simulations from 1980-2100', 'bucket': 'wrf-cmip6-noversioning', 'anon': True} + {'type': 's3fs', 'label': 'NOAA Global Forecast System (GFS)', 'id': 'noaa-gfs-bdp-pds', 'doc': 'The Global Forecast System (GFS) is a weather forecast model produced by the National Centers for Environmental Prediction (NCEP).', 'bucket': 'noaa-gfs-bdp-pds', 'anon': True} + {'type': 's3fs', 'label': 'NOAA Unified Forecast System Subseasonal to Seasonal Prototype 5', 'id': 'noaa-ufs-prototype5-pds', 'doc': 'The Unified Forecast System Subseasonal to Seasonal prototype 5 (UFS S2Sp5) dataset is reforecast data from the UFS atmosphere-ocean.', 'bucket': 'noaa-ufs-prototype5-pds', 'anon': True} + {'type': 's3fs', 'label': 'Copernicus Digital Elevation Model (DEM)', 'id': 'copernicus-dem-30m', 'doc': 'The Copernicus DEM is a Digital Surface Model (DSM) which represents the surface of the Earth including buildings, infrastructure and vegetation.', 'bucket': 'copernicus-dem-30m', 'anon': True} + {'type': 'http', 'label': 'Custom http filesource', 'id': 'httpcustom', 'url_regex': '^https?://myprotectedsite.org/', 'http_headers': {'Authorization': '#import base64\nBasic ${base64.b64encode(str.encode(user.preferences[\'myprotectedsite|username\'] + ":" + user.preferences[\'myprotectedsite|password\'])).decode()}'}, 'doc': 'Only define this if you want custom control over http downloads. You should also define a stock http source (below) or only downloads from this site will be allowed.'} + {'type': 'http', 'label': 'Stock http filesource', 'id': 'httpstock', 'doc': 'Make sure to define this generic http file source if you have defined any other http file sources, or stock http download capability will be disabled.'} + {'type': 'drs', 'label': 'Custom DRS filesource', 'id': 'drscustom', 'url_regex': '^drs://mydrssite.org/', 'http_headers': {'Authorization': '#import base64\nBasic ${base64.b64encode(str.encode(user.preferences[\'mydrssite|username\'] + ":" + user.preferences[\'mydrssite|password\'])).decode()}'}, 'doc': 'Define this if you want custom control over drs downloads. You should also define a stock drs source (below) or only downloads from this drs server will be allowed.'} + {'type': 'drs', 'label': 'Stock DRS filesource', 'id': 'drsstock', 'doc': 'Make sure to define this generic drs file source if you have defined any other drs file sources, or stock drs download capability will be disabled.'} + {'type': 'inveniordm', 'id': 'invenio_sandbox', 'doc': 'This is the Sandbox instance of Invenio. It is used for testing purposes only, content is NOT preserved. DOIs created in this instance are not real and will not resolve.', 'label': 'Invenio RDM Sandbox Repository (TESTING ONLY)', 'url': 'https://inveniordm.web.cern.ch/', 'token': "${user.user_vault.read_secret('preferences/invenio_sandbox/token')}", 'public_name': "${user.preferences['invenio_sandbox|public_name']}", 'writable': True} + {'type': 'zenodo', 'id': 'zenodo', 'doc': 'Zenodo is a general-purpose open-access repository developed under the European OpenAIRE program and operated by CERN. It allows researchers to deposit data sets, research software, reports, and any other research-related digital artifacts. For each submission, a persistent digital object identifier (DOI) is minted, which makes the stored items easily citeable.', 'label': 'Zenodo', 'url': 'https://zenodo.org', 'token': "${user.user_vault.read_secret('preferences/zenodo/token')}", 'public_name': "${user.preferences['zenodo|public_name']}", 'writable': True} + {'type': 'zenodo', 'id': 'zenodo_sandbox', 'doc': 'This is the Sandbox instance of Zenodo. It is used for testing purposes only, content is NOT preserved. DOIs created in this instance are not real and will not resolve.', 'label': 'Zenodo Sandbox (TESTING ONLY)', 'url': 'https://sandbox.zenodo.org', 'token': "${user.user_vault.read_secret('preferences/zenodo_sandbox/token')}", 'public_name': "${user.preferences['zenodo_sandbox|public_name']}", 'writable': True} + {'type': 'onedata', 'id': 'onedata1', 'label': 'Onedata', 'doc': 'Your Onedata files - configure an access token via user preferences', 'access_token': "${user.preferences['onedata|access_token']}", 'onezone_domain': "${user.preferences['onedata|onezone_domain']}", 'disable_tls_certificate_validation': "${user.preferences['onedata|disable_tls_certificate_validation']}"} + + + +config/galaxy.yml.sample:galaxy +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- mapping.galaxy.mapping.conda_auto_init.desc has changed from + + :: + + Set to true to instruct Galaxy to install Conda from the web automatically + if it cannot find a local copy and conda_exec is not configured. + + to + + :: + + Set to true to instruct Galaxy to install Conda from the web automatically + if it cannot find a local copy and conda_exec is not configured. The default is + true if running Galaxy from source, and false if running from installed packages. + + +- mapping.galaxy.mapping.geographical_server_location_code.desc has changed from + + :: + + The estimated geographical location of the server hosting your galaxy instance given as an ISO 3166 code. + This is used to make carbon emissions estimates more accurate as the location effects the + carbon intensity values used in the estimate calculation. This defaults to "GLOBAL" if not set or the + `geographical_server_location_code` value is invalid or unsupported. To see a full list of supported locations, + visit https://galaxyproject.org/admin/carbon_emissions + + to + + :: + + The estimated geographical location of the server hosting your galaxy instance given as an ISO 3166 code. + This is used to make carbon emissions estimates more accurate as the location effects the + carbon intensity values used in the estimate calculation. This defaults to "GLOBAL" if not set or the + `geographical_server_location_code` value is invalid or unsupported. To see a full list of supported locations, + visit https://docs.galaxyproject.org/en/master/admin/carbon_emissions.html + + +- mapping.galaxy.mapping.interactivetools_map.desc has changed from + + :: + + Map for interactivetool proxy. + + to + + :: + + Map for the interactivetool proxy. Mappings are stored in a SQLite database file + located on this path. As an alternative, you may also store them in any other RDBMS + supported by SQLAlchemy using the option ``interactivetoolsproxy_map``, which + overrides this one. + + +- mapping.galaxy.mapping.object_store_cache_size.desc has changed from + + :: + + Default cache size for caching object stores if cache not configured for + that object store entry. + + to + + :: + + Default cache size, in GB, for caching object stores if the cache is not + configured for that object store entry. + + +Removed +------- + +The following configuration options have been completely removed + +config/galaxy.yml.sample:galaxy +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- mapping.galaxy.mapping.conda_auto_init + + +Deprecation Notices +=========================================================== +Add content or drop section. + +Release Notes +=========================================================== + +.. include:: 24.2.rst + :start-after: announce_start + +.. include:: _thanks.rst diff --git a/doc/source/releases/24.2_announce_user.rst b/doc/source/releases/24.2_announce_user.rst new file mode 100644 index 000000000000..786891f5d214 --- /dev/null +++ b/doc/source/releases/24.2_announce_user.rst @@ -0,0 +1,149 @@ + +=========================================================== +24.2 Galaxy Release (January 2025) +=========================================================== + +.. include:: _header.rst + +Highlights +=========================================================== + +Feature1 +-------- + +Feature description. + +Feature2 +-------- + +Feature description. + +Feature3 +-------- + +Feature description. + + +Visualizations +=========================================================== + +.. visualizations +* Fix MSA viz, new dependency specification options + (thanks to `@dannon `__). + `Pull Request 18760`_ +* Parse stored config details to script-based visualizations + (thanks to `@guerler `__). + `Pull Request 18651`_ +* Install npm-package viz to the package prefix explicitly + (thanks to `@dannon `__). + `Pull Request 18950`_ +* Migrate NGL viewer to npm package + (thanks to `@guerler `__). + `Pull Request 18946`_ +* Support deferred datasets in visualizations + (thanks to `@davelopez `__). + `Pull Request 19097`_ +* Openlayer update to npm package + (thanks to `@hujambo-dunia `__). + `Pull Request 19134`_ +* Replace static Cytoscape plugin with npm package + (thanks to `@itisAliRH `__). + `Pull Request 19127`_ +* Update tiff viewer to use script entry_point + (thanks to `@guerler `__). + `Pull Request 19151`_ +* Migrate Venn Diagram to Script-Tag + (thanks to `@guerler `__). + `Pull Request 19153`_ +* FITS file table graph visualization plugin + (thanks to `@francoismg `__). + `Pull Request 19003`_ +* Restore access to saved visualizations + (thanks to `@guerler `__). + `Pull Request 19136`_ +* Remove OpenLayers legacy files and add SVG logo + (thanks to `@guerler `__). + `Pull Request 19135`_ + +Datatypes +=========================================================== + +.. datatypes +* Add pod5 datatype + (thanks to `@TomHarrop `__). + `Pull Request 18419`_ +* Handle compressed content in dataset preview for all sequence classes + (thanks to `@PlushZ `__). + `Pull Request 18776`_ +* Type annotations and fixes + (thanks to `@nsoranzo `__). + `Pull Request 18911`_ +* Improve usability of Directory datatype + (thanks to `@wm75 `__). + `Pull Request 17614`_ +* Add some Zarr-based datatypes + (thanks to `@davelopez `__). + `Pull Request 19040`_ +* Add XML based `vtk` datatype + (thanks to `@tStehling `__). + `Pull Request 19104`_ +* Add gtf to auto_compressed_types + (thanks to `@mvdbeek `__). + `Pull Request 19175`_ + +Builtin Tool Updates +=========================================================== + +.. tools +* Drop "Send to cloud" tool and associated cloudauthz code + (thanks to `@jdavcs `__). + `Pull Request 18196`_ +* Update GPU JupyterLab tool + (thanks to `@anuprulez `__). + `Pull Request 18220`_ +* Improvements to Tool Test Parsing + (thanks to `@jmchilton `__). + `Pull Request 18560`_ +* Add Tool-Centric APIs to the Tool Shed 2.0 + (thanks to `@jmchilton `__). + `Pull Request 18524`_ +* Add BlobToolkit to the list of interactive tools + (thanks to `@Delphine-L `__). + `Pull Request 18630`_ +* Enable ``ignore-without-code`` mypy error code + (thanks to `@nsoranzo `__). + `Pull Request 18898`_ +* Remove some unused dynamic drill down options + (thanks to `@jmchilton `__). + `Pull Request 18892`_ +* Fix commas that shouldn't be in biotools_mappings.tsv + (thanks to `@jmchilton `__). + `Pull Request 18919`_ +* Add filter null collection operation tool + (thanks to `@mvdbeek `__). + `Pull Request 18928`_ +* Remove outdated fimo wrapper and galaxy-sequence-utils dependency + (thanks to `@nsoranzo `__). + `Pull Request 18937`_ +* Jupyter Interactive Tool 1.0.1/24.07 + (thanks to `@natefoo `__). + `Pull Request 18861`_ +* Add Interactive Tool Ilastik + (thanks to `@lldelisle `__). + `Pull Request 16837`_ + +Release Testing Team +=========================================================== + +A special thanks to the release testing team for testing many of the new features and reporting many bugs: + + + +Release Notes +=========================================================== + +Please see the :doc:`full release notes <24.2_announce>` for more details. + +.. include:: 24.2_prs.rst + +.. include:: _thanks.rst diff --git a/doc/source/releases/24.2_prs.rst b/doc/source/releases/24.2_prs.rst new file mode 100644 index 000000000000..23777d4e0dd3 --- /dev/null +++ b/doc/source/releases/24.2_prs.rst @@ -0,0 +1,262 @@ + +.. github_links +.. _Pull Request 19316: https://github.com/galaxyproject/galaxy/pull/19316 +.. _Pull Request 19281: https://github.com/galaxyproject/galaxy/pull/19281 +.. _Pull Request 19251: https://github.com/galaxyproject/galaxy/pull/19251 +.. _Pull Request 19250: https://github.com/galaxyproject/galaxy/pull/19250 +.. _Pull Request 19230: https://github.com/galaxyproject/galaxy/pull/19230 +.. _Pull Request 19252: https://github.com/galaxyproject/galaxy/pull/19252 +.. _Pull Request 19238: https://github.com/galaxyproject/galaxy/pull/19238 +.. _Pull Request 18857: https://github.com/galaxyproject/galaxy/pull/18857 +.. _Pull Request 19241: https://github.com/galaxyproject/galaxy/pull/19241 +.. _Pull Request 19242: https://github.com/galaxyproject/galaxy/pull/19242 +.. _Pull Request 19247: https://github.com/galaxyproject/galaxy/pull/19247 +.. _Pull Request 19212: https://github.com/galaxyproject/galaxy/pull/19212 +.. _Pull Request 19219: https://github.com/galaxyproject/galaxy/pull/19219 +.. _Pull Request 19182: https://github.com/galaxyproject/galaxy/pull/19182 +.. _Pull Request 18197: https://github.com/galaxyproject/galaxy/pull/18197 +.. _Pull Request 18196: https://github.com/galaxyproject/galaxy/pull/18196 +.. _Pull Request 18220: https://github.com/galaxyproject/galaxy/pull/18220 +.. _Pull Request 18386: https://github.com/galaxyproject/galaxy/pull/18386 +.. _Pull Request 18461: https://github.com/galaxyproject/galaxy/pull/18461 +.. _Pull Request 18479: https://github.com/galaxyproject/galaxy/pull/18479 +.. _Pull Request 18503: https://github.com/galaxyproject/galaxy/pull/18503 +.. _Pull Request 18419: https://github.com/galaxyproject/galaxy/pull/18419 +.. _Pull Request 18468: https://github.com/galaxyproject/galaxy/pull/18468 +.. _Pull Request 18510: https://github.com/galaxyproject/galaxy/pull/18510 +.. _Pull Request 18516: https://github.com/galaxyproject/galaxy/pull/18516 +.. _Pull Request 18523: https://github.com/galaxyproject/galaxy/pull/18523 +.. _Pull Request 18519: https://github.com/galaxyproject/galaxy/pull/18519 +.. _Pull Request 18539: https://github.com/galaxyproject/galaxy/pull/18539 +.. _Pull Request 18469: https://github.com/galaxyproject/galaxy/pull/18469 +.. _Pull Request 18538: https://github.com/galaxyproject/galaxy/pull/18538 +.. _Pull Request 18093: https://github.com/galaxyproject/galaxy/pull/18093 +.. _Pull Request 18529: https://github.com/galaxyproject/galaxy/pull/18529 +.. _Pull Request 18558: https://github.com/galaxyproject/galaxy/pull/18558 +.. _Pull Request 18560: https://github.com/galaxyproject/galaxy/pull/18560 +.. _Pull Request 18551: https://github.com/galaxyproject/galaxy/pull/18551 +.. _Pull Request 18563: https://github.com/galaxyproject/galaxy/pull/18563 +.. _Pull Request 18568: https://github.com/galaxyproject/galaxy/pull/18568 +.. _Pull Request 18524: https://github.com/galaxyproject/galaxy/pull/18524 +.. _Pull Request 18583: https://github.com/galaxyproject/galaxy/pull/18583 +.. _Pull Request 18570: https://github.com/galaxyproject/galaxy/pull/18570 +.. _Pull Request 18575: https://github.com/galaxyproject/galaxy/pull/18575 +.. _Pull Request 18553: https://github.com/galaxyproject/galaxy/pull/18553 +.. _Pull Request 18589: https://github.com/galaxyproject/galaxy/pull/18589 +.. _Pull Request 18593: https://github.com/galaxyproject/galaxy/pull/18593 +.. _Pull Request 18599: https://github.com/galaxyproject/galaxy/pull/18599 +.. _Pull Request 18265: https://github.com/galaxyproject/galaxy/pull/18265 +.. _Pull Request 18602: https://github.com/galaxyproject/galaxy/pull/18602 +.. _Pull Request 18590: https://github.com/galaxyproject/galaxy/pull/18590 +.. _Pull Request 18579: https://github.com/galaxyproject/galaxy/pull/18579 +.. _Pull Request 18610: https://github.com/galaxyproject/galaxy/pull/18610 +.. _Pull Request 18623: https://github.com/galaxyproject/galaxy/pull/18623 +.. _Pull Request 18618: https://github.com/galaxyproject/galaxy/pull/18618 +.. _Pull Request 18624: https://github.com/galaxyproject/galaxy/pull/18624 +.. _Pull Request 18585: https://github.com/galaxyproject/galaxy/pull/18585 +.. _Pull Request 18605: https://github.com/galaxyproject/galaxy/pull/18605 +.. _Pull Request 18608: https://github.com/galaxyproject/galaxy/pull/18608 +.. _Pull Request 18586: https://github.com/galaxyproject/galaxy/pull/18586 +.. _Pull Request 18632: https://github.com/galaxyproject/galaxy/pull/18632 +.. _Pull Request 18644: https://github.com/galaxyproject/galaxy/pull/18644 +.. _Pull Request 18631: https://github.com/galaxyproject/galaxy/pull/18631 +.. _Pull Request 18643: https://github.com/galaxyproject/galaxy/pull/18643 +.. _Pull Request 18645: https://github.com/galaxyproject/galaxy/pull/18645 +.. _Pull Request 18647: https://github.com/galaxyproject/galaxy/pull/18647 +.. _Pull Request 18626: https://github.com/galaxyproject/galaxy/pull/18626 +.. _Pull Request 18581: https://github.com/galaxyproject/galaxy/pull/18581 +.. _Pull Request 18656: https://github.com/galaxyproject/galaxy/pull/18656 +.. _Pull Request 18668: https://github.com/galaxyproject/galaxy/pull/18668 +.. _Pull Request 18673: https://github.com/galaxyproject/galaxy/pull/18673 +.. _Pull Request 18676: https://github.com/galaxyproject/galaxy/pull/18676 +.. _Pull Request 18674: https://github.com/galaxyproject/galaxy/pull/18674 +.. _Pull Request 18686: https://github.com/galaxyproject/galaxy/pull/18686 +.. _Pull Request 18655: https://github.com/galaxyproject/galaxy/pull/18655 +.. _Pull Request 18706: https://github.com/galaxyproject/galaxy/pull/18706 +.. _Pull Request 16894: https://github.com/galaxyproject/galaxy/pull/16894 +.. _Pull Request 18708: https://github.com/galaxyproject/galaxy/pull/18708 +.. _Pull Request 18716: https://github.com/galaxyproject/galaxy/pull/18716 +.. _Pull Request 18717: https://github.com/galaxyproject/galaxy/pull/18717 +.. _Pull Request 18678: https://github.com/galaxyproject/galaxy/pull/18678 +.. _Pull Request 18679: https://github.com/galaxyproject/galaxy/pull/18679 +.. _Pull Request 18715: https://github.com/galaxyproject/galaxy/pull/18715 +.. _Pull Request 18728: https://github.com/galaxyproject/galaxy/pull/18728 +.. _Pull Request 18746: https://github.com/galaxyproject/galaxy/pull/18746 +.. _Pull Request 18707: https://github.com/galaxyproject/galaxy/pull/18707 +.. _Pull Request 18755: https://github.com/galaxyproject/galaxy/pull/18755 +.. _Pull Request 18768: https://github.com/galaxyproject/galaxy/pull/18768 +.. _Pull Request 18457: https://github.com/galaxyproject/galaxy/pull/18457 +.. _Pull Request 18630: https://github.com/galaxyproject/galaxy/pull/18630 +.. _Pull Request 18776: https://github.com/galaxyproject/galaxy/pull/18776 +.. _Pull Request 18758: https://github.com/galaxyproject/galaxy/pull/18758 +.. _Pull Request 18789: https://github.com/galaxyproject/galaxy/pull/18789 +.. _Pull Request 18488: https://github.com/galaxyproject/galaxy/pull/18488 +.. _Pull Request 18721: https://github.com/galaxyproject/galaxy/pull/18721 +.. _Pull Request 18786: https://github.com/galaxyproject/galaxy/pull/18786 +.. _Pull Request 18794: https://github.com/galaxyproject/galaxy/pull/18794 +.. _Pull Request 18773: https://github.com/galaxyproject/galaxy/pull/18773 +.. _Pull Request 18760: https://github.com/galaxyproject/galaxy/pull/18760 +.. _Pull Request 18792: https://github.com/galaxyproject/galaxy/pull/18792 +.. _Pull Request 18613: https://github.com/galaxyproject/galaxy/pull/18613 +.. _Pull Request 18722: https://github.com/galaxyproject/galaxy/pull/18722 +.. _Pull Request 18803: https://github.com/galaxyproject/galaxy/pull/18803 +.. _Pull Request 18651: https://github.com/galaxyproject/galaxy/pull/18651 +.. _Pull Request 18811: https://github.com/galaxyproject/galaxy/pull/18811 +.. _Pull Request 18578: https://github.com/galaxyproject/galaxy/pull/18578 +.. _Pull Request 18787: https://github.com/galaxyproject/galaxy/pull/18787 +.. _Pull Request 18740: https://github.com/galaxyproject/galaxy/pull/18740 +.. _Pull Request 18836: https://github.com/galaxyproject/galaxy/pull/18836 +.. _Pull Request 18595: https://github.com/galaxyproject/galaxy/pull/18595 +.. _Pull Request 18808: https://github.com/galaxyproject/galaxy/pull/18808 +.. _Pull Request 18847: https://github.com/galaxyproject/galaxy/pull/18847 +.. _Pull Request 18796: https://github.com/galaxyproject/galaxy/pull/18796 +.. _Pull Request 18743: https://github.com/galaxyproject/galaxy/pull/18743 +.. _Pull Request 18844: https://github.com/galaxyproject/galaxy/pull/18844 +.. _Pull Request 18852: https://github.com/galaxyproject/galaxy/pull/18852 +.. _Pull Request 18860: https://github.com/galaxyproject/galaxy/pull/18860 +.. _Pull Request 18864: https://github.com/galaxyproject/galaxy/pull/18864 +.. _Pull Request 18854: https://github.com/galaxyproject/galaxy/pull/18854 +.. _Pull Request 18821: https://github.com/galaxyproject/galaxy/pull/18821 +.. _Pull Request 18757: https://github.com/galaxyproject/galaxy/pull/18757 +.. _Pull Request 18777: https://github.com/galaxyproject/galaxy/pull/18777 +.. _Pull Request 18493: https://github.com/galaxyproject/galaxy/pull/18493 +.. _Pull Request 18885: https://github.com/galaxyproject/galaxy/pull/18885 +.. _Pull Request 18879: https://github.com/galaxyproject/galaxy/pull/18879 +.. _Pull Request 18884: https://github.com/galaxyproject/galaxy/pull/18884 +.. _Pull Request 18886: https://github.com/galaxyproject/galaxy/pull/18886 +.. _Pull Request 18898: https://github.com/galaxyproject/galaxy/pull/18898 +.. _Pull Request 18888: https://github.com/galaxyproject/galaxy/pull/18888 +.. _Pull Request 18889: https://github.com/galaxyproject/galaxy/pull/18889 +.. _Pull Request 18518: https://github.com/galaxyproject/galaxy/pull/18518 +.. _Pull Request 18911: https://github.com/galaxyproject/galaxy/pull/18911 +.. _Pull Request 18779: https://github.com/galaxyproject/galaxy/pull/18779 +.. _Pull Request 18904: https://github.com/galaxyproject/galaxy/pull/18904 +.. _Pull Request 18923: https://github.com/galaxyproject/galaxy/pull/18923 +.. _Pull Request 18892: https://github.com/galaxyproject/galaxy/pull/18892 +.. _Pull Request 18919: https://github.com/galaxyproject/galaxy/pull/18919 +.. _Pull Request 18928: https://github.com/galaxyproject/galaxy/pull/18928 +.. _Pull Request 18891: https://github.com/galaxyproject/galaxy/pull/18891 +.. _Pull Request 18937: https://github.com/galaxyproject/galaxy/pull/18937 +.. _Pull Request 18943: https://github.com/galaxyproject/galaxy/pull/18943 +.. _Pull Request 18909: https://github.com/galaxyproject/galaxy/pull/18909 +.. _Pull Request 18838: https://github.com/galaxyproject/galaxy/pull/18838 +.. _Pull Request 18924: https://github.com/galaxyproject/galaxy/pull/18924 +.. _Pull Request 18950: https://github.com/galaxyproject/galaxy/pull/18950 +.. _Pull Request 18956: https://github.com/galaxyproject/galaxy/pull/18956 +.. _Pull Request 18958: https://github.com/galaxyproject/galaxy/pull/18958 +.. _Pull Request 18963: https://github.com/galaxyproject/galaxy/pull/18963 +.. _Pull Request 18975: https://github.com/galaxyproject/galaxy/pull/18975 +.. _Pull Request 18968: https://github.com/galaxyproject/galaxy/pull/18968 +.. _Pull Request 18970: https://github.com/galaxyproject/galaxy/pull/18970 +.. _Pull Request 18983: https://github.com/galaxyproject/galaxy/pull/18983 +.. _Pull Request 18982: https://github.com/galaxyproject/galaxy/pull/18982 +.. _Pull Request 18598: https://github.com/galaxyproject/galaxy/pull/18598 +.. _Pull Request 18987: https://github.com/galaxyproject/galaxy/pull/18987 +.. _Pull Request 18988: https://github.com/galaxyproject/galaxy/pull/18988 +.. _Pull Request 18991: https://github.com/galaxyproject/galaxy/pull/18991 +.. _Pull Request 18997: https://github.com/galaxyproject/galaxy/pull/18997 +.. _Pull Request 18835: https://github.com/galaxyproject/galaxy/pull/18835 +.. _Pull Request 19010: https://github.com/galaxyproject/galaxy/pull/19010 +.. _Pull Request 19019: https://github.com/galaxyproject/galaxy/pull/19019 +.. _Pull Request 19001: https://github.com/galaxyproject/galaxy/pull/19001 +.. _Pull Request 18946: https://github.com/galaxyproject/galaxy/pull/18946 +.. _Pull Request 19037: https://github.com/galaxyproject/galaxy/pull/19037 +.. _Pull Request 19031: https://github.com/galaxyproject/galaxy/pull/19031 +.. _Pull Request 18887: https://github.com/galaxyproject/galaxy/pull/18887 +.. _Pull Request 18979: https://github.com/galaxyproject/galaxy/pull/18979 +.. _Pull Request 18742: https://github.com/galaxyproject/galaxy/pull/18742 +.. _Pull Request 19041: https://github.com/galaxyproject/galaxy/pull/19041 +.. _Pull Request 19062: https://github.com/galaxyproject/galaxy/pull/19062 +.. _Pull Request 19025: https://github.com/galaxyproject/galaxy/pull/19025 +.. _Pull Request 19063: https://github.com/galaxyproject/galaxy/pull/19063 +.. _Pull Request 19029: https://github.com/galaxyproject/galaxy/pull/19029 +.. _Pull Request 19055: https://github.com/galaxyproject/galaxy/pull/19055 +.. _Pull Request 19060: https://github.com/galaxyproject/galaxy/pull/19060 +.. _Pull Request 19002: https://github.com/galaxyproject/galaxy/pull/19002 +.. _Pull Request 19076: https://github.com/galaxyproject/galaxy/pull/19076 +.. _Pull Request 19070: https://github.com/galaxyproject/galaxy/pull/19070 +.. _Pull Request 17614: https://github.com/galaxyproject/galaxy/pull/17614 +.. _Pull Request 19075: https://github.com/galaxyproject/galaxy/pull/19075 +.. _Pull Request 18449: https://github.com/galaxyproject/galaxy/pull/18449 +.. _Pull Request 19030: https://github.com/galaxyproject/galaxy/pull/19030 +.. _Pull Request 19077: https://github.com/galaxyproject/galaxy/pull/19077 +.. _Pull Request 19097: https://github.com/galaxyproject/galaxy/pull/19097 +.. _Pull Request 19099: https://github.com/galaxyproject/galaxy/pull/19099 +.. _Pull Request 19094: https://github.com/galaxyproject/galaxy/pull/19094 +.. _Pull Request 19109: https://github.com/galaxyproject/galaxy/pull/19109 +.. _Pull Request 19073: https://github.com/galaxyproject/galaxy/pull/19073 +.. _Pull Request 19047: https://github.com/galaxyproject/galaxy/pull/19047 +.. _Pull Request 18834: https://github.com/galaxyproject/galaxy/pull/18834 +.. _Pull Request 19111: https://github.com/galaxyproject/galaxy/pull/19111 +.. _Pull Request 19113: https://github.com/galaxyproject/galaxy/pull/19113 +.. _Pull Request 19108: https://github.com/galaxyproject/galaxy/pull/19108 +.. _Pull Request 19110: https://github.com/galaxyproject/galaxy/pull/19110 +.. _Pull Request 19114: https://github.com/galaxyproject/galaxy/pull/19114 +.. _Pull Request 19123: https://github.com/galaxyproject/galaxy/pull/19123 +.. _Pull Request 19128: https://github.com/galaxyproject/galaxy/pull/19128 +.. _Pull Request 18998: https://github.com/galaxyproject/galaxy/pull/18998 +.. _Pull Request 19046: https://github.com/galaxyproject/galaxy/pull/19046 +.. _Pull Request 19115: https://github.com/galaxyproject/galaxy/pull/19115 +.. _Pull Request 19040: https://github.com/galaxyproject/galaxy/pull/19040 +.. _Pull Request 18522: https://github.com/galaxyproject/galaxy/pull/18522 +.. _Pull Request 18945: https://github.com/galaxyproject/galaxy/pull/18945 +.. _Pull Request 18198: https://github.com/galaxyproject/galaxy/pull/18198 +.. _Pull Request 19134: https://github.com/galaxyproject/galaxy/pull/19134 +.. _Pull Request 19022: https://github.com/galaxyproject/galaxy/pull/19022 +.. _Pull Request 19014: https://github.com/galaxyproject/galaxy/pull/19014 +.. _Pull Request 18880: https://github.com/galaxyproject/galaxy/pull/18880 +.. _Pull Request 18861: https://github.com/galaxyproject/galaxy/pull/18861 +.. _Pull Request 19101: https://github.com/galaxyproject/galaxy/pull/19101 +.. _Pull Request 19142: https://github.com/galaxyproject/galaxy/pull/19142 +.. _Pull Request 19127: https://github.com/galaxyproject/galaxy/pull/19127 +.. _Pull Request 19141: https://github.com/galaxyproject/galaxy/pull/19141 +.. _Pull Request 18762: https://github.com/galaxyproject/galaxy/pull/18762 +.. _Pull Request 18949: https://github.com/galaxyproject/galaxy/pull/18949 +.. _Pull Request 16837: https://github.com/galaxyproject/galaxy/pull/16837 +.. _Pull Request 19150: https://github.com/galaxyproject/galaxy/pull/19150 +.. _Pull Request 19151: https://github.com/galaxyproject/galaxy/pull/19151 +.. _Pull Request 19104: https://github.com/galaxyproject/galaxy/pull/19104 +.. _Pull Request 19153: https://github.com/galaxyproject/galaxy/pull/19153 +.. _Pull Request 18936: https://github.com/galaxyproject/galaxy/pull/18936 +.. _Pull Request 19003: https://github.com/galaxyproject/galaxy/pull/19003 +.. _Pull Request 19163: https://github.com/galaxyproject/galaxy/pull/19163 +.. _Pull Request 19136: https://github.com/galaxyproject/galaxy/pull/19136 +.. _Pull Request 19020: https://github.com/galaxyproject/galaxy/pull/19020 +.. _Pull Request 19170: https://github.com/galaxyproject/galaxy/pull/19170 +.. _Pull Request 15860: https://github.com/galaxyproject/galaxy/pull/15860 +.. _Pull Request 18272: https://github.com/galaxyproject/galaxy/pull/18272 +.. _Pull Request 19048: https://github.com/galaxyproject/galaxy/pull/19048 +.. _Pull Request 18977: https://github.com/galaxyproject/galaxy/pull/18977 +.. _Pull Request 18966: https://github.com/galaxyproject/galaxy/pull/18966 +.. _Pull Request 18807: https://github.com/galaxyproject/galaxy/pull/18807 +.. _Pull Request 18481: https://github.com/galaxyproject/galaxy/pull/18481 +.. _Pull Request 18312: https://github.com/galaxyproject/galaxy/pull/18312 +.. _Pull Request 18542: https://github.com/galaxyproject/galaxy/pull/18542 +.. _Pull Request 19135: https://github.com/galaxyproject/galaxy/pull/19135 +.. _Pull Request 19090: https://github.com/galaxyproject/galaxy/pull/19090 +.. _Pull Request 18996: https://github.com/galaxyproject/galaxy/pull/18996 +.. _Pull Request 18942: https://github.com/galaxyproject/galaxy/pull/18942 +.. _Pull Request 18910: https://github.com/galaxyproject/galaxy/pull/18910 +.. _Pull Request 18866: https://github.com/galaxyproject/galaxy/pull/18866 +.. _Pull Request 18714: https://github.com/galaxyproject/galaxy/pull/18714 +.. _Pull Request 18638: https://github.com/galaxyproject/galaxy/pull/18638 +.. _Pull Request 18548: https://github.com/galaxyproject/galaxy/pull/18548 +.. _Pull Request 18499: https://github.com/galaxyproject/galaxy/pull/18499 +.. _Pull Request 18458: https://github.com/galaxyproject/galaxy/pull/18458 +.. _Pull Request 19050: https://github.com/galaxyproject/galaxy/pull/19050 +.. _Pull Request 19027: https://github.com/galaxyproject/galaxy/pull/19027 +.. _Pull Request 18985: https://github.com/galaxyproject/galaxy/pull/18985 +.. _Pull Request 18641: https://github.com/galaxyproject/galaxy/pull/18641 +.. _Pull Request 18532: https://github.com/galaxyproject/galaxy/pull/18532 +.. _Pull Request 17927: https://github.com/galaxyproject/galaxy/pull/17927 +.. _Pull Request 18615: https://github.com/galaxyproject/galaxy/pull/18615 +.. _Pull Request 18986: https://github.com/galaxyproject/galaxy/pull/18986 +.. _Pull Request 19096: https://github.com/galaxyproject/galaxy/pull/19096 +.. _Pull Request 16975: https://github.com/galaxyproject/galaxy/pull/16975 +.. _Pull Request 19166: https://github.com/galaxyproject/galaxy/pull/19166 +.. _Pull Request 17600: https://github.com/galaxyproject/galaxy/pull/17600 +.. _Pull Request 19168: https://github.com/galaxyproject/galaxy/pull/19168 +.. _Pull Request 19199: https://github.com/galaxyproject/galaxy/pull/19199 +.. _Pull Request 19175: https://github.com/galaxyproject/galaxy/pull/19175 +.. _Pull Request 19172: https://github.com/galaxyproject/galaxy/pull/19172 +.. _Pull Request 19131: https://github.com/galaxyproject/galaxy/pull/19131 diff --git a/doc/source/releases/25.0_announce.rst b/doc/source/releases/25.0_announce.rst new file mode 100644 index 000000000000..4f1ce6ad6478 --- /dev/null +++ b/doc/source/releases/25.0_announce.rst @@ -0,0 +1,6 @@ + +:orphan: + +=========================================================== +25.0 Galaxy Release +=========================================================== diff --git a/doc/source/releases/index.rst b/doc/source/releases/index.rst index 5e9d65038a4f..2a84a59df414 100644 --- a/doc/source/releases/index.rst +++ b/doc/source/releases/index.rst @@ -4,6 +4,7 @@ Releases .. toctree:: :maxdepth: 1 + 24.2_announce_user 24.1_announce_user 24.0_announce_user 23.2_announce_user