When a user updates a plugin from the WordPress admin panel, does every plugin file get overwritten, or just the ones that have changed from the previous version?
For example, let’s say that a plugin has 3 files: a.php, b.php, and c.php
Version 2.0 has changes to a.php and b.php; c.php was unchanged. However, the user made a change to c.php before updating to 2.0. Does the user lose his changes?
When you update a plugin you just get a new Zip-file containing the whole plugin. You don’t get the information which files in that archive changed. That’s the reason why all files are overwritten.