gtaylor / python-colormath

A python module that abstracts common color math operations. For example, converting from CIE L*a*b to XYZ, or from RGB to CMYK
python-colormath.readthedocs.org
BSD 3-Clause "New" or "Revised" License
456 stars 82 forks source link

DeprecationWarning: np.asscalar(a) is deprecated since NumPy v1.16, use a.item() instead #104

Open JensBloemer opened 4 years ago

JensBloemer commented 4 years ago

Hi Greg,

color_diff.py uses numpy.asscalar(), could this be changed to using numpy.ndarray.item() to be able using Numpy >= 1.16 without warnings or 1.18.1 without errors? Thanks in advance, best regards Jens

JensBloemer commented 4 years ago

Ah, sorry, just saw it's already fixed in the code... is there any release planned soonish?

DarLador commented 4 years ago

I'm having the same issue. With Numpy 1.16.5 I'm getting this warning: DeprecationWarning: np.asscalar(a) is deprecated since NumPy v1.16, use a.item() instead 'a.item() instead', DeprecationWarning, stacklevel=1)

aleferna12 commented 2 years ago

Since the release of numpy 1.23 has officially removed asscalar, I think this thread became relevant again.

Now colormath is no longer compatible with the latest version of numpy. The issue is fixed already, maybe its time to roll a new release?

A package of mine depends on colormath and builds are no longer passing. I'm going to downgrade numpy requirements, but it would be lovely to see this issue fixed with a minor 3.0.1 release!

jbh2155 commented 2 years ago

I'm having the same issue as @DarLador. I agree with @aleferna12 that it would be awesome not to have to downgrade to a previous numpy version. Thanks in advance!

Tasse00 commented 1 year ago

temporary solution, this worked for my case

import numpy

def patch_asscalar(a):
    return a.item()

setattr(numpy, "asscalar", patch_asscalar)