furkanyesiler/acoss

Code refactoring TODOs before beta release

Closed this issue · 0 comments

The following 'code-refactoring-todos' were identified along with @furkanyesiler

The changes are made in the packaging dev branch of the repo.

Preprocess -

Extractors

  • Proper docstrings for all the functions
  • Logging error audio files in the batch extraction process
  • Specify a list of features as cmd args.
  • Change exception in compute features from list file
  • Unify string formatting using {}.format
  • Add cmd-line option for the feature extraction of other datasets (eg. from a given path)
  • Refactor cmd-line args for running non-parallel jobs (eg. cluster, cpu thing).
  • Make feature extractor unison for any file paths.

Features

  • Wrapper to call feature methods on a specific python version. If not available throw an exception.
  • Clean the file

Local config

  • Single local config file for the whole repo.

Requirements

  • Separate requirements.txt file for various python versions

README

  • Proper description and toy examples.

Benchmarking and CoverStats (@ctralie can you give me a hand on this part? )

  • Adhere code to pep-8 standards
  • Make getEvalStatistics clean
  • Follow conventions for writing docstrings
  • Standardize argparse of cover similarity algorithms
  • Clean all functions in statistics/ with pep8, etc
  • Make a single command line interface to call all benchmarking algorithms with a consistent set of parameters

Main repo and packaging

  • Add CI tools and unit tests.
  • Package acoss as a python library and build pip wheels
  • Logo for the repo and dataset
  • Scripts for building automated docs.
  • Proper README with setup instructions and example files
  • Check file storage formats for distributing datasets.