Skip to content

Commit 6eb7eed

Browse files
committed
refactor: simplify settings to pure pydantic without backward compat
- Remove ConfigWrapper class and backward compatibility layer - Use direct pydantic BaseSettings with typed nested models - Change context manager from config(...) to config.override(...) - Add validate_assignment=True for runtime type checking - Improve store spec validation with clear error messages - Update all tests to use new API - Preserve dict-style access via __getitem__/__setitem__ for convenience
1 parent a268bd3 commit 6eb7eed

File tree

7 files changed

+572
-549
lines changed

7 files changed

+572
-549
lines changed

src/datajoint/jobs.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ def reserve(self, table_name, key):
7676
user=self._user,
7777
)
7878
try:
79-
with config(enable_python_native_blobs=True):
79+
with config.override(enable_python_native_blobs=True):
8080
self.insert1(job, ignore_extra_fields=True)
8181
except DuplicateError:
8282
return False
@@ -107,7 +107,7 @@ def ignore(self, table_name, key):
107107
user=self._user,
108108
)
109109
try:
110-
with config(enable_python_native_blobs=True):
110+
with config.override(enable_python_native_blobs=True):
111111
self.insert1(job, ignore_extra_fields=True)
112112
except DuplicateError:
113113
return False
@@ -135,7 +135,7 @@ def error(self, table_name, key, error_message, error_stack=None):
135135
"""
136136
if len(error_message) > ERROR_MESSAGE_LENGTH:
137137
error_message = error_message[: ERROR_MESSAGE_LENGTH - len(TRUNCATION_APPENDIX)] + TRUNCATION_APPENDIX
138-
with config(enable_python_native_blobs=True):
138+
with config.override(enable_python_native_blobs=True):
139139
self.insert1(
140140
dict(
141141
table_name=table_name,

0 commit comments

Comments
 (0)