-
Notifications
You must be signed in to change notification settings - Fork 43
updated to digikey v4 and python 3.12 #51
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
base: master
Are you sure you want to change the base?
Conversation
Hello @hurricaneJoef thanks for your work! Is your fork compatible with Python 3.10+ versions or is it exclusive to Python 3.12+ versions? |
I have not tested it yet on 3.10 but its not using anything specific to 3.12 or 3.11. please let me know if it does work |
Sounds good, thanks! |
@hurricaneJoef I am not able to install without the fixes in #47, would you be able to pull those in? The error I get: File "/home/francois/development/Ki-nTree/kintree/search/digikey_api.py", line 3, in <module>
import digikey
File "/home/francois/development/Ki-nTree/.venv/lib/python3.12/site-packages/digikey/__init__.py", line 1, in <module>
from digikey.v4.api import (keyword_search, product_details, digi_reel_pricing, suggested_parts,
File "/home/francois/development/Ki-nTree/.venv/lib/python3.12/site-packages/digikey/v4/api.py", line 3, in <module>
from distutils.util import strtobool
ModuleNotFoundError: No module named 'distutils' |
@eeintech @hurricaneJoef |
Does anybody here know if there is a fork of this library being maintained that has both these changes and those from #47 merged in? Edit: For now, I am switching to @hurricaneJoef's fork. Here are some commands to do that, in case anyone else wants to:
|
That's the one we're using for Ki-nTree |
@@ -0,0 +1,171 @@ | |||
import os | |||
import logging | |||
from distutils.util import strtobool |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Distutils is gone in python 3.12: https://docs.python.org/3/library/distutils.html, I'm not sure how this is working for you.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To get this working with 3.12 I just used:
`
def strtobool(val):
"""Convert a string representation of truth to true (1) or false (0).
True values are 'y', 'yes', 't', 'true', 'on', and '1';
false values are 'n', 'no', 'f', 'false', 'off', and '0'.
Raises ValueError if 'val' is anything else.
"""
val = val.lower()
if val in ('y', 'yes', 't', 'true', 'on', '1'):
return 1
elif val in ('n', 'no', 'f', 'false', 'off', '0'):
return 0
else:
raise ValueError(f"invalid truth value {val}")
`
The function is only called once in the library so there might be a more eloquent solution.
No description provided.