Hi Carlos, Deprecating the constructors should be enough if you don't expect that your users have serialized instances of the class around (i.e. objects that they saved to disk with save() or saveRDS()).
It's actually impossible to know whether your users have done this or not but they would typically do this only if these objects take a long time to compute or if the typical workflow that you present in your vignette encourages this. If it's the case then the situation is a little bit more complicated: - You would need to provide a coercion method from this class to the replacement class. - You would also need to put a deprecation warning in all the methods defined on this class (this includes validity and show methods if you've defined them, and also coercion methods *to* this class. The deprecation warning would typically explain how to coerce the deprecated object to the new replacement class. Hope this helps, H. On 06/27/2017 01:50 AM, Carlos Ruiz wrote:
Hi Bioc developers, A year ago, we introduced a class in my package MEAL to manage methylation data. After some Bioc releases, we realised that we don't really need this class and that it is better to reuse other Bioc classes to facilitate package usability. Is there any protocol to deprecate a class? There is only a guide to deprecate functions and methods. For the new release, I was thinking on deprecating the constructors of my class, while keeping the methods. Is that OK? Bests,
-- Hervé Pagès Program in Computational Biology Division of Public Health Sciences Fred Hutchinson Cancer Research Center 1100 Fairview Ave. N, M1-B514 P.O. Box 19024 Seattle, WA 98109-1024 E-mail: hpa...@fredhutch.org Phone: (206) 667-5791 Fax: (206) 667-1319 _______________________________________________ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel