ScriptCollection 4.0.21__py3-none-any.whl → 4.0.22__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.
- ScriptCollection/AnionBuildPlatform.py +24 -5
- ScriptCollection/Executables.py +29 -8
- ScriptCollection/ScriptCollectionCore.py +1 -1
- ScriptCollection/TFCPS/TFCPS_CodeUnit_BuildCodeUnit.py +1 -0
- ScriptCollection/TFCPS/TFCPS_CodeUnit_BuildCodeUnits.py +19 -2
- ScriptCollection/TFCPS/TFCPS_MergeToStable.py +7 -6
- ScriptCollection/TFCPS/TFCPS_Tools_General.py +26 -0
- {scriptcollection-4.0.21.dist-info → scriptcollection-4.0.22.dist-info}/METADATA +1 -1
- {scriptcollection-4.0.21.dist-info → scriptcollection-4.0.22.dist-info}/RECORD +12 -12
- {scriptcollection-4.0.21.dist-info → scriptcollection-4.0.22.dist-info}/WHEEL +0 -0
- {scriptcollection-4.0.21.dist-info → scriptcollection-4.0.22.dist-info}/entry_points.txt +0 -0
- {scriptcollection-4.0.21.dist-info → scriptcollection-4.0.22.dist-info}/top_level.txt +0 -0
@@ -10,18 +10,21 @@ class AnionBuildPlatformConfiguration:
|
|
10
10
|
additional_arguments_file:str
|
11
11
|
verbosity:LogLevel
|
12
12
|
source_branch:str
|
13
|
+
common_remote_name:str
|
13
14
|
|
14
15
|
def __init__(self,
|
15
16
|
build_repositories_folder:str,
|
16
17
|
project_to_build:str,
|
17
18
|
additional_arguments_file:str,
|
18
19
|
verbosity:LogLevel,
|
19
|
-
source_branch:str
|
20
|
+
source_branch:str,
|
21
|
+
common_remote_name:str):
|
20
22
|
self.build_repositories_folder=build_repositories_folder
|
21
23
|
self.project_to_build=project_to_build
|
22
24
|
self.additional_arguments_file=additional_arguments_file
|
23
25
|
self.verbosity=verbosity
|
24
26
|
self.source_branch=source_branch
|
27
|
+
self.common_remote_name=common_remote_name
|
25
28
|
|
26
29
|
class AnionBuildPlatform:
|
27
30
|
|
@@ -34,16 +37,27 @@ class AnionBuildPlatform:
|
|
34
37
|
self.__sc.log.loglevel=configuration.verbosity
|
35
38
|
|
36
39
|
def run(self) -> None:
|
40
|
+
# Checkout source branch
|
37
41
|
build_repo_folder:str=os.path.join(self.__configuration.build_repositories_folder,self.__configuration.project_to_build+"Build")
|
38
42
|
self.__sc.assert_is_git_repository(build_repo_folder)
|
43
|
+
repository:str=os.path.join(self.__configuration,self.__configuration.project_to_build+"Build","Submodules",self.__configuration.project_to_build)
|
44
|
+
self.__sc.assert_no_uncommitted_changes(build_repo_folder)
|
45
|
+
self.__sc.git_checkout(repository,self.__configuration.source_branch)
|
46
|
+
|
47
|
+
# Pull changes from remote
|
48
|
+
self.__sc.git_fetch(repository)
|
49
|
+
self.__sc.git_merge(repository,self.__configuration.common_remote_name+"/"+self.__configuration.source_branch,self.__configuration.source_branch,fastforward=True)#TODO check if is anchestor and throw exception if nor
|
50
|
+
self.__sc.git_commit(build_repo_folder,"Updated changes")
|
51
|
+
|
52
|
+
#Do release
|
39
53
|
scripts_folder:str=os.path.join(build_repo_folder,"Scripts","CreateRelease")
|
40
|
-
self.__sc.run_program("python",
|
41
|
-
self.__sc.run_program("python","MergeToStable",scripts_folder)
|
54
|
+
self.__sc.run_program("python","MergeToMain.py",scripts_folder)
|
55
|
+
self.__sc.run_program("python","MergeToStable.py",scripts_folder)
|
42
56
|
|
43
57
|
class TFCPS_AnionBuildPlatform_CLI:
|
44
58
|
|
45
59
|
@staticmethod
|
46
|
-
def get_with_overwritable_defaults(default_project_to_build:str=None,default_loglevel:LogLevel=None,default_additionalargumentsfile:str=None,default_build_repositories_folder:str=None,default_source_branch:str=None)->AnionBuildPlatform:
|
60
|
+
def get_with_overwritable_defaults(default_project_to_build:str=None,default_loglevel:LogLevel=None,default_additionalargumentsfile:str=None,default_build_repositories_folder:str=None,default_source_branch:str=None,default_remote_name:str=None)->AnionBuildPlatform:
|
47
61
|
parser = argparse.ArgumentParser()
|
48
62
|
verbosity_values = ", ".join(f"{lvl.value}={lvl.name}" for lvl in LogLevel)
|
49
63
|
parser.add_argument('-r', '--buildrepositoriesfolder', required=False,default=None)
|
@@ -51,6 +65,7 @@ class TFCPS_AnionBuildPlatform_CLI:
|
|
51
65
|
parser.add_argument('-a', '--additionalargumentsfile', required=False, default=None)
|
52
66
|
parser.add_argument('-v', '--verbosity', required=False, default=3, help=f"Sets the loglevel. Possible values: {verbosity_values}")
|
53
67
|
parser.add_argument('-s', '--sourcebranch', required=False, default="other/next-release")
|
68
|
+
parser.add_argument('-r', '--defaultremotename', required=False, default="origin")
|
54
69
|
args=parser.parse_args()
|
55
70
|
|
56
71
|
if args.projecttobuild is not None:
|
@@ -78,6 +93,10 @@ class TFCPS_AnionBuildPlatform_CLI:
|
|
78
93
|
default_source_branch=args.sourcebranch
|
79
94
|
GeneralUtilities.assert_not_null(default_build_repositories_folder,"sourcebranch is not set")
|
80
95
|
|
81
|
-
|
96
|
+
if args.defaultremotename is not None:
|
97
|
+
default_remote_name=args.defaultremotename
|
98
|
+
GeneralUtilities.assert_not_null(default_remote_name,"defaultremotename is not set")
|
99
|
+
|
100
|
+
config:AnionBuildPlatformConfiguration=AnionBuildPlatformConfiguration(default_build_repositories_folder,default_project_to_build,default_additionalargumentsfile,default_loglevel,default_source_branch,default_remote_name)
|
82
101
|
tFCPS_MergeToMain:AnionBuildPlatform=AnionBuildPlatform(config)
|
83
102
|
return tFCPS_MergeToMain
|
ScriptCollection/Executables.py
CHANGED
@@ -3,10 +3,8 @@ import os
|
|
3
3
|
import argparse
|
4
4
|
import time
|
5
5
|
import traceback
|
6
|
-
#import sys
|
7
6
|
import shutil
|
8
7
|
import keyboard
|
9
|
-
from .AnionBuildPlatform import AnionBuildPlatform, TFCPS_AnionBuildPlatform_CLI
|
10
8
|
from .ScriptCollectionCore import ScriptCollectionCore
|
11
9
|
from .GeneralUtilities import GeneralUtilities
|
12
10
|
from .SCLog import LogLevel
|
@@ -263,8 +261,8 @@ def BuildCodeUnit() -> int:
|
|
263
261
|
parser.add_argument('--codeunitfolder', required=False, default=".")
|
264
262
|
verbosity_values = ", ".join(f"{lvl.value}={lvl.name}" for lvl in LogLevel)
|
265
263
|
parser.add_argument('-v', '--verbosity', required=False, default=3, help=f"Sets the loglevel. Possible values: {verbosity_values}")
|
266
|
-
parser.add_argument('e','--targetenvironment', required=False, default="QualityCheck")
|
267
|
-
parser.add_argument('a','--additionalargumentsfile', required=False, default=None)
|
264
|
+
parser.add_argument('-e','--targetenvironment', required=False, default="QualityCheck")
|
265
|
+
parser.add_argument('-a','--additionalargumentsfile', required=False, default=None)
|
268
266
|
parser.add_argument('--assume_dependent_codeunits_are_already_built', type=GeneralUtilities.string_to_boolean, const=True, default=False, nargs='?')
|
269
267
|
#args = parser.parse_args()
|
270
268
|
#t=TasksForCommonProjectStructure(args)
|
@@ -279,8 +277,8 @@ def BuildCodeUnits() -> int:
|
|
279
277
|
parser.add_argument('--repositoryfolder', required=False, default=".")
|
280
278
|
verbosity_values = ", ".join(f"{lvl.value}={lvl.name}" for lvl in LogLevel)
|
281
279
|
parser.add_argument('-v', '--verbosity', required=False, default=3, help=f"Sets the loglevel. Possible values: {verbosity_values}")
|
282
|
-
parser.add_argument('e','--targetenvironment', required=False, default="QualityCheck")
|
283
|
-
parser.add_argument('a','--additionalargumentsfile', required=False, default=None)
|
280
|
+
parser.add_argument('-e','--targetenvironment', required=False, default="QualityCheck")
|
281
|
+
parser.add_argument('-a','--additionalargumentsfile', required=False, default=None)
|
284
282
|
parser.add_argument("-c",'--nocache', required=False, default=False, action='store_true')
|
285
283
|
parser.add_argument('--ispremerge', required=False, default=False, action='store_true')
|
286
284
|
|
@@ -817,22 +815,45 @@ def LOC() -> int:
|
|
817
815
|
parser.add_argument('-d', '--do_not_add_default_pattern', action='store_true', default=False)
|
818
816
|
parser.add_argument('-v', '--verbose', action='store_true', default=False)
|
819
817
|
args = parser.parse_args()
|
818
|
+
|
820
819
|
folder: str = None
|
821
820
|
if os.path.isabs(args.repository):
|
822
821
|
folder = args.repository
|
823
822
|
else:
|
824
823
|
folder = GeneralUtilities.resolve_relative_path(args.repository, os.getcwd())
|
825
824
|
excluded_patterns: list[str] = []
|
825
|
+
|
826
826
|
if not args.do_not_add_default_pattern:
|
827
827
|
excluded_patterns = excluded_patterns + sc.default_excluded_patterns_for_loc
|
828
828
|
if args.excluded_pattern is not None:
|
829
829
|
excluded_patterns = excluded_patterns + args.excluded_pattern
|
830
|
+
|
830
831
|
if args.verbose:
|
831
832
|
sc.log.loglevel=LogLevel.Debug
|
833
|
+
else:
|
834
|
+
sc.log.loglevel=LogLevel.Information
|
835
|
+
|
832
836
|
GeneralUtilities.write_message_to_stdout(str(sc.get_lines_of_code(folder, excluded_patterns)))
|
833
837
|
return 0
|
834
838
|
|
835
839
|
def CreateRelease()->int:
|
836
|
-
|
837
|
-
|
840
|
+
sc = ScriptCollectionCore()
|
841
|
+
parser = argparse.ArgumentParser(description="Creates a release in a git-repository which uses the anion-build-platform.")
|
842
|
+
parser.add_argument('-b', '--buildrepository', required=True)
|
843
|
+
parser.add_argument('-v', '--verbose', action='store_true', default=False)
|
844
|
+
args = parser.parse_args()
|
845
|
+
|
846
|
+
folder: str = None
|
847
|
+
if os.path.isabs(args.buildrepository):
|
848
|
+
folder = args.buildrepository
|
849
|
+
else:
|
850
|
+
folder = GeneralUtilities.resolve_relative_path(args.repository, os.getcwd())
|
851
|
+
|
852
|
+
if args.verbose:
|
853
|
+
sc.log.loglevel=LogLevel.Debug
|
854
|
+
else:
|
855
|
+
sc.log.loglevel=LogLevel.Information
|
856
|
+
|
857
|
+
sc.run_program("python","CreateRelease",os.path.join(folder,"Scripts","CreateRelease"))
|
858
|
+
|
838
859
|
return 0
|
@@ -101,6 +101,7 @@ class TFCPS_CodeUnit_BuildCodeUnit:
|
|
101
101
|
# TODO validate artifactsinformation_file against xsd
|
102
102
|
self.sc.log.log(f"Finished building codeunit {self.codeunit_name} without errors.")
|
103
103
|
|
104
|
+
|
104
105
|
@GeneralUtilities.check_arguments
|
105
106
|
def verify_artifact_exists(self, codeunit_folder: str, artifact_name_regexes: dict[str, bool]) -> None:
|
106
107
|
codeunit_name: str = os.path.basename(codeunit_folder)
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import os
|
2
|
+
from datetime import datetime, timedelta
|
2
3
|
from ..GeneralUtilities import GeneralUtilities
|
3
4
|
from ..ScriptCollectionCore import ScriptCollectionCore
|
4
5
|
from ..SCLog import LogLevel
|
@@ -31,8 +32,12 @@ class TFCPS_CodeUnit_BuildCodeUnits:
|
|
31
32
|
def build_codeunits(self) -> None:
|
32
33
|
self.sc.log.log(GeneralUtilities.get_line())
|
33
34
|
self.sc.log.log(f"Start building codeunits. (Target environment-type: {self.target_environment_type})")
|
35
|
+
|
36
|
+
#check if changelog exists
|
34
37
|
changelog_file=os.path.join(self.repository,"Other","Resources","Changelog",f"v{self.tFCPS_Other.get_version_of_project(self.repository)}.md")
|
35
38
|
GeneralUtilities.assert_file_exists(changelog_file,f"Changelogfile \"{changelog_file}\" does not exist. Try to create it for example using \"sccreatechangelogentry -m ...\".")
|
39
|
+
|
40
|
+
#run prepare-script
|
36
41
|
if os.path.isfile( os.path.join(self.repository,"Other","Scripts","PrepareBuildCodeunits.py")):
|
37
42
|
arguments:str=f"--targetenvironmenttype {self.target_environment_type} --additionalargumentsfile {self.additionalargumentsfile} --verbosity {int(self.sc.log.loglevel)}"
|
38
43
|
if not self.__use_cache:
|
@@ -41,9 +46,22 @@ class TFCPS_CodeUnit_BuildCodeUnits:
|
|
41
46
|
self.sc.log.log("No-cache-option can not be applied because there are uncommited changes in the repository.",LogLevel.Warning)
|
42
47
|
else:
|
43
48
|
self.sc.run_program("git","clean -dfx",self.repository)
|
49
|
+
|
44
50
|
self.sc.log.log("Prepare build codeunits...")
|
45
51
|
self.sc.run_program("python", f"PrepareBuildCodeunits.py {arguments}", os.path.join(self.repository,"Other","Scripts"),print_live_output=True)
|
46
|
-
|
52
|
+
|
53
|
+
#mark current version as supported
|
54
|
+
now = GeneralUtilities.get_now()
|
55
|
+
project_version:str=self.tFCPS_Other.get_version_of_project(self.repository)
|
56
|
+
if not self.tFCPS_Other.suport_information_exists(self.repository, project_version):
|
57
|
+
amount_of_years_for_support:int=1
|
58
|
+
support_time = timedelta(days=365*amount_of_years_for_support+30*3+1)
|
59
|
+
until = now + support_time
|
60
|
+
until_day = datetime(until.year, until.month, until.day, 0, 0, 0)
|
61
|
+
from_day = datetime(now.year, now.month, now.day, 0, 0, 0)
|
62
|
+
self.tFCPS_Other.mark_current_version_as_supported(self.repository,project_version,from_day,until_day)
|
63
|
+
|
64
|
+
codeunits:list[str]=self.tFCPS_Other.get_codeunits(self.repository)
|
47
65
|
self.sc.log.log("Codeunits will be built in the following order:")
|
48
66
|
for codeunit_name in codeunits:
|
49
67
|
self.sc.log.log(" - "+codeunit_name)
|
@@ -55,7 +73,6 @@ class TFCPS_CodeUnit_BuildCodeUnits:
|
|
55
73
|
self.sc.log.log("Finished building codeunits.")
|
56
74
|
self.sc.log.log(GeneralUtilities.get_line())
|
57
75
|
|
58
|
-
|
59
76
|
@GeneralUtilities.check_arguments
|
60
77
|
def use_cache(self) -> bool:
|
61
78
|
return self.__use_cache
|
@@ -83,11 +83,7 @@ class TFCPS_MergeToStable:
|
|
83
83
|
except Exception:
|
84
84
|
self.sc.git_undo_all_changes(self.createRelease_configuration.repository)
|
85
85
|
raise
|
86
|
-
|
87
|
-
eov_enabled=False
|
88
|
-
if eov_enabled:
|
89
|
-
self.sc.log.log("Remove outdated versions...")
|
90
|
-
self.__remove_outdated_version()
|
86
|
+
|
91
87
|
|
92
88
|
self.sc.log.log("Release artifacts...")
|
93
89
|
for codeunit in self.tFCPS_Tools_General.get_codeunits(self.createRelease_configuration.repository):
|
@@ -110,7 +106,7 @@ class TFCPS_MergeToStable:
|
|
110
106
|
else:
|
111
107
|
self.sc.log.log(f"Codeunit {codeunit} does not have artifacts to push. (Scriptfile \"{push_script}\" does not exist.)",LogLevel.Debug)
|
112
108
|
|
113
|
-
#
|
109
|
+
# update codeunit-reference
|
114
110
|
self.sc.log.log(f"Release artifacts of codeunit {codeunit}...")
|
115
111
|
reference_folder:str=os.path.join(self.createRelease_configuration.reference_repo,"ReferenceContent")
|
116
112
|
repository:str=self.createRelease_configuration.repository
|
@@ -121,6 +117,8 @@ class TFCPS_MergeToStable:
|
|
121
117
|
codeunit_version=self.tFCPS_Tools_General.get_version_of_codeunit(os.path.join(repository,codeunit,f"{codeunit}.codeunit.xml"))
|
122
118
|
self.__export_codeunit_reference_content_to_reference_repository(f"v{project_version}", False, reference_folder, repository, codeunit, projectname, codeunit_version, public_repository_url, f"v{project_version}")
|
123
119
|
self.__export_codeunit_reference_content_to_reference_repository("Latest", True, reference_folder, repository, codeunit, projectname, codeunit_version, public_repository_url, main_branch_name)
|
120
|
+
|
121
|
+
# Generate reference
|
124
122
|
self.__generate_entire_reference(projectname, project_version, reference_folder)
|
125
123
|
|
126
124
|
self.sc.log.log("Finishing merging to stable...")
|
@@ -146,6 +144,9 @@ class TFCPS_MergeToStable:
|
|
146
144
|
|
147
145
|
@GeneralUtilities.check_arguments
|
148
146
|
def __generate_entire_reference(self, projectname: str, project_version: str, reference_folder: str) -> None:
|
147
|
+
self.sc.log.log("Remove outdated versions...")
|
148
|
+
self.__remove_outdated_version()
|
149
|
+
self.sc.log.log("Generate reference...")
|
149
150
|
all_available_version_identifier_folders_of_reference: list[str] = list(folder for folder in GeneralUtilities.get_direct_folders_of_folder(reference_folder))
|
150
151
|
all_available_version_identifier_folders_of_reference = sorted(all_available_version_identifier_folders_of_reference, key=cmp_to_key(TFCPS_Tools_General.sort_reference_folder))
|
151
152
|
reference_versions_html_lines = []
|
@@ -1061,3 +1061,29 @@ class TFCPS_Tools_General:
|
|
1061
1061
|
def push_nuget_build_artifact(self, push_script_file: str, repository_folder_name: str, codeunitname: str, registry_address: str,api_key: str):
|
1062
1062
|
build_artifact_folder = GeneralUtilities.resolve_relative_path(f"../../Submodules/{repository_folder_name}/{codeunitname}/Other/Artifacts/BuildResult_NuGet", os.path.dirname(push_script_file))
|
1063
1063
|
self.__sc.push_nuget_build_artifact(self.__sc.find_file_by_extension(build_artifact_folder, "nupkg"), registry_address, api_key)
|
1064
|
+
|
1065
|
+
@GeneralUtilities.check_arguments
|
1066
|
+
def suport_information_exists(self, repository_folder: str, version_of_product: str) -> bool:
|
1067
|
+
self.__sc.assert_is_git_repository(repository_folder)
|
1068
|
+
folder = os.path.join(repository_folder, "Other", "Resources", "Support")
|
1069
|
+
file = os.path.join(folder, "InformationAboutSupportedVersions.csv")
|
1070
|
+
if not os.path.isfile(file):
|
1071
|
+
return False
|
1072
|
+
entries = GeneralUtilities.read_csv_file(file, True)
|
1073
|
+
for entry in entries:
|
1074
|
+
if entry[0] == version_of_product:
|
1075
|
+
return True
|
1076
|
+
return False
|
1077
|
+
|
1078
|
+
@GeneralUtilities.check_arguments
|
1079
|
+
def mark_current_version_as_supported(self, repository_folder: str, version_of_product: str, supported_from: datetime, supported_until: datetime):
|
1080
|
+
self.__sc.assert_is_git_repository(repository_folder)
|
1081
|
+
if self.suport_information_exists(repository_folder, version_of_product):
|
1082
|
+
raise ValueError(f"Version-support for v{version_of_product} already defined.")
|
1083
|
+
folder = os.path.join(repository_folder, "Other", "Resources", "Support")
|
1084
|
+
GeneralUtilities.ensure_directory_exists(folder)
|
1085
|
+
file = os.path.join(folder, "InformationAboutSupportedVersions.csv")
|
1086
|
+
if not os.path.isfile(file):
|
1087
|
+
GeneralUtilities.ensure_file_exists(file)
|
1088
|
+
GeneralUtilities.append_line_to_file(file, "Version;SupportBegin;SupportEnd")
|
1089
|
+
GeneralUtilities.append_line_to_file(file, f"{version_of_product};{GeneralUtilities.datetime_to_string(supported_from)};{GeneralUtilities.datetime_to_string(supported_until)}")
|
@@ -1,6 +1,6 @@
|
|
1
|
-
ScriptCollection/AnionBuildPlatform.py,sha256=
|
1
|
+
ScriptCollection/AnionBuildPlatform.py,sha256=y_c2MxFeRAlXm49I1etG3MUmZ8G2jSRJC-4bYNvriJc,5375
|
2
2
|
ScriptCollection/CertificateUpdater.py,sha256=GXPxmYaW-ufOqsiP9kUYdtI6eNg1-GzrrCqsZdwW_HY,9199
|
3
|
-
ScriptCollection/Executables.py,sha256=
|
3
|
+
ScriptCollection/Executables.py,sha256=AXdlKf66zdTFmBJXtwl2zzE0DdQ7BMNRNFAHNQpAP7E,41252
|
4
4
|
ScriptCollection/GeneralUtilities.py,sha256=9Xd9aKPj3TkpVtdHXzFMILrRoXAfJCph69XRTstdsBo,49280
|
5
5
|
ScriptCollection/ImageUpdater.py,sha256=qTe3yoqzQJY7LZdXBbjbWvrsSQaeHy1VwmOxaRzU2ig,29305
|
6
6
|
ScriptCollection/ProcessesRunner.py,sha256=3mu4ZxzZleQo0Op6o9EYTCFiJfb6kx5ov2YfZfT89mU,1395
|
@@ -9,18 +9,18 @@ ScriptCollection/ProgramRunnerEpew.py,sha256=TJdDx9zIMSiCaXh8X-ekrMlbXfGtmd0Mmyx
|
|
9
9
|
ScriptCollection/ProgramRunnerMock.py,sha256=uTu-aFle1W_oKjeQEmuPsFPQpvo0kRf2FrRjAPIwT5Y,37
|
10
10
|
ScriptCollection/ProgramRunnerPopen.py,sha256=BPY7-ZMIlqT7JOKz8qlB5c0laF2Js-ijzqk09GxZC48,3821
|
11
11
|
ScriptCollection/SCLog.py,sha256=dxGOI4E9lG5v9jk_LajXCkM5nghliCDV8YB8Ihn160s,4541
|
12
|
-
ScriptCollection/ScriptCollectionCore.py,sha256=
|
12
|
+
ScriptCollection/ScriptCollectionCore.py,sha256=bhgSfV4wdtW-EAq4By1h0NMu4GbEGHG-LaKgU3rkNNg,140617
|
13
13
|
ScriptCollection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
14
14
|
ScriptCollection/TFCPS/TFCPS_CodeUnitSpecific_Base.py,sha256=Cj89Xhzf5CRSDVH_-0JachQMsPHfjkz8jtRi_BpiGvY,25979
|
15
|
-
ScriptCollection/TFCPS/TFCPS_CodeUnit_BuildCodeUnit.py,sha256=
|
16
|
-
ScriptCollection/TFCPS/TFCPS_CodeUnit_BuildCodeUnits.py,sha256=
|
15
|
+
ScriptCollection/TFCPS/TFCPS_CodeUnit_BuildCodeUnit.py,sha256=4rYKgTAga11NiDx8YUqz3K_Q4eX_n3kC6lvNdXEa24s,7389
|
16
|
+
ScriptCollection/TFCPS/TFCPS_CodeUnit_BuildCodeUnits.py,sha256=DGaQk85r8P5ANDhga9pEcTiJSRpZrDykfUOFhJR-bYY,5551
|
17
17
|
ScriptCollection/TFCPS/TFCPS_CreateRelease.py,sha256=d8L1WR2Fx-Ps-5So5fbR_fwTrSKosgzwXHu_wJUtyc8,6510
|
18
18
|
ScriptCollection/TFCPS/TFCPS_Generic.py,sha256=O-0guM_LJCcZmPZJhMgTvXD2RXUJEBWWv6Bt6hDFhvM,1943
|
19
19
|
ScriptCollection/TFCPS/TFCPS_MergeToMain.py,sha256=wX7oF_JYATofrJNQ7XtPKCg8cjr_XSAmE-Dn0BseaNo,7746
|
20
|
-
ScriptCollection/TFCPS/TFCPS_MergeToStable.py,sha256=
|
20
|
+
ScriptCollection/TFCPS/TFCPS_MergeToStable.py,sha256=AhmDhGx_eS7LzkRvp_RyIJz9yuj00mvuDNyqWzo26u0,22682
|
21
21
|
ScriptCollection/TFCPS/TFCPS_PreBuildCodeunitsScript.py,sha256=CxdwUklhZVuJGp0vcokoH_KMXFzmlUlZwj77xFYijho,2242
|
22
22
|
ScriptCollection/TFCPS/TFCPS_Tools_Dependencies.py,sha256=o7HI3ki3WWqlAiUsrh3Lky_w6UhYh9hdjYPGOhubQGA,414
|
23
|
-
ScriptCollection/TFCPS/TFCPS_Tools_General.py,sha256=
|
23
|
+
ScriptCollection/TFCPS/TFCPS_Tools_General.py,sha256=Ueji9NKGK5ABhb3iWwFWtXDx-z-eS3h9GVDoxU51Ah0,68256
|
24
24
|
ScriptCollection/TFCPS/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
25
25
|
ScriptCollection/TFCPS/Docker/TFCPS_CodeUnitSpecific_Docker.py,sha256=-g8h2gCf9rh0KJXUBeQD5d0qLJgBU3Q8DNZXM1UXC04,5259
|
26
26
|
ScriptCollection/TFCPS/Docker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -35,8 +35,8 @@ ScriptCollection/TFCPS/NodeJS/TFCPS_CodeUnitSpecific_NodeJS.py,sha256=dnuDlQXThF
|
|
35
35
|
ScriptCollection/TFCPS/NodeJS/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
36
36
|
ScriptCollection/TFCPS/Python/TFCPS_CodeUnitSpecific_Python.py,sha256=q7msAxCb5VIZ-xhFg1MfzUvWomQRKYldqmW42KFhyMU,6868
|
37
37
|
ScriptCollection/TFCPS/Python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
38
|
-
scriptcollection-4.0.
|
39
|
-
scriptcollection-4.0.
|
40
|
-
scriptcollection-4.0.
|
41
|
-
scriptcollection-4.0.
|
42
|
-
scriptcollection-4.0.
|
38
|
+
scriptcollection-4.0.22.dist-info/METADATA,sha256=IGCjSKJZmutDpRN1Cq_mo-Refp8Ip4BI-R-O0Bx4X_0,7688
|
39
|
+
scriptcollection-4.0.22.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
40
|
+
scriptcollection-4.0.22.dist-info/entry_points.txt,sha256=NeU26D6q7d8n2cmKQiOvHK21w1C7D2kxoNRJaKiyZ5w,4295
|
41
|
+
scriptcollection-4.0.22.dist-info/top_level.txt,sha256=hY2hOVH0V0Ce51WB76zKkIWTUNwMUdHo4XDkR2vYVwg,17
|
42
|
+
scriptcollection-4.0.22.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|