Commit Graph
124 Commits
Author SHA1 Message Date
Nicola Soranzo 5c43d2961f Use dnspython to check specifically for an "MX" DNS record
when validating the domain name of the email address for a new user.

Fix https://github.com/galaxyproject/galaxy/issues/14829 .
2022-10-27 11:17:14 +01:00
davelopezandNicola Soranzo 5dc7dae7c1 Use pydantic[email] instead of email-validator
Co-authored-by: Nicola Soranzo <nicola.soranzo@earlham.ac.uk>
2022-10-14 12:20:24 +02:00
John Chilton 61b9e57c7f Implement Workflow Invocation -> BCO export. 2022-10-14 12:20:24 +02:00
John Chilton 3dbe2891e7 Implement RO Crate export of Galaxy histories and invocations. 2022-09-13 19:20:48 -04:00
Nicola Soranzo dda6feb391 Remove redundant license info from package READMEs
The license is already specified in `setup.cfg` , which is the
canonical place.
This will simplify the transition to the MIT license.
2022-09-09 17:20:24 +01:00
Michael R. Crusoe 59ac92c1c8 mark galaxy packages as containing typing information 2022-07-26 23:27:36 +01:00
Nicola Soranzo 073a8d7956 Modernise build of galaxy-data package
Also:
- Update MANIFEST.in
2022-06-09 23:48:33 +01:00
Nicola Soranzo 73bf57e9a0 Remove unused and unnecessary code
- `PROJECT_OWNER`, `PROJECT_USERAME`, `RAW_CONTENT_URL` and `_version_re` are unused.
- `:changelog:` hyperlink target is unnecessary.
- `test_suite` and `tests_require` are deprecated since setuptools v41.5.0
2022-06-09 22:55:07 +01:00
Nicola Soranzo e9b2262dd3 Move mypy configuration to `mypy.ini`
So packages can use `setup.cfg` to replace `setup.py` .
2022-06-08 10:35:18 +01:00
Nicola Soranzo aeef3318a2 Use setuptools custom package discovery instead of explicit listing 2022-06-06 23:48:37 +01:00
Nicola Soranzo f2a42ba67e Run mypy on all packages' files
Also:
- mypy fixes.
- Use `with` statement to open/close files.
2022-05-30 22:38:55 +01:00
John Chilton c5bf63bc91 Add DEFERRED datasets to Galaxy
- Improves options and display around discarded datasets.
- Adds new APIs for importing model stores.
- Adds support to model store layer for importing/exporting workflow invocations and APIs and tests to support this.
- Add new DEFERRED dataset state - with APIs for materializing them or the option to defer them on the worker node if using tool_evaluation_strategy=remote on the job destination.
- UI and API options for uploading deferred datasets individually or into collections.
2022-05-23 19:48:47 -04:00
mvdbeek 37b47e0304 Better binary detection with FilePrefix & libmagic
FilePrefix reads the first Megabytes of a file, which is much more
than the previously used `check_binary` which read only 1KB.

Since we're re-using FilePrefix instance this shouldn't have any impact
on performace. In addition we're now using `python-magic` to detect
the encoding and mime-type. We're using the mime-type detection
for PDF only at this point, but we're also using the detected encoding
if we encounter non-utf8 content.
2022-04-05 15:06:04 +02:00
Nicola Soranzo 7cf3ce97ec Unpin alembic in galaxy-data package 2022-03-31 18:50:07 +01:00
Nicola Soranzo d11bbf219d Update mypy to 0.942 . Fix new mypy errors.
Remove unused `optional()` decorator function that had an annotation issue.
2022-03-31 18:47:52 +01:00
John Chilton f9940e35d1 Pin pysam since 0.19.0 seems to have incomplete type definitions. 2022-03-30 16:44:58 -04:00
Nicola Soranzo 0c80836c34 Upgrade syntax to Python 3.7
using `ack --type=python -f | grep -v '^tools/' | xargs pyupgrade --py37-plus`

Also more refactoring of Python files in `packages/` .
2022-03-14 14:57:43 +00:00
Sergey Golitsynskiy 736c6c0048 Update data package (requirements, packages, includes)
Note: manage_db entry point needs to be edited in model.orm.scripts.
2022-03-09 18:41:03 -05:00
Sergey Golitsynskiy be53ebec6b Move triggers out of migrate directory
(does not include an import in mapping.py: to be added in a separate
commit, grouped with other edits in mapping.py)
2022-03-09 18:40:07 -05:00
Sergey Golitsynskiy e248cbe35e Add alembic to dependencies 2022-03-09 18:40:07 -05:00
Nicola Soranzo 6057338cbd Format files in packages/ with black
with:

```
find packages/ -name '*.py' | xargs black
```

The `packages/` directory is currently excluded in the `[tool.black]`
section of `pyproject.toml` because black follows symlinks.
2022-02-03 14:07:52 +00:00
Dannon Baker 623a5e165a Apply black formatting.
Apply isort.
2022-02-03 07:42:20 -05:00
mvdbeek 0af72e56b2 Update version to 22.05.dev0 2022-02-01 11:10:56 +01:00
Nicola Soranzo 0bdc93a7cc Drop support for Python 3.6, add Python 3.10 2021-12-08 08:14:10 +00:00
Nicola Soranzo a37bdfd42f Merge branch 'release_21.09' into dev 2021-11-25 16:30:56 +00:00
Islam Heggy cde79eef33 Update social-auth-core library version to fix OIDC problem 2021-11-24 05:00:28 +02:00
Nicola Soranzo a65d8fade9 Add missing typing-extensions requirement
to `pyproject.toml` and packages' `requirements.txt` .

We have been importing it explicitly since commit
fc2ce45767 (December 2020).

Also:
- Remove now unnecessary minimum version for pygithub
2021-11-24 01:09:49 +00:00
Michael R. Crusoe 7819fdc7a6 tighten type ignores 2021-11-23 13:12:07 +01:00
mvdbeek 6b29202be6 Update version to 21.09. 2021-11-02 12:08:02 +01:00
John Chilton c791fea0cf Formalize dependency of galaxy-data on galaxy.files package.
- Create a new project galaxy-files that does not depend on anything but galaxy-util.
- Add a dependency in galaxy-data on galaxy-files, use typing in galaxy.data.sniff to make this clear.
- Cleanup the galaxy-files unit tests to not depend on galaxy.datatypes.sniff code - this wasn't ideal to start with.
- Add a small integration-ish unit test test_sniff_file_sources.py to test that piece of sniff.py that depends on galaxy-files.
2021-10-11 13:16:30 -04:00
John Chilton 336cf7b918 Package objectstore's unittest helpers and drop hacks for running test_model_copy.py in galaxy-data. 2021-09-24 12:16:54 -04:00
John Chilton 84220b6b55 Establish unittest utils for galaxy-data packages.
Progress toward https://github.com/galaxyproject/galaxy/issues/8364. Cleans up dependency into a proper DAG so we can move for instance test_model_discovery.py into galaxy-data's unittests.
2021-09-24 12:16:54 -04:00
Sergey Golitsynskiy e691ab866b Update SQLAlchemy to 1.4.25 2021-09-23 11:29:38 -04:00
mvdbeek 5332eb246a Update version to 22.01.dev0 2021-09-20 19:53:11 +02:00
mvdbeek 9275b34819 Update version to 21.09.rc1 2021-09-20 19:53:09 +02:00
Nicola Soranzo 520aba646a Revert "Install Tempita from a fork due to use_2to3 deprecation"
This reverts commit 314ca33509.

Fixed on PyPI as mentioned in
https://github.com/pypa/setuptools/issues/2788#issuecomment-921962154
2021-09-20 15:56:53 +01:00
John Chilton 62295efeb5 Merge pull request #11315 from davelopez/prepare_fastapi_route_quotas
Prepare FastAPI route for quotas
2021-09-08 09:14:49 -04:00
Nicola Soranzo 00c6c281cf Merge branch 'release_21.05' into dev 2021-09-07 11:54:45 +01:00
Nicola Soranzo cf5708e35d Merge branch 'release_21.01' into release_21.05 2021-09-07 11:00:33 +01:00
Nicola Soranzo 314ca33509 Install Tempita from a fork due to use_2to3 deprecation
Fix https://github.com/galaxyproject/galaxy/issues/12412 .

We have a dependency on `Tempita` (through `sqlalchemy-migrate`), which is
abandonware and uses the `use_2to3=True` option of `setup()` in its
`setup.py` .
The new Setuptools v58.0.0 removed support for 2to3 during builds:
https://github.com/pypa/setuptools/blob/main/CHANGES.rst#v5800
As a result Tempita is installed at even older version and importing it
raises a SyntaxError.

For Galaxy as a full application this has been solved by creating a wheel on
https://wheels.galaxyproject.org . But the `galaxy-data` package (which also
depends on `sqlalchemy-migrate`) cannot automatically install the
tempita-0.5.2 wheel from our alternative package index when installed via
`pip install galaxy-data` as there is no syntax to specify that.

I've therefore resurrected Tempita from the Bitbucket Mercurial repo (thanks
to Software Heritage backups!
https://bitbucket-archive.softwareheritage.org/projects/ia/ianb/tempita.html
), converted to a GitHub repo and updated its code to Python 3.6 with 2to3
and pyupgrade.
2021-09-07 03:51:02 +01:00
Nuwan Goonasekera df7e40c550 Added missing triggers package to galaxy data 2021-08-30 10:19:32 +05:30
Sergey Golitsynskiy 003dfc48ae Update SQLAlchmey to 1.4.20 2021-07-04 13:18:13 -04:00
Sergey Golitsynskiy 314e00e643 Update SQLAlchemy to 1.4.19 2021-06-23 11:19:58 -04:00
Sergey Golitsynskiy b3551fec8c Update SQLAlchemy to 1.4.18 2021-06-11 18:53:07 -04:00
mvdbeek 3ce0312a0a Update version to 21.05. 2021-06-10 21:23:20 +02:00
Sergey Golitsynskiy 94ce70aa8b Update SQLAlchemy to 1.4.17 2021-06-03 12:22:54 -04:00
davelopez 50d7d2e339 Fix symlink 2021-06-02 10:22:37 +02:00
David López b246bf3af4 Fix symlink
Make it relative
2021-06-02 10:22:37 +02:00
davelopez 1a7a09206d Add lib/galaxy/schema to packages/data/galaxy/schema 2021-06-02 10:22:37 +02:00
Sergey Golitsynskiy 9cb78f7c3d Update SA pin to 1.4.15; update requirements files 2021-05-18 19:02:40 -04:00