Re: [gentoo-portage-dev] [PATCH] sync: always pass -q to git-update-index

2016-11-03 Thread Zac Medico
On 11/03/2016 10:03 AM, Brian Dolbec wrote:
> On Thu, 3 Nov 2016 09:10:14 -0700
> Zac Medico  wrote:
> 
>> On 11/02/2016 11:17 PM, Brian Dolbec wrote:
>>> On Wed, 2 Nov 2016 21:57:09 -0700
>>> Zac Medico  wrote:
>>>   
 On 11/02/2016 05:17 PM, Zac Medico wrote:  
> On 11/02/2016 02:09 PM, Mike Gilbert wrote:
>> The -q option allows git-update-index to succeed even if there
>> are locally modified files present.
>>
>> X-Gentoo-Bug-URL: https://bugs.gentoo.org/552814#c58
>> ---
>>  pym/portage/sync/modules/git/git.py | 5 +
>>  1 file changed, 1 insertion(+), 4 deletions(-)
>>
>> diff --git a/pym/portage/sync/modules/git/git.py
>> b/pym/portage/sync/modules/git/git.py index dc94ec9..3db6dc1
>> 100644 --- a/pym/portage/sync/modules/git/git.py
>> +++ b/pym/portage/sync/modules/git/git.py
>> @@ -118,10 +118,7 @@ class GitSync(NewBase):
>>  if exitcode == os.EX_OK and self.repo.sync_depth
>> is not None: # update-index --refresh is needed on some
>> filesystems # (e.g. with overlayfs on squashfs)
>> -update_index_cmd = [self.bin_command,
>> 'update-index']
>> -if quiet: # -q needs to go first
>> -update_index_cmd.append('-q')
>> -update_index_cmd.append('--refresh')
>> +update_index_cmd = [self.bin_command,
>> 'update-index', '-q', '--refresh'] 
>>  exitcode =
>> subprocess.call(update_index_cmd,
>> cwd=portage._unicode_encode(self.repo.location))   
>
> LGTM.
>
> I just checked the man page, and this behavior is documented
> there:
>
> -q
>  Quiet. If --refresh finds that the index needs an update, the
> default behavior is to error out. This option makes git
> update-index continue anyway.
> 

 Actually we should probably add --unmerged, as suggested numerous
 times by Martin Väth.  
>>>
>>> I suspect we won't hear the end of our breakage of a perfectly
>>> working git module until maybe we add enough git-sync-options
>>> configurable in repos.conf to account for every possible file
>>> system and every possible repo useage/abuse-age...
>>>
>>>
>>> Maybe we should just ship several versions of a git module... one
>>> for every use case ;) (kidding)  
>>
>> Well the Funtoo people are disproportionately affected by anything we
>> do to this module, so we can expect to hear them complain loudly when
>> it breaks. We shouldn't let that stop us from adding important new
>> features though. I think Martin Väth is on the right track in
>> suggesting that we use `git update-index -q --unmerged` like git
>> status does.
> 
> yes, But I have also told them from the start, with this plug-in
> system, they can easily add their own custom git module that fits their
> exact needs.

Sure I suppose they could. However, I'm pretty sure that our generic
module will suit their needs as soon as we've worked out the bugs.
-- 
Thanks,
Zac



Re: [gentoo-portage-dev] [PATCH] sync: always pass -q to git-update-index

2016-11-03 Thread Brian Dolbec
On Thu, 3 Nov 2016 09:10:14 -0700
Zac Medico  wrote:

> On 11/02/2016 11:17 PM, Brian Dolbec wrote:
> > On Wed, 2 Nov 2016 21:57:09 -0700
> > Zac Medico  wrote:
> >   
> >> On 11/02/2016 05:17 PM, Zac Medico wrote:  
> >>> On 11/02/2016 02:09 PM, Mike Gilbert wrote:
>  The -q option allows git-update-index to succeed even if there
>  are locally modified files present.
> 
>  X-Gentoo-Bug-URL: https://bugs.gentoo.org/552814#c58
>  ---
>   pym/portage/sync/modules/git/git.py | 5 +
>   1 file changed, 1 insertion(+), 4 deletions(-)
> 
>  diff --git a/pym/portage/sync/modules/git/git.py
>  b/pym/portage/sync/modules/git/git.py index dc94ec9..3db6dc1
>  100644 --- a/pym/portage/sync/modules/git/git.py
>  +++ b/pym/portage/sync/modules/git/git.py
>  @@ -118,10 +118,7 @@ class GitSync(NewBase):
>   if exitcode == os.EX_OK and self.repo.sync_depth
>  is not None: # update-index --refresh is needed on some
>  filesystems # (e.g. with overlayfs on squashfs)
>  -update_index_cmd = [self.bin_command,
>  'update-index']
>  -if quiet: # -q needs to go first
>  -update_index_cmd.append('-q')
>  -update_index_cmd.append('--refresh')
>  +update_index_cmd = [self.bin_command,
>  'update-index', '-q', '--refresh'] 
>   exitcode =
>  subprocess.call(update_index_cmd,
>  cwd=portage._unicode_encode(self.repo.location))   
> >>>
> >>> LGTM.
> >>>
> >>> I just checked the man page, and this behavior is documented
> >>> there:
> >>>
> >>> -q
> >>>  Quiet. If --refresh finds that the index needs an update, the
> >>> default behavior is to error out. This option makes git
> >>> update-index continue anyway.
> >>> 
> >>
> >> Actually we should probably add --unmerged, as suggested numerous
> >> times by Martin Väth.  
> > 
> > I suspect we won't hear the end of our breakage of a perfectly
> > working git module until maybe we add enough git-sync-options
> > configurable in repos.conf to account for every possible file
> > system and every possible repo useage/abuse-age...
> > 
> > 
> > Maybe we should just ship several versions of a git module... one
> > for every use case ;) (kidding)  
> 
> Well the Funtoo people are disproportionately affected by anything we
> do to this module, so we can expect to hear them complain loudly when
> it breaks. We shouldn't let that stop us from adding important new
> features though. I think Martin Väth is on the right track in
> suggesting that we use `git update-index -q --unmerged` like git
> status does.

yes, But I have also told them from the start, with this plug-in
system, they can easily add their own custom git module that fits their
exact needs.

-- 
Brian Dolbec 




Re: [gentoo-portage-dev] [PATCH] sync: always pass -q to git-update-index

2016-11-03 Thread Zac Medico
On 11/02/2016 11:17 PM, Brian Dolbec wrote:
> On Wed, 2 Nov 2016 21:57:09 -0700
> Zac Medico  wrote:
> 
>> On 11/02/2016 05:17 PM, Zac Medico wrote:
>>> On 11/02/2016 02:09 PM, Mike Gilbert wrote:  
 The -q option allows git-update-index to succeed even if there are
 locally modified files present.

 X-Gentoo-Bug-URL: https://bugs.gentoo.org/552814#c58
 ---
  pym/portage/sync/modules/git/git.py | 5 +
  1 file changed, 1 insertion(+), 4 deletions(-)

 diff --git a/pym/portage/sync/modules/git/git.py
 b/pym/portage/sync/modules/git/git.py index dc94ec9..3db6dc1 100644
 --- a/pym/portage/sync/modules/git/git.py
 +++ b/pym/portage/sync/modules/git/git.py
 @@ -118,10 +118,7 @@ class GitSync(NewBase):
if exitcode == os.EX_OK and self.repo.sync_depth
 is not None: # update-index --refresh is needed on some filesystems
# (e.g. with overlayfs on squashfs)
 -  update_index_cmd = [self.bin_command,
 'update-index']
 -  if quiet: # -q needs to go first
 -  update_index_cmd.append('-q')
 -  update_index_cmd.append('--refresh')
 +  update_index_cmd = [self.bin_command,
 'update-index', '-q', '--refresh'] 
exitcode =
 subprocess.call(update_index_cmd,
 cwd=portage._unicode_encode(self.repo.location)) 
>>>
>>> LGTM.
>>>
>>> I just checked the man page, and this behavior is documented there:
>>>
>>> -q
>>>  Quiet. If --refresh finds that the index needs an update, the
>>> default behavior is to error out. This option makes git
>>> update-index continue anyway.
>>>   
>>
>> Actually we should probably add --unmerged, as suggested numerous
>> times by Martin Väth.
> 
> I suspect we won't hear the end of our breakage of a perfectly working
> git module until maybe we add enough git-sync-options configurable in
> repos.conf to account for every possible file system and every possible
> repo useage/abuse-age...
> 
> 
> Maybe we should just ship several versions of a git module... one for
> every use case ;) (kidding)

Well the Funtoo people are disproportionately affected by anything we do
to this module, so we can expect to hear them complain loudly when it
breaks. We shouldn't let that stop us from adding important new features
though. I think Martin Väth is on the right track in suggesting that we
use `git update-index -q --unmerged` like git status does.
-- 
Thanks,
Zac



Re: [gentoo-portage-dev] [PATCH] sync: always pass -q to git-update-index

2016-11-02 Thread Brian Dolbec
On Wed, 2 Nov 2016 21:57:09 -0700
Zac Medico  wrote:

> On 11/02/2016 05:17 PM, Zac Medico wrote:
> > On 11/02/2016 02:09 PM, Mike Gilbert wrote:  
> >> The -q option allows git-update-index to succeed even if there are
> >> locally modified files present.
> >>
> >> X-Gentoo-Bug-URL: https://bugs.gentoo.org/552814#c58
> >> ---
> >>  pym/portage/sync/modules/git/git.py | 5 +
> >>  1 file changed, 1 insertion(+), 4 deletions(-)
> >>
> >> diff --git a/pym/portage/sync/modules/git/git.py
> >> b/pym/portage/sync/modules/git/git.py index dc94ec9..3db6dc1 100644
> >> --- a/pym/portage/sync/modules/git/git.py
> >> +++ b/pym/portage/sync/modules/git/git.py
> >> @@ -118,10 +118,7 @@ class GitSync(NewBase):
> >>if exitcode == os.EX_OK and self.repo.sync_depth
> >> is not None: # update-index --refresh is needed on some filesystems
> >># (e.g. with overlayfs on squashfs)
> >> -  update_index_cmd = [self.bin_command,
> >> 'update-index']
> >> -  if quiet: # -q needs to go first
> >> -  update_index_cmd.append('-q')
> >> -  update_index_cmd.append('--refresh')
> >> +  update_index_cmd = [self.bin_command,
> >> 'update-index', '-q', '--refresh'] 
> >>exitcode =
> >> subprocess.call(update_index_cmd,
> >> cwd=portage._unicode_encode(self.repo.location)) 
> > 
> > LGTM.
> > 
> > I just checked the man page, and this behavior is documented there:
> > 
> > -q
> >  Quiet. If --refresh finds that the index needs an update, the
> > default behavior is to error out. This option makes git
> > update-index continue anyway.
> >   
> 
> Actually we should probably add --unmerged, as suggested numerous
> times by Martin Väth.

I suspect we won't hear the end of our breakage of a perfectly working
git module until maybe we add enough git-sync-options configurable in
repos.conf to account for every possible file system and every possible
repo useage/abuse-age...


Maybe we should just ship several versions of a git module... one for
every use case ;) (kidding)
-- 
Brian Dolbec 




Re: [gentoo-portage-dev] [PATCH] sync: always pass -q to git-update-index

2016-11-02 Thread Zac Medico
On 11/02/2016 05:17 PM, Zac Medico wrote:
> On 11/02/2016 02:09 PM, Mike Gilbert wrote:
>> The -q option allows git-update-index to succeed even if there are
>> locally modified files present.
>>
>> X-Gentoo-Bug-URL: https://bugs.gentoo.org/552814#c58
>> ---
>>  pym/portage/sync/modules/git/git.py | 5 +
>>  1 file changed, 1 insertion(+), 4 deletions(-)
>>
>> diff --git a/pym/portage/sync/modules/git/git.py 
>> b/pym/portage/sync/modules/git/git.py
>> index dc94ec9..3db6dc1 100644
>> --- a/pym/portage/sync/modules/git/git.py
>> +++ b/pym/portage/sync/modules/git/git.py
>> @@ -118,10 +118,7 @@ class GitSync(NewBase):
>>  if exitcode == os.EX_OK and self.repo.sync_depth is not None:
>>  # update-index --refresh is needed on some filesystems
>>  # (e.g. with overlayfs on squashfs)
>> -update_index_cmd = [self.bin_command, 'update-index']
>> -if quiet: # -q needs to go first
>> -update_index_cmd.append('-q')
>> -update_index_cmd.append('--refresh')
>> +update_index_cmd = [self.bin_command, 'update-index', 
>> '-q', '--refresh']
>>  
>>  exitcode = subprocess.call(update_index_cmd,
>>  cwd=portage._unicode_encode(self.repo.location))
>>
> 
> LGTM.
> 
> I just checked the man page, and this behavior is documented there:
> 
> -q
>  Quiet. If --refresh finds that the index needs an update, the default
> behavior is to error out. This option makes git update-index continue
> anyway.
> 

Actually we should probably add --unmerged, as suggested numerous times
by Martin Väth.
-- 
Thanks,
Zac



Re: [gentoo-portage-dev] [PATCH] sync: always pass -q to git-update-index

2016-11-02 Thread Zac Medico
On 11/02/2016 02:09 PM, Mike Gilbert wrote:
> The -q option allows git-update-index to succeed even if there are
> locally modified files present.
> 
> X-Gentoo-Bug-URL: https://bugs.gentoo.org/552814#c58
> ---
>  pym/portage/sync/modules/git/git.py | 5 +
>  1 file changed, 1 insertion(+), 4 deletions(-)
> 
> diff --git a/pym/portage/sync/modules/git/git.py 
> b/pym/portage/sync/modules/git/git.py
> index dc94ec9..3db6dc1 100644
> --- a/pym/portage/sync/modules/git/git.py
> +++ b/pym/portage/sync/modules/git/git.py
> @@ -118,10 +118,7 @@ class GitSync(NewBase):
>   if exitcode == os.EX_OK and self.repo.sync_depth is not None:
>   # update-index --refresh is needed on some filesystems
>   # (e.g. with overlayfs on squashfs)
> - update_index_cmd = [self.bin_command, 'update-index']
> - if quiet: # -q needs to go first
> - update_index_cmd.append('-q')
> - update_index_cmd.append('--refresh')
> + update_index_cmd = [self.bin_command, 'update-index', 
> '-q', '--refresh']
>  
>   exitcode = subprocess.call(update_index_cmd,
>   cwd=portage._unicode_encode(self.repo.location))
> 

LGTM.

I just checked the man page, and this behavior is documented there:

-q
 Quiet. If --refresh finds that the index needs an update, the default
behavior is to error out. This option makes git update-index continue
anyway.
-- 
Thanks,
Zac



[gentoo-portage-dev] [PATCH] sync: always pass -q to git-update-index

2016-11-02 Thread Mike Gilbert
The -q option allows git-update-index to succeed even if there are
locally modified files present.

X-Gentoo-Bug-URL: https://bugs.gentoo.org/552814#c58
---
 pym/portage/sync/modules/git/git.py | 5 +
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/pym/portage/sync/modules/git/git.py 
b/pym/portage/sync/modules/git/git.py
index dc94ec9..3db6dc1 100644
--- a/pym/portage/sync/modules/git/git.py
+++ b/pym/portage/sync/modules/git/git.py
@@ -118,10 +118,7 @@ class GitSync(NewBase):
if exitcode == os.EX_OK and self.repo.sync_depth is not None:
# update-index --refresh is needed on some filesystems
# (e.g. with overlayfs on squashfs)
-   update_index_cmd = [self.bin_command, 'update-index']
-   if quiet: # -q needs to go first
-   update_index_cmd.append('-q')
-   update_index_cmd.append('--refresh')
+   update_index_cmd = [self.bin_command, 'update-index', 
'-q', '--refresh']
 
exitcode = subprocess.call(update_index_cmd,
cwd=portage._unicode_encode(self.repo.location))
-- 
2.10.2