You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by Guillaume Nodet <gn...@gmail.com> on 2009/07/02 08:08:11 UTC

[karaf] Switching from gshell to gogo

I've been considering swithing karaf shell from Geronimo Gshell to Felix Gogo.
The main reasons are:
  * Gogo is/will implement OSGi RFC 0142 to standardize the shell
(it's not yet a spec, but should be in the future)
  * Gogo should be able to be used at launch time to run the framework
  * Gogo shell syntax is more powerfull, in addition to pipes, it
supports closures, loops, if / then / else ...
  * lightweight: < 100 ko vs > 1 Mo for gshell

The drawbacks are:
  * yet another change in the syntax (we've already changed it when
between 1.0.0 and 1.1.0)
  * some more work is needed as we're currently missing completors,
history, banner

Feedback welcome

-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: [karaf] Switching from gshell to gogo

Posted by Charles Moulliard <cm...@gmail.com>.
Based on what I read from your reply - pdf document of the OSGI spec, I
would suggest to migrate.

Regards,

Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer

*****************************
blog : http://cmoulliard.blogspot.com


On Thu, Jul 2, 2009 at 11:56 AM, Guillaume Nodet <gn...@gmail.com> wrote:

> Well, if we consider switching, it *is* the right moment, as Karaf has
> not done any release yet.
> I'd rather do that before the first release than after.
>
> That said, the commands will be the same as we would just port the
> existing karaf commands for gshell to gogo, which currently has a very
> minimal impact (change the base class and the package for annotations,
> that's mostly it).
> From a syntax point of view, the difference now is that they would
> look like osgi:list instead of osgi/list, but I'm quite sure I can
> hack gogo to allow the customization of the separator.
> I don't see any technical problems in porting the completers (which
> are really helpful).
>
> So in short, if I can configure gogo to use '/' instead of ':' as a
> separator, it should be mostly transparent for end users.  People
> having written commands would need to migrate though (but as I said,
> it's easy to do).
>
> On Thu, Jul 2, 2009 at 10:16, Charles Moulliard<cm...@gmail.com>
> wrote:
> > Hi guillaume,
> >
> > From a technical point of view, this seems very interesting but is it the
> > right moment to do this migration regarding to client(s) using Apache
> > ServiceMix4, ... ? This will impact existing documents, tutorials, ...
> >
> > Regards,
> >
> > Charles Moulliard
> > Senior Enterprise Architect
> > Apache Camel Committer
> >
> > *****************************
> > blog : http://cmoulliard.blogspot.com
> >
> >
> > On Thu, Jul 2, 2009 at 8:08 AM, Guillaume Nodet <gn...@gmail.com>
> wrote:
> >
> >> I've been considering swithing karaf shell from Geronimo Gshell to Felix
> >> Gogo.
> >> The main reasons are:
> >>  * Gogo is/will implement OSGi RFC 0142 to standardize the shell
> >> (it's not yet a spec, but should be in the future)
> >>  * Gogo should be able to be used at launch time to run the framework
> >>  * Gogo shell syntax is more powerfull, in addition to pipes, it
> >> supports closures, loops, if / then / else ...
> >>  * lightweight: < 100 ko vs > 1 Mo for gshell
> >>
> >> The drawbacks are:
> >>  * yet another change in the syntax (we've already changed it when
> >> between 1.0.0 and 1.1.0)
> >>  * some more work is needed as we're currently missing completors,
> >> history, banner
> >>
> >> Feedback welcome
> >>
> >> --
> >> Cheers,
> >> Guillaume Nodet
> >> ------------------------
> >> Blog: http://gnodet.blogspot.com/
> >> ------------------------
> >> Open Source SOA
> >> http://fusesource.com
> >>
> >
>
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
>

Re: [karaf] Switching from gshell to gogo

Posted by Guillaume Nodet <gn...@gmail.com>.
Yeah, i've seen this one, and I was thinking of hacking gogo to allow those.
I don't think it should be treated as a real separator anyway.

On Thu, Jul 2, 2009 at 12:21, David Savage<da...@paremus.com> wrote:
> Just to point out, one other minor difference between RFC 132 and
> other command handlers...having made the conversion ourselves in Posh
> [1] The TCL implementation treats command names as method names so
> they need to be valid java names - so characters like "-" are not
> allowed. In our case command with names such as "do-this" had to
> become "do_this"
>
> Possibly this is a limitation of the current impl vs a requirement of the spec?
>
> But I thought I'd warn you...
>
> Regards,
>
> Dave
>
> [1] http://www.paremus.com/resources/_resources_presentations_pdf/Paremus_-_Posh_-_an_OSGi_shell_-_RFC132_in_action.html
>
> On Thu, Jul 2, 2009 at 10:56 AM, Guillaume Nodet<gn...@gmail.com> wrote:
>> Well, if we consider switching, it *is* the right moment, as Karaf has
>> not done any release yet.
>> I'd rather do that before the first release than after.
>>
>> That said, the commands will be the same as we would just port the
>> existing karaf commands for gshell to gogo, which currently has a very
>> minimal impact (change the base class and the package for annotations,
>> that's mostly it).
>> From a syntax point of view, the difference now is that they would
>> look like osgi:list instead of osgi/list, but I'm quite sure I can
>> hack gogo to allow the customization of the separator.
>> I don't see any technical problems in porting the completers (which
>> are really helpful).
>>
>> So in short, if I can configure gogo to use '/' instead of ':' as a
>> separator, it should be mostly transparent for end users.  People
>> having written commands would need to migrate though (but as I said,
>> it's easy to do).
>>
>> On Thu, Jul 2, 2009 at 10:16, Charles Moulliard<cm...@gmail.com> wrote:
>>> Hi guillaume,
>>>
>>> From a technical point of view, this seems very interesting but is it the
>>> right moment to do this migration regarding to client(s) using Apache
>>> ServiceMix4, ... ? This will impact existing documents, tutorials, ...
>>>
>>> Regards,
>>>
>>> Charles Moulliard
>>> Senior Enterprise Architect
>>> Apache Camel Committer
>>>
>>> *****************************
>>> blog : http://cmoulliard.blogspot.com
>>>
>>>
>>> On Thu, Jul 2, 2009 at 8:08 AM, Guillaume Nodet <gn...@gmail.com> wrote:
>>>
>>>> I've been considering swithing karaf shell from Geronimo Gshell to Felix
>>>> Gogo.
>>>> The main reasons are:
>>>>  * Gogo is/will implement OSGi RFC 0142 to standardize the shell
>>>> (it's not yet a spec, but should be in the future)
>>>>  * Gogo should be able to be used at launch time to run the framework
>>>>  * Gogo shell syntax is more powerfull, in addition to pipes, it
>>>> supports closures, loops, if / then / else ...
>>>>  * lightweight: < 100 ko vs > 1 Mo for gshell
>>>>
>>>> The drawbacks are:
>>>>  * yet another change in the syntax (we've already changed it when
>>>> between 1.0.0 and 1.1.0)
>>>>  * some more work is needed as we're currently missing completors,
>>>> history, banner
>>>>
>>>> Feedback welcome
>>>>
>>>> --
>>>> Cheers,
>>>> Guillaume Nodet
>>>> ------------------------
>>>> Blog: http://gnodet.blogspot.com/
>>>> ------------------------
>>>> Open Source SOA
>>>> http://fusesource.com
>>>>
>>>
>>
>>
>>
>> --
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>> ------------------------
>> Open Source SOA
>> http://fusesource.com
>>
>
>
>
> --
> -------------------------------------------------------------------------------------
>
> Paremus Limited. Registered in England. Registration No. 4181472
>
> Registered Office: 22-24 Broad Street, Wokingham, Berks RG40 1BA
>
> Postal Address: 107-111 Fleet Street, London, EC4A 2AB
>
> The information transmitted is intended only for the person(s) or
> entity to which it is addressed and may contain confidential and/or
> privileged material. Any review, retransmission, dissemination or
> other use of, or taking of any action in reliance upon, this
> information by persons or entities other than the intended recipient
> is prohibited.
>
> If you received this in error, please contact the sender and delete
> the material from any computer.
>
> -------------------------------------------------------------------------------------
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: [karaf] Switching from gshell to gogo

Posted by David Savage <da...@paremus.com>.
Just to point out, one other minor difference between RFC 132 and
other command handlers...having made the conversion ourselves in Posh
[1] The TCL implementation treats command names as method names so
they need to be valid java names - so characters like "-" are not
allowed. In our case command with names such as "do-this" had to
become "do_this"

Possibly this is a limitation of the current impl vs a requirement of the spec?

But I thought I'd warn you...

Regards,

Dave

[1] http://www.paremus.com/resources/_resources_presentations_pdf/Paremus_-_Posh_-_an_OSGi_shell_-_RFC132_in_action.html

On Thu, Jul 2, 2009 at 10:56 AM, Guillaume Nodet<gn...@gmail.com> wrote:
> Well, if we consider switching, it *is* the right moment, as Karaf has
> not done any release yet.
> I'd rather do that before the first release than after.
>
> That said, the commands will be the same as we would just port the
> existing karaf commands for gshell to gogo, which currently has a very
> minimal impact (change the base class and the package for annotations,
> that's mostly it).
> From a syntax point of view, the difference now is that they would
> look like osgi:list instead of osgi/list, but I'm quite sure I can
> hack gogo to allow the customization of the separator.
> I don't see any technical problems in porting the completers (which
> are really helpful).
>
> So in short, if I can configure gogo to use '/' instead of ':' as a
> separator, it should be mostly transparent for end users.  People
> having written commands would need to migrate though (but as I said,
> it's easy to do).
>
> On Thu, Jul 2, 2009 at 10:16, Charles Moulliard<cm...@gmail.com> wrote:
>> Hi guillaume,
>>
>> From a technical point of view, this seems very interesting but is it the
>> right moment to do this migration regarding to client(s) using Apache
>> ServiceMix4, ... ? This will impact existing documents, tutorials, ...
>>
>> Regards,
>>
>> Charles Moulliard
>> Senior Enterprise Architect
>> Apache Camel Committer
>>
>> *****************************
>> blog : http://cmoulliard.blogspot.com
>>
>>
>> On Thu, Jul 2, 2009 at 8:08 AM, Guillaume Nodet <gn...@gmail.com> wrote:
>>
>>> I've been considering swithing karaf shell from Geronimo Gshell to Felix
>>> Gogo.
>>> The main reasons are:
>>>  * Gogo is/will implement OSGi RFC 0142 to standardize the shell
>>> (it's not yet a spec, but should be in the future)
>>>  * Gogo should be able to be used at launch time to run the framework
>>>  * Gogo shell syntax is more powerfull, in addition to pipes, it
>>> supports closures, loops, if / then / else ...
>>>  * lightweight: < 100 ko vs > 1 Mo for gshell
>>>
>>> The drawbacks are:
>>>  * yet another change in the syntax (we've already changed it when
>>> between 1.0.0 and 1.1.0)
>>>  * some more work is needed as we're currently missing completors,
>>> history, banner
>>>
>>> Feedback welcome
>>>
>>> --
>>> Cheers,
>>> Guillaume Nodet
>>> ------------------------
>>> Blog: http://gnodet.blogspot.com/
>>> ------------------------
>>> Open Source SOA
>>> http://fusesource.com
>>>
>>
>
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
>



-- 
-------------------------------------------------------------------------------------

Paremus Limited. Registered in England. Registration No. 4181472

Registered Office: 22-24 Broad Street, Wokingham, Berks RG40 1BA

Postal Address: 107-111 Fleet Street, London, EC4A 2AB

The information transmitted is intended only for the person(s) or
entity to which it is addressed and may contain confidential and/or
privileged material. Any review, retransmission, dissemination or
other use of, or taking of any action in reliance upon, this
information by persons or entities other than the intended recipient
is prohibited.

If you received this in error, please contact the sender and delete
the material from any computer.

-------------------------------------------------------------------------------------

Re: [karaf] Switching from gshell to gogo

Posted by da...@apache.org.
+1 for switching to gogo

David

2009/7/2 Guillaume Nodet <gn...@gmail.com>:
> Well, if we consider switching, it *is* the right moment, as Karaf has
> not done any release yet.
> I'd rather do that before the first release than after.
>
> That said, the commands will be the same as we would just port the
> existing karaf commands for gshell to gogo, which currently has a very
> minimal impact (change the base class and the package for annotations,
> that's mostly it).
> From a syntax point of view, the difference now is that they would
> look like osgi:list instead of osgi/list, but I'm quite sure I can
> hack gogo to allow the customization of the separator.
> I don't see any technical problems in porting the completers (which
> are really helpful).
>
> So in short, if I can configure gogo to use '/' instead of ':' as a
> separator, it should be mostly transparent for end users.  People
> having written commands would need to migrate though (but as I said,
> it's easy to do).
>
> On Thu, Jul 2, 2009 at 10:16, Charles Moulliard<cm...@gmail.com> wrote:
>> Hi guillaume,
>>
>> From a technical point of view, this seems very interesting but is it the
>> right moment to do this migration regarding to client(s) using Apache
>> ServiceMix4, ... ? This will impact existing documents, tutorials, ...
>>
>> Regards,
>>
>> Charles Moulliard
>> Senior Enterprise Architect
>> Apache Camel Committer
>>
>> *****************************
>> blog : http://cmoulliard.blogspot.com
>>
>>
>> On Thu, Jul 2, 2009 at 8:08 AM, Guillaume Nodet <gn...@gmail.com> wrote:
>>
>>> I've been considering swithing karaf shell from Geronimo Gshell to Felix
>>> Gogo.
>>> The main reasons are:
>>>  * Gogo is/will implement OSGi RFC 0142 to standardize the shell
>>> (it's not yet a spec, but should be in the future)
>>>  * Gogo should be able to be used at launch time to run the framework
>>>  * Gogo shell syntax is more powerfull, in addition to pipes, it
>>> supports closures, loops, if / then / else ...
>>>  * lightweight: < 100 ko vs > 1 Mo for gshell
>>>
>>> The drawbacks are:
>>>  * yet another change in the syntax (we've already changed it when
>>> between 1.0.0 and 1.1.0)
>>>  * some more work is needed as we're currently missing completors,
>>> history, banner
>>>
>>> Feedback welcome
>>>
>>> --
>>> Cheers,
>>> Guillaume Nodet
>>> ------------------------
>>> Blog: http://gnodet.blogspot.com/
>>> ------------------------
>>> Open Source SOA
>>> http://fusesource.com
>>>
>>
>
>
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
>

Re: [karaf] Switching from gshell to gogo

Posted by Guillaume Nodet <gn...@gmail.com>.
Well, if we consider switching, it *is* the right moment, as Karaf has
not done any release yet.
I'd rather do that before the first release than after.

That said, the commands will be the same as we would just port the
existing karaf commands for gshell to gogo, which currently has a very
minimal impact (change the base class and the package for annotations,
that's mostly it).
>From a syntax point of view, the difference now is that they would
look like osgi:list instead of osgi/list, but I'm quite sure I can
hack gogo to allow the customization of the separator.
I don't see any technical problems in porting the completers (which
are really helpful).

So in short, if I can configure gogo to use '/' instead of ':' as a
separator, it should be mostly transparent for end users.  People
having written commands would need to migrate though (but as I said,
it's easy to do).

On Thu, Jul 2, 2009 at 10:16, Charles Moulliard<cm...@gmail.com> wrote:
> Hi guillaume,
>
> From a technical point of view, this seems very interesting but is it the
> right moment to do this migration regarding to client(s) using Apache
> ServiceMix4, ... ? This will impact existing documents, tutorials, ...
>
> Regards,
>
> Charles Moulliard
> Senior Enterprise Architect
> Apache Camel Committer
>
> *****************************
> blog : http://cmoulliard.blogspot.com
>
>
> On Thu, Jul 2, 2009 at 8:08 AM, Guillaume Nodet <gn...@gmail.com> wrote:
>
>> I've been considering swithing karaf shell from Geronimo Gshell to Felix
>> Gogo.
>> The main reasons are:
>>  * Gogo is/will implement OSGi RFC 0142 to standardize the shell
>> (it's not yet a spec, but should be in the future)
>>  * Gogo should be able to be used at launch time to run the framework
>>  * Gogo shell syntax is more powerfull, in addition to pipes, it
>> supports closures, loops, if / then / else ...
>>  * lightweight: < 100 ko vs > 1 Mo for gshell
>>
>> The drawbacks are:
>>  * yet another change in the syntax (we've already changed it when
>> between 1.0.0 and 1.1.0)
>>  * some more work is needed as we're currently missing completors,
>> history, banner
>>
>> Feedback welcome
>>
>> --
>> Cheers,
>> Guillaume Nodet
>> ------------------------
>> Blog: http://gnodet.blogspot.com/
>> ------------------------
>> Open Source SOA
>> http://fusesource.com
>>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: [karaf] Switching from gshell to gogo

Posted by Charles Moulliard <cm...@gmail.com>.
Hi guillaume,

>From a technical point of view, this seems very interesting but is it the
right moment to do this migration regarding to client(s) using Apache
ServiceMix4, ... ? This will impact existing documents, tutorials, ...

Regards,

Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer

*****************************
blog : http://cmoulliard.blogspot.com


On Thu, Jul 2, 2009 at 8:08 AM, Guillaume Nodet <gn...@gmail.com> wrote:

> I've been considering swithing karaf shell from Geronimo Gshell to Felix
> Gogo.
> The main reasons are:
>  * Gogo is/will implement OSGi RFC 0142 to standardize the shell
> (it's not yet a spec, but should be in the future)
>  * Gogo should be able to be used at launch time to run the framework
>  * Gogo shell syntax is more powerfull, in addition to pipes, it
> supports closures, loops, if / then / else ...
>  * lightweight: < 100 ko vs > 1 Mo for gshell
>
> The drawbacks are:
>  * yet another change in the syntax (we've already changed it when
> between 1.0.0 and 1.1.0)
>  * some more work is needed as we're currently missing completors,
> history, banner
>
> Feedback welcome
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com
>

Re: [karaf] Switching from gshell to gogo

Posted by janstey <ja...@gmail.com>.
Glad to hear we're on the same page :)

Thinking more about it, the tab completion is the one I (and I'm sure
others) most don't want to lose. Hopefully that one is doable before 1.0... 


gnodet wrote:
> 
> Yeah, I definitely would not like switch if we're not feature
> equivalent (or mostly).
> 
> On Thu, Jul 2, 2009 at 15:42, janstey<ja...@gmail.com> wrote:
>>
>> Sounds like a lot of wins there for this move but I'm a bit worried about
>> not
>> having history or tab completion right away. Before those features made
>> it
>> into the ServiceMix Kernel, I found it VERY frustrating to use. Maybe
>> they
>> should be added before Karaf 1.0 is released?
>>
>> Cheers,
>> Jon
>>
>> http://janstey.blogspot.com/
> 

-- 
View this message in context: http://www.nabble.com/-karaf--Switching-from-gshell-to-gogo-tp24301702p24307183.html
Sent from the Apache Felix - Dev mailing list archive at Nabble.com.


Re: [karaf] Switching from gshell to gogo

Posted by Guillaume Nodet <gn...@gmail.com>.
Yeah, I definitely would not like switch if we're not feature
equivalent (or mostly).

On Thu, Jul 2, 2009 at 15:42, janstey<ja...@gmail.com> wrote:
>
> Sounds like a lot of wins there for this move but I'm a bit worried about not
> having history or tab completion right away. Before those features made it
> into the ServiceMix Kernel, I found it VERY frustrating to use. Maybe they
> should be added before Karaf 1.0 is released?
>
> Cheers,
> Jon
>
> http://janstey.blogspot.com/
>
>
> gnodet wrote:
>>
>> I've been considering swithing karaf shell from Geronimo Gshell to Felix
>> Gogo.
>> The main reasons are:
>>   * Gogo is/will implement OSGi RFC 0142 to standardize the shell
>> (it's not yet a spec, but should be in the future)
>>   * Gogo should be able to be used at launch time to run the framework
>>   * Gogo shell syntax is more powerfull, in addition to pipes, it
>> supports closures, loops, if / then / else ...
>>   * lightweight: < 100 ko vs > 1 Mo for gshell
>>
>> The drawbacks are:
>>   * yet another change in the syntax (we've already changed it when
>> between 1.0.0 and 1.1.0)
>>   * some more work is needed as we're currently missing completors,
>> history, banner
>>
>> Feedback welcome
>>
>
> --
> View this message in context: http://www.nabble.com/-karaf--Switching-from-gshell-to-gogo-tp24301702p24306951.html
> Sent from the Apache Felix - Dev mailing list archive at Nabble.com.
>
>



-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Re: [karaf] Switching from gshell to gogo

Posted by janstey <ja...@gmail.com>.
Sounds like a lot of wins there for this move but I'm a bit worried about not
having history or tab completion right away. Before those features made it
into the ServiceMix Kernel, I found it VERY frustrating to use. Maybe they
should be added before Karaf 1.0 is released? 

Cheers,
Jon

http://janstey.blogspot.com/


gnodet wrote:
> 
> I've been considering swithing karaf shell from Geronimo Gshell to Felix
> Gogo.
> The main reasons are:
>   * Gogo is/will implement OSGi RFC 0142 to standardize the shell
> (it's not yet a spec, but should be in the future)
>   * Gogo should be able to be used at launch time to run the framework
>   * Gogo shell syntax is more powerfull, in addition to pipes, it
> supports closures, loops, if / then / else ...
>   * lightweight: < 100 ko vs > 1 Mo for gshell
> 
> The drawbacks are:
>   * yet another change in the syntax (we've already changed it when
> between 1.0.0 and 1.1.0)
>   * some more work is needed as we're currently missing completors,
> history, banner
> 
> Feedback welcome
> 

-- 
View this message in context: http://www.nabble.com/-karaf--Switching-from-gshell-to-gogo-tp24301702p24306951.html
Sent from the Apache Felix - Dev mailing list archive at Nabble.com.