[U-Boot] [PATCH] patman: Don't request full names from get_maintainer

The Linux get_maintainer.pl can often produce a whole lot of results. As a result you'll sometimes blow your CC field over 1024 characters and that can cause listservs to reject your message.
As a stopgap, call get_maintainer.pl with "--non" so it doesn't include real names. This will dramatically reduce the number of characters.
Signed-off-by: Doug Anderson dianders@chromium.org ---
tools/patman/get_maintainer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/patman/get_maintainer.py b/tools/patman/get_maintainer.py index 00b4939..a5160bc 100644 --- a/tools/patman/get_maintainer.py +++ b/tools/patman/get_maintainer.py @@ -43,5 +43,5 @@ def GetMaintainer(fname, verbose=False): print "WARNING: Couldn't find get_maintainer.pl" return []
- stdout = command.Output(get_maintainer, '--norolestats', fname) + stdout = command.Output(get_maintainer, '--norolestats', '--non', fname) return stdout.splitlines()

Hi Doug,
On 17 April 2014 12:47, Doug Anderson dianders@chromium.org wrote:
The Linux get_maintainer.pl can often produce a whole lot of results. As a result you'll sometimes blow your CC field over 1024 characters and that can cause listservs to reject your message.
As a stopgap, call get_maintainer.pl with "--non" so it doesn't include real names. This will dramatically reduce the number of characters.
Signed-off-by: Doug Anderson dianders@chromium.org
tools/patman/get_maintainer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/patman/get_maintainer.py b/tools/patman/get_maintainer.py index 00b4939..a5160bc 100644 --- a/tools/patman/get_maintainer.py +++ b/tools/patman/get_maintainer.py @@ -43,5 +43,5 @@ def GetMaintainer(fname, verbose=False): print "WARNING: Couldn't find get_maintainer.pl" return []
- stdout = command.Output(get_maintainer, '--norolestats', fname)
- stdout = command.Output(get_maintainer, '--norolestats', '--non', fname) return stdout.splitlines()
-- 1.9.1.423.g4596e3a
Good to avoid this problem, but I wonder if we should check the size and re-run the command if too long? That way we can keep names on the thread when it is possible.
Also, why is there a limit on CC - is that a limitation described in the RFC, or just certain mailers? Can we get around it by specifying multiple Cc tags?
Regards, Simon

Simon,
On Fri, Apr 18, 2014 at 1:43 PM, Simon Glass sjg@chromium.org wrote:
Hi Doug,
On 17 April 2014 12:47, Doug Anderson dianders@chromium.org wrote:
The Linux get_maintainer.pl can often produce a whole lot of results. As a result you'll sometimes blow your CC field over 1024 characters and that can cause listservs to reject your message.
As a stopgap, call get_maintainer.pl with "--non" so it doesn't include real names. This will dramatically reduce the number of characters.
Signed-off-by: Doug Anderson dianders@chromium.org
tools/patman/get_maintainer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/patman/get_maintainer.py b/tools/patman/get_maintainer.py index 00b4939..a5160bc 100644 --- a/tools/patman/get_maintainer.py +++ b/tools/patman/get_maintainer.py @@ -43,5 +43,5 @@ def GetMaintainer(fname, verbose=False): print "WARNING: Couldn't find get_maintainer.pl" return []
- stdout = command.Output(get_maintainer, '--norolestats', fname)
- stdout = command.Output(get_maintainer, '--norolestats', '--non', fname) return stdout.splitlines()
-- 1.9.1.423.g4596e3a
Good to avoid this problem, but I wonder if we should check the size and re-run the command if too long? That way we can keep names on the thread when it is possible.
Also, why is there a limit on CC - is that a limitation described in the RFC, or just certain mailers? Can we get around it by specifying multiple Cc tags?
I believe that we're actually fighting a heuristic that the mailing list servers have to avoid spammers. In the past I've seen my mail get through to list servers that weren't run by kernel.org but _not_ the the ones at kernel.org. Kind of like how if you want to write code that's for generic exynos 5 hardware you need to use exynos_5yyy and _not_ replace the y with x (because that would be adult content!)
We could possibly only run the heuristic if the CC list was > 800 characters? I'd hesitate to getting too close to 1024 since I think there are instances where git will itself add a CC and that might blow us out.
...another option is to just forget this patch and force people to add this to ".get_maintainer.conf"
-Doug

Hi Doug,
On 18 April 2014 15:32, Doug Anderson dianders@chromium.org wrote:
Simon,
On Fri, Apr 18, 2014 at 1:43 PM, Simon Glass sjg@chromium.org wrote:
Hi Doug,
On 17 April 2014 12:47, Doug Anderson dianders@chromium.org wrote:
The Linux get_maintainer.pl can often produce a whole lot of results. As a result you'll sometimes blow your CC field over 1024 characters and that can cause listservs to reject your message.
As a stopgap, call get_maintainer.pl with "--non" so it doesn't include real names. This will dramatically reduce the number of characters.
Signed-off-by: Doug Anderson dianders@chromium.org
tools/patman/get_maintainer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/patman/get_maintainer.py b/tools/patman/get_maintainer.py index 00b4939..a5160bc 100644 --- a/tools/patman/get_maintainer.py +++ b/tools/patman/get_maintainer.py @@ -43,5 +43,5 @@ def GetMaintainer(fname, verbose=False): print "WARNING: Couldn't find get_maintainer.pl" return []
- stdout = command.Output(get_maintainer, '--norolestats', fname)
- stdout = command.Output(get_maintainer, '--norolestats', '--non', fname) return stdout.splitlines()
-- 1.9.1.423.g4596e3a
Good to avoid this problem, but I wonder if we should check the size and re-run the command if too long? That way we can keep names on the thread when it is possible.
Also, why is there a limit on CC - is that a limitation described in the RFC, or just certain mailers? Can we get around it by specifying multiple Cc tags?
I believe that we're actually fighting a heuristic that the mailing list servers have to avoid spammers. In the past I've seen my mail get through to list servers that weren't run by kernel.org but _not_ the the ones at kernel.org. Kind of like how if you want to write code that's for generic exynos 5 hardware you need to use exynos_5yyy and _not_ replace the y with x (because that would be adult content!)
We could possibly only run the heuristic if the CC list was > 800 characters? I'd hesitate to getting too close to 1024 since I think there are instances where git will itself add a CC and that might blow us out.
Yes that seems reasonable - that way we get the names most of the time.
...another option is to just forget this patch and force people to add this to ".get_maintainer.conf"
I think the previous option is better.
Regards, Simon

Simon,
On Tue, May 13, 2014 at 11:17 AM, Simon Glass sjg@chromium.org wrote:
Hi Doug,
On 18 April 2014 15:32, Doug Anderson dianders@chromium.org wrote:
Simon,
On Fri, Apr 18, 2014 at 1:43 PM, Simon Glass sjg@chromium.org wrote:
Hi Doug,
On 17 April 2014 12:47, Doug Anderson dianders@chromium.org wrote:
The Linux get_maintainer.pl can often produce a whole lot of results. As a result you'll sometimes blow your CC field over 1024 characters and that can cause listservs to reject your message.
As a stopgap, call get_maintainer.pl with "--non" so it doesn't include real names. This will dramatically reduce the number of characters.
Signed-off-by: Doug Anderson dianders@chromium.org
tools/patman/get_maintainer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/patman/get_maintainer.py b/tools/patman/get_maintainer.py index 00b4939..a5160bc 100644 --- a/tools/patman/get_maintainer.py +++ b/tools/patman/get_maintainer.py @@ -43,5 +43,5 @@ def GetMaintainer(fname, verbose=False): print "WARNING: Couldn't find get_maintainer.pl" return []
- stdout = command.Output(get_maintainer, '--norolestats', fname)
- stdout = command.Output(get_maintainer, '--norolestats', '--non', fname) return stdout.splitlines()
-- 1.9.1.423.g4596e3a
Good to avoid this problem, but I wonder if we should check the size and re-run the command if too long? That way we can keep names on the thread when it is possible.
Also, why is there a limit on CC - is that a limitation described in the RFC, or just certain mailers? Can we get around it by specifying multiple Cc tags?
I believe that we're actually fighting a heuristic that the mailing list servers have to avoid spammers. In the past I've seen my mail get through to list servers that weren't run by kernel.org but _not_ the the ones at kernel.org. Kind of like how if you want to write code that's for generic exynos 5 hardware you need to use exynos_5yyy and _not_ replace the y with x (because that would be adult content!)
We could possibly only run the heuristic if the CC list was > 800 characters? I'd hesitate to getting too close to 1024 since I think there are instances where git will itself add a CC and that might blow us out.
Yes that seems reasonable - that way we get the names most of the time.
...another option is to just forget this patch and force people to add this to ".get_maintainer.conf"
I think the previous option is better.
I started coding this up and then realized one corner case that wouldn't be handled: the cover letter case. This is the most likely message to go over the limit, even if individual patches are not over the limit. That's because we add all addresses to the cover letter in (3118725 patman: Add all CC addresses to the cover letter).
If we want to try to handle this dynamically, we probably need to handle it at a higher level and manually strip off the full names right before passing it off to git.
What do you think?
-Doug

Hi Doug,
On 20 May 2014 12:51, Doug Anderson dianders@chromium.org wrote:
Simon,
On Tue, May 13, 2014 at 11:17 AM, Simon Glass sjg@chromium.org wrote:
Hi Doug,
On 18 April 2014 15:32, Doug Anderson dianders@chromium.org wrote:
Simon,
On Fri, Apr 18, 2014 at 1:43 PM, Simon Glass sjg@chromium.org wrote:
Hi Doug,
On 17 April 2014 12:47, Doug Anderson dianders@chromium.org wrote:
The Linux get_maintainer.pl can often produce a whole lot of results. As a result you'll sometimes blow your CC field over 1024 characters and that can cause listservs to reject your message.
As a stopgap, call get_maintainer.pl with "--non" so it doesn't include real names. This will dramatically reduce the number of characters.
Signed-off-by: Doug Anderson dianders@chromium.org
tools/patman/get_maintainer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/patman/get_maintainer.py b/tools/patman/get_maintainer.py index 00b4939..a5160bc 100644 --- a/tools/patman/get_maintainer.py +++ b/tools/patman/get_maintainer.py @@ -43,5 +43,5 @@ def GetMaintainer(fname, verbose=False): print "WARNING: Couldn't find get_maintainer.pl" return []
- stdout = command.Output(get_maintainer, '--norolestats', fname)
- stdout = command.Output(get_maintainer, '--norolestats', '--non', fname) return stdout.splitlines()
-- 1.9.1.423.g4596e3a
Good to avoid this problem, but I wonder if we should check the size and re-run the command if too long? That way we can keep names on the thread when it is possible.
Also, why is there a limit on CC - is that a limitation described in the RFC, or just certain mailers? Can we get around it by specifying multiple Cc tags?
I believe that we're actually fighting a heuristic that the mailing list servers have to avoid spammers. In the past I've seen my mail get through to list servers that weren't run by kernel.org but _not_ the the ones at kernel.org. Kind of like how if you want to write code that's for generic exynos 5 hardware you need to use exynos_5yyy and _not_ replace the y with x (because that would be adult content!)
We could possibly only run the heuristic if the CC list was > 800 characters? I'd hesitate to getting too close to 1024 since I think there are instances where git will itself add a CC and that might blow us out.
Yes that seems reasonable - that way we get the names most of the time.
...another option is to just forget this patch and force people to add this to ".get_maintainer.conf"
I think the previous option is better.
I started coding this up and then realized one corner case that wouldn't be handled: the cover letter case. This is the most likely message to go over the limit, even if individual patches are not over the limit. That's because we add all addresses to the cover letter in (3118725 patman: Add all CC addresses to the cover letter).
If we want to try to handle this dynamically, we probably need to handle it at a higher level and manually strip off the full names right before passing it off to git.
What do you think?
It looks like it should be doable in series.MakeCcFile unless I am misunderstanding the problem. It creates separate CC lists for each commit, including the cover letter.
Regards, Simon
participants (2)
-
Doug Anderson
-
Simon Glass