mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2026-05-08 00:16:30 +00:00
[ie/youtube] Rename cache register decorators
This commit is contained in:
parent
8def006075
commit
4e22fb6192
@ -11,14 +11,13 @@ from yt_dlp.extractor.youtube.pot.provider import (
|
|||||||
|
|
||||||
from yt_dlp.extractor.youtube.pot.cache import (
|
from yt_dlp.extractor.youtube.pot.cache import (
|
||||||
PoTokenCacheProvider,
|
PoTokenCacheProvider,
|
||||||
register_pcp,
|
|
||||||
register_pcp_preference,
|
|
||||||
PoTokenCacheSpec,
|
PoTokenCacheSpec,
|
||||||
PoTokenCacheSpecProvider,
|
PoTokenCacheSpecProvider,
|
||||||
register_pcsp,
|
|
||||||
CacheProviderWritePolicy,
|
CacheProviderWritePolicy,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
import yt_dlp.extractor.youtube.pot.cache as cache
|
||||||
|
|
||||||
from yt_dlp.globals import _pot_cache_providers, _pot_cache_provider_preferences, _pot_pcs_providers
|
from yt_dlp.globals import _pot_cache_providers, _pot_cache_provider_preferences, _pot_pcs_providers
|
||||||
|
|
||||||
from yt_dlp.networking import Request
|
from yt_dlp.networking import Request
|
||||||
@ -468,7 +467,7 @@ def test_register_pot_preference(ie):
|
|||||||
|
|
||||||
def test_register_cache_provider(ie):
|
def test_register_cache_provider(ie):
|
||||||
|
|
||||||
@register_pcp
|
@cache.register_provider
|
||||||
class UnavailableCacheProviderPCP(PoTokenCacheProvider):
|
class UnavailableCacheProviderPCP(PoTokenCacheProvider):
|
||||||
def is_available(self) -> bool:
|
def is_available(self) -> bool:
|
||||||
return False
|
return False
|
||||||
@ -488,7 +487,7 @@ def test_register_cache_provider(ie):
|
|||||||
|
|
||||||
def test_register_cache_provider_spec(ie):
|
def test_register_cache_provider_spec(ie):
|
||||||
|
|
||||||
@register_pcsp
|
@cache.register_spec
|
||||||
class UnavailableCacheProviderPCSP(PoTokenCacheSpecProvider):
|
class UnavailableCacheProviderPCSP(PoTokenCacheSpecProvider):
|
||||||
def is_available(self) -> bool:
|
def is_available(self) -> bool:
|
||||||
return False
|
return False
|
||||||
@ -503,7 +502,7 @@ def test_register_cache_provider_spec(ie):
|
|||||||
def test_register_cache_provider_preference(ie):
|
def test_register_cache_provider_preference(ie):
|
||||||
before = len(_pot_cache_provider_preferences.value)
|
before = len(_pot_cache_provider_preferences.value)
|
||||||
|
|
||||||
@register_pcp_preference(ExampleCacheProviderPCP)
|
@cache.register_preference(ExampleCacheProviderPCP)
|
||||||
def unavailable_preference(provider: PoTokenCacheProvider, request: PoTokenRequest):
|
def unavailable_preference(provider: PoTokenCacheProvider, request: PoTokenRequest):
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
|||||||
@ -168,14 +168,14 @@ def my_provider_preference(provider: PoTokenProvider, request: PoTokenRequest, *
|
|||||||
```python
|
```python
|
||||||
from yt_dlp.extractor.youtube.pot.cache import (
|
from yt_dlp.extractor.youtube.pot.cache import (
|
||||||
PoTokenCacheProvider,
|
PoTokenCacheProvider,
|
||||||
register_pcp_preference,
|
register_preference,
|
||||||
register_pcp
|
register_provider
|
||||||
)
|
)
|
||||||
|
|
||||||
from yt_dlp.extractor.youtube.pot.provider import PoTokenRequest
|
from yt_dlp.extractor.youtube.pot.provider import PoTokenRequest
|
||||||
|
|
||||||
|
|
||||||
@register_pcp
|
@register_provider
|
||||||
class MyCacheProviderPCP(PoTokenCacheProvider): # Provider name must end with "PCP"
|
class MyCacheProviderPCP(PoTokenCacheProvider): # Provider name must end with "PCP"
|
||||||
PROVIDER_VERSION = '0.1.0'
|
PROVIDER_VERSION = '0.1.0'
|
||||||
# Define a unique display name for the provider
|
# Define a unique display name for the provider
|
||||||
@ -219,7 +219,7 @@ class MyCacheProviderPCP(PoTokenCacheProvider): # Provider name must end with "
|
|||||||
# VERY IMPORTANT: yt-dlp has a built-in memory cache with a priority of 10000. Your cache provider should be lower than this.
|
# VERY IMPORTANT: yt-dlp has a built-in memory cache with a priority of 10000. Your cache provider should be lower than this.
|
||||||
|
|
||||||
|
|
||||||
@register_pcp_preference(MyCacheProviderPCP)
|
@register_preference(MyCacheProviderPCP)
|
||||||
def my_cache_preference(provider: PoTokenCacheProvider, request: PoTokenRequest, *_, **__) -> int:
|
def my_cache_preference(provider: PoTokenCacheProvider, request: PoTokenRequest, *_, **__) -> int:
|
||||||
return 50
|
return 50
|
||||||
```
|
```
|
||||||
@ -236,13 +236,13 @@ from yt_dlp.extractor.youtube.pot.cache import (
|
|||||||
PoTokenCacheSpec,
|
PoTokenCacheSpec,
|
||||||
PoTokenCacheSpecProvider,
|
PoTokenCacheSpecProvider,
|
||||||
CacheProviderWritePolicy,
|
CacheProviderWritePolicy,
|
||||||
register_pcsp,
|
register_spec,
|
||||||
)
|
)
|
||||||
from yt_dlp.utils import traverse_obj
|
from yt_dlp.utils import traverse_obj
|
||||||
from yt_dlp.extractor.youtube.pot.provider import PoTokenRequest
|
from yt_dlp.extractor.youtube.pot.provider import PoTokenRequest
|
||||||
|
|
||||||
|
|
||||||
@register_pcsp
|
@register_spec
|
||||||
class MyCacheSpecProviderPCSP(PoTokenCacheSpecProvider): # Provider name must end with "PCSP"
|
class MyCacheSpecProviderPCSP(PoTokenCacheSpecProvider): # Provider name must end with "PCSP"
|
||||||
PROVIDER_VERSION = '0.1.0'
|
PROVIDER_VERSION = '0.1.0'
|
||||||
# Define a unique display name for the provider
|
# Define a unique display name for the provider
|
||||||
|
|||||||
@ -8,8 +8,8 @@ from threading import Lock
|
|||||||
from yt_dlp.extractor.youtube.pot._provider import BuiltInIEContentProvider
|
from yt_dlp.extractor.youtube.pot._provider import BuiltInIEContentProvider
|
||||||
from yt_dlp.extractor.youtube.pot.cache import (
|
from yt_dlp.extractor.youtube.pot.cache import (
|
||||||
PoTokenCacheProvider,
|
PoTokenCacheProvider,
|
||||||
register_pcp,
|
register_preference,
|
||||||
register_pcp_preference,
|
register_provider,
|
||||||
)
|
)
|
||||||
from yt_dlp.globals import _pot_memory_cache
|
from yt_dlp.globals import _pot_memory_cache
|
||||||
|
|
||||||
@ -26,7 +26,7 @@ def initialize_global_cache(max_size: int):
|
|||||||
return _pot_memory_cache.value['cache'], _pot_memory_cache.value['lock'], _pot_memory_cache.value['max_size']
|
return _pot_memory_cache.value['cache'], _pot_memory_cache.value['lock'], _pot_memory_cache.value['max_size']
|
||||||
|
|
||||||
|
|
||||||
@register_pcp
|
@register_provider
|
||||||
class MemoryLRUPCP(PoTokenCacheProvider, BuiltInIEContentProvider):
|
class MemoryLRUPCP(PoTokenCacheProvider, BuiltInIEContentProvider):
|
||||||
PROVIDER_NAME = 'memory'
|
PROVIDER_NAME = 'memory'
|
||||||
DEFAULT_CACHE_SIZE = 25
|
DEFAULT_CACHE_SIZE = 25
|
||||||
@ -74,7 +74,7 @@ class MemoryLRUPCP(PoTokenCacheProvider, BuiltInIEContentProvider):
|
|||||||
self.cache.pop(key, None)
|
self.cache.pop(key, None)
|
||||||
|
|
||||||
|
|
||||||
@register_pcp_preference(MemoryLRUPCP)
|
@register_preference(MemoryLRUPCP)
|
||||||
def memorylru_preference(*_, **__):
|
def memorylru_preference(*_, **__):
|
||||||
# Memory LRU Cache SHOULD be the highest priority
|
# Memory LRU Cache SHOULD be the highest priority
|
||||||
return 10000
|
return 10000
|
||||||
|
|||||||
@ -6,7 +6,7 @@ from yt_dlp.extractor.youtube.pot.cache import (
|
|||||||
CacheProviderWritePolicy,
|
CacheProviderWritePolicy,
|
||||||
PoTokenCacheSpec,
|
PoTokenCacheSpec,
|
||||||
PoTokenCacheSpecProvider,
|
PoTokenCacheSpecProvider,
|
||||||
register_pcsp,
|
register_spec,
|
||||||
)
|
)
|
||||||
from yt_dlp.extractor.youtube.pot.provider import (
|
from yt_dlp.extractor.youtube.pot.provider import (
|
||||||
PoTokenRequest,
|
PoTokenRequest,
|
||||||
@ -14,7 +14,7 @@ from yt_dlp.extractor.youtube.pot.provider import (
|
|||||||
from yt_dlp.utils import traverse_obj
|
from yt_dlp.utils import traverse_obj
|
||||||
|
|
||||||
|
|
||||||
@register_pcsp
|
@register_spec
|
||||||
class WebPoPCSP(PoTokenCacheSpecProvider, BuiltInIEContentProvider):
|
class WebPoPCSP(PoTokenCacheSpecProvider, BuiltInIEContentProvider):
|
||||||
PROVIDER_NAME = 'webpo'
|
PROVIDER_NAME = 'webpo'
|
||||||
|
|
||||||
|
|||||||
@ -61,7 +61,7 @@ class PoTokenCacheSpecProvider(IEContentProvider, abc.ABC, suffix='PCSP'):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
def register_pcp(provider: type[PoTokenCacheProvider]):
|
def register_provider(provider: type[PoTokenCacheProvider]):
|
||||||
"""Register a PoTokenCacheProvider class"""
|
"""Register a PoTokenCacheProvider class"""
|
||||||
return register_provider_generic(
|
return register_provider_generic(
|
||||||
provider=provider,
|
provider=provider,
|
||||||
@ -70,7 +70,7 @@ def register_pcp(provider: type[PoTokenCacheProvider]):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def register_pcsp(provider: type[PoTokenCacheSpecProvider]):
|
def register_spec(provider: type[PoTokenCacheSpecProvider]):
|
||||||
"""Register a PoTokenCacheSpecProvider class"""
|
"""Register a PoTokenCacheSpecProvider class"""
|
||||||
return register_provider_generic(
|
return register_provider_generic(
|
||||||
provider=provider,
|
provider=provider,
|
||||||
@ -80,7 +80,7 @@ def register_pcsp(provider: type[PoTokenCacheSpecProvider]):
|
|||||||
|
|
||||||
|
|
||||||
# XXX: I don't think the typing is correct, and that we need py3.10 to properly type this
|
# XXX: I don't think the typing is correct, and that we need py3.10 to properly type this
|
||||||
def register_pcp_preference(*providers: type[PoTokenCacheProvider]) -> typing.Callable[[PCPPreference], PCPPreference]:
|
def register_preference(*providers: type[PoTokenCacheProvider]) -> typing.Callable[[PCPPreference], PCPPreference]:
|
||||||
"""Register a preference for a PoTokenCacheProvider"""
|
"""Register a preference for a PoTokenCacheProvider"""
|
||||||
return register_preference_generic(
|
return register_preference_generic(
|
||||||
PoTokenCacheProvider,
|
PoTokenCacheProvider,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user