Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 12 additions & 15 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,26 +21,24 @@ jobs:
- name: Install jq
run: sudo apt-get update && sudo apt-get install -y jq

- name: Get next version from TestPyPI
- name: Get next version from PyPI
id: get_next_version
run: |
PACKAGE="pysvf"
INDEX_URL="https://test.pypi.org/pypi/$PACKAGE/json"
INDEX_URL="https://pypi.org/pypi/$PACKAGE/json"

echo "Querying $INDEX_URL ..."
VERSIONS=$(curl -s "$INDEX_URL" | jq -r '.releases | keys[]' | grep -E '^1\.0\.0\.[0-9]+$')
VERSIONS=$(curl -s "$INDEX_URL" | jq -r '.releases | keys[]' | grep -E '^1\.0\.0\.[0-9]+$' || true)

if [ -z "$VERSIONS" ]; then
LAST_VERSION="1.0.0.0"
NEXT_VERSION="1.0.0.0"
else
LAST_VERSION=$(echo "$VERSIONS" | sort -V | tail -n 1)
echo "Last version: $LAST_VERSION"
NEXT_VERSION=$(echo "$LAST_VERSION" | awk -F. '{$NF+=1; print $1 "." $2 "." $3 "." $4}')
fi

echo "Last version: $LAST_VERSION"

NEXT_VERSION=$(echo "$LAST_VERSION" | awk -F. '{$NF+=1; print $1 "." $2 "." $3 "." $4}')

echo "Next version: $NEXT_VERSION"

echo "next_version=$NEXT_VERSION" >> $GITHUB_OUTPUT

stubtest:
Expand Down Expand Up @@ -200,14 +198,13 @@ jobs:
echo "Built wheel files:"
ls -lh dist/

- name: Publish to TestPyPI
- name: Publish to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.TEST_PYPI_API_TOKEN }}
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
run: |
cd SVF-Python
pip install twine
twine upload --repository testpypi dist/* --verbose
twine upload dist/* --verbose

- name: Upload Python wheels
uses: actions/upload-artifact@v4
Expand Down
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@


## News
* <b>Pysvf is now available on [PyPI](https://pypi.org/project/pysvf/). The previous Test PyPI distribution is no longer maintained.</b>
* <b>Thanks to [mgree](https://github.com/mgree) for contributing the `FunObjVar::getSourceLoc` binding ([#46](https://github.com/SVF-tools/SVF-Python/pull/46)).</b>
* <b>SVF-Python now supports MTA bindings and more pointer analysis strategies(AndersenWaveDiff, AndersenBase, and Steensgaard bindings). (Thank [JoelYYoung](https://github.com/JoelYYoung) for his help!). </b>

## 1. Introduction
Expand All @@ -12,17 +14,17 @@

Pysvf can be installed in two ways:

### Method 1: Install via pip (Test PyPI)
### Method 1: Install via pip

#### Requirements

- Python 3.8 - 3.11
- Python 3.8 - 3.12
- OS: Linux X86-64, Linux Arm64, MacOS

#### Install Command

```bash
python3 -m pip install -i https://test.pypi.org/simple/ pysvf
pip install pysvf
````

### Method 2: Build from Source
Expand Down
Loading
Loading