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

mono - release v0.5.2 #818

Merged
merged 376 commits into from
Nov 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
376 commits
Select commit Hold shift + click to select a range
2ad8af9
Merge pull request #781 from 3rd-Son/deepinfra
cobycloud Nov 11, 2024
8b5f938
swarm - Refactor GroqModel to use httpx for API requests
MichaelDecent Nov 11, 2024
e71f3e7
swarm -implemted httpx in anthropic
3rd-Son Nov 11, 2024
02c7b9d
Merge pull request #782 from MichaelDecent/httpx_fix
cobycloud Nov 11, 2024
eafbe1d
Merge pull request #783 from 3rd-Son/anthropic
cobycloud Nov 11, 2024
cd5c255
swarm - Refactor LLM models to utilize httpx
MichaelDecent Nov 11, 2024
f8da45e
Merge pull request #784 from MichaelDecent/httpx_fix_mistral
cobycloud Nov 11, 2024
ddebdae
swarm - remove dependencies from pyproject.toml
cobycloud Nov 11, 2024
ceebc03
swarmauri - fix PerplexityModel.py
cobycloud Nov 11, 2024
238c32f
Update publish_dev.yml
cobycloud Nov 11, 2024
617fa8e
swarm - httpx in coheremodel
3rd-Son Nov 11, 2024
bfd64f2
Merge remote-tracking branch 'upstream/dev' into cohere
3rd-Son Nov 11, 2024
a7a9b4a
swarmauri - Update PerplexityModel.py
cobycloud Nov 11, 2024
72d30cb
cicd - Update publish_dev.yml
cobycloud Nov 11, 2024
4b9834e
Update pyproject.toml
cobycloud Nov 11, 2024
d86aaa5
cicd - Update publish_dev.yml
cobycloud Nov 11, 2024
ab92169
Update publish_dev.yml
cobycloud Nov 11, 2024
9b191f4
Update pyproject.toml
cobycloud Nov 11, 2024
15aac23
Create list_package_sizes.py
cobycloud Nov 11, 2024
93a0acd
Update publish_dev.yml
cobycloud Nov 11, 2024
ae150a9
Update pyproject.toml
cobycloud Nov 11, 2024
d2f27b4
Update list_package_sizes.py
cobycloud Nov 11, 2024
f1de099
core - Update pyproject.toml
cobycloud Nov 11, 2024
9bb561d
Create total_site_packages_size.py
cobycloud Nov 11, 2024
565040c
Update publish_dev.yml
cobycloud Nov 11, 2024
e8b802a
swarm - Update pyproject.toml
cobycloud Nov 11, 2024
d770a16
Update pyproject.toml
cobycloud Nov 12, 2024
fb112a7
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
d05cc8d
core - Update pyproject.toml
cobycloud Nov 12, 2024
6708e40
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
4915803
core - Update pyproject.toml
cobycloud Nov 12, 2024
43935e6
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
cceda42
core - Update pyproject.toml
cobycloud Nov 12, 2024
2da90d8
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
5da91bf
Update pyproject.toml
cobycloud Nov 12, 2024
cf1eabf
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
420149d
Update pyproject.toml
cobycloud Nov 12, 2024
ec2c3d9
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
0c1e822
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
609ebda
swarm - remove `install built package` step
cobycloud Nov 12, 2024
a2bf21d
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
1c02a57
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
b50001e
Create list_site_package_sizes.py
cobycloud Nov 12, 2024
2aba863
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
fc72930
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
9a9150e
core - Update pyproject.toml
cobycloud Nov 12, 2024
f09eb72
Delete scripts/list_package_sizes.py
cobycloud Nov 12, 2024
848f65d
Update publish_dev.yml
cobycloud Nov 12, 2024
70fc781
core - Update pyproject.toml
cobycloud Nov 12, 2024
5f474c2
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
a39eab0
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
947f77a
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
9f8e3e5
core -Update pyproject.toml
cobycloud Nov 12, 2024
f3fbfbe
cicd - Update classify_results.py
cobycloud Nov 12, 2024
552efcb
core - Update pyproject.toml
cobycloud Nov 12, 2024
80144bb
cicd - Update list_site_package_sizes.py
cobycloud Nov 12, 2024
13af424
core - Update pyproject.toml
cobycloud Nov 12, 2024
bbb8835
core - typo
cobycloud Nov 12, 2024
e8eafc8
cicd -Update classify_results.py
cobycloud Nov 12, 2024
1986574
core - Update pyproject.toml
cobycloud Nov 12, 2024
818127d
cicd - Update list_site_package_sizes.py
cobycloud Nov 12, 2024
ef3db66
core - Update pyproject.toml
cobycloud Nov 12, 2024
bdbed65
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
2f67423
swarm - create extra groups on pyproject.toml
cobycloud Nov 12, 2024
da69dc7
Update pyproject.toml
cobycloud Nov 12, 2024
4609239
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
1f8f8bb
swarmauri - update tools/concrete/__init__
cobycloud Nov 12, 2024
03338f3
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
dfe0a2e
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
cc51cb7
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
89fee0f
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
d7a8300
Update publish_dev.yml
cobycloud Nov 12, 2024
3d10daf
Update pyproject.toml
cobycloud Nov 12, 2024
a00eb39
swarmauri - update embeddings/concrete/__init__
cobycloud Nov 12, 2024
f84ccd8
swarmauri - update llms/concrete/__init__
cobycloud Nov 12, 2024
acb94d0
swarmauri - update schema_converters/concrete/__init__
cobycloud Nov 12, 2024
53fe397
swarm - update vector_stores/concrete/__init__
cobycloud Nov 12, 2024
c4b99d4
swarm - update distances/concrete/__init__
cobycloud Nov 12, 2024
9ebe9c6
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
e6b7dcb
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
1c45bcb
swarmauri - update agents/concrete/__init__.py
cobycloud Nov 12, 2024
20ec400
swarm - toolkits/concrete/__init__
cobycloud Nov 12, 2024
8319238
swarm - parsers/concrete/__init__
cobycloud Nov 12, 2024
b9bcd1d
cicd - utilize pytest-xdist to parallelize test cases
cobycloud Nov 12, 2024
4fa4990
swarmauri - add pytest-xdist to dev-dependencies
cobycloud Nov 12, 2024
b7e35a6
comm - add pytest-xdist to dev-dependencies
cobycloud Nov 12, 2024
ec86889
swarm - fix typo
cobycloud Nov 12, 2024
9580a73
comm - fix typo
cobycloud Nov 12, 2024
2211869
swarm - tools/concrete/__init__
cobycloud Nov 12, 2024
c63d5f5
swarmauri - tools/concrete/__init__
cobycloud Nov 12, 2024
02b02eb
swarm - toolkits/concrete/__init__
cobycloud Nov 12, 2024
c30a306
swarm - rename attribute on MistralToolModel
cobycloud Nov 12, 2024
55368cb
swarm - enhance PerplexityModel_unit_test.py stream & astream test cases
cobycloud Nov 12, 2024
8d94968
swarmauri - Create retry_decorator
cobycloud Nov 12, 2024
6478c87
Rename retry_decorator to retry_decorator.py
cobycloud Nov 12, 2024
28fe9ae
swarm - add retry decorators to GroqToolModel stream and astream test…
cobycloud Nov 12, 2024
a0b8da4
swarmauri - parameterize retry decorator
cobycloud Nov 12, 2024
42d38de
Delete pkgs/__init__.py
cobycloud Nov 12, 2024
e6e57d8
cicd - Create conftest.py
cobycloud Nov 12, 2024
7eb2b91
core - bump
cobycloud Nov 12, 2024
7820b7b
core - add xtest to dependencies
cobycloud Nov 12, 2024
092971c
core - fix typo
cobycloud Nov 12, 2024
051197e
swarm - bump
cobycloud Nov 12, 2024
958f725
cicd - increase workers from 4 to 8
cobycloud Nov 12, 2024
3566a0b
swarm - MistralToolModel.py
cobycloud Nov 12, 2024
3b51597
revert partner MistralToolModel.py
cobycloud Nov 12, 2024
b4d6c04
llms - Update MistralToolModel.py
cobycloud Nov 12, 2024
b420013
swarm - agents/concrete/__init__
cobycloud Nov 12, 2024
5eb9980
swarmauri - extend retries to additional GroqToolModel_unit_tests
cobycloud Nov 12, 2024
014a177
cicd - Update conftest.py
cobycloud Nov 12, 2024
4bd7ca9
cicd - Update conftest.py
cobycloud Nov 12, 2024
34e27dc
swarm - bump
cobycloud Nov 12, 2024
70c6a79
cicd - Update conftest.py
cobycloud Nov 12, 2024
19e841a
cicd - Rename pkgs/conftest.py to pkgs/swarmauri/conftest.py
cobycloud Nov 12, 2024
f135ba8
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
ab079f8
swarm - bump
cobycloud Nov 12, 2024
de5fd98
Merge remote-tracking branch 'upstream/dev' into cohere
3rd-Son Nov 12, 2024
efc3824
cicd - move global conftest back out
cobycloud Nov 12, 2024
004166b
cicd - Update conftest.py
cobycloud Nov 12, 2024
858eeea
swarm - Update pyproject.toml
cobycloud Nov 12, 2024
8f59d45
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
c742300
Update pyproject.toml
cobycloud Nov 12, 2024
785e7b8
core - bump
cobycloud Nov 12, 2024
40985e4
cicd - publish_dev.yml
cobycloud Nov 12, 2024
1d411c9
core - Update pyproject.toml
cobycloud Nov 12, 2024
7f841a5
swarm - bump
cobycloud Nov 12, 2024
2f8b94d
swarm - update with httpx fix
MichaelDecent Nov 12, 2024
a8afc40
Merge pull request #786 from swarmauri/swarm/lazy_loading-dev
cobycloud Nov 12, 2024
d82c078
cicd - move pkgs/conftest.py to pkgs/swarmauri/conftest.py
cobycloud Nov 12, 2024
5671895
swarm - bump
cobycloud Nov 12, 2024
59b6581
swarm/cicd - Update conftest.py
cobycloud Nov 12, 2024
9560a34
cicd - Update conftest.py
cobycloud Nov 12, 2024
4db2de2
cicd - Update conftest.py
cobycloud Nov 12, 2024
1cef245
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
7919076
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
4edb9d5
swarm/cicd - Update conftest.py
cobycloud Nov 12, 2024
ff2143a
swarm - implemented coheretool httpx
3rd-Son Nov 12, 2024
de5b7df
swarm - uncommented allowed models on cohere
3rd-Son Nov 12, 2024
dd02ddc
swarm/cicd - Update conftest.py
cobycloud Nov 12, 2024
81d76d8
swarm/cicd - Update conftest.py
cobycloud Nov 12, 2024
ebc889a
cicd - Update conftest.py
cobycloud Nov 12, 2024
19fa75e
cicd - Update conftest.py
cobycloud Nov 12, 2024
c2414f7
Update conftest.py
cobycloud Nov 12, 2024
da509b3
cicd - Update conftest.py
cobycloud Nov 12, 2024
784b753
cicd - move pkgs/swarmauri/conftest.py to pkgs/conftest.py
cobycloud Nov 12, 2024
dadab4f
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
a8e1ea7
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
309177d
Update pyproject.toml
cobycloud Nov 12, 2024
090f6cc
Merge pull request #788 from swarmauri/swarm/lazy_loading-dev
cobycloud Nov 12, 2024
5127e7c
swarm - cohereembed httpx
3rd-Son Nov 12, 2024
c9ce70b
implemented httpx in all cohere models
3rd-Son Nov 12, 2024
e39ed5e
Merge branch 'dev' into updated_fix
cobycloud Nov 12, 2024
36b5b11
Merge pull request #787 from MichaelDecent/updated_fix
cobycloud Nov 12, 2024
5bfe072
Merge pull request #789 from 3rd-Son/cohere
cobycloud Nov 12, 2024
a636723
swarm - httpx on voyage embedding
3rd-Son Nov 12, 2024
1ef6b76
Merge remote-tracking branch 'upstream/dev' into voyage
3rd-Son Nov 12, 2024
2908698
Merge pull request #790 from 3rd-Son/voyage
cobycloud Nov 12, 2024
8568b84
Delete pytest.ini
cobycloud Nov 12, 2024
3e31613
swarm - Update retry_decorator to use asyncio.sleep
cobycloud Nov 12, 2024
1197bec
swam - added httpx for open ai related models
MichaelDecent Nov 12, 2024
6830a9b
Merge remote-tracking branch 'upstream/dev' into updated_fix
MichaelDecent Nov 12, 2024
e45cbfd
swarm - minor fix
MichaelDecent Nov 12, 2024
c04fcea
swarm - Update DeepInfraImgGenModel.py
cobycloud Nov 12, 2024
e024283
swarm - implemented httpx in falAI
3rd-Son Nov 12, 2024
281a315
implemented httpx in falAI
3rd-Son Nov 12, 2024
192c209
swarm - Update AnthropicModel_unit_test.py
cobycloud Nov 12, 2024
cf38200
Merge pull request #791 from MichaelDecent/updated_fix
cobycloud Nov 12, 2024
63317a3
Merge pull request #792 from 3rd-Son/falAI
cobycloud Nov 12, 2024
34aed4c
cicd - Update publish_dev.yml
cobycloud Nov 12, 2024
141178a
httpx to embeddings
3rd-Son Nov 13, 2024
92ba98e
swarm - implemented whisper
3rd-Son Nov 13, 2024
d70e70f
swam - add httpx to Gemini related models
MichaelDecent Nov 13, 2024
3ea39cb
swarm - httpx on playht model
MichaelDecent Nov 13, 2024
c4f4739
Merge pull request #793 from 3rd-Son/embeddings
cobycloud Nov 13, 2024
90900cf
Merge pull request #795 from MichaelDecent/gemini_model
cobycloud Nov 13, 2024
99c9478
Merge pull request #794 from 3rd-Son/whisper
cobycloud Nov 13, 2024
bf1627d
Merge pull request #796 from MichaelDecent/playht
cobycloud Nov 13, 2024
f664ac9
Update publish_dev.yml
cobycloud Nov 13, 2024
c881598
Update pyproject.toml
cobycloud Nov 13, 2024
5ad71f8
swarm - fixed anthropic integration error
3rd-Son Nov 14, 2024
01fb23b
Merge pull request #797 from 3rd-Son/anthropic
cobycloud Nov 14, 2024
893b6d3
swarm - fixed deepinfraimggen error
3rd-Son Nov 14, 2024
c687413
Merge remote-tracking branch 'upstream/dev' into deepinfra
3rd-Son Nov 14, 2024
12108f6
Merge pull request #798 from 3rd-Son/deepinfra
cobycloud Nov 14, 2024
a19dc51
swarm - workflow fix
MichaelDecent Nov 14, 2024
d32b581
swarm - blackforest
3rd-Son Nov 14, 2024
c54e66e
swarm - fix for print_notebook_meta_data
MichaelDecent Nov 14, 2024
21ec5ea
swarm - minor change
MichaelDecent Nov 14, 2024
628b6c8
swarm - minor fix
MichaelDecent Nov 14, 2024
593746d
Merge pull request #800 from 3rd-Son/blackforest
cobycloud Nov 14, 2024
2b825e4
Merge pull request #801 from MichaelDecent/print_notebook_fix
cobycloud Nov 14, 2024
dde0d55
swarm - clean up
MichaelDecent Nov 14, 2024
aacd3ff
swarm - final fix
MichaelDecent Nov 14, 2024
3221d80
Merge pull request #802 from MichaelDecent/print_notebook_fix
cobycloud Nov 14, 2024
cd9afeb
Merge pull request #799 from MichaelDecent/workflow_fix
cobycloud Nov 15, 2024
0da2eb4
swarm - minor fix
MichaelDecent Nov 15, 2024
a901ad5
swarm - minor fix
MichaelDecent Nov 15, 2024
82b87ea
Merge pull request #803 from MichaelDecent/0.5.2dev
cobycloud Nov 15, 2024
38ad5b5
swarmauri - remove LLM dependencies
cobycloud Nov 15, 2024
38ed457
cicd - add black forest labs key
cobycloud Nov 15, 2024
ab70a01
Update FalAIVisionModel_unit_test.py
cobycloud Nov 15, 2024
0e73592
Update FalAIVisionModel_unit_test.py
cobycloud Nov 15, 2024
1ddae46
Update FalAIImgGenModel_unit_test.py
cobycloud Nov 15, 2024
a5672f4
Update publish_dev.yml
cobycloud Nov 15, 2024
dda7bd1
Update FalAIImgGenModel_unit_test.py
cobycloud Nov 15, 2024
10d390f
Update FalAIVisionModel_unit_test.py
cobycloud Nov 15, 2024
8232d45
Merge pull request #804 from swarmauri/cobycloud-patch-1
cobycloud Nov 15, 2024
dead2f8
swarm - update pyproject.toml
cobycloud Nov 15, 2024
9c5e63c
swarm - Update GroqToolModel_unit_test.py
cobycloud Nov 15, 2024
86d6509
Merge remote-tracking branch 'upstream/dev' into 0.5.2dev
MichaelDecent Nov 15, 2024
cecf57a
swarm - fixed cohere warning
3rd-Son Nov 15, 2024
09456b6
Merge pull request #807 from 3rd-Son/cohere
cobycloud Nov 15, 2024
7c65eb7
swarm - fixed cohere closed loop error
3rd-Son Nov 15, 2024
3f4b30a
swarm - fixed GeminiSchemaConverter
MichaelDecent Nov 15, 2024
a2bd4b4
Merge pull request #808 from 3rd-Son/cohere
cobycloud Nov 15, 2024
4adff0a
Merge pull request #809 from MichaelDecent/0.5.2dev
cobycloud Nov 15, 2024
3deacde
swarm - Enhance retry decorator to support both sync and async functions
MichaelDecent Nov 17, 2024
1822a46
Merge pull request #810 from MichaelDecent/0.5.2dev
cobycloud Nov 17, 2024
3f61898
swarm - fixed falAIImgGen
3rd-Son Nov 18, 2024
8075ef9
swarm - removed failing model
MichaelDecent Nov 18, 2024
d7b1ac8
swarm - fixed faaivision
3rd-Son Nov 18, 2024
729b2ba
swarm fixed FalAi
3rd-Son Nov 18, 2024
2ed1c48
Merge pull request #811 from MichaelDecent/0.5.2dev
cobycloud Nov 18, 2024
273aa8f
Merge pull request #812 from 3rd-Son/falAI
cobycloud Nov 18, 2024
2be5b6e
swarm - add retry logic to all llms
MichaelDecent Nov 18, 2024
fc26ad6
swarm - minor change
MichaelDecent Nov 18, 2024
1670ff3
swarm - update retry logic for API calls to reduce max retries
MichaelDecent Nov 18, 2024
84a52b3
Merge pull request #813 from MichaelDecent/0.5.2dev
cobycloud Nov 18, 2024
8e66619
swarm - fix on fal ai models
MichaelDecent Nov 18, 2024
515d2d2
Merge pull request #814 from MichaelDecent/0.5.2dev
cobycloud Nov 18, 2024
b4cc161
swarm - updated the error message of retry decorator and minor update
MichaelDecent Nov 18, 2024
dc90cdb
Merge pull request #815 from MichaelDecent/0.5.2dev
cobycloud Nov 18, 2024
50f83d1
cicd - create force_publish.yaml
cobycloud Nov 18, 2024
5750fb8
cicd - update force_publish.yaml
cobycloud Nov 18, 2024
4df564f
cicd - update force_publish.yaml
cobycloud Nov 18, 2024
9bb09f4
Delete pkgs/core/setup.py
cobycloud Nov 18, 2024
d596b04
core - Update pyproject.toml
cobycloud Nov 18, 2024
0a741a5
Merge pull request #816 from swarmauri/mono/release
cobycloud Nov 18, 2024
cadc837
cicd - Update publish_dev.yml
cobycloud Nov 18, 2024
17e45b3
swarm - Update pyproject.toml
cobycloud Nov 18, 2024
541c5d3
community - Delete pkgs/community/setup.py
cobycloud Nov 18, 2024
cb4ac1f
comm - Update pyproject.toml
cobycloud Nov 18, 2024
ec21bdd
comm - Update pyproject.toml
cobycloud Nov 18, 2024
3c6a714
exp - Delete pkgs/experimental/setup.py
cobycloud Nov 18, 2024
c5eef7c
exp - update pyproject.toml
cobycloud Nov 18, 2024
8fe6181
mono - Merge pull request #817 from swarmauri/mono/release
cobycloud Nov 18, 2024
ae7e2e3
cicd - Update publish_dev.yml
cobycloud Nov 18, 2024
19eeae8
cicd - Create sequence_publish.yaml
cobycloud Nov 18, 2024
58c3ac8
cicd - Update publish_dev.yml
cobycloud Nov 18, 2024
1e9cf76
cicd - Update sequence_publish.yaml
cobycloud Nov 18, 2024
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
117 changes: 117 additions & 0 deletions .github/workflows/force_publish.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
name: Publish Release

on:

push:
tags: ["v*"]
paths:
- 'pkgs/community/**'
- 'pkgs/core/**'
- 'pkgs/experimental/**'
- 'pkgs/partners/**'
- 'pkgs/swarmauri/**'
workflow_dispatch:

jobs:
detect-changes:
runs-on: self-hosted
outputs:
packages: ${{ steps.packages.outputs.packages }}

steps:
- uses: actions/checkout@v4
- name: Detect Changed Packages
id: packages
run: |
git fetch origin ${{ github.event.before }}
git diff --name-only ${{ github.event.before }} ${{ github.sha }} > changed_files.txt
CHANGED_PACKAGES=$(cat changed_files.txt | grep -oE '^pkgs/(community|core|experimental|partners|swarmauri)' | cut -d/ -f2 | sort -u | tr '\n' ',' | sed 's/,$//')

if [ -z "$CHANGED_PACKAGES" ]; then
CHANGED_PACKAGES_ARRAY="[]"
else
CHANGED_PACKAGES_ARRAY=$(echo "[\"$(echo $CHANGED_PACKAGES | sed 's/,/","/g')\"]")
fi

echo "packages=$CHANGED_PACKAGES_ARRAY" >> $GITHUB_OUTPUT

build-publish:
needs: detect-changes
runs-on: self-hosted
strategy:
fail-fast: false
matrix:
python-version: ["3.12"]
package: ${{ fromJSON(needs.detect-changes.outputs.packages) }}

env:
UNIQUE_VENV_PATH: "${{ github.workspace }}/.venv_${{ github.run_id }}_${{ matrix.package }}"
DANGER_MASTER_PYPI_API_TOKEN: ${{ secrets.DANGER_MASTER_PYPI_API_TOKEN }}
PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }}

steps:
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install Poetry
run: |
curl -sSL https://install.python-poetry.org | python3 -
echo "PATH=$HOME/.local/bin:$PATH" >> $GITHUB_ENV

- name: Create unique virtual environment for package
run: |
UNIQUE_VENV_PATH=".venv_${{ github.run_id }}_${{ matrix.package }}"
python -m venv $UNIQUE_VENV_PATH

- name: Install dependencies with Poetry
run: |
source $UNIQUE_VENV_PATH/bin/activate
cd pkgs/${{ matrix.package }}
poetry install --no-cache -vv --all-extras

- name: Lint with flake8
run: |
source $UNIQUE_VENV_PATH/bin/activate
cd pkgs/${{ matrix.package }}
poetry run flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
poetry run flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics

- name: Build package with Poetry
run: |
source $UNIQUE_VENV_PATH/bin/activate
cd pkgs/${{ matrix.package }}
poetry build

- name: Get pip freeze
run: |
source $UNIQUE_VENV_PATH/bin/activate
pip freeze

- name: List package sizes
run: |
source $UNIQUE_VENV_PATH/bin/activate
python scripts/list_site_package_sizes.py
continue-on-error: false

- name: Show total sitepackage size
run: |
source $UNIQUE_VENV_PATH/bin/activate
python scripts/total_site_packages_size.py
continue-on-error: false

- name: Publish to PyPI
if: github.ref_type == 'tag' && success() # Only publish on tag
uses: pypa/gh-action-pypi-publish@v1.4.2
with:
user: __token__
password: ${{ secrets.DANGER_MASTER_PYPI_API_TOKEN }}
packages_dir: dist

- name: Clean up virtual environment
if: always()
run: |
rm -rf ${{ env.UNIQUE_VENV_PATH }}
78 changes: 37 additions & 41 deletions .github/workflows/publish_dev.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,7 @@
name: Test and Publish Dev Release
name: Test Release

on:
push:
branches: ["*dev*"]
paths:
- 'pkgs/community/**'
- 'pkgs/core/**'
- 'pkgs/experimental/**'
- 'pkgs/partners/**'
- 'pkgs/swarmauri/**'
workflow_dispatch:

jobs:
detect-changes:
Expand All @@ -26,17 +19,12 @@ jobs:
CHANGED_PACKAGES=$(cat changed_files.txt | grep -oE '^pkgs/(community|core|experimental|partners|swarmauri)' | cut -d/ -f2 | sort -u | tr '\n' ',' | sed 's/,$//')

if [ -z "$CHANGED_PACKAGES" ]; then
# If no packages changed, set to an empty array
CHANGED_PACKAGES_ARRAY="[]"
else
# Convert the comma-separated packages to a JSON array format
CHANGED_PACKAGES_ARRAY=$(echo "[\"$(echo $CHANGED_PACKAGES | sed 's/,/","/g')\"]")
fi

# Export it to GITHUB_OUTPUT in JSON format
echo "packages=$CHANGED_PACKAGES_ARRAY"
echo "packages=$CHANGED_PACKAGES_ARRAY" >> $GITHUB_OUTPUT


test:
needs: detect-changes
Expand All @@ -47,23 +35,25 @@ jobs:
python-version: ["3.12"]
package: ${{ fromJSON(needs.detect-changes.outputs.packages) }}

env:
# Model Provider Keys
env:
UNIQUE_VENV_PATH: "${{ github.workspace }}/.venv_${{ github.run_id }}_${{ matrix.package }}"
GITHUB_REF: ${{ github.ref }}
PKG_PATH: "${{ matrix.package }}"
AI21STUDIO_API_KEY: ${{ secrets.AI21STUDIO_API_KEY }}
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
COHERE_API_KEY: ${{ secrets.COHERE_API_KEY }}
BLACKFOREST_API_KEY: ${{ secrets.BLACKFOREST_API_KEY }}
DEEPINFRA_API_KEY: ${{ secrets.DEEPINFRA_API_KEY }}
DEEPSEEK_API_KEY: ${{ secrets.DEEPSEEK_API_KEY }}
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
GROQ_API_KEY: ${{ secrets.GROQ_API_KEY }}
FAL_API_KEY: ${{ secrets.FAL_API_KEY }}
LEPTON_API_KEY: ${{ secrets.LEPTON_API_KEY }}
MISTRAL_API_KEY: ${{ secrets.MISTRAL_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
PERPLEXITY_API_KEY: ${{ secrets.PERPLEXITY_API_KEY }}
SHUTTLEAI_API_KEY: ${{ secrets.SHUTTLEAI_API_KEY }}

# Database Keys
CHROMADB_COLLECTION_NAME: ${{ secrets.CHROMADB_COLLECTION_NAME }}
NEO4J_COLLECTION_NAME: ${{ secrets.NEO4J_COLLECTION_NAME }}
NEO4J_PASSWORD: ${{ secrets.NEO4J_PASSWORD }}
Expand All @@ -78,18 +68,9 @@ jobs:
REDIS_PORT: ${{ secrets.REDIS_PORT }}
WEAVIATE_API_KEY: ${{ secrets.WEAVIATE_API_KEY }}
WEAVIATE_URL: ${{ secrets.WEAVIATE_URL }}

# GitHub Keys
GITHUBTOOL_TEST_REPO_NAME: ${{ secrets.GITHUBTOOL_TEST_REPO_NAME }}
GITHUBTOOL_TEST_REPO_OWNER: ${{ secrets.GITHUBTOOL_TEST_REPO_OWNER }}
GITHUBTOOL_TEST_TOKEN: ${{ secrets.GITHUBTOOL_TEST_TOKEN }}

# Miscellaneous Tokens
DANGER_MASTER_PYPI_API_TOKEN: ${{ secrets.DANGER_MASTER_PYPI_API_TOKEN }}
PYPI_API_TOKEN: ${{ secrets.PYPI_API_TOKEN }}




steps:
- uses: actions/checkout@v4
Expand All @@ -104,36 +85,53 @@ jobs:
curl -sSL https://install.python-poetry.org | python3 -
echo "PATH=$HOME/.local/bin:$PATH" >> $GITHUB_ENV

- name: Create unique virtual environment for package
run: |
UNIQUE_VENV_PATH=".venv_${{ github.run_id }}_${{ matrix.package }}"
python -m venv $UNIQUE_VENV_PATH

- name: Install dependencies with Poetry
run: |
source $UNIQUE_VENV_PATH/bin/activate
cd pkgs/${{ matrix.package }}
poetry install --no-cache -vv
poetry install --no-cache -vv --all-extras

- name: Lint with flake8
run: |
source $UNIQUE_VENV_PATH/bin/activate
cd pkgs/${{ matrix.package }}
poetry run flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
poetry run flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics

- name: Build package with Poetry
run: |
source $UNIQUE_VENV_PATH/bin/activate
cd pkgs/${{ matrix.package }}
poetry build

- name: Install built package
run: |
LATEST_WHL=$(ls pkgs/${{ matrix.package }}/dist/*.whl | sort -V | tail -n 1)
python -m pip install "$LATEST_WHL" --no-cache-dir

- name: Get pip freeze
run: |
source $UNIQUE_VENV_PATH/bin/activate
pip freeze

- name: List package sizes
run: |
source $UNIQUE_VENV_PATH/bin/activate
python scripts/list_site_package_sizes.py
continue-on-error: false

- name: Show total sitepackage size
run: |
source $UNIQUE_VENV_PATH/bin/activate
python scripts/total_site_packages_size.py
continue-on-error: false

- name: Run tests
continue-on-error: true
run: |
source $UNIQUE_VENV_PATH/bin/activate
cd pkgs/${{ matrix.package }}
poetry run pytest -v . --junitxml=results.xml
poetry run pytest -v . --junitxml=results.xml -n 4 --dist=loadfile

- name: Output test results for debugging
run: |
Expand All @@ -142,13 +140,11 @@ jobs:

- name: Classify test results
run: |
source $UNIQUE_VENV_PATH/bin/activate
python scripts/classify_results.py pkgs/${{ matrix.package }}/results.xml
continue-on-error: false

- name: Publish to PyPI
if: success()
uses: pypa/gh-action-pypi-publish@v1.4.2
with:
user: cobycloud
password: ${{ secrets.DANGER_MASTER_PYPI_API_TOKEN }}
packages_dir: pkgs/${{ matrix.package }}/dist
- name: Clean up virtual environment
if: always()
run: |
rm -rf ${{ env.UNIQUE_VENV_PATH }}
Loading