I have a question about the plugin update process.
I have a plugin that handles images in the system files model.
public $attachOne = [ 'image_desktop' => 'System\Models\File', 'image_tablet' => 'System\Models\File', 'image_mobile' => 'System\Models\File', ];
Recently, I integrated the RainLab translation plugin and realized that when I mark the images as “translatable,” they get lost, requiring to the user upload again the images.
/** * Softly implement the TranslatableModel behavior. * * @var [type] */ public $implement = [\RainLab\Translate\Behaviors\TranslatableModel::class]; /** * Attributes that support translation, if available. * * @var array */ public $translatable = [ 'image_desktop', 'image_tablet', 'image_mobile', ];
I understand that this is expected behavior; however, the plugin is used on multiple websites, and I’m concerned that when the plugin update is published, it might catch users off guard and erase their images.
I know that when releasing a version like this, it’s recommended to change the version by incrementing the major segment.
My main question is: How do users find out that updating the plugin will cause their images to be lost? Is it possible to allow this update to be the user’s decision? which is the best approach for this situations?
Thanks a lot.