Serve neo4j-browser with Starlette and uvicorn (the optional browser extra) instead of a hand-written HTTP server, and handle Bolt over WebSocket with the websockets library's Sans-I/O protocol. Rename Dockerfile, .dockerignore and docker/ to Containerfile, .containerignore and container/. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Vendored license texts
License files for Python packages that pgAdmin depends on whose PyPI releases do
not include one. container/collect-python-licenses.py copies them into the image.
Directory names are the PyPI project names.
| Package | License | Source of the text |
|---|---|---|
| dnspython | ISC | https://github.com/rthalley/dnspython/blob/v2.9.0/LICENSE |
| Flask-Principal | MIT | https://github.com/mattupstate/flask-principal/blob/0.4.0/LICENSE |
| ua-parser-builtins | Apache-2.0 | https://github.com/ua-parser/uap-python/blob/master/LICENSE; it bundles data from uap-core: https://github.com/ua-parser/uap-core/blob/master/LICENSE |