Viele Programme enthalten einen automatischen Updater, bei dem das Programm gelegentlich online nach Updates sucht und dann alle gefundenen Updates herunterlädt und anwendet. Programmfehler werden behoben, unterstützende Dateien werden geändert und die Dinge werden (normalerweise) verbessert.
Leider kann ich nirgendwo Informationen über diesen Prozess finden, egal wie genau ich hinschaue. Es scheint, dass die implementierten Auto-Updater entweder proprietär waren oder nicht als wichtig angesehen wurden.
Es scheint ziemlich einfach zu sein, das System zu implementieren, das nach Updates in einem Netzwerk sucht und diese herunterlädt, wenn sie verfügbar sind. Dieser Teil des automatischen Updaters wird sich von Implementierung zu Implementierung erheblich ändern. Die Frage ist, welche unterschiedlichen Ansätze zum Anwenden von Patches bestehen. Nur Dateien herunterladen und alte durch neue ersetzen, ein heruntergeladenes Migrationsskript ausführen, Teile des Systems von Affen patchen usw.? Konzepte werden bevorzugt, aber Beispiele in Java, C, Python, Ruby, Lisp usw. sind willkommen.