Skip to content

Commit

Permalink
Merge branch 'release'
Browse files Browse the repository at this point in the history
  • Loading branch information
Konstantinos committed Oct 13, 2019
2 parents 938b1e5 + a04c84d commit 53dde51
Show file tree
Hide file tree
Showing 29 changed files with 668 additions and 510 deletions.
15 changes: 15 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
*__pycache__*

\.idea
playground*
*\.pyc
/dist/
/*.egg-info
build/*
\.cache*
\.eggs/*
logos\.sh
*wheel*
*sdist*
*dist
*egg-info
2 changes: 1 addition & 1 deletion .scrutinizer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ build:
before:
- pip install coverage
override:
- tox
- tox -e clean,check,scrutinizer
-
command: coverage
coverage:
Expand Down
35 changes: 21 additions & 14 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,44 +6,51 @@ env:
- LD_PRELOAD=/lib/x86_64-linux-gnu/libSegFault.so
- SEGFAULT_SIGNALS=all
- TOX_SKIP_MISSING_INTERPRETERS="False"
- MUSIC_LIB_ROOT=music-lib
addons:
apt:
update: true
packages:
- ffmpeg

before_install:
- python --version
- uname -a
- lsb_release -a
- sudo apt-get install ffmpeg


install:
- pip install tox
- virtualenv --version
- easy_install --version
- python --version
- python -m pip install -U pip
- pip --version
- python -m pip install tox
- tox --version
- virtualenv --version
- easy_install --version
- ffmpeg -version

#install:
cache: pip
script: tox -v


jobs:
fail_fast: true
include:
- stage: Check
# - stage: Check
- stage: run tests
env: TOXENV=clean,check
script: tox
- stage: run tests
python: '3.6'
env: TOXENV=quality
script: tox
- stage: run tests
python: '3.5'
env: TOXENV=py35-cover,coveralls
env: TOXENV=py35-cover,codecov
- stage: run tests
python: '3.6'
env: TOXENV=py36-cover,coveralls
env: TOXENV=py36-cover,codecov
- stage: run tests
python: '3.7'
env: TOXENV=py37-cover,codecov
- stage: run tests
python: '3.7'
env: TOXENV=py37-cover,coveralls
env: TOXENV=py37-build,codecov
allow_failures:
- env: TOXENV=quality

Expand Down
12 changes: 12 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,18 @@ Changelog
=========


1.2.0 (2019-10-13)
-------------------

Changes
^^^^^^^

- Write integration test
- Fix 3 minor security issues and 2 medium
- Implement alternative method to retrieve album name
- Improve 'front-end' architecture


1.1.4 (2019-07-28)
-------------------

Expand Down
3 changes: 2 additions & 1 deletion MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ include LICENSE.txt
include requirements.txt

include src/music_album_creation/format_classification/data/*
include src/music_album_creation/display-logo.sh

include tests/know_your_enemy.mp3
include tests/data/album_0/*

Expand All @@ -30,3 +30,4 @@ global-exclude *.py[cod] __pycache__ *.so *.dylib
recursive-include ci *.cmd
recursive-include ci *.py


18 changes: 12 additions & 6 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,9 @@ Overview
:alt: Appveyor Build Status
:target: https://ci.appveyor.com/project/boromir674/music-album-creator/branch/master

.. |coverage| image:: https://scrutinizer-ci.com/g/boromir674/music-album-creator/badges/coverage.png?b=master
:alt: Coverage Status
:target: https://scrutinizer-ci.com/g/boromir674/music-album-creator/?branch=master
.. |coverage| image:: https://codecov.io/gh/boromir674/music-album-creator/branch/master/graph/badge.svg
:alt: Coverage Status
:target: https://codecov.io/gh/boromir674/music-album-creator

.. |scrutinizer_code_quality| image:: https://scrutinizer-ci.com/g/boromir674/music-album-creator/badges/quality-score.png?b=master
:alt: Code Quality
Expand Down Expand Up @@ -87,6 +87,12 @@ Installation
Usage
============


Music Album Creation depends on the ffmpeg package which can be easily installed if need be with::

sudo apt-get install ffmpeg


To run, simply execute::

create-album
Expand All @@ -102,7 +108,7 @@ https://music-album-creator.readthedocs.io/
Development
===========

To run the all tests run::

tox
To run all tests run::

pip install -U tox
tox -v
73 changes: 41 additions & 32 deletions appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ environment:
COVERALLS_REPO_TOKEN:
secure: EJUHS/ajkZiRV3cLoINHVvgZTW8EhLHzVzvA7vXaQEpr/Mn3BArtglPXvSuoX24z
global:
MUSIC_LIB_ROOT: '.\music-lib'
WITH_COMPILER: 'cmd /E:ON /V:ON /C .\ci\appveyor-with-compiler.cmd'
ffmpeg_download: https://ffmpeg.zeranoe.com/builds/
nodejs_version: Current
Expand All @@ -22,45 +23,53 @@ environment:
# platform: x86
# ffmpeg_platform: win32

- TOXENV: 'py35-cover,coveralls'
- TOXENV: 'clean,py35-cover,coveralls'
TOXPYTHON: C:\Python35\python.exe
PYTHON_HOME: C:\Python35
PYTHON_VERSION: '3.5'
PYTHON_ARCH: '32'
platform: x86
ffmpeg_platform: win32
#
# - TOXENV: 'py35-cover'
# TOXPYTHON: C:\Python35-x64\python.exe
# PYTHON_HOME: C:\Python35-x64
# PYTHON_VERSION: '3.5'
# PYTHON_ARCH: '64'
# platform: x64
# ffmpeg_platform: win64

# - TOXENV: 'py35-nocov'
# TOXPYTHON: C:\Python35\python.exe
# PYTHON_HOME: C:\Python35
# PYTHON_VERSION: '3.5'
# PYTHON_ARCH: '32'
# platform: x86
# ffmpeg_platform: win32
#
# - TOXENV: 'py35-nocov'
# TOXPYTHON: C:\Python35-x64\python.exe
# PYTHON_HOME: C:\Python35-x64
# PYTHON_VERSION: '3.5'
# PYTHON_ARCH: '64'
# platform: x64
# ffmpeg_platform: win64
- TOXENV: 'py35-nocov'
TOXPYTHON: C:\Python35-x64\python.exe
PYTHON_HOME: C:\Python35-x64
PYTHON_VERSION: '3.5'
PYTHON_ARCH: '64'
platform: x64
ffmpeg_platform: win64

- TOXENV: 'clean,py36-cover,coveralls'
TOXPYTHON: C:\Python36\python.exe
PYTHON_HOME: C:\Python36
PYTHON_VERSION: '3.6'
PYTHON_ARCH: '32'
platform: x86
ffmpeg_platform: win32

- TOXENV: 'py36-nocov'
TOXPYTHON: C:\Python36-x64\python.exe
PYTHON_HOME: C:\Python36-x64
PYTHON_VERSION: '3.6'
PYTHON_ARCH: '64'
platform: x64
ffmpeg_platform: win64

- TOXENV: 'clean,py37-cover,coveralls'
TOXPYTHON: C:\Python37\python.exe
PYTHON_HOME: C:\Python37
PYTHON_VERSION: '3.7'
PYTHON_ARCH: '32'
platform: x86
ffmpeg_platform: win32

# - TOXENV: 'py36-nocov'
# TOXPYTHON: C:\Python36-x64\python.exe
# PYTHON_HOME: C:\Python36-x64
# PYTHON_VERSION: '3.6'
# PYTHON_ARCH: '64'
# platform: x64
# ffmpeg_platform: win64
- TOXENV: 'py37-nocov'
TOXPYTHON: C:\Python37-x64\python.exe
PYTHON_HOME: C:\Python37-x64
PYTHON_VERSION: '3.7'
PYTHON_ARCH: '64'
platform: x64
ffmpeg_platform: win64


init:
Expand Down Expand Up @@ -93,7 +102,7 @@ test_script:
- node --version
- npm --version
- '%PYTHON_HOME%\Scripts\tox --version'
- '%WITH_COMPILER% %PYTHON_HOME%\Scripts\tox'
- '%WITH_COMPILER% %PYTHON_HOME%\Scripts\tox -v'

after_test:
- '%PYTHON_HOME%\python setup.py bdist_wheel'
Expand Down
5 changes: 3 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@ tqdm
click
mutagen
sklearn
PyInquirer
pyreadline
pyreadline
lxml
mock
8 changes: 4 additions & 4 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import os
from setuptools import setup, find_packages

from setuptools import find_packages, setup

my_dir = os.path.dirname(os.path.realpath(__file__))

Expand All @@ -13,7 +13,7 @@ def readme():

setup(
name='music_album_creation',
version='1.1.4',
version='1.2.0',
description='A CLI application intending to automate offline music library building.',
long_description=readme(),
keywords='music automation download youtube metadata',
Expand All @@ -24,7 +24,7 @@ def readme():
zip_safe=False,

# what packages/distributions (python) need to be installed when this one is. (Roughly what is imported in source code)
install_requires=['tqdm', 'click', 'sklearn', 'mutagen', 'PyInquirer', 'youtube_dl', 'pyreadline'],
install_requires=['attrs', 'tqdm', 'click', 'sklearn', 'mutagen', 'PyInquirer', 'youtube_dl', 'pyreadline', 'lxml'],

# A string or list of strings specifying what other distributions need to be present in order for the setup script to run.
# (Note: projects listed in setup_requires will NOT be automatically installed on the system where the setup script is being run.
Expand All @@ -40,7 +40,7 @@ def readme():
# what other distributions need to be present for the package’s tests to run. Note that these required projects will not be installed on the system where the
# tests are run, but only downloaded to the project’s setup directory if they’re not already installed locally.
# Use to ensure that a package is available when the test command is run.
tests_require=['pytest'],
tests_require=['pytest', 'mock'],

classifiers=[
'Development Status :: 5 - Production/Stable',
Expand Down
22 changes: 17 additions & 5 deletions src/music_album_creation/__init__.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,22 @@
__version__ = '1.1.4'

from .tracks_parsing import StringParser
from .metadata import MetadataDealer
from .format_classification import FormatClassifier
import logging
import logging.config
from os import path

from .downloading import YoutubeDownloader
from .album_segmentation import AudioSegmenter
from .format_classification import FormatClassifier
from .metadata import MetadataDealer
from .tracks_parsing import StringParser

#

logging.config.fileConfig(path.join(path.dirname(path.realpath(__file__)), 'logging.ini'), disable_existing_loggers=False)

logger = logging.getLogger(__name__)





__all__ = ['StringParser', 'MetadataDealer', 'FormatClassifier', 'YoutubeDownloader', 'AudioSegmenter']
__all__ = ['StringParser', 'MetadataDealer', 'FormatClassifier', 'AudioSegmenter']
Loading

0 comments on commit 53dde51

Please sign in to comment.