-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enhance DOI model manipulation #39
Comments
I think the block context, method context and file context are also related to the log level. Can we get something from context to modify the DOI? |
And the static text in the log expression is also related to the logging level. Can we use static text to modify DOI? |
I think we have some ideas for this in #40. |
See #41 (comment) for discussion on this issue. Is it the problem that we are using only the enclosing method? I think that the DOI values trickle down from higher level containers but I don't think there's anything at the statement level. Raffi thinks that for levels such as INFO, FINE, FINER, and FINEST, there will be more of a correlation than with WARNING and CRITICAL, etc. We need to find out, and maybe #57 will help us correlate DOI to logging levels. |
The figure 2 of this paper https://dl.acm.org/citation.cfm?id=3128785.3128834 is a figure logging distribution. We may build a correlation based on those logging distribution. We could give a higher weight to the logging level which is high in the disctribution figure. However, if we decide to use this, this figure is not enough(some logging level is missing and the number of projects are not enough) and we shoud analyze more projects. |
This paper also mentions that
I think we need to add DOI for blocks. I am unsure about whether we need the containing file because some of papers does not use this to investigate log, such as http://www.robo-paathshaala.in/ashish/CHAPTER-SAMPLE-PDF.pdf. We may also need to process the content of log. Currently, regular expression may be fine. |
This is like augmenting the Mylyn DOI model with git history. |
I think you want to create a richer history of "events" because more recent events make methods that were edited more recently more interesting in the DOI model and vice-versa. |
You may need to make a new plug-in (which can be in the same GitHub repo or not) that is a relation provider or something like https://github.com/ponder-lab/fraglight/blob/c7b4dd40112cffdeec5bb54aaba2778bfe29d0be/edu.ohio_state.cse.khatchad.fraglight.ui/plugin.xml#L4-L10. |
➤ Raffi Khatchadourian commented: Yiming Tang It would seem to me that Discover if any implicit DOI changes occur as a result of file DOI manipulation isn't going to work out. So, you'll need to get more fined grained info out of the commit history. |
➤ Raffi Khatchadourian commented: In other words, you'll need to find the enclosing methods within the change set yourself. There may be existing work to do this or perhaps a simple regex may do the trick. |
➤ Raffi Khatchadourian commented: Once you have the enclosing method, you'll need to bump the DOI value of the method similar to what is done with fraglight. |
➤ Raffi Khatchadourian commented: We should also check that when you are bumping the DOI value of a particular method, the DOI values of elements are decreasing in some way. |
➤ Raffi Khatchadourian commented: We may also want to think about how much to "bump" the DOI of a particular method. In other words, if there are many changes to a particular method, should that method have a higher DOI (i.e., should we bump it multiple times)? |
Yeah, I saw some existing work. I will check them. |
The first step is to extract the enclosing method of the change in the commit. In other words, which methods changed in the commit. Then we need to decide how to bump the DOI of those methods (e.g., should larger changes in a single method yield larger DOI values?). |
This is where the AST differencing happens in fraglight: |
Currently, we are evaluating large projects by |
@saledouble Are we done here? |
Yes. |
Based on #66, there is no implicit propagation of the file DOI values to the constituent elements like method declarations, so we need to extract enclosing methods changes and bump the DOI values.
┆Issue is synchronized with this Asana task
The text was updated successfully, but these errors were encountered: