[Gelistirici] hal/hal-info

Faik Uygur faik at pardus.org.tr
20 Haz 2007 Çar 22:29:48 EEST


On Wednesday 20 June 2007 22:05:16 Ismail Dönmez wrote:
> > İsmail branch daki pisi ile dener misin? commit 14400 bu sorunu çözüyor
> > olmalı. Onur'un dediğine göre sanırım kdelibs sorunu ile aynı. Eski hal
> > versiyonunu kurup, hal_info'yu eski hal ile Conflict ettirdiğimizde pisi
> > up ile gelen hal ve hal_info ile sorun olmamalı.
>
> Branch pisi'deyim zaten ama hal-info'da Conflicts eksik.

Bir sorunum var ve fikrinizi almak isterim. İki paket birbirleri ile dosya 
değiştirdiğinde doğal olarak ikisinde de verison bump ediliyor.

14400 nolu commit ile birisine Conflicts ekleyerek çok da yanlış olmayan bir 
şekilde ve basitçe bu sorunu çözdüğümüzü düşünüyorum. 

Oradaki mantık şu, eğer kurulum akışında kurulacak/yükseltilecek paketler 
birbirleri ile conflict etmeme testini geçip ardından paketlerden birinin 
kurulumunda bir dosya çakışması ortaya çıkarsa really_conflicts ile bunun 
paket sahibi tarafından bilinerek işaretlenip işaretlenmediği kontrol 
ediliyor. graph koduna conflicts karmaşasını sokmadan, order'da conflicts'i 
dikkate almadan böylece aşabiliyoruz.

Ama paket tek olarak seçilirse, yani kurulu sistemde conflict ettiği ama depo 
da conflict'i çözülmüş paket yükletilmezse. O zaman sistemde Conflict olduğu 
ve kaldırmak gerektiği uyarısını verecekti. Bununla 2 gündür uğraşıyorum ve 
gerçekten gereğinden fazla kod değişikliği getirdiğini düşünüyorum.

Düşünce bu conflict'i resolve edecek depo'da bir paket varsa onu sen indir 
denilmese de yine indir demekti. Bu iş çok noktada değişiklik gerektiriyor; 
paket yöneticisinin kullandığı, seçili olan paketlerle gelecek ek paketleri 
hesaplama kodundan, conflict uyarıları veren koda aslında bunlar depodan 
çözülüyor sen bunun için uyarma dedirtmeye kadar çok fazla değişiklik 
gerektiriyor. Uyarma dediğin ama conflict ediyor dediğin değişiklikleri 
tekrar plan_upgrade'den çıkan order listesine ekleyip ignore_dependency 
denilmediyse yine bi plan_upgrade'e soka kadar.... filan filan...

Sorunu çözdüğümüz çok basit bir yamanın üstüne, 200-250 satır kod 
değişikliğini yapmama taraftarıyım. Kullanıcı'nın karar verme işini 
basitleştirmeye çalışırken kodda ciddi değişiklikler yapmak gerekiyor.
Kod karmaşık bir hal alıyor. Şu haliyle yanlış bir davranış içermediğini 
düşünüyorum.

- Faik



Gelistirici mesaj listesiyle ilgili daha fazla bilgi