fix: raised the recursion limit in debug to 500
This commit is contained in:
parent
eec252cb16
commit
9addcf1862
@ -6,8 +6,8 @@ logging.getLogger().setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
commands = [
|
commands = [
|
||||||
"s: #a Toxoplasma",
|
"s: #a And End...",
|
||||||
"d: 16",
|
"d: 10",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
@ -30,6 +30,37 @@ if __name__ == "__main__":
|
|||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
other_artist: Artist = Artist(
|
||||||
|
name="artist",
|
||||||
|
main_album_list=[
|
||||||
|
Album(
|
||||||
|
title="album",
|
||||||
|
song_list=[
|
||||||
|
Song(
|
||||||
|
title="song",
|
||||||
|
album_list=[
|
||||||
|
Album(
|
||||||
|
title="album",
|
||||||
|
albumsort=123,
|
||||||
|
main_artist=Artist(name="other_artist"),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
Song(
|
||||||
|
title="other_song",
|
||||||
|
album_list=[
|
||||||
|
Album(title="album", albumsort=423),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
]
|
||||||
|
),
|
||||||
|
Album(title="album", barcode="1234567890123"),
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
artist.merge(other_artist)
|
||||||
|
|
||||||
a = artist.main_album_collection[0]
|
a = artist.main_album_collection[0]
|
||||||
b = a.song_collection[0].album_collection[0]
|
b = a.song_collection[0].album_collection[0]
|
||||||
c = a.song_collection[1].album_collection[0]
|
c = a.song_collection[1].album_collection[0]
|
||||||
|
@ -46,7 +46,7 @@ init_logging()
|
|||||||
from . import cli
|
from . import cli
|
||||||
|
|
||||||
if DEBUG:
|
if DEBUG:
|
||||||
sys.setrecursionlimit(100)
|
sys.setrecursionlimit(500)
|
||||||
|
|
||||||
|
|
||||||
if main_settings['modify_gc']:
|
if main_settings['modify_gc']:
|
||||||
|
@ -34,6 +34,6 @@ class Lyrics(OuterProxy):
|
|||||||
@property
|
@property
|
||||||
def metadata(self) -> Metadata:
|
def metadata(self) -> Metadata:
|
||||||
return Metadata({
|
return Metadata({
|
||||||
id3Mapping.UNSYNCED_LYRICS: self.text.html
|
id3Mapping.UNSYNCED_LYRICS: [self.text.html]
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ from functools import lru_cache
|
|||||||
from typing import Optional, Dict, Tuple, List, Type, Generic, Any, TypeVar, Set
|
from typing import Optional, Dict, Tuple, List, Type, Generic, Any, TypeVar, Set
|
||||||
|
|
||||||
from .metadata import Metadata
|
from .metadata import Metadata
|
||||||
from ..utils import get_unix_time
|
from ..utils import get_unix_time, object_trace
|
||||||
from ..utils.config import logging_settings, main_settings
|
from ..utils.config import logging_settings, main_settings
|
||||||
from ..utils.shared import HIGHEST_ID
|
from ..utils.shared import HIGHEST_ID
|
||||||
from ..utils.hacking import MetaClass
|
from ..utils.hacking import MetaClass
|
||||||
@ -107,6 +107,7 @@ class OuterProxy:
|
|||||||
self._inner: InnerData = InnerData(type(self), **kwargs)
|
self._inner: InnerData = InnerData(type(self), **kwargs)
|
||||||
self._inner._refers_to_instances.add(self)
|
self._inner._refers_to_instances.add(self)
|
||||||
|
|
||||||
|
object_trace(f"creating {type(self).__name__} [{self.title_string}]")
|
||||||
self.__init_collections__()
|
self.__init_collections__()
|
||||||
|
|
||||||
for name, data_list in collection_data.items():
|
for name, data_list in collection_data.items():
|
||||||
@ -182,6 +183,8 @@ class OuterProxy:
|
|||||||
if __other is None:
|
if __other is None:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
object_trace(f"merging {type(self).__name__} [{self.title_string}] with {type(__other).__name__} [{__other.title_string}]")
|
||||||
|
|
||||||
a = self
|
a = self
|
||||||
b = __other
|
b = __other
|
||||||
|
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
from typing import List, Dict, Set, Tuple, Optional, Iterable
|
from typing import List, Dict, Set, Tuple, Optional, Iterable
|
||||||
@ -103,12 +105,23 @@ class Source(OuterProxy):
|
|||||||
('audio_url', self.audio_url),
|
('audio_url', self.audio_url),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def __merge__(self, __other: Source, override: bool = False):
|
||||||
|
if override:
|
||||||
|
self.audio_url = __other.audio_url
|
||||||
|
|
||||||
|
if self.audio_url is None or (override and __other.audio_url is not None):
|
||||||
|
self.audio_url = __other.audio_url
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.__repr__()
|
return self.__repr__()
|
||||||
|
|
||||||
def __repr__(self) -> str:
|
def __repr__(self) -> str:
|
||||||
return f"Src({self.page_enum.value}: {self.url}, {self.audio_url})"
|
return f"Src({self.page_enum.value}: {self.url}, {self.audio_url})"
|
||||||
|
|
||||||
|
@property
|
||||||
|
def title_string(self) -> str:
|
||||||
|
return self.url
|
||||||
|
|
||||||
page_str = property(fget=lambda self: self.page_enum.value)
|
page_str = property(fget=lambda self: self.page_enum.value)
|
||||||
type_str = property(fget=lambda self: self.type_enum.value)
|
type_str = property(fget=lambda self: self.type_enum.value)
|
||||||
homepage = property(fget=lambda self: SourcePages.get_homepage(self.page_enum))
|
homepage = property(fget=lambda self: SourcePages.get_homepage(self.page_enum))
|
||||||
|
@ -52,6 +52,12 @@ def trace(msg: str):
|
|||||||
|
|
||||||
output("trace: " + msg, BColors.OKBLUE)
|
output("trace: " + msg, BColors.OKBLUE)
|
||||||
|
|
||||||
|
def object_trace(obj):
|
||||||
|
if not DEBUG_TRACE:
|
||||||
|
return
|
||||||
|
|
||||||
|
output("object: " + str(obj), BColors.GREY)
|
||||||
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
misc functions
|
misc functions
|
||||||
|
@ -15,6 +15,7 @@ __stage__ = os.getenv("STAGE", "prod")
|
|||||||
DEBUG = (__stage__ == "dev") and True
|
DEBUG = (__stage__ == "dev") and True
|
||||||
DEBUG_LOGGING = DEBUG and False
|
DEBUG_LOGGING = DEBUG and False
|
||||||
DEBUG_TRACE = DEBUG and True
|
DEBUG_TRACE = DEBUG and True
|
||||||
|
DEBUG_OBJECT_TRACE = DEBUG and False
|
||||||
DEBUG_YOUTUBE_INITIALIZING = DEBUG and False
|
DEBUG_YOUTUBE_INITIALIZING = DEBUG and False
|
||||||
DEBUG_PAGES = DEBUG and False
|
DEBUG_PAGES = DEBUG and False
|
||||||
DEBUG_DUMP = DEBUG and True
|
DEBUG_DUMP = DEBUG and True
|
||||||
|
Loading…
Reference in New Issue
Block a user