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
# 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.2.0.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

jupyter_archive-3.2.0-py3-none-any.whl (32.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jupyter-archive-3.2.0.tar.gz
  • Upload date:
  • Size: 23.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for jupyter-archive-3.2.0.tar.gz
Algorithm Hash digest
SHA256 f4757d53f49ff5999c8a1df64e6db01ca02929786efd4aad6010ee3b8d9ba93d
MD5 dfba65d308e43cab4c56a598a2529fd1
BLAKE2b-256 b5c19bd339d01f11550cc1128017c7cf0b229a98ed9b51953abef4b6347d192c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jupyter_archive-3.2.0-py3-none-any.whl
  • Upload date:
  • Size: 32.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for jupyter_archive-3.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7664dbb795ff58f2e5ac26493594ded427540484452974a60b22d4a2fd13052
MD5 0af40006c55b1692d7454e27583e3f60
BLAKE2b-256 433d776d0505a1acd0d54766b83cb3d0fb08c40e20726da24e69049cf644a8a1

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