bump version to 2.0.0

- Critical change that ensures reliablity and **should** have no bad side
  effects, but when you see any, please report:
  DICT, LIST, SET and Data List nodes (plus the DICT/LIST-taking STRING nodes)
  now degrade gracefully when their data source is not connected (`None`) instead
  of raising: read/query nodes return their natural "no data" result (the `get`
  default, an empty list, `False`, `0`, `None`), and transform nodes behave as if
  given an empty container.
- Add a "continue if not empty" flow-control node: it passes a value through
  unchanged when it is non-empty, and blocks execution (via an execution blocker)
  when the value is empty. It is list-aware (`INPUT_IS_LIST` / `OUTPUT_IS_LIST`),
  so it is immune to ComfyUI's empty-input batching crash and passes data lists
  through unchanged. By default the block is silent; an optional `message` can be
  set to show a dialog. Use it before nodes that cannot handle an empty input
  (e.g. a node receiving an empty Data List) to stop execution instead of failing.
This commit is contained in:
StableLlama
2026-09-11 11:02:43 +02:00
parent 8ff49ec895
commit 1deac10f15
15 changed files with 391 additions and 60 deletions
+8 -4
View File
@@ -39,14 +39,18 @@ jobs:
changelog = pathlib.Path("CHANGELOG.md").read_text(encoding="utf-8")
# Match headings like "## [1.7.0] - 2026-08-27", "## 1.7.0" or "## v1.7.0".
heading = re.compile(rf"^##\s+\[?v?{re.escape(version)}\]?\s*(?:-\s*\d{{4}}-\d{{2}}-\d{{2}})?\s*$", re.M)
match = heading.search(changelog)
version_heading = re.compile(rf"^##\s+\[?v?{re.escape(version)}\]?\s*(?:-\s*\d{{4}}-\d{{2}}-\d{{2}})?\s*$", re.M)
# Any second-level changelog heading. This locates the *next* (older)
# release so we capture only this version's section, not the whole log.
next_heading = re.compile(r"^##\s+", re.M)
match = version_heading.search(changelog)
if match is None:
print(f"::notice::No CHANGELOG.md section found for v{version}; publishing without a changelog")
pathlib.Path("CHANGELOG_CURRENT.md").write_text("", encoding="utf-8")
else:
end = heading.search(changelog, match.end())
section = changelog[match.end():end.start() if end else None].strip()
end = next_heading.search(changelog, match.end())
section = changelog[match.end(): end.start() if end else None].strip()
pathlib.Path("CHANGELOG_CURRENT.md").write_text(section + "\n", encoding="utf-8")
EOF