diff --git a/.circleci/config.yml b/.circleci/config.yml index 7904c41fac3..a87c6269b74 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -135,6 +135,10 @@ jobs: <<: *set_workdir steps: - *restore_repo_cache + - run: sh scripts/common_startup.sh + - run: wget -q https://github.com/jmchilton/galaxy-downloads/raw/master/db_gx_rev_0127.sqlite + - run: mv db_gx_rev_0127.sqlite database/universe.sqlite + - run: sh manage_db.sh -c ./config/galaxy.yml.sample upgrade - *install_tox - run: tox -e py35-first_startup validate_test_tools: diff --git a/doc/source/admin/python.md b/doc/source/admin/python.md index 6209bebba8e..a8ef04c7669 100644 --- a/doc/source/admin/python.md +++ b/doc/source/admin/python.md @@ -21,8 +21,8 @@ If Galaxy complains about the version of Python you are using: 1. Make sure a supported version of Python is installed. 2. Verify that the Python interpreter you want to use is first in the output of `which -a python3 python` (or `which -a python` if you are - using Galaxy <=20.01). If this is not the case: - - If you are using Galaxy >= 20.05, just execute: + using Galaxy <=19.09). If this is not the case: + - If you are using Galaxy >= 20.01, just execute: `export GALAXY_PYTHON=/path/to/python` - If instead you are using an older version of Galaxy, you can manipulate your shell's `PATH` variable to place the correct version @@ -36,7 +36,13 @@ If Galaxy complains about the version of Python you are using: % export PATH=~/galaxy-python:$PATH ``` -4. Start Galaxy again. +4. Remove compiled mako templates when upgrading from Python 2: + ```sh + % rm -rf /path/to/galaxy/database/compiled_templates/ + ``` + These templated will be regenerated automatically when starting Galaxy. + +5. Start Galaxy again. N.B. If you have compiled your own Python interpreter from source, please ensure that the `ssl`, `sqlite3`, `curses` and `bz2` modules were built and can be @@ -45,4 +51,3 @@ compilation process and are required by the Galaxy framework. If building on Linux, you may need to install the appropriate `-dev` packages for OpenSSL and Bzip2. You may also need to build Python with shared libraries (`--enable-shared`). - diff --git a/doc/source/releases/20.01.rst b/doc/source/releases/20.01.rst new file mode 100644 index 00000000000..fffe8a32f5e --- /dev/null +++ b/doc/source/releases/20.01.rst @@ -0,0 +1,789 @@ + +.. to_doc + +20.01 +=============================== + +.. announce_start + +Enhancements +------------------------------- + +.. major_feature + + +.. feature + +* CLI tools for installing/testing Docker and Singularity containers + (thanks to `@simonbray `__). + `Pull Request 7936`_ +* Markdown-based Galaxy Pages. + `Pull Request 8512`_ +* Make Masthead and workflow page screenreader friendly + `Pull Request 8700`_ +* Add data dialog input element to client form parameter list + `Pull Request 8774`_ +* Add has_size option + (thanks to `@simonbray `__). + `Pull Request 8852`_ +* Email notifications on job completion + `Pull Request 8948`_ +* Make tours reloadable + `Pull Request 9032`_ +* Add a config option to allow customizing the brand title + `Pull Request 9062`_ +* IT fixes and 3 new ITs + `Pull Request 9141`_ +* Remove GenomeSpace tools, OpenID, UI and requirements + (thanks to `@nsoranzo `__). + `Pull Request 9363`_ + +.. enhancement_tag_viz + +* Hyphy-vision fixes and updates. + `Pull Request 9384`_ + +.. enhancement_tag_datatypes + +* Datatypes for MassSpec DIA dlib,elib + (thanks to `@jj-umn `__). + `Pull Request 8657`_ +* Add bus as binary, remove extra datatype + (thanks to `@astrovsky01 `__). + `Pull Request 8705`_ +* remove dada2_derep data type + (thanks to `@bernt-matthias `__). + `Pull Request 8902`_ +* Add new GROMACS datatypes: ndx, xvg, edr + (thanks to `@simonbray `__). + `Pull Request 8964`_ +* Add gff3.gz and gff3.bz2 datatypes + (thanks to `@FredericBGA `__). + `Pull Request 8967`_ +* Make mol2 visible + (thanks to `@galaxyproject `__). + `Pull Request 8995`_ +* Add a datatype subclass for CAT (Contig Annotation Tool) + (thanks to `@jj-umn `__). + `Pull Request 9087`_ +* Add tabular.gz datatype and add embl to uploadable formats + `Pull Request 9293`_ + +.. enhancement_tag_tools + +* Upgrade askomics interactive tool + (thanks to `@xgaia `__). + `Pull Request 8517`_ +* Remove collection ID character restriction from 'Relabel collection from file' tool + (thanks to `@brinkmanlab `__). + `Pull Request 8571`_ +* Allow space, dot and comma in relabel identifier tool + `Pull Request 8757`_ +* Fix script shebangs + (thanks to `@nsoranzo `__). + `Pull Request 8888`_ +* Allow admins to import tools/workflows from paths. + `Pull Request 9003`_ +* Move sam_pileup to GALAXY_LIB_TOOLS_VERSIONED + `Pull Request 9320`_ + +.. enhancement_tag_workflows + +* Interactive modification of invocation report. + `Pull Request 8691`_ +* User-facing Workflow Invocation Grid + `Pull Request 8699`_ +* PDF Export of Galaxy Markdown + `Pull Request 8893`_ +* Refactor some workflow editor plumbing to VueJS + `Pull Request 8931`_ +* Track non-history content outputs. + `Pull Request 9009`_ +* Default format 2 workflows to be downloaded as YAML. + `Pull Request 9023`_ +* Even Richer Workflow Inputs + `Pull Request 9086`_ +* Separate Markdown Validation into its own module. + `Pull Request 9099`_ +* add option select_type_workflow_threshold (rebase) + `Pull Request 9105`_ + +.. enhancement_tag_ui + +* Upgrade eslint (major version), fix compliance with new standard rules. + `Pull Request 8708`_ +* JobMetrics.vue unit test. + `Pull Request 8732`_ +* Fix the flexible Data Dialog to work independent of the page layout initialization hooks. + `Pull Request 8744`_ +* axios-mock-adapter for cleaner, more expansive testing + `Pull Request 8749`_ +* Added client-side application configs for each target environment + `Pull Request 8827`_ + +.. enhancement_tag_jobs + +* Small cleanup for job runners kill + (thanks to `@nsoranzo `__). + `Pull Request 8523`_ +* Improvements to Galaxy and Pulsar job execution + `Pull Request 8625`_ +* Allow assigning UUID job ids with Pulsar in MQ mode. + `Pull Request 8718`_ +* Do not re-compute job input_ext/dbkey in job finish. + `Pull Request 8910`_ +* Implement extended job metadata collection + `Pull Request 8930`_ +* Move Jobs updated time display logic to client. + `Pull Request 8943`_ +* Implement extended job metadata collection + fixes + `Pull Request 8984`_ +* Place version output file in a writable directory for containerized jobs. + `Pull Request 8997`_ +* Fix deletion of outputs and working before job + `Pull Request 9245`_ +* Mount tool_data_path (ro) when running containerized tools + `Pull Request 9314`_ +* Allow remote jobs to configure Interactive Tool entry points. + `Pull Request 9349`_ + +.. enhancement_tag_admin + +* Add Tool Manager Component for Admin Panel + `Pull Request 8601`_ +* Add process ID to worker_process table + (thanks to `@selten `__). + `Pull Request 8972`_ + +.. enhancement + +* Use official "login with" buttons for OIDC + (thanks to `@hexylena `__). + `Pull Request 8107`_, `Pull Request 9102`_ +* Add data types to docs.galaxyproject.org + (thanks to `@selten `__). + `Pull Request 8531`_ +* python-ldap python3 update and documentation change + (thanks to `@selten `__). + `Pull Request 8618`_ +* GitLab error reporting + (thanks to `@selten `__). + `Pull Request 8620`_ +* Extend the list of attributes to be reported. + `Pull Request 8661`_ +* Have CI ensure client PRs are formatted. + `Pull Request 8662`_ +* Add area/configuration label + `Pull Request 8665`_ +* Update BootstrapVue to 2.0.1 + `Pull Request 8666`_ +* add .gitattributes file and normalize line endings to use LF in… + `Pull Request 8677`_ +* Improve CI reliability by annotating external resources. + `Pull Request 8678`_ +* Restrict `/api/histories/shared_with_me` to logged-in users + (thanks to `@nsoranzo `__). + `Pull Request 8685`_ +* Automate path resolution for config options + `Pull Request 8689`_ +* Remove unused Docker Swarm options + (thanks to `@nsoranzo `__). + `Pull Request 8690`_ +* LDAP search member of filter + (thanks to `@BioinformaticsPlatformWIV-ISP `__). + `Pull Request 8697`_ +* Rebuild and prettify config sample and doc + (thanks to `@nsoranzo `__). + `Pull Request 8713`_ +* Update zh/locale.js + (thanks to `@shenweiyan `__). + `Pull Request 8725`_ +* Start using path_resolves_to; add integration tests + `Pull Request 8737`_ +* Significant overhaul to container+dependency management + `Pull Request 8741`_ +* Multi subdomains cookie support + (thanks to `@julozi `__). + `Pull Request 8746`_ +* One test case to rule them all + `Pull Request 8793`_ +* Allow recording more performance statistics to statsd. + `Pull Request 8800`_ +* Add installation monitor popup to toolshed client + `Pull Request 8810`_ +* General server dependency updates (was/including catalina fix) + `Pull Request 8843`_ +* Add badge to indicate availability of a newer toolshed repository version + `Pull Request 8860`_ +* Add config options to integration test for abs path + `Pull Request 8862`_ +* Make message_box style and visible options reloadable + `Pull Request 8863`_ +* Remove 'area/cleanup', edit 'kind/refactoring' + `Pull Request 8874`_ +* Unpin bdbag. + `Pull Request 8883`_ +* Add separate knob for masthead colors + `Pull Request 8904`_ +* Refactor galaxy_install and required dependencies into Galaxy's namespace. + `Pull Request 8905`_ +* Enable interactivetools with other beta tools... + `Pull Request 8913`_ +* Simplify logo replacement, fix height and alignment + `Pull Request 8914`_ +* Simplify Python deps installation in `testing-base` Dockerfile + (thanks to `@nsoranzo `__). + `Pull Request 8921`_ +* Config: drop redundant `template_cache` attribute + (thanks to `@nsoranzo `__). + `Pull Request 8924`_ +* Enable secondary authorization + `Pull Request 8926`_ +* Set up a cache dir for pip when running tests with Docker + (thanks to `@nsoranzo `__). + `Pull Request 8929`_ +* Add link for interactive tools + (thanks to `@anuprulez `__). + `Pull Request 8936`_ +* Remove deprecated tool dependency scripts. + `Pull Request 8955`_ +* Remove tool shed API examples. + `Pull Request 8956`_ +* Remove script for migrating tools to the tool shed... + `Pull Request 8957`_ +* Move galaxy testing utilities into cleaner package structure. + `Pull Request 8960`_ +* Create packages for Galaxy tests and infrastructure. + `Pull Request 8962`_ +* Remove workflow support from tool shed. + `Pull Request 8978`_ +* Remove capsule feature from tool shed. + `Pull Request 8979`_ +* trim long ldda messages; improve fluid media css + `Pull Request 9000`_ +* Expose python version in api/config + (thanks to `@hexylena `__). + `Pull Request 9010`_ +* Hot module reloading using webpack-dev-server for client dev + `Pull Request 9029`_ +* when building ts index log parse errors at debug level + `Pull Request 9033`_ +* Update quickstart.rst + (thanks to `@galaxyproject `__). + `Pull Request 9044`_ +* Add Sergey Golitsynskiy to committers group + `Pull Request 9056`_ +* Update Mercurial to Py3-compatible v5.2, and all other deps + (thanks to `@nsoranzo `__). + `Pull Request 9065`_ +* Automatically redirect to OIDC provider when only auth option + (thanks to `@machristie `__). + `Pull Request 9115`_ +* Automatically use extended-base-image if necessary + `Pull Request 9116`_ +* Add HMR to client readme. + `Pull Request 9121`_ +* Add admin functionality to histories API + (thanks to `@thomcuddihy `__). + `Pull Request 9124`_ +* Don't break generated reStructuredText and YAML on hyphens + (thanks to `@nsoranzo `__). + `Pull Request 9128`_ +* mulled: use threading.Event in PrintProgress to avoid unnecessary wai… + `Pull Request 9163`_ +* Set Conda environment variables when running biocontainers + `Pull Request 9170`_ +* Update my username + (thanks to `@hexylena `__). + `Pull Request 9195`_ +* Add base_image column to mulled-build-files + `Pull Request 9199`_ +* Allow passing conda_context to any_target_requires_extended_base + `Pull Request 9202`_ +* Backport 9175: Update galaxy.tool_util.cwl for latest changes in CWL branch. + `Pull Request 9210`_ +* Extended base annotation fixes + `Pull Request 9224`_ +* External auth login refinement + `Pull Request 9233`_ +* Fixes for IGV GEDA handling of genomes + `Pull Request 9413`_ + +.. small_enhancement + +* Factor out yaml read/write from config_manage.py + `Pull Request 8509`_ +* Implementation of the workflow list as vue component + `Pull Request 8551`_ +* Refactor config loading + `Pull Request 8573`_ +* Change reloadable config + misc cleanup + `Pull Request 8600`_ +* Case-insensitive match user-supplied email when logging in + (thanks to `@nsoranzo `__). + `Pull Request 8631`_ +* Modify schema defaults and their loading + `Pull Request 8639`_ +* Replace resolve_path() with os.path.join() + `Pull Request 8646`_ +* Simplify config code (minor edits) + `Pull Request 8648`_ +* Refactor/cleanup config loading (misc edits) + `Pull Request 8651`_ +* Remove unused Tags file since it was converted to a Vue component + `Pull Request 8722`_ +* Update slot syntax to v-slot across the board. + `Pull Request 8730`_ +* Remove deprecated Toolshed API endpoints + `Pull Request 8734`_ +* Client build process refinement + `Pull Request 8742`_ +* Add vue component and endpoint to reset repository metadata + `Pull Request 8754`_ +* Cleanup SQL query in ``_calculate_or_set_disk_usage()`` + (thanks to `@nsoranzo `__). + `Pull Request 8776`_ +* Drop DetachedInstanceError workaround + `Pull Request 8785`_ +* Simplify code for expand_meta_parameters + (thanks to `@qiagu `__). + `Pull Request 8794`_ +* Convert User Preferences page to Vue Component + `Pull Request 8803`_ +* client-side current user store module + `Pull Request 8813`_ +* Refactor database_connection config loading + `Pull Request 8855`_ +* Refactor default_locale config option; test + `Pull Request 8856`_ +* Refactor infrastructure_url/port values; fix tests + `Pull Request 8857`_ +* Refactor pretty-datatime_format config loading + `Pull Request 8858`_ +* Fix misc. integration tests for config values + `Pull Request 8859`_ +* Do not specify None as default in dict.get() + `Pull Request 8865`_ +* Delete 'resolve path' integration tests + `Pull Request 8870`_ +* Do not raise Exception to manage control flow + `Pull Request 8876`_ +* Eliminate interactive debugging middleware + `Pull Request 8877`_ +* Normalize myexperiment_target_url / myexperiment_url + `Pull Request 8882`_ +* Do not override schema defaults if they exist + `Pull Request 8884`_ +* Use schema defaults in galaxy masthead + `Pull Request 8885`_ +* Cleanup config loading (minor fixes) + `Pull Request 8890`_ +* Refactor _set_config_base; fix config_dir value + `Pull Request 8915`_ +* Library tags tweaks and tests + `Pull Request 8947`_ +* Refactor Toolshed webapp into tool_shed package. + `Pull Request 8949`_ +* Separate Shed and Galaxy makos, package shed makos. + `Pull Request 8958`_ +* Remove admin tool shed controller code (Part 1) + `Pull Request 8988`_ +* Remove unused helper code from twilltestcase. + `Pull Request 8989`_ +* Fix tool image loading (was broken due to failing repo dir resolution) + `Pull Request 9006`_ +* Convert Custom builds vue + `Pull Request 9016`_ +* Implement datasets grid as vue component + `Pull Request 9018`_ +* remove unused toolshed template code + `Pull Request 9084`_ +* Default the authnz_manager to None + `Pull Request 9117`_ +* Update github username @erasche to @hexylena and correct inconsistencies + (thanks to `@hexylena `__). + `Pull Request 9194`_ +* Add requirements, fix legacy tools and move them out of GALAXY_LIB_TOOLS_UNVERSIONED + `Pull Request 9336`_ +* Add requirements to (almost) all converters, profile and minor fixes + `Pull Request 9345`_ + + +Fixes +------------------------------- + +.. major_bug + + +.. bug_tag_viz + +* Wrap SQL statement in a text() function as required by sqlalchemy + (thanks to `@kaukrise `__). + `Pull Request 9216`_ +* Ensure visible overflow on navbar container + (thanks to `@kaukrise `__). + `Pull Request 9217`_ +* Various python 3 fixes from sentry + `Pull Request 9337`_ + +.. bug_tag_datatypes + +* Fix cool sniffing on python3 + `Pull Request 9153`_ +* Fix `SearchGuiArchive.set_meta()` + (thanks to `@bernt-matthias `__). + `Pull Request 9437`_ + +.. bug_tag_tools + +* grouping: strip newlines + (thanks to `@bernt-matthias `__). + `Pull Request 8953`_ +* Add requirements to interval_to_bed_converter.xml + `Pull Request 9041`_ +* Fix version in which ``sam_pileup`` was fixed + (thanks to `@nsoranzo `__). + `Pull Request 9350`_ +* Expunge tool shed repository objects, prevents ParentInstanceDetachedError + `Pull Request 9354`_ +* Fix maf tools + `Pull Request 9393`_ + +.. bug_tag_workflows + +* Exports reports with workflows (if configured). + `Pull Request 9055`_ +* Rev gxformat2 dependency to fix various export issues. + `Pull Request 9075`_ +* Fix workflow editor save as functionality + `Pull Request 9315`_ +* Various fixes and enhancements to reports + `Pull Request 9316`_ + +.. bug_tag_jobs + +* Small fixes for k8s. + `Pull Request 8759`_ +* Fix output.file_path writing to read-only path on Docker + `Pull Request 9048`_ +* Add job home to writable paths + `Pull Request 9051`_ +* Fix LocalShell returncode + `Pull Request 9171`_ +* Fix: Added support for specifying k8s job pod priority class + (thanks to `@nuwang `__). + `Pull Request 9219`_ +* Fix: Added support for specifying k8s job affinity and tolerations + (thanks to `@nuwang `__). + `Pull Request 9225`_ +* Mount job_working_directory/configs rw + `Pull Request 9234`_ +* Limit async hack to async tools + `Pull Request 9242`_ +* Fix moving of data manager output for entries + `Pull Request 9243`_ +* python3 fixes for setups using drmaa and realuser setups + (thanks to `@bernt-matthias `__). + `Pull Request 9246`_, `Pull Request 9253`_ +* Email notifications aren't used from just workflow steps anymore. + `Pull Request 9276`_ +* Use requests for slots instead of limit + (thanks to `@nuwang `__). + `Pull Request 9322`_ +* Make set metadata exec after process more robust + `Pull Request 9395`_ +* Make dataset discovery respect final_job_state + `Pull Request 9406`_ +* Strip unicode null characters from traceback and job_messages + `Pull Request 9430`_ + +.. bug_tag_admin + +* Encode lines in filter_file_fields + (thanks to `@selten `__). + `Pull Request 8652`_ +* Git error reporting - bug fixes and better error handling + (thanks to `@selten `__). + `Pull Request 8900`_ +* Assorted admin panel fixes + `Pull Request 9097`_ +* Run integration tests on github, fix various bugs (interactive tools, kubernetes, test framework) + `Pull Request 9193`_ +* Always add shed_tool_config file to tool_configs + `Pull Request 9364`_ + +.. bug + +* Documentation update + (thanks to `@selten `__). + `Pull Request 8508`_ +* Asynchronous data source: unable to create the file + (thanks to `@FredericBGA `__). + `Pull Request 8515`_ +* OIDC config patch + (thanks to `@almahmoud `__). + `Pull Request 8572`_ +* set uwsgi umask default + (thanks to `@bernt-matthias `__). + `Pull Request 8581`_ +* Fix `test_validate_simple_config` unit test + (thanks to `@nsoranzo `__). + `Pull Request 8632`_ +* Fix a bug that occurs while installing a data manager. + (thanks to `@selten `__). + `Pull Request 8634`_ +* Fix bug in build_dependency_manager() + `Pull Request 8660`_ +* Get rid of fix timeout in admin app Selenium test. + `Pull Request 8667`_ +* More robust login/logout with Selenium. + `Pull Request 8676`_ +* Fixes for BootstrapVue Tables + `Pull Request 8684`_ +* More bootstrap vue upgrade fixes. + `Pull Request 8692`_ +* GRT: Ensure correct encoding, no partial lines + (thanks to `@hexylena `__). + `Pull Request 8712`_ +* Revise toolshed config dependency check error message in repository install manager + `Pull Request 8720`_ +* Fix data dialog height, modal test case and table slots + `Pull Request 8724`_ +* Do not overwrite existing attributes + `Pull Request 8728`_ +* Replace hardcoded configuration + `Pull Request 8731`_ +* Fix `new_secure_hash()` when passed an empty string + (thanks to `@nsoranzo `__). + `Pull Request 8739`_ +* data_manager_conf.xml.sample is missing + (thanks to `@lecorguille `__). + `Pull Request 8784`_ +* Revert "[19.09] Fix detached parent instance error in 8769" + (thanks to `@galaxyproject `__). + `Pull Request 8791`_ +* Handles k8s job recently created with no status set yet + (thanks to `@pcm32 `__). + `Pull Request 8799`_ +* Add postcss-loader and autoprefixer dependencies + `Pull Request 8821`_ +* LDAP fixes + (thanks to `@nsoranzo `__). + `Pull Request 8823`_ +* Ensure app.config.config_file is an absolute path + `Pull Request 8836`_ +* Fix rare bug in config loading + add unit test + `Pull Request 8837`_ +* fix plugin name + (thanks to `@gmauro `__). + `Pull Request 8840`_ +* Restore portlet section style for repeat blocks + `Pull Request 8864`_ +* Prevent potential bug in config loading; test + `Pull Request 8866`_ +* Fix authnz manager's oidc config parsing for python3 + `Pull Request 8871`_ +* Update check_py3_compatibility script for new ack versions. + `Pull Request 8872`_ +* If config_file is None, use cwd, not its parent + `Pull Request 8894`_ +* Log LDAP authenticate exceptions at the right level + (thanks to `@nsoranzo `__). + `Pull Request 8907`_ +* make pgcleanup also delete HDAs + (thanks to `@bernt-matthias `__). + `Pull Request 8908`_ +* Fix unbounded variable error in `GET /api/datasets/{encoded_dataset_id}` exception handling + `Pull Request 8935`_ +* Set `deleted` attribute of history datasets when purging histories from grid + (thanks to `@nsoranzo `__). + `Pull Request 8940`_ +* Fix default logo path in configuration manager + `Pull Request 8941`_ +* Fix API decorator order + (thanks to `@nsoranzo `__). + `Pull Request 9015`_ +* do not use var from inner scope + `Pull Request 9026`_ +* escape double hyphen in IT sample config, making it valid XML + `Pull Request 9034`_ +* Fix input parameter comparisons + `Pull Request 9047`_ +* Restore casting a boolean param to str when comparing with one + (thanks to `@nsoranzo `__). + `Pull Request 9052`_ +* Fix comparison if parameter is optional and value is not provided + `Pull Request 9054`_ +* Small refactor of ``InputValueWrapper`` comparison methods + (thanks to `@nsoranzo `__). + `Pull Request 9059`_ +* Add create_time to the signature of Repository constructor. + `Pull Request 9063`_ +* Listify value for multiple SelectToolParameterWrapper + (thanks to `@nsoranzo `__). + `Pull Request 9067`_ +* Use newer psycopg2 conditional requirement for wheels on 3.7 + `Pull Request 9068`_ +* Fix mulled version comparison + `Pull Request 9078`_ +* linter: accept outputs with auto_format only + (thanks to `@bernt-matthias `__). + `Pull Request 9081`_ +* Create temporary files for cgi.FieldsStorage with delete=False + `Pull Request 9082`_ +* Fix importing a directory from user_library_import_dir + (thanks to `@nsoranzo `__). + `Pull Request 9090`_ +* Make callbacks for tour and config watchers a control task + `Pull Request 9092`_ +* Don't watch tool files through watchdog + `Pull Request 9094`_ +* Allow html in registration warning message. + `Pull Request 9098`_ +* Admin job info display fix + `Pull Request 9120`_ +* Client build readme followup + `Pull Request 9122`_ +* Fix mulled cache/data locations, rebuild schema + `Pull Request 9125`_ +* More fixes for publishing decomposed packages. + `Pull Request 9126`_ +* fix url for workflow sharing + `Pull Request 9132`_ +* Add click prevent to workflow list dropdowns + `Pull Request 9133`_ +* Remove legacy admin panel entry for installation monitor, fix typo + `Pull Request 9134`_ +* Parse brand label option in legacy mako + `Pull Request 9136`_ +* Restore returning "None" when casting unselected multiselect param to str + (thanks to `@nsoranzo `__). + `Pull Request 9144`_ +* Misc fixes + (thanks to `@nsoranzo `__). + `Pull Request 9145`_ +* Add implementation of `parse_interactivetool` to `CwlToolSource` class + (thanks to `@nsoranzo `__). + `Pull Request 9146`_ +* Fix optional unset integer and float params + `Pull Request 9149`_ +* Assorted OIDC fixes + `Pull Request 9150`_ +* Cast to None for optional params if not comparing strings + `Pull Request 9156`_ +* Ensure that users have a private role before login + `Pull Request 9168`_ +* Add static-safe mapping to config management + `Pull Request 9179`_ +* Fix tool shed tests for `#9168 `__. + `Pull Request 9182`_ +* Add require_login bypass for entire authnz controller. + `Pull Request 9192`_ +* Fix runtime error in ToolConfWatcher + `Pull Request 9212`_ +* Fix extended base for singularity and add base_image_for_targets + `Pull Request 9215`_ +* More mulled-build-files fixes + `Pull Request 9228`_ +* Fix mailto hrefs in menus + `Pull Request 9232`_ +* Move meme_fimo out of unversioned lib tools + `Pull Request 9237`_ +* Fallback to binary download if header lies about content encoding + `Pull Request 9239`_ +* Fix lint warning string formatting + `Pull Request 9240`_ +* Fix unselected select parameter comparison to empty string + `Pull Request 9260`_ +* Fix iteritems use in build_from_current_history.mako + `Pull Request 9266`_ +* Fix suffix for single target mulled builds + `Pull Request 9267`_ +* backport 9268: Fix target_str_to_targets + `Pull Request 9269`_ +* Backwards compatible build number parsing + `Pull Request 9278`_ +* Tag display fixes for ui-select. + `Pull Request 9281`_ +* Python3: don't check for has_key attribute + (thanks to `@nsoranzo `__). + `Pull Request 9290`_ +* Prevent caching of bootstrapped client data + `Pull Request 9294`_ +* Add build_sites_config_file option to config_schema + `Pull Request 9297`_ +* Backport reports config/py3 fix + `Pull Request 9309`_ +* Python3: unicodify the output of ``subprocess.check_output()`` + (thanks to `@nsoranzo `__). + `Pull Request 9319`_ +* Fix reports disk usage query for python 3 + `Pull Request 9321`_ +* Fix string module use + `Pull Request 9327`_ +* Fix Python 3 error in containers lib + `Pull Request 9329`_ +* Fix use of next() as a meethod instead of a function + `Pull Request 9330`_ +* Automatically resolve and add static-safe mappings for client-based images + `Pull Request 9331`_ +* Various doc fixes + (thanks to `@nsoranzo `__). + `Pull Request 9334`_ +* Fix app reference in guess_shed_config + `Pull Request 9339`_ +* Make linters more robust on python 3 + `Pull Request 9348`_ +* Use RenamedTemporaryFile for safer integrated_tool_panel_file writing + `Pull Request 9359`_ +* Only get non-deleted datasets when listing custom dbkeys + `Pull Request 9360`_ +* Prevent duplicate listing of doi link and link (text, with href doi link) + `Pull Request 9366`_ +* Styleguide fixes + `Pull Request 9367`_ +* Prevent tool execution getting stuck in history when a chromInfo data… + `Pull Request 9385`_ +* Move migrated_tools_conf > mutable_config_dir (`#9376 `__) + `Pull Request 9388`_ +* Fix dependency for CONVERTER_tar_to_directory + `Pull Request 9389`_ +* Fix for qp method used in GEDAs. + `Pull Request 9391`_ +* Fix hid comparison failing with hdas without hid + `Pull Request 9398`_ +* Don't raise exception if anon goes to /user/resend_verification + `Pull Request 9404`_ +* Update bleach to 3.1.1 + (thanks to `@nsoranzo `__). + `Pull Request 9408`_ +* Fix shed image resolution + `Pull Request 9411`_ +* Fixes for get_estimated_display_viewport + `Pull Request 9415`_ +* Fix wrong map use in many places + `Pull Request 9416`_ +* Conda startup fixes + (thanks to `@nsoranzo `__). + `Pull Request 9421`_ +* fix two cases of opening a file binary + (thanks to `@bernt-matthias `__). + `Pull Request 9424`_ +* Remove '.sample' from default value; rebuild schema + `Pull Request 9427`_ +* Fix login to accounts using different email capitalization + `Pull Request 9432`_ +* Fix TwoBitFile handle not opened in binary mode + `Pull Request 9433`_ +* Fix uploading workflow archives + `Pull Request 9434`_ +* Fix to_dict for upload1 tool + `Pull Request 9441`_ +* Fix data tables vue display + `Pull Request 9442`_ +* Fix `UserManager.get_reset_token()` after `#9432 `__ + (thanks to `@nsoranzo `__). + `Pull Request 9446`_ + +.. include:: 20.01_prs.rst + diff --git a/doc/source/releases/20.01_announce.rst b/doc/source/releases/20.01_announce.rst index 2c7a6a98ff5..cc8ff3f0c7a 100644 --- a/doc/source/releases/20.01_announce.rst +++ b/doc/source/releases/20.01_announce.rst @@ -3,8 +3,77 @@ January 2020 Galaxy Release (v 20.01) =========================================================== +.. include:: _header.rst -Schedule +Highlights =========================================================== - * Planned Freeze Date: 2020-01-06 - * Planned Release Date: 2020-01-27 + +**Enhanced workflow functionality** + Workflows can now make use of optional datasets and optional parameters, + optional parameter default values and dataset inputs can now be restricted to + user-defined datatypes. The workflow editor and execution engine have been + enhanced to allow defining options to choose from, and these options can be + connected to compatible text, integer, float, color and select tool parameters + for more flexible and universally re-usable workflows (`Pull Request 9086`_). + +**Major update to container and dependency management interface** + The manage dependencies interface has been ported to vue.js and displays + additional information about installed, missing and available dependencies + and conveniently summarizes dependency status for all installed tools. + Additionally the user interface now displays whether a `Biocontainers `__ image + is available at `quay.io `__ (`Pull Request 8741`_). + +**Extended job metadata collection** + Creating Job metadata has been reworked so that the dataset transfer that + occurs after a Galaxy job can be initiated by the compute node that runs a + Galaxy job. Previously the transfer was often done by Galaxy. Offloading this + task to the compute node should allow handling many more jobs in parallel. This + work will also make jobs running on remote compute resources much more + efficient if the remote resources can write to Galaxy's object store. To + benefit from this new metadata setting Galaxy needs to use object stores that + use uuids for storing datasets and set the ``metadata_strategy`` configuration + value to ``extended``. This feature is in beta testing, but work is ongoing to + mix existing object store configuration and choose the most efficient way of + transfering datasets automatically (`Pull Request 8930`_ ). + + +Also check out the `20.01 user release notes `__ + +Get Galaxy +========== + +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_20.01 https://github.com/galaxyproject/galaxy.git + +To update an existing Galaxy repository run: + .. code-block:: shell + + $ git fetch origin && git checkout release_20.01 && git pull --ff-only origin release_20.01 + +See the `community hub `__ for additional details regarding the source code locations. + +Updates to Tools and Converters in the Galaxy distribution +========================================================== + +Many tools and Converters have been updated in the 20.01 release. +As a consequence deployers need to install dependencies for these in the +Admin Menu -> Manage Dependencies. + +Deprecation Notice +================== + +With the release of Galaxy 20.01 we strongly encourage all deployers to run Galaxy under Python 3. +For instructions on how to transition to Python 3 please see `here `__. + + +Release Notes +=========================================================== + +.. include:: 20.01.rst + :start-after: announce_start + +.. include:: _thanks.rst diff --git a/doc/source/releases/20.01_announce_user.rst b/doc/source/releases/20.01_announce_user.rst new file mode 100644 index 00000000000..62da797d5e9 --- /dev/null +++ b/doc/source/releases/20.01_announce_user.rst @@ -0,0 +1,138 @@ + +=========================================================== +January 2020 Galaxy Release (v 20.01) +=========================================================== + +.. include:: _header.rst + +Highlights +=========================================================== + +**Workflow Executions Menu** + This menu can be reached from the User menu -> Workflow Invocations + and lists your recent Workflow executions, their status and links + to the Workflow Editor and the History with the results of the + Workflow run. + +.. figure:: https://user-images.githubusercontent.com/216771/65520097-0a041f80-deb5-11e9-80ac-2557b36c252f.png + :alt: Workflow invocation menu + :width: 400px + +.. figure:: https://user-images.githubusercontent.com/6804901/73737075-345ac900-4742-11ea-9f50-0f0e4c3d9271.png + :alt: Workflow invocatios + +**Galay Markdown Pages and Workflow Reports as PDF** + An additional link has been added to Galaxy Markdown Pages and Workflow reports + that exports your document as a standalone PDF. + +.. figure:: https://user-images.githubusercontent.com/6804901/73776256-b7524280-4787-11ea-821f-d9a8c6339ee9.png + :alt: Example PDF export + +**Screenreader-friendly Navigation** + The top menu and the Workflow Editor have been improved for easier navigation + using Screenreaders and the Keyboard. + Thanks goes to `@WilliamHolden `__ + +**Email-notification for completed jobs** + You can now select to be notified by email when a tool run has finished. + Thanks goes to `@astrovsky01 `__ + +.. figure:: https://user-images.githubusercontent.com/6804901/73779180-a2c47900-478c-11ea-98ab-7355276b6f6d.png + :alt: Example of email button + :width: 300px + +New Visualizations +=========================================================== + +.. visualizations + +* Add data dialog input element to client form parameter list + `Pull Request 8774`_ +* Wrap SQL statement in a text() function as required by sqlalchemy + (thanks to `@kaukrise `__). + `Pull Request 9216`_ +* Ensure visible overflow on navbar container + (thanks to `@kaukrise `__). + `Pull Request 9217`_ + +New Datatypes +=========================================================== + +.. datatypes + +* Datatypes for MassSpec DIA dlib,elib + (thanks to `@jj-umn `__). + `Pull Request 8657`_ +* Add bus as binary, remove extra datatype + (thanks to `@astrovsky01 `__). + `Pull Request 8705`_ +* remove dada2_derep data type + (thanks to `@bernt-matthias `__). + `Pull Request 8902`_ +* Add new GROMACS datatypes: ndx, xvg, edr + (thanks to `@simonbray `__). + `Pull Request 8964`_ +* add gff3.gz and gff3.bz2 datatypes + (thanks to `@FredericBGA `__). + `Pull Request 8967`_ +* Make mol2 visible + (thanks to `@galaxyproject `__). + `Pull Request 8995`_ +* Add a datatype subclass for CAT (Contig Annotation Tool) + (thanks to `@jj-umn `__). + `Pull Request 9087`_ +* Fix cool sniffing on python3 + `Pull Request 9153`_ +* Allow tabular.gz / add embl to uploadable formats + `Pull Request 9293`_ + +Builtin Tool Updates +=========================================================== + +.. tools + +* Upgrade askomics interactive tool + (thanks to `@xgaia `__). + `Pull Request 8517`_ +* Remove collection ID character restriction from 'Relabel collection from file' tool + (thanks to `@brinkmanlab `__). + `Pull Request 8571`_ +* Allow space, dot and comma in relabel identifier tool + `Pull Request 8757`_ +* Fix script shebangs + (thanks to `@nsoranzo `__). + `Pull Request 8888`_ +* grouping: strip newlines + (thanks to `@bernt-matthias `__). + `Pull Request 8953`_ +* Allow admins to import tools/workflows from paths. + `Pull Request 9003`_ +* Add requirements to interval_to_bed_converter.xml + `Pull Request 9041`_ +* Move sam_pileup to GALAXY_LIB_TOOLS_VERSIONED + `Pull Request 9320`_ +* Add requirements, fix legacy tools and move them out of GALAXY_LIB_TOOLS_UNVERSIONED + `Pull Request 9336`_ +* Add requirements to (almost) all converters, profile and minor fixes + `Pull Request 9345`_ +* Fix version in which ``sam_pileup`` was fixed + (thanks to `@nsoranzo `__). + `Pull Request 9350`_ +* Expunge tool shed repository objects, prevents ParentInstanceDetachedError + `Pull Request 9354`_ +* Remove GenomeSpace tools, OpenID, UI and requirements + (thanks to `@nsoranzo `__). + `Pull Request 9363`_ +* Fix maf tools + `Pull Request 9393`_ +* XML fix for joiner.xml. + `Pull Request 9399`_ + +Release Notes +=========================================================== + +Please see the `full release notes <20.01_announce.html>`_ for more details. + +.. include:: 20.01_prs.rst + +.. include:: _thanks.rst diff --git a/doc/source/releases/20.01_prs.rst b/doc/source/releases/20.01_prs.rst new file mode 100644 index 00000000000..0a6d9e4ee35 --- /dev/null +++ b/doc/source/releases/20.01_prs.rst @@ -0,0 +1,343 @@ + +.. github_links +.. _Pull Request 7936: https://github.com/galaxyproject/galaxy/pull/7936 +.. _Pull Request 8107: https://github.com/galaxyproject/galaxy/pull/8107 +.. _Pull Request 8508: https://github.com/galaxyproject/galaxy/pull/8508 +.. _Pull Request 8509: https://github.com/galaxyproject/galaxy/pull/8509 +.. _Pull Request 8512: https://github.com/galaxyproject/galaxy/pull/8512 +.. _Pull Request 8515: https://github.com/galaxyproject/galaxy/pull/8515 +.. _Pull Request 8517: https://github.com/galaxyproject/galaxy/pull/8517 +.. _Pull Request 8523: https://github.com/galaxyproject/galaxy/pull/8523 +.. _Pull Request 8531: https://github.com/galaxyproject/galaxy/pull/8531 +.. _Pull Request 8551: https://github.com/galaxyproject/galaxy/pull/8551 +.. _Pull Request 8571: https://github.com/galaxyproject/galaxy/pull/8571 +.. _Pull Request 8572: https://github.com/galaxyproject/galaxy/pull/8572 +.. _Pull Request 8573: https://github.com/galaxyproject/galaxy/pull/8573 +.. _Pull Request 8581: https://github.com/galaxyproject/galaxy/pull/8581 +.. _Pull Request 8600: https://github.com/galaxyproject/galaxy/pull/8600 +.. _Pull Request 8601: https://github.com/galaxyproject/galaxy/pull/8601 +.. _Pull Request 8618: https://github.com/galaxyproject/galaxy/pull/8618 +.. _Pull Request 8620: https://github.com/galaxyproject/galaxy/pull/8620 +.. _Pull Request 8625: https://github.com/galaxyproject/galaxy/pull/8625 +.. _Pull Request 8631: https://github.com/galaxyproject/galaxy/pull/8631 +.. _Pull Request 8632: https://github.com/galaxyproject/galaxy/pull/8632 +.. _Pull Request 8634: https://github.com/galaxyproject/galaxy/pull/8634 +.. _Pull Request 8639: https://github.com/galaxyproject/galaxy/pull/8639 +.. _Pull Request 8646: https://github.com/galaxyproject/galaxy/pull/8646 +.. _Pull Request 8648: https://github.com/galaxyproject/galaxy/pull/8648 +.. _Pull Request 8651: https://github.com/galaxyproject/galaxy/pull/8651 +.. _Pull Request 8652: https://github.com/galaxyproject/galaxy/pull/8652 +.. _Pull Request 8657: https://github.com/galaxyproject/galaxy/pull/8657 +.. _Pull Request 8660: https://github.com/galaxyproject/galaxy/pull/8660 +.. _Pull Request 8661: https://github.com/galaxyproject/galaxy/pull/8661 +.. _Pull Request 8662: https://github.com/galaxyproject/galaxy/pull/8662 +.. _Pull Request 8665: https://github.com/galaxyproject/galaxy/pull/8665 +.. _Pull Request 8666: https://github.com/galaxyproject/galaxy/pull/8666 +.. _Pull Request 8667: https://github.com/galaxyproject/galaxy/pull/8667 +.. _Pull Request 8676: https://github.com/galaxyproject/galaxy/pull/8676 +.. _Pull Request 8677: https://github.com/galaxyproject/galaxy/pull/8677 +.. _Pull Request 8678: https://github.com/galaxyproject/galaxy/pull/8678 +.. _Pull Request 8684: https://github.com/galaxyproject/galaxy/pull/8684 +.. _Pull Request 8685: https://github.com/galaxyproject/galaxy/pull/8685 +.. _Pull Request 8689: https://github.com/galaxyproject/galaxy/pull/8689 +.. _Pull Request 8690: https://github.com/galaxyproject/galaxy/pull/8690 +.. _Pull Request 8691: https://github.com/galaxyproject/galaxy/pull/8691 +.. _Pull Request 8692: https://github.com/galaxyproject/galaxy/pull/8692 +.. _Pull Request 8694: https://github.com/galaxyproject/galaxy/pull/8694 +.. _Pull Request 8697: https://github.com/galaxyproject/galaxy/pull/8697 +.. _Pull Request 8699: https://github.com/galaxyproject/galaxy/pull/8699 +.. _Pull Request 8700: https://github.com/galaxyproject/galaxy/pull/8700 +.. _Pull Request 8705: https://github.com/galaxyproject/galaxy/pull/8705 +.. _Pull Request 8708: https://github.com/galaxyproject/galaxy/pull/8708 +.. _Pull Request 8709: https://github.com/galaxyproject/galaxy/pull/8709 +.. _Pull Request 8712: https://github.com/galaxyproject/galaxy/pull/8712 +.. _Pull Request 8713: https://github.com/galaxyproject/galaxy/pull/8713 +.. _Pull Request 8718: https://github.com/galaxyproject/galaxy/pull/8718 +.. _Pull Request 8720: https://github.com/galaxyproject/galaxy/pull/8720 +.. _Pull Request 8722: https://github.com/galaxyproject/galaxy/pull/8722 +.. _Pull Request 8724: https://github.com/galaxyproject/galaxy/pull/8724 +.. _Pull Request 8725: https://github.com/galaxyproject/galaxy/pull/8725 +.. _Pull Request 8726: https://github.com/galaxyproject/galaxy/pull/8726 +.. _Pull Request 8728: https://github.com/galaxyproject/galaxy/pull/8728 +.. _Pull Request 8730: https://github.com/galaxyproject/galaxy/pull/8730 +.. _Pull Request 8731: https://github.com/galaxyproject/galaxy/pull/8731 +.. _Pull Request 8732: https://github.com/galaxyproject/galaxy/pull/8732 +.. _Pull Request 8734: https://github.com/galaxyproject/galaxy/pull/8734 +.. _Pull Request 8735: https://github.com/galaxyproject/galaxy/pull/8735 +.. _Pull Request 8737: https://github.com/galaxyproject/galaxy/pull/8737 +.. _Pull Request 8739: https://github.com/galaxyproject/galaxy/pull/8739 +.. _Pull Request 8741: https://github.com/galaxyproject/galaxy/pull/8741 +.. _Pull Request 8742: https://github.com/galaxyproject/galaxy/pull/8742 +.. _Pull Request 8744: https://github.com/galaxyproject/galaxy/pull/8744 +.. _Pull Request 8746: https://github.com/galaxyproject/galaxy/pull/8746 +.. _Pull Request 8749: https://github.com/galaxyproject/galaxy/pull/8749 +.. _Pull Request 8754: https://github.com/galaxyproject/galaxy/pull/8754 +.. _Pull Request 8757: https://github.com/galaxyproject/galaxy/pull/8757 +.. _Pull Request 8759: https://github.com/galaxyproject/galaxy/pull/8759 +.. _Pull Request 8762: https://github.com/galaxyproject/galaxy/pull/8762 +.. _Pull Request 8774: https://github.com/galaxyproject/galaxy/pull/8774 +.. _Pull Request 8776: https://github.com/galaxyproject/galaxy/pull/8776 +.. _Pull Request 8784: https://github.com/galaxyproject/galaxy/pull/8784 +.. _Pull Request 8785: https://github.com/galaxyproject/galaxy/pull/8785 +.. _Pull Request 8791: https://github.com/galaxyproject/galaxy/pull/8791 +.. _Pull Request 8793: https://github.com/galaxyproject/galaxy/pull/8793 +.. _Pull Request 8794: https://github.com/galaxyproject/galaxy/pull/8794 +.. _Pull Request 8799: https://github.com/galaxyproject/galaxy/pull/8799 +.. _Pull Request 8800: https://github.com/galaxyproject/galaxy/pull/8800 +.. _Pull Request 8803: https://github.com/galaxyproject/galaxy/pull/8803 +.. _Pull Request 8810: https://github.com/galaxyproject/galaxy/pull/8810 +.. _Pull Request 8813: https://github.com/galaxyproject/galaxy/pull/8813 +.. _Pull Request 8821: https://github.com/galaxyproject/galaxy/pull/8821 +.. _Pull Request 8823: https://github.com/galaxyproject/galaxy/pull/8823 +.. _Pull Request 8827: https://github.com/galaxyproject/galaxy/pull/8827 +.. _Pull Request 8836: https://github.com/galaxyproject/galaxy/pull/8836 +.. _Pull Request 8837: https://github.com/galaxyproject/galaxy/pull/8837 +.. _Pull Request 8839: https://github.com/galaxyproject/galaxy/pull/8839 +.. _Pull Request 8840: https://github.com/galaxyproject/galaxy/pull/8840 +.. _Pull Request 8843: https://github.com/galaxyproject/galaxy/pull/8843 +.. _Pull Request 8852: https://github.com/galaxyproject/galaxy/pull/8852 +.. _Pull Request 8855: https://github.com/galaxyproject/galaxy/pull/8855 +.. _Pull Request 8856: https://github.com/galaxyproject/galaxy/pull/8856 +.. _Pull Request 8857: https://github.com/galaxyproject/galaxy/pull/8857 +.. _Pull Request 8858: https://github.com/galaxyproject/galaxy/pull/8858 +.. _Pull Request 8859: https://github.com/galaxyproject/galaxy/pull/8859 +.. _Pull Request 8860: https://github.com/galaxyproject/galaxy/pull/8860 +.. _Pull Request 8862: https://github.com/galaxyproject/galaxy/pull/8862 +.. _Pull Request 8863: https://github.com/galaxyproject/galaxy/pull/8863 +.. _Pull Request 8864: https://github.com/galaxyproject/galaxy/pull/8864 +.. _Pull Request 8865: https://github.com/galaxyproject/galaxy/pull/8865 +.. _Pull Request 8866: https://github.com/galaxyproject/galaxy/pull/8866 +.. _Pull Request 8870: https://github.com/galaxyproject/galaxy/pull/8870 +.. _Pull Request 8871: https://github.com/galaxyproject/galaxy/pull/8871 +.. _Pull Request 8872: https://github.com/galaxyproject/galaxy/pull/8872 +.. _Pull Request 8873: https://github.com/galaxyproject/galaxy/pull/8873 +.. _Pull Request 8874: https://github.com/galaxyproject/galaxy/pull/8874 +.. _Pull Request 8876: https://github.com/galaxyproject/galaxy/pull/8876 +.. _Pull Request 8877: https://github.com/galaxyproject/galaxy/pull/8877 +.. _Pull Request 8882: https://github.com/galaxyproject/galaxy/pull/8882 +.. _Pull Request 8883: https://github.com/galaxyproject/galaxy/pull/8883 +.. _Pull Request 8884: https://github.com/galaxyproject/galaxy/pull/8884 +.. _Pull Request 8885: https://github.com/galaxyproject/galaxy/pull/8885 +.. _Pull Request 8888: https://github.com/galaxyproject/galaxy/pull/8888 +.. _Pull Request 8890: https://github.com/galaxyproject/galaxy/pull/8890 +.. _Pull Request 8893: https://github.com/galaxyproject/galaxy/pull/8893 +.. _Pull Request 8894: https://github.com/galaxyproject/galaxy/pull/8894 +.. _Pull Request 8900: https://github.com/galaxyproject/galaxy/pull/8900 +.. _Pull Request 8902: https://github.com/galaxyproject/galaxy/pull/8902 +.. _Pull Request 8904: https://github.com/galaxyproject/galaxy/pull/8904 +.. _Pull Request 8905: https://github.com/galaxyproject/galaxy/pull/8905 +.. _Pull Request 8907: https://github.com/galaxyproject/galaxy/pull/8907 +.. _Pull Request 8908: https://github.com/galaxyproject/galaxy/pull/8908 +.. _Pull Request 8910: https://github.com/galaxyproject/galaxy/pull/8910 +.. _Pull Request 8913: https://github.com/galaxyproject/galaxy/pull/8913 +.. _Pull Request 8914: https://github.com/galaxyproject/galaxy/pull/8914 +.. _Pull Request 8915: https://github.com/galaxyproject/galaxy/pull/8915 +.. _Pull Request 8921: https://github.com/galaxyproject/galaxy/pull/8921 +.. _Pull Request 8922: https://github.com/galaxyproject/galaxy/pull/8922 +.. _Pull Request 8924: https://github.com/galaxyproject/galaxy/pull/8924 +.. _Pull Request 8926: https://github.com/galaxyproject/galaxy/pull/8926 +.. _Pull Request 8929: https://github.com/galaxyproject/galaxy/pull/8929 +.. _Pull Request 8930: https://github.com/galaxyproject/galaxy/pull/8930 +.. _Pull Request 8931: https://github.com/galaxyproject/galaxy/pull/8931 +.. _Pull Request 8935: https://github.com/galaxyproject/galaxy/pull/8935 +.. _Pull Request 8936: https://github.com/galaxyproject/galaxy/pull/8936 +.. _Pull Request 8940: https://github.com/galaxyproject/galaxy/pull/8940 +.. _Pull Request 8941: https://github.com/galaxyproject/galaxy/pull/8941 +.. _Pull Request 8943: https://github.com/galaxyproject/galaxy/pull/8943 +.. _Pull Request 8947: https://github.com/galaxyproject/galaxy/pull/8947 +.. _Pull Request 8948: https://github.com/galaxyproject/galaxy/pull/8948 +.. _Pull Request 8949: https://github.com/galaxyproject/galaxy/pull/8949 +.. _Pull Request 8953: https://github.com/galaxyproject/galaxy/pull/8953 +.. _Pull Request 8955: https://github.com/galaxyproject/galaxy/pull/8955 +.. _Pull Request 8956: https://github.com/galaxyproject/galaxy/pull/8956 +.. _Pull Request 8957: https://github.com/galaxyproject/galaxy/pull/8957 +.. _Pull Request 8958: https://github.com/galaxyproject/galaxy/pull/8958 +.. _Pull Request 8960: https://github.com/galaxyproject/galaxy/pull/8960 +.. _Pull Request 8962: https://github.com/galaxyproject/galaxy/pull/8962 +.. _Pull Request 8964: https://github.com/galaxyproject/galaxy/pull/8964 +.. _Pull Request 8967: https://github.com/galaxyproject/galaxy/pull/8967 +.. _Pull Request 8972: https://github.com/galaxyproject/galaxy/pull/8972 +.. _Pull Request 8978: https://github.com/galaxyproject/galaxy/pull/8978 +.. _Pull Request 8979: https://github.com/galaxyproject/galaxy/pull/8979 +.. _Pull Request 8984: https://github.com/galaxyproject/galaxy/pull/8984 +.. _Pull Request 8988: https://github.com/galaxyproject/galaxy/pull/8988 +.. _Pull Request 8989: https://github.com/galaxyproject/galaxy/pull/8989 +.. _Pull Request 8990: https://github.com/galaxyproject/galaxy/pull/8990 +.. _Pull Request 8991: https://github.com/galaxyproject/galaxy/pull/8991 +.. _Pull Request 8994: https://github.com/galaxyproject/galaxy/pull/8994 +.. _Pull Request 8995: https://github.com/galaxyproject/galaxy/pull/8995 +.. _Pull Request 8997: https://github.com/galaxyproject/galaxy/pull/8997 +.. _Pull Request 9000: https://github.com/galaxyproject/galaxy/pull/9000 +.. _Pull Request 9003: https://github.com/galaxyproject/galaxy/pull/9003 +.. _Pull Request 9006: https://github.com/galaxyproject/galaxy/pull/9006 +.. _Pull Request 9009: https://github.com/galaxyproject/galaxy/pull/9009 +.. _Pull Request 9010: https://github.com/galaxyproject/galaxy/pull/9010 +.. _Pull Request 9013: https://github.com/galaxyproject/galaxy/pull/9013 +.. _Pull Request 9015: https://github.com/galaxyproject/galaxy/pull/9015 +.. _Pull Request 9016: https://github.com/galaxyproject/galaxy/pull/9016 +.. _Pull Request 9018: https://github.com/galaxyproject/galaxy/pull/9018 +.. _Pull Request 9019: https://github.com/galaxyproject/galaxy/pull/9019 +.. _Pull Request 9023: https://github.com/galaxyproject/galaxy/pull/9023 +.. _Pull Request 9026: https://github.com/galaxyproject/galaxy/pull/9026 +.. _Pull Request 9029: https://github.com/galaxyproject/galaxy/pull/9029 +.. _Pull Request 9032: https://github.com/galaxyproject/galaxy/pull/9032 +.. _Pull Request 9033: https://github.com/galaxyproject/galaxy/pull/9033 +.. _Pull Request 9034: https://github.com/galaxyproject/galaxy/pull/9034 +.. _Pull Request 9041: https://github.com/galaxyproject/galaxy/pull/9041 +.. _Pull Request 9044: https://github.com/galaxyproject/galaxy/pull/9044 +.. _Pull Request 9047: https://github.com/galaxyproject/galaxy/pull/9047 +.. _Pull Request 9048: https://github.com/galaxyproject/galaxy/pull/9048 +.. _Pull Request 9051: https://github.com/galaxyproject/galaxy/pull/9051 +.. _Pull Request 9052: https://github.com/galaxyproject/galaxy/pull/9052 +.. _Pull Request 9054: https://github.com/galaxyproject/galaxy/pull/9054 +.. _Pull Request 9055: https://github.com/galaxyproject/galaxy/pull/9055 +.. _Pull Request 9056: https://github.com/galaxyproject/galaxy/pull/9056 +.. _Pull Request 9059: https://github.com/galaxyproject/galaxy/pull/9059 +.. _Pull Request 9062: https://github.com/galaxyproject/galaxy/pull/9062 +.. _Pull Request 9063: https://github.com/galaxyproject/galaxy/pull/9063 +.. _Pull Request 9064: https://github.com/galaxyproject/galaxy/pull/9064 +.. _Pull Request 9065: https://github.com/galaxyproject/galaxy/pull/9065 +.. _Pull Request 9067: https://github.com/galaxyproject/galaxy/pull/9067 +.. _Pull Request 9068: https://github.com/galaxyproject/galaxy/pull/9068 +.. _Pull Request 9075: https://github.com/galaxyproject/galaxy/pull/9075 +.. _Pull Request 9078: https://github.com/galaxyproject/galaxy/pull/9078 +.. _Pull Request 9081: https://github.com/galaxyproject/galaxy/pull/9081 +.. _Pull Request 9082: https://github.com/galaxyproject/galaxy/pull/9082 +.. _Pull Request 9084: https://github.com/galaxyproject/galaxy/pull/9084 +.. _Pull Request 9086: https://github.com/galaxyproject/galaxy/pull/9086 +.. _Pull Request 9087: https://github.com/galaxyproject/galaxy/pull/9087 +.. _Pull Request 9089: https://github.com/galaxyproject/galaxy/pull/9089 +.. _Pull Request 9090: https://github.com/galaxyproject/galaxy/pull/9090 +.. _Pull Request 9092: https://github.com/galaxyproject/galaxy/pull/9092 +.. _Pull Request 9094: https://github.com/galaxyproject/galaxy/pull/9094 +.. _Pull Request 9097: https://github.com/galaxyproject/galaxy/pull/9097 +.. _Pull Request 9098: https://github.com/galaxyproject/galaxy/pull/9098 +.. _Pull Request 9099: https://github.com/galaxyproject/galaxy/pull/9099 +.. _Pull Request 9102: https://github.com/galaxyproject/galaxy/pull/9102 +.. _Pull Request 9104: https://github.com/galaxyproject/galaxy/pull/9104 +.. _Pull Request 9105: https://github.com/galaxyproject/galaxy/pull/9105 +.. _Pull Request 9115: https://github.com/galaxyproject/galaxy/pull/9115 +.. _Pull Request 9116: https://github.com/galaxyproject/galaxy/pull/9116 +.. _Pull Request 9117: https://github.com/galaxyproject/galaxy/pull/9117 +.. _Pull Request 9120: https://github.com/galaxyproject/galaxy/pull/9120 +.. _Pull Request 9121: https://github.com/galaxyproject/galaxy/pull/9121 +.. _Pull Request 9122: https://github.com/galaxyproject/galaxy/pull/9122 +.. _Pull Request 9124: https://github.com/galaxyproject/galaxy/pull/9124 +.. _Pull Request 9125: https://github.com/galaxyproject/galaxy/pull/9125 +.. _Pull Request 9126: https://github.com/galaxyproject/galaxy/pull/9126 +.. _Pull Request 9128: https://github.com/galaxyproject/galaxy/pull/9128 +.. _Pull Request 9132: https://github.com/galaxyproject/galaxy/pull/9132 +.. _Pull Request 9133: https://github.com/galaxyproject/galaxy/pull/9133 +.. _Pull Request 9134: https://github.com/galaxyproject/galaxy/pull/9134 +.. _Pull Request 9136: https://github.com/galaxyproject/galaxy/pull/9136 +.. _Pull Request 9137: https://github.com/galaxyproject/galaxy/pull/9137 +.. _Pull Request 9141: https://github.com/galaxyproject/galaxy/pull/9141 +.. _Pull Request 9144: https://github.com/galaxyproject/galaxy/pull/9144 +.. _Pull Request 9145: https://github.com/galaxyproject/galaxy/pull/9145 +.. _Pull Request 9146: https://github.com/galaxyproject/galaxy/pull/9146 +.. _Pull Request 9149: https://github.com/galaxyproject/galaxy/pull/9149 +.. _Pull Request 9150: https://github.com/galaxyproject/galaxy/pull/9150 +.. _Pull Request 9153: https://github.com/galaxyproject/galaxy/pull/9153 +.. _Pull Request 9155: https://github.com/galaxyproject/galaxy/pull/9155 +.. _Pull Request 9156: https://github.com/galaxyproject/galaxy/pull/9156 +.. _Pull Request 9163: https://github.com/galaxyproject/galaxy/pull/9163 +.. _Pull Request 9168: https://github.com/galaxyproject/galaxy/pull/9168 +.. _Pull Request 9170: https://github.com/galaxyproject/galaxy/pull/9170 +.. _Pull Request 9171: https://github.com/galaxyproject/galaxy/pull/9171 +.. _Pull Request 9179: https://github.com/galaxyproject/galaxy/pull/9179 +.. _Pull Request 9182: https://github.com/galaxyproject/galaxy/pull/9182 +.. _Pull Request 9192: https://github.com/galaxyproject/galaxy/pull/9192 +.. _Pull Request 9193: https://github.com/galaxyproject/galaxy/pull/9193 +.. _Pull Request 9194: https://github.com/galaxyproject/galaxy/pull/9194 +.. _Pull Request 9195: https://github.com/galaxyproject/galaxy/pull/9195 +.. _Pull Request 9199: https://github.com/galaxyproject/galaxy/pull/9199 +.. _Pull Request 9202: https://github.com/galaxyproject/galaxy/pull/9202 +.. _Pull Request 9210: https://github.com/galaxyproject/galaxy/pull/9210 +.. _Pull Request 9212: https://github.com/galaxyproject/galaxy/pull/9212 +.. _Pull Request 9215: https://github.com/galaxyproject/galaxy/pull/9215 +.. _Pull Request 9216: https://github.com/galaxyproject/galaxy/pull/9216 +.. _Pull Request 9217: https://github.com/galaxyproject/galaxy/pull/9217 +.. _Pull Request 9219: https://github.com/galaxyproject/galaxy/pull/9219 +.. _Pull Request 9224: https://github.com/galaxyproject/galaxy/pull/9224 +.. _Pull Request 9225: https://github.com/galaxyproject/galaxy/pull/9225 +.. _Pull Request 9228: https://github.com/galaxyproject/galaxy/pull/9228 +.. _Pull Request 9232: https://github.com/galaxyproject/galaxy/pull/9232 +.. _Pull Request 9233: https://github.com/galaxyproject/galaxy/pull/9233 +.. _Pull Request 9234: https://github.com/galaxyproject/galaxy/pull/9234 +.. _Pull Request 9237: https://github.com/galaxyproject/galaxy/pull/9237 +.. _Pull Request 9239: https://github.com/galaxyproject/galaxy/pull/9239 +.. _Pull Request 9240: https://github.com/galaxyproject/galaxy/pull/9240 +.. _Pull Request 9242: https://github.com/galaxyproject/galaxy/pull/9242 +.. _Pull Request 9243: https://github.com/galaxyproject/galaxy/pull/9243 +.. _Pull Request 9245: https://github.com/galaxyproject/galaxy/pull/9245 +.. _Pull Request 9246: https://github.com/galaxyproject/galaxy/pull/9246 +.. _Pull Request 9253: https://github.com/galaxyproject/galaxy/pull/9253 +.. _Pull Request 9260: https://github.com/galaxyproject/galaxy/pull/9260 +.. _Pull Request 9263: https://github.com/galaxyproject/galaxy/pull/9263 +.. _Pull Request 9266: https://github.com/galaxyproject/galaxy/pull/9266 +.. _Pull Request 9267: https://github.com/galaxyproject/galaxy/pull/9267 +.. _Pull Request 9269: https://github.com/galaxyproject/galaxy/pull/9269 +.. _Pull Request 9276: https://github.com/galaxyproject/galaxy/pull/9276 +.. _Pull Request 9278: https://github.com/galaxyproject/galaxy/pull/9278 +.. _Pull Request 9281: https://github.com/galaxyproject/galaxy/pull/9281 +.. _Pull Request 9290: https://github.com/galaxyproject/galaxy/pull/9290 +.. _Pull Request 9293: https://github.com/galaxyproject/galaxy/pull/9293 +.. _Pull Request 9294: https://github.com/galaxyproject/galaxy/pull/9294 +.. _Pull Request 9297: https://github.com/galaxyproject/galaxy/pull/9297 +.. _Pull Request 9309: https://github.com/galaxyproject/galaxy/pull/9309 +.. _Pull Request 9314: https://github.com/galaxyproject/galaxy/pull/9314 +.. _Pull Request 9315: https://github.com/galaxyproject/galaxy/pull/9315 +.. _Pull Request 9316: https://github.com/galaxyproject/galaxy/pull/9316 +.. _Pull Request 9319: https://github.com/galaxyproject/galaxy/pull/9319 +.. _Pull Request 9320: https://github.com/galaxyproject/galaxy/pull/9320 +.. _Pull Request 9321: https://github.com/galaxyproject/galaxy/pull/9321 +.. _Pull Request 9322: https://github.com/galaxyproject/galaxy/pull/9322 +.. _Pull Request 9327: https://github.com/galaxyproject/galaxy/pull/9327 +.. _Pull Request 9329: https://github.com/galaxyproject/galaxy/pull/9329 +.. _Pull Request 9330: https://github.com/galaxyproject/galaxy/pull/9330 +.. _Pull Request 9331: https://github.com/galaxyproject/galaxy/pull/9331 +.. _Pull Request 9334: https://github.com/galaxyproject/galaxy/pull/9334 +.. _Pull Request 9336: https://github.com/galaxyproject/galaxy/pull/9336 +.. _Pull Request 9337: https://github.com/galaxyproject/galaxy/pull/9337 +.. _Pull Request 9339: https://github.com/galaxyproject/galaxy/pull/9339 +.. _Pull Request 9345: https://github.com/galaxyproject/galaxy/pull/9345 +.. _Pull Request 9348: https://github.com/galaxyproject/galaxy/pull/9348 +.. _Pull Request 9349: https://github.com/galaxyproject/galaxy/pull/9349 +.. _Pull Request 9350: https://github.com/galaxyproject/galaxy/pull/9350 +.. _Pull Request 9354: https://github.com/galaxyproject/galaxy/pull/9354 +.. _Pull Request 9359: https://github.com/galaxyproject/galaxy/pull/9359 +.. _Pull Request 9360: https://github.com/galaxyproject/galaxy/pull/9360 +.. _Pull Request 9363: https://github.com/galaxyproject/galaxy/pull/9363 +.. _Pull Request 9364: https://github.com/galaxyproject/galaxy/pull/9364 +.. _Pull Request 9366: https://github.com/galaxyproject/galaxy/pull/9366 +.. _Pull Request 9367: https://github.com/galaxyproject/galaxy/pull/9367 +.. _Pull Request 9375: https://github.com/galaxyproject/galaxy/pull/9375 +.. _Pull Request 9384: https://github.com/galaxyproject/galaxy/pull/9384 +.. _Pull Request 9385: https://github.com/galaxyproject/galaxy/pull/9385 +.. _Pull Request 9388: https://github.com/galaxyproject/galaxy/pull/9388 +.. _Pull Request 9389: https://github.com/galaxyproject/galaxy/pull/9389 +.. _Pull Request 9391: https://github.com/galaxyproject/galaxy/pull/9391 +.. _Pull Request 9393: https://github.com/galaxyproject/galaxy/pull/9393 +.. _Pull Request 9395: https://github.com/galaxyproject/galaxy/pull/9395 +.. _Pull Request 9397: https://github.com/galaxyproject/galaxy/pull/9397 +.. _Pull Request 9398: https://github.com/galaxyproject/galaxy/pull/9398 +.. _Pull Request 9399: https://github.com/galaxyproject/galaxy/pull/9399 +.. _Pull Request 9400: https://github.com/galaxyproject/galaxy/pull/9400 +.. _Pull Request 9404: https://github.com/galaxyproject/galaxy/pull/9404 +.. _Pull Request 9406: https://github.com/galaxyproject/galaxy/pull/9406 +.. _Pull Request 9408: https://github.com/galaxyproject/galaxy/pull/9408 +.. _Pull Request 9411: https://github.com/galaxyproject/galaxy/pull/9411 +.. _Pull Request 9413: https://github.com/galaxyproject/galaxy/pull/9413 +.. _Pull Request 9415: https://github.com/galaxyproject/galaxy/pull/9415 +.. _Pull Request 9416: https://github.com/galaxyproject/galaxy/pull/9416 +.. _Pull Request 9421: https://github.com/galaxyproject/galaxy/pull/9421 +.. _Pull Request 9424: https://github.com/galaxyproject/galaxy/pull/9424 +.. _Pull Request 9427: https://github.com/galaxyproject/galaxy/pull/9427 +.. _Pull Request 9430: https://github.com/galaxyproject/galaxy/pull/9430 +.. _Pull Request 9432: https://github.com/galaxyproject/galaxy/pull/9432 +.. _Pull Request 9433: https://github.com/galaxyproject/galaxy/pull/9433 +.. _Pull Request 9434: https://github.com/galaxyproject/galaxy/pull/9434 +.. _Pull Request 9437: https://github.com/galaxyproject/galaxy/pull/9437 +.. _Pull Request 9441: https://github.com/galaxyproject/galaxy/pull/9441 +.. _Pull Request 9442: https://github.com/galaxyproject/galaxy/pull/9442 +.. _Pull Request 9446: https://github.com/galaxyproject/galaxy/pull/9446 diff --git a/doc/source/releases/index.rst b/doc/source/releases/index.rst index 98c88cbf52a..044163d7f08 100644 --- a/doc/source/releases/index.rst +++ b/doc/source/releases/index.rst @@ -4,6 +4,7 @@ Releases .. toctree:: :maxdepth: 1 + 20.01_announce 19.09_announce 19.05_announce 19.01_announce diff --git a/lib/galaxy/dependencies/pipfiles/default/Pipfile b/lib/galaxy/dependencies/pipfiles/default/Pipfile index 3c3ce61385a..67964f85612 100644 --- a/lib/galaxy/dependencies/pipfiles/default/Pipfile +++ b/lib/galaxy/dependencies/pipfiles/default/Pipfile @@ -13,7 +13,6 @@ gunicorn = "*" lxml = "!=4.2.2" mock = "*" NoseHTML = "*" -pygithub3 = {version = "*", markers = "python_version < '3'"} pytest = "*" pytest-cov = "*" pytest-html = "*" diff --git a/lib/galaxy/dependencies/pipfiles/default/pinned-dev-requirements.txt b/lib/galaxy/dependencies/pipfiles/default/pinned-dev-requirements.txt index 5f918acdae7..1cba38deffc 100644 --- a/lib/galaxy/dependencies/pipfiles/default/pinned-dev-requirements.txt +++ b/lib/galaxy/dependencies/pipfiles/default/pinned-dev-requirements.txt @@ -33,7 +33,6 @@ pluggy==0.13.1 port-for==0.4 psutil==5.7.0 py==1.8.1 -pygithub3==0.5.1 ; python_version < '3' pygments==2.5.2 pyparsing==2.4.6 pytest-cov==2.8.1 diff --git a/scripts/bootstrap_history.py b/scripts/bootstrap_history.py index 41a170212bb..f20cacb6f60 100644 --- a/scripts/bootstrap_history.py +++ b/scripts/bootstrap_history.py @@ -6,6 +6,7 @@ from __future__ import print_function import calendar import datetime import json +import logging import os import re import string @@ -18,12 +19,14 @@ try: except ImportError: requests = None try: - from pygithub3 import Github + from github import Github except ImportError: Github = None from six import string_types from six.moves.urllib.parse import urljoin +log = logging.getLogger(__name__) + PROJECT_DIRECTORY = os.path.join(os.path.dirname(__file__), os.pardir) GALAXY_VERSION_FILE = os.path.join(PROJECT_DIRECTORY, "lib", "galaxy", "version.py") PROJECT_OWNER = "galaxyproject" @@ -40,7 +43,7 @@ DEVTEAM = [ "tnabtaf", "natefoo", "jgoecks", "guerler", "jennaj", "nekrut", "jxtx", "VJalili", "WilliamHolden", "Nerdinacan", - "ic4f", + "ic4f", "mvdbeek" ] TEMPLATE = """ @@ -350,7 +353,7 @@ def do_release(argv): template = template.replace(".. enhancement", "%s\n\n.. enhancement" % enhancement_targets) template = template.replace(".. bug", "%s\n\n.. bug" % bug_targets) release_info = string.Template(template).safe_substitute(release=release_name) - open(release_file, "w").write(release_info.encode("utf-8")) + open(release_file, "w").write(release_info) month = int(release_name.split(".")[1]) month_name = calendar.month_name[month] year = release_name.split(".")[0] @@ -379,7 +382,7 @@ def do_release(argv): next_release_file = _release_file(next_version + "_announce.rst") next_announce = NEXT_TEMPLATE.substitute(**next_version_params) - open(next_release_file, "w").write(next_announce.encode("utf-8")) + open(next_release_file, "w").write(next_announce) releases_index = _release_file("index.rst") releases_index_contents = _read_file(releases_index) releases_index_contents = releases_index_contents.replace(".. announcements\n", ".. announcements\n " + next_version + "_announce\n") @@ -471,29 +474,30 @@ def _release_dates(version): return freeze_date, release_date -def _get_prs(release_name, state="closed"): +def _get_prs(release_name, state="closed", pr_cache=[]): github = _github_client() - pull_requests = github.pull_requests.list( + repo = github.get_repo("%s/%s" % (PROJECT_OWNER, PROJECT_NAME)) + add_to_cache = not pr_cache + pull_requests = pr_cache or repo.get_pulls( state=state, - user=PROJECT_OWNER, - repo=PROJECT_NAME, ) reached_old_prs = False - for page in pull_requests: + for pr in pull_requests: if reached_old_prs: break - for pr in page: - if pr.created_at < datetime.datetime(2016, 11, 1, 0, 0): - reached_old_prs = True - pass - merged_at = pr.merged_at - milestone = pr.milestone - proper_state = state != "closed" or merged_at - if not proper_state or not milestone or milestone['title'] != release_name: - continue - yield pr + if pr.created_at < datetime.datetime(2018, 11, 1, 0, 0): + reached_old_prs = True + pass + merged_at = pr.merged_at + milestone = pr.milestone + proper_state = state != "closed" or merged_at + if not proper_state or not milestone or milestone.title != release_name: + continue + if add_to_cache: + pr_cache.append(pr) + yield pr def main(argv): @@ -585,8 +589,8 @@ def main(argv): owner = None if ident.startswith("pr"): pull_request = ident[len("pr"):] - user = req["head"]["user"] - owner = user["login"] + user = req["head"].user + owner = user.login if owner in DEVTEAM: owner = None text = ".. _Pull Request {0}: {1}/pull/{0}".format(pull_request, PROJECT_URL) @@ -615,7 +619,7 @@ def main(argv): to_doc = wrap(to_doc) if text_target is not None: history = extend_target(text_target, to_doc, history) - if req and 'labels' in req: + if req and req['labels']: labels = req['labels'] if 'area/datatypes' in labels: user_announce = extend_target("datatypes", to_doc, user_announce) @@ -630,12 +634,12 @@ def main(argv): def _read_file(path): with open(path, "r") as f: - return f.read().decode("utf-8") + return f.read() def _write_file(path, contents): with open(path, "w") as f: - f.write(contents.encode("utf-8")) + f.write(contents) def _text_target(github, pull_request, labels=None): @@ -709,11 +713,13 @@ def _text_target(github, pull_request, labels=None): else: print("Logic problem, cannot determine section for %s" % _pr_to_str(pull_request)) text_target = None + if text_target: + text_target += "\n" return text_target def _pr_to_labels(pr): - labels = [l["name"].lower() for l in pr.labels] + labels = [l.name.lower() for l in pr.labels] return labels @@ -737,9 +743,12 @@ def _releases(): def _github_client(): try: - github_json = os.path.expanduser("~/.github.json") - github = Github(**json.load(open(github_json, "r"))) + github_json_path = os.path.expanduser("~/.github.json") + with open(github_json_path, "r") as fh: + github_json_dict = json.load(fh) + github = Github(**github_json_dict) except Exception: + log.exception() github = None return github @@ -770,7 +779,7 @@ def wrap(message): message = process_sentence(message) wrapper = textwrap.TextWrapper(initial_indent="* ") wrapper.subsequent_indent = ' ' - wrapper.width = 78 + wrapper.width = 160 message_lines = message.splitlines() first_lines = "\n".join(wrapper.wrap(message_lines[0])) wrapper.initial_indent = " "