-
-
Notifications
You must be signed in to change notification settings - Fork 393
Description
Hi, In musegan, inappropriate dependency versioning constraints can cause risks.
Below are the dependencies and version constraints that the project is using
setuptools==39.1.0
absl-py==0.4.1
astor==0.7.1
gast==0.2.0
grpcio==1.14.2
imageio==2.3.0
Markdown==2.6.11
mido==1.2.8
numpy==1.14.5
Pillow==5.2.0
pretty-midi==0.2.8
protobuf==3.6.1
pypianoroll==0.4.6
PyYAML==3.13
scipy==1.1.0
SharedArray==3.0.0
six==1.11.0
tensorboard==1.10.0
tensorflow-gpu==1.10.1
termcolor==1.1.0
Werkzeug==0.14.1
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 imageio can be changed to >=1.1-linux32,<=2.19.3.
The version constraint of dependency numpy can be changed to >=1.8.0,<=1.23.0rc3.
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 imageio
imageio.imwrite
The calling methods from the numpy
numpy.linalg.norm
The calling methods from the all methods
is_piano segment_quality args.input_dir.glob ops.dense.get_shape args.outfile.endswith pprint.pformat tensorflow.sqrt tensorflow.reduce_mean.get_shape get_metric_ops musegan.utils.backup_src tracks.append tensorflow.assign_add os.path.dirname tensorflow.train.AdamOptimizer tensorflow.variable_scope tensorflow.maximum pianoroll.set_shape tensorflow.tile pypianoroll.Track tensorflow.truncated_normal_initializer tensorflow.summary.scalar tensorflow.norm op.outputs.consumers.consumers argparse.ArgumentParser.add_argument tensorflow.layers.conv2d_transpose musegan.config.SHUFFLE_BUFFER_SIZE.dataset.shuffle.repeat.batch.prefetch is_string tconv_layer len musegan.data.get_dataset.make_one_shot_iterator update_not_none tensorflow.zeros setup input sys.exit join binary_ops.binary_stochastic_ST numpy.pad numpy.random.choice shutil.copytree diff.transpose.reshape f.readline.split.strip self.dis musegan.config.SHUFFLE_BUFFER_SIZE.dataset.shuffle.repeat numpy.errstate pass_through_sigmoid tensorflow.get_default_graph.gradient_override_map numpy.arccos musegan.utils.update_not_none tensorflow.trainable_variables tensorflow.get_collection _array_to_image.items numpy.roll main op.graph.get_operation_by_name pianorolls.items ok_segment_list.extend binary_round tensorflow.train.polynomial_decay musegan.utils.load_component _gen_data f.readline.split numpy.zeros logging.FileHandler.setFormatter _save_pianoroll numpy.arange musegan.io_utils.image_grid numpy.prod numpy.matmul self.get_train_nodes load_data_from_npy tensorflow.pad.get_shape polyphonic_rate xv.flatten.flatten song_ok_segments.append tensorflow.transpose _drum_pattern_mask numpy.concatenate.nonzero shutil.rmtree scipy.stats.truncnorm.rvs array.astype tensorflow.expand_dims op.outputs.consumers tensorflow.python.framework.ops.name_scope os.path.splitext slerp load_or_create_samples argparse.ArgumentParser tensorflow.nn.relu tensorflow.reduce_mean musegan.data.get_dataset qualified_note_rate ops.get_normalization numpy.linspace tensorflow.py_func check_which_family logging.FileHandler numpy.diff.transpose self.gen binary_stochastic_REINFORCE tensorflow.truncated_normal musegan.model.Model vars numpy.sum tensorflow.Variable musegan.io_utils.vector_to_image numpy.random.uniform tensorflow.cast tensorflow.reduce_sum max create_shared_array yaml.safe_load sum tensorflow.get_default_graph.get_collection conv_layer os.path.basename numpy.save f.readline tensorflow.train.Saver numpy.concatenate input.lower is_guitar tensorflow.group numpy.load numpy.product SharedArray.attach musegan.metrics.get_save_metric_ops tensorflow.round musegan.data.load_data numpy.reshape tensorflow.matmul logging.getLogger.info data.astype.astype dict2.items _save_array SharedArray.delete empty_bar_rate numpy.dot _scale_mask params.load_component _to_tonal_space musegan.config.SHUFFLE_BUFFER_SIZE.dataset.shuffle.repeat.batch range tensorflow.constant.reshape numpy.expand_dims random_transpose get_n_params numpy.cos tensorflow.shape ops.conv3d musegan.io_utils.pianoroll_to_image save_array_ops.append int pianoroll.squeeze.clip.reshape is_bass numpy.reshape.astype tensor_logger_values.items list _save_colored_images tensorflow.assign numpy.tile tensorflow.layers.dense musegan.config.SHUFFLE_BUFFER_SIZE.dataset.shuffle.repeat.batch.shuffle logging.basicConfig to_chroma tensorflow.count_nonzero tensorflow.control_dependencies arrays.items tensorflow.data.Dataset.from_generator _save_images tensorflow.losses.sigmoid_cross_entropy save_image_ops.append musegan.utils.load_yaml numpy.random.randint imageio.imwrite tensorflow.square SharedArray.create os.path.realpath tensorflow.train.NanTensorHook tensorflow.get_default_graph.add_to_collection musegan.data.get_samples tensorflow.ones numpy.pad.reshape numpy.array os.path.join numpy.empty l_bar.get_shape os.makedirs _array_to_image l_bar.get_shape.as_list tensorflow.python.framework.ops.RegisterGradient _save_image_grid musegan.utils.make_sure_path_exists tensorflow.constant_initializer loss_fn logging.getLogger numpy.transpose format array.reshape enumerate norm ops.dense sess.should_stop numpy.diff ops.tconv3d importlib.import_module numpy.random.permutation numpy.count_nonzero os.path.exists pypianoroll.Multitrack zip set_pianoroll_shape tensorflow.random_uniform tensorflow.placeholder logger.addHandler name.startswith tensorflow.reduce_any numpy.savez_compressed open numpy.flip tensorflow.ceil filepath.endswith diff.transpose.reshape.nonzero ACTIVATION add_file_handler tensorflow.gradients _qualified_note_rate params.get get_input_z tensorflow.reshape sess.run numpy.sin n_pitches_used in_scale_rate open.close dataset.make_one_shot_iterator.get_next tensorflow.add_to_collection str getattr tensorflow.train.global_step numpy.copyto tensorflow.as_string tensorflow.train.MonitoredTrainingSession numpy.issubdtype bernoulli_sample self.get_predict_nodes tensorflow.constant tensorflow.Session tensorflow.ConfigProto tensorflow.layers.conv3d _get_filepath TypeError is_instr_act musegan.io_utils.save_pianoroll musegan.losses.get_adv_losses tensorflow.ones_like setup_dirs numpy.linalg.norm logging.FileHandler.setLevel binary_stochastic_ST tensorflow.concat yv.flatten.flatten tensorflow.sigmoid tensorflow.reshape.astype tensorflow.cond ValueError numpy.repeat var.get_shape numpy.where _tonal_matrix tensorflow.train.get_or_create_global_step harmonicity tensorflow.train.Saver.restore musegan.utils.load_yaml.get shutil.ignore_patterns op.graph.get_collection.get tensorflow.train.get_global_step pianoroll.squeeze.clip logging.Logger.manager.loggerDict.keys print tensorflow.layers.conv3d_transpose load_yaml open.write argparse.ArgumentParser.parse_args drum_in_pattern_rate numpy.append set_label_shape load_training_data tensorflow.get_variable parse_arguments compiled_list.append tensorflow.layers.batch_normalization tensorflow.zeros_like musegan.utils.setup_loggers pianorolls.append args.input_dir.rglob logging.Formatter pianoroll.squeeze.clip.astype op.graph.get_collection array.astype.astype label.set_shape pypianoroll.Multitrack.save tensorflow.gradients.get_shape tensorflow.pad lerp tensorflow.train.AdamOptimizer.minimize musegan.config.SHUFFLE_BUFFER_SIZE.dataset.shuffle.repeat.batch.map tensorflow.layers.conv2d pianoroll.squeeze.clip.squeeze load_data_from_npz get_scheduled_variable tensorflow.get_default_graph tensorflow.name_scope save_pianoroll_ops.append tensor.get_shape model numpy.meshgrid tensorflow.nn.tanh map get_metric_ops.items
@developer
Could please help me check this issue?
May I pull a request to fix it?
Thank you very much.