Skip to content

feat: switch pruna from poetry to uv#165

Merged
johnrachwan123 merged 38 commits intoPrunaAI:feat/switch-pruna-from-poetry-to-uvfrom
GreatBahram:feat/switch-pruna-from-poetry-to-uv
Jun 11, 2025
Merged

feat: switch pruna from poetry to uv#165
johnrachwan123 merged 38 commits intoPrunaAI:feat/switch-pruna-from-poetry-to-uvfrom
GreatBahram:feat/switch-pruna-from-poetry-to-uv

Conversation

@GreatBahram
Copy link
Copy Markdown
Contributor

@GreatBahram GreatBahram commented May 30, 2025

Description

  • remove poetry as a dependency
  • use uv everywhere including github files

Related Issue

Fixes #(issue number)

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How Has This Been Tested?

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

Additional Notes

Comment thread pyproject.toml Outdated
Comment thread .github/workflows/documentation.yaml
Comment thread pyproject.toml Outdated
Comment thread pyproject.toml
@GreatBahram
Copy link
Copy Markdown
Contributor Author

It seems to me that we don't need to update any documentation files, as they are quite general and not tied specifically to poetry. What do you think? @johnrachwan123

@davidberenstein1957
Copy link
Copy Markdown
Member

Hi @GreatBahram, the PR looks good. Could you change it in such a way that changes in the github files also trigger tests? Or could you create a small commit to "fake" trigger the tests, which we could revert after.

@GreatBahram
Copy link
Copy Markdown
Contributor Author

GreatBahram commented Jun 3, 2025

Hi @GreatBahram, the PR looks good. Could you change it in such a way that changes in the github files also trigger tests? Or could you create a small commit to "fake" trigger the tests, which we could revert after.

I created a placeholder file in this commit; let's see if that helps. If not, we can add workflow_dispatch: to the workflows and trigger them manually. Let me know if you need anything else. 🌻

Update: It seems most of workflows run only if they're target main branch

@GreatBahram GreatBahram changed the base branch from feat/switch-pruna-from-poetry-to-uv to main June 3, 2025 13:12
@GreatBahram GreatBahram force-pushed the feat/switch-pruna-from-poetry-to-uv branch from 925b751 to 2aed34e Compare June 3, 2025 13:59
dependabot bot and others added 5 commits June 10, 2025 14:54
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v3...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [abatilo/actions-poetry](https://github.com/abatilo/actions-poetry) from 2 to 4.
- [Release notes](https://github.com/abatilo/actions-poetry/releases)
- [Changelog](https://github.com/abatilo/actions-poetry/blob/master/.releaserc)
- [Commits](abatilo/actions-poetry@v2...v4)

---
updated-dependencies:
- dependency-name: abatilo/actions-poetry
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
@GreatBahram GreatBahram changed the base branch from main to feat/switch-pruna-from-poetry-to-uv June 10, 2025 13:18
@johnrachwan123 johnrachwan123 force-pushed the feat/switch-pruna-from-poetry-to-uv branch from a0de480 to e2eeecb Compare June 10, 2025 13:24
Comment thread pyproject.toml
davidberenstein1957 and others added 2 commits June 10, 2025 18:36
…I#199)

Updates the requirements on [ctranslate2](https://github.com/OpenNMT/CTranslate2) to permit the latest version.
- [Release notes](https://github.com/OpenNMT/CTranslate2/releases)
- [Changelog](https://github.com/OpenNMT/CTranslate2/blob/master/CHANGELOG.md)
- [Commits](OpenNMT/CTranslate2@v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: ctranslate2
  dependency-version: 4.6.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
@GreatBahram GreatBahram changed the base branch from feat/switch-pruna-from-poetry-to-uv to main June 10, 2025 18:01
@johnrachwan123
Copy link
Copy Markdown
Member

@GreatBahram currently the linting test still fails. Any idea why ?

@johnrachwan123 johnrachwan123 changed the base branch from main to feat/switch-pruna-from-poetry-to-uv June 11, 2025 08:15
Comment thread .github/workflows/linting.yaml Outdated

- name: Remove .so files
run: find . -name "*.so" -delete
# - name: Remove .so files
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@johnrachwan123 Not sure if it's related to this or not 🤷

Copy link
Copy Markdown
Contributor Author

@GreatBahram GreatBahram Jun 11, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems that was it; it's in your hands now @johnrachwan123

@GreatBahram GreatBahram changed the base branch from feat/switch-pruna-from-poetry-to-uv to main June 11, 2025 10:11
@GreatBahram GreatBahram force-pushed the feat/switch-pruna-from-poetry-to-uv branch from d2d6473 to 1245fcd Compare June 11, 2025 10:12
@johnrachwan123 johnrachwan123 changed the base branch from main to feat/switch-pruna-from-poetry-to-uv June 11, 2025 12:44
Copy link
Copy Markdown
Member

@johnrachwan123 johnrachwan123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM Thanks for the great work!

@johnrachwan123 johnrachwan123 merged this pull request into PrunaAI:feat/switch-pruna-from-poetry-to-uv Jun 11, 2025
johnrachwan123 added a commit that referenced this pull request Jun 18, 2025
* feat: attempt to swtich pruna from poetry to uv

* fix: uv installation

* refactor: remove requirements.txt

* format the pyproject.toml properly + point to the license file

* change linting file to use uv

* use latest version of checkout

* use latest version of setup-python

* change documentation file to use uv

* use latest version of setup-python

* change external_tests file to use uv

* change internal_tests file to use uv + prefix previous command to use uv

* change installation file to use uv

* change package_buil;d file to use uv + add retention policy there

* tests: update package build to uv

* remove poetry from gitignore

* format the pyproject.toml properly + point to the license file

* change package_buil;d file to use uv + add retention policy there

* reduce the diff

* add alaki file (random file); hopefully to triggers most of the workflows

* Delete src/pruna/alaki.py

* build: bump actions/setup-python from 3 to 5 (#193)

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v3...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build: bump abatilo/actions-poetry from 2 to 4 (#195)

Bumps [abatilo/actions-poetry](https://github.com/abatilo/actions-poetry) from 2 to 4.
- [Release notes](https://github.com/abatilo/actions-poetry/releases)
- [Changelog](https://github.com/abatilo/actions-poetry/blob/master/.releaserc)
- [Commits](abatilo/actions-poetry@v2...v4)

---
updated-dependencies:
- dependency-name: abatilo/actions-poetry
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build: bump actions/cache from 3 to 4 (#196)

Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build: bump actions/checkout from 3 to 4 (#194)

Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update pyproject.toml

* build: update ctranslate2 requirement from ==4.5.0 to ==4.6.0 (#199)

Updates the requirements on [ctranslate2](https://github.com/OpenNMT/CTranslate2) to permit the latest version.
- [Release notes](https://github.com/OpenNMT/CTranslate2/releases)
- [Changelog](https://github.com/OpenNMT/CTranslate2/blob/master/CHANGELOG.md)
- [Commits](OpenNMT/CTranslate2@v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: ctranslate2
  dependency-version: 4.6.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* this is gone on main

* enable caching in order to expedite the installtion time

* just a test

* Remove commented-out step for deleting .so files from linting workflow

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: johnrachwan123 <johnrachwan@gmail.com>
Co-authored-by: David Berenstein <david.m.berenstein@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
johnrachwan123 added a commit that referenced this pull request Jun 23, 2025
* feat: attempt to swtich pruna from poetry to uv

* fix: uv installation

* refactor: remove requirements.txt

* tests: update package build to uv

* docs: update the how to contribute docs

* docs: expand how to contribute

* fix: ctranslate2 and ws2t versions

* feat: switch pruna from poetry to uv (#165)

* feat: attempt to swtich pruna from poetry to uv

* fix: uv installation

* refactor: remove requirements.txt

* format the pyproject.toml properly + point to the license file

* change linting file to use uv

* use latest version of checkout

* use latest version of setup-python

* change documentation file to use uv

* use latest version of setup-python

* change external_tests file to use uv

* change internal_tests file to use uv + prefix previous command to use uv

* change installation file to use uv

* change package_buil;d file to use uv + add retention policy there

* tests: update package build to uv

* remove poetry from gitignore

* format the pyproject.toml properly + point to the license file

* change package_buil;d file to use uv + add retention policy there

* reduce the diff

* add alaki file (random file); hopefully to triggers most of the workflows

* Delete src/pruna/alaki.py

* build: bump actions/setup-python from 3 to 5 (#193)

Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@v3...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build: bump abatilo/actions-poetry from 2 to 4 (#195)

Bumps [abatilo/actions-poetry](https://github.com/abatilo/actions-poetry) from 2 to 4.
- [Release notes](https://github.com/abatilo/actions-poetry/releases)
- [Changelog](https://github.com/abatilo/actions-poetry/blob/master/.releaserc)
- [Commits](abatilo/actions-poetry@v2...v4)

---
updated-dependencies:
- dependency-name: abatilo/actions-poetry
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build: bump actions/cache from 3 to 4 (#196)

Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build: bump actions/checkout from 3 to 4 (#194)

Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update pyproject.toml

* build: update ctranslate2 requirement from ==4.5.0 to ==4.6.0 (#199)

Updates the requirements on [ctranslate2](https://github.com/OpenNMT/CTranslate2) to permit the latest version.
- [Release notes](https://github.com/OpenNMT/CTranslate2/releases)
- [Changelog](https://github.com/OpenNMT/CTranslate2/blob/master/CHANGELOG.md)
- [Commits](OpenNMT/CTranslate2@v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: ctranslate2
  dependency-version: 4.6.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* this is gone on main

* enable caching in order to expedite the installtion time

* just a test

* Remove commented-out step for deleting .so files from linting workflow

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: johnrachwan123 <johnrachwan@gmail.com>
Co-authored-by: David Berenstein <david.m.berenstein@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: pin hqq version

* fix: handle pr comments

* fix: typo in installation.yaml

* fix: typos in yaml files

* fix: use uv add

* fix: add --system to pip install

* fix: add uv venv

* fix: keep one extra index in toml file

* fix: attempt to make pruna pypi server secondary

* fix: add uv venv to documentation.yaml

* fix: attempt to fix problematic gptqmodel dependency

* fix: remove cache for sanity check

* fix: remove duplicate line

* fix: remove extra index

* fix: use_cache=True

* fix: remove uv from doc build

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: David Berenstein <david.m.berenstein@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants