idf-build-apps 2.12.2__tar.gz → 2.12.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/CHANGELOG.md +6 -0
  2. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/PKG-INFO +1 -1
  3. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/__init__.py +1 -1
  4. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/utils.py +3 -0
  5. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/pyproject.toml +1 -1
  6. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/setup.py +1 -1
  7. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_utils.py +17 -0
  8. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.editorconfig +0 -0
  9. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.git-blame-ignore-revs +0 -0
  10. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.gitattributes +0 -0
  11. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.github/dependabot.yml +0 -0
  12. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.github/workflows/publish-pypi.yml +0 -0
  13. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.github/workflows/sync-jira.yml +0 -0
  14. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.github/workflows/test-build-docs.yml +0 -0
  15. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.github/workflows/test-build-idf-apps.yml +0 -0
  16. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.gitignore +0 -0
  17. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.pre-commit-config.yaml +0 -0
  18. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/.readthedocs.yml +0 -0
  19. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/CONTRIBUTING.md +0 -0
  20. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/LICENSE +0 -0
  21. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/README.md +0 -0
  22. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/_apidoc_templates/module.rst_t +0 -0
  23. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/_apidoc_templates/package.rst_t +0 -0
  24. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/_apidoc_templates/toc.rst_t +0 -0
  25. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/_static/espressif-logo.svg +0 -0
  26. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/_static/theme_overrides.css +0 -0
  27. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/_templates/layout.html +0 -0
  28. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/conf_common.py +0 -0
  29. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/Makefile +0 -0
  30. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/conf.py +0 -0
  31. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/explanations/build.rst +0 -0
  32. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/explanations/build_status.rst +0 -0
  33. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/explanations/config_rules.rst +0 -0
  34. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/explanations/dependency_driven_build.rst +0 -0
  35. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/explanations/find.rst +0 -0
  36. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/guides/1.x_to_2.x.md +0 -0
  37. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/guides/custom_app.md +0 -0
  38. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/index.rst +0 -0
  39. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/others/CHANGELOG.md +0 -0
  40. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/others/CONTRIBUTING.md +0 -0
  41. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/references/cli.rst +0 -0
  42. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/references/config_file.rst +0 -0
  43. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/docs/en/references/manifest.rst +0 -0
  44. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/__main__.py +0 -0
  45. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/app.py +0 -0
  46. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/args.py +0 -0
  47. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/autocompletions.py +0 -0
  48. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/constants.py +0 -0
  49. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/finder.py +0 -0
  50. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/junit/__init__.py +0 -0
  51. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/junit/report.py +0 -0
  52. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/junit/utils.py +0 -0
  53. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/log.py +0 -0
  54. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/main.py +0 -0
  55. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/manifest/__init__.py +0 -0
  56. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/manifest/manifest.py +0 -0
  57. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/manifest/soc_header.py +0 -0
  58. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/py.typed +0 -0
  59. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/session_args.py +0 -0
  60. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/vendors/__init__.py +0 -0
  61. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/vendors/pydantic_sources.py +0 -0
  62. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/yaml/__init__.py +0 -0
  63. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/idf_build_apps/yaml/parser.py +0 -0
  64. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/license_header.txt +0 -0
  65. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/conftest.py +0 -0
  66. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_app.py +0 -0
  67. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_args.py +0 -0
  68. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_build.py +0 -0
  69. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_cmd.py +0 -0
  70. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_disable_reasons.py +0 -0
  71. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_finder.py +0 -0
  72. {idf_build_apps-2.12.2 → idf_build_apps-2.12.3}/tests/test_manifest.py +0 -0
@@ -2,6 +2,12 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## v2.12.3 (2025-09-16)
6
+
7
+ ### Fix
8
+
9
+ - app behaves normally in set
10
+
5
11
  ## v2.12.2 (2025-08-27)
6
12
 
7
13
  ### Fix
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: idf-build-apps
3
- Version: 2.12.2
3
+ Version: 2.12.3
4
4
  Summary: Tools for building ESP-IDF related apps.
5
5
  Author-email: Fu Hanxi <fuhanxi@espressif.com>
6
6
  Requires-Python: >=3.7
@@ -8,7 +8,7 @@ Tools for building ESP-IDF related apps.
8
8
  # ruff: noqa: E402
9
9
  # avoid circular imports
10
10
 
11
- __version__ = '2.12.2'
11
+ __version__ = '2.12.3'
12
12
 
13
13
  from .session_args import (
14
14
  SessionArgs,
@@ -386,6 +386,9 @@ class BaseModel(_BaseModel):
386
386
  hash_list = []
387
387
 
388
388
  self_model_dump = self.model_dump()
389
+ for _field in self.__EQ_IGNORE_FIELDS__:
390
+ self_model_dump.pop(_field, None)
391
+
389
392
  for _field in self.__EQ_TUNE_FIELDS__:
390
393
  self_model_dump[_field] = self.__EQ_TUNE_FIELDS__[_field](self_model_dump[_field])
391
394
 
@@ -65,7 +65,7 @@ idf-build-apps = "idf_build_apps:main.main"
65
65
 
66
66
  [tool.commitizen]
67
67
  name = "cz_conventional_commits"
68
- version = "2.12.2"
68
+ version = "2.12.3"
69
69
  tag_format = "v$version"
70
70
  version_files = [
71
71
  "idf_build_apps/__init__.py",
@@ -38,7 +38,7 @@ entry_points = \
38
38
  {'console_scripts': ['idf-build-apps = idf_build_apps:main.main']}
39
39
 
40
40
  setup(name='idf-build-apps',
41
- version='2.12.2',
41
+ version='2.12.3',
42
42
  description='Tools for building ESP-IDF related apps.',
43
43
  author=None,
44
44
  author_email='Fu Hanxi <fuhanxi@espressif.com>',
@@ -8,6 +8,7 @@ from pathlib import (
8
8
  import pytest
9
9
 
10
10
  from idf_build_apps.utils import (
11
+ BaseModel,
11
12
  files_matches_patterns,
12
13
  get_parallel_start_stop,
13
14
  rmdir,
@@ -142,3 +143,19 @@ def test_files_matches_patterns(tmp_path):
142
143
  os.chdir(temp_dir)
143
144
  for f in matched_files:
144
145
  assert files_matches_patterns(f, abs_pat)
146
+
147
+
148
+ def test_base_model_hashable():
149
+ class Foo(BaseModel):
150
+ foo: str
151
+ bar: str
152
+
153
+ __EQ_IGNORE_FIELDS__ = ['bar']
154
+
155
+ a = Foo(foo='foo', bar='bar')
156
+ b = Foo(foo='foo', bar='rab')
157
+
158
+ assert a == b
159
+ assert hash(a) == hash(b)
160
+ s = {a, b}
161
+ assert len(s) == 1
File without changes