Commit Graph

58 Commits

Author SHA1 Message Date
Deluan 1a96e9fe65 Import smart playlists (extension .nsp) 2021-10-23 20:25:28 -04:00
Deluan 5bd33455a1 Fix deadlock situation when events are sent too fast to the broker 2021-07-01 10:42:00 -04:00
Deluan b65e76293a Only send events to clients who need it
- User events (star, rating, plays) only sent to same user
- Don't send to the client (browser window) that originated the event
2021-06-15 18:59:26 -04:00
Deluan 7f85ecd515 Trigger a UI refresh when the scanner finds changes.
Closes #1025
2021-06-09 21:02:20 -04:00
Deluan f8dbc41b6d Breaking change: Add `ScanSchedule`, allows interval and cron based configurations.
See https://pkg.go.dev/github.com/robfig/cron#hdr-CRON_Expression_Format for expression syntax.

`ScanInterval` will still work for the time being. The only situation it does not work is when you want to disable periodic scanning by setting `ScanInterval=0`. If you want to disable it, please set `ScanSchedule=""`

Closes #1085
2021-05-06 17:56:10 -04:00
Deluan 8a07bac2a2 Fix SIGUSR1 work when ScanInterval=0 2021-04-29 13:10:10 -04:00
Deluan d5c7a81888 Disable SIGUSR1 handler for Windows (not available) 2021-04-23 21:22:04 -04:00
Deluan 1e539f4e54 Add trigger scan when receiving SIGUSR1 signal 2021-04-23 20:40:28 -04:00
Deluan 6ee45a9ccc Move project to Navidrome GitHub organization 2021-02-06 21:46:35 -05:00
Deluan c5686c4884 Replace periodic scanner cancellation channel with a context 2021-01-31 17:37:54 -05:00
Deluan 8b92796a5c Disconnect the client if the output buffer fills up 2020-12-12 18:26:30 -05:00
Deluan f29bb211d1 Better termination handling in Scanner's progress 2020-11-25 19:05:36 -05:00
Deluan a1dcb9a4e3 Show folders scanned instead of files scanned 2020-11-16 00:36:12 -05:00
Deluan c09ba509b2 Fine tune scan status behaviour 2020-11-12 16:12:31 -05:00
Deluan 2b1a5f579a Adding a communication channel between server and clients using SSE 2020-11-09 16:12:50 -05:00
Deluan ee5a0698c0 Simplify scanner utilization 2020-11-01 18:37:17 -05:00
Deluan 8e584ee020 Update count on `getScanStatus` 2020-11-01 16:54:33 -05:00
Deluan 464e251d19 Only start the cache warming after all folders were scanned 2020-10-27 20:11:25 -04:00
Deluan 1e56f4da76 Add simple cache warmer, disabled by default 2020-10-25 23:22:52 -04:00
Deluan 1cfa7b2272 Change MediaFolder.ID type to int32 2020-10-25 23:22:52 -04:00
Deluan af7eaa2b7a Add scanner status 2020-10-25 23:22:52 -04:00
Deluan f992b5663f Remove old scanner 2020-07-27 12:34:44 -04:00
Deluan d268075046 Change the default scanner to use new implementation 2020-07-19 21:39:06 -04:00
Deluan 3239be4a4d Change log level of some scanner operations 2020-07-17 12:49:37 -04:00
Deluan 51c295d1de Add new scanner algorithm, can be enabled with DevNewScanner config option 2020-07-17 12:06:49 -04:00
Deluan 5cd453afeb Fix all `errcheck` warnings 2020-04-26 15:07:36 -04:00
Deluan 03c3c192ed Fixing static checks about passing nil context 2020-04-26 15:07:36 -04:00
Deluan 400fa65326 feat: better scanner logging when level = info 2020-02-08 23:36:09 -05:00
Deluan 71c1844bca refactor: new persistence, more SQL, less ORM 2020-02-01 17:23:03 -05:00
Deluan 0d2911daf9 refactor: add Context to the persistence layer 2020-01-27 09:41:33 -05:00
Deluan bee55c04c8 Rename project to Navidrome 2020-01-23 19:44:08 -05:00
Deluan 67eeb218c4 Big Refactor:
- Create model.DataStore, with provision for transactions
- Change all layers dependencies on repositories to use DataStore
- Implemented persistence.SQLStore
- Removed iTunes Bridge/Importer support
2020-01-19 16:28:09 -05:00
Deluan ea9ed4a287 Fix ChangeDetector to keep the dirMap from last scan 2020-01-17 22:41:10 -05:00
Deluan c0beaa6377 Integrate ArtistIndex logic into Artist 2020-01-17 20:54:28 -05:00
Deluan 123f543a94 New Folder Scanner - WIP 2020-01-17 20:54:28 -05:00
Deluan 4b70daf143 Converted scanner to a proper Import "class", to facilitate testing 2016-03-03 20:01:27 -05:00
Deluan 848809d0df Supporting starred in getMusicDirectory.view 2016-03-03 15:41:24 -05:00
Deluan 1b945831cc Implementing coverArt 2016-03-03 10:34:17 -05:00
Deluan f01a5f143d Added Starred for Album and MediaFile 2016-03-03 01:07:13 -05:00
Deluan 012958cd08 go fmt 2016-03-03 00:46:23 -05:00
Deluan ffd6304a23 Added DiscNumber field, used to sort tracks 2016-03-03 00:42:42 -05:00
Deluan 1aeb22dcb7 Fixed (?) Artist x AlbumArtist 2016-03-03 00:25:26 -05:00
Deluan eabee8b502 More track info 2016-03-02 23:51:26 -05:00
Deluan 757e1992d7 Bare bones getMusicDirectory for albums! 2016-03-02 23:15:17 -05:00
Deluan 51bae19191 Added Genre and Track Number to getMusicDirectory 2016-03-02 22:43:31 -05:00
Deluan 4843ccb46c go fmt 2016-03-02 13:18:39 -05:00
Deluan 300ed0d9a4 Introduced interfaces for all repositories, completely isolating the persistence layer from the repositories usage and specification 2016-03-02 09:43:00 -05:00
Deluan 272a499c7e Refactoring to a cleaner architecture 2016-03-02 09:10:28 -05:00
Deluan c64a0f8242 Implemented proper index grouping 2016-03-01 17:54:13 -05:00
Deluan 841d8f457f Implemented ProperyRepository. Now the Scanner stores the LastScan timestamp 2016-03-01 14:40:26 -05:00