mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-05-01 07:13:00 +00:00
docs: update changelog and version for v1.14.1
This commit is contained in:
33
.github/workflows/linter.yml
vendored
33
.github/workflows/linter.yml
vendored
@@ -1,16 +1,29 @@
|
|||||||
name: Lint
|
name: Lint
|
||||||
|
|
||||||
on:
|
on: [pull_request]
|
||||||
pull_request:
|
|
||||||
paths-ignore:
|
|
||||||
- 'docs/**'
|
|
||||||
- '**/*.md'
|
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
changes:
|
||||||
|
name: Detect changes
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
code: ${{ steps.filter.outputs.code }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- uses: dorny/paths-filter@v3
|
||||||
|
id: filter
|
||||||
|
with:
|
||||||
|
filters: |
|
||||||
|
code:
|
||||||
|
- '!docs/**'
|
||||||
|
- '!**/*.md'
|
||||||
|
|
||||||
lint-run:
|
lint-run:
|
||||||
|
needs: changes
|
||||||
|
if: needs.changes.outputs.code == 'true'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -57,12 +70,16 @@ jobs:
|
|||||||
lint:
|
lint:
|
||||||
name: lint
|
name: lint
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: lint-run
|
needs: [changes, lint-run]
|
||||||
if: always()
|
if: always()
|
||||||
steps:
|
steps:
|
||||||
- name: Check lint results
|
- name: Check results
|
||||||
run: |
|
run: |
|
||||||
if [ "${{ needs.lint-run.result }}" == "success" ] || [ "${{ needs.lint-run.result }}" == "skipped" ]; then
|
if [ "${{ needs.changes.outputs.code }}" != "true" ]; then
|
||||||
|
echo "Docs-only change, skipping lint"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ "${{ needs.lint-run.result }}" == "success" ]; then
|
||||||
echo "Lint passed"
|
echo "Lint passed"
|
||||||
else
|
else
|
||||||
echo "Lint failed"
|
echo "Lint failed"
|
||||||
|
|||||||
33
.github/workflows/tests.yml
vendored
33
.github/workflows/tests.yml
vendored
@@ -1,17 +1,30 @@
|
|||||||
name: Run Tests
|
name: Run Tests
|
||||||
|
|
||||||
on:
|
on: [pull_request]
|
||||||
pull_request:
|
|
||||||
paths-ignore:
|
|
||||||
- 'docs/**'
|
|
||||||
- '**/*.md'
|
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
changes:
|
||||||
|
name: Detect changes
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
code: ${{ steps.filter.outputs.code }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- uses: dorny/paths-filter@v3
|
||||||
|
id: filter
|
||||||
|
with:
|
||||||
|
filters: |
|
||||||
|
code:
|
||||||
|
- '!docs/**'
|
||||||
|
- '!**/*.md'
|
||||||
|
|
||||||
tests-matrix:
|
tests-matrix:
|
||||||
name: tests (${{ matrix.python-version }})
|
name: tests (${{ matrix.python-version }})
|
||||||
|
needs: changes
|
||||||
|
if: needs.changes.outputs.code == 'true'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
timeout-minutes: 15
|
timeout-minutes: 15
|
||||||
strategy:
|
strategy:
|
||||||
@@ -107,12 +120,16 @@ jobs:
|
|||||||
tests:
|
tests:
|
||||||
name: tests
|
name: tests
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: tests-matrix
|
needs: [changes, tests-matrix]
|
||||||
if: always()
|
if: always()
|
||||||
steps:
|
steps:
|
||||||
- name: Check matrix results
|
- name: Check results
|
||||||
run: |
|
run: |
|
||||||
if [ "${{ needs.tests-matrix.result }}" == "success" ] || [ "${{ needs.tests-matrix.result }}" == "skipped" ]; then
|
if [ "${{ needs.changes.outputs.code }}" != "true" ]; then
|
||||||
|
echo "Docs-only change, skipping tests"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ "${{ needs.tests-matrix.result }}" == "success" ]; then
|
||||||
echo "All tests passed"
|
echo "All tests passed"
|
||||||
else
|
else
|
||||||
echo "Tests failed"
|
echo "Tests failed"
|
||||||
|
|||||||
37
.github/workflows/type-checker.yml
vendored
37
.github/workflows/type-checker.yml
vendored
@@ -1,17 +1,30 @@
|
|||||||
name: Run Type Checks
|
name: Run Type Checks
|
||||||
|
|
||||||
on:
|
on: [pull_request]
|
||||||
pull_request:
|
|
||||||
paths-ignore:
|
|
||||||
- 'docs/**'
|
|
||||||
- '**/*.md'
|
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
|
changes:
|
||||||
|
name: Detect changes
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
code: ${{ steps.filter.outputs.code }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- uses: dorny/paths-filter@v3
|
||||||
|
id: filter
|
||||||
|
with:
|
||||||
|
filters: |
|
||||||
|
code:
|
||||||
|
- '!docs/**'
|
||||||
|
- '!**/*.md'
|
||||||
|
|
||||||
type-checker-matrix:
|
type-checker-matrix:
|
||||||
name: type-checker (${{ matrix.python-version }})
|
name: type-checker (${{ matrix.python-version }})
|
||||||
|
needs: changes
|
||||||
|
if: needs.changes.outputs.code == 'true'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
@@ -61,14 +74,18 @@ jobs:
|
|||||||
type-checker:
|
type-checker:
|
||||||
name: type-checker
|
name: type-checker
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: type-checker-matrix
|
needs: [changes, type-checker-matrix]
|
||||||
if: always()
|
if: always()
|
||||||
steps:
|
steps:
|
||||||
- name: Check matrix results
|
- name: Check results
|
||||||
run: |
|
run: |
|
||||||
if [ "${{ needs.type-checker-matrix.result }}" == "success" ] || [ "${{ needs.type-checker-matrix.result }}" == "skipped" ]; then
|
if [ "${{ needs.changes.outputs.code }}" != "true" ]; then
|
||||||
echo "✅ All type checks passed"
|
echo "Docs-only change, skipping type checks"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ "${{ needs.type-checker-matrix.result }}" == "success" ]; then
|
||||||
|
echo "All type checks passed"
|
||||||
else
|
else
|
||||||
echo "❌ Type checks failed"
|
echo "Type checks failed"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -4,6 +4,39 @@ description: "تحديثات المنتج والتحسينات وإصلاحات
|
|||||||
icon: "clock"
|
icon: "clock"
|
||||||
mode: "wide"
|
mode: "wide"
|
||||||
---
|
---
|
||||||
|
<Update label="9 أبريل 2026">
|
||||||
|
## v1.14.1
|
||||||
|
|
||||||
|
[عرض الإصدار على GitHub](https://github.com/crewAIInc/crewAI/releases/tag/1.14.1)
|
||||||
|
|
||||||
|
## ما الذي تغير
|
||||||
|
|
||||||
|
### الميزات
|
||||||
|
- إضافة متصفح TUI لنقاط التفتيش غير المتزامنة
|
||||||
|
- إضافة دالة aclose()/close() ومدير سياق غير متزامن لمخرجات البث
|
||||||
|
|
||||||
|
### إصلاحات الأخطاء
|
||||||
|
- إصلاح التعبير النمطي لزيادة إصدار pyproject.toml
|
||||||
|
- تنظيف أسماء الأدوات في مرشحات زخرفة الخطاف
|
||||||
|
- إصلاح تسجيل معالجات نقاط التفتيش عند إنشاء CheckpointConfig
|
||||||
|
- رفع إصدار transformers إلى 5.5.0 لحل CVE-2026-1839
|
||||||
|
- إزالة غلاف FilteredStream لـ stdout/stderr
|
||||||
|
|
||||||
|
### الوثائق
|
||||||
|
- تحديث سجل التغييرات والإصدار لـ v1.14.1rc1
|
||||||
|
|
||||||
|
### إعادة الهيكلة
|
||||||
|
- استبدال القائمة المحظورة الثابتة باستبعاد حقل BaseTool الديناميكي في توليد المواصفات
|
||||||
|
- استبدال التعبير النمطي بـ tomlkit في واجهة سطر أوامر أدوات التطوير
|
||||||
|
- استخدام كائن PRINTER المشترك
|
||||||
|
- جعل BaseProvider نموذجاً أساسياً مع مميز نوع المزود
|
||||||
|
|
||||||
|
## المساهمون
|
||||||
|
|
||||||
|
@greysonlalonde, @iris-clawd, @joaomdmoura, @lorenzejay
|
||||||
|
|
||||||
|
</Update>
|
||||||
|
|
||||||
<Update label="9 أبريل 2026">
|
<Update label="9 أبريل 2026">
|
||||||
## v1.14.1rc1
|
## v1.14.1rc1
|
||||||
|
|
||||||
|
|||||||
1879
docs/docs.json
1879
docs/docs.json
File diff suppressed because it is too large
Load Diff
@@ -4,6 +4,39 @@ description: "Product updates, improvements, and bug fixes for CrewAI"
|
|||||||
icon: "clock"
|
icon: "clock"
|
||||||
mode: "wide"
|
mode: "wide"
|
||||||
---
|
---
|
||||||
|
<Update label="Apr 09, 2026">
|
||||||
|
## v1.14.1
|
||||||
|
|
||||||
|
[View release on GitHub](https://github.com/crewAIInc/crewAI/releases/tag/1.14.1)
|
||||||
|
|
||||||
|
## What's Changed
|
||||||
|
|
||||||
|
### Features
|
||||||
|
- Add async checkpoint TUI browser
|
||||||
|
- Add aclose()/close() and async context manager to streaming outputs
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
- Fix regex for template pyproject.toml version bumps
|
||||||
|
- Sanitize tool names in hook decorator filters
|
||||||
|
- Fix checkpoint handlers registration when CheckpointConfig is created
|
||||||
|
- Bump transformers to 5.5.0 to resolve CVE-2026-1839
|
||||||
|
- Remove FilteredStream stdout/stderr wrapper
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
- Update changelog and version for v1.14.1rc1
|
||||||
|
|
||||||
|
### Refactoring
|
||||||
|
- Replace hardcoded denylist with dynamic BaseTool field exclusion in spec gen
|
||||||
|
- Replace regex with tomlkit in devtools CLI
|
||||||
|
- Use shared PRINTER singleton
|
||||||
|
- Make BaseProvider a BaseModel with provider_type discriminator
|
||||||
|
|
||||||
|
## Contributors
|
||||||
|
|
||||||
|
@greysonlalonde, @iris-clawd, @joaomdmoura, @lorenzejay
|
||||||
|
|
||||||
|
</Update>
|
||||||
|
|
||||||
<Update label="Apr 09, 2026">
|
<Update label="Apr 09, 2026">
|
||||||
## v1.14.1rc1
|
## v1.14.1rc1
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,39 @@ description: "CrewAI의 제품 업데이트, 개선 사항 및 버그 수정"
|
|||||||
icon: "clock"
|
icon: "clock"
|
||||||
mode: "wide"
|
mode: "wide"
|
||||||
---
|
---
|
||||||
|
<Update label="2026년 4월 9일">
|
||||||
|
## v1.14.1
|
||||||
|
|
||||||
|
[GitHub 릴리스 보기](https://github.com/crewAIInc/crewAI/releases/tag/1.14.1)
|
||||||
|
|
||||||
|
## 변경 사항
|
||||||
|
|
||||||
|
### 기능
|
||||||
|
- 비동기 체크포인트 TUI 브라우저 추가
|
||||||
|
- 스트리밍 출력에 aclose()/close() 및 비동기 컨텍스트 관리자 추가
|
||||||
|
|
||||||
|
### 버그 수정
|
||||||
|
- 템플릿 pyproject.toml 버전 증가를 위한 정규 표현식 수정
|
||||||
|
- 훅 데코레이터 필터에서 도구 이름 정리
|
||||||
|
- CheckpointConfig 생성 시 체크포인트 핸들러 등록 수정
|
||||||
|
- CVE-2026-1839 해결을 위해 transformers를 5.5.0으로 업데이트
|
||||||
|
- FilteredStream stdout/stderr 래퍼 제거
|
||||||
|
|
||||||
|
### 문서
|
||||||
|
- v1.14.1rc1에 대한 변경 로그 및 버전 업데이트
|
||||||
|
|
||||||
|
### 리팩토링
|
||||||
|
- 하드코딩된 거부 목록을 동적 BaseTool 필드 제외로 교체
|
||||||
|
- devtools CLI에서 정규 표현식을 tomlkit으로 교체
|
||||||
|
- 공유 PRINTER 싱글톤 사용
|
||||||
|
- BaseProvider를 provider_type 식별자가 있는 BaseModel로 변경
|
||||||
|
|
||||||
|
## 기여자
|
||||||
|
|
||||||
|
@greysonlalonde, @iris-clawd, @joaomdmoura, @lorenzejay
|
||||||
|
|
||||||
|
</Update>
|
||||||
|
|
||||||
<Update label="2026년 4월 9일">
|
<Update label="2026년 4월 9일">
|
||||||
## v1.14.1rc1
|
## v1.14.1rc1
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,39 @@ description: "Atualizações de produto, melhorias e correções do CrewAI"
|
|||||||
icon: "clock"
|
icon: "clock"
|
||||||
mode: "wide"
|
mode: "wide"
|
||||||
---
|
---
|
||||||
|
<Update label="09 abr 2026">
|
||||||
|
## v1.14.1
|
||||||
|
|
||||||
|
[Ver release no GitHub](https://github.com/crewAIInc/crewAI/releases/tag/1.14.1)
|
||||||
|
|
||||||
|
## O que Mudou
|
||||||
|
|
||||||
|
### Funcionalidades
|
||||||
|
- Adicionar navegador TUI de ponto de verificação assíncrono
|
||||||
|
- Adicionar aclose()/close() e gerenciador de contexto assíncrono para saídas de streaming
|
||||||
|
|
||||||
|
### Correções de Bugs
|
||||||
|
- Corrigir regex para aumentos de versão do template pyproject.toml
|
||||||
|
- Sanitizar nomes de ferramentas nos filtros do decorador de hook
|
||||||
|
- Corrigir registro de manipuladores de ponto de verificação quando CheckpointConfig é criado
|
||||||
|
- Atualizar transformers para 5.5.0 para resolver CVE-2026-1839
|
||||||
|
- Remover wrapper stdout/stderr de FilteredStream
|
||||||
|
|
||||||
|
### Documentação
|
||||||
|
- Atualizar changelog e versão para v1.14.1rc1
|
||||||
|
|
||||||
|
### Refatoração
|
||||||
|
- Substituir lista de negação codificada por exclusão dinâmica de campo BaseTool na geração de especificações
|
||||||
|
- Substituir regex por tomlkit na CLI do devtools
|
||||||
|
- Usar singleton PRINTER compartilhado
|
||||||
|
- Fazer BaseProvider um BaseModel com discriminador provider_type
|
||||||
|
|
||||||
|
## Contribuidores
|
||||||
|
|
||||||
|
@greysonlalonde, @iris-clawd, @joaomdmoura, @lorenzejay
|
||||||
|
|
||||||
|
</Update>
|
||||||
|
|
||||||
<Update label="09 abr 2026">
|
<Update label="09 abr 2026">
|
||||||
## v1.14.1rc1
|
## v1.14.1rc1
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user