Dear list,
I have been watching the conversation about reviewing submitted code
with interest and it seems to me that the problem is fundamentally one
of communication, or, rather, perhaps the lack of it. The developers
naturally want to focus on their core objectives of maintaining and
developing the project and do not want to be bothered by endless and
maybe repeated questions from contributors. On the other hand,
contributors, particularly those who have never contributed to an Open
Source project before, want to add or contribute some enhancement to the
project, but may be unaware of the process for submitting their work or
what expectations they should have once their contribution has been
submitted. They view the project as worthwhile, which is indicated by
their willingness to contribute. They view the developers as the experts
who understand how the project should operate and the arbiters of
whether their submitted effort is adequate, needs improving, and when
the work can be considered complete and ready to merge. Yet
unfortunately, their requests and comments are often met with silence
or, worse yet, a rant. Neither group is happy with the other and both
are frustrated.
Since Gerhard frequently answers questions, we have, perhaps mistakenly,
assumed that he is a project owner/maintainer/administrator and in a
position to "do something" to move things forward. On the other hand he
has stated that he is only a user of the project. However, there are
other individuals that appear to be involved in the project. For
example, the blog seems to be most frequently contributed to by Uwe
Hermann and Sören Apel. I also see that a number of comments on code and
particularly tagging the code as an 'enhancement' or other flag has
often been done by a user named Abraxa. Are these also just contributors
or project owners/maintainers? While developers may not want to be
distracted by requests and questions, particularly newer contributors
may require help and direction and are unfortunately unsure of who to
turn to. Sometimes it is possible to reach someone on IRC or via this
mailing list, but we all have our own lives and can't be around 24hrs.
So it seems that there is a gap between the expectations of developers
and those of contributors. I do not seek to place any blame, but just to
identify and focus on the problem.
I don't know whether it would help but I thought I might like to
contribute to the project by documenting the whole process for cloning
the code, submitting revisions and reviewing code so that first time
contributors would know what to do. I have recently obtained some access
to the Wiki, but before I can write anything, I need to more fully
understand and confirm the process myself. For now I think I have
identified the following steps:
a) clone the required code from git://sigrok.org/repository-name to
local disk (note, not Github)
b) make an host a publicly accessible copy of it (on Github?)
c) modify or add to the code as required
d) commit changes locally
e) when ready, submit a pull request
f) for the review stage, anyone can go to the relevant Sigrok
repository* and review the submissions
g) contributor reviews comments and makes changes and the commits - we
go back interatively to (d) until everyone is happy
h) at some point developers accept the code, tag it and merge it into
the project
Until Gerhard recently mentioned it in his frustration, I was completely
unaware of (f). The natural assumption is that reviewing should be done
on the Github repository. It has the tools, it seems patches (including
mso9 among others) are getting attention, and it seems possible for
anyone to submit comments on the code. However, Gerhard then also
mentions that this is actually only a read-only copy. So now we have to
wonder whether submissions and reviewing should actually be happening
here or elsewhere?
There is a distinction between the git version control tool and the
Github repository which hosts projects that can be managed using the git
tool. If the Github repository is a read-only copy, then the repository
at http://sigrok.org/gitweb/ is presumably the master? However, I don't
see any tools for contributing or submitting anything on there. With
regards to that and item (b), I know it is possible to make commits
locally and then push to an online repository, but I am only aware of
making pull-requests or reviewing code on Github. I am uncertain as to
whether (b) is actually required. I based this step on a patch I made
quite a long time ago when I was asked to place the code to be merged
"somewhere visible".
This gives rise to a number of questions/requests for clarification:
1. Where should contributors actually submit their contributions? Github
or Sigrok.org?
1a. If its on sigrok.org, then how do we go about doing that that?
(happy to research the tools with a pointer or two)
2. What are the thresholds to get the code accepted? Number of comments?
Sufficient time elapsed for reviewers to comment? All issues that have
been commented have been addressed? All of the preceding?
3. At what stage does one go on IRC (or mailing list or both?) and
request to 'merge this please?' (Presumably there must be some criteria
to be met so as to avoid requests simply getting ignored?)
I would appreciate clarification on these points and if I missed
anything or got something wrong in the above outlined steps then by all
means please let me know.
BTW, Gerhard, please be aware, that your personal @gmx.net e-mail
address appears in the 'From' header in the e-mails from the mailing
list (as do those of other posters - at least in Thunderbird). If I
forget to click 'Reply List' and just hit 'Reply' instead, the reply
would go straight back to you alone instead of the list. It is just
possible whoever directed that e-mail to your personal address may not
have done so intentionally.
PS. Please forgive the lengthy post and my apologies if something has
already been covered in previous messages, but please be assured that I
already have gone over Gerhard's and others posts in detail and will be
going over them again.
Regards.
On 30/11/2022 06:42, Gerhard Sittig wrote:
On Fri, 2022-11-18 at 15:05 +0100, Bjørn Forsman wrote:
I'm a maintainer of PulseView in Nixpkgs
(https://github.com/nixos/nixpkgs) and I wonder if there are any plans
for a new release soon?
I'm not aware of maintainers' plans, and I don't speak for the
project (and don't pretend to). So I cannot answer that question,
and won't attempt to, to not cause confusion.
But am afraid that just an application's release is not enough,
since it might also involve several libraries' releases. There
could be a tail of dependencies involved that you need to remain
aware of ...
Rationale: the last release is about 2 years old, and it doesn't
support qt-5.15, so currently we have to pin an old qt version (5.14)
to keep pulseview "alive".
You can also put it the other way around. The Qt 5.15 library
no longer supports the API which earlier minor versions used to
have. But that's nitpicking, and doesn't solve your issue. Just
something that I have observed especially in the vicinity of C++
using projects, and that has been bothering me several times.
For the record, here's a snippet of the build failure:
/build/pulseview-0.4.2/pv/util.cpp:178:20: error: no match for
'operator<<' (operand types are 'QTextStream' and '<unresolved
overloaded function type>')
178 | ts << forcesign;
| ~~~^~~~~~~~~~~~
In that specific case, you could for example
$ git log -p --stat -S forcesign
and end up with commit ae726b70a7ad, the top of which addresses
the "ts << forcesign" phrase.
One alternative to bumping application code to a recent version
could be to backport some portability improvements. Got a list of
those portability issues, or a log that you can share? Maybe
others can lookup how they were addressed in unreleased versions
of mainline, and can help you unbreak your build again?
The other alternative could be to not wait for another release,
but just use recent master (while noting down the specific
version that you are using of course). sigrok master typically is
rather stable and usable, hiccups are rare.
PS: Do not bother me with private messages just because you
somehow got to lookup my address. Stick with public channels,
where others can join and help, and also can benefit from
information that was given. Thank you.
And if public channels with many more participants cannot get
you an answer, then I'm as unable to help you in private. Such
a request would only eat into my personal resources yet help
nobody. I'd rather spend this time on something more useful.
virtually yours
Gerhard Sittig
--
John.
_______________________________________________
sigrok-devel mailing list
sigrok-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sigrok-devel