12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- # Copyright 2021-2025 Avaiga Private Limited
- #
- # Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
- # the License. You may obtain a copy of the License at
- #
- # http://www.apache.org/licenses/LICENSE-2.0
- #
- # Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
- # an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
- # specific language governing permissions and limitations under the License.
- import os
- import sys
- from typing import Dict
- BASE_PATH = "./tools/packages"
- def __build_taipy_package_line(line: str, version: str, publish_on_py_pi: bool) -> str:
- _line = line.strip()
- if publish_on_py_pi:
- return f"{_line}=={version}\n"
- tag = f"{version}-{_line.split('-')[1]}"
- tar_name = f"{_line}-{version}"
- return f"{_line} @ https://github.com/Avaiga/taipy/releases/download/{tag}/{tar_name}.tar.gz\n"
- def update_setup_requirements(package: str, versions: Dict, publish_on_py_pi: bool) -> None:
- _path = os.path.join(BASE_PATH, package, "setup.requirements.txt")
- lines = []
- with open(_path, mode="r") as req:
- for line in req:
- if v := versions.get(line.strip()):
- line = __build_taipy_package_line(line, v, publish_on_py_pi)
- lines.append(line)
- with open(_path, "w") as file:
- file.writelines(lines)
- if __name__ == "__main__":
- _package = sys.argv[1]
- _versions = {
- "taipy-common": sys.argv[2],
- "taipy-core": sys.argv[3],
- "taipy-gui": sys.argv[4],
- "taipy-rest": sys.argv[5],
- "taipy-templates": sys.argv[6],
- }
- _publish_on_py_pi = True if sys.argv[7] == "true" else False
- update_setup_requirements(_package, _versions, _publish_on_py_pi)
|