mikiher and advplyr
40504da4d7
Improve book library page query performance for author sort order ( #4080 )
...
* Add migration to create authorNames* columns, in libraryItems including update triggers and indices
* Add authorNames columns and indices to LibraryItem model
* Add database triggers for updating author names in libraryItems (for new databases)
* Populate authorNames during book scanning
* Update book sorting to use new authorNames columns
* Add an index on podcastEpisodes.publishedAt
* Fix group_concat order by and update to sqlite 3.44.2
---------
Co-authored-by: advplyr <advplyr@protonmail.com >
2025-03-17 17:09:49 -05:00
mikiher
81cd6f6c7d
Fix RTL issue in LazyEpisodeRow
2025-03-07 21:14:50 +02:00
mikiher
6c0e42db49
Route from Issues to Library if last issue is removed
2025-02-23 18:06:36 +02:00
mikiher
364ccd85fe
Use count cache only when no filter is set
2025-02-23 08:53:57 +02:00
mikiher
d6b58c2f10
Revert "Invalidate count cache on entity update"
...
This reverts commit e8b60defb6 .
2025-02-23 08:03:10 +02:00
mikiher
e8b60defb6
Invalidate count cache on entity update
2025-02-21 09:45:10 +02:00
mikiher
2e8cb46c57
Resort title-sorted bookshelf after title change
2025-02-19 21:04:07 +02:00
mikiher
f9c0e52f18
Add title triggers in new databases
2025-02-19 17:39:32 +02:00
mikiher
568bf0254d
Change migration version to v2.19.4
2025-02-18 07:57:46 +02:00
mikiher
7038f5730f
Set title[IgnorePrefix] when a podcast libraryItem is created
2025-02-16 14:57:05 +02:00
mikiher
0a8186cbda
Add ANALYZE to database init sequence
2025-02-16 13:38:54 +02:00
mikiher
659164003f
Clear LibraryItemsPodcastFilters count cache after podcast[Episode] is created or destroryed
2025-02-16 13:27:47 +02:00
mikiher
de5d8650e8
Add profiling to podcast library filterdata queries
2025-02-16 12:47:23 +02:00
mikiher
bacefb5f6f
Format PodcastScanner (Pretteier-only changes)
2025-02-16 12:41:47 +02:00
mikiher
0169bf5518
Update podcast.numEpisodes when episodes are created or destroyed
2025-02-16 12:38:44 +02:00
mikiher
8f192b1b17
Add profiling to podcasts and podcast episodes page queries
2025-02-16 09:46:32 +02:00
mikiher
21343b5aa0
Add count cache to libraryItemsPodcastQueries
2025-02-16 09:40:29 +02:00
mikiher
a5508cdc4c
Remove unnecessary 'distinct: true' from podcast episodes page query
2025-02-16 09:32:00 +02:00
mikiher
bd4f48ec39
Add required: true to includes in podcast episodes page query
2025-02-16 09:29:57 +02:00
mikiher
cb9fc3e0d1
Replace numEpisodesIncomplete subquery with cached user progress calculation
2025-02-16 09:22:06 +02:00
mikiher
707533df8f
Remove numEpisodes subquery from podcasst page query
2025-02-16 09:15:54 +02:00
mikiher
2e48ec0dde
Use libraryItem.title[IgnorePrefix] for sorting podcasts page query
2025-02-16 09:08:27 +02:00
mikiher
f1e46a351b
Separate feed query from podcasts page query
2025-02-16 09:05:54 +02:00
mikiher
da8fd2d9d5
Set podcastId when mediaProgress is created
2025-02-16 08:57:10 +02:00
mikiher
f1de307bf9
Update cached user whenever mediaProgress is removed
2025-02-16 08:52:33 +02:00
mikiher
7282afcfde
Add podcastId to mediaProgress model
2025-02-16 08:42:09 +02:00
mikiher
e2f1aeed75
Add numEpisodes to podcast model
2025-02-16 08:38:03 +02:00
mikiher
23a750214f
Add migration in preparation for podcast query optimization
2025-02-16 08:35:51 +02:00
mikiher
8ee5646d79
fix stringifySequelizeQuery and add tests
2025-02-15 23:57:27 +02:00
mikiher
ec65376569
Security fix for GHSA-pg8v-5jcv-wrvw
2025-02-11 22:02:51 +02:00
mikiher
4cc300d6e9
Update changelog with v2.19.1 migration
2025-02-09 21:39:43 +02:00
mikiher
3d08a35aa0
Add index on (libraryId, mediaType, createdAt)
2025-02-08 14:53:01 +02:00
mikiher
a13143245b
Improve page load queries on title, titleIgnorePrefix, and addedAt sort order
2025-02-08 12:29:23 +02:00
mikiher
52bb28669a
Add a profile utility function
2025-02-08 10:41:56 +02:00
mikiher
76ac0d001b
Add resize to trix editor
2025-02-04 09:54:28 +02:00
mikiher
23067e1818
Allows setting of some pragma values through environment variables
2025-01-26 13:44:57 +02:00
mikiher
9b4732c207
Add bookSeries id attribute to findAllExpandedWhere
2025-01-26 12:21:54 +02:00
mikiher
286185329d
Support rich text book descriptions
2025-01-22 08:53:23 +02:00
mikiher
6c540ad789
Fix missing texture image for subdirectory support
2025-01-20 08:38:58 +02:00
mikiher
e865241258
Dynamically calculate episode row height on init
2025-01-15 10:39:59 +02:00
mikiher
1812282946
recommend using $http_host for ngnix
2025-01-12 18:35:49 +02:00
mikiher
de5bc63d88
Remove deleted episode from returned libraryItem object
2025-01-11 22:26:36 +02:00
mikiher
5e2282ef76
Fix LazyEpisodeTable.init to respect non-zero scrollTop
2025-01-11 22:25:30 +02:00
mikiher
b0dbccd283
Fix Trix to use paragraphs and break on return
2025-01-10 08:03:41 +02:00
mikiher
9668b49df9
Enable subdirectory support
2025-01-09 07:41:09 +02:00
mikiher
052e0059ff
Restore prod.js
2025-01-08 07:23:08 +02:00
mikiher
d410b13c9b
Merge prod.js into index.js
2025-01-07 17:41:09 +02:00
mikiher
43d8d9b286
Fix ffmpeg.addOption for transcoding
2025-01-04 20:16:48 +02:00
mikiher
fe2ba083be
Fix ffmpeg concat file escaping
2025-01-02 13:34:25 +02:00
mikiher
46247ecf78
Update migrations changelog
2025-01-01 08:41:27 +02:00
mikiher
0444829a9f
Add index on duration
2025-01-01 08:37:57 +02:00
mikiher
754c121168
Add libraryItem size index
2025-01-01 07:34:29 +02:00
mikiher
780c0dcb99
Merge branch 'master' into lazy-bookshelf-optimizations
2024-12-21 17:50:51 +02:00
mikiher
004210ee02
reuse entityTransform in mountEntityCard
2024-12-21 17:48:22 +02:00
mikiher
921880445a
Introduce static skeleton cards
2024-12-21 17:42:32 +02:00
mikiher
ba55413e63
LazyBookshelf optimizations
2024-12-16 19:21:44 +02:00
mikiher
b38ce41731
Remove xml cache from Feed object
2024-12-08 09:48:58 +02:00
mikiher
a8ab8badd5
always set req.originalHostPrefix
2024-12-08 09:23:39 +02:00
mikiher
9b8e059efe
Remove serverAddress from Feeds and FeedEpisodes URLs
2024-12-07 19:27:37 +02:00
mikiher
9917f2d358
Change migration to v2.17.4
2024-11-29 09:01:03 +02:00
mikiher
8c3ba67583
Fix label order
2024-11-29 05:48:04 +02:00
mikiher
6d8720b404
Subfolder support for OIDC auth
2024-11-29 04:28:50 +02:00
mikiher
843dd0b1b2
Keep original socket.io server for non-subdir clients
2024-11-29 04:13:00 +02:00
mikiher
5ccf5d7150
Use a simpler database fetch in fullUpdateFromOld
2024-11-16 06:26:32 +02:00
mikiher
8626fa3e00
Add episode_download_queue_cleared socket event
2024-11-12 07:37:38 +02:00
mikiher
b50d7f0927
Remove unnecessary socket event causing OOM
2024-11-12 07:25:10 +02:00
mikiher
a382482173
Add in-memory user cache
2024-11-10 08:34:47 +02:00
mikiher
68fd1d67cb
Remove token from author image URLs
2024-11-03 08:46:09 +02:00
mikiher
bf8407274e
No auth for author images
2024-11-03 08:45:43 +02:00
mikiher
3bc2941445
No db access for author image if in disk cache
2024-11-03 08:44:57 +02:00
mikiher
c25acb41fa
Remove token from cover image urls
2024-11-02 15:37:14 +02:00
mikiher
4224b8a486
No auth and req.user for cover images
2024-11-02 15:17:11 +02:00
mikiher
9e990d7927
Optimize LibraryItemController.getCover
2024-11-02 09:05:30 +02:00
mikiher
431ae97593
add Database.getLibraryItemCoverPath
2024-11-02 09:02:23 +02:00
mikiher
524cf5ec5b
Fix incorrect call to handleDownloadError
2024-10-29 21:42:44 +02:00
mikiher
9084055b95
Add proper error handing for file downloads
2024-10-28 08:03:31 +02:00
mikiher
50797879d5
Add a REINDEX NOCASE v2.15.1 migration and update v2.15.0 migration ( #3533 )
...
* Add REINDEX NOCASE migration and update v2.15.0 migration
* Update v2.15.0 migration test
* Fix typo
2024-10-18 16:10:29 -05:00
mikiher
49ed208a54
Add dev proxies for all server path
2024-10-17 11:25:57 +03:00
mikiher
cbca560f92
server.js: add base path to all non-base-path requests
2024-10-15 06:40:14 +03:00
mikiher
2d7b63b4cf
Add base path to socket.io connections on client and server
2024-10-15 05:50:23 +03:00
mikiher
42616b59de
Cleanup: remove explicit localhost:3333 and remove unnessesary if(dev) blocks
2024-10-14 13:30:17 +03:00
mikiher
bf16681bea
Merge branch 'subdirectory-fixes' of https://github.com/mikiher/audiobookshelf into subdirectory-fixes
2024-10-14 13:19:30 +03:00
mikiher
027190b5a4
Merge branch 'advplyr:master' into subdirectory-fixes
2024-10-14 13:18:04 +03:00
mikiher
241c02be30
nuxt.config.js: more cleanup and additional proxies
2024-10-14 13:12:10 +03:00
mikiher
f2ac24e623
Fix next/previous chapter behavior on public share player
2024-10-13 10:56:38 +03:00
mikiher
99ffd3050c
Cleanup: Define routerBasePath constant in nuxt.config.js
2024-10-12 11:46:44 +03:00
mikiher
69dd82d329
Remove unneeded /dev routing
2024-10-12 11:18:49 +03:00
mikiher
7653e72e88
Use object-cover for author images unless AR is really high or low.
2024-10-09 15:04:25 +03:00
mikiher
d92626071e
Use musl-based libnusqlite3 in Docker
2024-10-07 20:48:52 +03:00
mikiher
6820d9ae4e
Fix AuthorCard component test
2024-10-06 18:57:13 +03:00
mikiher
0bdc2fb05e
Move authors to lazyBookshelf
2024-10-06 18:25:08 +03:00
mikiher
086532652e
Fix to NUSQLITE3_PATH in index.js
2024-10-01 17:15:44 +03:00
mikiher
4e8b4720a1
Merge branch 'nunicode-intergration' of https://github.com/mikiher/audiobookshelf into nunicode-intergration
2024-10-01 16:48:14 +03:00
mikiher
4a7ada28fb
Switch to nunicode-binaries v1.1
2024-10-01 16:47:40 +03:00
mikiher
37eae3406c
Remove debug messages
2024-09-29 12:27:30 +03:00
mikiher
501dc938e6
Add Nunicode sqlite extension integration
2024-09-29 09:22:39 +03:00
mikiher
d796849d74
Small change to logging of unhandled rejections
2024-09-18 18:44:16 +03:00
mikiher
942bd0859f
Change PlaybackSession createFromOld to use upsert instead of create
2024-09-18 18:01:36 +03:00
mikiher
072028c740
Cleanup empty directiories inside the temp extraction dir
2024-09-18 10:16:46 +03:00
mikiher
0d08aecd56
Move from libarchive to node-unrar-js for cbr and node-stream-zip for cbz
2024-09-18 08:28:15 +03:00