Automatický update knihoven Ehcache a Quartz

Kolegové na projektu odhalili, že automatický update se stává populárním i mezi Java knihovnami. Po startu JBoss serveru se v logu objevil tento překvapující záznam:
19:29:49,544 INFO [main:][Server:504] JBoss (MX MicroKernel) ... Started in 21s:130ms 19:29:51,763 INFO [net.sf.ehcache.CacheManager@14a4067:][UpdateChecker:98] New update(s) found: 2.2.0 [http://ehcache.org/news.html]. Please check http://ehcache.org for the latest version.
Záhy jsme přišli na to, že kontrolu aktuálnosti verze provádí knihovny Ehcache a Quartz, tedy populární cache a scheduler hojně používané i v enterprise řešeních. Obě jsou vyvíjeny společností Terracotta.
Motivaci pro zavedení kontroly verzí lze najít popsanou v tomto blogu. Autor vysvětluje, že vedle kontroly verze obě knihovny navíc odesílají data o svém použití. Jsou to:
- Operating system name (os.name)
- Java VM name (java.vm.name)
- Java version (java.version)
- Platform (os.arch)
- Terracotta version (if applicable)
- Terracotta product name/version (if applicable)
- Uptime
- Hash of IP address – used as a fingerprint for correlation
Autor dále vysvětluje, že sběr dat o použití je jakousi protiváhou hodnotě, kterou knihovny představují pro vývojáře a projekty, které je používají. Nabízí analogii k vyhledávání na googlu a zobrazení reklam a komerčních sdělení. Blog je formulovaný jako odpověď na negativní a odmítavé reakce mnoha uživatelů knihoven. Pozitivní je, že kontrola jde u obou knihoven vypnout. Nutnost explicitně toto chování potlačit je vysvětlena tím, že “jinak by si to přece nikdo nepovolil”. Myslíte, že je takové chování od open source projektu přijatelné ? V některých prostředích mohou být kontrola verze a pokus o odeslání dat oprávněně vnímané jako bezpečnostní incident. Dá se namítat, že to porušuje princip nejmenšího překvapení. Je automatická kontrola verze a odeslání dat o použití trend? Nedělá to tak jenom Ehcache a Quartz. Dalšími příklady jsou třeba Glassfish a MySql. Já se spíše kloním ke skupině uživatelů, která kontrolu verze nevnímá dobře. Snáze by se mi její zavedení chápalo, kdyby byla explicitně a velmi viditelně zdokumentovaná, ale zdá se, že není. Zkoušel jsem zmínku o zavedení kontroly najít v change logu Ehcahe, ale nenašel jsem. Vypadá to, že první reakce programátora bude vždy negativní. Opravdu je čeho se bát? Podělte se o své názory v diskuzi pod článkem.
Odkazy:
Motivace pro kontroly a odesílání dat Vypnutí kontrol Zdrojový kód pro update check v Ehcache Diskuzní fóra Ecache a Quartz
Neslychane. A to jsem mel v umyslu ehcache pouzit na obrazky. Napisu si sam, lepsi.
ja jsem ochoten takovy sber dat tolerovat, kdyz to bude jasne receno ze tim platim firme za opensource vyvoj. Jeste me zaujako to "Hash of IP address", proc posilaji hash? Vdzyt stejne IP znaji z toho http requestu, kterym zjistuji novou verzi...
Používám: mvn versions:display-property-updates -U resp. mvn versions:display-dependency-updates -U Vlastní změnu verzí pak ručně, abych měl kontrolu