plotly / plotly/plotly.py

Add a script to simplify testing plotly.js commits on the plotly.py side

Open
#4,638 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature P3 testing
Dominant language
Python
Stars
18.8k
Forks
2.8k
Avg merge
16h 26m
Merged PRs (30d)
21

Description

In our contributing docs we have a section that describes how one could use a plotly.js bundle to test bundles from the last commits of pull requests or any plotly.js branch.
https://github.com/plotly/plotly.py/blob/master/contributing.md#circleci-release

Screenshot from 2024-06-17 10-01-10

This is generally fine; however, it has certain limitations.
For example the CircleCI keeps the artifatcs for just for few days (around two weeks).
So one may need to rerun the build process on CI after a while.
etc.


I suggest we add a script where one provides a link to a plotly.js commit similar to https://github.com/plotly/plotly.js#caf32e57cfdbd370076b926f84c114093f62f0b9 and then it updates the package file, install plotlyjs and rebuilt the bundles. Then copy the new file over.
Something like:

cd packages/javascript/jupyterlab-plotly/
npm install https://github.com/plotly/plotly.js#caf32e57cfdbd370076b926f84c114093f62f0b9
cd node_modules/plotly.js
npm install
npm run bundle
cp dist/plotly.min.js ../../../../../packages/python/plotly/plotly/package_data/plotly.min.js

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the CircleCI release section in contributing.md and the existing package path packages/javascript/jupyterlab-plotly/. Review the npm install and bundle commands described in the issue, including the destination packages/python/plotly/plotly/package_data/plotly.min.js; done means a script can accept a plotly.js commit link, rebuild the bundle, and copy the resulting file.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, python, shell
Domain
build-system, tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.