Skip to content

Commit 7a41e8b

Browse files
Fix merge conflicts.
2 parents 7bf0c83 + 40a6794 commit 7a41e8b

Some content is hidden

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

68 files changed

+1381
-197
lines changed

CHANGELOG.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,13 @@
11
## Release notes
22

3-
### 0.14.1 -- TBD
3+
### Upcoming
4+
- Fixed - Fix altering a part table that uses the "master" keyword - PR [#991](https://github.com/datajoint/datajoint-python/pull/991)
5+
- 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)
6+
- Changed - Readme to update links and include example pipeline image
7+
- Changed - Docs to add landing page and update navigation
8+
- Changed - `.data` method to `.stream` in the `get()` method for S3 (external) objects PR [#1085](https://github.com/datajoint/datajoint-python/pull/1085)
9+
- Fixed - Docs to rename `create_virtual_module` to `VirtualModule`
10+
- Added - Skeleton from `datajoint-company/datajoint-docs` repository for docs migration
411
- Added - Initial `pytest` for `test_connection`
512

613
### 0.14.0 -- Feb 13, 2023
@@ -16,7 +23,7 @@
1623
- Deprecated - `table._update()` PR [#1073](https://github.com/datajoint/datajoint-python/pull/1073)
1724
- Deprecated - old-style foreign key syntax PR [#1073](https://github.com/datajoint/datajoint-python/pull/1073)
1825
- Deprecated - `dj.migrate_dj011_external_blob_storage_to_dj012()` PR [#1073](https://github.com/datajoint/datajoint-python/pull/1073)
19-
* Added - Method to set job keys to "ignore" status - PR [#1068](https://github.com/datajoint/datajoint-python/pull/1068)
26+
- Added - Method to set job keys to "ignore" status - PR [#1068](https://github.com/datajoint/datajoint-python/pull/1068)
2027

2128
### 0.13.8 -- Sep 21, 2022
2229
- Added - New documentation structure based on markdown PR [#1052](https://github.com/datajoint/datajoint-python/pull/1052)

LNX-docker-compose.yml

Lines changed: 1 addition & 1 deletion
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.5
4848
environment:
4949
- ADD_db_TYPE=DATABASE
5050
- ADD_db_ENDPOINT=db:3306

README.md

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
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!
@@ -12,22 +10,32 @@ DataJoint for Python is a framework for scientific workflow management based on
1210
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.
1311
Presently, the primary developer of DataJoint open-source software is the company DataJoint (https://datajoint.com).
1412

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
13+
## Data Pipeline Example
14+
15+
![pipeline](https://raw.githubusercontent.com/datajoint/datajoint-python/master/images/pipeline.png)
16+
17+
[Yatsenko et al., bioRxiv 2021](https://doi.org/10.1101/2021.03.30.437358)
18+
19+
## Getting Started
20+
21+
- Install from PyPI
22+
23+
```bash
24+
pip install datajoint
25+
```
26+
27+
- [Documentation & Tutorials](https://datajoint.com/docs/core/datajoint-python/)
28+
29+
- [Interactive Tutorials](https://github.com/datajoint/datajoint-tutorials) on GitHub Codespaces
1930

31+
- [DataJoint Elements](https://datajoint.com/docs/elements/) - Catalog of example pipelines for neuroscience experiments
32+
33+
- Contribute
2034
- [Development Environment](https://datajoint.com/docs/core/datajoint-python/latest/develop/)
35+
2136
- [Guidelines](https://datajoint.com/docs/community/contribute/)
2237

2338
- Legacy Resources (To be replaced by above)
2439
- [Documentation](https://docs.datajoint.org)
25-
- [Tutorials](https://tutorials.datajoint.org)
2640

27-
## Citation
28-
29-
- If your work uses DataJoint for Python, please cite the following Research Resource Identifier (RRID) and manuscript.
30-
31-
- DataJoint ([RRID:SCR_014543](https://scicrunch.org/resolver/SCR_014543)) - DataJoint for Python (version `<Enter version number>`)
32-
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
41+
- [Tutorials](https://tutorials.datajoint.org)

datajoint/s3.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,9 @@ def fput(self, local_file, name, metadata=None):
6868
def get(self, name):
6969
logger.debug("get: {}:{}".format(self.bucket, name))
7070
try:
71-
return self.client.get_object(self.bucket, str(name)).data
71+
with self.client.get_object(self.bucket, str(name)) as result:
72+
data = [d for d in result.stream()]
73+
return b"".join(data)
7274
except minio.error.S3Error as e:
7375
if e.code == "NoSuchKey":
7476
raise errors.MissingExternalFile("Missing s3 key %s" % name)

datajoint/user_tables.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,3 +238,7 @@ def drop(self, force=False):
238238
raise DataJointError(
239239
"Cannot drop a Part directly. Delete from master instead"
240240
)
241+
242+
def alter(self, prompt=True, context=None):
243+
# without context, use declaration context which maps master keyword to master table
244+
super().alter(prompt=prompt, context=context or self.declaration_context)

docs/docker-compose.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ services:
77
context: ../
88
args:
99
- PACKAGE
10-
image: ${PACKAGE}-docs
10+
image: ${PACKAGE}_python-docs
1111
environment:
1212
- PACKAGE
1313
- UPSTREAM_REPO
@@ -16,7 +16,7 @@ services:
1616
- ..:/main
1717
user: ${HOST_UID}:anaconda
1818
ports:
19-
- 8080:80
19+
- 80:80
2020
command:
2121
- sh
2222
- -c

docs/mkdocs.yaml

Lines changed: 65 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,77 @@
11
# ---------------------- PROJECT SPECIFIC ---------------------------
22

3-
site_name: DataJoint Python
3+
site_name: DataJoint Documentation
44
repo_url: https://github.com/datajoint/datajoint-python
55
repo_name: datajoint/datajoint-python
66
nav:
7-
- DataJoint Python: getting-started/index.md
7+
- DataJoint Python: index.md
88
- Getting Started: getting-started/index.md
9-
- Existing Pipelines: concepts/existing-pipelines.md
10-
- Query Language:
11-
- Common Commands: query-lang/common-commands.md
12-
- Operators: query-lang/operators.md
13-
- Iteration: query-lang/iteration.md
14-
- Query Caching: query-lang/query-caching.md
9+
- Concepts:
10+
- Principles: concepts/principles.md
11+
- Glossary: concepts/glossary.md
12+
- System Administration:
13+
- Database Administration: sysadmin/dba.md
14+
- File Storage: sysadmin/filestore.md
15+
- Client Configuration:
16+
- Install: client/install.md
17+
- Credentials: client/creds.md
18+
- Settings: client/settings.md
19+
- File Stores: client/stores.md
20+
- Schema Design:
21+
- Schema Creation: design/schema.md
22+
- Table Definition:
23+
- Table Tiers: design/tables/tiers.md
24+
- Declaration Syntax: design/tables/declare.md
25+
- Primary Key: design/tables/primary.md
26+
- Attributes: design/tables/attributes.md
27+
- Lookup Tables: design/tables/lookup.md
28+
- Blobs: design/tables/blobs.md
29+
- Attachments: design/tables/attach.md
30+
- Filepaths: design/tables/filepath.md
31+
- Custom Datatypes: design/tables/customtype.md
32+
- Dependencies: design/tables/dependencies.md
33+
- Indexes: design/tables/indexes.md
34+
- Master-Part Relationships: design/tables/master-part.md
35+
- Schema Diagrams: design/diagrams.md
36+
- Entity Normalization: design/normalization.md
37+
- Data Integrity: design/integrity.md
38+
- Schema Recall: design/recall.md
39+
- Schema Drop: design/drop.md
40+
- Schema Modification: design/alter.md
41+
- Data Manipulations:
42+
- Insert: manipulation/insert.md
43+
- Delete: manipulation/delete.md
44+
- Update: manipulation/update.md
45+
- Transactions: manipulation/transactions.md
46+
- Data Queries:
47+
- Common Commands: query/common-commands.md
48+
- Fetch: query/fetch.md
49+
- Iteration: query/iteration.md
50+
- Operators: query/operators.md
51+
- Restrict: query/restrict.md
52+
- Projection: query/project.md
53+
- Join: query/join.md
54+
- Aggregation: query/aggregation.md
55+
- Union: query/union.md
56+
- Universal Sets: query/universals.md
57+
- Query Caching: query/query-caching.md
58+
- Computations:
59+
- Make Method: compute/make.md
60+
- Populate: compute/populate.md
61+
- Key Source: compute/key-source.md
62+
- Distributed Computing: compute/distributed.md
63+
- Internals:
64+
- SQL Transpilation: internal/transpilation.md
1565
- Reproducibility:
1666
- Table Tiers: reproduce/table-tiers.md
1767
- Make Method: reproduce/make-method.md
68+
- Existing Pipelines: existing-pipelines.md
1869
- Tutorials:
1970
- tutorials/json.ipynb
71+
- FAQ: faq.md
2072
- Develop: develop.md
21-
- Changelog: about/changelog.md
73+
- Citation: citation.md
74+
- Changelog: changelog.md
2275
- API: api/ # defer to gen-files + literate-nav
2376

2477
# ---------------------------- STANDARD -----------------------------
@@ -50,9 +103,6 @@ theme:
50103
name: Switch to light mode
51104
plugins:
52105
- search
53-
- redirects:
54-
redirect_maps:
55-
"index.md": "getting-started/index.md"
56106
- mkdocstrings:
57107
default_handler: python
58108
handlers:
@@ -95,11 +145,11 @@ markdown_extensions:
95145
- name: mermaid
96146
class: mermaid
97147
format: !!python/name:pymdownx.superfences.fence_code_format
148+
- pymdownx.magiclink # Displays bare URLs as links
149+
- pymdownx.tasklist: # Renders check boxes in tasks lists
150+
custom_checkbox: true
98151
extra:
99152
generator: false # Disable watermark
100-
analytics:
101-
provider: google
102-
property: !ENV GOOGLE_ANALYTICS_KEY
103153
version:
104154
provider: mike
105155
social:

docs/src/.overrides/assets/stylesheets/extra.css

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,35 @@
1515
html a[title="DataJoint"].md-social__link svg {
1616
color: var(--dj-primary);
1717
}
18+
1819
html a[title="Slack"].md-social__link svg {
1920
color: var(--dj-primary);
2021
}
22+
2123
html a[title="LinkedIn"].md-social__link svg {
2224
color: var(--dj-primary);
2325
}
26+
2427
html a[title="Twitter"].md-social__link svg {
2528
color: var(--dj-primary);
2629
}
30+
2731
html a[title="GitHub"].md-social__link svg {
2832
color: var(--dj-primary);
2933
}
34+
3035
html a[title="DockerHub"].md-social__link svg {
3136
color: var(--dj-primary);
3237
}
38+
3339
html a[title="PyPI"].md-social__link svg {
3440
color: var(--dj-primary);
3541
}
42+
3643
html a[title="StackOverflow"].md-social__link svg {
3744
color: var(--dj-primary);
3845
}
46+
3947
html a[title="YouTube"].md-social__link svg {
4048
color: var(--dj-primary);
4149
}
@@ -91,3 +99,7 @@ html a[title="YouTube"].md-social__link svg {
9199
/* previous/next text */
92100
/* --md-footer-fg-color: var(--dj-white); */
93101
}
102+
103+
[data-md-color-scheme="slate"] .jupyter-wrapper .Table Td {
104+
color: var(--dj-black)
105+
}

docs/src/.overrides/partials/nav.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
{#-
1515
Add DataJoint home link to navigation header, otherwise unchanged
1616
-#}
17-
<a href="https://datajoint.com/docs/" title="DataJoint">
17+
<a href="https://datajoint.com/docs/core/" title="DataJoint">
1818
⬅ Home
1919
</a>
2020
</label>
File renamed without changes.

0 commit comments

Comments
 (0)