Skip to main content

jupyterlab extension

Project description

Neural-Compressor-EXT-LAB

Requirements

  • JupyterLab >= 3.0

Install

Python Backend

To install the Python source code, execute:

python setup.py install

Note: After the extension is published to the PyPI or conda-forge repositories, you can easily install the extension using pip or conda, such as:

pip install neural-compressor-ext-lab

Javascript/Typescript Front-end

Install lab extension from source code with:

jupyter labextension install --py neural-compressor-ext-lab

Note: After the extension is published to the NPM repositories, you can easily install the extension from jupyter lab extension market and don't need to execute the above command manually.

Debugging

Check if the package has been added into the extension list:

jupyter labextension list
jupyter serverextension list

If the neural-compressor-ext-lab is not in serverextension list, try to enable the package to become a server extension:

jupyter serverextension enable --py neural-compressor-ext-lab

debugging tip :if the enable fails, try running:

jupyter lab --ServerAPP.jpserver_extension="{'neural-compressor-ext-lab':True}" --debug

Uninstall

To remove the extension, execute:

pip uninstall neural-compressor-ext-lab

Access jupyter lab remotely using SSH

Launch the jupyter lab service on the remote server:

jupyter lab --no-browser --port=8889

Start SSH in a local terminal:

ssh -N -f -L localhost:8888:localhost:8889 username@serverIP

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 Neural_Coder 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 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 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 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

Development uninstall

pip uninstall neural-compressor-ext-lab

In development mode, you will also need to remove the symlink created by jupyter labextension develop command. To find its location, you can run jupyter labextension list to figure out where the labextensions folder is located. Then you can remove the symlink named Neural_Coder within that folder.

Testing the extension

Frontend tests

This extension is using Jest for JavaScript code testing.

To execute them, execute:

jlpm
jlpm test

Integration tests

This extension uses Playwright for the integration tests (aka user level tests). More precisely, the JupyterLab helper Galata is used to handle testing the extension in JupyterLab.

More information are provided within the ui-tests README.

Packaging the extension

See RELEASE

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

Built Distribution

File details

Details for the file neural-compressor-ext-lab-0.1.dev20220824.tar.gz.

File metadata

File hashes

Hashes for neural-compressor-ext-lab-0.1.dev20220824.tar.gz
Algorithm Hash digest
SHA256 6e70fecd1e7d7a08b7e3ac6b054ed87f7a8e630b25853dbe29c553eec1927e78
MD5 dd9a40eb6493d1797e4ad376124c0ba1
BLAKE2b-256 74f0940651e492b04ebaeff3e338f8eee1be6d03e235bbd4b160d0d3eade65e4

See more details on using hashes here.

File details

Details for the file neural_compressor_ext_lab-0.1.dev20220824-py3-none-any.whl.

File metadata

File hashes

Hashes for neural_compressor_ext_lab-0.1.dev20220824-py3-none-any.whl
Algorithm Hash digest
SHA256 d1ce704f7eb5d945ec729442a69ff189117d50f0cd987b8905b9defcf836e9b2
MD5 ef34296521d3bc53fe1a87789f16c0b4
BLAKE2b-256 3d45c2105f459c57aa293fa837ed6c19b77a62c6dd1bf94c59b7932011022374

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