Giter Site home page Giter Site logo

globus-jupyterlab's Introduction

Globus JupyterLab

Globus Jupyterlab is an extension to Jupyterlab for easily submitting Globus Transfers within a running lab environment. Integration within the Jupyterlab filemanager makes starting transfers just a few clicks away!

Install with the following:

pip install globus-jupyterlab

For information on usage, see the Read-The-Docs.

Developing

For development, use the following instructions:

# install the extension in editable mode
python -m pip install -e .

# install your development version of the extension with JupyterLab
jupyter labextension develop . --overwrite

# build the TypeScript source after making changes
jlpm run build

# start JupyterLab
jupyter lab

globus-jupyterlab's People

Contributors

braumann avatar dependabot[bot] avatar ericblau avatar garri1105 avatar nickolausds avatar sturoscy-personal avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

globus-jupyterlab's Issues

Logging in twice causes error

When logging in in this order:

  • Click sign in button
  • login with globus
  • (misplace auth code given by Globus)
  • Click 'cancel' to expose login button again
  • Click sign in button a second time

Results in the following error by Globus

code_challenge reuse detected

Refreshing the page is a workaround for this problem.

Update dependencies to JupyterLab 1.0.1

@gneezyn this is the new repo for the JupyterLab extension.

Can you fork this one, and update the dependencies in package.json to reflect the latest JupyterLab releases? In particular, @jupyterlab/application, @jupyterlab/apputils, @jupyterlab/filebrowser, and @jupyterlab/terminal? Currently these are now at 1.0.1 after the initial 1.0 release of JupyterLab.

Update docs

The docs list a couple of unstable features in this package, including:

  • Search support
  • Globus Connect Personal

These should probably be taken out for the time being until we really decide we want to support them. The minimum functionality we should target should be the transfer features.

Use JupyterHub tokens and client when available

I'm not sure if this is possible because of the distinction between Jupyter Server and the JupyterHub Globus client, but when using this extension for a JupyterHub instance using Globus auth, it would be ideal to leverage the tokens, etc., already available. It wasn't clear if this was possible using the Customized Transfer Submissions described in the docs.

Remove or Update GCP Lookup Code

The extension tries to find a local Globus endpoint by checking for certain files. Currently this only works for Windows systems. It either needs to follow the same mechanism as the Globus CLI, or be removed for now. @gneezyn

Javascript error transfering file from JupyterLab

When I select a file in JupyterLab and attempt to transfer it to a remote Globus endpoint, it appears as if nothing happens. But when I open my Javascript console I see the following:

Uncaught (in promise) TypeError: b[0] is undefined
    onClick 909.9bf03a6db83e37f798af.js:1
    React 5

Jumping to that line ...

... a({response:{status:"DirectorySelectionError",statusText:"Please only select one remote directory to transfer data to"}});else if("file"==b[0].type)h(!1),a({response:{status:"DirectorySelectionError", ...

  • JupyterLab: 3.4.7
  • globus_jupyterlab: 1.0.0-beta.9

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.