Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[internal] Make generate-lockfiles goal generic #14122

Merged
merged 7 commits into from
Jan 11, 2022

Commits on Jan 7, 2022

  1. Rename PythonToolLockfileSentinel to ToolLockfileSentinel and `Py…

    …thonLockfile` to `Lockfile`
    
    These will be common types used across multiple languages like Python and Java.
    
    # Building wheels and fs_util will be skipped. Delete if not intended.
    [ci skip-build-wheels]
    
    # Rust tests and lints will be skipped. Delete if not intended.
    [ci skip-rust]
    Eric-Arellano committed Jan 7, 2022
    Configuration menu
    Copy the full SHA
    112f665 View commit details
    Browse the repository at this point in the history
  2. Add LockfileRequest union base to make lockfile generation generic

    This also uses `WrappedLockfileRequest` so that we can make our tool lockfile code completely generic. We now have a way to dynamically compute which tools to generate lockfiles for, regardless of language.
    
    The only thing not yet generic is user lockfiles.
    
    # Rust tests and lints will be skipped. Delete if not intended.
    [ci skip-rust]
    
    # Building wheels and fs_util will be skipped. Delete if not intended.
    [ci skip-build-wheels]
    Eric-Arellano committed Jan 7, 2022
    Configuration menu
    Copy the full SHA
    d6c3af8 View commit details
    Browse the repository at this point in the history
  3. Move some lockfile helpers to core/goals/generate_lockfiles.py

    No changes made. Just moved around.
    
    # Rust tests and lints will be skipped. Delete if not intended.
    [ci skip-rust]
    
    # Building wheels and fs_util will be skipped. Delete if not intended.
    [ci skip-build-wheels]
    Eric-Arellano committed Jan 7, 2022
    Configuration menu
    Copy the full SHA
    73458a5 View commit details
    Browse the repository at this point in the history
  4. Use a rule for warning about PythonRepos

    This allows us to move that Python specific functionality out of the `generate-lockfiles` goal. We use a `@rule` so that the warning doesn't render more than one time.
    
    # Rust tests and lints will be skipped. Delete if not intended.
    [ci skip-rust]
    
    # Building wheels and fs_util will be skipped. Delete if not intended.
    [ci skip-build-wheels]
    Eric-Arellano committed Jan 7, 2022
    Configuration menu
    Copy the full SHA
    8c1e237 View commit details
    Browse the repository at this point in the history

Commits on Jan 8, 2022

  1. Generify user lockfiles

    This is pretty involved. We need to first use a union to discover all "known" resolves per language. We then need another union to convert all _requested_ resolves for that language into concrete LockfileRequest subclasses
    
    # Rust tests and lints will be skipped. Delete if not intended.
    [ci skip-rust]
    
    # Building wheels and fs_util will be skipped. Delete if not intended.
    [ci skip-build-wheels]
    Eric-Arellano committed Jan 8, 2022
    Configuration menu
    Copy the full SHA
    3d66d35 View commit details
    Browse the repository at this point in the history
  2. Move generate-lockfiles goal to core/goals

    # Rust tests and lints will be skipped. Delete if not intended.
    [ci skip-rust]
    
    # Building wheels and fs_util will be skipped. Delete if not intended.
    [ci skip-build-wheels]
    Eric-Arellano committed Jan 8, 2022
    Configuration menu
    Copy the full SHA
    9790b27 View commit details
    Browse the repository at this point in the history

Commits on Jan 11, 2022

  1. Re-export the Python lockfile @rules from each backend that registe…

    …rs a `ToolLockfileSentinel`.
    
    # Rust tests and lints will be skipped. Delete if not intended.
    [ci skip-rust]
    
    # Building wheels and fs_util will be skipped. Delete if not intended.
    [ci skip-build-wheels]
    stuhood committed Jan 11, 2022
    Configuration menu
    Copy the full SHA
    b577d11 View commit details
    Browse the repository at this point in the history