How to submit bug reports & patches

Programming applications for making music on Linux.

Moderators: MattKingUSA, khz

Post Reply
tnovelli
Established Member
Posts: 277
Joined: Wed Apr 20, 2011 4:52 pm

How to submit bug reports & patches

Post by tnovelli »

I've been making a few little fixes and suggestions for various projects, mostly just by posting comments here on LinuxMusicians. But as falkTX says, it's better to submit bugs/changes upstream. Okay, how? I haven't seen much guidance on that, so I'll write some...

1. Research. If you don't know where the project's website and/or code repository are, google it. If that fails, you might find something on sites like packages.debian.org... source code tar/zip files, web links to investigate, author/maintainer emails, etc. If in doubt, ask here on LM.

2a. If it's on Github, great! Scroll down to the README and read it.
- For bugs/suggestions, create an Issue (unless the developer is using a different issue tracker)
- For changes, you can fork the project and creating a Pull Request (assuming you're comfortable with GIT. If not, see 3a below.)

2b. Most other code-repository sites like Assembla are similar... the change submission process can vary widely, and they won't necessarily be using GIT.

2c. Is it on rusty old sold-out Sourceforge? :roll:
- You can create Issues, but make sure the developer is actually using Sourceforge's issue tracker.
- You can't submit changes directly (unless the developer gives you commit access)... so probably better submit a patch the old-fashioned way....

3a. If you found a GIT or SVN repository but no way to submit your changes directly (or GIT confuses the hell out of you)...
- Clone the repository to your disk (follow the directions)
- Make your changes
- Create a patch using 'git diff' or 'svn diff' or whatever. Proceed to step 4...

3b. If there's no code repository, only a source tar/zip file...?
- If you want to revive a dead project, create your own repository on Github or whatever.
- Or create a patch manually using 'diff'. You kinda have to know what you're doing, but it goes something like this....

Code: Select all

$ tar zxvf wsynth-dssi_0.1.3.orig.tar.gz
drwxr-xr-x free/free         0 2005-11-13 19:08 wsynth-dssi-0.1.3.orig/
...

$ cp -a wsynth-dssi-0.1.3.orig wsynth-dssi-0.1.3
$ cd wsynth-dssi-0.1.3

CHANGE & TEST

$ make distclean
$ cd ..
$ diff -ru wsynth-dssi-0.1.3.orig wsynth-dssi-0.1.3 >/tmp/wsynth-dssi-0.1.3-tnovelli20131018.patch
4. Now you have a patch file. It's a small(ish) text file... much preferable to uploading a whole zip/tar file, especially for big projects. You can share it in email, forums, pastebins, etc... put it out there and tell people about it. Even if the project is defunct, users can patch it themselves, and distro maintainers can patch their packages.

BTW, patch files look something like this:

Code: Select all

diff -ru wsynth-dssi-0.1.3.orig/src/xsynth_data.c wsynth-dssi-0.1.3/src/xsynth_data.c
--- wsynth-dssi-0.1.3.orig/src/xsynth_data.c	2005-10-19 15:56:29.000000000 -0400
+++ wsynth-dssi-0.1.3/src/xsynth_data.c	2013-10-15 10:53:29.000000000 -0400
@@ -91,7 +91,7 @@
         if (!fgets(buf, 256, file)) return 0;
     } while (is_comment(buf));
 
-    if (sscanf(buf, " xsynth-dssi patch format %d begin", &format) != 1 ||
+    if (sscanf(buf, " wsynth-dssi patch format %d begin", &format) != 1 ||
         format < 0 || format > 1)
         return 0;
 
@@ -173,7 +173,7 @@
         return 0;
 
     if (!fgets(buf, 256, file)) return 0;
-    if (sscanf(buf, " xsynth-dssi patch %3s", buf2) != 1) return 0;
+    if (sscanf(buf, " wsynth-dssi patch %3s", buf2) != 1) return 0;
     if (strcmp(buf2, "end")) return 0;
 
     memcpy(patch, &tmp, sizeof(xsynth_patch_t));
ssj71
Established Member
Posts: 1294
Joined: Tue Sep 25, 2012 6:36 pm
Has thanked: 1 time

Re: How to submit bug reports & patches

Post by ssj71 »

Thanks, a useful post. I don't want to derail this thread, but
tnovelli wrote:rusty old sold-out Sourceforge?
I keep seeing comments like this. Why? Whats wrong with sourceforge? Its not as easy to fork/pull request, but I've been using it for all my projects and its been great for me. Having space for a project webpage is very nice too. It gives you somewhere to point people who get overwhelmed by seeing a repo directory with a readme displayed at the bottom :)
_ssj71

music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
tramp
Established Member
Posts: 2347
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 466 times

Re: How to submit bug reports & patches

Post by tramp »

ssj71 wrote:Thanks, a useful post. I don't want to derail this thread, but
tnovelli wrote:rusty old sold-out Sourceforge?
I keep seeing comments like this. Why? Whats wrong with sourceforge? Its not as easy to fork/pull request, but I've been using it for all my projects and its been great for me. Having space for a project webpage is very nice too. It gives you somewhere to point people who get overwhelmed by seeing a repo directory with a readme displayed at the bottom :)
If you use git on Sourceforge, there is as well the "forge by just press this button feature", pull requests could be send as git-diff patches to the project maintainers (personal contact isn't a bad thing). If you include a readme in the top source directory, it get as well presented to the users ( like on github). On top of all this, Sourceforge itself is open source. So, I would 2. the question which I have ask several times, in several places now, but never get a answer. Looks to me as it is simply a idonyme? :lol:
On the road again.
tnovelli
Established Member
Posts: 277
Joined: Wed Apr 20, 2011 4:52 pm

Re: How to submit bug reports & patches

Post by tnovelli »

re: Sourceforge, it's a banner ad business, owned by Dice Holdings since last year. Every time someone sees that "watch this ad for 5 seconds or click here to download now" page... cha-ching!! I think they maintain it just enough to prevent a mass exodus of developers. There are so many better choices now... Github, Gitorious, GitCafe (in China!), Bitbucket (meh), Google Code, Assembla (those last two support SVN, btw). Most of them give you web pages, wiki, issue tracking... free for public projects, with less BS.

Anyway, back to the point -- once you overcome communication barriers like Sourceforge, fixing a bug can be as easy as changing 2 letters :lol:
tramp
Established Member
Posts: 2347
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 466 times

Re: How to submit bug reports & patches

Post by tramp »

Okay, as a ABP user I've forgot about the adds, that could indeed be annoying.
But that's the way sourceforge generate some income to pay there service. Other project hosters just choose other ways to generate there income. As far I can see, only gitorius is open source itself as well. Bitbucket allow only 5 developers per project, otherwise you have to pay. Only Google Code have a release file system. I wouldn't miss unlimited project members and a release file system. Github didn't gives you web-space nor provide it a file release system. That's the reason why many projects which host there source at github, have there project page and releases on sourceforge.
I've checked all your mentioned alternatives, but couldn't find out, which one of them gives you web-space to create a project home page. Could you tell me please which one of them do that?
I wouldn't say the other source host systems are bad, for sure not, but sourceforge provide by far the most complete and configurable service to it's users.
tnovelli wrote:once you overcome communication barriers like Sourceforge
if there is a barrier, is up to the project maintainers, you could easy enable bug/patch trackers, which could be used without registration as well, could you do that on any of the mentioned alternatives? Mostly you need to register yourself to start communication.
You could set up mailing lists and forums also.
On the road again.
tnovelli
Established Member
Posts: 277
Joined: Wed Apr 20, 2011 4:52 pm

Re: How to submit bug reports & patches

Post by tnovelli »

tramp wrote:if there is a barrier, is up to the project maintainers, you could easy enable bug/patch trackers, which could be used without registration as well, could you do that on any of the mentioned alternatives? Mostly you need to register yourself to start communication.
Anonymous bug submission would be nice...
- Sourceforge? NOPE. at least, I don't see a "Create Ticket" button on http://sourceforge.net/p/qtractor/tickets/when I'm not logged in.
- Github? Google? GitCafe? Gitorious? NOPE.
- Bitbucket? YES! for example, https://bitbucket.org/paniq/jacker/issues

Github gives you web space: http://pages.github.com/
Bitbucket does too.. plain static HTML, at least: https://confluence.atlassian.com/displa ... +Bitbucket

Of course, developers could always use one service for their repository, another for web space, another for bug tracking. Heck, this site could host a bug tracker.. it's gotta be easier than hosting phpbb! Unfortunately most bug tracker software seems to require registration; what a shame. Or - radical alternative here - publish an email address for bugs/patches. You can deal with them right away, or paste them into your bug tracker.
tramp
Established Member
Posts: 2347
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 466 times

Re: How to submit bug reports & patches

Post by tramp »

tnovelli wrote:Anonymous bug submission would be nice...
- Sourceforge? NOPE. at least, I don't see a "Create Ticket" button on http://sourceforge.net/p/qtractor/tickets/when I'm not logged in.
- Github? Google? GitCafe? Gitorious? NOPE.
- Bitbucket? YES! for example, https://bitbucket.org/paniq/jacker/issues
As I've said, it's up to the (sourceforge) project maintainer to enable anonymous access to the trackers. It could be setup in the admin space.
tnovelli wrote:Github gives you web space: http://pages.github.com/
Bitbucket does too.. plain static HTML, at least: https://confluence.atlassian.com/displa ... +Bitbucket
Oh great, didn't know that this is possible on github, maybe because I never see a project page on github. I will try that out and see how far it goes regarding support of MYSQL, etc.
If github itself will be a open source project, that would be a other plus, . .
Bitbucket is out of question for me, because the limit on project members.
On the road again.
danboid
Established Member
Posts: 1327
Joined: Sun Aug 26, 2012 11:28 am
Location: England
Has thanked: 1 time
Been thanked: 4 times

Re: How to submit bug reports & patches

Post by danboid »

The real prob most have with SF.net is related to Windows downloads. sf.net started to add unwanted installers to their Windows downloads that would try to install Chrome or other unrequested apps before you could install the app you actually wanted/downloaded.
tramp
Established Member
Posts: 2347
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 466 times

Re: How to submit bug reports & patches

Post by tramp »

danboid wrote:The real prob most have with SF.net is related to Windows downloads. sf.net started to add unwanted installers to their Windows downloads that would try to install Chrome or other unrequested apps before you could install the app you actually wanted/downloaded.
:shock:
sourceforge add installers to download links??
I haven't use windows in the last 10+ years, could you give a example link were that happen??
On the road again.
Post Reply