medialibrary merge requestshttps://code.videolan.org/videolan/medialibrary/-/merge_requests2022-02-14T17:10:32Zhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/625meson: Fix libatomic check2022-02-14T17:10:32ZHugo Beauzée-Luyssenmeson: Fix libatomic checkThe whole point is to handle libatomic not being present, so we should
not require itThe whole point is to handle libatomic not being present, so we should
not require it0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/624Revert "CI: Don't enforce a number of test threads"2022-02-14T15:33:51ZHugo Beauzée-LuyssenRevert "CI: Don't enforce a number of test threads"This reverts commit 7ed13f7ccccc449c262b3a4a1476b5fa03f61a09.
Since this commit, most windows tests take more than 15 seconds to
execute, which causes a lot of timeoutsThis reverts commit 7ed13f7ccccc449c262b3a4a1476b5fa03f61a09.
Since this commit, most windows tests take more than 15 seconds to
execute, which causes a lot of timeouts0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/623File: Remove old and undocumented work around for external MRL2022-02-14T15:45:23ZHugo Beauzée-LuyssenFile: Remove old and undocumented work around for external MRLThis is breaking legitimate usecases, we'll reimplement it with the
new mountpoint cache if needed
Fix #414This is breaking legitimate usecases, we'll reimplement it with the
new mountpoint cache if needed
Fix #4140.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/622Fix parser edgecases2022-02-14T14:14:07ZHugo Beauzée-LuyssenFix parser edgecasesThis fixes a couple issues with the parser code:
- Late completing tasks could trigger an assertion after flushing, we can ignore those
- The parser uses the FS factories when analyzing content, so ensure it starts those, in case the app...This fixes a couple issues with the parser code:
- Late completing tasks could trigger an assertion after flushing, we can ignore those
- The parser uses the FS factories when analyzing content, so ensure it starts those, in case the application hasn't asked for a reload yet.0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/621sqlite: Fix priority access handling2022-02-14T14:06:12ZHugo Beauzée-Luyssensqlite: Fix priority access handlingAcquiring a priority access means that the current thread will have
priority over other threads attempting to acquire a sqlite lock, it
doesn't acquire a lock in itself, so we need to ignore those when
acquiring a sqlite connection handle.Acquiring a priority access means that the current thread will have
priority over other threads attempting to acquire a sqlite lock, it
doesn't acquire a lock in itself, so we need to ignore those when
acquiring a sqlite connection handle.0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/620Fix recursive sqlite contexts acquisition2022-02-14T10:45:50ZHugo Beauzée-LuyssenFix recursive sqlite contexts acquisition0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/619Fix background jobs idle detection2022-02-14T10:21:38ZHugo Beauzée-LuyssenFix background jobs idle detection0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/618meson: Normalize indentation2022-02-16T07:53:17ZHugo Beauzée-Luyssenmeson: Normalize indentation0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/617CI: Minor fixups2022-02-11T14:38:58ZHugo Beauzée-LuyssenCI: Minor fixups0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/616Fix warnings2022-02-11T14:27:25ZHugo Beauzée-LuyssenFix warnings0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/615sqlite: Remove unused member variable2022-02-11T14:19:27ZHugo Beauzée-Luyssensqlite: Remove unused member variable0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/614sqlite: Fix recursive acquisition of locked contexts2022-02-11T13:30:12ZHugo Beauzée-Luyssensqlite: Fix recursive acquisition of locked contexts0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/613parser: Don't toggle idle state outside of the worker2022-02-11T11:16:40ZHugo Beauzée-Luyssenparser: Don't toggle idle state outside of the workerChanging the idle state is likely to cause a deadlock on startup when
tasks are restored.
parser::restore() is called from MediaLibrary::initialize() with the
medialib lock held, and changing the idle state synchronously from that
thread...Changing the idle state is likely to cause a deadlock on startup when
tasks are restored.
parser::restore() is called from MediaLibrary::initialize() with the
medialib lock held, and changing the idle state synchronously from that
thread would cause onIdleChange to be invoked, which will try to lock
the mutex recursively, leading to a deadlock.0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/612CI: Add an asan/ubsan job for merge requests2022-02-11T10:42:54ZHugo Beauzée-LuyssenCI: Add an asan/ubsan job for merge requests0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/611Code cleanup2022-02-11T09:45:22ZHugo Beauzée-LuyssenCode cleanupFix various cppcheck warningsFix various cppcheck warnings0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/610meson: Add an explicit libtool_workaround option2022-02-11T12:38:36ZHugo Beauzée-Luyssenmeson: Add an explicit libtool_workaround optionWhich is used to enforce `-lpthread` and `-latomic` when it's available.
This should fix #411 and avoid useless additional link flags when libtool isn't usedWhich is used to enforce `-lpthread` and `-latomic` when it's available.
This should fix #411 and avoid useless additional link flags when libtool isn't used0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/609Bump libvlcpp submodule2022-02-09T08:59:20ZHugo Beauzée-LuyssenBump libvlcpp submodule0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/608Refactor SQLite lock handling2022-02-08T13:51:57ZHugo Beauzée-LuyssenRefactor SQLite lock handlingThis MR enforces the need for an active sqlite context (aka lock) when executing a statement.
This fixes a small race window in which an existing connection could be user after the database was dropped.
It might also fix some rare cras...This MR enforces the need for an active sqlite context (aka lock) when executing a statement.
This fixes a small race window in which an existing connection could be user after the database was dropped.
It might also fix some rare crashes due to improper syncronization/missing locks for some requests.
Fix #405 and #413
I really doubt this can be backported though.0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/607CI: Don't split build and tests2022-01-28T14:50:07ZHugo Beauzée-LuyssenCI: Don't split build and testsThe split is virtual for win32 and doesn't bring much for other
platforms.
Given the build is fairly fast, it might actually be faster
to just build and run in one job than to spawn 2 jobs and
upload/download/extract the artifactsThe split is virtual for win32 and doesn't bring much for other
platforms.
Given the build is fairly fast, it might actually be faster
to just build and run in one job than to spawn 2 jobs and
upload/download/extract the artifacts0.11.xhttps://code.videolan.org/videolan/medialibrary/-/merge_requests/606CI: Re-enable tsan tests2023-06-28T21:21:05ZHugo Beauzée-LuyssenCI: Re-enable tsan tests0.11.x