Re: [gentoo-dev] [news item review] bash-completion-2.1-r90, version 2

2014-11-20 Thread Diamond
On Mon, 10 Nov 2014 22:18:01 +0100
Michał Górny mgo...@gentoo.org wrote:

 Hello, developers.
 
 I'm planning to commit this news item before =2.1-r90 goes stable.

It's pretty strange, but after the last emerge -1uDN world system
update I lost bash-complition. It was removed
(app-admin/eselect-bashcomp-1.3.6, app-shells/bash-completion-1.3-r2,
app-shells/gentoo-bashcomp-20121024) during emerge --depclean
process. I have bash-completion USE-flag in /etc/portage/make.conf
and installed bashcomp long time ago. Now it was semi-automatically
deleted. May it be relatated to this changes (migration to 2.1-r90)?



Re: [gentoo-dev] [news item review] bash-completion-2.1-r90, version 2

2014-11-20 Thread Michał Górny
Dnia 2014-11-20, o godz. 11:58:59
Diamond diam...@hi-net.ru napisał(a):

 On Mon, 10 Nov 2014 22:18:01 +0100
 Michał Górny mgo...@gentoo.org wrote:
 
  Hello, developers.
  
  I'm planning to commit this news item before =2.1-r90 goes stable.
 
 It's pretty strange, but after the last emerge -1uDN world system
 update I lost bash-complition. It was removed
 (app-admin/eselect-bashcomp-1.3.6, app-shells/bash-completion-1.3-r2,
 app-shells/gentoo-bashcomp-20121024) during emerge --depclean
 process. I have bash-completion USE-flag in /etc/portage/make.conf
 and installed bashcomp long time ago. Now it was semi-automatically
 deleted. May it be relatated to this changes (migration to 2.1-r90)?

Partially. USE=bash-completion will be completely removed,
and completions will be installed unconditionally. You have to install
app-shells/bash-completion yourself if you want to use it.

Maybe I should mention the USE flag changes too in the news item :).

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] [news item review] bash-completion-2.1-r90, version 2

2014-11-20 Thread Michał Górny
Dnia 2014-11-10, o godz. 22:18:01
Michał Górny mgo...@gentoo.org napisał(a):

 Hello, developers.
 
 I'm planning to commit this news item before =2.1-r90 goes stable.
 I have rewritten the message to be more user-oriented like Rich
 suggested (big thanks to you!) and added a paragraph about loading
 bashcomp in bashrc.
 
 Please review.

Next version, added the paragraph about USE=bash-completion.

-- 
Best regards,
Michał Górny
Title: bash-completion-2.1-r90
Author: Michał Górny mgo...@gentoo.org
Content-Type: text/plain
Posted: 2014-MM-DD
Revision: 1
News-Item-Format: 1.0
Display-If-Installed: app-shells/bash-completion-2.1-r90

Starting with app-shells/bash-completion-2.1-r90, the framework used to
enable and manage completions in Gentoo is finally changing in order to
properly follow upstream design. This has some important implications
for our users.

Firstly, the install location for completions changes to follow upstream
default.  The completions enabled before the upgrade will continue to
work but you may no longer be able to enable or disable completions
installed prior to the upgrade. To solve this issue, the packages
installing completions need to rebuilt. The following command can be
used to automatically rebuild all the relevant packages:

$ find /usr/share/bash-completion -maxdepth 1 -type f \
'!' -name 'bash_completion' -exec emerge -1v {} +

Secondly, the autoloading support introduced upstream removes the
penalties involved with enabling a great number of completions. This
allowed us to switch to an opt-out model where all completions installed
after the upgrade are enabled by default. Specific completions can be
disabled using 'eselect bashcomp disable ...'

The model change implies that all current selections done using 'eselect
bashcomp' can not be properly migrated and will be disregarded when
the relevant completion files are built against the new bash-completion
version. After rebuilding all the packages providing completion files,
you may want to remove the symlinks that were used to configure
the previous framework using the following command:

$ find /etc/bash_completion.d -type l -delete

Thirdly, we have solved the issue causing bash-completion support to be
enabled by default on login shells only. If you needed to explicitly
source 'bash_completion' script in bashrc, you can safely remove that
code now since system-wide bashrc takes care of loading it.

Lastly, we would like to explain that USE=bash-completion is being
removed from packages for the completions will be installed
unconditionally now. However, this will result in some implicit
dependencies being removed. Most specifically, users wishing to use
bash-completion will have to request app-shells/bash-completion
explicitly, e.g.:

$ emerge -n app-shells/bash-completion


signature.asc
Description: PGP signature


Re: [gentoo-dev] [news item review] bash-completion-2.1-r90, version 2

2014-11-11 Thread Marc Schiffbauer

* Michał Górny schrieb am 10.11.14 um 22:18 Uhr:

Hello, developers.

I'm planning to commit this news item before =2.1-r90 goes stable.
I have rewritten the message to be more user-oriented like Rich
suggested (big thanks to you!) and added a paragraph about loading
bashcomp in bashrc.

Please review.


Looks good to me, but to remove stale symlinks you need to add the 
-L option to find. Or write just symlinks, because like this it 
will remove *all* symlinks.




$ find /etc/bash_completion.d -type l -delete



-Marc

--
0x35A64134 - 8AAC 5F46 83B4 DB70 8317
3723 296C 6CCA 35A6 4134


signature.asc
Description: Digital signature


Re: [gentoo-dev] [news item review] bash-completion-2.1-r90, version 2

2014-11-11 Thread Michał Górny
Dnia 2014-11-11, o godz. 09:53:58
Marc Schiffbauer msch...@gentoo.org napisał(a):

 * Michał Górny schrieb am 10.11.14 um 22:18 Uhr:
 Hello, developers.
 
 I'm planning to commit this news item before =2.1-r90 goes stable.
 I have rewritten the message to be more user-oriented like Rich
 suggested (big thanks to you!) and added a paragraph about loading
 bashcomp in bashrc.
 
 Please review.
 
 Looks good to me, but to remove stale symlinks you need to add the 
 -L option to find. Or write just symlinks, because like this it 
 will remove *all* symlinks.

Well, the meaning was 'all symlinks since they are stale now'. I will
try to reword it.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] [news item review] bash-completion-2.1-r90, version 2

2014-11-11 Thread Michał Górny
Dnia 2014-11-11, o godz. 09:53:58
Marc Schiffbauer msch...@gentoo.org napisał(a):

 * Michał Górny schrieb am 10.11.14 um 22:18 Uhr:
 Hello, developers.
 
 I'm planning to commit this news item before =2.1-r90 goes stable.
 I have rewritten the message to be more user-oriented like Rich
 suggested (big thanks to you!) and added a paragraph about loading
 bashcomp in bashrc.
 
 Please review.
 
 Looks good to me, but to remove stale symlinks you need to add the 
 -L option to find. Or write just symlinks, because like this it 
 will remove *all* symlinks.

Is the attached version more clear?

-- 
Best regards,
Michał Górny
Title: bash-completion-2.1-r90
Author: Michał Górny mgo...@gentoo.org
Content-Type: text/plain
Posted: 2014-MM-DD
Revision: 1
News-Item-Format: 1.0
Display-If-Installed: app-shells/bash-completion-2.1-r90

Starting with app-shells/bash-completion-2.1-r90, the framework used to
enable and manage completions in Gentoo is finally changing in order to
properly follow upstream design. This has some important implications
for our users.

Firstly, the install location for completions changes to follow upstream
default.  The completions enabled before the upgrade will continue to
work but you may no longer be able to enable or disable completions
installed prior to the upgrade. To solve this issue, the packages
installing completions need to rebuilt. The following command can be
used to automatically rebuild all the relevant packages:

$ find /usr/share/bash-completion -maxdepth 1 -type f \
'!' -name 'bash_completion' -exec emerge -1v {} +

Secondly, the autoloading support introduced upstream removes the
penalties involved with enabling a great number of completions. This
allowed us to switch to an opt-out model where all completions installed
after the upgrade are enabled by default. Specific completions can be
disabled using 'eselect bashcomp disable ...'

The model change implies that all current selections done using 'eselect
bashcomp' can not be properly migrated and will be disregarded when
the relevant completion files are built against the new bash-completion
version. After rebuilding all the packages providing completion files,
you may want to remove the symlinks that were used to configure
the previous framework using the following command:

$ find /etc/bash_completion.d -type l -delete

Lastly, we have solved the issue causing bash-completion support to be
enabled by default on login shells only. If you needed to explicitly
source 'bash_completion' script in bashrc, you can safely remove that
code now since system-wide bashrc takes care of loading it.


signature.asc
Description: PGP signature


Re: [gentoo-dev] [news item review] bash-completion-2.1-r90, version 2

2014-11-11 Thread Marc Schiffbauer

* Michał Górny schrieb am 11.11.14 um 12:06 Uhr:

Dnia 2014-11-11, o godz. 09:53:58
Marc Schiffbauer msch...@gentoo.org napisał(a):


* Michał Górny schrieb am 10.11.14 um 22:18 Uhr:
Hello, developers.

I'm planning to commit this news item before =2.1-r90 goes stable.
I have rewritten the message to be more user-oriented like Rich
suggested (big thanks to you!) and added a paragraph about loading
bashcomp in bashrc.

Please review.

Looks good to me, but to remove stale symlinks you need to add the
-L option to find. Or write just symlinks, because like this it
will remove *all* symlinks.


Is the attached version more clear?


Yes, I think so.


--
0x35A64134 - 8AAC 5F46 83B4 DB70 8317
3723 296C 6CCA 35A6 4134


signature.asc
Description: Digital signature


Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-19 Thread Michał Górny
Dnia 2014-10-13, o godz. 12:23:52
Pacho Ramos pa...@gentoo.org napisał(a):

 El lun, 13-10-2014 a las 11:35 +0200, Michał Górny escribió:
  Please review the following news item.
 [...]
  The current eselect-bashcomp setup will *not* be migrated. It may be
  necessary to rebuild packages installing completions after the upgrade,
  and remove old configuration symlinks afterwards. For details, please
  consult the app-shells/bash-completion post-install messages.
  
  
 
 As I read in ebuild, the only additional information is about to run:
 $ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!'
 -name 'bash_completion' -exec emerge -1v {} +
 
 For rebuilding packages installing in old location and to run:
 $ find ${EPREFIX}/etc/bash_completion.d -type l -delete
 
 for removing the old links
 
 Why not include this information in news item too? :)

Well, there were a few reasons:

1. I didn't want people to accidentally run the rebuild before updating
bash-completion.

2. ${EPREFIX} is substituted within ebuild.

3. Having a single doc source is easier to manage. Especially if I
improved the commands in the future.

But I guess having them here is fine too, esp. if you upgraded bashcomp
already.

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-19 Thread Michał Górny
Dnia 2014-10-14, o godz. 02:41:58
Peter Stuge pe...@stuge.se napisał(a):

 Peter Stuge wrote:
  There is a severe behavioral penalty!
 
 Rich Freeman wrote:
   I really do not want that to be chosen for me.
  
  Well, then all you need to do is tell eselect to disable them, etc.
 
 Well, but see above - this is a huge change in behavior - I really
 don't think that should be done so lightly. I would be against it
 even if I actually wanted completions by default.

Then complain to upstream. Switching completions on/off is really
poorly supported, and doesn't work properly in many cases. I've added
the opt-out for the sake of it, and I still have serious doubts over
the added complexity and maintaining custom patches.

  It always seemed pointless to me that there are a million bash
  completion filters installed on my system and I can't use them
  without going through eselect and turning them all on.  :)
 
 Is USE=bash-completion set by default profiles? I suppose that that
 is what should actually control whether completions are available.

USE=bash-completion is not supposed to be used to control installing
completion files, just extra dependencies.

 I would unset it on my system to not have completions.

Then don't install bash-completion, or use INSTALL_MASK. Do we have to
reiterate this over and over again with every file installed?

-- 
Best regards,
Michał Górny


signature.asc
Description: PGP signature


Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Pacho Ramos
El lun, 13-10-2014 a las 11:35 +0200, Michał Górny escribió:
 Please review the following news item.
[...]
 The current eselect-bashcomp setup will *not* be migrated. It may be
 necessary to rebuild packages installing completions after the upgrade,
 and remove old configuration symlinks afterwards. For details, please
 consult the app-shells/bash-completion post-install messages.
 
 

As I read in ebuild, the only additional information is about to run:
$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!'
-name 'bash_completion' -exec emerge -1v {} +

For rebuilding packages installing in old location and to run:
$ find ${EPREFIX}/etc/bash_completion.d -type l -delete

for removing the old links

Why not include this information in news item too? :)




Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Alex Xu
On 13/10/14 05:35 AM, Michał Górny wrote:
 Please review the following news item.
 
 -
 
 Title: bash-completion-2.1-r90
 Author: Michał Górny mgo...@gentoo.org
 Content-Type: text/plain
 Posted: -MM-DD
 Revision: 1
 News-Item-Format: 1.0
 Display-If-Installed: app-shells/bash-completion-2.1-r90
 
 Starting with app-shells/bash-completion-2.1-r90, we are enabling
 the completion autoloading support. Along with it, we are replacing
 the eselect-bashcomp module with a new one suited better for the new
 framework.
 
 Users will notice that the new framework is opt-out rather than opt-in.
 Since completions are loaded on-demand, all of them are enabled
 by default. If some of them are undesired, eselect-bashcomp can be used
 to explicitly disable (mask) them.
 
 The current eselect-bashcomp setup will *not* be migrated. It may be
 necessary to rebuild packages installing completions after the upgrade,
 and remove old configuration symlinks afterwards. For details, please
 consult the app-shells/bash-completion post-install messages.
 
 

seems too oriented towards developer audiences, whereas news items are
intended to target users; iow, I don't care what's going on behind the
scenes, just tell me what I need to do to fix it.



signature.asc
Description: OpenPGP digital signature


Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Guilherme Amadio
On Mon, Oct 13, 2014 at 07:37:19AM -0400, Alex Xu wrote:
 On 13/10/14 05:35 AM, Michał Górny wrote:
  Please review the following news item.
  
  -
  
  Title: bash-completion-2.1-r90
  Author: Michał Górny mgo...@gentoo.org
  Content-Type: text/plain
  Posted: -MM-DD
  Revision: 1
  News-Item-Format: 1.0
  Display-If-Installed: app-shells/bash-completion-2.1-r90
  
  Starting with app-shells/bash-completion-2.1-r90, we are enabling
  the completion autoloading support. Along with it, we are replacing
  the eselect-bashcomp module with a new one suited better for the new
  framework.
  
  Users will notice that the new framework is opt-out rather than opt-in.
  Since completions are loaded on-demand, all of them are enabled
  by default. If some of them are undesired, eselect-bashcomp can be used
  to explicitly disable (mask) them.
  
  The current eselect-bashcomp setup will *not* be migrated. It may be
  necessary to rebuild packages installing completions after the upgrade,
  and remove old configuration symlinks afterwards. For details, please
  consult the app-shells/bash-completion post-install messages.
  
  
 
 seems too oriented towards developer audiences, whereas news items are
 intended to target users; iow, I don't care what's going on behind the
 scenes, just tell me what I need to do to fix it.
 

 I disagree. I'm a user, and I'm interested in what is going on behind
 the scenes. I think that it's safe to assume that many Gentoo users care
 about the internals of the distribution too. I've actually been waiting
 for this to hit the tree since mgorny announced it. The news announcement
 is pretty good; I'd only incorporate pacho's suggestion to include the two
 commands needed to fix old stuff, and then I think it's good to go.

 —Guilherme






Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Peter Stuge
Michał Górny wrote:
 the new framework is opt-out rather than opt-in.

Why is it desirable to make that change?


//Peter


pgpAbh_XiMjXl.pgp
Description: PGP signature


Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Rich Freeman
On Mon, Oct 13, 2014 at 12:52 PM, Peter Stuge pe...@stuge.se wrote:
 Michał Górny wrote:
 the new framework is opt-out rather than opt-in.

 Why is it desirable to make that change?


 //Peter



Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Rich Freeman
Disregard previous fat-finger reply...

On Mon, Oct 13, 2014 at 12:52 PM, Peter Stuge pe...@stuge.se wrote:
 Michał Górny wrote:
 the new framework is opt-out rather than opt-in.

 Why is it desirable to make that change?


See my previous email:
3. Unlike in the past, there is no longer a performance penalty from
having too many bash completion modules enabled, which is why we're
changing.  We think that most users will prefer to just leave
everything enabled now.

--
Rich



Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Peter Stuge
Rich Freeman wrote:
  the new framework is opt-out rather than opt-in.
 
  Why is it desirable to make that change?
 
 there is no longer a performance penalty

There is a severe behavioral penalty!


 We think that most users will prefer to just leave everything enabled now.

I really do not want that to be chosen for me.

Opt-out is not cool. :(


//Peter



Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Rich Freeman
On Mon, Oct 13, 2014 at 7:32 PM, Peter Stuge pe...@stuge.se wrote:

 I really do not want that to be chosen for me.

 Opt-out is not cool. :(


Well, then all you need to do is tell eselect to disable them, etc.

It always seemed pointless to me that there are a million bash
completion filters installed on my system and I can't use them without
going through eselect and turning them all on.  :)

I'm sure some subset of the users would prefer them to be opt-in, and
another will prefer to have them be opt-out...

--
Rich



Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Peter Stuge
Peter Stuge wrote:
 There is a severe behavioral penalty!

Rich Freeman wrote:
  I really do not want that to be chosen for me.
 
 Well, then all you need to do is tell eselect to disable them, etc.

Well, but see above - this is a huge change in behavior - I really
don't think that should be done so lightly. I would be against it
even if I actually wanted completions by default.


 It always seemed pointless to me that there are a million bash
 completion filters installed on my system and I can't use them
 without going through eselect and turning them all on.  :)

Is USE=bash-completion set by default profiles? I suppose that that
is what should actually control whether completions are available.

I would unset it on my system to not have completions.


//Peter



Re: [gentoo-dev] News item review: bash-completion-2.1-r90

2014-10-13 Thread Alexander Tsoy
On Tue Oct 14 03:32:32 2014 Peter Stuge pe...@stuge.se wrote:
 Rich Freeman wrote:
the new framework is opt-out rather than opt-in.
   
   Why is it desirable to make that change?
  
  there is no longer a performance penalty
 
 There is a severe behavioral penalty!
 
 
  We think that most users will prefer to just leave everything enabled
  now.
 
 I really do not want that to be chosen for me.

Given the amount of completions it's unmaintainable with opt-in:

$ ls /usr/share/bash-completion/completions/ | wc -l
709

-- 
Alexander Tsoy