jupyter-ydoc 3.0.0a8__tar.gz → 3.0.0a9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.pre-commit-config.yaml +2 -2
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/CHANGELOG.md +18 -2
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/PKG-INFO +3 -3
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/javascript/package.json +1 -1
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/_version.py +1 -1
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/ybasedoc.py +7 -2
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/yblob.py +6 -3
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/ynotebook.py +6 -3
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/yunicode.py +6 -3
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/pyproject.toml +2 -2
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/dependabot.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/workflows/auto_author_assign.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/workflows/check-release.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/workflows/enforce-label.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/workflows/license-header.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/workflows/prep-release.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/workflows/publish-release.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.github/workflows/test.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.gitignore +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.licenserc.yaml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.yarn/releases/yarn-3.4.1.cjs +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/.yarnrc.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/LICENSE +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/README.md +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/Makefile +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/make.bat +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/_static/jupyter_logo.svg +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/_static/logo-icon.png +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/conf.py +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/custom.md +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/index.md +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/javascript_api.rst +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/overview.md +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/python_api.rst +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/docs/source/schema.md +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/__init__.py +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/py.typed +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/utils.py +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/jupyter_ydoc/yfile.py +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/lerna.json +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/package.json +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/pytest.ini +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/readthedocs.yml +0 -0
- {jupyter_ydoc-3.0.0a8 → jupyter_ydoc-3.0.0a9}/yarn.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
repos:
|
|
2
2
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
-
rev:
|
|
3
|
+
rev: v5.0.0
|
|
4
4
|
hooks:
|
|
5
5
|
- id: end-of-file-fixer
|
|
6
6
|
- id: check-case-conflict
|
|
@@ -17,7 +17,7 @@ repos:
|
|
|
17
17
|
exclude: ^\.yarn
|
|
18
18
|
|
|
19
19
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
20
|
-
rev: v0.6.
|
|
20
|
+
rev: v0.6.9
|
|
21
21
|
hooks:
|
|
22
22
|
- id: ruff
|
|
23
23
|
args: [--fix, --show-fixes]
|
|
@@ -2,6 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- <START NEW CHANGELOG ENTRY> -->
|
|
4
4
|
|
|
5
|
+
## 3.0.0a9
|
|
6
|
+
|
|
7
|
+
([Full Changelog](https://github.com/jupyter-server/jupyter_ydoc/compare/@jupyter/ydoc@3.0.0-a8...877e5b9bb449b6f4e2472337e41f27c3bf24ead1))
|
|
8
|
+
|
|
9
|
+
### Enhancements made
|
|
10
|
+
|
|
11
|
+
- Doc awareness [#277](https://github.com/jupyter-server/jupyter_ydoc/pull/277) ([@brichet](https://github.com/brichet))
|
|
12
|
+
|
|
13
|
+
### Maintenance and upkeep improvements
|
|
14
|
+
|
|
15
|
+
### Contributors to this release
|
|
16
|
+
|
|
17
|
+
([GitHub contributors page for this release](https://github.com/jupyter-server/jupyter_ydoc/graphs/contributors?from=2024-09-26&to=2024-10-10&type=c))
|
|
18
|
+
|
|
19
|
+
[@brichet](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_ydoc+involves%3Abrichet+updated%3A2024-09-26..2024-10-10&type=Issues) | [@davidbrochart](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_ydoc+involves%3Adavidbrochart+updated%3A2024-09-26..2024-10-10&type=Issues) | [@lumberbot-app](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_ydoc+involves%3Alumberbot-app+updated%3A2024-09-26..2024-10-10&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_ydoc+involves%3Apre-commit-ci+updated%3A2024-09-26..2024-10-10&type=Issues)
|
|
20
|
+
|
|
21
|
+
<!-- <END NEW CHANGELOG ENTRY> -->
|
|
22
|
+
|
|
5
23
|
## 3.0.0a8
|
|
6
24
|
|
|
7
25
|
([Full Changelog](https://github.com/jupyter-server/jupyter_ydoc/compare/@jupyter/ydoc@3.0.0-a7...b20878676d4564641ac142804eaf27331ddb342c))
|
|
@@ -20,8 +38,6 @@
|
|
|
20
38
|
|
|
21
39
|
[@davidbrochart](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_ydoc+involves%3Adavidbrochart+updated%3A2024-09-18..2024-09-26&type=Issues) | [@pre-commit-ci](https://github.com/search?q=repo%3Ajupyter-server%2Fjupyter_ydoc+involves%3Apre-commit-ci+updated%3A2024-09-18..2024-09-26&type=Issues)
|
|
22
40
|
|
|
23
|
-
<!-- <END NEW CHANGELOG ENTRY> -->
|
|
24
|
-
|
|
25
41
|
## 3.0.0a7
|
|
26
42
|
|
|
27
43
|
([Full Changelog](https://github.com/jupyter-server/jupyter_ydoc/compare/@jupyter/ydoc@3.0.0-a6...3f323117ba2e8cf36f0e06c0ec9b9fa2c192278b))
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: jupyter-ydoc
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.0a9
|
|
4
4
|
Summary: Document structures for collaborative editing using Ypy
|
|
5
5
|
Project-URL: Homepage, https://jupyter.org
|
|
6
6
|
Project-URL: Source, https://github.com/jupyter-server/jupyter_ydoc
|
|
@@ -10,7 +10,7 @@ License-File: LICENSE
|
|
|
10
10
|
Keywords: jupyter,pycrdt,yjs
|
|
11
11
|
Requires-Python: >=3.8
|
|
12
12
|
Requires-Dist: importlib-metadata>=3.6; python_version < '3.10'
|
|
13
|
-
Requires-Dist: pycrdt<0.
|
|
13
|
+
Requires-Dist: pycrdt<0.11.0,>=0.10.1
|
|
14
14
|
Provides-Extra: dev
|
|
15
15
|
Requires-Dist: click; extra == 'dev'
|
|
16
16
|
Requires-Dist: jupyter-releaser; extra == 'dev'
|
|
@@ -21,7 +21,7 @@ Requires-Dist: pydata-sphinx-theme; extra == 'docs'
|
|
|
21
21
|
Requires-Dist: sphinx; extra == 'docs'
|
|
22
22
|
Provides-Extra: test
|
|
23
23
|
Requires-Dist: pre-commit; extra == 'test'
|
|
24
|
-
Requires-Dist: pycrdt-websocket<0.
|
|
24
|
+
Requires-Dist: pycrdt-websocket<0.16.0,>=0.15.0; extra == 'test'
|
|
25
25
|
Requires-Dist: pytest; extra == 'test'
|
|
26
26
|
Requires-Dist: pytest-asyncio; extra == 'test'
|
|
27
27
|
Requires-Dist: websockets>=10.0; extra == 'test'
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
from abc import ABC, abstractmethod
|
|
5
5
|
from typing import Any, Callable, Dict, Optional
|
|
6
6
|
|
|
7
|
-
from pycrdt import Doc, Map, Subscription, UndoManager
|
|
7
|
+
from pycrdt import Awareness, Doc, Map, Subscription, UndoManager
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
class YBaseDoc(ABC):
|
|
@@ -20,17 +20,22 @@ class YBaseDoc(ABC):
|
|
|
20
20
|
_subscriptions: Dict[Any, Subscription]
|
|
21
21
|
_undo_manager: UndoManager
|
|
22
22
|
|
|
23
|
-
def __init__(self, ydoc: Optional[Doc] = None):
|
|
23
|
+
def __init__(self, ydoc: Optional[Doc] = None, awareness: Optional[Awareness] = None):
|
|
24
24
|
"""
|
|
25
25
|
Constructs a YBaseDoc.
|
|
26
26
|
|
|
27
27
|
:param ydoc: The :class:`pycrdt.Doc` that will hold the data of the document, if provided.
|
|
28
28
|
:type ydoc: :class:`pycrdt.Doc`, optional.
|
|
29
|
+
:param awareness: The :class:`pycrdt.Awareness` that shares non persistent data
|
|
30
|
+
between clients.
|
|
31
|
+
:type awareness: :class:`pycrdt.Awareness`, optional.
|
|
29
32
|
"""
|
|
30
33
|
if ydoc is None:
|
|
31
34
|
self._ydoc = Doc()
|
|
32
35
|
else:
|
|
33
36
|
self._ydoc = ydoc
|
|
37
|
+
self.awareness = awareness
|
|
38
|
+
|
|
34
39
|
self._ystate = self._ydoc.get("state", type=Map)
|
|
35
40
|
self._subscriptions = {}
|
|
36
41
|
self._undo_manager = UndoManager(doc=self._ydoc, capture_timeout_millis=0)
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
from functools import partial
|
|
5
5
|
from typing import Any, Callable, Optional
|
|
6
6
|
|
|
7
|
-
from pycrdt import Doc, Map
|
|
7
|
+
from pycrdt import Awareness, Doc, Map
|
|
8
8
|
|
|
9
9
|
from .ybasedoc import YBaseDoc
|
|
10
10
|
|
|
@@ -24,14 +24,17 @@ class YBlob(YBaseDoc):
|
|
|
24
24
|
}
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
|
-
def __init__(self, ydoc: Optional[Doc] = None):
|
|
27
|
+
def __init__(self, ydoc: Optional[Doc] = None, awareness: Optional[Awareness] = None):
|
|
28
28
|
"""
|
|
29
29
|
Constructs a YBlob.
|
|
30
30
|
|
|
31
31
|
:param ydoc: The :class:`pycrdt.Doc` that will hold the data of the document, if provided.
|
|
32
32
|
:type ydoc: :class:`pycrdt.Doc`, optional.
|
|
33
|
+
:param awareness: The :class:`pycrdt.Awareness` that shares non persistent data
|
|
34
|
+
between clients.
|
|
35
|
+
:type awareness: :class:`pycrdt.Awareness`, optional.
|
|
33
36
|
"""
|
|
34
|
-
super().__init__(ydoc)
|
|
37
|
+
super().__init__(ydoc, awareness)
|
|
35
38
|
self._ysource = self._ydoc.get("source", type=Map)
|
|
36
39
|
self.undo_manager.expand_scope(self._ysource)
|
|
37
40
|
|
|
@@ -6,7 +6,7 @@ from functools import partial
|
|
|
6
6
|
from typing import Any, Callable, Dict, Optional
|
|
7
7
|
from uuid import uuid4
|
|
8
8
|
|
|
9
|
-
from pycrdt import Array, Doc, Map, Text
|
|
9
|
+
from pycrdt import Array, Awareness, Doc, Map, Text
|
|
10
10
|
|
|
11
11
|
from .utils import cast_all
|
|
12
12
|
from .ybasedoc import YBaseDoc
|
|
@@ -47,14 +47,17 @@ class YNotebook(YBaseDoc):
|
|
|
47
47
|
}
|
|
48
48
|
"""
|
|
49
49
|
|
|
50
|
-
def __init__(self, ydoc: Optional[Doc] = None):
|
|
50
|
+
def __init__(self, ydoc: Optional[Doc] = None, awareness: Optional[Awareness] = None):
|
|
51
51
|
"""
|
|
52
52
|
Constructs a YNotebook.
|
|
53
53
|
|
|
54
54
|
:param ydoc: The :class:`pycrdt.Doc` that will hold the data of the document, if provided.
|
|
55
55
|
:type ydoc: :class:`pycrdt.Doc`, optional.
|
|
56
|
+
:param awareness: The :class:`pycrdt.Awareness` that shares non persistent data
|
|
57
|
+
between clients.
|
|
58
|
+
:type awareness: :class:`pycrdt.Awareness`, optional.
|
|
56
59
|
"""
|
|
57
|
-
super().__init__(ydoc)
|
|
60
|
+
super().__init__(ydoc, awareness)
|
|
58
61
|
self._ymeta = self._ydoc.get("meta", type=Map)
|
|
59
62
|
self._ycells = self._ydoc.get("cells", type=Array)
|
|
60
63
|
self.undo_manager.expand_scope(self._ycells)
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
from functools import partial
|
|
5
5
|
from typing import Any, Callable, Optional
|
|
6
6
|
|
|
7
|
-
from pycrdt import Doc, Text
|
|
7
|
+
from pycrdt import Awareness, Doc, Text
|
|
8
8
|
|
|
9
9
|
from .ybasedoc import YBaseDoc
|
|
10
10
|
|
|
@@ -23,14 +23,17 @@ class YUnicode(YBaseDoc):
|
|
|
23
23
|
}
|
|
24
24
|
"""
|
|
25
25
|
|
|
26
|
-
def __init__(self, ydoc: Optional[Doc] = None):
|
|
26
|
+
def __init__(self, ydoc: Optional[Doc] = None, awareness: Optional[Awareness] = None):
|
|
27
27
|
"""
|
|
28
28
|
Constructs a YUnicode.
|
|
29
29
|
|
|
30
30
|
:param ydoc: The :class:`pycrdt.Doc` that will hold the data of the document, if provided.
|
|
31
31
|
:type ydoc: :class:`pycrdt.Doc`, optional.
|
|
32
|
+
:param awareness: The :class:`pycrdt.Awareness` that shares non persistent data
|
|
33
|
+
between clients.
|
|
34
|
+
:type awareness: :class:`pycrdt.Awareness`, optional.
|
|
32
35
|
"""
|
|
33
|
-
super().__init__(ydoc)
|
|
36
|
+
super().__init__(ydoc, awareness)
|
|
34
37
|
self._ysource = self._ydoc.get("source", type=Text)
|
|
35
38
|
self.undo_manager.expand_scope(self._ysource)
|
|
36
39
|
|
|
@@ -13,7 +13,7 @@ requires-python = ">=3.8"
|
|
|
13
13
|
keywords = ["jupyter", "pycrdt", "yjs"]
|
|
14
14
|
dependencies = [
|
|
15
15
|
"importlib_metadata >=3.6; python_version<'3.10'",
|
|
16
|
-
"pycrdt >=0.
|
|
16
|
+
"pycrdt >=0.10.1,<0.11.0",
|
|
17
17
|
]
|
|
18
18
|
|
|
19
19
|
[[project.authors]]
|
|
@@ -31,7 +31,7 @@ test = [
|
|
|
31
31
|
"pytest",
|
|
32
32
|
"pytest-asyncio",
|
|
33
33
|
"websockets >=10.0",
|
|
34
|
-
"pycrdt-websocket >=0.
|
|
34
|
+
"pycrdt-websocket >=0.15.0,<0.16.0",
|
|
35
35
|
]
|
|
36
36
|
docs = [
|
|
37
37
|
"sphinx",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|