Skip to content

Commit 1f3fac1

Browse files
committed
Merge branch 'master' into autopulate-2.0
2 parents c13b3e1 + 9c12891 commit 1f3fac1

215 files changed

Lines changed: 7247 additions & 1282 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.codespellrc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
[codespell]
2+
skip = .git,*.pdf,*.svg,*.csv,*.ipynb,*.drawio
3+
# Rever -- nobody knows
4+
# numer -- numerator variable
5+
ignore-words-list = rever,numer

.devcontainer/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ FROM mcr.microsoft.com/devcontainers/python:3.7-bullseye
44
RUN \
55
apt update && \
66
apt-get install bash-completion graphviz default-mysql-client -y && \
7-
pip install flake8 black faker ipykernel nose nose-cov datajoint && \
7+
pip install flake8 black faker ipykernel pytest pytest-cov nose nose-cov datajoint && \
88
pip uninstall datajoint -y
99

1010
ENV DJ_HOST fakeservices.datajoint.io

.devcontainer/devcontainer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
"ghcr.io/guiyomh/features/vim:0": {}
1717
},
1818
"onCreateCommand": "pip install -e .",
19-
"postStartCommand": "MYSQL_VER=8.0 MINIO_VER=RELEASE.2022-08-11T04-37-28Z docker compose -f local-docker-compose.yml down && MYSQL_VER=8.0 MINIO_VER=RELEASE.2022-08-11T04-37-28Z docker compose -f local-docker-compose.yml up --build --wait",
19+
"postStartCommand": "MYSQL_VER=8.0 MINIO_VER=RELEASE.2022-08-11T04-37-28Z docker compose -f local-docker-compose.yml down && docker volume prune -f && MYSQL_VER=8.0 MINIO_VER=RELEASE.2022-08-11T04-37-28Z docker compose -f local-docker-compose.yml up --build --wait",
2020
"forwardPorts": [
2121
80,
2222
443,

.github/workflows/development.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,17 @@ jobs:
9292
--count --max-complexity=62 --max-line-length=127 --statistics
9393
black datajoint --check -v
9494
black tests --check -v
95+
black tests_old --check -v
96+
codespell:
97+
name: Check for spelling errors
98+
permissions:
99+
contents: read
100+
runs-on: ubuntu-latest
101+
steps:
102+
- name: Checkout
103+
uses: actions/checkout@v3
104+
- name: Codespell
105+
uses: codespell-project/actions-codespell@v2
95106
publish-docs:
96107
if: |
97108
github.event_name == 'push' &&

.github/workflows/docs.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Manual docs release
2+
on:
3+
workflow_dispatch:
4+
jobs:
5+
publish-docs:
6+
runs-on: ubuntu-latest
7+
env:
8+
DOCKER_CLIENT_TIMEOUT: "120"
9+
COMPOSE_HTTP_TIMEOUT: "120"
10+
steps:
11+
- uses: actions/checkout@v3
12+
- name: Deploy docs
13+
run: |
14+
export MODE=BUILD
15+
export PACKAGE=datajoint
16+
export UPSTREAM_REPO=https://github.com/${GITHUB_REPOSITORY}.git
17+
export HOST_UID=$(id -u)
18+
docker compose -f docs/docker-compose.yaml up --exit-code-from docs --build
19+
git push origin gh-pages

.vscode/settings.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,11 @@
1111
"[markdown]": {
1212
"editor.defaultFormatter": "disable"
1313
},
14+
"[yaml]": {
15+
"editor.defaultFormatter": "disable"
16+
},
17+
"[dockercompose]": {
18+
"editor.defaultFormatter": "disable"
19+
},
1420
"files.autoSave": "off"
1521
}

CHANGELOG.md

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,22 @@
11
## Release notes
22

3+
### Upcoming
4+
- Added - Codespell GitHub Actions workflow
5+
- Added - GitHub Actions workflow to manually release docs
6+
- Changed - Update `datajoint/nginx` to `v0.2.6`
7+
- Changed - Migrate docs from `https://docs.datajoint.org/python` to `https://datajoint.com/docs/core/datajoint-python`
8+
9+
### 0.14.1 -- Jun 02, 2023
10+
- Fixed - Fix altering a part table that uses the "master" keyword - PR [#991](https://github.com/datajoint/datajoint-python/pull/991)
11+
- Fixed - `.ipynb` output in tutorials is not visible in dark mode ([#1078](https://github.com/datajoint/datajoint-python/issues/1078)) PR [#1080](https://github.com/datajoint/datajoint-python/pull/1080)
12+
- Fixed - preview table font for darkmode PR [#1089](https://github.com/datajoint/datajoint-python/pull/1089)
13+
- Changed - Readme to update links and include example pipeline image
14+
- Changed - Docs to add landing page and update navigation
15+
- Changed - `.data` method to `.stream` in the `get()` method for S3 (external) objects PR [#1085](https://github.com/datajoint/datajoint-python/pull/1085)
16+
- Fixed - Docs to rename `create_virtual_module` to `VirtualModule`
17+
- Added - Skeleton from `datajoint-company/datajoint-docs` repository for docs migration
18+
- Added - Initial `pytest` for `test_connection`
19+
320
### 0.14.0 -- Feb 13, 2023
421
- Added - `json` data type ([#245](https://github.com/datajoint/datajoint-python/issues/245)) PR [#1051](https://github.com/datajoint/datajoint-python/pull/1051)
522
- Fixed - Activating a schema requires all tables to exist even if `create_tables=False` PR [#1058](https://github.com/datajoint/datajoint-python/pull/1058)
@@ -13,14 +30,14 @@
1330
- Deprecated - `table._update()` PR [#1073](https://github.com/datajoint/datajoint-python/pull/1073)
1431
- Deprecated - old-style foreign key syntax PR [#1073](https://github.com/datajoint/datajoint-python/pull/1073)
1532
- Deprecated - `dj.migrate_dj011_external_blob_storage_to_dj012()` PR [#1073](https://github.com/datajoint/datajoint-python/pull/1073)
16-
* Added - Method to set job keys to "ignore" status - PR [#1068](https://github.com/datajoint/datajoint-python/pull/1068)
33+
- Added - Method to set job keys to "ignore" status - PR [#1068](https://github.com/datajoint/datajoint-python/pull/1068)
1734

1835
### 0.13.8 -- Sep 21, 2022
1936
- Added - New documentation structure based on markdown PR [#1052](https://github.com/datajoint/datajoint-python/pull/1052)
2037
- Fixed - Fix queries with backslashes ([#999](https://github.com/datajoint/datajoint-python/issues/999)) PR [#1052](https://github.com/datajoint/datajoint-python/pull/1052)
2138

2239
### 0.13.7 -- Jul 13, 2022
23-
- Fixed - Fix networkx incompatable change by version pinning to 2.6.3 (#1035) PR #1036
40+
- Fixed - Fix networkx incompatible change by version pinning to 2.6.3 (#1035) PR #1036
2441
- Added - Support for serializing numpy datetime64 types (#1022) PR #1036
2542
- Changed - Add traceback to default logging PR #1036
2643

@@ -72,7 +89,7 @@
7289
- Fixed - `schema.list_tables()` is not topologically sorted (#838) PR #893
7390
- Fixed - Diagram part tables do not show proper class name (#882) PR #893
7491
- Fixed - Error in complex restrictions (#892) PR #893
75-
- Fixed - WHERE and GROUP BY clases are dropped on joins with aggregation (#898, #899) PR #893
92+
- Fixed - WHERE and GROUP BY classes are dropped on joins with aggregation (#898, #899) PR #893
7693

7794
### 0.13.0 -- Mar 24, 2021
7895
- Re-implement query transpilation into SQL, fixing issues (#386, #449, #450, #484, #558). PR #754

LNX-docker-compose.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ services:
4444
interval: 15s
4545
fakeservices.datajoint.io:
4646
<<: *net
47-
image: datajoint/nginx:v0.2.4
47+
image: datajoint/nginx:v0.2.6
4848
environment:
4949
- ADD_db_TYPE=DATABASE
5050
- ADD_db_ENDPOINT=db:3306
@@ -89,7 +89,8 @@ services:
8989
pip install --user nose nose-cov
9090
pip install -e .
9191
pip list --format=freeze | grep datajoint
92-
nosetests -vsw tests --with-coverage --cover-package=datajoint
92+
pytest -sv --cov-report term-missing --cov=datajoint tests
93+
nosetests -vsw tests_old --with-coverage --cover-package=datajoint
9394
# ports:
9495
# - "8888:8888"
9596
user: ${HOST_UID}:anaconda

README.md

Lines changed: 35 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,50 @@
11
[![DOI](https://zenodo.org/badge/16774/datajoint/datajoint-python.svg)](https://zenodo.org/badge/latestdoi/16774/datajoint/datajoint-python)
2-
[![Build Status](https://travis-ci.org/datajoint/datajoint-python.svg?branch=master)](https://travis-ci.org/datajoint/datajoint-python)
32
[![Coverage Status](https://coveralls.io/repos/datajoint/datajoint-python/badge.svg?branch=master&service=github)](https://coveralls.io/github/datajoint/datajoint-python?branch=master)
43
[![PyPI version](https://badge.fury.io/py/datajoint.svg)](http://badge.fury.io/py/datajoint)
5-
[![Requirements Status](https://requires.io/github/datajoint/datajoint-python/requirements.svg?branch=master)](https://requires.io/github/datajoint/datajoint-python/requirements/?branch=master)
64
[![Slack](https://img.shields.io/badge/slack-chat-green.svg)](https://datajoint.slack.com/)
75

86
# Welcome to DataJoint for Python!
97

10-
DataJoint for Python is a framework for scientific workflow management based on relational principles. DataJoint is built on the foundation of the relational data model and prescribes a consistent method for organizing, populating, computing, and querying data.
8+
DataJoint for Python is a framework for scientific workflow management based on
9+
relational principles. DataJoint is built on the foundation of the relational data
10+
model and prescribes a consistent method for organizing, populating, computing, and
11+
querying data.
1112

12-
DataJoint was initially developed in 2009 by Dimitri Yatsenko in Andreas Tolias' Lab at Baylor College of Medicine for the distributed processing and management of large volumes of data streaming from regular experiments. Starting in 2011, DataJoint has been available as an open-source project adopted by other labs and improved through contributions from several developers.
13-
Presently, the primary developer of DataJoint open-source software is the company DataJoint (https://datajoint.com).
13+
DataJoint was initially developed in 2009 by Dimitri Yatsenko in Andreas Tolias' Lab at
14+
Baylor College of Medicine for the distributed processing and management of large
15+
volumes of data streaming from regular experiments. Starting in 2011, DataJoint has
16+
been available as an open-source project adopted by other labs and improved through
17+
contributions from several developers.
18+
Presently, the primary developer of DataJoint open-source software is the company
19+
DataJoint (https://datajoint.com).
1420

15-
- [Getting Started](https://datajoint.com/docs/core/datajoint-python/latest/getting-started/)
16-
- [DataJoint Elements](https://datajoint.com/docs/elements/) - Catalog of example pipelines
17-
- [DataJoint CodeBook](https://codebook.datajoint.io) - Interactive online tutorials
18-
- Contribute
21+
## Data Pipeline Example
1922

20-
- [Development Environment](https://datajoint.com/docs/core/datajoint-python/latest/develop/)
21-
- [Guidelines](https://datajoint.com/docs/community/contribute/)
23+
![pipeline](https://raw.githubusercontent.com/datajoint/datajoint-python/master/images/pipeline.png)
24+
25+
[Yatsenko et al., bioRxiv 2021](https://doi.org/10.1101/2021.03.30.437358)
26+
27+
## Getting Started
28+
29+
- Install with Conda
2230

23-
- Legacy Resources (To be replaced by above)
24-
- [Documentation](https://docs.datajoint.org)
25-
- [Tutorials](https://tutorials.datajoint.org)
31+
```bash
32+
conda install -c conda-forge datajoint
33+
```
2634

27-
## Citation
35+
- Install with pip
2836

29-
- If your work uses DataJoint for Python, please cite the following Research Resource Identifier (RRID) and manuscript.
37+
```bash
38+
pip install datajoint
39+
```
3040

31-
- DataJoint ([RRID:SCR_014543](https://scicrunch.org/resolver/SCR_014543)) - DataJoint for Python (version `<Enter version number>`)
41+
- [Documentation & Tutorials](https://datajoint.com/docs/core/datajoint-python/)
42+
43+
- [Interactive Tutorials](https://github.com/datajoint/datajoint-tutorials) on GitHub Codespaces
44+
45+
- [DataJoint Elements](https://datajoint.com/docs/elements/) - Catalog of example pipelines for neuroscience experiments
46+
47+
- Contribute
48+
- [Development Environment](https://datajoint.com/docs/core/datajoint-python/latest/develop/)
3249

33-
- Yatsenko D, Reimer J, Ecker AS, Walker EY, Sinz F, Berens P, Hoenselaar A, Cotton RJ, Siapas AS, Tolias AS. DataJoint: managing big scientific data using MATLAB or Python. bioRxiv. 2015 Jan 1:031658. doi: https://doi.org/10.1101/031658
50+
- [Guidelines](https://datajoint.com/docs/about/contribute/)

datajoint/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
"""
2-
DataJoint for Python is a framework for building data piplines using MySQL databases
2+
DataJoint for Python is a framework for building data pipelines using MySQL databases
33
to represent pipeline structure and bulk storage systems for large objects.
44
DataJoint is built on the foundation of the relational data model and prescribes a
55
consistent method for organizing, populating, and querying data.

0 commit comments

Comments
 (0)