task #30
closedIssue recurring not compatible with additionals / additional_tags
Description
When using together this plugin (Issue recurring) with the plugins
- additionals (https://github.com/AlphaNodes/additionals)
 - additional_tags (https://github.com/AlphaNodes/additional_tags)
 
a stack overflow error occurs when copying an issue. I made an issue in the guthub page of additional_tags project (https://github.com/AlphaNodes/additional_tags/issues/6). It seems the problem is in the method of realization of copy_from method. The methods should be the same, but in this case they are different.
More information is given in https://github.com/AlphaNodes/additional_tags/issues/6 and https://github.com/AlphaNodes/additionals/issues/71#issuecomment-591290491
      
      Updated by cryptogopher almost 5 years ago
      
    
    Thank you for reporting. I wasn't even aware that such kind of problem even exists.
My understanding of the problem is that different plugins can use at least 2 different methods to override (patch) existing code (in this case: Issue#copy_from method). These methods are:
1. alias_method - like additional_tags plugin does (https://github.com/AlphaNodes/additional_tags/blob/master/lib/additional_tags/patches/issue_patch.rb)
and
2. prepend + super - like additionals and issue_recuring plugins do source:lib/issue_recurring/issue_patch.rb@2d1ffc87.
The problem is that all plugins have to patch the same code using same method consistently - otherwise problem occurs.
The question is: what kind of action do you expect from me? Whichever method of overriding issue_recurring uses, it will be incompatible with one of your other plugins. Moreover, according to this comment https://github.com/AlphaNodes/additionals/issues/71#issuecomment-591290491, prepend + super is considered preferred way of overriding code. Changing it to alias_method in issue_recurring would be a step back.
      
      Updated by cryptogopher almost 5 years ago
      
    
    - Status changed from feedback to in progress
 
Ok, I patched the code for you to be able to run it along with additional_tags.
You just need to make sure you're running latest issue_recurring version and replace the file in your installation with: source:lib/issue_recurring/issue_patch.rb@issue30
I'm providing this patch only for transitory period, until other plugins update to prepend+super. I won't be actively updating it. If issue_recurring will upgrade in the meantime and you still need this patch and want to upgrade as well - let me know here. I'm not closing this ticket for some time.
Keep in mind though that - due to nature of the problem - even after applying this patch you can run into issues with different plugins (that don't use alias_method and override Issue#copy_from) and there is nothing we can do about it :/
      
      Updated by jwalkerbg almost 5 years ago
      
    
    Thank you very much for this patch. I applied it and then copy issue was successful. Indeed, a tend to use as few plugins as it is possible, and this is because of avoiding compatibility problems. I use additionals because it is used by another plugin - additional_tags. Redmine lacks core tagging system and we have to use third party plugins fer that functionality.
      
      Updated by kepi almost 4 years ago
      
    
    Just to let you know, same issue is with ixti/redmine_tags and fortunately same fix works. Thanks!
      
      Updated by cryptogopher over 2 years ago
      
    
    - Status changed from in progress to closed
 
      
      Updated by admin over 2 years ago
      
    
    - Tracker changed from 2 to task
 - Target version set to unspecified
 - Redmine version set to unspecified