Qpid
  1. Qpid
  2. QPID-4798

use stripped BSD licensed vesions of the amqp spec files

    Details

      Activity

      Hide
      Justin Ross added a comment -

      Reviewed by several folks. Approved for 0.22.

      Show
      Justin Ross added a comment - Reviewed by several folks. Approved for 0.22.
      Hide
      Rafael H. Schloming added a comment -

      As a final step I removed the non stripped spec files, updated the LICENSE file accordingly, and verified that all the builds still work without them.

      Show
      Rafael H. Schloming added a comment - As a final step I removed the non stripped spec files, updated the LICENSE file accordingly, and verified that all the builds still work without them.
      Hide
      Alan Conway added a comment -

      Fixed on trunk

      ------------------------------------------------------------------------
      r1478582 | aconway | 2013-05-02 17:47:13 -0400 (Thu, 02 May 2013) | 6 lines

      QPID-4798: Fix up c++ code generation to use stripped spec files.

      The stripped specs have no <doc> elements, this was tripping up the code
      generator. Fixed the generator to process <doc> elements if they are present but
      to carry on without them if they are not.

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

      Show
      Alan Conway added a comment - Fixed on trunk ------------------------------------------------------------------------ r1478582 | aconway | 2013-05-02 17:47:13 -0400 (Thu, 02 May 2013) | 6 lines QPID-4798 : Fix up c++ code generation to use stripped spec files. The stripped specs have no <doc> elements, this was tripping up the code generator. Fixed the generator to process <doc> elements if they are present but to carry on without them if they are not. ------------------------------------------------------------------------
      Hide
      Rob Godfrey added a comment -

      I've updated the Java Common build on trunk to use stripped versions of 0-8/0-9 and 0-10 (the 0-9-1 generation was already using the stripped file).

      Show
      Rob Godfrey added a comment - I've updated the Java Common build on trunk to use stripped versions of 0-8/0-9 and 0-10 (the 0-9-1 generation was already using the stripped file).
      Hide
      Ken Giusti added a comment -

      Applied the attached patch. Attempting to generate code from new xml files fails:

      cmake ..
      <SNIP>
      Generated /home/kgiusti/work/qpid/build/trunk/src/qpid/framing/StreamCancelBody.h
      Generated /home/kgiusti/work/qpid/build/trunk/src/qpid/framing/StreamCancelBody.cpp/home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/amqpgen.rb:527:in `genl': undefined method `+' for nil:NilClass (NoMethodError)
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:138:in `block in declare_exception'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/amqpgen.rb:532:in `prefix'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:403:in `doxygen_comment'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:138:in `declare_exception'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:147:in `block in declare_exceptions'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:147:in `each'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:147:in `declare_exceptions'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:175:in `block (2 levels) in reply_exceptions_h'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:358:in `namespace'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:174:in `block in reply_exceptions_h'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:326:in `block in h_file'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/amqpgen.rb:505:in `file'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:322:in `h_file'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:169:in `reply_exceptions_h'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:201:in `generate'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:207:in `<top (required)>'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:74:in `load'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:74:in `block in <main>'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:70:in `each'
      from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:70:in `<main>'

      Can't see a problem with the XML file - I suspect a bug in the rubygen code.

      Re-assigning back to Rafi.

      Needs someone who understands ruby to look at this. To me, Ruby is just a little less decipherable than Martian.

      Show
      Ken Giusti added a comment - Applied the attached patch. Attempting to generate code from new xml files fails: cmake .. <SNIP> Generated /home/kgiusti/work/qpid/build/trunk/src/qpid/framing/StreamCancelBody.h Generated /home/kgiusti/work/qpid/build/trunk/src/qpid/framing/StreamCancelBody.cpp/home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/amqpgen.rb:527:in `genl': undefined method `+' for nil:NilClass (NoMethodError) from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:138:in `block in declare_exception' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/amqpgen.rb:532:in `prefix' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:403:in `doxygen_comment' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:138:in `declare_exception' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:147:in `block in declare_exceptions' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:147:in `each' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:147:in `declare_exceptions' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:175:in `block (2 levels) in reply_exceptions_h' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:358:in `namespace' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:174:in `block in reply_exceptions_h' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:326:in `block in h_file' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/amqpgen.rb:505:in `file' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/cppgen.rb:322:in `h_file' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:169:in `reply_exceptions_h' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:201:in `generate' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/framing.0-10/constants.rb:207:in `<top (required)>' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:74:in `load' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:74:in `block in <main>' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:70:in `each' from /home/kgiusti/work/qpid/qpid/qpid/cpp/rubygen/generate:70:in `<main>' Can't see a problem with the XML file - I suspect a bug in the rubygen code. Re-assigning back to Rafi. Needs someone who understands ruby to look at this. To me, Ruby is just a little less decipherable than Martian.
      Hide
      Ken Giusti added a comment -

      Patch that introduces stripped schema into C++ build.

      Show
      Ken Giusti added a comment - Patch that introduces stripped schema into C++ build.
      Hide
      Rafael H. Schloming added a comment -

      To close this bug both the java broker and the cpp broker need to be switched over to use the stripped versions of the files as input to their code generators. We can then remove the non stripped versions from svn.

      Show
      Rafael H. Schloming added a comment - To close this bug both the java broker and the cpp broker need to be switched over to use the stripped versions of the files as input to their code generators. We can then remove the non stripped versions from svn.
      Hide
      Rafael H. Schloming added a comment -

      the stripped files have been checked in alongside the regular spec files:

      amqp.0-10-qpid-errata.stripped.xml amqp0-9-1.stripped.xml
      amqp.0-10.stripped.xml amqp.0-9.stripped.xml
      amqp.0-8.stripped.xml

      The python client now uses the stripped versions of the files. I've verified that all the python test results remain unchanged before/after the changeover to using the stripped files. This entailed running the tests against the unmodified cpp and java brokers, so there is good confidence that the change didn't introduce any interop issues to the python client.

      Show
      Rafael H. Schloming added a comment - the stripped files have been checked in alongside the regular spec files: amqp.0-10-qpid-errata.stripped.xml amqp0-9-1.stripped.xml amqp.0-10.stripped.xml amqp.0-9.stripped.xml amqp.0-8.stripped.xml The python client now uses the stripped versions of the files. I've verified that all the python test results remain unchanged before/after the changeover to using the stripped files. This entailed running the tests against the unmodified cpp and java brokers, so there is good confidence that the change didn't introduce any interop issues to the python client.

        People

        • Assignee:
          Alan Conway
          Reporter:
          Rafael H. Schloming
        • Votes:
          0 Vote for this issue
          Watchers:
          5 Start watching this issue

          Dates

          • Created:
            Updated:
            Resolved:

            Development