Hey Julien,<br><br>That&#39;s really cool! Just so I know what you did in your video - you had an OSX shell running, and you executed Forge using the maven exec goal. This forge build used CRaSH as the terminal implementation? This is very promising!<br>
<br>Which features aren&#39;t working at the moment? (If you want to cry a little bit on the inside, you might want to try the &quot;less&quot; plugin ;)<br><br>As part of Forge 2.0 (I think I mentioned this before,) we really want to de-couple the shell from any plugins, and provide a standalone container for plugin execution, so if you run in to any coupling issues, it would be <i>really</i> helpful if you could open a JIRA against <a href="https://issues.jboss.org/browse/FORGE">https://issues.jboss.org/browse/FORGE</a> - using the 2.0 target version :)<br>
<br>Then we can start addressing these issues individually.<br><br>Thanks!<br>~Lincoln<br><br><div class="gmail_quote">On Mon, May 7, 2012 at 5:45 PM, Julien Viet <span dir="ltr">&lt;<a href="mailto:julien@julienviet.com" target="_blank">julien@julienviet.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I started to do basic integration to give a concrete try and I&#39;m able to make forge core/shell module to run using CRaSH JLine connector.<br>

<br>
It is not 100% operational (as any POC) as some features are bypassed at the moment, the following work:<br>
<br>
- command execution<br>
- command completion<br>
- prompt within a command but without completion (as crash does not support it originally (read here yet))<br>
<br>
here is a short video of running the core/shell module standalone : <a href="http://www.youtube.com/watch?v=GJ_QbgawkpE" target="_blank">http://www.youtube.com/watch?v=GJ_QbgawkpE</a><br>
<br>
I pushed this POC in my GH repository if you are interested to look at the changes yourself : <a href="https://github.com/vietj/core/compare/crash" target="_blank">https://github.com/vietj/core/compare/crash</a><br>
<br>
I will continue to work on this later to add telnet or ssh support because it would be the real value added for forge to use CRaSH.<br>
<span class="HOEnZb"><font color="#888888"><br>
Julien<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On May 3, 2012, at 3:33 PM, Julien Viet wrote:<br>
<br>
&gt; no problem actually I had to update CRaSH to use the latest JLine release first (I did not have time to do it before 1.0).<br>
&gt;<br>
&gt; I published a 1.1 beta1 and will try to see how it integrates with forge soon.<br>
&gt;<br>
&gt; One thing I noticed is that forge is quite coupled at the code level to the JLine project and it&#39;s not an obvious thing to decouple it fully. And that would be necessary to achieve a clean integration.<br>
&gt;<br>
&gt; I will focus on doing a POC in the coming days.<br>
&gt;<br>
&gt; Meanwhile you can have a look at the web connector demo I&#39;ve done recently : <a href="http://crash.vietj.cloudbees.net/" target="_blank">http://crash.vietj.cloudbees.net/</a><br>
&gt;<br>
&gt; you can try fun stuff like:<br>
&gt;<br>
&gt; &quot;% help&quot;<br>
&gt;<br>
&gt; &quot;% sleep 10&quot; then ctrl-c<br>
&gt;<br>
&gt; &quot;% thread ls&quot;<br>
&gt;<br>
&gt; &quot;% system propget java.&quot; + tab<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On May 2, 2012, at 5:14 PM, Lincoln Baxter wrote:<br>
&gt;<br>
&gt;&gt; Awesome, Julien!<br>
&gt;&gt;<br>
&gt;&gt; Sorry for the delay on my end. I am at a conference and have limited access to the RedHat mail VPN.<br>
&gt;&gt;<br>
&gt;&gt; Could we bring this discussion to the dev list? (Copied)<br>
&gt;&gt;<br>
&gt;&gt; This way everyone will be able to discuss/follow. And I&#39;ll see it faster since it comes to all of my accounts.<br>
&gt;&gt; Thanks!<br>
&gt;&gt;<br>
&gt;&gt; ~Lincoln<br>
&gt;&gt;<br>
&gt;&gt; ----- Original Message -----<br>
&gt;&gt; From: &quot;Julien Viet&quot; &lt;<a href="mailto:julien@julienviet.com">julien@julienviet.com</a>&gt;<br>
&gt;&gt; To: &quot;Lincoln Baxter, III&quot; &lt;<a href="mailto:lbaxter@redhat.com">lbaxter@redhat.com</a>&gt;<br>
&gt;&gt; Cc: &quot;Max Rydahl Andersen&quot; &lt;<a href="mailto:max.andersen@redhat.com">max.andersen@redhat.com</a>&gt;<br>
&gt;&gt; Sent: Friday, April 27, 2012 1:32:42 AM<br>
&gt;&gt; Subject: Re: Forge CRAsH, CRAsH Forge!<br>
&gt;&gt;<br>
&gt;&gt; I&#39;m trying to POC something with crash as invoker of forge.<br>
&gt;&gt;<br>
&gt;&gt; I can now clearly see how it would work:<br>
&gt;&gt; - the jline code would be merged somehow with jline crash code: I need to see what can be reused or not<br>
&gt;&gt; - the invoking part would use crash that would give the benefit to use the other protocol out of the box like SSH<br>
&gt;&gt; - crash would be used like a IO library mostly that wraps the various implementations (jline,ssh,telnet)<br>
&gt;&gt;<br>
&gt;&gt; It will take me some time because I cannot spend much time on it (and I&#39;m in vacation until wednesday :-) ).<br>
&gt;&gt;<br>
&gt;&gt; That being said I learned interesting stuff looking at forge code, like the nasty but useful proprietary SigHandler usage that is useful<br>
&gt;&gt; to catch control-c and use it to interrupt a process.<br>
&gt;&gt;<br>
&gt;&gt; This way the &quot;shell&quot; implementation (i.e was the shell do when you use it) would remain separate I think because CRaSH uses a file based approach (using lot of groovy)<br>
&gt;&gt; and forge uses a plugin based approach with CDI based on plugin deployment. We can still see more convergence later: in particular the command line parser, both seems very contextual and are pain to write / maintain :-)<br>

&gt;&gt;<br>
&gt;&gt; I&#39;ll let you know when I&#39;ll have available, it may take a couple of weeks depending on the work load aside (probably less). It will surely fork forge on GH<br>
&gt;&gt; to push the work visible at some point, I&#39;ll also post on the forge dev list too at this moment.<br>
&gt;&gt;<br>
&gt;&gt; Julien<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Apr 26, 2012, at 8:18 PM, Lincoln Baxter, III wrote:<br>
&gt;&gt;<br>
&gt;&gt;&gt; Plugins can change core behavior, so certainly.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On Thu 26 Apr 2012 01:43:33 PM EDT, Julien Viet wrote:<br>
&gt;&gt;&gt;&gt; if the connectivity part of forge is also a plugin of forge, then it would certainly work.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; On Apr 26, 2012, at 7:26 PM, Lincoln Baxter, III wrote:<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; That&#39;s certainly something we could do as well! I like that idea :) It would certainly be easier if CRaSh were used as the Forge shell provider.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; On 04/26/2012 12:55 PM, Max Rydahl Andersen wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt; I was thinking that the functionallity in CRAsH to connect remotely could be loaded in as a plugin to Forge.<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; That would be more an addon and not involve complex dependencies/legal rearrangements ?<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; /max<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; On Apr 26, 2012, at 15:46 , Lincoln Baxter, III wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Hey Julien!<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; CRaSH seems like a very well implemented and creative project! At first I didn&#39;t really understand what it was for, but the thought of providing SSH access directly to runtime Java applications is, simply put, brilliant!<br>

&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Forge is a bit heavy for that at the moment, because of our dependency on CDI (primarily,) and because we haven&#39;t yet disassociated the built-in plugins from the core distribution. Soon, however, our shell will be entirely standalone. With zero or as much functionality as you want OOB.<br>

&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; I noticed we both use JLine, although mike&#39;s Forked it quite a bit for our needs. (Wish he would have done it as an actual fork, not as a source bundle in the project itself, but perhaps there&#39;s some collaboration opportunity there.)<br>

&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Where do you think we can work together? I&#39;m totally open to ideas.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; ~Lincoln<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; On Wed 25 Apr 2012 04:18:06 PM EDT, Julien Viet wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; hey :-)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; I would welcome a collaboration, a single effort would provide more features, increase the community footprint and visibility of both projects.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; I have been working hard recently to finish the 1.0 of CRaSH and provide the best user experience I could offer at the moment.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Currently CRaSH is used in several products / projects already!<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; - eXo Cloud IDE provides a web interface using CRaSH under the hood (see photo here <a href="https://twitter.com/#%21/chanezon/status/194759689102303233/photo/1/large" target="_blank">https://twitter.com/#!/chanezon/status/194759689102303233/photo/1/large</a> )<br>

&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; - EPP embeds it for portal management providing CLI : <a href="https://lh4.googleusercontent.com/R8ruzrxNQ6IWyh-vKGgrnbzpZJJiUYMwZ5RePzRoQQH_YeRLhGeQG6olps5RgcyiZ162NIZTIWw6Quegmr33nPqU18FQteGmmv7ZCHDl8J9VQEXeKpk" target="_blank">https://lh4.googleusercontent.com/R8ruzrxNQ6IWyh-vKGgrnbzpZJJiUYMwZ5RePzRoQQH_YeRLhGeQG6olps5RgcyiZ162NIZTIWw6Quegmr33nPqU18FQteGmmv7ZCHDl8J9VQEXeKpk</a><br>

&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; - the Silverpeas portal embeds it : <a href="http://www.silverpeas.org/" target="_blank">http://www.silverpeas.org/</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; let me know if you would like to work with me :-)<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; On Apr 25, 2012, at 2:43 PM, Max Rydahl Andersen wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Hi guys,<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Just wanted to e-introduce you guys after talking to you both about the nice possible overlaps/interactions<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; being able to have the features CRaSH provides from within Forge (i.e. connection and interaction with remote process).<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Julien, meet Lincoln the Forge Master;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Lincoln, meet Julien the Party Crasher.<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; /max<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; --<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; ---<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Lincoln Baxter, III<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://ocpsoft.org" target="_blank">http://ocpsoft.org</a><br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; &quot;Simpler is better.&quot;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; --<br>
&gt;&gt;&gt;&gt;&gt; ---<br>
&gt;&gt;&gt;&gt;&gt; Lincoln Baxter, III<br>
&gt;&gt;&gt;&gt;&gt; <a href="http://ocpsoft.org" target="_blank">http://ocpsoft.org</a><br>
&gt;&gt;&gt;&gt;&gt; &quot;Simpler is better.&quot;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; --<br>
&gt;&gt;&gt; ---<br>
&gt;&gt;&gt; Lincoln Baxter, III<br>
&gt;&gt;&gt; <a href="http://ocpsoft.org" target="_blank">http://ocpsoft.org</a><br>
&gt;&gt;&gt; &quot;Simpler is better.&quot;<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
<br>
<br>
_______________________________________________<br>
forge-dev mailing list<br>
<a href="mailto:forge-dev@lists.jboss.org">forge-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Lincoln Baxter, III<br><a href="http://ocpsoft.org" target="_blank">http://ocpsoft.org</a><br>&quot;Simpler is better.&quot;<br>