Skip to main content

A Jupyterlab extension to make, download and extract archive files.

Project description

jupyter-archive

Extension status Github Actions Status Binder Version PyPI Conda (channel only)

A Jupyterlab extension to make, download and extract archive files.

Features:

  • Download selected or current folder as an archive.
  • Supported formats: 'zip', 'tar.gz', 'tar.bz2' and 'tar.xz'.
  • Archiving and downloading are non-blocking for Jupyter. UI can still be used.
  • Archive format can be set in the JLab settings.
  • Alternatively, you can choose the format in the file browser menu (the format setting needs to be set to null).
  • Decompress an archive directly in file browser.
  • Notebok client extension not available. Contributions are welcome.

jupyter-archive in action

Configuration

The server extension has some configuration settings -- the values below are the default one:

{
  "JupyterArchive": {
    "stream_max_buffer_size": 104857600, // The max size of tornado IOStream buffer
    "handler_max_buffer_length": 10240, // The max length of chunks in tornado RequestHandler
    "archive_download_flush_delay": 100 // The delay in ms at which we send the chunk of data to the client.
  }
}

You can also set new values with the following environment variables:

  • JA_IOSTREAM_MAX_BUFFER_SIZE
  • JA_HANDLER_MAX_BUFFER_LENGTH
  • JA_ARCHIVE_DOWNLOAD_FLUSH_DELAY

Requirements

  • JupyterLab >= 3.0

For JupyterLab 2.x, have look there.

Install

pip install jupyter-archive

Or

conda install -c conda-forge jupyter-archive

Uninstall

pip uninstall jupyter-archive

Or

conda remove jupyter-archive

Contributing

Development install

Note: You will need NodeJS to build the extension package.

The jlpm command is JupyterLab's pinned version of yarn that is installed with JupyterLab. You may use yarn or npm in lieu of jlpm below.

# Clone the repo to your local environment
# Change directory to the jupyter-archive directory
# Install package in development mode
pip install -e .
# Link your development version of the extension with JupyterLab
jupyter labextension develop . --overwrite
# Server extension must be manually installed in develop mode
jupyter server extension enable jupyter_archive
# Rebuild extension Typescript source after making changes
jlpm run build

You can watch the source directory and run JupyterLab at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension.

# Watch the source directory in one terminal, automatically rebuilding when needed
jlpm run watch
# Run JupyterLab in another terminal
jupyter lab

With the watch command running, every saved change will immediately be built locally and available in your running JupyterLab. Refresh JupyterLab to load the change in your browser (you may need to wait several seconds for the extension to be rebuilt).

By default, the jlpm run build command generates the source maps for this extension to make it easier to debug using the browser dev tools. To also generate source maps for the JupyterLab core extensions, you can run the following command:

jupyter lab build --minimize=False

License

Under BSD license. See LICENSE.

Authors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter-archive-3.3.4.tar.gz (24.7 kB view details)

Uploaded Source

Built Distribution

jupyter_archive-3.3.4-py3-none-any.whl (33.4 kB view details)

Uploaded Python 3

File details

Details for the file jupyter-archive-3.3.4.tar.gz.

File metadata

  • Download URL: jupyter-archive-3.3.4.tar.gz
  • Upload date:
  • Size: 24.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for jupyter-archive-3.3.4.tar.gz
Algorithm Hash digest
SHA256 4f420d5a63876735d60740254cf9e18391a17603ccef30783a07f14fc9b5d179
MD5 3d50bfdf1406b48716b0647360a42b8a
BLAKE2b-256 ef6ceb9c58cf81534754000bdda8bf84bace9893001911857b85142409e91c64

See more details on using hashes here.

File details

Details for the file jupyter_archive-3.3.4-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyter_archive-3.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 32c8162c09401a3911e0778a2012c56403e920b67c0acc4bb9300cf3a8bca296
MD5 7fba632ec10595572c7ec2d49e627acc
BLAKE2b-256 bbb933002f31b29ae593f97e1d5503da2005bfab247af5b5f97c74f41464fd3c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page