Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to GR or Plots for plotting and guide people to use 1.9 #554

Open
jon-wurtz opened this issue May 8, 2023 · 4 comments
Open

Switch to GR or Plots for plotting and guide people to use 1.9 #554

jon-wurtz opened this issue May 8, 2023 · 4 comments
Labels
enhancement New feature or request

Comments

@jon-wurtz
Copy link
Collaborator

Confirm that Bloqade does not need Python as a dependency. I think that when Bloqade is installed, it also adds an entire conda environment. This can sometimes run into environment issues.

This should perhaps extend to all of our examples too. That is a little harder, of course, because Python plots are pretty. However, it does remove a barrier to running examples!

@jon-wurtz jon-wurtz added the bug Something isn't working label May 8, 2023
@weinbe58
Copy link
Member

weinbe58 commented May 8, 2023

@Roger-luo We can try to make these a weak dependence but It doesn't look like Julia 1.9 is being widely yet so perhaps splitting the visualization tools into its own sub-package would be best?

@weinbe58 weinbe58 added enhancement New feature or request and removed bug Something isn't working labels May 8, 2023
@Roger-luo
Copy link
Member

Roger-luo commented May 8, 2023

There are a few things that can be done here:

  1. We can switch to a pure Julia plotting backend in 1.9 now (e.g. Plots or GR, they have similar plotting quality as matplotlib, and has a much smaller binary size than matplotlib), the latency is quite reasonable in 1.9. Its stable version is just released, and we can guide people with latency issues to use 1.9 (HPC center require their own version, so 1.9 may take time to propagate)
  2. Figure out why it's downloading the entire conda environment or why conda is having trouble setting up environments that shouldn't because we are using micromamba and only installs the minimum dependencies.
  3. Splitting out plotting functionalities would be nice (we can always re-export that in the meta-package), but it doesn't resolve the installation problem.

after the above steps, we can start moving things into weakdeps.

@Roger-luo Roger-luo changed the title [BUG] Remove any python/matplotlib dependancy Switch to GR or Plots for plotting and guide people to use 1.9 May 8, 2023
@jon-wurtz
Copy link
Collaborator Author

Pending more python functionality, perhaps we can try more towards (1)? This way the user can choose their own plotting backends and where necessary (eg visualizing waveforms) a julia plot can do. Is 1.9 necessary for that?

@Roger-luo
Copy link
Member

Roger-luo commented May 9, 2023

Is 1.9 necessary for that?

nope, the only difference is on 1.9 the experience will be much better because the latency of the first plot will be unnoticeable. So compatibility is guaranteed to all 1.x versions, tho 1.9 is recommended. But this was the main reason why we were not using Plots/GR because there was no option for good UX back then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants