Skip to content

Update CI to use newer python versions #67

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

Open
wants to merge 164 commits into
base: master
Choose a base branch
from

Conversation

mattkjames7
Copy link

@mattkjames7 mattkjames7 commented Apr 24, 2025

  • Build and test packages for Python versions 3.10 - 3.13
  • Added test for Fedora 41
  • Updated Ubuntu to 24.04 and 22.04
  • Updated Windows to 2022 and 2025
  • Updated Mac OS to 14 and 15
  • Breaking for Linux and Windows users with Python <= 3.6
  • Breaking for Mac OS users with Python <= 3.8

NOTE: requires #73 to be merged into mgclient and then updating the submodule here before merging!!!

@mattkjames7 mattkjames7 changed the title Update python versions Update CI to use newer python versions Apr 29, 2025
@mattkjames7 mattkjames7 marked this pull request as ready for review April 29, 2025 21:43
@mattkjames7 mattkjames7 self-assigned this Apr 29, 2025
@mattkjames7 mattkjames7 requested a review from gitbuda April 29, 2025 21:51
- {platform: 'ubuntu-24.04', python_version: '3.11', mgversion: 'latest'}
- {platform: 'ubuntu-24.04', python_version: '3.12', mgversion: 'latest'}
- {platform: 'ubuntu-24.04', python_version: '3.13', mgversion: 'latest'}
- {platform: 'fedora-41', python_version: '3.13', mgversion: 'latest'}
Copy link
Member

Choose a reason for hiding this comment

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

Fedora 42 is actually latest, not critical to change!

- uses: actions/checkout@v2
with:
submodules: true
docker cp $LOCAL_PACKAGE_NAME testcontainer:/$LOCAL_PACKAGE_NAME
Copy link
Member

Choose a reason for hiding this comment

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

Move to a script that could be run independently of Github

run: python3 -m pip install ./dist/pymgclient-*
run: |
docker exec -i testcontainer \
bash -c "python3 -m pip install ${{ env.STATIC_SSL }} ./pymgclient/dist/pymgclient-* ${{ env.BREAK_PACKAGES }}"
Copy link
Member

Choose a reason for hiding this comment

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

change to the wheel + distribute the static code version as well

Comment on lines +267 to +268
# nohup /usr/lib/memgraph/memgraph --bolt-port 7687 --bolt-cert-file="" --bolt-key-file="" --data-directory="~/memgraph/data" --storage-properties-on-edges=true --storage-snapshot-interval-sec=0 --storage-wal-enabled=false --data-recovery-on-startup=false --storage-snapshot-on-exit=false --telemetry-enabled=false --log-level=TRACE --log-file='$HOME/memgraph/memgraph.log' &
# nohup /usr/lib/memgraph/memgraph --telemetry-enabled=False &
Copy link
Member

Choose a reason for hiding this comment

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

delete the comments

Comment on lines +248 to +254
mgversion=$(
curl -s https://api.github.com/repos/memgraph/memgraph/releases/latest \
| grep -m1 '"tag_name":' \
| sed -E 's/.*"([^"]+)".*/\1/' \
| sed 's/^v//'
)
echo "MGVERSION=$mgversion" >> $GITHUB_ENV
Copy link
Member

Choose a reason for hiding this comment

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

also create a script for this

nohup /usr/lib/memgraph/memgraph --bolt-port 7687 --bolt-cert-file="cert.pem" --bolt-key-file="key.pem" --data-directory="~/memgraph/data" --storage-properties-on-edges=true --storage-snapshot-interval-sec=0 --storage-wal-enabled=false --storage-snapshot-on-exit=false --telemetry-enabled=false --log-file='' &
# nohup /usr/lib/memgraph/memgraph --bolt-port 7687 --bolt-cert-file="" --bolt-key-file="" --data-directory="~/memgraph/data" --storage-properties-on-edges=true --storage-snapshot-interval-sec=0 --storage-wal-enabled=false --data-recovery-on-startup=false --storage-snapshot-on-exit=false --telemetry-enabled=false --log-level=TRACE --log-file='$HOME/memgraph/memgraph.log' &
# nohup /usr/lib/memgraph/memgraph --telemetry-enabled=False &
sleep 1
Copy link
Member

Choose a reason for hiding this comment

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

another candidate for centralized wait function

Comment on lines +301 to +305
# - '3.9' # this does work, but is old
- '3.10'
- '3.11'
- '3.12'
- '3.13'
Copy link
Member

Choose a reason for hiding this comment

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

remove the comment + align (1 space)

Copy link
Member

@gitbuda gitbuda left a comment

Choose a reason for hiding this comment

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

There are a few optional improvements, the main thing is to isolate bash stuff under independent scripts 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants