---
title: "uv ve ty Araçlarını Bir Araya Getirmek"
url: https://blog.edumints.com/uv-ve-ty-araclarini-bir-araya-getirmek
category: "Yazılım"
date: 2026-10-24T07:07:29.942Z
publisher: Edumints Blog
lang: tr-TR
source_name: "Hacker News"
source_url: https://astral.sh/blog/uv-ty-integration
---

# uv ve ty Araçlarını Bir Araya Getirmek

**Özet (TL;DR):** Deneysel **uv-ty** entegrasyonu artık kullanıma sunuldu. Bu adım, Python betikleri (hem komut satırında hem de kod editöründe) için birinci sınıf destek ve birleştirilmiş bir `uv check` komutu sağlıyor. Projeyi ortak bir anlayışla ele alarak tamamen yeni yeteneklerin kapısını açan bütünleşik bir Astral araç zincirine doğru önemli bir ilerlemeyi temsil ediyor.

Astral olarak Python ekosistemi için yüksek performanslı araçlar geliştiriyoruz: paket yöneticimiz **uv**, kod denetleyici ve biçimlendiricimiz **Ruff** ve tip denetleyicimiz ile dil sunucumuz **ty**. Geçmişte her Astral aracı, Python geliştirme sürecinin farklı bir bileşenini daha verimli hale getirmeye odaklanmıştı. Ancak geleneksel olarak ayrı duran bu yetenekleri bütünleşik bir araç zincirinde birleştirerek Python'ı daha ileriye taşıma fırsatı görüyoruz.

Astral araç zinciri vizyonumuz oldukça net: Her araç tek başına kullanılabilir, faydalı ve ekosistemin geri kalanıyla uyumlu olmalı; ancak birlikte kullanıldıklarında çok daha güçlü hale gelmelidir. Bugün önizleme sürümünde erişime açılan deneysel **uv** ve **ty** entegrasyonunu duyuruyoruz. **uv** Python projenizin ortamını ve bağımlılıklarını anlarken, **ty** kodunuzu anlar. İkisini birleştirerek her iki aracın tek başına sunabileceğinin ötesinde yeni işlevlerin kilidini açıyoruz.

## Python Betikleri İçin Birinci Sınıf Destek

**PEP 723**, Python betiklerinin bağımlılıklarını ve Python sürüm gereksinimlerini satır içi üstveri (inline metadata) aracılığıyla tanımlamasına olanak tanır. **uv**, bir betiği çalıştırırken ortamı hazırlamak için bu üstveriyi zaten kullanmaktadır. Artık **ty** de betiklerinizi anlamak için bu üstveriden yararlanabiliyor.

Hem komut satırında hem de editörde **ty**, projenizdeki betikleri keşfetmek için satır içi üstverileri kullanır ve her betik için özel bir ortam hazırlamak üzere **uv**'den güç alır. Bu ortamlar, **ty**'nin betiklerinizi kendi tanımladıkları gereksinimlere göre denetlemesini sağlar.

- Aynı kod deposu (repository) içindeki betikler birbirinden farklı gereksinimlere sahip olabilir.
- Her betik, bağımlılıkları veya Python sürüm gereksinimleri içinde bulunduğu ana projeden farklı olsa bile kendi bağımlılık bildirimlerine göre denetlenir.
- Bağımlılıkları **PEP 723** ile satır içinde tanımlayabilir, dosyayı kaydederek **uv** ile senkronize edebilir ve editörünüzde **ty**'nin otomatik tamamlama, üzerine gelince bilgi gösterme (hover) ve Tanıma Git (Go to Definition) özelliklerini anında kullanabilirsiniz.

Editörünüzde bu entegrasyon etkinleştirildiğinde **ty**, betiğin ortamını arka planda hazırlamak için otomatik olarak **uv**'yi çağırır. Ardından betiğin bildirdiği gereksinimlere dayanarak tip denetimi, kodda gezinme ve tamamlama özellikleri sunar. Zamanla betik desteğini varsayılan olarak etkinleştirmeyi ve standart Python projeleri için otomatik ortam kurulumunu devreye almayı planlıyoruz.

## Birleştirilmiş Bir Denetim Komutu

`uv check`, **ty** desteğiyle başlayarak **uv**'ye birleştirilmiş bir tanılama arayüzü kazandırır. Zamanla kod denetimi (linting) ve tip kontrolünü tek bir komutta birleştirmek amacıyla `uv check` içinde **Ruff** desteği sunmayı da planlıyoruz.

- `uv check` komutunu çalıştırmak; projenizin ortamını otomatik olarak hazırlar, gerekli bağımlılıkları yükler ve projenizi **ty** ile denetler. Her şey ek bir ayara gerek kalmadan doğrudan çalışır (`uv check` komutunu hiç çalıştırmazsanız mevcut **uv** deneyiminizde hiçbir şey değişmez; **ty** ikili dosyası yalnızca ilk çağrıda ayrı olarak kurulur).
- `uv check` ile tekil paketleri veya tüm çalışma alanını (workspace) denetleyebilirsiniz. Bir çalışma alanında tek bir paketi seçmek için `uv check --package isim` komutunu veya tüm paketleri denetlemek için `uv check --all-packages` seçeneğini kullanabilirsiniz.

## Geliştiriciler İçin Pratik Çıkarımlar

- **Bağımsız Betiklerde Tam IDE Deneyimi:** Tek dosyalık veri işleme veya otomasyon betikleri yazarken sanal ortam (virtualenv) oluşturma zahmeti ortadan kalkar; **PEP 723** bildirimleri sayesinde editörünüz dış kütüphaneleri anında tanır.
- **Sürtünmesiz CI/CD ve Yerel Denetim:** Ortam kurulumu ile tip kontrolünü tek bir `uv check` adımında birleştirmek, özellikle çoklu paket barındıran monorepo yapılarında geliştirme ve test süreçlerini ciddi ölçüde sadeleştirir.


[](https://astral.sh/blog/uv-ty-integration)

---

**Kaynak:** Hacker News (https://astral.sh/blog/uv-ty-integration)
**Yayıncı:** [Edumints Blog](https://blog.edumints.com) · Alıntılarken bu URL'ye bağlantı verin: https://blog.edumints.com/uv-ve-ty-araclarini-bir-araya-getirmek
