fix config save

Signed-off-by: Vladimir Mandic <mandic00@live.com>
This commit is contained in:
Vladimir Mandic
2025-04-23 09:10:27 -04:00
parent d5251cea21
commit 641e1e52b3
3 changed files with 24 additions and 10 deletions
+2 -1
View File
@@ -1,6 +1,6 @@
# Change Log for SD.Next
## Update for 2025-04-22
## Update for 2025-04-23
- **Features**
- [Nunchaku](https://github.com/mit-han-lab/nunchaku) inference engine with custom **SVDQuant** 4-bit execution
@@ -65,6 +65,7 @@
- HiDream live preview
- SD35 InstantX IP-adapter
- xyz grid restore settings
- config save unnecessary keys
- extension installer handling of PYTHONPATH
- trace logging
- api logging
+4 -2
View File
@@ -538,7 +538,7 @@ def check_diffusers():
t_start = time.time()
if args.skip_all or args.skip_git or args.experimental:
return
sha = 'e30d3bf5442fbdbee899e8a5da0b11b621d54f1b' # diffusers commit hash
sha = '026507c06cdabfb0c13ddeb1ac33f5d8e244361f' # diffusers commit hash
pkg = pkg_resources.working_set.by_key.get('diffusers', None)
minor = int(pkg.version.split('.')[1] if pkg is not None else 0)
cur = opts.get('diffusers_version', '') if minor > 0 else ''
@@ -1401,7 +1401,9 @@ def check_version(offline=False, reset=True): # pylint: disable=unused-argument
git_reset()
check_version(offline=offline, reset=False)
else:
log.info(f'Repository latest available {commits["commit"]["sha"]} {commits["commit"]["commit"]["author"]["date"]}')
dt = commits["commit"]["commit"]["author"]["date"]
commit = commits["commit"]["sha"][:8]
log.info(f'Version: check latest available hash={commit} updated={dt}')
except Exception as e:
log.error(f'Repository failed to check version: {e} {commits}')
ts('latest', t_start)
+18 -7
View File
@@ -1112,25 +1112,36 @@ class Options:
diff = {}
unused_settings = []
# if self.debug:
# log.debug('Settings: user')
# for k, v in self.data.items():
# log.trace(f' Config: item={k} value={v} default={self.data_labels[k].default if k in self.data_labels else None}')
if self.debug:
log.debug('Settings: user')
for k, v in self.data.items():
log.trace(f' Config: item={k} value={v} default={self.data_labels[k].default if k in self.data_labels else None}')
log.debug(f'Settings: total={len(self.data.keys())} known={len(self.data_labels.keys())}')
for k, v in self.data.items():
if k in self.data_labels:
if type(v) is list:
diff[k] = v
if self.data_labels[k].default != v:
default = self.data_labels[k].default
if isinstance(v, list):
if (len(default) != len(v) or set(default) != set(v)): # list order is non-deterministic
diff[k] = v
if self.debug:
log.trace(f'Settings changed: {k}={v} default={default}')
elif self.data_labels[k].default != v:
diff[k] = v
if self.debug:
log.trace(f'Settings changed: {k}={v} default={default}')
else:
if k not in compatibility_opts:
diff[k] = v
if not k.startswith('uiux_'):
unused_settings.append(k)
if self.debug:
log.trace(f'Settings unknown: {k}={v}')
writefile(diff, filename, silent=silent)
if self.debug:
log.trace(f'Settings save: {diff}')
log.trace(f'Settings save: count={len(diff.keys())} {diff}')
if len(unused_settings) > 0:
log.debug(f"Settings: unused={unused_settings}")
except Exception as err: