devel/py-pycrdt-websocket 0.16.5 FreeBSD
WebSocket connector for pycrdt
- System
- FreeBSD
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- Last update
- Commit
633afb6f9d- License
- MIT
- Categories
- devel, python
- Package size
- 31.0 KiB, 155.5 KiB installed
Description
Pycrdt-websocket is a Python library for building WebSocket servers and clients that connect and synchronize shared documents. It can be used to create collaborative web applications.
The following diagram illustrates a typical architecture. The goal is to share a document among several clients.
Each client has an instance of a Doc, representing their view of a document. A shared document also lives in a room on the server side. Conceptually, a room can be seen as the place where clients collaborate on a document. The WebSocket to which a client connects points to the corresponding room through the endpoint path. In the example below, clients A and B connect to a WebSocket at path room-1, and thus both clients find themselves in a room called room-1. All the Doc synchronization logic is taken care of by the WebsocketProvider.
Each update to a shared document can be persisted to disk using a store, which can be a file or a database.
In the other systems
| System | Port | Version |
|---|---|---|
| FreeBSD | devel/py-pycrdt-websocket | 0.16.5 |
| DragonFly | devel/py-pycrdt-websocket | 0.15.4 |
| HardenedBSD | devel/py-pycrdt-websocket | 0.16.5 |
| GhostBSD | devel/py-pycrdt-websocket | 0.16.4 |
Install
Binary package:
pkg install py312-pycrdt-websocket
From the ports tree:
cd /usr/ports/devel/py-pycrdt-websocket/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= py312-pycrdt-websocket>0:devel/py-pycrdt-websocket
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 0.16.5 | 0.16.5 | - | 0.15.5 | 0.16.5 |
| FreeBSD:14:quarterly | 0.16.5 | 0.16.5 | n/a | 0.15.5 | 0.16.5 |
| FreeBSD:15:latest | 0.16.5 | 0.16.5 | n/a | 0.15.5 | 0.15.5 |
| FreeBSD:15:quarterly | 0.16.5 | 0.16.5 | n/a | n/a | n/a |
| FreeBSD:16:latest | 0.16.5 | 0.16.5 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependencies
As this port's Makefile names them.
Build 1
${PYTHON_PKGNAMEPREFIX}hatchling>=0: devel/py-hatchling
Runtime 3
${PYTHON_PKGNAMEPREFIX}anyio>=3.6.2<5: devel/py-anyio${PYTHON_PKGNAMEPREFIX}pycrdt>=0.14.0<0.15.0: devel/py-pycrdt${PYTHON_PKGNAMEPREFIX}pycrdt-store>=0.1.5<0.2.0: devel/py-pycrdt-store
The full lists below include those, and their dependencies in turn.
Build dependencies 19
- archivers/liblz4
- archivers/zstd
- devel/gettext-runtime
- devel/libffi
- devel/py-build
- devel/py-hatchling
- devel/py-installer
- devel/py-packaging
- devel/py-pathspec
- devel/py-pluggy
- devel/py-pyproject-hooks
- devel/py-trove-classifiers
- devel/readline
- lang/python312
- lang/python315
- math/mpdecimal
- print/indexinfo
- textproc/expat2
- textproc/py-tomlkit
Run dependencies 22
- archivers/liblz4
- archivers/zstd
- databases/py-sqlite-anyio
- databases/py-sqlite3
- databases/sqlite3
- devel/gettext-runtime
- devel/libedit
- devel/libffi
- devel/py-anyio
- devel/py-pycrdt
- devel/py-pycrdt-store
- devel/py-typing-extensions
- devel/readline
- dns/py-idna
- lang/python312
- lang/python315
- lang/tcl86
- math/libtommath
- math/mpdecimal
- print/indexinfo
- security/py-truststore
- textproc/expat2
Configuration
Options name: devel_pycrdt-websocket
| Option | Default | Description |
|---|---|---|
| DJANGO | off | Django support |
- USES
- python
- Service scripts
- none
Files
distinfo 1
| File | Size | SHA256 |
|---|---|---|
| pycrdt_websocket-0.16.5.tar.gz | 24566 | bda0b9ad31468a9d664464fc28c1b112cfde274065eb75844aa19950fb59d282 |
Master sites 2
- PYPI
- https://github.com/jupyter-server/pycrdt-websocket/releases/download/v0.16.5/