Skip to content

Commit 020c517

Browse files
authored
Merge pull request Pipelex#153 from Pipelex/release/v0.6.0
### Changed - **Enhanced `Pipelex.make()` method**: Complete overhaul of the initialization method with new path configuration options and robust validation: - Added `relative_config_folder_path` and `absolute_config_folder_path` parameters for flexible config folder specification - The `from_file` parameter controls path resolution: if `True` (default), relative paths are resolved relative to the caller's file location; if `False`, relative to the current working directory (useful for CLI scenarios) - Renamed Makefile targets like `make doc` to `make docs` for consistency ### Added - Added github action for inference tests - `load_json_list_from_path` function in `pipelex.tools.misc.file_utils`: Loads a JSON file and ensures it contains a list. - Added issue templates - Updated Azure/OpenAI integrations, using dated deployment names systematically
2 parents f8ad36e + 2e9752c commit 020c517

45 files changed

Lines changed: 596 additions & 229 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.cursor/rules/llms.mdc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ An llm_handle matches the handle (an id of sorts) with the full specification of
2020
The declaration of llm_handles looks like this in toml syntax:
2121
```toml
2222
[llm_handles]
23-
gpt-4o-2024-08-06 = { llm_name = "gpt-4o", llm_version = "2024-08-06" }
23+
gpt-4o-2024-11-20 = { llm_name = "gpt-4o", llm_version = "2024-11-20" }
2424
```
2525

2626
In mosty cases, we only want to use version "latest" and llm_platform_choice "default" in which case the declaration is simply a match of the llm_handle to the llm_name, like this:

.github/DISCUSSION_TEMPLATE/new_idea.md

Lines changed: 0 additions & 52 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: 💬 Ask a question
4+
url: https://github.com/Pipelex/pipelex/discussions
5+
about: "Please start a Discussion instead of filing a blank issue."

.github/ISSUE_TEMPLATE/feature_request.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,15 @@ body:
3333
id: proposal
3434
attributes:
3535
label: "Proposed solution"
36-
placeholder: "Describe the feature youd like to see."
36+
placeholder: "Describe the feature you'd like to see."
3737
validations:
3838
required: false
3939

4040
- type: textarea
4141
id: alternatives
4242
attributes:
4343
label: "Alternatives considered"
44-
placeholder: "Any work-arounds youve tried or other approaches you considered."
44+
placeholder: "Any work-arounds you've tried or other approaches you considered."
4545
validations:
4646
required: false
4747

.github/ISSUE_TEMPLATE/general.yml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: "📝 General issue"
2+
description: "Use this for questions, docs tweaks, refactors, or anything that isn't a Bug or Feature request."
3+
type: Task
4+
labels:
5+
- status:needs-triage
6+
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
**Thanks for opening an issue!**
12+
This form is for ideas or tasks that don't fit the Bug or Feature templates.
13+
14+
- type: checkboxes
15+
id: confirmations
16+
attributes:
17+
label: "Before submitting"
18+
options:
19+
- label: "I've checked [open issues](issues?q=is%3Aissue%20state%3Aopen) and found no similar item"
20+
required: true
21+
- label: "It's not really a bug report or a feature request"
22+
required: false
23+
24+
- type: textarea
25+
id: summary
26+
attributes:
27+
label: "What would you like to discuss or change?"
28+
placeholder: |
29+
A clear, concise description of the question, enhancement, refactor, or documentation update.
30+
validations:
31+
required: true
32+
33+
- type: textarea
34+
id: context
35+
attributes:
36+
label: "Relevant context (optional)"
37+
placeholder: |
38+
Links, screenshots, or any additional details that will help us understand.
39+
validations:
40+
required: false
41+
42+
- type: dropdown
43+
id: contribution
44+
attributes:
45+
label: Would you like to help drive or implement this?
46+
options:
47+
- "Not at this time"
48+
- "Yes, I'd like to contribute"
49+
validations:
50+
required: false

.github/pipelex_labels.json

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
[
2+
{
3+
"name": "priority:P0",
4+
"color": "B60205",
5+
"description": "Critical — stop the line"
6+
},
7+
{
8+
"name": "priority:P1",
9+
"color": "D93F0B",
10+
"description": "High priority"
11+
},
12+
{
13+
"name": "priority:P2",
14+
"color": "E36209",
15+
"description": "Normal priority"
16+
},
17+
{
18+
"name": "priority:P3",
19+
"color": "FBCA04",
20+
"description": "Low priority"
21+
},
22+
{
23+
"name": "status:needs-triage",
24+
"color": "A2BFFC",
25+
"description": "Awaiting triage"
26+
},
27+
{
28+
"name": "status:needs-info",
29+
"color": "1E90FF",
30+
"description": "Needs more information"
31+
},
32+
{
33+
"name": "status:blocked",
34+
"color": "004385",
35+
"description": "Work is blocked"
36+
},
37+
{
38+
"name": "status:in-progress",
39+
"color": "0969DA",
40+
"description": "Currently being worked on"
41+
},
42+
{
43+
"name": "status:review",
44+
"color": "6CA4F8",
45+
"description": "Awaiting code review"
46+
},
47+
{
48+
"name": "status:done",
49+
"color": "14866D",
50+
"description": "Completed / merged"
51+
},
52+
{
53+
"name": "status:duplicate",
54+
"color": "6F42C1",
55+
"description": "May close as soon as it's verified."
56+
},
57+
{
58+
"name": "status:not-planned",
59+
"color": "6A737D",
60+
"description": "Signals a likely won't-fix before formal closure."
61+
},
62+
{
63+
"name": "status:invalid",
64+
"color": "E4E669",
65+
"description": "Needs more info or out of scope."
66+
},
67+
{
68+
"name": "area:api",
69+
"color": "0E8A16",
70+
"description": "Backend & public API"
71+
},
72+
{
73+
"name": "area:cli",
74+
"color": "1A7F37",
75+
"description": "Command-line interface"
76+
},
77+
{
78+
"name": "area:core",
79+
"color": "005630",
80+
"description": "Core library logic"
81+
},
82+
{
83+
"name": "area:docs",
84+
"color": "28A745",
85+
"description": "Documentation"
86+
},
87+
{
88+
"name": "area:tests",
89+
"color": "7FDA9E",
90+
"description": "Unit / integration / e2e tests"
91+
},
92+
{
93+
"name": "good first issue",
94+
"color": "FFD33D",
95+
"description": "Great for new contributors"
96+
},
97+
{
98+
"name": "help wanted",
99+
"color": "FFEA7F",
100+
"description": "Maintainers would love help"
101+
}
102+
]
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,4 @@ jobs:
3333
run: uv pip install -e ".[docs]"
3434

3535
- name: Deploy documentation
36-
run: make doc-deploy
36+
run: make docs-deploy
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: Manual trigger tests check
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
- dev
8+
- "release/v[0-9]+.[0-9]+.[0-9]+"
9+
workflow_dispatch:
10+
11+
jobs:
12+
trigger-tests:
13+
runs-on: ubuntu-latest
14+
environment:
15+
name: manual-trigger-tests-check
16+
url: ${{ github.server_url }}/${{ github.repository }}/deployments/activity_log?environment=manual-trigger-tests-check
17+
steps:
18+
- name: Initialize check
19+
run: |
20+
echo "Initializing manual trigger tests check..."
21+
22+
matrix-test:
23+
name: Manual trigger tests check
24+
needs: [trigger-tests]
25+
runs-on: ubuntu-latest
26+
strategy:
27+
fail-fast: false
28+
matrix:
29+
python-version: ["3.10", "3.11", "3.12", "3.13"]
30+
permissions:
31+
contents: read
32+
id-token: write
33+
packages: read
34+
actions: read
35+
repository-projects: read
36+
env:
37+
VIRTUAL_ENV: ${{ github.workspace }}/.venv
38+
ENV: dev
39+
40+
steps:
41+
- uses: actions/checkout@v4
42+
43+
- name: Configure AWS Credentials
44+
uses: aws-actions/configure-aws-credentials@v4
45+
with:
46+
role-to-assume: arn:aws:iam::975050286103:role/GitHubActionsRole
47+
aws-region: eu-west-3
48+
49+
- name: Set up Python ${{ matrix.python-version }}
50+
uses: actions/setup-python@v4
51+
with:
52+
python-version: ${{ matrix.python-version }}
53+
54+
- name: Check UV installation
55+
run: make check-uv
56+
57+
- name: Verify UV installation
58+
run: uv --version
59+
60+
- name: Install dependencies
61+
run: PYTHON_VERSION=${{ matrix.python-version }} make install
62+
63+
- name: Boot test
64+
run: make tp TEST=TestFundamentals
65+
66+
- name: Run tests
67+
run: make run-manual-trigger-gha-tests

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
11
# Changelog
22

3+
## [v0.6.0] - 2025-07-15
4+
5+
### Changed
6+
- **Enhanced `Pipelex.make()` method**: Complete overhaul of the initialization method with new path configuration options and robust validation:
7+
- Added `relative_config_folder_path` and `absolute_config_folder_path` parameters for flexible config folder specification
8+
- The `from_file` parameter controls path resolution: if `True` (default), relative paths are resolved relative to the caller's file location; if `False`, relative to the current working directory (useful for CLI scenarios)
9+
- Renamed Makefile targets like `make doc` to `make docs` for consistency
10+
11+
### Added
12+
- Added github action for inference tests
13+
- `load_json_list_from_path` function in `pipelex.tools.misc.file_utils`: Loads a JSON file and ensures it contains a list.
14+
- Added issue templates
15+
- Updated Azure/OpenAI integrations, using dated deployment names systematically
16+
317
## [v0.5.2] - 2025-07-11
418

519
- log a warning when dry running a `PipeFunc`

0 commit comments

Comments
 (0)