Giter Club home page Giter Club logo

Comments (20)

fperez avatar fperez commented on June 2, 2024 4

Ok, thx @martinRenou!

Given there's no objections so far, folks like @juanitorduz need this, and I have very limited time, I'm going to do it now. Tagging 0.1.4 and pushing out, 🤞 :)

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024 2

Ok, now for real!, also on PyPI.

I had to yank 0.1.4 from PyPI and just made a 0.1.5.

Oh well, classic mix-up from not doing this all the time: I was working off my own fork which I hadn't updated from upstream in ages, and ended up making 0.1.4 out of a weird mix of old upstream + local fixes.

I tell my students to always watch their remotes when doing this kind of thing, yet here we are :)

In any case, now it's actually done, and I can "get back to work" :)

from matplotlib-inline.

juanitorduz avatar juanitorduz commented on June 2, 2024 2

Thanks @fperez ! I can confirm that

matplotlib==3.5.3
matplotlib-inline==0.1.5

are working as expected (at least in a couple of tests).

Before "going back to work" get yourself a nice coffee / drink ;)

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024 1

Wohoo!!.

Thx @martinRenou & @juanitorduz! It was fun to dust off my "release manager" hat, even if for a tiny bit :) I had a badly outdated pypirc file with the old .io urls so it took me a bit of head-scratching.

Glad to have this out - I hope the conda build happens automaticall, as I pushed a 0.1.4 tag too into this repo. If it hasn't happened in a day or two we can check again.

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024 1

I checked the build, etc, but I mistakenly was working off an outdated fork, so I think I missed a few commits. Let me check before you install.

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

Yup, thanks for raising this issue @kishkash555!

@agoose77, @minrk & team - any objection to making a release soon? I'm going to be teaching with this code in a few weeks and would rather not deal with that annoying rcParams issue any more (I have a bunch of HW assignments with the hacky fix in there).

I haven't made a release of any of our projects in ages, but I'm happy to dust off my keys for this one :) Any objections?

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

Ping @martinRenou @Carreau @SylvainCorlay - any of you have bandwidth to cut a release? If not LMK and I can dust things off to do it , though I don't think I have the auth on PyPI for this particular package.

I also see the conda-forge feedstock is @martinRenou's; I'm going to guess that doesn't need any updates, but I'm also willing to help there if needed.

from matplotlib-inline.

martinRenou avatar martinRenou commented on June 2, 2024

Thanks for pinging me @fperez, I added you as an owner on Pypi :)

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

Thx @martinRenou!

I've accepted the invite and updated my PyPI account with 2FA, now that I'm using it again...

Anything else I should keep in mind before cutting a release? I haven't released in PyPI in ages (probably an old IPython 0.11 series or so)...

It seems this project simply uploads a wheel and a source package...

I don't see a pyproject.toml file, but for now I'm happy leaving things as-is with the setup.cfg we have...

I ran a quick test and I can build the wheel and source dist just fine.

Anything else people can think of before a release? If not LMK and I'll update the version #...

On that topic: I plan on just calling it 0.1.4, as the changes are pretty minimal. But if folks prefer we can call it 0.2.0 too.

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

Also @martinRenou one question: once I make the PyPI release, does the conda-forge build get triggered automatically, or do I need to do anything else on that end?

from matplotlib-inline.

martinRenou avatar martinRenou commented on June 2, 2024

I usually just do:

python -m build

Then I check that the wheel and source dist are correct under dist/. Then I do:

twine upload dist/*

does the conda-forge build get triggered automatically, or do I need to do anything else on that end?

I am not sure how conda-forge gets triggered honestly. But pushing a tag on the repo and pushing the Pypi release seems to trigger it.

You can also push a PR manually to the feedstock if you want, adding yourself as a maintainer https://github.com/conda-forge/matplotlib-inline-feedstock

from matplotlib-inline.

juanitorduz avatar juanitorduz commented on June 2, 2024

Thank you @fperez for pushing this. Much appreciated! It is definitively a big plus for users like me but it is definitively not urgent so no rush / stress 😅 !

from matplotlib-inline.

juanitorduz avatar juanitorduz commented on June 2, 2024

Thank you !

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

Mmh - hold off. I might have messed up!

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

🤦

from matplotlib-inline.

martinRenou avatar martinRenou commented on June 2, 2024

Thank you!

from matplotlib-inline.

sryza avatar sryza commented on June 2, 2024

After this new release, over at Dagster, we're seeing failures in our tests that do plotting inside notebooks. The error we're seeing is:

[2022-08-17T00:37:46Z] /workdir/examples/docs_snippets/.tox/py37/lib/python3.7/site-packages/matplotlib/pyplot.py in subplots(nrows, ncols, sharex, sharey, squeeze, subplot_kw, gridspec_kw, **fig_kw)
--
  | [2022-08-17T00:37:46Z]    1451
  | [2022-08-17T00:37:46Z]    1452     """
  | [2022-08-17T00:37:46Z] -> 1453     fig = figure(**fig_kw)
  | [2022-08-17T00:37:46Z]    1454     axs = fig.subplots(nrows=nrows, ncols=ncols, sharex=sharex, sharey=sharey,
  | [2022-08-17T00:37:46Z]    1455                        squeeze=squeeze, subplot_kw=subplot_kw,
  | [2022-08-17T00:37:46Z]
  | [2022-08-17T00:37:46Z] /workdir/examples/docs_snippets/.tox/py37/lib/python3.7/site-packages/matplotlib/pyplot.py in figure(num, figsize, dpi, facecolor, edgecolor, frameon, FigureClass, clear, **kwargs)
  | [2022-08-17T00:37:46Z]     808             facecolor=facecolor, edgecolor=edgecolor, frameon=frameon,
  | [2022-08-17T00:37:46Z]     809             FigureClass=FigureClass, **kwargs)
  | [2022-08-17T00:37:46Z] --> 810         fig = manager.canvas.figure
  | [2022-08-17T00:37:46Z]     811         if fig_label:
  | [2022-08-17T00:37:46Z]     812             fig.set_label(fig_label)
  | [2022-08-17T00:37:46Z]
  | [2022-08-17T00:37:46Z] AttributeError: 'NoneType' object has no attribute 'canvas'

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

Mmh, sorry to hear that @sryza! Any chance you could provide us with

a) a self-contained small example that produces the problem
b) version info on matplotlib that you're using?

I'm happy to investigate, but so far I can't seem to reproduce your failure with some simple attempts.

from matplotlib-inline.

sryza avatar sryza commented on June 2, 2024

Here's the notebook that's triggering it: https://github.com/dagster-io/dagster/blob/master/examples/docs_snippets/docs_snippets/legacy/data_science/iris-kmeans_2.ipynb.

This is with matplotlib 3.5.3.

We're running it through papermill.

from matplotlib-inline.

fperez avatar fperez commented on June 2, 2024

Great, thanks for the reproducible case @sryza! I've managed to boil it down to this. A notebook with just this in one cell will show the problem:

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

# if the next line is uncommented, the bug disappears!
#import matplotlib_inline

g = sns.PairGrid(pd.DataFrame(dict(a=[1])))
plt.figure()

Oh, and as I was looking for the PR culprit, I see that @1kastner in #19 kindly offered what I think is the right fix :)

Let me double check and we'll provide an update quickly.

from matplotlib-inline.

Related Issues (17)

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.