idf-build-apps 2.5.0rc0__py3-none-any.whl → 2.5.0rc1__py3-none-any.whl

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.
@@ -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.5.0rc0'
11
+ __version__ = '2.5.0rc1'
12
12
 
13
13
  from .session_args import (
14
14
  SessionArgs,
idf_build_apps/app.py CHANGED
@@ -74,7 +74,6 @@ class App(BaseModel):
74
74
  NAME_PLACEHOLDER: t.ClassVar[str] = '@n' # replace it with self.name
75
75
  FULL_NAME_PLACEHOLDER: t.ClassVar[str] = '@f' # replace it with escaped self.app_dir
76
76
  IDF_VERSION_PLACEHOLDER: t.ClassVar[str] = '@v' # replace it with the IDF version
77
- PARALLEL_INDEX_PLACEHOLDER: t.ClassVar[str] = '@p' # replace it with the parallel index
78
77
  INDEX_PLACEHOLDER: t.ClassVar[str] = '@i' # replace it with the build index (while build_apps)
79
78
 
80
79
  SDKCONFIG_LINE_REGEX: t.ClassVar[t.Pattern] = re.compile(r'^([^=]+)=\"?([^\"\n]*)\"?\n*$')
@@ -115,7 +114,6 @@ class App(BaseModel):
115
114
  copy_sdkconfig: bool = False
116
115
 
117
116
  # build_apps() related
118
- parallel_index: t.Optional[int] = None # used for expand
119
117
  index: t.Optional[int] = None
120
118
 
121
119
  # build status related
@@ -244,8 +242,6 @@ class App(BaseModel):
244
242
 
245
243
  if self.index is not None:
246
244
  path = path.replace(self.INDEX_PLACEHOLDER, str(self.index))
247
- if self.parallel_index:
248
- path = path.replace(self.PARALLEL_INDEX_PLACEHOLDER, str(self.parallel_index))
249
245
  path = path.replace(
250
246
  self.IDF_VERSION_PLACEHOLDER, f'{IDF_VERSION_MAJOR}_{IDF_VERSION_MINOR}_{IDF_VERSION_PATCH}'
251
247
  )
idf_build_apps/args.py CHANGED
@@ -760,22 +760,24 @@ class BuildArguments(FindBuildArguments):
760
760
  default=None,
761
761
  metadata=asdict(
762
762
  FieldMetadata(
763
- description='[INTERNAL CI USE] record size json filepath of the built apps to the specified file. '
763
+ description='Record size json filepath of the built apps to the specified file. '
764
764
  'Each line is a json string. Can expand placeholders @p',
765
765
  )
766
766
  ),
767
767
  )
768
+ _collect_size_info: t.Optional[str] = field(init=False, repr=False, default=None)
768
769
  collect_app_info: t.Optional[str] = field(
769
770
  default=None,
770
771
  metadata=asdict(
771
772
  FieldMetadata(
772
- description='[INTERNAL CI USE] record serialized app model of the built apps to the specified file. '
773
+ description='Record serialized app model of the built apps to the specified file. '
773
774
  'Each line is a json string. Can expand placeholders @p',
774
775
  )
775
776
  ),
776
777
  )
778
+ _collect_app_info: t.Optional[str] = field(init=False, repr=False, default=None)
777
779
  ignore_warning_str: InitVar[t.Optional[t.List[str]]] = _Field.UNSET
778
- ignore_warning_strings: t.Optional[t.List[str]] = field(
780
+ ignore_warning_strs: t.Optional[t.List[str]] = field(
779
781
  default=None,
780
782
  metadata=asdict(
781
783
  FieldMetadata(
@@ -816,6 +818,10 @@ class BuildArguments(FindBuildArguments):
816
818
  )
817
819
  ),
818
820
  )
821
+ _junitxml: t.Optional[str] = field(init=False, repr=False, default=None)
822
+
823
+ # used for expanding placeholders
824
+ PARALLEL_INDEX_PLACEHOLDER: t.ClassVar[str] = '@p' # replace it with the parallel index
819
825
 
820
826
  def __post_init__( # type: ignore
821
827
  self,
@@ -841,20 +847,71 @@ class BuildArguments(FindBuildArguments):
841
847
  config_rules_str=config_rules_str,
842
848
  )
843
849
 
844
- self.set_deprecated_field('ignore_warning_strings', 'ignore_warning_str', ignore_warning_str)
850
+ self.set_deprecated_field('ignore_warning_strs', 'ignore_warning_str', ignore_warning_str)
845
851
  self.set_deprecated_field('ignore_warning_files', 'ignore_warning_file', ignore_warning_file)
846
852
 
847
- self.ignore_warning_strings = to_list(self.ignore_warning_strings) or []
853
+ self.ignore_warning_strs = to_list(self.ignore_warning_strs) or []
848
854
 
849
855
  ignore_warnings_regexes = []
850
- if self.ignore_warning_strings:
851
- for s in self.ignore_warning_strings:
856
+ if self.ignore_warning_strs:
857
+ for s in self.ignore_warning_strs:
852
858
  ignore_warnings_regexes.append(re.compile(s))
853
859
  if self.ignore_warning_files:
854
860
  for s in self.ignore_warning_files:
855
861
  ignore_warnings_regexes.append(re.compile(s.strip()))
856
862
  App.IGNORE_WARNS_REGEXES = ignore_warnings_regexes
857
863
 
864
+ if not isinstance(BuildArguments.collect_size_info, property):
865
+ self._collect_size_info = self.collect_size_info
866
+ BuildArguments.collect_size_info = property( # type: ignore
867
+ BuildArguments._get_collect_size_info,
868
+ BuildArguments._set_collect_size_info,
869
+ )
870
+
871
+ if not isinstance(BuildArguments.collect_app_info, property):
872
+ self._collect_app_info = self.collect_app_info
873
+ BuildArguments.collect_app_info = property( # type: ignore
874
+ BuildArguments._get_collect_app_info,
875
+ BuildArguments._set_collect_app_info,
876
+ )
877
+
878
+ if not isinstance(BuildArguments.junitxml, property):
879
+ self._junitxml = self.junitxml
880
+ BuildArguments.junitxml = property( # type: ignore
881
+ BuildArguments._get_junitxml,
882
+ BuildArguments._set_junitxml,
883
+ )
884
+
885
+ def _get_collect_size_info(self) -> t.Optional[str]:
886
+ return (
887
+ self._collect_size_info.replace(self.PARALLEL_INDEX_PLACEHOLDER, str(self.parallel_index))
888
+ if self._collect_size_info
889
+ else None
890
+ )
891
+
892
+ def _set_collect_size_info(self, k: str) -> None:
893
+ self._collect_size_info = k
894
+
895
+ def _get_collect_app_info(self) -> t.Optional[str]:
896
+ return (
897
+ self._collect_app_info.replace(self.PARALLEL_INDEX_PLACEHOLDER, str(self.parallel_index))
898
+ if self._collect_app_info
899
+ else None
900
+ )
901
+
902
+ def _set_collect_app_info(self, k: str) -> None:
903
+ self._collect_app_info = k
904
+
905
+ def _get_junitxml(self) -> t.Optional[str]:
906
+ return (
907
+ self._junitxml.replace(self.PARALLEL_INDEX_PLACEHOLDER, str(self.parallel_index))
908
+ if self._junitxml
909
+ else None
910
+ )
911
+
912
+ def _set_junitxml(self, k: str) -> None:
913
+ self._junitxml = k
914
+
858
915
 
859
916
  @dataclass
860
917
  class DumpManifestShaArguments(GlobalArguments):
idf_build_apps/main.py CHANGED
@@ -125,9 +125,6 @@ def build_apps(
125
125
  start, stop = get_parallel_start_stop(len(apps), build_arguments.parallel_count, build_arguments.parallel_index)
126
126
  LOGGER.info('Total %s apps. running build for app %s-%s', len(apps), start, stop)
127
127
 
128
- for app in apps[start - 1 : stop]: # we use 1-based
129
- app.parallel_index = build_arguments.parallel_index
130
-
131
128
  # cleanup collect files if exists at this early-stage
132
129
  for f in (build_arguments.collect_app_info, build_arguments.collect_size_info, build_arguments.junitxml):
133
130
  if f and os.path.isfile(f):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: idf-build-apps
3
- Version: 2.5.0rc0
3
+ Version: 2.5.0rc1
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
@@ -1,13 +1,13 @@
1
- idf_build_apps/__init__.py,sha256=RPw7wTPPVr_WwSjWSYSAAdmKxRoFeZfkmvSrEE8cLcQ,653
1
+ idf_build_apps/__init__.py,sha256=lNmiLMTMLPCSsopP2KyWGdNwChp4yCUJflvK8NqTVlE,653
2
2
  idf_build_apps/__main__.py,sha256=8E-5xHm2MlRun0L88XJleNh5U50dpE0Q1nK5KqomA7I,182
3
- idf_build_apps/app.py,sha256=T4quqTJ1F40QyAfr5aNZcPpvRBJOfc10hXCk1RMG8fo,37637
4
- idf_build_apps/args.py,sha256=VSnLDwFmgSNDzldzqdw0frd6gmCwhsd6ri76V296x00,35757
3
+ idf_build_apps/app.py,sha256=F-MKOsaz7cJ0H2wsEE4gpO4kkkEdkyFmIZBHDoM2qgs,37359
4
+ idf_build_apps/args.py,sha256=n15pTDm2Xuq5R39JVjOwICiHlLdLjisLUItYahWVRsk,37983
5
5
  idf_build_apps/autocompletions.py,sha256=g-bx0pzXoFKI0VQqftkHyGVWN6MLjuFOdozeuAf45yo,2138
6
6
  idf_build_apps/config.py,sha256=TvJ-puAhR7r7SYdAWsK5XdOTAVuw5k8xiqO2jRms_ZA,3586
7
7
  idf_build_apps/constants.py,sha256=mOHb74qX8WsA4sm-NoSFpLy4HzjIsc-ApUN6XGtrXXM,3904
8
8
  idf_build_apps/finder.py,sha256=evkHtNIhCB3wgCMGPxOC34v-_B4mtZ1VBiZ14IRVuFw,5727
9
9
  idf_build_apps/log.py,sha256=pyvT7N4MWzGjIXph5mThQCGBiSt53RNPW0WrFfLr0Kw,2650
10
- idf_build_apps/main.py,sha256=xw6lmVmAKD1f7aHb5c7qQbAfqmHfh_t_q57Q_z6htLs,15331
10
+ idf_build_apps/main.py,sha256=HYkUkgTFJmsbW01_yBFOMd1iZorzVL1LVKHK90B9zok,15213
11
11
  idf_build_apps/session_args.py,sha256=2WDTy40IFAc0KQ57HaeBcYj_k10eUXRKkDOWLrFCaHY,2985
12
12
  idf_build_apps/utils.py,sha256=Cibdr7oHhcnl9uxJNfPLksp2nfPCPW0efAwDhX4dTmw,10099
13
13
  idf_build_apps/junit/__init__.py,sha256=IxvdaS6eSXp7kZxRuXqyZyGxuA_A1nOW1jF1HMi8Gns,231
@@ -19,8 +19,8 @@ idf_build_apps/manifest/manifest.py,sha256=c9ooxNe3SOEndsVtJ-xxJNWPF6YlS-LpX_5wm
19
19
  idf_build_apps/manifest/soc_header.py,sha256=PzJ37xFspt5f0AXWvAFNA_avHZA9fMXHBrwDYLi3qEI,4344
20
20
  idf_build_apps/yaml/__init__.py,sha256=W-3z5no07RQ6eYKGyOAPA8Z2CLiMPob8DD91I4URjrA,162
21
21
  idf_build_apps/yaml/parser.py,sha256=Y2OyB4g1DCC7C7jrvpIyZV9lgeCB_XvuB75iGmqiTaM,2093
22
- idf_build_apps-2.5.0rc0.dist-info/entry_points.txt,sha256=3pVUirUEsb6jsDRikkQWNUt4hqLK2ci1HvW_Vf8b6uE,59
23
- idf_build_apps-2.5.0rc0.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
24
- idf_build_apps-2.5.0rc0.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
25
- idf_build_apps-2.5.0rc0.dist-info/METADATA,sha256=ghIKlVQjTRflEhKdnQW8LC_bSYhdYuxlIfzN153oR8c,4580
26
- idf_build_apps-2.5.0rc0.dist-info/RECORD,,
22
+ idf_build_apps-2.5.0rc1.dist-info/entry_points.txt,sha256=3pVUirUEsb6jsDRikkQWNUt4hqLK2ci1HvW_Vf8b6uE,59
23
+ idf_build_apps-2.5.0rc1.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
24
+ idf_build_apps-2.5.0rc1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
25
+ idf_build_apps-2.5.0rc1.dist-info/METADATA,sha256=hMh9EC42dcm2mV0Qmq2Vz2TXu-8pZbGxDs2RksriOII,4580
26
+ idf_build_apps-2.5.0rc1.dist-info/RECORD,,