Yıldız eğrisine doğrudan erişim
GitHub yıldız geçmişi API’si, bir yazılım projesine duyulan ilginin zaman içinde nasıl değiştiğini görmek isteyen bakım ekipleri ve araç geliştiricileri için yeniden tasarlandı. Yeni uç nokta, tek bir istekte 30 haftaya kadar günlük yıldız sayılarını döndürüyor; yanıtta bireysel kullanıcı kimlikleri yer almıyor.
GitHub’un anlattığı kullanım senaryosu basit: Bir sürüm, duyuru ya da etkinlik sonrasında bir projenin görünürlüğünde değişim olup olmadığını anlamak. Bu amaç için gerekli olan, projeyi yıldızlayan kişilerin kim olduğu değil, yıldız sayısındaki hareketin tarihsel eğrisi. Yeni tasarım, bu ihtiyacı doğrudan toplu veriye çeviriyor.
Eski yöntem kullanıcı adlarını taşıyordu
Önceki yaklaşımda araçların yıldız geçmişini oluşturabilmesi için yıldızlayanlar listesini sayfa sayfa istemesi gerekiyordu. Her kayıtta, depoyu o anda yıldızlayan kişi ve yıldızın verildiği zaman bilgisi bulunabiliyordu. Araçlar zaman damgalarını tutuyor, kullanıcı kimliklerini ise çoğu durumda kullanmadan atıyordu.
Bu durum, API’nin fiilî kullanım amacıyla döndürdüğü veri arasında bir uyumsuzluk yarattı. GitHub’a göre yıldız geçmişinden yararlanan araçlar, kullanıcı adları ya da başka kullanıcı verileri yerine tarih ve sayılara ihtiyaç duyuyordu. Yıldız eğrisi için bireysel kimliklerin zorunlu olmadığının anlaşılması, ayrı bir toplulaştırılmış uç noktanın önünü açtı.
GitHub yıldız geçmişi API’si ve erişim değişikliği
GitHub, geliştiriciler ve veritabanı açısından doğrudan riskleri ele almak için yıldızlayan ve izleyen listelerine erişimi depo yöneticileriyle iş birlikçileriyle sınırladığını belirtiyor. Gerekli yetkisi olmayan çağrılar, boş yanıt ya da 403 Forbidden yanıtı alabiliyor.
Bu erişim değişikliği, önceki yanıttan yıldız geçmişi hesaplayan araçları da etkiledi. GitHub, bakım ekipleri ve araç üreticileriyle yaptığı görüşmelerde bu araçların asıl gereksiniminin eğri olduğunu aktarıyor. Star History örneğinde, API değişikliğinin ardından kullanıcıların proje etrafında toplandığı; GitHub topluluk ekibinin de proje ile ürün mühendisliği arasında bağlantı kurduğu ifade ediliyor.
Gizlilik sorunu yalnızca dönen veride değildi
GitHub’un vurguladığı nokta, yanıttan kullanıcı adlarını çıkarmanın sorguyu tek başına ucuzlatmaması. Yüksek sayıda yıldız alan depolarda eski uç nokta, tek bir sayfayı döndürmek için veritabanının binlerce kaydı işlemesine neden olabiliyordu. Yani sorun, istemciye gönderilen veri hacminin ötesinde, sistemin sayım öncesinde ne kadar veriyi taradığıyla ilgiliydi.
Şirket ayrıca herkese açık yıldızlayan listelerinin toplu biçimde toplanarak spam ve kimlik avı kampanyalarında kullanılmaya başladığını söylüyor. Bu nedenle yeni yaklaşım iki ayrı ihtiyacı aynı tasarımda buluşturuyor: kişilere ilişkin kayıtları gereksiz yere sunmamak ve eğilim verisini üretirken veritabanının sınırsız büyüyebilecek bir çalışma yapmasını engellemek.
Zaman filtresiyle sınırlı hesaplama
Yeni uç nokta, yıldızları saymadan önce zaman aralığına göre filtreliyor. GitHub’un açıklamasına göre bu teknik ayrıntı, sistemin işlediği veri miktarını azaltmak için belirleyici. Uç nokta en fazla 30 haftalık günlük sayım sunduğu için, tarihsel eğri kullanışlı bir çözünürlükte sağlanırken sorgunun kapsamı da sınırlandırılmış oluyor.
Bu tercih, internet kültüründeki görünürlük metriklerinin nasıl sunulduğuna dair dar ama anlamlı bir işaret oluşturuyor. Bir projenin aldığı yıldızlar, GitHub’un da belirttiği gibi, ilginin yaklaşık bir göstergesi olarak kullanılabiliyor. Ancak bu göstergeyi sunmak için her etkileşimi kişiye bağlayan ham kayıtların dağıtılması gerekmiyor. Buradaki değişim, yıldızın anlamını yeniden tanımlamıyor; onu izlemek için gereken veri biçimini değiştiriyor.
Toplulaştırılmış metrikler için somut bir örnek
GitHub’un uygulaması, tek başına tüm çevrimiçi platformların benzer bir yönelime gittiğini göstermiyor. Buna rağmen olay, bir platformun aynı metriği hem daha sınırlı kişisel veriyle hem de daha kontrollü sorgu maliyetiyle sunabileceğine dair somut bir örnek veriyor. Bu örnekte ihtiyaç, kimin yıldız verdiğini görmek değil; ilginin ne zaman arttığını veya azaldığını izlemek.
Yeni GitHub yıldız geçmişi API’si böylece eski sistemin dolaylı iş akışını doğrudan bir işlevle değiştiriyor. Bakımcılar sürüm ve duyuruların ardından oluşan hareketi günlük sayılar üzerinden inceleyebilecek; araçlar da kullanıcı listelerini indirip ayıklamak yerine eğriyi doğrudan isteyebilecek. GitHub’un mühendislik anlatısındaki temel mesaj, daha az veri döndürmenin ancak daha az veri işlemekle birlikte anlamlı bir iyileştirmeye dönüştüğü yönünde.
Bir içerik, dört format.
Okumaya vaktin yoksa özetle; paylaşacaksan platforma göre yeniden düzenle.
GitHub, depo yıldızlarının zaman içindeki değişimini kullanıcı listeleri yerine toplu sayılarla sunan yeni bir API geliştirdi. Değişiklik, hem kişisel verilerin topluca toplanması hem de yüksek yıldızlı depolarda oluşan veritabanı yükü sorununa yanıt veriyor. • Yıldız eğrisine doğrudan erişim • Eski yöntem kullanıcı adlarını taşıyordu • GitHub yıldız geçmişi API’si ve erişim değişikliği
Bu önizleme yalnızca sayfadaki editoryal veriyi yeniden biçimlendirir. Gerçek yapay zekâ üretimi Core tarafında güvenli bir sunucu endpoint’iyle bağlanacak.




