Skip to content

Revert sketchlib-rust path dependency once it is open sourced #154

Closed

Description

@milindsrivastava1997

Context

`sketchlib-rust` (https://github.com/ProjectASAP/sketchlib-rust) is currently a private repo. As a temporary workaround, it is being vendored locally and rsynced to CloudLab nodes rather than fetched directly from GitHub by Cargo.

What was changed (and must be reverted)

  1. `Utilities/components.conf` — added `sketchlib-rust` so it gets rsynced to nodes. Remove this line:
    ```
    sketchlib-rust
    ```

  2. `.gitignore` — added `sketchlib-rust/` to prevent committing the private source. Remove this entry once the repo is public.

  3. Local clone at `asap-internal/sketchlib-rust/` — the repo source is vendored here. Delete it once the public repo is used directly.

Note: `QueryEngineRust/Cargo.toml` already uses the git dependency (PR ProjectASAP/asap-internal#434 kept/restored this). No change needed there.

Steps to revert

Once `ProjectASAP/sketchlib-rust` is made public:

  1. Remove `sketchlib-rust` from `Utilities/components.conf`
  2. Remove `sketchlib-rust/` from `.gitignore`
  3. Delete the local clone at `asap-internal/sketchlib-rust/`
  4. Regenerate `Cargo.lock` to pick up the latest public commit:
    ```bash
    CARGO_NET_GIT_FETCH_WITH_CLI=true cargo generate-lockfile
    ```

Activity

  1. milindsrivastava1997 commented on Mar 4, 2026

    @milindsrivastava1997
    ContributorAuthor

    Originally by @linear[bot] on 2026-02-27:

    PRO-440

  2. milindsrivastava1997 commented on Mar 4, 2026

    @milindsrivastava1997
    ContributorAuthor

    Originally by @milindsrivastava1997 on 2026-02-27:

    Additional items to revert from PR ProjectASAP/asap-internal#434

    PR ProjectASAP/asap-internal#434 added more temporary workarounds that also need to be reverted once sketchlib-rust is public:

    1. QueryEngineRust/Dockerfile — remove the sketchlib-rust COPY line:

      - COPY sketchlib-rust ./sketchlib-rust
    2. QueryEngineRust/Cargo.lock — after reverting Cargo.toml back to the git dependency, regenerate the lock file:

      cd QueryEngineRust && cargo generate-lockfile
      
  3. milindsrivastava1997 commented on Mar 4, 2026

    @milindsrivastava1997
    ContributorAuthor

    Originally by @milindsrivastava1997 on 2026-02-27:

    CC @zzylol

  4. milindsrivastava1997 commented on Mar 4, 2026

    @milindsrivastava1997
    ContributorAuthor

    Originally by @milindsrivastava1997 on 2026-02-27:

    Additional items to revert from PR ProjectASAP/asap-internal#434

    PR ProjectASAP/asap-internal#434 added more temporary workarounds that also need to be reverted once sketchlib-rust is public:

    1. QueryEngineRust/Dockerfile — remove the sketchlib-rust COPY line, and revert the Cargo.toml/Cargo.lock COPY back to the original (which included QueryEngineRust/Cargo.lock):

      - COPY sketchlib-rust ./sketchlib-rust
      - COPY Cargo.toml Cargo.lock ./
      - COPY QueryEngineRust/Cargo.toml ./QueryEngineRust/
      + COPY QueryEngineRust/Cargo.toml QueryEngineRust/Cargo.lock ./QueryEngineRust/

      Note: once sketchlib-rust is a git dependency again, QueryEngineRust/Cargo.lock will need to be regenerated and committed separately.

    2. QueryEngineRust/Cargo.lock — after reverting Cargo.toml back to the git dependency, regenerate the lock file. Since QueryEngineRust is part of the root workspace, the lock file lives at the repo root (/Cargo.lock), not inside QueryEngineRust/. The Dockerfile will need a QueryEngineRust-specific lock file only if it is removed from the workspace, otherwise just copy the root Cargo.lock.

  5. self-assigned this
    on Mar 6, 2026
  6. added a commit that references this issue on Mar 6, 2026
    9f7c5c9
  7. added a commit that references this issue on Mar 6, 2026
    b7dd3cd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions