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

Project dependencies may have API risk issues #62

Open
PyDeps opened this issue Oct 25, 2022 · 0 comments
Open

Project dependencies may have API risk issues #62

PyDeps opened this issue Oct 25, 2022 · 0 comments

Comments

@PyDeps
Copy link

PyDeps commented Oct 25, 2022

Hi, In ActionAI, inappropriate dependency versioning constraints can cause risks.

Below are the dependencies and version constraints that the project is using

tensorflow>=2.6.2
scipy
scikit-learn
opencv-contrib-python
pandas
pillow

The version constraint == will introduce the risk of dependency conflicts because the scope of dependencies is too strict.
The version constraint No Upper Bound and * will introduce the risk of the missing API Error because the latest version of the dependencies may remove some APIs.

After further analysis, in this project,
The version constraint of dependency scikit-learn can be changed to >=0.15.0,<=0.20.4.
The version constraint of dependency pandas can be changed to >=0.4.0,<=0.6.0.
The version constraint of dependency pandas can be changed to >=0.13.0,<=0.23.4.
The version constraint of dependency pillow can be changed to ==9.2.0.
The version constraint of dependency pillow can be changed to >=2.0.0,<=9.1.1.

The above modification suggestions can reduce the dependency conflicts as much as possible,
and introduce the latest version as much as possible without calling Error in the projects.

The invocation of the current project includes all the following methods.

The calling methods from the scikit-learn
sklearn.utils.linear_assignment_.linear_assignment
random.choice
The calling methods from the pandas
pandas.DataFrame.to_csv
pandas.read_csv
The calling methods from the pillow
PIL.Image.fromarray
PIL.Image.open
The calling methods from the all methods
numpy.where
pickle.load
transformer.PoseExtractor.transform
feat_array.append
subprocess.Popen.communicate
numpy.zeros.tolist
body_labels.items
keras.optimizers.RMSprop
tracker.annotate.sub_
datetime.datetime.now
self.cubit_q.append
utils.source_capture
cv2.resize
tensorflow.contrib.lite.Interpreter.get_tensor
person.PersonTracker.set_pose
pygame.joystick.Joystick.init
pandas.read_csv.to_csv
cv2.imread.sub_
cv2.VideoCapture.release
actionModel
cv2.drawMarker
tensorflow.keras.models.Sequential
cv2.VideoCapture.set
a_idx.data.cpu.numpy
sample.reshape.reshape
lstm_model.compile
a_idx.data.cpu
self.parse_objects
screen_size.getScreenDims
lstm_model.summary
load_data
numpy.random.randint
numpy.vstack
model.lstm_model.fit
open
self.body_labels.values
motionClassifier.pose
str
model.lstm_model
logging.StreamHandler
utils.img_obj.annotate
humans
self.q.append
cv2.rectangle
lstm_model.fit
ky.pose_dict.values
augment
numpy.random.choice
sys.exit
numpy.sum
self.motion_path.os.path.splitext.split
isinstance
control.getButton
self.interpreter.get_tensor
cv2.threshold
self.interpreter.get_output_details
self.get_keypoints.append
self.formatPose
cv2.VideoCapture.read
cv2.dilate
numpy.sin
bbox.append
random.uniform
body_dict.get
lstm_model.add
X_train.reshape.reshape
self.motion.pose
get_bbox.append
trackers.append
get_bbox
image.astype.astype
mean.image.sub_.div_
pandas.read_csv.iterrows
self.cam.read
PoseExtractor
model.lstm_model.predict
idx.trackers.set_bbox
tracker.annotate
tensorflow.keras.models.load_model.save
generate_stickfig
os.path.splitext
keras.models.Sequential
tensorflow.keras.models.load_model
keras.layers.Dropout
unmatched_trackers.append
ss.N.x.reshape.kp_rotate.np.apply_along_axis.flatten
idx.trackers.set_pose
rand_shift.copy
numpy.concatenate.append
cv2.imwrite
trackers.pop
torch2trt.TRTModule
body.values
argparse.ArgumentParser.add_argument
self.motion_model.predict
self.interpreter.get_input_details
ffwd_n_avg
utils.source_capture.read
numpy.linalg.norm
ky.pose_dict.keys
self.flow.index
trainModel
cv2.imread.resize
self.run_inference
logging.getLogger.info
image.np.expand_dims.astype
numpy.empty
open.close
argparse.ArgumentParser
PIL.Image.fromarray
tensorflow.keras.models.Sequential.summary
pose.replace.replace
type
pygame.joystick.Joystick.get_button
get_data
time.time
random.randint
cv2.VideoWriter
tensorflow.keras.models.load_model.add
motionClassifier
paf.detach.cpu
dataset_train.str.replace
X_test.reshape.reshape
torch.Tensor
dataset_test.str.replace
bs4.BeautifulSoup
tuple
humans.append
self.interpreter.set_tensor
model.RMSprop
transformer.PoseExtractor
tensorflow.keras.models.load_model.predict
self.get_keypoints
torch.load
pandas.read_csv.head
logging.Formatter
labeled_images.append
tensorflow.contrib.lite.Interpreter
set
tensorflow.contrib.lite.Interpreter.get_output_details
url.split
FaceDetector.process_frame
pandas.DataFrame.to_csv
flow.Flow
xgboost.XGBClassifier
keras.layers.Dense
resolution_string.split.decode.split
self.preprocess
tensorflow.contrib.lite.Interpreter.invoke
keras.utils.to_categorical
tensorflow.keras.models.load_model.compile
data_lst.append
numpy.zeros
sorted
model.to_categorical
pygame.joystick.Joystick.get_name
self.sayPhrase
pickle.dump
cv2.dilate.copy
activity_dict.values
list.append
actionModel.get_params
source.isdigit.isdigit
rand_shift
model_trt
cv2.imread
vert_swap
cmap.detach
collections.defaultdict
tensorflow.keras.layers.LSTM
utils.id_gen
csv.writer
numpy.array
cv2.namedWindow
join
mC.result.np.sum.reshape
numpy.arctan
sklearn.utils.linear_assignment_.linear_assignment
rand_flow
person.PersonTracker.set_bbox
cv2.VideoCapture
b_idx.data.cpu.numpy
cv2.VideoWriter_fourcc
utils.update_trackers
os.path.basename
json.load
actionModel.fit
datetime.datetime.now.strftime
importlib.import_module.classifier
dict
torch.Tensor.cuda
extractor.transform.reshape
numpy.asarray
os.path.exists
self.model_trt
unmatched_detections.append
sorted.append
cv2.VideoCapture.isOpened
bs4.BeautifulSoup.find_all
min
body_list.append
cv2.accumulateWeighted
motionClassifier.motion
os.path.join
time.sleep
self.interpreter.allocate_tensors
os.walk
tensorflow.contrib.lite.Interpreter.get_input_details
cv2.absdiff
preprocess
subprocess.call
cv2.VideoWriter.release
collections.defaultdict.keys
self.motion.ft_ext
cv2.findContours
idx.trackers.update_pose
subprocess.Popen
poses.inference
cv2.cvtColor
utils.img_obj
IOU
collections.deque.append
numpy.hstack
lst.append
keras.models.load_model
self.ffwd_n_avg.list.np.concatenate.reshape
dictOfElements.items
motionClassifier.motion_detector
importlib.import_module
paho.mqtt.client.Client
tensorflow.keras.models.load_model.summary
numpy.apply_along_axis
lstm_model.save
tensorflow.keras.optimizers.RMSprop
pygame.joystick.init
format
print
resolution_string.split
self.motion_path.rstrip.split
tensorflow.contrib.lite.Interpreter.allocate_tensors
gray.copy.astype
pygame.init
cv2.CascadeClassifier
cv2.VideoCapture.get
numpy.concatenate
tensorflow.keras.models.Sequential.add
cv2.destroyAllWindows
pygame.joystick.Joystick
numpy.float32
max
collections.deque
self.getPose
PersonTracker
person.PersonTracker
self.getPose.replace
ListHumans
self.faces.append
getScreenDims
PIL.Image.open
pose_model.predict
body_dict.items
p.stdout.close
draw_objects
tensorflow.contrib.lite.Interpreter.set_tensor
output_data.np.sum.reshape
sklearn.model_selection.train_test_split
argparse.ArgumentParser.parse_args
cv2.line
feature_vec.tolist.append
list
logging.StreamHandler.setFormatter
lstm_model
tensorflow.keras.layers.Dropout
pose.replace.replace.strip
dd.find
cv2.imshow
pandas.read_csv
glob.glob
torch.device
paf.detach
tracker_match
run_inference
coords.np.concatenate.reshape
tensorflow.keras.models.load_model.evaluate
cv2.contourArea
tensorflow.keras.utils.to_categorical
faces.FaceDetector.process_frame
inference
pygame.event.pump
image.transforms.functional.to_tensor.to
divmod
GetKeypoints
self.mean.image.sub_.div_
self.pose_model.predict
requests.get
numpy.flip
keras.layers.LSTM
logging.getLogger.addHandler
trt_pose.parse_objects.ParseObjects
pandas.read_csv.pop
multiprocessing.cpu_count
float
aggs
cv2.VideoWriter.write
logging.getLogger.setLevel
logging.getLogger
utils.source_capture.release
sys.path.append
cv2.putText
m.reshape
round
q.ffwd_n_avg.list.np.concatenate.reshape
cv2.waitKey
random.choice
sklearn.pipeline.Pipeline
faces.FaceDetector
model.lstm_model.compile
getKeysByValue
img.np.expand_dims.astype
DrawObjects
numpy.cos
augment.to_csv
self.interpreter.invoke
map
self.interpreter.get_tensor.reshape
utils.inference.motionClassifier
image.np.asarray.astype
os.listdir
bboxes.append
f
pprint.pprint
image.astype.reshape
len
cmap.detach.cpu
pickle.load.predict
cv2.warpAffine
torch2trt.TRTModule.load_state_dict
id_gen
tensorflow.lite.Interpreter
ord
image.transforms.functional.to_tensor.to.sub_
trt_pose.coco.coco_category_to_topology
parse_objects
b_idx.data.cpu
image.np.zeros_like.astype
PoseExtractor.transform
paho.mqtt.client.Client.connect
utils.get_bbox
resolution_string.split.decode
lstm_model.evaluate
self.model_trt.load_state_dict
logging.StreamHandler.setLevel
cv2.convertScaleAbs
int
enumerate
tensorflow.keras.layers.Dense
apply_vec
img.copy
self.ffwd_n_avg
coords.np.vstack.T.reshape
cv2.GaussianBlur
self.detector.detectMultiScale
paho.mqtt.client.Client.loop_forever
paho.mqtt.client.Client.subscribe
next
numpy.argmax
motionClassifier.ft_ext
range
numpy.expand_dims
keras.models.load_model.predict
xgboost.XGBClassifier.fit
cv2.circle
operator.itemgetter
load_image
feat_array.np.array.squeeze
x.reshape
csv.writer.writerow
cv2.setWindowProperty
tensorflow.keras.models.load_model.fit
subdir.split
PersonTracker.update_pose
flow.Flow.run
PersonTracker.set_bbox
pandas.DataFrame
self.motion_path.rstrip
numpy.prod
FaceDetector
torchvision.transforms.functional.to_tensor
cv2.GaussianBlur.copy
self.result.reshape
numpy.zeros_like

@developer
Could please help me check this issue?
May I pull a request to fix it?
Thank you very much.

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

No branches or pull requests

1 participant