[asterisk-bugs] [JIRA] (ASTERISK-26480) [patch] CLI: core set debug: Auto-completes File not Module

Alexander Traud (JIRA) noreply at issues.asterisk.org
Mon Oct 31 07:28:10 CDT 2016


    [ https://issues.asterisk.org/jira/browse/ASTERISK-26480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=233150#comment-233150 ] 

Alexander Traud commented on ASTERISK-26480:
--------------------------------------------

[~rnewton], thank for that but did you understand what I was about? From your response, I do not know whether I was understood.

In a bug tracker, related issues, causing issues and depending issues can be linked. When the E-mail notifications are configured correctly, each link allows to learn about mistakes made. Furthermore, those links show how an issue evolved. This eases many things, even backporting. Bypassing Jira and directly going for Gerrit kills all this. By-passing the issue tracker should be a no-go. This bug here is an excellent example why all this is important.

> [patch] CLI: core set debug: Auto-completes File not Module
> -----------------------------------------------------------
>
>                 Key: ASTERISK-26480
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-26480
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: General
>    Affects Versions: 11.23.1, 13.11.2, 14.0.2
>            Reporter: Alexander Traud
>            Assignee: Corey Farrell
>            Severity: Minor
>         Attachments: cli_debug_module.patch
>
>
> Commit [ae6008e|https://github.com/asterisk/asterisk/commit/ae6008ef3acdb582aca60357f7a7870aabba78a1] (code review [574|https://reviewboard.asterisk.org/r/574/]) changed the command-line interface {{core set debug}} to work not per-file but per-module. That change was incomplete because when you tab-complete the command (CLI Generate), not modules (with the file extension .so) but files (.c) get listed. This is not only semantically a different list, but {{.c}} at the end of the name is not valid.
> For example, you typed
> {noformat}core set debug 5 codec_al<TAB>{noformat}
> which auto-completes to
> {noformat}core set debug 5 codec_alaw.c{noformat}
> and registers {{codec_alaw.c}} as module to be debugged. That is accepted without error. However, that does not match any module because of that {{.c}}. The correct name would have been {{codec_alaw.so}} or {{codec_alaw}}.
> The attached patch fixes this. However, the patch is incomplete because main/cli.c:handle_debug should reject invalid module names. Furthermore, this patch removes the last use of {{ast_complete_source_filename}}. Consequently, that should be removed from the branch master. That was the last consumer of the list {{registered_files}}. Therefore, {{ast_(un)register_file}} should be removed. After that {{ASTERISK_REGISTER_FILE}} has no use anymore and should be removed all over Asterisk. Essentially, making the commit [4a58261|https://github.com/asterisk/asterisk/commit/4a58261694f1538a419dd869f87ea4590171a9f2] (code review [58|https://gerrit.asterisk.org/58]) superfluous as well.
> Normally, I would link to the causing and the related issue report. However for both commits, I was not able to find their issue report. This is a pity because I do not even know how to refer those commits correctly.
> *An issue tracker like this one here has several benefits:* If there were an issue report, I could link to this report here. That eases to understand an issue, especially because an report includes more: steps to reproduce, discussion, other related reports. Furthermore, it helps a Quality Manager to know how long a bug remains in the source code. Furthermore, it helps the original authors (and interested readers) to learn from mistakes. For example, when you fix a change but do not link to the issue report, the original author is not notified about that fix at all. Without notifying, the original author can not learn from others/mistakes. Therefore, linking issues is crucial as it aids in avoiding similar bugs in futures. Finally, the original author is a candidate for a code-review, speeding up the inclusion of that change. Therefore, I please the Asterisk team to create issue reports. A change without a related issue report, please, do not accept that anymore, do not commit a change without an entry in the issue tracker.
> -Because of this, I had to invite the authors of those commits directly-. was not able to do so either



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list