You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Rafael Schloming <ra...@redhat.com> on 2012/03/01 23:34:47 UTC

AMQP 1.0 Work

Hi Everyone,

As I'm sure a number of you are aware, there has been some early 
prototyping/devel work going on by a few qpid developers on a 1.0 
protocol implementation. Because of the early/experimental nature of the 
work we've not yet pulled it into the qpid tree, but things are far 
enough along now that we'd like to find a place for it. The goal of this 
work is not only to provide qpid support for AMQP 1.0, but also to 
provide a very portable, reusable, and embeddable protocol 
implementation that makes it easy to integrate AMQP 1.0 support into the 
widest possible range of existing software.

Keeping that in mind, I'd like to propose the following source layout to 
bring in this new work, starting from the QPID SVN root 
(https://svn.apache.org/repos/asf/qpid/):

   .../qpid/
       |
       +--amp/
           |
           +--amp-c/
           |
           +--amp-java/
           |
           +--spec
           |
           +--test


This directory structure is intended to provide a bunch of different 
things. For users interested in embedding AMQP 1.0 support into a C or 
Java project, the amp-c and amp-java directories would be the main entry 
points for each language respectively. The spec directory contains a 
language neutral specification for the protocol API and the 
implementation design should anyone wish to develop a similarly 
structured implementation in another language, or extend the existing 
implementations in any way. The test directory will contain a 
comprehensive set of python tests that can be shared between the C and 
Java implementations. The amp directory itself will be a top level entry 
point intended for qpid developers and will facilitate streamlined build 
and test of both implementations thereby ensuring they remain in sync as 
much as possible.

Currently the C implementation is hosted on github 
(https://github.com/rhs/amp) and Rob is tracking this pretty closely in 
Java. Please check it out and let me know if you have any questions, 
obviously it's still work in progress and shouldn't be considered cast 
in stone at this point.

The name "amp" isn't cast in stone either. It's origin is simply AMQP 
minus the Queuing. Justin suggested "proton" as well. Any other 
suggestions are welcome, with the caveat that we'd like to get this 
checked in pretty soon as we have increasing numbers of people working 
together on this stuff now.

Please let me know your thoughts. We've discussed a milestone release 
for this stuff at the end of March, so obviously we'd like to get things 
into the tree ASAP. If I don't hear any objections, I'll submit 
something early next week.

--Rafael


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: AMQP 1.0 Work

Posted by Alan Conway <ac...@redhat.com>.
+1

On 03/01/2012 05:34 PM, Rafael Schloming wrote:
> Hi Everyone,
>
> As I'm sure a number of you are aware, there has been some early
> prototyping/devel work going on by a few qpid developers on a 1.0 protocol
> implementation. Because of the early/experimental nature of the work we've not
> yet pulled it into the qpid tree, but things are far enough along now that we'd
> like to find a place for it. The goal of this work is not only to provide qpid
> support for AMQP 1.0, but also to provide a very portable, reusable, and
> embeddable protocol implementation that makes it easy to integrate AMQP 1.0
> support into the widest possible range of existing software.
>
> Keeping that in mind, I'd like to propose the following source layout to bring
> in this new work, starting from the QPID SVN root
> (https://svn.apache.org/repos/asf/qpid/):
>
> .../qpid/
> |
> +--amp/
> |
> +--amp-c/
> |
> +--amp-java/
> |
> +--spec
> |
> +--test
>
>
> This directory structure is intended to provide a bunch of different things. For
> users interested in embedding AMQP 1.0 support into a C or Java project, the
> amp-c and amp-java directories would be the main entry points for each language
> respectively. The spec directory contains a language neutral specification for
> the protocol API and the implementation design should anyone wish to develop a
> similarly structured implementation in another language, or extend the existing
> implementations in any way. The test directory will contain a comprehensive set
> of python tests that can be shared between the C and Java implementations. The
> amp directory itself will be a top level entry point intended for qpid
> developers and will facilitate streamlined build and test of both
> implementations thereby ensuring they remain in sync as much as possible.
>
> Currently the C implementation is hosted on github (https://github.com/rhs/amp)
> and Rob is tracking this pretty closely in Java. Please check it out and let me
> know if you have any questions, obviously it's still work in progress and
> shouldn't be considered cast in stone at this point.
>
> The name "amp" isn't cast in stone either. It's origin is simply AMQP minus the
> Queuing. Justin suggested "proton" as well. Any other suggestions are welcome,
> with the caveat that we'd like to get this checked in pretty soon as we have
> increasing numbers of people working together on this stuff now.
>
> Please let me know your thoughts. We've discussed a milestone release for this
> stuff at the end of March, so obviously we'd like to get things into the tree
> ASAP. If I don't hear any objections, I'll submit something early next week.
>
> --Rafael
>
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project: http://qpid.apache.org
> Use/Interact: mailto:dev-subscribe@qpid.apache.org
>

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


RE: AMQP 1.0 Work

Posted by Steve Huston <sh...@riverace.com>.
The idea and layout look good to me. I am wondering why it's not
.../qpid/amqp/amqp-c, amqp-java, though... It is an AMQP implementation.
-Steve

> -----Original Message-----
> From: Rafael Schloming [mailto:rafaels@redhat.com]
> Sent: Thursday, March 01, 2012 5:35 PM
> To: Qpid Dev
> Subject: AMQP 1.0 Work
> 
> Hi Everyone,
> 
> As I'm sure a number of you are aware, there has been some early
> prototyping/devel work going on by a few qpid developers on a 1.0
protocol
> implementation. Because of the early/experimental nature of the work
> we've not yet pulled it into the qpid tree, but things are far enough
along
> now that we'd like to find a place for it. The goal of this work is not
only to
> provide qpid support for AMQP 1.0, but also to provide a very portable,
> reusable, and embeddable protocol implementation that makes it easy to
> integrate AMQP 1.0 support into the widest possible range of existing
> software.
> 
> Keeping that in mind, I'd like to propose the following source layout to
bring
> in this new work, starting from the QPID SVN root
> (https://svn.apache.org/repos/asf/qpid/):
> 
>    .../qpid/
>        |
>        +--amp/
>            |
>            +--amp-c/
>            |
>            +--amp-java/
>            |
>            +--spec
>            |
>            +--test
> 
> 
> This directory structure is intended to provide a bunch of different
things. For
> users interested in embedding AMQP 1.0 support into a C or Java project,
the
> amp-c and amp-java directories would be the main entry points for each
> language respectively. The spec directory contains a language neutral
> specification for the protocol API and the implementation design should
> anyone wish to develop a similarly structured implementation in another
> language, or extend the existing implementations in any way. The test
> directory will contain a comprehensive set of python tests that can be
shared
> between the C and Java implementations. The amp directory itself will be
a
> top level entry point intended for qpid developers and will facilitate
> streamlined build and test of both implementations thereby ensuring they
> remain in sync as much as possible.
> 
> Currently the C implementation is hosted on github
> (https://github.com/rhs/amp) and Rob is tracking this pretty closely in
Java.
> Please check it out and let me know if you have any questions, obviously
it's
> still work in progress and shouldn't be considered cast in stone at this
point.
> 
> The name "amp" isn't cast in stone either. It's origin is simply AMQP
minus
> the Queuing. Justin suggested "proton" as well. Any other suggestions
are
> welcome, with the caveat that we'd like to get this checked in pretty
soon as
> we have increasing numbers of people working together on this stuff now.
> 
> Please let me know your thoughts. We've discussed a milestone release
for
> this stuff at the end of March, so obviously we'd like to get things
into the
> tree ASAP. If I don't hear any objections, I'll submit something early
next
> week.
> 
> --Rafael
> 
> 
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:dev-subscribe@qpid.apache.org


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: AMQP 1.0 Work

Posted by Rajith Attapattu <ra...@gmail.com>.
+1 on the dir structure.
I'm not too excited about the name 'amp', but it's not a big deal either :)

It seems this is going to be treated more like a sub project of Qpid
with it's own release schedule, which I believe is the right approach.
Perhaps we should also add a /doc dir to contain the version
controlled documentation like we currently have in Qpid.
This should probably have it's own sub-website linked off the main
website to contain docs ..etc on a per release basis.
(We could just use the same setup we have with a slightly different
color to distinguish between the two).

Regards,

Rajith

P.S Eventually QMF should do the same. With it's own doc, website and
release schedule.

On Thu, Mar 1, 2012 at 5:34 PM, Rafael Schloming <ra...@redhat.com> wrote:
> Hi Everyone,
>
> As I'm sure a number of you are aware, there has been some early
> prototyping/devel work going on by a few qpid developers on a 1.0 protocol
> implementation. Because of the early/experimental nature of the work we've
> not yet pulled it into the qpid tree, but things are far enough along now
> that we'd like to find a place for it. The goal of this work is not only to
> provide qpid support for AMQP 1.0, but also to provide a very portable,
> reusable, and embeddable protocol implementation that makes it easy to
> integrate AMQP 1.0 support into the widest possible range of existing
> software.
>
> Keeping that in mind, I'd like to propose the following source layout to
> bring in this new work, starting from the QPID SVN root
> (https://svn.apache.org/repos/asf/qpid/):
>
>  .../qpid/
>      |
>      +--amp/
>          |
>          +--amp-c/
>          |
>          +--amp-java/
>          |
>          +--spec
>          |
>          +--test
>
>
> This directory structure is intended to provide a bunch of different things.
> For users interested in embedding AMQP 1.0 support into a C or Java project,
> the amp-c and amp-java directories would be the main entry points for each
> language respectively. The spec directory contains a language neutral
> specification for the protocol API and the implementation design should
> anyone wish to develop a similarly structured implementation in another
> language, or extend the existing implementations in any way. The test
> directory will contain a comprehensive set of python tests that can be
> shared between the C and Java implementations. The amp directory itself will
> be a top level entry point intended for qpid developers and will facilitate
> streamlined build and test of both implementations thereby ensuring they
> remain in sync as much as possible.
>
> Currently the C implementation is hosted on github
> (https://github.com/rhs/amp) and Rob is tracking this pretty closely in
> Java. Please check it out and let me know if you have any questions,
> obviously it's still work in progress and shouldn't be considered cast in
> stone at this point.
>
> The name "amp" isn't cast in stone either. It's origin is simply AMQP minus
> the Queuing. Justin suggested "proton" as well. Any other suggestions are
> welcome, with the caveat that we'd like to get this checked in pretty soon
> as we have increasing numbers of people working together on this stuff now.
>
> Please let me know your thoughts. We've discussed a milestone release for
> this stuff at the end of March, so obviously we'd like to get things into
> the tree ASAP. If I don't hear any objections, I'll submit something early
> next week.
>
> --Rafael
>
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:dev-subscribe@qpid.apache.org
>

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: AMQP 1.0 Work

Posted by "Weston M. Price" <wp...@redhat.com>.
On Mar 2, 2012, at 2:29 AM, Gordon Sim wrote:

> On 03/01/2012 10:42 PM, Rob Godfrey wrote:
>> On 1 March 2012 23:34, Rafael Schloming<ra...@redhat.com>  wrote:
>>> I'd like to propose the following source layout to
>>> bring in this new work, starting from the QPID SVN root (https://svn.apache.org/repos/asf/qpid/):
>>> 
>>>  .../qpid/
>>>      |
>>>      +--amp/
>>>          |
>>>          +--amp-c/
>>>          |
>>>          +--amp-java/
>>>          |
>>>          +--spec
>>>          |
>>>          +--test
> 
> Sounds good to me.
Me as well.
> 
>> Having a visible 1-0 presence for Qpid should be a priority
>> for us.
> 
> I fully concur!
> 
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:dev-subscribe@qpid.apache.org
> 


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: AMQP 1.0 Work

Posted by Gordon Sim <gs...@redhat.com>.
On 03/02/2012 07:29 AM, Gordon Sim wrote:
> On 03/01/2012 10:42 PM, Rob Godfrey wrote:
>> On 1 March 2012 23:34, Rafael Schloming<ra...@redhat.com> wrote:
>>> I'd like to propose the following source layout to
>>> bring in this new work, starting from the QPID SVN root
>>> (https://svn.apache.org/repos/asf/qpid/):
>>>
>>> .../qpid/
>>> |
>>> +--amp/
>>> |
>>> +--amp-c/
>>> |
>>> +--amp-java/
>>> |
>>> +--spec
>>> |
>>> +--test
>
> Sounds good to me.
>
>> Having a visible 1-0 presence for Qpid should be a priority
>> for us.
>
> I fully concur!

Just fyi: I've started a branch[1] for integration of the new proton 
AMQP 1.0 implementation into the c++ codebase. At present it just 
contains the client side (and has limitations there as well). However I 
just wanted to explain the branch and invite anyone interested to take a 
look, provide feedback or get involved in any way.

[1] https://svn.apache.org/repos/asf/qpid/branches/gs-amqp-1-0-sandbox/qpid

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: AMQP 1.0 Work

Posted by Gordon Sim <gs...@redhat.com>.
On 03/01/2012 10:42 PM, Rob Godfrey wrote:
> On 1 March 2012 23:34, Rafael Schloming<ra...@redhat.com>  wrote:
>> I'd like to propose the following source layout to
>> bring in this new work, starting from the QPID SVN root (https://svn.apache.org/repos/asf/qpid/):
>>
>>   .../qpid/
>>       |
>>       +--amp/
>>           |
>>           +--amp-c/
>>           |
>>           +--amp-java/
>>           |
>>           +--spec
>>           |
>>           +--test

Sounds good to me.

> Having a visible 1-0 presence for Qpid should be a priority
> for us.

I fully concur!

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: AMQP 1.0 Work

Posted by Robbie Gemmell <ro...@gmail.com>.
On 1 March 2012 22:42, Rob Godfrey <ro...@gmail.com> wrote:
> On 1 March 2012 23:34, Rafael Schloming <ra...@redhat.com> wrote:
>
>> Hi Everyone,
>>
>> As I'm sure a number of you are aware, there has been some early
>> prototyping/devel work going on by a few qpid developers on a 1.0 protocol
>> implementation. Because of the early/experimental nature of the work we've
>> not yet pulled it into the qpid tree, but things are far enough along now
>> that we'd like to find a place for it. The goal of this work is not only to
>> provide qpid support for AMQP 1.0, but also to provide a very portable,
>> reusable, and embeddable protocol implementation that makes it easy to
>> integrate AMQP 1.0 support into the widest possible range of existing
>> software.
>>
>> Keeping that in mind, I'd like to propose the following source layout to
>> bring in this new work, starting from the QPID SVN root (
>> https://svn.apache.org/repos/**asf/qpid/<https://svn.apache.org/repos/asf/qpid/>
>> ):
>>
>>  .../qpid/
>>      |
>>      +--amp/
>>          |
>>          +--amp-c/
>>          |
>>          +--amp-java/
>>          |
>>          +--spec
>>          |
>>          +--test
>>
>>
>> This directory structure is intended to provide a bunch of different
>> things. For users interested in embedding AMQP 1.0 support into a C or Java
>> project, the amp-c and amp-java directories would be the main entry points
>> for each language respectively. The spec directory contains a language
>> neutral specification for the protocol API and the implementation design
>> should anyone wish to develop a similarly structured implementation in
>> another language, or extend the existing implementations in any way. The
>> test directory will contain a comprehensive set of python tests that can be
>> shared between the C and Java implementations. The amp directory itself
>> will be a top level entry point intended for qpid developers and will
>> facilitate streamlined build and test of both implementations thereby
>> ensuring they remain in sync as much as possible.
>>
>> Currently the C implementation is hosted on github (
>> https://github.com/rhs/amp) and Rob is tracking this pretty closely in
>> Java. Please check it out and let me know if you have any questions,
>> obviously it's still work in progress and shouldn't be considered cast in
>> stone at this point.
>>
>> The name "amp" isn't cast in stone either. It's origin is simply AMQP
>> minus the Queuing. Justin suggested "proton" as well. Any other suggestions
>> are welcome, with the caveat that we'd like to get this checked in pretty
>> soon as we have increasing numbers of people working together on this stuff
>> now.
>>
>> Please let me know your thoughts. We've discussed a milestone release for
>> this stuff at the end of March, so obviously we'd like to get things into
>> the tree ASAP. If I don't hear any objections, I'll submit something early
>> next week.
>>
>> --Rafael
>>
>>
>>
> Just want to second this proposal.
>
> I've already had several people ask me where Qpid's 1-0 plan was... and
> given our involvement in the writing of the AMQP 1-0 standard it is
> somewhat shameful that up till now we've not had any public presence for
> our 1-0 work. Having a visible 1-0 presence for Qpid should be a priority
> for us.
>
> I'm very keen to get the Java work I've been doing up onto Apache, and then
> start on the next task of integrating the engine into our brokers and
> clients... So I'm hoping we can quickly get agreement on this (I think
> we've discussed most of this previously anyway).
>
> Cheers,
> Rob

Thirded, it will be nice to see visible activity on 1-0 get underway
within Qpid and have us start making some real use of the protocol
knowledge we have around here :)

Robbie

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: AMQP 1.0 Work

Posted by Rob Godfrey <ro...@gmail.com>.
On 1 March 2012 23:34, Rafael Schloming <ra...@redhat.com> wrote:

> Hi Everyone,
>
> As I'm sure a number of you are aware, there has been some early
> prototyping/devel work going on by a few qpid developers on a 1.0 protocol
> implementation. Because of the early/experimental nature of the work we've
> not yet pulled it into the qpid tree, but things are far enough along now
> that we'd like to find a place for it. The goal of this work is not only to
> provide qpid support for AMQP 1.0, but also to provide a very portable,
> reusable, and embeddable protocol implementation that makes it easy to
> integrate AMQP 1.0 support into the widest possible range of existing
> software.
>
> Keeping that in mind, I'd like to propose the following source layout to
> bring in this new work, starting from the QPID SVN root (
> https://svn.apache.org/repos/**asf/qpid/<https://svn.apache.org/repos/asf/qpid/>
> ):
>
>  .../qpid/
>      |
>      +--amp/
>          |
>          +--amp-c/
>          |
>          +--amp-java/
>          |
>          +--spec
>          |
>          +--test
>
>
> This directory structure is intended to provide a bunch of different
> things. For users interested in embedding AMQP 1.0 support into a C or Java
> project, the amp-c and amp-java directories would be the main entry points
> for each language respectively. The spec directory contains a language
> neutral specification for the protocol API and the implementation design
> should anyone wish to develop a similarly structured implementation in
> another language, or extend the existing implementations in any way. The
> test directory will contain a comprehensive set of python tests that can be
> shared between the C and Java implementations. The amp directory itself
> will be a top level entry point intended for qpid developers and will
> facilitate streamlined build and test of both implementations thereby
> ensuring they remain in sync as much as possible.
>
> Currently the C implementation is hosted on github (
> https://github.com/rhs/amp) and Rob is tracking this pretty closely in
> Java. Please check it out and let me know if you have any questions,
> obviously it's still work in progress and shouldn't be considered cast in
> stone at this point.
>
> The name "amp" isn't cast in stone either. It's origin is simply AMQP
> minus the Queuing. Justin suggested "proton" as well. Any other suggestions
> are welcome, with the caveat that we'd like to get this checked in pretty
> soon as we have increasing numbers of people working together on this stuff
> now.
>
> Please let me know your thoughts. We've discussed a milestone release for
> this stuff at the end of March, so obviously we'd like to get things into
> the tree ASAP. If I don't hear any objections, I'll submit something early
> next week.
>
> --Rafael
>
>
>
Just want to second this proposal.

I've already had several people ask me where Qpid's 1-0 plan was... and
given our involvement in the writing of the AMQP 1-0 standard it is
somewhat shameful that up till now we've not had any public presence for
our 1-0 work. Having a visible 1-0 presence for Qpid should be a priority
for us.

I'm very keen to get the Java work I've been doing up onto Apache, and then
start on the next task of integrating the engine into our brokers and
clients... So I'm hoping we can quickly get agreement on this (I think
we've discussed most of this previously anyway).

Cheers,
Rob