From aca563d013137194f29bd565e3d3233047192eb8 Mon Sep 17 00:00:00 2001 From: Lars Noack Date: Mon, 28 Nov 2022 17:18:26 +0100 Subject: [PATCH] sorry for the mess, the python documentation about packaging really aint that great. If someone who is good with python packaging intents to help and open an issue, that would be great --- .idea/music-downloader.iml | 2 +- .../temp_database_structure.sql | 0 build.sh | 17 ++++- setup.py | 6 +- src/music_kraken.egg-info/PKG-INFO | 2 +- src/music_kraken.egg-info/SOURCES.txt | 7 ++ src/music_kraken/__init__.py | 8 +++ src/music_kraken/database_structure.sql | 66 +++++++++++++++++++ .../static_files/temp_database_structure.sql | 66 +++++++++++++++++++ 9 files changed, 168 insertions(+), 6 deletions(-) rename src/database_structure.sql => assets/temp_database_structure.sql (100%) create mode 100644 src/music_kraken/database_structure.sql create mode 100644 src/music_kraken/static_files/temp_database_structure.sql diff --git a/.idea/music-downloader.iml b/.idea/music-downloader.iml index 7a7b74c..95b8e80 100644 --- a/.idea/music-downloader.iml +++ b/.idea/music-downloader.iml @@ -4,7 +4,7 @@ - + diff --git a/src/database_structure.sql b/assets/temp_database_structure.sql similarity index 100% rename from src/database_structure.sql rename to assets/temp_database_structure.sql diff --git a/build.sh b/build.sh index 8c2e341..73f0647 100644 --- a/build.sh +++ b/build.sh @@ -1,13 +1,24 @@ # https://packaging.python.org/en/latest/tutorials/packaging-projects/ -echo "building............" +#echo "building............" +#echo "python3 -m pip install --upgrade build" +# python3 -m pip install --upgrade pip python3 -m pip install --upgrade build +#echo "python3 -m build" python3 -m build +# python3 setup.py sdist bdist_wheel +# python3 setup.py install --user +echo "python3 -m pip install dist/music_kraken-1.2.2-py3-none-any.whl --user --force-reinstall" +python3 -m pip install dist/music_kraken-1.2.2.tar.gz --user --force-reinstall + +music-kraken + +open /home/lars/.local/lib/python3.10/site-packages/music_kraken echo "uploading............" -python3 -m pip install --upgrade twine +#python3 -m pip install --upgrade twine #twine upload dist/music_kraken* -twine upload --repository testpypi dist/music_kraken* +# twine upload --repository testpypi dist/music_kraken* exit echo "pushing............" diff --git a/setup.py b/setup.py index 77402f6..bcf9ec0 100644 --- a/setup.py +++ b/setup.py @@ -34,5 +34,9 @@ setup( "beautifulsoup4~=4.11.1", "pycountry~=22.3.5" ], - entry_points={'console_scripts': ['music-kraken = music_kraken:cli']} + entry_points={'console_scripts': ['music-kraken = music_kraken:cli']}, + include_package_data=False, + data_files=[ + ('music_kraken', ['database_structure.sql']) + ] ) diff --git a/src/music_kraken.egg-info/PKG-INFO b/src/music_kraken.egg-info/PKG-INFO index 768f012..9d359d6 100644 --- a/src/music_kraken.egg-info/PKG-INFO +++ b/src/music_kraken.egg-info/PKG-INFO @@ -346,4 +346,4 @@ For the lyrics source the page [https://genius.com/](https://genius.com/) is eas [i2]: https://github.com/HeIIow2/music-downloader/issues/2 -[mb]: musicbrainz.org/ +[mb]: https://musicbrainz.org/ diff --git a/src/music_kraken.egg-info/SOURCES.txt b/src/music_kraken.egg-info/SOURCES.txt index 5e4e04e..638b139 100644 --- a/src/music_kraken.egg-info/SOURCES.txt +++ b/src/music_kraken.egg-info/SOURCES.txt @@ -1,7 +1,9 @@ LICENSE README.md +database_structure.sql pyproject.toml setup.py +assets/temp_database_structure.sql src/music_kraken/__init__.py src/music_kraken/__main__.py src/music_kraken.egg-info/PKG-INFO @@ -19,8 +21,12 @@ src/music_kraken/audio_source/sources/musify.py src/music_kraken/audio_source/sources/source.py src/music_kraken/audio_source/sources/youtube.py src/music_kraken/database/__init__.py +src/music_kraken/database/artist.py src/music_kraken/database/database.py +src/music_kraken/database/metadata.py src/music_kraken/database/song.py +src/music_kraken/database/source.py +src/music_kraken/database/target.py src/music_kraken/database/temp_database.py src/music_kraken/lyrics/__init__.py src/music_kraken/lyrics/genius.py @@ -28,6 +34,7 @@ src/music_kraken/lyrics/lyrics.py src/music_kraken/metadata/__init__.py src/music_kraken/metadata/metadata_fetch.py src/music_kraken/metadata/metadata_search.py +src/music_kraken/static_files/temp_database_structure.sql src/music_kraken/tagging/__init__.py src/music_kraken/tagging/song.py src/music_kraken/target/__init__.py diff --git a/src/music_kraken/__init__.py b/src/music_kraken/__init__.py index 28d3f1a..50736b1 100644 --- a/src/music_kraken/__init__.py +++ b/src/music_kraken/__init__.py @@ -19,6 +19,14 @@ from .utils.shared import ( from .lyrics import lyrics + +# try reading a static file: +print("TEST") +import pkgutil + +data = pkgutil.get_data(__name__, "temp_database_structure.sql") +print(data) + """ At the start I modify the garbage collector to run a bit fewer times. This should increase speed: diff --git a/src/music_kraken/database_structure.sql b/src/music_kraken/database_structure.sql new file mode 100644 index 0000000..293f428 --- /dev/null +++ b/src/music_kraken/database_structure.sql @@ -0,0 +1,66 @@ +DROP TABLE IF EXISTS artist; +CREATE TABLE artist ( + id TEXT PRIMARY KEY NOT NULL, + name TEXT +); + +DROP TABLE IF EXISTS artist_release_group; +CREATE TABLE artist_release_group ( + artist_id TEXT NOT NULL, + release_group_id TEXT NOT NULL +); + +DROP TABLE IF EXISTS artist_track; +CREATE TABLE artist_track ( + artist_id TEXT NOT NULL, + track_id TEXT NOT NULL +); + +DROP TABLE IF EXISTS release_group; +CREATE TABLE release_group ( + id TEXT PRIMARY KEY NOT NULL, + albumartist TEXT, + albumsort INT, + musicbrainz_albumtype TEXT, + compilation TEXT, + album_artist_id TEXT +); + +DROP TABLE IF EXISTS release_; +CREATE TABLE release_ ( + id TEXT PRIMARY KEY NOT NULL, + release_group_id TEXT NOT NULL, + title TEXT, + copyright TEXT, + album_status TEXT, + language TEXT, + year TEXT, + date TEXT, + country TEXT, + barcode TEXT +); + +DROP TABLE IF EXISTS track; +CREATE TABLE track ( + id TEXT PRIMARY KEY NOT NULL, + downloaded BOOLEAN NOT NULL DEFAULT 0, + release_id TEXT NOT NULL, + track TEXT, + length INT, + tracknumber TEXT, + isrc TEXT, + genre TEXT, + lyrics TEXT, + path TEXT, + file TEXT, + url TEXT, + src TEXT +); + +DROP TABLE IF EXISTS source; +CREATE TABLE source ( + track_id TEXT NOT NULL, + src TEXT NOT NULL, + url TEXT NOT NULL, + valid BOOLEAN NOT NULL DEFAULT 1 +); diff --git a/src/music_kraken/static_files/temp_database_structure.sql b/src/music_kraken/static_files/temp_database_structure.sql new file mode 100644 index 0000000..293f428 --- /dev/null +++ b/src/music_kraken/static_files/temp_database_structure.sql @@ -0,0 +1,66 @@ +DROP TABLE IF EXISTS artist; +CREATE TABLE artist ( + id TEXT PRIMARY KEY NOT NULL, + name TEXT +); + +DROP TABLE IF EXISTS artist_release_group; +CREATE TABLE artist_release_group ( + artist_id TEXT NOT NULL, + release_group_id TEXT NOT NULL +); + +DROP TABLE IF EXISTS artist_track; +CREATE TABLE artist_track ( + artist_id TEXT NOT NULL, + track_id TEXT NOT NULL +); + +DROP TABLE IF EXISTS release_group; +CREATE TABLE release_group ( + id TEXT PRIMARY KEY NOT NULL, + albumartist TEXT, + albumsort INT, + musicbrainz_albumtype TEXT, + compilation TEXT, + album_artist_id TEXT +); + +DROP TABLE IF EXISTS release_; +CREATE TABLE release_ ( + id TEXT PRIMARY KEY NOT NULL, + release_group_id TEXT NOT NULL, + title TEXT, + copyright TEXT, + album_status TEXT, + language TEXT, + year TEXT, + date TEXT, + country TEXT, + barcode TEXT +); + +DROP TABLE IF EXISTS track; +CREATE TABLE track ( + id TEXT PRIMARY KEY NOT NULL, + downloaded BOOLEAN NOT NULL DEFAULT 0, + release_id TEXT NOT NULL, + track TEXT, + length INT, + tracknumber TEXT, + isrc TEXT, + genre TEXT, + lyrics TEXT, + path TEXT, + file TEXT, + url TEXT, + src TEXT +); + +DROP TABLE IF EXISTS source; +CREATE TABLE source ( + track_id TEXT NOT NULL, + src TEXT NOT NULL, + url TEXT NOT NULL, + valid BOOLEAN NOT NULL DEFAULT 1 +);