mirror of
https://github.com/hwchase17/langchain.git
synced 2025-06-23 07:09:31 +00:00
infra: prerelease dep checking on release (#23269)
This commit is contained in:
parent
616196c620
commit
6c3e65a878
35
.github/scripts/check_prerelease_dependencies.py
vendored
Normal file
35
.github/scripts/check_prerelease_dependencies.py
vendored
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
import sys
|
||||||
|
import tomllib
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
# Get the TOML file path from the command line argument
|
||||||
|
toml_file = sys.argv[1]
|
||||||
|
|
||||||
|
# read toml file
|
||||||
|
with open(toml_path, "rb") as file:
|
||||||
|
toml_data = tomllib.load(file)
|
||||||
|
|
||||||
|
# see if we're releasing an rc
|
||||||
|
version = toml_data["tool"]["poetry"]["version"]
|
||||||
|
releasing_rc = "rc" in version
|
||||||
|
|
||||||
|
# if not, iterate through dependencies and make sure none allow prereleases
|
||||||
|
if not releasing_rc:
|
||||||
|
dependencies = toml_data["tool"]["poetry"]["dependencies"]
|
||||||
|
for lib in dependencies:
|
||||||
|
dep_version = dependencies[lib]
|
||||||
|
dep_version_string = (
|
||||||
|
dep_version["version"] if isinstance(dep_version, dict) else dep_version
|
||||||
|
)
|
||||||
|
|
||||||
|
if "rc" in dep_version_string:
|
||||||
|
raise ValueError(
|
||||||
|
f"Dependency {lib} has a prerelease version. Please remove this."
|
||||||
|
)
|
||||||
|
|
||||||
|
if isinstance(dep_version, dict) and dep_version.get(
|
||||||
|
"allow-prereleases", False
|
||||||
|
):
|
||||||
|
raise ValueError(
|
||||||
|
f"Dependency {lib} has allow-prereleases set to true. Please remove this."
|
||||||
|
)
|
5
.github/workflows/_release.yml
vendored
5
.github/workflows/_release.yml
vendored
@ -221,6 +221,11 @@ jobs:
|
|||||||
run: make tests
|
run: make tests
|
||||||
working-directory: ${{ inputs.working-directory }}
|
working-directory: ${{ inputs.working-directory }}
|
||||||
|
|
||||||
|
- name: Check for prerelease versions
|
||||||
|
working-directory: ${{ inputs.working-directory }}
|
||||||
|
run: |
|
||||||
|
poetry run python $GITHUB_WORKSPACE/.github/scripts/check_prerelease_dependencies.py pyproject.toml
|
||||||
|
|
||||||
- name: Get minimum versions
|
- name: Get minimum versions
|
||||||
working-directory: ${{ inputs.working-directory }}
|
working-directory: ${{ inputs.working-directory }}
|
||||||
id: min-version
|
id: min-version
|
||||||
|
Loading…
Reference in New Issue
Block a user