Commit graph

3703 commits

Author SHA1 Message Date
croneter
1864adf151 Fix OSError on resetting the database 2018-12-02 17:46:35 +01:00
croneter
acc1b24480 Fix songs not appearing 2018-12-02 17:10:53 +01:00
croneter
260ff230c5 Don't check whether we need to delete "Artist" role for songs 2018-12-02 17:01:19 +01:00
croneter
64b8c522af Don't fill discography table for Kodi 18 2018-12-02 17:00:13 +01:00
croneter
f2ca67c418 Fix strMusicBrainzAlbumID 2018-12-02 16:32:36 +01:00
croneter
0400eec0c9 Fix iOrder of song_genre table being None instead of 0 2018-12-02 16:16:21 +01:00
croneter
a55c0c6ecb Add dateAdded for songs 2018-12-02 16:12:17 +01:00
croneter
59af1d09a3 Optimize code 2018-12-02 16:03:20 +01:00
croneter
8b3272aa7b Fix FutureWarning 2018-12-02 16:02:46 +01:00
croneter
89aa7bc1d9 Fix user select dialog not opening 2018-12-02 15:59:05 +01:00
croneter
b3b1d64484 Increase logging 2018-12-02 15:56:59 +01:00
croneter
f20341b983 Fix Plex.tv login not showing up upon installation 2018-12-02 15:52:49 +01:00
croneter
bb88c24e11 Increase logging 2018-12-02 15:46:15 +01:00
croneter
fb3f1d4669 Kodi 18: Ensure that we're setting music scan flag correctly upon boot
- Should fix #561
2018-12-02 15:25:54 +01:00
croneter
3c0bb49fbf Fix adding new album or artist to Plex in the background 2018-12-02 14:10:11 +01:00
croneter
e9f811f2cd Ignore PMS messages related to set/collections 2018-12-02 13:20:18 +01:00
croneter
2b3366923a Fix KeyError if a new set/collection is added to Plex 2018-12-02 13:19:13 +01:00
croneter
2e0d11a7bb Kodi 18: fix playback report for trailers 2018-12-02 11:11:24 +01:00
croneter
861af0f170 Further optimize sync speed 2018-12-02 10:13:27 +01:00
croneter
7fce226d47 Fix items getting deleted on subsequent sync 2018-12-01 18:50:52 +01:00
croneter
056463da55 Revert "Attempt to fix items getting deleted on second sync"
This reverts commit 459bd72299.
2018-12-01 18:43:47 +01:00
croneter
459bd72299 Attempt to fix items getting deleted on second sync 2018-12-01 18:43:42 +01:00
croneter
a776f940de Remove obsolete code 2018-12-01 16:52:22 +01:00
croneter
d972594553 Optimize DB access using transactions 2018-12-01 12:19:15 +01:00
croneter
07cf25b324 Get section overview xml asynchronously 2018-12-01 11:14:12 +01:00
croneter
41bbdbc206 Dedicated method for creating new actor 2018-12-01 11:09:59 +01:00
croneter
79785d0400 Fix FutureWarning 2018-12-01 09:13:23 +01:00
croneter
abfb386e13 Fix FutureWarning 2018-12-01 09:05:45 +01:00
croneter
024e0e5e09 Fix Typo 2018-11-30 08:05:23 +01:00
croneter
5b22cbcd52 Fix crash on switching Kodi profile
- Should fix #559
- Cannot use cElementTree with Kodi/XBMC reliably 😞
2018-11-28 09:13:38 +01:00
croneter
061dcb77e0 Revert "Catch cElementTree TypeError"
This reverts commit a10e3925d5.
2018-11-28 08:19:21 +01:00
croneter
a10e3925d5 Catch cElementTree TypeError
- Hopefully fixes #559
2018-11-26 20:44:36 +01:00
croneter
36d14ffdcf Optimize join() 2018-11-26 19:47:41 +01:00
croneter
9261a8b143 Increase queue size 2018-11-26 19:40:56 +01:00
croneter
ccdb76709e Fix OperationalError: Database is locked 2018-11-26 19:40:43 +01:00
croneter
0e335dd35e Fix MRO 2018-11-26 18:11:34 +01:00
croneter
55ec381bfe Fix sync not correctly being canceled 2018-11-26 17:58:15 +01:00
croneter
752a57c15e Fix OperationalError: no such table tvshows 2018-11-26 17:33:59 +01:00
croneter
4515559dff Fix AttributeError 2018-11-26 17:32:21 +01:00
croneter
a0e14ca2cb Fix TypeError 2018-11-26 17:23:35 +01:00
croneter
a7243d813d Force a full sync after manually changing PMS IP 2018-11-26 16:59:22 +01:00
croneter
0146c2e2b6 Force full sync on changing PMS 2018-11-26 16:58:25 +01:00
croneter
1f5eae8267 Fix PKC not connecting due to changed IP 2018-11-26 16:56:39 +01:00
croneter
27b2d4cbf2 Less logging 2018-11-26 16:17:03 +01:00
croneter
bd2c467183 Fix PKC crashing due to a restricted Python environment 2018-11-26 15:44:12 +01:00
croneter
6219ba6834 Fix TypeError 2018-11-26 07:58:12 +01:00
croneter
fa1dcdffaa Fix TypeErrors 2018-11-26 07:56:27 +01:00
croneter
b0a68b255e Fix NameError 2018-11-26 07:54:32 +01:00
croneter
a8fbcc6be4 Fix AttributeError 2018-11-26 07:50:38 +01:00
croneter
fada7f707f Move playback startup from thread to task 2018-11-26 07:48:45 +01:00
croneter
030c381f65 Ensure that only one thread accesses settings.xml
Avoids corruption of settings.xml
2018-11-26 07:35:19 +01:00
croneter
7d2f785a8d Move detection of context menu to main loop
- One thread less!
2018-11-26 07:31:36 +01:00
croneter
c4156cb865 Fix TypeError upon deactivating screensaver 2018-11-26 07:25:50 +01:00
croneter
a149d8de27 Fix widgets not receiving PKC information 2018-11-26 07:19:34 +01:00
croneter
0fe2de1705 Fix resetting of databases crashing 2018-11-25 21:07:25 +01:00
croneter
ded8a59dd7 Fix adding misisng artist on adding an album 2018-11-25 20:57:16 +01:00
croneter
202d33d7c0 Fix video library sometimes not updating 2018-11-25 20:36:54 +01:00
croneter
2ceb0cd7a2 Fix sync error when only an item is deleted in section 2018-11-25 20:31:40 +01:00
croneter
69e65f5ca6 Fix KeyError 2018-11-25 20:28:22 +01:00
croneter
697b66167c Fix deleting entire library sections 2018-11-25 20:15:38 +01:00
croneter
90e13cb8ee Fix TypeError upon removing entire section 2018-11-25 19:53:42 +01:00
croneter
67807d3eb7 Remove obsolete import 2018-11-25 19:50:50 +01:00
croneter
36eb5e9646 Force full sync after Plex user switch 2018-11-25 19:49:47 +01:00
croneter
b1f04c85a6 Code cleanup 2018-11-25 19:46:34 +01:00
croneter
3f42e24b7d Fix PKC not really starting upon first boot 2018-11-25 19:28:07 +01:00
croneter
81de319715 Fix more AttributeErrors 2018-11-25 17:29:21 +01:00
croneter
09f0492fa4 Fix AttributeErrors 2018-11-25 17:27:22 +01:00
croneter
9fd4a022a2 Fix RuntimeError: maximum recursion depth exceeded 2018-11-25 17:23:31 +01:00
croneter
a9bed6a3f8 Fix removal of movies 2018-11-25 17:21:41 +01:00
croneter
7670aa7a14 Fix OperationalError: Database is locked when video was deleted 2018-11-25 17:21:32 +01:00
croneter
6dc436da91 Rewire PKC startup and authentication mechanism 2018-11-25 17:03:19 +01:00
croneter
6d450b2be9 Fix TypeError 2018-11-24 14:06:21 +01:00
croneter
fb364a2275 Safety net for cleaning Kodi file table 2018-11-24 09:56:30 +01:00
croneter
3e754dfd1b Fix AttributeError 2018-11-24 09:54:57 +01:00
croneter
69b7f91542 New class to run functions as tasks 2018-11-24 09:53:37 +01:00
croneter
c25d6bee48 Clarify code 2018-11-24 09:52:36 +01:00
croneter
f32b5c1e71 Set fix limit of 6 worker threads 2018-11-24 09:52:25 +01:00
croneter
45fb84e697 Remove obsolete import 2018-11-23 17:25:28 +01:00
croneter
e87edb07f0 Fix PKC playQueue manager not picking up Plex ids correctly 2018-11-23 09:05:51 +01:00
croneter
8110c104f1 Less logging 2018-11-23 08:54:43 +01:00
croneter
02475bc8a6 Increase logging 2018-11-23 08:54:09 +01:00
croneter
5422b6d233 Fix AttributeError 2018-11-23 08:42:29 +01:00
croneter
3e41f63c62 Move xbmc.Player() 2018-11-23 08:41:05 +01:00
croneter
1b11c55d84 Fix AttributeError 2018-11-22 17:58:56 +01:00
croneter
d49ea8b383 Optimize code 2018-11-22 17:46:42 +01:00
croneter
9d6f729b21 Fix OperationalError: database is locked 2018-11-22 08:29:14 +01:00
croneter
d2922d61f5 Fix AttributeError 2018-11-22 08:04:41 +01:00
croneter
14c135a634 Fix OperationalError: no such column 2018-11-22 07:54:54 +01:00
croneter
5ad5bc1681 Fix SyntaxError 2018-11-22 07:46:15 +01:00
croneter
dcb10249a3 PEP8 2018-11-22 07:45:57 +01:00
croneter
7387b89d28 Fix OperationalError 2018-11-22 07:44:48 +01:00
croneter
fddd374b79 Fix some TypeErrors 2018-11-21 20:20:06 +01:00
croneter
c8b0e203ef Fix ImportError 2018-11-21 07:59:35 +01:00
croneter
ce191f6eeb Fix ProgrammingError: Cannot operate on a closed database 2018-11-20 19:23:42 +01:00
croneter
45b3c0e3f5 Fix potential TypeError if setting value is missing 2018-11-20 19:14:11 +01:00
croneter
0d22b72112 Fix TypeError 2018-11-20 19:10:26 +01:00
croneter
37ed6c2347 Remove obsolete code 2018-11-20 19:10:12 +01:00
croneter
b35cec106a Fix AttributeError due to missing method 2018-11-20 19:06:10 +01:00
croneter
f835e84d80 Fix context managers swallowing exceptions 2018-11-20 18:57:54 +01:00
croneter
5305d7bdfd Fix Syntax Error 2018-11-20 18:46:25 +01:00
croneter
2aadcbd198 Fix AttributeError 2018-11-20 18:39:18 +01:00
croneter
d668b3e640 Warn user and stop sync if crash occurs 2018-11-20 18:28:34 +01:00
croneter
0f740b1a02 Dedicated DB method to add video uniqueid 2018-11-20 18:24:43 +01:00
croneter
70a6ee5ed6 Dedicated DB method to add video rating_id 2018-11-20 18:18:52 +01:00
croneter
3acaad5663 Fix exceptions not being raised during sync 2018-11-20 18:08:51 +01:00
croneter
f68b4c8820 Fix AttributeError 2018-11-20 17:24:47 +01:00
croneter
f2df4fade6 Fix AttributeError 2018-11-20 17:17:52 +01:00
croneter
6fe0e23f53 Interrupt sleep if Kodi exits. Use Monitor's Player() 2018-11-20 16:58:25 +01:00
croneter
fff791e3d1 Remove obsolete code 2018-11-20 16:21:30 +01:00
croneter
e5c723d14f Remove obsolete code 2018-11-19 08:51:51 +01:00
croneter
f9f7b74ef3 Add user error message if Plex.tv does not provide users 2018-11-19 08:48:51 +01:00
croneter
a4dd5d8711 Prompt to login to plex.tv if no token available 2018-11-19 08:43:12 +01:00
croneter
3a514365ee Fix logging out also deleting Plex token 2018-11-19 08:17:49 +01:00
croneter
a045063769 Rather big change of PKC's plumbing 2018-11-18 14:59:17 +01:00
croneter
b2615c19bd Fix fanart download message showing up too often 2018-11-13 16:30:05 +01:00
croneter
a566dc566d Ensure that artwork caching thread suspends on STOP_SYNC 2018-11-13 16:02:54 +01:00
croneter
5c7968abdb Ensure that fanart sync closes DB connection during playback 2018-11-13 15:01:31 +01:00
croneter
789b214b50 Suspend fanart sync during playback 2018-11-13 14:54:54 +01:00
croneter
c168981a5b Optimize code 2018-11-13 14:51:10 +01:00
croneter
0c9e544e9e Suspend fanart sync if another sync is running 2018-11-13 14:48:25 +01:00
croneter
40e3a852a2 Fix AttributeError for songs 2018-11-13 14:42:48 +01:00
croneter
5a30b1c86a Fix download generator hanging 2018-11-13 14:38:38 +01:00
croneter
4ff2a8cb18 Try deleting temp DB files on DB wipe 2018-11-13 09:28:19 +01:00
croneter
e10d92cecb Cleanup music sync code 2018-11-13 09:02:34 +01:00
croneter
aafba74ccd PEP8 2018-11-13 07:47:37 +01:00
croneter
2d5e22c146 Update sync progress string 2018-11-12 16:37:56 +01:00
croneter
52dfd49080 More logging 2018-11-11 20:37:40 +01:00
croneter
bd1c2c3a0a More indicees for Kodi DB to increase sync speed 2018-11-11 20:13:10 +01:00
croneter
51745fd838 Optimize code 2018-11-11 20:11:19 +01:00
croneter
dfde9533d8 More indicees for Plex DB 2018-11-11 19:32:05 +01:00
croneter
ead799d38b More fixes 2018-11-11 19:22:32 +01:00
croneter
bc7fc4db1b Fixes to XML download iterator 2018-11-11 17:48:11 +01:00
croneter
7aec7fe776 Smarter caching for XML download generator 2018-11-11 17:14:40 +01:00
croneter
8535852699 Optimize code 2018-11-11 12:53:49 +01:00
croneter
18891a67fc Download entire xmls asynchronously, not just a piece 2018-11-11 10:47:18 +01:00
croneter
54113a715b Fix AttributeError 2018-11-11 09:28:18 +01:00
croneter
afedf03ac9 New method for DB commit 2018-11-11 09:23:51 +01:00
croneter
6de47490c3 Revert "Wrap Kodi DB transactions explicitly"
This reverts commit be45d914d3.
2018-11-10 16:18:22 +01:00
croneter
be45d914d3 Wrap Kodi DB transactions explicitly 2018-11-10 16:09:06 +01:00
croneter
48f5d67d63 Change artwork for music items 2018-11-10 12:18:02 +01:00
croneter
da7d871af8 Add Plex type to sync progress bar 2018-11-09 15:05:17 +01:00
croneter
4fca9b56c4 Less logging 2018-11-09 14:42:09 +01:00
croneter
e624edc7ae Download PMS xml chunks asynchronously 2018-11-09 14:39:43 +01:00
croneter
d16da6fa6f Fix OperationalError: database is locked 2018-11-09 11:19:32 +01:00
croneter
0255bd3584 Rename method 2018-11-09 09:48:04 +01:00
croneter
ab718bae2a Optimize sync of video filename 2018-11-09 09:26:54 +01:00
croneter
76728d7319 Pass plex_type with section 2018-11-09 09:10:22 +01:00
croneter
5b85b2b71a Enable cProfiling for full sync 2018-11-09 09:08:04 +01:00
croneter
4e1f975647 Fix ValueError for queue on Kodi exit 2018-11-09 09:07:46 +01:00
croneter
0b81fcd39c Fix sync progress 2018-11-09 09:05:14 +01:00
croneter
7830a0e0e3 Let full_sync finish gracefully on Kodi exit 2018-11-09 08:56:57 +01:00
croneter
e37223f016 Fix full_sync advancing before a section was synced 2018-11-09 08:44:05 +01:00
croneter
c8e8e04697 Speed up sync of actor artwork 2018-11-09 08:02:04 +01:00
croneter
463d0540a4 Speed up sync with dedicated add_artwork method 2018-11-09 07:56:10 +01:00
croneter
096af4dc7c Simplify code 2018-11-09 07:42:47 +01:00
croneter
5f57b0af5f Greatly speed up sync with dedicated add_people method 2018-11-08 21:40:19 +01:00
croneter
a16eae143a Rewire kodi database access 2018-11-08 21:22:16 +01:00
croneter
150229061b Reduce Python DB overhead 2018-11-08 15:15:52 +01:00
croneter
2319d2fc9c Further speed up add_file 2018-11-07 13:37:37 +01:00
croneter
05c96dc1c6 Speed up idPath look-up 2018-11-07 13:33:16 +01:00
croneter
3d837fcf33 Enable PKC to use Kodi DB index "ix_files" 2018-11-07 13:31:38 +01:00
croneter
015451d2fd Speed up Plex API 2018-11-07 12:08:35 +01:00
croneter
8ef0af3ec7 Commit DB changes for every 200 items 2018-11-07 10:41:40 +01:00
croneter
0db29dd568 Get movie set information asynchronously 2018-11-07 10:37:32 +01:00
croneter
e460aea7e8 Do not catch exceptions if checksum calc goes awry 2018-11-07 07:46:20 +01:00
croneter
923c413921 Add fallback if checksum updatedAt is missing 2018-11-07 07:45:19 +01:00
croneter
009fc9937a Fix OperationalError when trying to wipe empty Plex DB 2018-11-06 20:33:05 +01:00
croneter
a5ce8e0a93 More thorough cleanup upon PKC first run 2018-11-06 20:24:36 +01:00
croneter
a81fd527c1 Be smart when wiping Kodi DBs: only wipe music if necessary 2018-11-06 20:22:30 +01:00
croneter
20f26364b8 Enforce plex id type int 2018-11-06 19:06:48 +01:00
croneter
c996e5c9be Allow float offset values 2018-11-06 19:03:01 +01:00
croneter
f767342e13 Introduce properties for playqueue items 2018-11-06 19:01:56 +01:00
croneter
30a1a0a70c Fix TypeErrors 2018-11-06 18:21:14 +01:00
croneter
ff6f056bca Fix Plex Companion seeking 2018-11-06 18:16:32 +01:00
croneter
a75afc109c Fix TypeError for selecting Plex media streams 2018-11-06 15:12:17 +01:00
croneter
440f399917 Fix TypeError 2018-11-06 14:13:28 +01:00
croneter
b08b3dc443 Fix TypeError 2018-11-06 14:11:47 +01:00
croneter
41ec923a30 Fix KeyErrors 2018-11-06 14:08:14 +01:00
croneter
892a1afdcb Fix KeyError 2018-11-06 13:50:46 +01:00
croneter
06d00b2a12 Use Kodi hostname as Plex Companion friendly name 2018-11-06 13:43:40 +01:00
croneter
52a225eb92 Fix setting int/float ListItem property 2018-11-06 13:02:10 +01:00
croneter
df6cb5718a Fix casting of int/float to str or unicode 2018-11-06 12:41:06 +01:00
croneter
2e8be9ec6b Fix AttributeErrors 2018-11-06 12:35:02 +01:00
croneter
b7fa4f2c7b Fix playback receiving string plex id, not int 2018-11-06 12:33:02 +01:00
croneter
1b94e23386 Fix worker quitting prematurely 2018-11-06 11:30:04 +01:00
croneter
3414a0a688 Fix SyntaxError 2018-11-06 11:20:20 +01:00
croneter
3123af6426 Use a dedicated full sync thread manager
- Prevents threads from restarting all the time
2018-11-06 11:17:21 +01:00
croneter
7180595e05 Correctly show the current sync item number 2018-11-05 18:31:59 +01:00
croneter
bc1ad1d998 Prevent error message upon DB reset 2018-11-05 18:31:26 +01:00
croneter
0fa8fe1144 Fix AttributeError on PKC DB reset 2018-11-05 18:18:46 +01:00
croneter
e4c9a7a259 Optimize sync loop 2018-11-05 18:13:57 +01:00
croneter
d44d6983b3 Remove obsolete code 2018-11-05 18:02:37 +01:00
croneter
07c4d64a84 Rewire artwork caching 2018-11-05 18:00:01 +01:00
croneter
e761567592 Rewire image caching thread 2018-11-05 15:23:51 +01:00
croneter
30d85eebc0 Fix FanartThread isSuspended 2018-11-05 14:34:34 +01:00
croneter
03fb6506f4 PEP8 2018-11-05 14:18:52 +01:00
croneter
58d34e75f0 Move start of image caching thread to sync 2018-11-05 14:17:48 +01:00
croneter
99d0fe7538 Add missing notification text 2018-11-05 14:13:25 +01:00
croneter
2ffd4491cf Fix sync isSuspended 2018-11-05 14:10:43 +01:00
croneter
f321baab82 Code cleanup 2018-11-05 14:03:19 +01:00