Enterprise Haskell AMQP library initial start and would like to pass it off to someone.

I started a AMQP library; there really isn't a lot there but at least I was able to connect to the server. Here is the code and hopefully someone else can continue with the project. The AMQP protocol is moderately complex. HTTP is simple and stuff like RMI, JMS, Database Protocols are really complicated. AMQP seems to be in the middle. There is a lot of documentation and at least two good implementations. The included java implementation and I used the python implementation as a guide. http://www.iona.com/opensource/amqp/ http://barryp.org/software/py-amqplib/ Here is my source (in subversion): http://openbotlist.googlecode.com/svn/trunk/botlistprojects/botspider/spider... If were to make a suggestion; Barry's python code is really easy to follow. I would suggest using that as a guide. and if you are brave, you can really analyze the protocol and just go off the docs. Either way. My code got as far as connecting to the server, sending the protocol out and getting back an initial response. I didnt build a queue message (frame) or much else. -- Berlin Brown http://botspiritcompany.com/botlist/spring/help/about.html

berlin.brown:
I started a AMQP library; there really isn't a lot there but at least I was able to connect to the server. Here is the code and hopefully someone else can continue with the project. The AMQP protocol is moderately complex. HTTP is simple and stuff like RMI, JMS, Database Protocols are really complicated. AMQP seems to be in the middle. There is a lot of documentation and at least two good implementations. The included java implementation and I used the python implementation as a guide.
http://www.iona.com/opensource/amqp/ http://barryp.org/software/py-amqplib/
Here is my source (in subversion): http://openbotlist.googlecode.com/svn/trunk/botlistprojects/botspider/spider...
If were to make a suggestion; Barry's python code is really easy to follow. I would suggest using that as a guide. and if you are brave, you can really analyze the protocol and just go off the docs. Either way.
My code got as far as connecting to the server, sending the protocol out and getting back an initial response. I didnt build a queue message (frame) or much else. -- Berlin Brown http://botspiritcompany.com/botlist/spring/help/about.html
Thanks! Would you like this packaged up for hackage.haskell.org, so others can find and improve it? (or maybe move the repo to code.haskell.org?)

On Jan 27, 2008 3:06 AM, Don Stewart
berlin.brown:
I started a AMQP library; there really isn't a lot there but at least I was able to connect to the server. Here is the code and hopefully someone else can continue with the project. The AMQP protocol is moderately complex. HTTP is simple and stuff like RMI, JMS, Database Protocols are really complicated. AMQP seems to be in the middle. There is a lot of documentation and at least two good implementations. The included java implementation and I used the python implementation as a guide.
http://www.iona.com/opensource/amqp/ http://barryp.org/software/py-amqplib/
Here is my source (in subversion): http://openbotlist.googlecode.com/svn/trunk/botlistprojects/botspider/spider...
If were to make a suggestion; Barry's python code is really easy to follow. I would suggest using that as a guide. and if you are brave, you can really analyze the protocol and just go off the docs. Either way.
My code got as far as connecting to the server, sending the protocol out and getting back an initial response. I didnt build a queue message (frame) or much else. -- Berlin Brown http://botspiritcompany.com/botlist/spring/help/about.html
Thanks!
Would you like this packaged up for hackage.haskell.org, so others can find and improve it? (or maybe move the repo to code.haskell.org?)
Let me work on it a little more; probably will be more useful if it does basic queueing operations. -- Berlin Brown http://botspiritcompany.com/botlist/spring/help/about.html

Don Stewart wrote:
berlin.brown:
I started a AMQP library; there really isn't a lot there but at least I was able to connect to the server. Here is the code and hopefully someone else can continue with the project. Thanks!
Would you like this packaged up for hackage.haskell.org, so others can find and improve it? (or maybe move the repo to code.haskell.org?
As I said in an earlier message to Haskell Cafe, I've been working on AMQP as well. Berlin's approach seems to have been to hand-code a minimum client and then expand from there, whereas I have been working on an automatic translation from the XML protocol spec to the framing layer of AMQP. The two efforts ought to be merged, although I haven't got the content message type implemented yet. I believe I have a Haskell.org account, although I'm not sure how to use darcs with it. Perhaps Don could advise me on the steps I would need to take to get my code into a repository on the server. Paul.

paul:
Don Stewart wrote:
berlin.brown:
I started a AMQP library; there really isn't a lot there but at least I was able to connect to the server. Here is the code and hopefully someone else can continue with the project. Thanks!
Would you like this packaged up for hackage.haskell.org, so others can find and improve it? (or maybe move the repo to code.haskell.org?
As I said in an earlier message to Haskell Cafe, I've been working on AMQP as well. Berlin's approach seems to have been to hand-code a minimum client and then expand from there, whereas I have been working on an automatic translation from the XML protocol spec to the framing layer of AMQP. The two efforts ought to be merged, although I haven't got the content message type implemented yet.
I believe I have a Haskell.org account, although I'm not sure how to use darcs with it. Perhaps Don could advise me on the steps I would need to take to get my code into a repository on the server.
So you visit: community.haskell.org And submit your ssh public key, to allow you to log into code.haskell.org At the same time you can ask for a project account, which will give you space for a repository on the machine. You can see other projects here: code.haskell.org -- Don

From: haskell-cafe-bounces@haskell.org [mailto:haskell-cafe-bounces@haskell.org] On Behalf Of Don Stewart
So you visit:
community.haskell.org
And submit your ssh public key, to allow you to log into code.haskell.org At the same time you can ask for a project account, which will give you space for a repository on the machine.
You can see other projects here:
code.haskell.org
-- Don
I'm wondering what the relationship is (if any) between code.haskell.org and darcs.haskell.org. A bunch o' questions: - should my project(s) be hosted at darcs or code ? - is one more blessed/preferred over the other for community projects? - if my project is currently on darcs, should I migrate to code? - if I have an account on darcs, will it work on code, or do I need to get a new account on code? Alistair ***************************************************************** Confidentiality Note: The information contained in this message, and any attachments, may contain confidential and/or privileged material. It is intended solely for the person(s) or entity to which it is addressed. Any review, retransmission, dissemination, or taking of any action in reliance upon this information by persons or entities other than the intended recipient(s) is prohibited. If you received this in error, please contact the sender and delete the material from any computer. *****************************************************************

On Mon, 2008-01-28 at 10:57 +0000, Bayley, Alistair wrote:
I'm wondering what the relationship is (if any) between code.haskell.org and darcs.haskell.org.
darcs.haskell.org hosts ghc, the core libs and many others. The server is maintained by Galois. Because it hosts the most central bits of the haskell platform, security is fairly tight and getting an account there is hard. There are very few community members with root privileges. community.haskell.org was created precisely to provide hosting to the wider community. It is hosted commercially, paid for by haskell.org's Google Summer of Code funds. We have several community admins with root privileges.
A bunch o' questions: - should my project(s) be hosted at darcs or code ?
code.haskell.org It's easy to get an account there via the web submission system.
- is one more blessed/preferred over the other for community projects?
Yes, code.haskell.org is preferred.
- if my project is currently on darcs, should I migrate to code?
You can if you like, there is no need to do so however. Accounts on darcs.haskell.org are not going to be revoked as far as I know. The community server is an addition, not a replacement.
- if I have an account on darcs, will it work on code, or do I need to get a new account on code?
They are totally separate systems. Duncan

On Tue, 29 Jan 2008, Duncan Coutts wrote:
On Mon, 2008-01-28 at 10:57 +0000, Bayley, Alistair wrote:
I'm wondering what the relationship is (if any) between code.haskell.org and darcs.haskell.org.
darcs.haskell.org hosts ghc, the core libs and many others. The server is maintained by Galois. Because it hosts the most central bits of the haskell platform, security is fairly tight and getting an account there is hard. There are very few community members with root privileges.
community.haskell.org was created precisely to provide hosting to the wider community. It is hosted commercially, paid for by haskell.org's Google Summer of Code funds. We have several community admins with root privileges.
Thanks for the clarification! I added it to http://www.haskell.org/haskellwiki/Haskell.org_domain Can you insert the link to the web-submission system?

On 29/01/2008, Henning Thielemann
Thanks for the clarification! I added it to http://www.haskell.org/haskellwiki/Haskell.org_domain Can you insert the link to the web-submission system?
I've done this. I also tried to request an account on code.haskell.org, but the server complains about my public key: 500 Internal Server Error SSH key looks incorrect I pasted the key from this path (I use Putty and Pagaent on WinXP): C:\bayleya\putty\putty\id_dsa_pub.txt This folder also contains id_dsa.ppk (that's what Pagaent uses), which contains the same key, and also the private bit. The public key looks like this: ---- BEGIN SSH2 PUBLIC KEY ---- Comment: "dsa-key-20040309" AAAAB3NzaC1kc3MAAACBAKs9yeNP35s4rSBDlJKQCC1nemVGd0zQAROFKeziCOGm <blah blah blah> W5zrOSga/U/Cfa2rIM8Ko/9QmjNCJKsJioC5OTZMwOF0+zBWFCNN73z5+Dz/+PL+ Xw== ---- END SSH2 PUBLIC KEY ---- and this is what I've pasted into the form. I've also tried trimming it (removing the -- BEGIN and END, and the Comment) but no joy. Is this the right thing to put into the form? If not, where can I find it? Thanks, Alistair

On 2008-01-29, Alistair Bayley
On 29/01/2008, Henning Thielemann
wrote: Thanks for the clarification! I added it to http://www.haskell.org/haskellwiki/Haskell.org_domain Can you insert the link to the web-submission system?
I've done this.
I also tried to request an account on code.haskell.org, but the server complains about my public key:
500 Internal Server Error SSH key looks incorrect
I pasted the key from this path (I use Putty and Pagaent on WinXP): C:\bayleya\putty\putty\id_dsa_pub.txt
This folder also contains id_dsa.ppk (that's what Pagaent uses), which contains the same key, and also the private bit. The public key looks like this:
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "dsa-key-20040309" AAAAB3NzaC1kc3MAAACBAKs9yeNP35s4rSBDlJKQCC1nemVGd0zQAROFKeziCOGm <blah blah blah> W5zrOSga/U/Cfa2rIM8Ko/9QmjNCJKsJioC5OTZMwOF0+zBWFCNN73z5+Dz/+PL+ Xw== ---- END SSH2 PUBLIC KEY ----
and this is what I've pasted into the form. I've also tried trimming it (removing the -- BEGIN and END, and the Comment) but no joy. Is this the right thing to put into the form? If not, where can I find it?
It is for certain ssh servers, but apparently not the one that code.haskell.org uses. See sections 8.2.{9,10}, and 8.3 in the PuTTY documentation. http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter8.html#puttygen-save... http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter8.html#puttygen-past... http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter8.html#pubkey-gettin... IIRC, it should look something like ssh-dss AAAAB3NzaC....Xw== comment-string So joining the lines into one might be sufficient. -- Aaron Denney -><-

Alistair Bayley wrote:
...the right thing to put into the form... where can I find it?
Load your PPK file in PuTTYgen. Copy the entire contents of the "Public key for pasting into OpenSSH authorized_keys file" text box onto the clipboard, and paste it into the form on the web site. Hope this helps, Yitz

I started a AMQP library; there really isn't a lot there but at least I was able to connect to the server. Arrgh: I was hoping I would be the first to announce this. I've been working on one (on and off) for a few months now. I've got most of the
Berlin Brown wrote: translation from XML protocol definition to Haskell, but it sounds like you are way ahead of me. I'll take a look at what you have done and see if my code can be of any use. Paul.
participants (9)
-
Aaron Denney
-
Alistair Bayley
-
Bayley, Alistair
-
Berlin Brown
-
Don Stewart
-
Duncan Coutts
-
Henning Thielemann
-
Paul Johnson
-
Yitzchak Gale