September 2021 Galaxy Release (v 21.09)
Highlights
Tool Panel Views
With many thousands of Tools available on public Galaxy instances it is often difficult to organize and find Tools in the Tool Panel. To address this problem we are introducing Tool Panel Views. Administrators can configure an arbitrary number of Tool Panel Views. These views can be constructed automatically for Tools annotated with EDAM terms, or they can be constructed manually by referring to existing Sections, Tools or Workflows. Users can then select the Tool Panel View most appropriate to their current activity. The default Tool Panel View corresponds uses the sections as they are traditionally configured. It is also possible to configure the default Tool Panel View using the domain name of the server, so “flavors” of Galaxy can be created based on the URL that users use to interact with a server, while behind the scenes these flavors are served by the same Galaxy process. For more details see the 21.09 user release notes and PullRequest12327. (Pull Request 12327, Pull Request 12677, Pull Request 12328, Pull Request 12379).
Enhancements for Working with Remote Data and Distributed Computing Resources
Many fixes and enhancements were made to improve how Galaxy can import and write to remote data locations using the configured file source plugins. In addition to the History Export functionality, which can write to remote locations we have added an
Export datasets
Tool for exporting individual Datasets and Dataset collections to configured remote locations. The Tool will automatically maintain the name and structure of Datasets and Dataset Collections. We have added the possibility to import entire folders of remote data and made the data selection dialog more intuitive. We also added numerous improvements and fixes to the extended metadata collection strategy and Pulsar, so that many more Tools are able to run in Pulsar and write data back to storage without passing through Galaxy first. (Pull Request 12785, Pull Request 11613, Pull Request 12250, Pull Request 12372, Pull Request 12760, Pull Request 12267, Pull Request 11949, Pull Request 12310, Pull Request 12388, Pull Request 12641).
- Migration to FastAPI and Extended Documentation of API Routes
We have modernized and migrated many more API routes to FastAPI and have extended the documentation and validation of these routes. (Pull Request 11315, Pull Request 11827, Pull Request 11983, Pull Request 12131, Pull Request 12337, Pull Request 12195, Pull Request 12370, Pull Request 12391, Pull Request 12417, Pull Request 12505).
- Migration to SQLAlchemy 1.4 and Declarative Mapping
Galaxy is now using SQLAlchemy version 1.4, which is a prerequisite for asynchronously interacting with the database. We also modernized the way our database models are defined to the more commonly used declarative mapping approach, which is more concise and better documented. (Pull Request 12042, Pull Request 12045, Pull Request 12064, Pull Request 12438, Pull Request 12060, Pull Request 12424, Pull Request 12461).
- Modernization of Tool Form Interface
The Tool Form interface has been almost completed migrated from Backbone to Vue. This improves the reactivity of parameter validation and enables the migration of Tool parameters to Vue, which will also allows us to add many more types of Tool parameters. We further migrated the Tool Form variant for the Workflow Editor, the Workflow Run Form and the Show Dataset Parameter page to Vue. (Pull Request 12300, Pull Request 12031, Pull Request 12227, Pull Request 12296, Pull Request 12323, Pull Request 12329, Pull Request 12374, Pull Request 12432, Pull Request 12702, Pull Request 12261).
- New User Welcome Page
We have added a page that new users will be directed to after creating a new Galaxy account. (Pull Request 11085, Pull Request 12639)
Also check out the 21.09 user release notes
Deprecation Notices
Galaxy Interactive Environments (GIEs) are not visible anymore in the User Interface and will be completely removed in the next Galaxy release (22.01). All GIEs have been ported to Interactive Tools, which are much easier to develop, run and configure.
Upcoming Deprecation Notices
We have postponed the following deprecations to the next Galaxy release in order to prepare a smoother experience for our users and administrators.
- Deprecation of support for Python 3.6 in Galaxy release 22.01
This Galaxy release (21.09) will be the last release that supports Python 3.6 or newer. We encourage updating to a newer Python if possible.
- Deprecation of uwsgi and paste
This Galaxy release (21.09) will be the last release that supports the WSGI standard, and with it uwsgi and paste. From release 22.01 Galaxy will be an ASGI application. We will update documentation and playbooks during the upcoming development cycle to enable a smooth transition.
Configuration Changes
Added
The following configuration options are new
config/galaxy.yml.sample:galaxy
biotools_content_directory
biotools_service_cache_data_dir
biotools_service_cache_lock_dir
biotools_service_cache_type
biotools_use_api
container_resolvers
default_panel_view
edam_panel_views
edam_toolbox_ontology_path
enable_account_interface
job_handler_monitor_sleep
job_runner_monitor_sleep
mailing_join_body
mailing_join_subject
mailing_lists_url
panel_views
panel_views_dir
sentry_event_level
Changed
The following configuration options have been changed
config/error_report.yml.sample
has changed from
{'type': 'email', 'verbose': True, 'user_submission': True} {'type': 'sentry', 'user_submission': False}to
{'type': 'email', 'verbose': True, 'user_submission': True}
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', 'accessToken': "${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']}"} {'type': 'posix', 'id': 'posix1', 'label': 'Posix', 'doc': 'Files from local path', 'root': '/some/path/'} {'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': '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}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', 'accessToken': "${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']}"} {'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}
config/galaxy.yml.sample:galaxy
dependency_resolvers description has changed from
Rather than specifying a dependency_resolvers_config_file, the definition of the resolvers to enable can be embedded into Galaxy's config with this option. This has no effect if a dependency_resolvers_config_file is used.
to
Rather than specifying a dependency_resolvers_config_file, the definition of the resolvers to enable can be embedded into Galaxy's config with this option. This has no effect if a dependency_resolvers_config_file is used. The syntax, available resolvers, and documentation of their options is explained in detail in the documentation: https://docs.galaxyproject.org/en/master/admin/dependency_resolvers.html
dependency_resolvers_config_file description has changed from
The dependency resolvers config file specifies an ordering and options for how Galaxy resolves tool dependencies (requirement tags in Tool XML). The default ordering is to the use the Tool Shed for tools installed that way, use local Galaxy packages, and then use Conda if available. See https://github.com/galaxyproject/galaxy/blob/dev/doc/source/admin/dependency_resolvers.rst for more information on these options.
to
Specifies the path to the standalone dependency resolvers configuration file. This configuration can now be specified directly in the Galaxy configuration, see the description of the 'dependency_resolvers' option for details.
ftp_upload_dir description has changed from
Enable Galaxy's "Upload via FTP" interface. You'll need to install and configure an FTP server (we've used ProFTPd since it can use Galaxy's database for authentication) and set the following two options. This should point to a directory containing subdirectories matching users' identifier (defaults to e-mail), where Galaxy will look for files.
to
This should point to a directory containing subdirectories matching users' identifier (defaults to e-mail), where Galaxy will look for files.
ftp_upload_site description has changed from
This should be the hostname of your FTP server, which will be provided to users in the help text.
to
Enable Galaxy's "Upload via FTP" interface. You'll need to install and configure an FTP server (we've used ProFTPd since it can use Galaxy's database for authentication) and set the following two options. This will be provided to users in the help text as 'log in to the FTP server at '. Thus, it should be the hostname of your FTP server.
mailing_join_addr description has changed from
On the user registration form, users may choose to join a mailing list. This is the address used to subscribe to the list. Uncomment and leave empty if you want to remove this option from the user registration form. Example value 'galaxy-announce-join@bx.psu.edu'
to
On the user registration form, users may choose to join a mailing list. This is the address used to subscribe to the list. Uncomment and leave empty if you want to remove this option from the user registration form. Example value 'galaxy-announce-join@lists.galaxyproject.org'
toolbox_filter_base_modules default has changed from
galaxy.tools.filters,galaxy.tools.toolbox.filters
to
galaxy.tools.filters,galaxy.tools.toolbox.filters,galaxy.tool_util.toolbox.filters
Removed
The following configuration options have been completely removed
config/galaxy.yml.sample:galaxy
beta_edam_toolbox_ontology_path
containers_resolvers_config_file
enable_beta_edam_toolbox
enable_job_recovery
sentry_sloreq_threshold
Get Galaxy
The code lives at GitHub and you should have Git to obtain it.
- To get a new Galaxy repository run:
$ git clone -b release_21.09 https://github.com/galaxyproject/galaxy.git
- To update an existing Galaxy repository run:
$ git fetch origin && git checkout release_21.09 && git pull --ff-only origin release_21.09
See the community hub for additional details on source code locations.
Release Notes
Enhancements
New User Welcome page (thanks to @astrovsky01). Pull Request 11085
GPU enabled jupyter notebook for machine learning powered by Jupyter lab and Tensorflow (thanks to @anuprulez). Pull Request 11484
NCBI Datasets data source tool Pull Request 11738
Feature/6965/change datatype and dbkey (thanks to @assuntad23). Pull Request 11799
Add “View Details” button for collections Pull Request 12261
Vuefy and improve granularity for tool HTML sanitization Pull Request 12283
Implement tool panel views. Pull Request 12327
Implement news webhook to handle release announcements (thanks to @hexylena). Pull Request 12396
Various fixes and enhancements for metadata_strategy: extended Pull Request 12785
Convert/standardize to fstrings across lib Pull Request 11338
Added documentation for FASTQ datatypes and implemented quality check (thanks to @bernt-matthias). Pull Request 11931
Make dataset preview for h5mlm datatype (thanks to @qiagu). Pull Request 11935
Add datatypes for Structural Materials Hexrd application (thanks to @jj-umn). Pull Request 11957
Adding new subclass types (thanks to @maikenp). Pull Request 12097
Converters: use target datatype (thanks to @bernt-matthias). Pull Request 12185
Add bref3 datatype (thanks to @gallardoalba). Pull Request 12199
Converters: add missing tests and add linting to converter tests (thanks to @bernt-matthias). Pull Request 12202
Converters: Unify converters to tabix and bgzip (thanks to @bernt-matthias). Pull Request 12213
Unify dcd, trr, xtc datatype converters (thanks to @bernt-matthias). Pull Request 12224
Unify bcf datatype converters (thanks to @bernt-matthias). Pull Request 12225
Add “ExpressionSet RData object” Datatype (thanks to @mtekman). Pull Request 12336
Parse sam metadata from sam files (thanks to @bernt-matthias). Pull Request 12392
Add ONNX datatype (thanks to @anuprulez). Pull Request 12429
Add support for RDS files and improvements for RData (thanks to @bernt-matthias). Pull Request 12712
Changes to Collection Operation Help sections and parameter names Pull Request 11068
Update bam.iobio interactive tool wrapper (thanks to @luke-c-sargent). Pull Request 11537
Add tool for exporting individual files to galaxy file source plugins. Pull Request 11613
Update AskOmics interactive tool to 4.3.1 (thanks to @abretaud). Pull Request 12159
Add
<creator>
to the tool schema template, use live links in xsd Pull Request 12242Systematic handling of remotely required tool files. Pull Request 12250
Allow bio.tools mappings for legacy tools. Pull Request 12289
Allow skipping sanitization of / char in export_remote tool Pull Request 12372
Lock location file before adding values Pull Request 12446
Improve error handling in DirectoryUriToolParameter validation (thanks to @davelopez). Pull Request 12760
Beta history selenium updates and assorted bug fixes Pull Request 12351
Document how to run a local UI client against a remote Galaxy server (thanks to @OlegZharkov). Pull Request 12356
Charts downloads fixes and enhancements. Pull Request 12726
SGE DRMAA example for queue, RAM and CPUs request (thanks to @pcm32). Pull Request 12059
Allow specifying useful classes of tools for mapping in job conf YAML/XML Pull Request 12258
Fix galaxy.json dynamic file collection in Pulsar. Pull Request 12267
Default
k8s_unschedulable_walltime_limit
toNone
and allow for unlimited queue wait time (thanks to @nuwang). Pull Request 12317Support setting per-job-environment container resolvers using the container_resolvers key in the environment config Pull Request 12350
Add config options for controlling handler and runner monitor thread sleep. Pull Request 12473
Make conda_auto_init option overrridable (thanks to @rhpvorderman). Pull Request 12200
Support setting the container resolvers configuration directly in the Galaxy app config Pull Request 12344
Improve k8s docker image (thanks to @nuwang). Pull Request 12373
Fix sorting on disk_usage column in admin panel (thanks to @cat-bro). Pull Request 12469
Make the subject and body of the mailing list join message configurable Pull Request 12484
Don’t change panel view after installing repositories, clean up provider Pull Request 12677
Test configuration for running Selenium tests against beta history panel. Pull Request 10965
Add
negate
attribute to validators and tests (thanks to @bernt-matthias). Pull Request 11043Allow element_identifiers or a manually specified name for datasets in build list tool (thanks to @bernt-matthias). Pull Request 11309
Prepare FastAPI route for quotas (thanks to @davelopez). Pull Request 11315
Create central pydantic models (thanks to @davelopez). Pull Request 11827
Use python:3.7-slim container instead of ubuntu (thanks to @rhpvorderman). Pull Request 11855
Add more examples for the file source plugins (thanks to @bgruening). Pull Request 11949
Migrate Libraries API (top level) to FastAPI (thanks to @davelopez). Pull Request 11983
Upgraded to v0.9.0 of irods client that supports parallel put/get (thanks to @kxk302). Pull Request 11984
Improve handling of tags for collection manipulation tools (thanks to @simonbray). Pull Request 11992
Initial setup for migrating to declarative mapping Pull Request 12042
Migrate model to declarative mapping Pull Request 12045
Unify nested collection attribute or instance access Pull Request 12056
Increase API tests coverage for Data Library GET permissions (thanks to @davelopez). Pull Request 12057
Tweak PR template to be a bit more flexible and lightweight. Pull Request 12063
Declarative mappings + tests for all models Pull Request 12064
Enable pytest class-based tests Pull Request 12072
Rework variable name to clarify this is a wsgi application. Pull Request 12090
Upgraded irods client to v1.0.0 (thanks to @kxk302). Pull Request 12101
Add configuration option to hide user account management interfaces Pull Request 12103
Fix up some typing redundancy. Pull Request 12108
Rename dataset_collections_service to dataset_collection_manager. Pull Request 12110
Allow multiple input datasets in jupyter interactive tool Pull Request 12113
Change GIE label to interactive-tools Pull Request 12114
Add FastAPI routes for Library Folders (thanks to @davelopez). Pull Request 12131
Change icon for “Share or Publish” in new history panel (thanks to @nsoranzo). Pull Request 12143
Cleanup use of refresh/undo/redo/sync icons (thanks to @nsoranzo). Pull Request 12145
Unify how the GalaxyInteractorApi handles JSON requests (thanks to @davelopez). Pull Request 12152
Hide masthead help resources if resource urls are unavailable Pull Request 12198
Cancel in progress CI on same branch, cache yarn cache Pull Request 12211
Show target datatype in datatype conversion (thanks to @bernt-matthias). Pull Request 12230
Add a note to get Python extension and set interpreter (thanks to @eancelet). Pull Request 12234
Lint for whitespace in tool XML (thanks to @neoformit). Pull Request 12246
Use relative path in recursive
discover_datasets
tag Pull Request 12254Deprecate data manager version (thanks to @bernt-matthias). Pull Request 12255
Add linting for tool parameter validators (thanks to @bernt-matthias). Pull Request 12262
Create a bug-report issue template Pull Request 12265
Enhance page functionalities in data-library folder (thanks to @OlegZharkov). Pull Request 12270
Parse edam operation and topic data from bio.tools if available. Pull Request 12291
Refactor base toolbox code de-coupled from app & config into tool_util. Pull Request 12292
Vueify Dataset Error Details Page and Form Pull Request 12300
Implement folder selection in file source upload modal (thanks to @OlegZharkov). Pull Request 12310
Allow HTML in DatasetStorage view (thanks to @bgruening). Pull Request 12312
Document the delta attribute of has_size assert in xml schema (thanks to @bernt-matthias). Pull Request 12314
Accept from_tool_provided_metadata as means to specify the format for discovered datasets in tool linter (thanks to @bernt-matthias). Pull Request 12319
Add Import Collection Button to Collections embedded in Pages Pull Request 12324
Allow various configuration parameters to be set per host. Pull Request 12328
Migrate group_roles endpoints to FastAPI (thanks to @ZimmerA). Pull Request 12337
Restore Upload dialog in global Galaxy object Pull Request 12339
Move page export button to title Pull Request 12340
API test case to ensure model attributes get escaped during tool evaluation Pull Request 12357
Provide more context in EDAM Tool Panel Pull Request 12365
Mention collection name and element identifier when test comparison fails (thanks to @bernt-matthias). Pull Request 12376
Extend per_host configurations to include static directories and files. Pull Request 12379
Display Tabular datasets as sortable tables, and PDF and HTML in embedded frames in Pages Pull Request 12387
Create directories when needed for the pyfilesystem export plugins (thanks to @bgruening). Pull Request 12388
Add Instructions for debugging Galaxy connected to a Slurm cluster in VSCode (thanks to @kxk302). Pull Request 12403
Don’t allow beta history panel Selenium tests to fail. Pull Request 12409
Selenium test for EDAM tool panel views. Pull Request 12422
Spanish Translations for remaining untranslated UI components (thanks to @hexylena). Pull Request 12427
Improvements to Selenium testing Pull Request 12433
Update refgenconf (refgenie) to 0.12.0. Requires version 0.4 of confi… Pull Request 12435
Set default constructor for SA models Pull Request 12438
FastAPI: add middleware to deal with file downloads (thanks to @davelopez). Pull Request 12441
Add options to override the history name and reuse histories in the tool test script Pull Request 12466
Let invalid tool profile trigger linter error (thanks to @bernt-matthias). Pull Request 12501
Release note draft Pull Request 12567
Use new sentry-sdk and adapt usage pattern Pull Request 12584
Add client-side validation to tag editor widget Pull Request 12594
Refgenie fixes for incompatible configurations Pull Request 12617
Update conditional psycopg2-binary dependency Pull Request 12633
Adjust appearance of new user welcome page Pull Request 12639
Fix ambiguity in remote file upload (thanks to @OlegZharkov). Pull Request 12641
Set wait instead of not-allowed cursor to indicate tool form loading Pull Request 12681
Fix missing history or hid for History Dataset Associations Pull Request 12721
21.09 Release notes for Users (thanks to @hexylena). Pull Request 12734
Raise Bad Request when bootstrap admins (master key) try to run jobs/tools (thanks to @davelopez). Pull Request 12793
Add error state to dataset provider, show error in dataset details page Pull Request 12798
If datatype is unknown display warning when trying to connect nodes Pull Request 12807
Refactor Sharing (thanks to @OlegZharkov). Pull Request 11701
Migrate to SQLAlchemy 1.4 Pull Request 11737
Vueify Workflow Editor wrappers Pull Request 11898
Add double quotes to cp for from_work_dir (thanks to @bernt-matthias). Pull Request 11960
Prettier version update to new release Pull Request 12027
Vueify Tool Form Wrapper Pull Request 12031
Normalize Vue mounts in analysis, admin endpoints Pull Request 12040
Set cache_ok flag for SQLAlchemy custom types Pull Request 12060
Update SQLAlchemy to 1.4.17 Pull Request 12089
Update dependency resolver docs and drop sample XML file in favor of direct configuration under the dependency_resolvers key of galaxy.yml Pull Request 12105
Update SQLAlchemy to 1.4.18 Pull Request 12132
Refactoring: Remove ExportsHistoryMixin and ImportsHistoryMixin (thanks to @davelopez). Pull Request 12146
Remove unused legacy controller things Pull Request 12172
Update SQLAlchmey to 1.4.19 Pull Request 12188
Refactor Histories API controller (thanks to @davelopez). Pull Request 12195
Unify molecules datatype converters (thanks to @bernt-matthias). Pull Request 12214
Vueify Workflow Run form Pull Request 12227
Update SQLAlchmey to 1.4.20 Pull Request 12229
Refactor History contents API (thanks to @davelopez). Pull Request 12231
Improve GitHubSearch class (thanks to @nsoranzo). Pull Request 12276
Some refactoring of interactive tool handling in k8s (thanks to @nuwang). Pull Request 12285
Replace form-view imports in Visualizations with Vue component layer Pull Request 12296
Fix histories content filtering by type (thanks to @davelopez). Pull Request 12303
Vueify Dataset Edit Attributes Pull Request 12323
Vueify Generic Form Wrapper Pull Request 12329
Refactor k8s IT checks to make logic more obvious (thanks to @nuwang). Pull Request 12360
Fix variable name typo in watchers (thanks to @nuwang). Pull Request 12368
FastAPI: deprecate url attribute (again) (thanks to @davelopez). Pull Request 12370
Avoid parsing the entire form model to the form display wrapper Pull Request 12374
Remove tool_conf.xml.main which is no longer used (thanks to @nuwang). Pull Request 12380
Removing unused
poolsize
argument from code and config. (thanks to @kxk302). Pull Request 12381FastAPI: support reverse URL lookups (thanks to @davelopez). Pull Request 12391
Adapt quotas tests to use JSON payload (thanks to @davelopez). Pull Request 12417
Declarative mapping follow-up: model constructors cleanup Pull Request 12424
Vuefy show_params.mako (thanks to @OlegZharkov). Pull Request 12432
Return tool_name only when show_job is full (thanks to @OlegZharkov). Pull Request 12457
Drop unused models: DeferredJob and TransferJob Pull Request 12461
Drop bcftools requirement from set_metadata tool Pull Request 12472
Revert “Install Tempita from a fork due to use_2to3 deprecation” (thanks to @nsoranzo). Pull Request 12504
FastAPI: explicitly return empty response with 204 status (thanks to @davelopez). Pull Request 12505
Modernize sorter (sort1) tool Pull Request 12619
Rephrase and fix typos (thanks to @simonbray). Pull Request 12750
Add missing tool_ids to workflow invocation failure message (thanks to @simonbray). Pull Request 12823
Add docker image auto-building in github workflow (thanks to @almahmoud). Pull Request 12520
Fixes
Fix
_get_reference_data
method signature Pull Request 12562Fix new user welcome plugin build status storage/detection Pull Request 12779
Fix msa visualization Pull Request 12782
Fix edta metadata setting (thanks to @bernt-matthias). Pull Request 12273
Increase specificity of mothur.pair.dist sniffer (thanks to @bernt-matthias). Pull Request 12280
Small fix in binary.py (thanks to @melibleq). Pull Request 12384
Fix cmap sniffer (thanks to @astrovsky01). Pull Request 12509
Add file_ext property to Pretext and others datatypes (thanks to @bernt-matthias). Pull Request 12713
Make vg a subclass of CompressedArchive (thanks to @bernt-matthias). Pull Request 12718
Fix typo in interactivetool_jupyter_notebook.xml help section (thanks to @maximskorik). Pull Request 12077
Update interactivetool_pyiron.xml (thanks to @gmauro). Pull Request 12127
Fix patterns in Grep1 tool Pull Request 12166
Restore Grep1 version 1.0.1 Pull Request 12252
Add switch for optional select in workflow editor Pull Request 12138
Do not persist tool state when invoking workflow Pull Request 12141
Fix failure to serialize invocation / drop stored_workflow_id from invocation API Pull Request 12148
Fix various TRS bugs and add tests Pull Request 12182
Fix simplified workflow run form config setting Pull Request 12204
Fix expanding collections in invocation view Pull Request 12216
Disable text input for unselected inputs Pull Request 12640
Flush new history before adding items Pull Request 12771
Swap to galaxy fork of bootstrap-tour Pull Request 12210
Beta history annotation, title, and tag editor Pull Request 12299
Fix typo in docs Pull Request 12450
Handle k8s job creation failures (thanks to @brinkmanlab). Pull Request 11715
More IT and k8s runner fixes (thanks to @almahmoud). Pull Request 11989
Unquote globs in from_work_dir ouptuts Pull Request 12049
Quote extract_dataset_parts.sh call for parallelism mechanism (thanks to @bernt-matthias). Pull Request 12183
Fix crash when uwsgi + mules has unhandled jobs at startup Pull Request 12215
Handle metadata explicitly in kubernetes job runner instead of relying on legacy fallback (thanks to @nuwang). Pull Request 12243
Fix version command when using extended metadata Pull Request 12245
Fix composite inputs when using Pulsar. Pull Request 12259
Fix Pulsar dynamic output discovery for various simple tool specified patterns. Pull Request 12260
Added additional guard conditions in k8s runner to prevent KeyError (thanks to @nuwang). Pull Request 12277
Fix Pulsar’s ability to read tool provided metadata when path is overridden. Pull Request 12284
Continue handler startup even if job working directory can’t be recovered Pull Request 12316
Fix sample job_config file to reflect that tmp_dir can be an expression or the string
True
(thanks to @nuwang). Pull Request 12361Fail data manager job when processing table entry fails Pull Request 12495
Delay start of job runners Pull Request 12575
Fix double enqueuing of upload jobs Pull Request 12763
Use correct path for cgroup metrics when running within containers (thanks to @nuwang). Pull Request 12792
Fix documentation for ftp_upload_dir and ftp_upload_site setting (thanks to @lldelisle). Pull Request 12164
Fix non-closing masthead dropdown (thanks to @OlegZharkov). Pull Request 11962
Update tensorflow to 2.5.0. Pull Request 12026
Fix query parameter in /api/libraries/{id}/permissions (thanks to @davelopez). Pull Request 12047
Add/drop index together with job_id column (thanks to @nsoranzo). Pull Request 12050
Fix pysam.view call (thanks to @bernt-matthias). Pull Request 12061
Open partfile in rb-mode in multipart uploading (thanks to @bioflowy). Pull Request 12084
Make markdown components for reports and pages full width (thanks to @hexylena). Pull Request 12085
Fix history audit table row trigger Pull Request 12130
Update FastAPI to 0.65.2 and dependencies (thanks to @davelopez). Pull Request 12136
Fix subworkflow tool state upgrade parsing Pull Request 12139
Add test cases for collection builder dialogs (thanks to @assuntad23). Pull Request 12154
Fix remote file upload if Galaxy is served under a prefix (thanks to @almahmoud). Pull Request 12155
Add timeout to all urlopen and requests.* methods Pull Request 12173
Allow
decompress="true"
in test comparison methods Pull Request 12187Fix TRS search if search term contains - Pull Request 12196
Allow leading whitespace in TRS search term Pull Request 12197
Add closing slash in tool schema documentation for
has_size
attribute (thanks to @bernt-matthias). Pull Request 12206Work around null hid Pull Request 12217
Assorted fixes to debugging documentation Pull Request 12218
Don’t let reports auto-create database tables Pull Request 12220
Small fixes for beta history panel. Pull Request 12228
Fix fugue pencil on old sharing not showing up correctly. Pull Request 12235
Fix string formatting bug in test interactor Pull Request 12253
Added check to install ‘fs.sshfs’ package (thanks to @kjetilkl). Pull Request 12269
Fix type of
page
andpage_limit
in Libraries Folder permissions (thanks to @OlegZharkov). Pull Request 12271Improve handling of unexpected values in is_empty_file Pull Request 12275
Beta history: Dataset Collection API fix for updating tags Pull Request 12286
Allow scrolling in autocomplete options, fix search word filtering Pull Request 12290
Add a GDPR-friendly user purge to pgcleanup Pull Request 12293
Fix admin user manage Pull Request 12295
Reword history import button text (thanks to @bernt-matthias). Pull Request 12304
Fix order of dataset instances in dataset collection Pull Request 12305
Fix recursive file list in posix remote files (thanks to @OlegZharkov). Pull Request 12307
Linter support for
format_source
in static collection elements (thanks to @bernt-matthias). Pull Request 12309Make authnz
end_session_endpoint
optional (thanks to @nuwang). Pull Request 12311Use workflow step title as defined in the workflow model Pull Request 12320
Gitlab Error report - Remove previously required urllib (thanks to @selten). Pull Request 12333
Identify tool by name, owner, toolshed (thanks to @pvanheus). Pull Request 12338
Fix for empty docker_volumes/singularity_volumes in job config Pull Request 12341
Fix up plugin_config module modifying configuration dictionaries. Pull Request 12354
Remove NetworkException catch clauses in iRODS object store (thanks to @kxk302). Pull Request 12363
Bump tensorflow from 2.5.0 to 2.5.1 in /lib/galaxy/dependencies Pull Request 12378
Added missing triggers package to galaxy data (thanks to @nuwang). Pull Request 12389
Fix hids, alignment, other style issues in beta history. Pull Request 12406
Fixes to selenium testing with beta history panel enabled. Pull Request 12407
Downgrade Cheetah3 to 3.2.6.post1 (thanks to @nsoranzo). Pull Request 12408
Install Tempita from a fork due to use_2to3 deprecation (thanks to @nsoranzo). Pull Request 12413
Fix flaky failing workflow editor selenium test. Pull Request 12423
Bump sqlparse from 0.4.1 to 0.4.2 in /lib/galaxy/dependencies Pull Request 12436
Fix keycloak user creation username handling. Pull Request 12444
Make Role description field optional (thanks to @davelopez). Pull Request 12447
Drop symlink to tool_conf.xml.main Pull Request 12451
Fix history contents API update batch with collections (thanks to @davelopez). Pull Request 12456
Remove default pagination in LibraryPopulator.get_permissions() (thanks to @davelopez). Pull Request 12463
Drop tool_name from dataset details Pull Request 12465
Strip whitespace on urls when uploading (thanks to @assuntad23). Pull Request 12474
Remove default value string from
/api/genomes
endpoint (thanks to @assuntad23). Pull Request 12481Explicitly set page_limit in test_get_library_available_permissions (thanks to @davelopez). Pull Request 12483
Update dataset edit toggle button to refer to dataset instead of coll… Pull Request 12485
Handle deleted panel views in the UI. Pull Request 12488
Fix bug when restarting Galaxy in selenium integration tests. Pull Request 12489
Remove invalid syntax from tool schema (thanks to @bernt-matthias). Pull Request 12494
Add PostgreSQL < 9.5 deprecation notice to 21.05 release announce (thanks to @nsoranzo). Pull Request 12496
Fix indention for admin panel links Pull Request 12497
Add profile that strips whitespace in from_work_dir outputs Pull Request 12536
Respect tool version in verify_tool Pull Request 12539
Catch datatype conversion exception and return proper error Pull Request 12561
Fix async controller Pull Request 12565
Fix scratchbook on dataset details pages (thanks to @OlegZharkov). Pull Request 12566
Drop special-casing of current Galaxy version for news webhook Pull Request 12579
Fix a small bug in Error summary Vue template. Pull Request 12581
Avoid uncaught exceptions when trying to set invalid tag names (thanks to @davelopez). Pull Request 12582
Fix job detail caching Pull Request 12586
Fix output state handling, disable connectivity for conditionals Pull Request 12591
Sync reset mapping with Node component map-over state Pull Request 12598
Remove Interactive Environments from Visualizations Pull Request 12599
Fix file source restrictions (thanks to @davelopez). Pull Request 12607
Fix branch for release notes (thanks to @hexylena). Pull Request 12615
Fix: encode all ids when returning a ldda in datasets API show operation (thanks to @davelopez). Pull Request 12616
Fix history export link copy Pull Request 12618
Fix collection replacement and job resuming when re-running single ma… Pull Request 12621
Allow users to retry tool job submissions if an error occurs Pull Request 12623
Restore overwritten styles Pull Request 12624
Allow empty truevalue for conditional test parameters Pull Request 12625
Dispose previously mounted Vue-components in Analysis router Pull Request 12627
Fix new user welcome styles Pull Request 12630
Fix id encoding in datasets API show method (thanks to @nsoranzo). Pull Request 12634
Add property to disable tool form Pull Request 12645
Move node update requests to workflow component Pull Request 12648
Fix directory_uri tool parameter validation error (thanks to @davelopez). Pull Request 12653
Ensure that tool installations use the default tool panel Pull Request 12655
Show loading error in tool form Pull Request 12669
Fix possible
None
in TokenContainedEvaluator (thanks to @davelopez). Pull Request 12675Reduce number of Tool Form requests in Workflow Editor, improve visibility of Tool Infos Pull Request 12702
Continue deleting dataset collection if member HDA has no history Pull Request 12722
Fix for PairedListCreator errant autopairing (thanks to @assuntad23). Pull Request 12727
Various show page PDF bug fixes. Pull Request 12728
Fix linter: Parameter validator needs no expression (thanks to @bernt-matthias). Pull Request 12733
Fix chrome scrolling on insert in markdown editor Pull Request 12737
Two fixes for linting (thanks to @bernt-matthias). Pull Request 12757
Prefer model class when it exists in grid sorting Pull Request 12758
Use default alert info instead of custom small info style Pull Request 12764
Drop legacy_expose_api from api/datasets Pull Request 12795
Use
post
instead ofput
to create copy of dataset collection Pull Request 12796Allow sessionless access to genomes API (thanks to @nsoranzo). Pull Request 12799
Fix wrong dataset details link Pull Request 12805
Disable library uploads using master API key Pull Request 12806
Add missing tool_ids to workflow invocation failure message (thanks to @simonbray). Pull Request 12823
Allow dataset and dataset collection deletion for anonymous users Pull Request 12817
Fix
from_work_dir
glob with extended metadata and pulsar Pull Request 12816Fix remote object store datasets not purged Pull Request 12815
Pin a resolution for ua-parser-js to 0.7.30 Pull Request 12827
Allow sessionless access to some datasets API endpoints (thanks to @nsoranzo). Pull Request 12830
To stay up to date with Galaxy’s progress, watch our screencasts; visit our community Hub; and follow us on Bluesky, Mastodon, and LinkedIn.
You can always chat with us on Matrix.
Thanks for using Galaxy!