I guess CORMAS project could benefit on that.
We have tons of methods we don’t know if they are still used, some are 
deprecated or not. A real mess 😊

Sent from my iPhone

> On 6 Apr 2021, at 20:50, Oleksandr Zaitsev <olk.zayt...@gmail.com> wrote:
> 
> 
> Hello,
> 
> I need your help to recommend some projects that I can use in my study of 
> transforming deprecations.
> 
> As many of you know, Pharo supports a very powerful concept of "transforming" 
> deprecations. You can deprecate a method, providing a transformation rule. 
> Then when a client application calls the deprecated method, the call-site 
> will be automatically rewritten to use the new API. Here is an example of a 
> transforming deprecation:
> 
> Collection >> includesAllOf: values
>   self
>     deprecated: ‘Use #includesAll: instead’
>     transformWith: ‘`@rec includesAllOf: `@arg’ ->
>                    ‘`@rec includesAll: `@arg’.
> 
>   ^ self includesAll: values
> 
> You can read more about transforming deprecations in my blog post: 
> https://blog.oleks.fr/deprewriter
> 
> I am working on a tool that can analyse the commit history of a project and 
> recommend deprecations and transformation rules that can be inserted before 
> the release. It works like this:
> 
> 1. Collect all commits between two releases of a project
> 2. Mine those commits to identify method call replacements (deletions and 
> additions) that happen frequently
> 3. Infer the mapping between the methods of the old and new API
> 4. Recommend deprecations and generate transformation rules
> 
> I have validated my approach on Pharo, Moose, Pillar, Famix, and DataFrame 
> projects.
> 
> Now I am looking for other projects that could benefit from recommended 
> deprecations and could be used in my study.
> 
> Required:
> - open source project with accessible commit history (e.g. public git 
> repository)
> - written in Pharo (although if you know projects in other languages that 
> could be interesting for my study, please let me know about them as well) 
> 
> Prefered:
> - ongoing development
> - multiple releases
> - has users (other projects that depend on it)
> 
> If you have some projects in mind, please let me know about them! 
> 
> And if you are interested in this study and want to learn more, don't 
> hesitate to contact me by email.
> 
> Oleksandr
> 
> 

Reply via email to