[GitHub] [qpid-proton] astitcher commented on a change in pull request #185: PROTON-2079: Fix usage of formatting placeholders in printfs

2019-07-23 Thread GitBox
astitcher commented on a change in pull request #185: PROTON-2079: Fix usage of 
formatting placeholders in printfs
URL: https://github.com/apache/qpid-proton/pull/185#discussion_r306539270
 
 

 ##
 File path: c/tools/msgr-send.c
 ##
 @@ -289,7 +289,7 @@ int main(int argc, char** argv)
 check_messenger(messenger);
 }
 
-LOG("Messages received=%llu sent=%llu\n", received, sent);
+LOG("Messages received=%" PRIu64 " sent=%" PRIu64 "\n", received, sent);
 
 Review comment:
   True, but is that header included? It's internal to proton and (I think) 
this is code that only uses the exposed proton API (albeit the old messenger 
API.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #185: PROTON-2079: Fix usage of formatting placeholders in printfs

2019-07-23 Thread GitBox
astitcher commented on a change in pull request #185: PROTON-2079: Fix usage of 
formatting placeholders in printfs
URL: https://github.com/apache/qpid-proton/pull/185#discussion_r306540680
 
 

 ##
 File path: c/tools/msgr-send.c
 ##
 @@ -289,7 +289,7 @@ int main(int argc, char** argv)
 check_messenger(messenger);
 }
 
-LOG("Messages received=%llu sent=%llu\n", received, sent);
+LOG("Messages received=%" PRIu64 " sent=%" PRIu64 "\n", received, sent);
 
 Review comment:
   Ah - there are defines in c/tools/msgr-common.h which are included.
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] jdanekrh commented on a change in pull request #185: PROTON-2079: Fix usage of formatting placeholders in printfs

2019-07-24 Thread GitBox
jdanekrh commented on a change in pull request #185: PROTON-2079: Fix usage of 
formatting placeholders in printfs
URL: https://github.com/apache/qpid-proton/pull/185#discussion_r306744500
 
 

 ##
 File path: c/tools/msgr-send.c
 ##
 @@ -289,7 +289,7 @@ int main(int argc, char** argv)
 check_messenger(messenger);
 }
 
-LOG("Messages received=%llu sent=%llu\n", received, sent);
+LOG("Messages received=%" PRIu64 " sent=%" PRIu64 "\n", received, sent);
 
 Review comment:
   Seems I was more lucky than knowledgeable, then.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] franz1981 commented on issue #542: DISPATCH-1389: force inlining of local compose functions

2019-07-24 Thread GitBox
franz1981 commented on issue #542: DISPATCH-1389: force inlining of local 
compose functions
URL: https://github.com/apache/qpid-dispatch/pull/542#issuecomment-514665993
 
 
   @ChugR agree!


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] ganeshmurthy opened a new pull request #545: DISPATCH-1391 - Zero out pn_link references on all qd_links related t…

2019-07-24 Thread GitBox
ganeshmurthy opened a new pull request #545: DISPATCH-1391 - Zero out pn_link 
references on all qd_links related t…
URL: https://github.com/apache/qpid-dispatch/pull/545
 
 
   …o the session


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #545: DISPATCH-1391 - Zero out pn_link references on all qd_links related t…

2019-07-24 Thread GitBox
kgiusti commented on a change in pull request #545: DISPATCH-1391 - Zero out 
pn_link references on all qd_links related t…
URL: https://github.com/apache/qpid-dispatch/pull/545#discussion_r306927274
 
 

 ##
 File path: src/container.c
 ##
 @@ -541,14 +541,16 @@ void qd_container_handle_event(qd_container_t 
*container, pn_event_t *event,
 qd_conn->n_sessions--;
 }
 
-pn_link = pn_link_head(conn, PN_LOCAL_ACTIVE | 
PN_REMOTE_CLOSED);
+//Sweep thru every pn_link in this connection and a matching 
session and zero out the
+// qd_link->pn_link reference. We do this in order to not miss 
any pn_links
+pn_link = pn_link_head(conn, 0);
 
 Review comment:
   Suggestion:
   
   Since you now have to check every link on the session why not combine this 
loop with the previous into a single loop?
   Loop through all once using an if statement to check for PN_LOCAL_ACTIVE | 
PN_REMOTE_ACTIVE and do the detach handling  zeroing the pn_link entry.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #545: DISPATCH-1391 - Zero out pn_link references on all qd_links related t…

2019-07-24 Thread GitBox
kgiusti commented on a change in pull request #545: DISPATCH-1391 - Zero out 
pn_link references on all qd_links related t…
URL: https://github.com/apache/qpid-dispatch/pull/545#discussion_r306927274
 
 

 ##
 File path: src/container.c
 ##
 @@ -541,14 +541,16 @@ void qd_container_handle_event(qd_container_t 
*container, pn_event_t *event,
 qd_conn->n_sessions--;
 }
 
-pn_link = pn_link_head(conn, PN_LOCAL_ACTIVE | 
PN_REMOTE_CLOSED);
+//Sweep thru every pn_link in this connection and a matching 
session and zero out the
+// qd_link->pn_link reference. We do this in order to not miss 
any pn_links
+pn_link = pn_link_head(conn, 0);
 
 Review comment:
   Suggestion:
   
   Since you now have to check every link on the session why not combine this 
loop with the previous into a single loop?
   Loop through all once using an if statement to check for PN_LOCAL_ACTIVE | 
PN_REMOTE_ACTIVE and do the detach handling before zeroing the pn_link entry.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] asfgit closed pull request #545: DISPATCH-1391 - Zero out pn_link references on all qd_links related t…

2019-07-24 Thread GitBox
asfgit closed pull request #545: DISPATCH-1391 - Zero out pn_link references on 
all qd_links related t…
URL: https://github.com/apache/qpid-dispatch/pull/545
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on issue #185: PROTON-2079: Fix usage of formatting placeholders in printfs

2019-07-24 Thread GitBox
astitcher commented on issue #185: PROTON-2079: Fix usage of formatting 
placeholders in printfs
URL: https://github.com/apache/qpid-proton/pull/185#issuecomment-514909804
 
 
   +1 Feel free to rebase and merge this.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] jdanekrh merged pull request #185: PROTON-2079: Fix usage of formatting placeholders in printfs

2019-07-24 Thread GitBox
jdanekrh merged pull request #185: PROTON-2079: Fix usage of formatting 
placeholders in printfs
URL: https://github.com/apache/qpid-proton/pull/185
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] asfgit closed pull request #542: DISPATCH-1389: force inlining of local compose functions

2019-07-29 Thread GitBox
asfgit closed pull request #542: DISPATCH-1389: force inlining of local compose 
functions
URL: https://github.com/apache/qpid-dispatch/pull/542
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] asfgit closed pull request #544: DISPATCH-1389: export qd_buffer_t access methods inline

2019-07-29 Thread GitBox
asfgit closed pull request #544: DISPATCH-1389: export qd_buffer_t access 
methods inline
URL: https://github.com/apache/qpid-dispatch/pull/544
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] jdanekrh commented on issue #459: DISPATCH-1282 - Support for building on macOS

2019-07-29 Thread GitBox
jdanekrh commented on issue #459: DISPATCH-1282 - Support for building on macOS
URL: https://github.com/apache/qpid-dispatch/pull/459#issuecomment-516004987
 
 
   @RoddieKieley Thank you for the review. I've opened followup Jira for fixing 
tests https://issues.apache.org/jira/browse/DISPATCH-1384
   
   Unless anyone complains, I'd merge this PR and then continue fixing the 
tests in subsequent PRs.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] jdanekrh edited a comment on issue #459: DISPATCH-1282 - Support for building on macOS

2019-07-29 Thread GitBox
jdanekrh edited a comment on issue #459: DISPATCH-1282 - Support for building 
on macOS
URL: https://github.com/apache/qpid-dispatch/pull/459#issuecomment-516004987
 
 
   @RoddieKieley Thank you for the review. I've opened followup Jira for fixing 
tests https://issues.apache.org/jira/browse/DISPATCH-1384
   
   Unless anyone complains, I'll look into the unittest2 fragility, and then 
merge this PR and then continue fixing the tests in subsequent PRs.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] asfgit closed pull request #541: DISPATCH-1389: optimize the STATE_IN_BODY codepath in qd_iterator_octet

2019-07-29 Thread GitBox
asfgit closed pull request #541: DISPATCH-1389: optimize the STATE_IN_BODY 
codepath in qd_iterator_octet
URL: https://github.com/apache/qpid-dispatch/pull/541
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti opened a new pull request #546: DISPATCH-1389: optimize qd_iterator_advance, qd_iterator_ncopy and

2019-07-29 Thread GitBox
kgiusti opened a new pull request #546: DISPATCH-1389: optimize 
qd_iterator_advance, qd_iterator_ncopy and
URL: https://github.com/apache/qpid-dispatch/pull/546
 
 
   qd_iterator_equal to use multi-byte operations when the iterator view
   is in the raw data.
   
   Results of two-hop router test on my development system:
   
   current master: 
 5.165: msgs sent=50 msgs/sec=   96797.306
   
   with this patch:
 4.844: msgs sent=50 msgs/sec=  103228.321
   
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] bhardesty opened a new pull request #547: NO JIRA: Fix typo and minor issues in doc

2019-07-29 Thread GitBox
bhardesty opened a new pull request #547: NO JIRA: Fix typo and minor issues in 
doc
URL: https://github.com/apache/qpid-dispatch/pull/547
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] codecov-io commented on issue #547: NO JIRA: Fix typo and minor issues in doc

2019-07-29 Thread GitBox
codecov-io commented on issue #547: NO JIRA: Fix typo and minor issues in doc
URL: https://github.com/apache/qpid-dispatch/pull/547#issuecomment-516184344
 
 
   # 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/547?src=pr&el=h1) 
Report
   > Merging 
[#547](https://codecov.io/gh/apache/qpid-dispatch/pull/547?src=pr&el=desc) into 
[master](https://codecov.io/gh/apache/qpid-dispatch/commit/7c67a39aaafc161f15071b1da0baf2a023252b07?src=pr&el=desc)
 will **increase** coverage by `0.02%`.
   > The diff coverage is `n/a`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/qpid-dispatch/pull/547/graphs/tree.svg?width=650&token=rk2Cgd27pP&height=150&src=pr)](https://codecov.io/gh/apache/qpid-dispatch/pull/547?src=pr&el=tree)
   
   ```diff
   @@Coverage Diff @@
   ##   master #547  +/-   ##
   ==
   + Coverage   86.53%   86.55%   +0.02% 
   ==
 Files  88   88  
 Lines   1964019640  
   ==
   + Hits1699517000   +5 
   + Misses   2645 2640   -5
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/qpid-dispatch/pull/547?src=pr&el=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[src/router\_node.c](https://codecov.io/gh/apache/qpid-dispatch/pull/547/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9ub2RlLmM=)
 | `92.87% <0%> (+0.12%)` | :arrow_up: |
   | 
[src/router\_core/connections.c](https://codecov.io/gh/apache/qpid-dispatch/pull/547/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2Nvbm5lY3Rpb25zLmM=)
 | `94.47% <0%> (+0.23%)` | :arrow_up: |
   | 
[src/router\_core/transfer.c](https://codecov.io/gh/apache/qpid-dispatch/pull/547/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL3RyYW5zZmVyLmM=)
 | `94.37% <0%> (+0.25%)` | :arrow_up: |
   | 
[src/router\_core/agent\_link.c](https://codecov.io/gh/apache/qpid-dispatch/pull/547/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2FnZW50X2xpbmsuYw==)
 | `67.33% <0%> (+0.5%)` | :arrow_up: |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/547?src=pr&el=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/547?src=pr&el=footer).
 Last update 
[7c67a39...5cce917](https://codecov.io/gh/apache/qpid-dispatch/pull/547?src=pr&el=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] codecov-io commented on issue #546: DISPATCH-1389: optimize qd_iterator_advance, qd_iterator_ncopy and

2019-07-30 Thread GitBox
codecov-io commented on issue #546: DISPATCH-1389: optimize 
qd_iterator_advance, qd_iterator_ncopy and
URL: https://github.com/apache/qpid-dispatch/pull/546#issuecomment-516413915
 
 
   # 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/546?src=pr&el=h1) 
Report
   > Merging 
[#546](https://codecov.io/gh/apache/qpid-dispatch/pull/546?src=pr&el=desc) into 
[master](https://codecov.io/gh/apache/qpid-dispatch/commit/7c67a39aaafc161f15071b1da0baf2a023252b07?src=pr&el=desc)
 will **increase** coverage by `0.07%`.
   > The diff coverage is `97.65%`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/qpid-dispatch/pull/546/graphs/tree.svg?width=650&token=rk2Cgd27pP&height=150&src=pr)](https://codecov.io/gh/apache/qpid-dispatch/pull/546?src=pr&el=tree)
   
   ```diff
   @@Coverage Diff@@
   ##   master#546  +/-   ##
   =
   + Coverage   86.53%   86.6%   +0.07% 
   =
 Files  88  88  
 Lines   19640   19730  +90 
   =
   + Hits16995   17087  +92 
   + Misses   26452643   -2
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/qpid-dispatch/pull/546?src=pr&el=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[tests/field\_test.c](https://codecov.io/gh/apache/qpid-dispatch/pull/546/diff?src=pr&el=tree#diff-dGVzdHMvZmllbGRfdGVzdC5j)
 | `79.56% <80%> (ø)` | :arrow_up: |
   | 
[src/iterator.c](https://codecov.io/gh/apache/qpid-dispatch/pull/546/diff?src=pr&el=tree#diff-c3JjL2l0ZXJhdG9yLmM=)
 | `90.09% <99.15%> (+1.76%)` | :arrow_up: |
   | 
[src/router\_core/router\_core.c](https://codecov.io/gh/apache/qpid-dispatch/pull/546/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL3JvdXRlcl9jb3JlLmM=)
 | `86.53% <0%> (-0.2%)` | :arrow_down: |
   | 
[src/parse.c](https://codecov.io/gh/apache/qpid-dispatch/pull/546/diff?src=pr&el=tree#diff-c3JjL3BhcnNlLmM=)
 | `84.96% <0%> (+0.2%)` | :arrow_up: |
   | 
[src/router\_node.c](https://codecov.io/gh/apache/qpid-dispatch/pull/546/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9ub2RlLmM=)
 | `92.99% <0%> (+0.24%)` | :arrow_up: |
   | 
[src/router\_core/transfer.c](https://codecov.io/gh/apache/qpid-dispatch/pull/546/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL3RyYW5zZmVyLmM=)
 | `94.37% <0%> (+0.25%)` | :arrow_up: |
   | 
[src/router\_core/agent\_link.c](https://codecov.io/gh/apache/qpid-dispatch/pull/546/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2FnZW50X2xpbmsuYw==)
 | `67.33% <0%> (+0.5%)` | :arrow_up: |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/546?src=pr&el=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/546?src=pr&el=footer).
 Last update 
[7c67a39...d5aa45b](https://codecov.io/gh/apache/qpid-dispatch/pull/546?src=pr&el=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] asfgit closed pull request #547: NO JIRA: Fix typo and minor issues in doc

2019-07-30 Thread GitBox
asfgit closed pull request #547: NO JIRA: Fix typo and minor issues in doc
URL: https://github.com/apache/qpid-dispatch/pull/547
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-broker-j] overmeulen opened a new pull request #33: QPID-8289: [Broker-J] Broker startup can fail due to ConcurrentModificationException

2019-08-01 Thread GitBox
overmeulen opened a new pull request #33: QPID-8289: [Broker-J] Broker startup 
can fail due to ConcurrentModificationException
URL: https://github.com/apache/qpid-broker-j/pull/33
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-broker-j] overmeulen commented on issue #33: QPID-8289: [Broker-J] Broker startup can fail due to ConcurrentModificationException

2019-08-02 Thread GitBox
overmeulen commented on issue #33: QPID-8289: [Broker-J] Broker startup can 
fail due to ConcurrentModificationException
URL: https://github.com/apache/qpid-broker-j/pull/33#issuecomment-517609770
 
 
   The appveyor failure seems technical...


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] asfgit closed pull request #546: DISPATCH-1389: optimize qd_iterator_advance, qd_iterator_ncopy and

2019-08-08 Thread GitBox
asfgit closed pull request #546: DISPATCH-1389: optimize qd_iterator_advance, 
qd_iterator_ncopy and
URL: https://github.com/apache/qpid-dispatch/pull/546
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr opened a new pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-09 Thread GitBox
kpvdr opened a new pull request #186: PROTON-2086: Changed API documentation 
from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186
 
 
   The epydoc documentation has been removed.
   Sphinx markup has been added to the code comments. For a successful build, 
the version of Sphinx (ie Py2 or Py3) which matches the version of Python used 
to build the API must be installed. Cmake checks for this and will build if the 
correct version of Sphinx is found. The docs are built with
   `make docs`
   If installation of the docs are needed, then use
   `make docs install`
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-broker-j] asfgit closed pull request #33: QPID-8289: [Broker-J] Broker startup can fail due to ConcurrentModificationException

2019-08-11 Thread GitBox
asfgit closed pull request #33: QPID-8289: [Broker-J] Broker startup can fail 
due to ConcurrentModificationException
URL: https://github.com/apache/qpid-broker-j/pull/33
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] bhardesty opened a new pull request #548: DISPATCH-1396: Add starting router procedure

2019-08-12 Thread GitBox
bhardesty opened a new pull request #548: DISPATCH-1396: Add starting router 
procedure
URL: https://github.com/apache/qpid-dispatch/pull/548
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-13 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r313477224
 
 

 ##
 File path: python/docs/Makefile
 ##
 @@ -0,0 +1,20 @@
+# Minimal makefile for Sphinx documentation
 
 Review comment:
   I have no idea what the purpose of this file is.
   It isn't used in our doc build (at least as far as I can tell).
   I suggest you just remove it.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-13 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r313476350
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   You should be checking for sphinx using:
   > check_python_module("sphinx", SPHINX_MODULE_FOUND)
   > if (SPHINX_MODULE_FOUND)
   >...
   
   and then when you call sphinx-build use
   > add_custom_command(doc-py
   >   COMMAND
   > ${PN_ENV_SCRIPT} --
   >   PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR}
   > ${PYTHON_EXECUTABLE} -m sphinx
   >   -b html ${CMAKE_CURRENT_SOURCE_DIR}/docs 
${CMAKE_CURRENT_BINARY_DIR}/docs)
   (I think this is the correct invocation of sphinx - I'm not 100% sure 
though, but you can definitely invoke it this way)
   
   This avoids having to worry about python2/python3 differences; will 
correctly support Windows (which the current and your solution does not) and 
also correctly uses a virtual environment set up for the build, which is a very 
useful thing to do for a CI instance.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-13 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r313477968
 
 

 ##
 File path: python/proton/utils.py
 ##
 @@ -19,12 +19,14 @@
 
 from __future__ import absolute_import
 
-from ._utils import BlockingConnection, SyncRequestResponse, SendException, 
LinkDetached, ConnectionClosed
+from ._utils import BlockingConnection, BlockingSender, BlockingReceiver, 
SyncRequestResponse, SendException, LinkDetached, ConnectionClosed
 
 __all__ = [
 'BlockingConnection',
+'BlockingSender',
+'BlockingReceiver',
 'SyncRequestResponse',
 'SendException',
 'LinkDetached',
-'ConnectionClosed'
+'ConnectionClosed',
 
 Review comment:
   I think adding this comma is in error (it is harmless though)


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] codecov-io commented on issue #548: DISPATCH-1396: Add starting router procedure

2019-08-13 Thread GitBox
codecov-io commented on issue #548: DISPATCH-1396: Add starting router procedure
URL: https://github.com/apache/qpid-dispatch/pull/548#issuecomment-520926388
 
 
   # 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/548?src=pr&el=h1) 
Report
   > Merging 
[#548](https://codecov.io/gh/apache/qpid-dispatch/pull/548?src=pr&el=desc) into 
[master](https://codecov.io/gh/apache/qpid-dispatch/commit/717be609925646d0856e129c6760098e976a12f2?src=pr&el=desc)
 will **increase** coverage by `0.02%`.
   > The diff coverage is `n/a`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/qpid-dispatch/pull/548/graphs/tree.svg?width=650&token=rk2Cgd27pP&height=150&src=pr)](https://codecov.io/gh/apache/qpid-dispatch/pull/548?src=pr&el=tree)
   
   ```diff
   @@Coverage Diff@@
   ##   master#548  +/-   ##
   =
   + Coverage   86.57%   86.6%   +0.02% 
   =
 Files  88  88  
 Lines   19731   19726   -5 
   =
 Hits17083   17083  
   + Misses   26482643   -5
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/qpid-dispatch/pull/548?src=pr&el=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[...re/modules/edge\_addr\_tracking/edge\_addr\_tracking.c](https://codecov.io/gh/apache/qpid-dispatch/pull/548/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL21vZHVsZXMvZWRnZV9hZGRyX3RyYWNraW5nL2VkZ2VfYWRkcl90cmFja2luZy5j)
 | `84.94% <0%> (-1.62%)` | :arrow_down: |
   | 
[src/router\_core/connections.c](https://codecov.io/gh/apache/qpid-dispatch/pull/548/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2Nvbm5lY3Rpb25zLmM=)
 | `94.23% <0%> (-0.12%)` | :arrow_down: |
   | 
[src/router\_core/delivery.c](https://codecov.io/gh/apache/qpid-dispatch/pull/548/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2RlbGl2ZXJ5LmM=)
 | `87.85% <0%> (+0.25%)` | :arrow_up: |
   | 
[src/router\_core/transfer.c](https://codecov.io/gh/apache/qpid-dispatch/pull/548/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL3RyYW5zZmVyLmM=)
 | `95.14% <0%> (+0.76%)` | :arrow_up: |
   | 
[src/parse.c](https://codecov.io/gh/apache/qpid-dispatch/pull/548/diff?src=pr&el=tree#diff-c3JjL3BhcnNlLmM=)
 | `85.78% <0%> (+1.02%)` | :arrow_up: |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/548?src=pr&el=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/548?src=pr&el=footer).
 Last update 
[717be60...5a5b33d](https://codecov.io/gh/apache/qpid-dispatch/pull/548?src=pr&el=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] bhardesty opened a new pull request #549: NO JIRA: Add "qdstat -e" descriptions to qdstat man page

2019-08-13 Thread GitBox
bhardesty opened a new pull request #549: NO JIRA: Add "qdstat -e" descriptions 
to qdstat man page
URL: https://github.com/apache/qpid-dispatch/pull/549
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] codecov-io commented on issue #549: NO JIRA: Add "qdstat -e" descriptions to qdstat man page

2019-08-13 Thread GitBox
codecov-io commented on issue #549: NO JIRA: Add "qdstat -e" descriptions to 
qdstat man page
URL: https://github.com/apache/qpid-dispatch/pull/549#issuecomment-520998325
 
 
   # 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/549?src=pr&el=h1) 
Report
   > Merging 
[#549](https://codecov.io/gh/apache/qpid-dispatch/pull/549?src=pr&el=desc) into 
[master](https://codecov.io/gh/apache/qpid-dispatch/commit/717be609925646d0856e129c6760098e976a12f2?src=pr&el=desc)
 will **decrease** coverage by `0.03%`.
   > The diff coverage is `n/a`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/qpid-dispatch/pull/549/graphs/tree.svg?width=650&token=rk2Cgd27pP&height=150&src=pr)](https://codecov.io/gh/apache/qpid-dispatch/pull/549?src=pr&el=tree)
   
   ```diff
   @@Coverage Diff @@
   ##   master #549  +/-   ##
   ==
   - Coverage   86.57%   86.54%   -0.04% 
   ==
 Files  88   88  
 Lines   1973119730   -1 
   ==
   - Hits1708317076   -7 
   - Misses   2648 2654   +6
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/qpid-dispatch/pull/549?src=pr&el=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[...re/modules/edge\_addr\_tracking/edge\_addr\_tracking.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL21vZHVsZXMvZWRnZV9hZGRyX3RyYWNraW5nL2VkZ2VfYWRkcl90cmFja2luZy5j)
 | `83.87% <0%> (-2.69%)` | :arrow_down: |
   | 
[...core/modules/address\_lookup\_client/lookup\_client.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL21vZHVsZXMvYWRkcmVzc19sb29rdXBfY2xpZW50L2xvb2t1cF9jbGllbnQuYw==)
 | `91.28% <0%> (-1.05%)` | :arrow_down: |
   | 
[src/router\_core/forwarder.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2ZvcndhcmRlci5j)
 | `92.87% <0%> (-0.69%)` | :arrow_down: |
   | 
[src/router\_core/router\_core.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL3JvdXRlcl9jb3JlLmM=)
 | `86.53% <0%> (-0.2%)` | :arrow_down: |
   | 
[src/router\_core/connections.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2Nvbm5lY3Rpb25zLmM=)
 | `94.35% <0%> (ø)` | :arrow_up: |
   | 
[src/iterator.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL2l0ZXJhdG9yLmM=)
 | `89.15% <0%> (+0.18%)` | :arrow_up: |
   | 
[src/router\_node.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9ub2RlLmM=)
 | `93.11% <0%> (+0.24%)` | :arrow_up: |
   | 
[src/router\_core/delivery.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2RlbGl2ZXJ5LmM=)
 | `87.85% <0%> (+0.25%)` | :arrow_up: |
   | 
[src/parse.c](https://codecov.io/gh/apache/qpid-dispatch/pull/549/diff?src=pr&el=tree#diff-c3JjL3BhcnNlLmM=)
 | `85.2% <0%> (+0.44%)` | :arrow_up: |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/549?src=pr&el=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/549?src=pr&el=footer).
 Last update 
[717be60...4a09706](https://codecov.io/gh/apache/qpid-dispatch/pull/549?src=pr&el=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] jdanekrh opened a new pull request #550: DISPATCH-1300 - doc default httpRootDir as being stand-alone console install path

2019-08-14 Thread GitBox
jdanekrh opened a new pull request #550: DISPATCH-1300 - doc default 
httpRootDir as being stand-alone console install path
URL: https://github.com/apache/qpid-dispatch/pull/550
 
 
   I am intentionally not mentioning the CMAKE_INSTALL_PREFIX here. I hope
   people who know of it can guess that it plays a role in determining the
   console installation directory.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-19 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315279286
 
 

 ##
 File path: python/docs/Makefile
 ##
 @@ -0,0 +1,20 @@
+# Minimal makefile for Sphinx documentation
 
 Review comment:
   Correct, this is a left-over artifact from the initialization of Sphinx, but 
because we are using cmake, it serves no purpose. I'll remove it.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-19 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315281467
 
 

 ##
 File path: python/proton/utils.py
 ##
 @@ -19,12 +19,14 @@
 
 from __future__ import absolute_import
 
-from ._utils import BlockingConnection, SyncRequestResponse, SendException, 
LinkDetached, ConnectionClosed
+from ._utils import BlockingConnection, BlockingSender, BlockingReceiver, 
SyncRequestResponse, SendException, LinkDetached, ConnectionClosed
 
 __all__ = [
 'BlockingConnection',
+'BlockingSender',
+'BlockingReceiver',
 'SyncRequestResponse',
 'SendException',
 'LinkDetached',
-'ConnectionClosed'
+'ConnectionClosed',
 
 Review comment:
   I have thought of this as a style related issue (with certain advantages), 
and have seen a trailing comma frequently in use 
(https://stackoverflow.com/questions/11597901/why-are-trailing-commas-allowed-in-a-list).
 I certainly have no objection removing it, though.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-19 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315299683
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   In the event the appropriate Sphinx for the version of Python in use is not 
installed, this approach will result in an error when using `make docs`:
   ```
   /usr/bin/python: No module named sphinx
   make[3]: *** [python/CMakeFiles/docs-py.dir/build.make:57: 
python/CMakeFiles/docs-py] Error 1
   make[2]: *** [CMakeFiles/Makefile2:3866: python/CMakeFiles/docs-py.dir/all] 
Error 2
   make[1]: *** [CMakeFiles/Makefile2:115: CMakeFiles/docs.dir/rule] Error 2
   make: *** [Makefile:188: docs] Error 2
   ```
   But it certainly would address the other issues raised above. I'll look for 
a way to handle the error more gracefully.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315666188
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   You missed the module detection section of my suggestion (perhaps because it 
is so much smaller than what was there before). This sets SPHINX_MODULE_FOUND 
and you can use this to decide whether or not to try and build the docs.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315683102
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   I should have been more precise describing how this error occurred. I did 
include this section. The `python3-sphinx` module was installed (and found), 
but not the Python 2 version. The `SPHINX_MODULE_FOUND` variable returns 
`true`. However, when building qpid-proton with the (default) Python2, this 
error occurs. If we could find a way to distinguish between Python2 and Python3 
versions of Sphinx, then logic can be used to prevent and error.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315687196
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   This doesn't make a lot of sense. check_python_module() uses 
PYTHON_EXECUTABLE to find the module, so if the build is using python2 then the 
module detection should be using python2 as well. Are you sure you are 
correctly testing SPHINX_MODULE_FOUND? Or perhaps you're somehow using python 
directly and through PYTHON_EXECUTABLE?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315687196
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   This doesn't make a lot of sense. check_python_module() uses 
PYTHON_EXECUTABLE to find the module, so if the build is using python2 then the 
module detection should be using python2 as well. Are you sure you are 
correctly testing SPHINX_MODULE_FOUND? Or perhaps you're somehow using python 
directly and not through PYTHON_EXECUTABLE?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315689748
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   ```
   check_python_module("sphinx" SPHINX_MODULE_FOUND)
   if (SPHINX_MODULE_FOUND)
   add_custom_target(docs-py
   COMMAND ${PN_ENV_SCRIPT} --
   PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR}
   LD_LIBRARY_PATH="${CMAKE_CURRENT_BINARY_DIR}/c"
   ${PYTHON_EXECUTABLE} -m sphinx "${CMAKE_CURRENT_SOURCE_DIR}/docs" 
"${CMAKE_CURRENT_BINARY_DIR}/docs")
   add_dependencies(docs docs-py)
   install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/"
   DESTINATION "${PROTON_SHARE}/docs/api-py"
   COMPONENT documentation
   OPTIONAL)
   endif ()
   ```
   Let me run the test again and report on exactly which versions of Sphinx are 
installed.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315698367
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   ```
   $ sudo yum list python?-sphinx*
   Installed Packages
   python3-sphinx.noarch 
1:1.8.4-1.fc30 @fedora
   python3-sphinx-theme-alabaster.noarch 
0.7.12-3.fc30  @fedora
   python3-sphinx_rtd_theme.noarch   
0.4.3-1.fc30   @fedora
   python3-sphinxcontrib-apidoc.noarch   
0.2.1-10.fc30  @fedora
   python3-sphinxcontrib-websupport.noarch   
1.0.1-12.20180316git.fc30  @fedora
   ```
   I repeated the test by:
   1. Erasing the python2-sphinx package (`dnf erase python2-sphinx`)
   2. Running `cmake ..` from the build directory
   3. Running `make clean all docs`
   but it produced the same results as above. I'll start some debugging...


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r31562
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   In your invocation of sphinx you do not need (probably should not have) the 
PYTHONPATH and LB_LIBRARY_PATH environment vars set. I'm not sure this makes a 
difference, but it certainly clutters the CMake code for no reason.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315700883
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   Can you paste the output from cmake as well?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315704839
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   By adding debug message() statements prior to the if(), I see:
   ```
   PYTHON_EXECUTABLE=/usr/bin/python
   SPHINX_MODULE_FOUND=1
   ```
   with the above packages installed.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315706680
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   It looks like a problem with check_python_module(), it returns 
`SPHINX_MODULE_FOUND=1` with both python2 and python3 versions of sphinx erased.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315739603
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   I think I see the problem: You aren't clearing the CMake results between 
tests. check_python_module() like the standard cmake checks caches the results 
if it finds the module.
   This means that if you rerun the test after erasing something the test is 
not rerun to find a new result.
   This is a completely general cmake behaviour - if you remove python etc. 
cmake won't discover this and will try to use the previous result.
   So you need to test the absence of sphinx with a clean cmake configure run.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] bhardesty opened a new pull request #551: DISPATCH-1374 - Doc qdstat state dump procedure

2019-08-20 Thread GitBox
bhardesty opened a new pull request #551: DISPATCH-1374 - Doc qdstat state dump 
procedure
URL: https://github.com/apache/qpid-dispatch/pull/551
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315831142
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   Agreed. I discovered that initially, I could check for any arbitrary module 
name, and it would result in a positive check. However, only after blowing away 
the build directory in its entirety, did correct behavior return, and the 
detection of sphinx through either Python 2 or 3 worked correctly.
   
   This clears the way to checking in this change. I must look into the 
environment variable issue. Without both of these, the sphinx build fails, but 
perhaps they should be in the conf file somewhere.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-20 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315833802
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   If sphinx has to import the proton module in python to work then I suppose 
it needs the correct environment for that.
   In other words 'import proton' or equivalent would require the environment 
to be set up correctly to run proton and these environment vars would allow 
that to work.
   A little ugly IMO.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] bhardesty opened a new pull request #552: NO JIRA - Add prereq for accessing console

2019-08-20 Thread GitBox
bhardesty opened a new pull request #552: NO JIRA - Add prereq for accessing 
console
URL: https://github.com/apache/qpid-dispatch/pull/552
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-21 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r316206620
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   http://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html
   Yes, it is the autodoc module that imports the target sources and extracts 
the docstrings automatically. I'll leave the PYTHONPATH and LD_LIBRARY_PATH 
environment variables in for now. If I can find a way to put them into the 
config file, I'll do that later, but the config file is not aware of cmake 
variables, so it will probably involve a cmake write to the config file? That 
would be ugly, we will see.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-21 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r316207427
 
 

 ##
 File path: python/proton/utils.py
 ##
 @@ -19,12 +19,14 @@
 
 from __future__ import absolute_import
 
-from ._utils import BlockingConnection, SyncRequestResponse, SendException, 
LinkDetached, ConnectionClosed
+from ._utils import BlockingConnection, BlockingSender, BlockingReceiver, 
SyncRequestResponse, SendException, LinkDetached, ConnectionClosed
 
 __all__ = [
 'BlockingConnection',
+'BlockingSender',
+'BlockingReceiver',
 'SyncRequestResponse',
 'SendException',
 'LinkDetached',
-'ConnectionClosed'
+'ConnectionClosed',
 
 Review comment:
   Looking at this again, I believe I at one time added to this list, then 
changed my mind. But I forgot to remove the trailing comma... I'll take it out 
as it appears to be just an added comma for no reason!


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] jdanekrh commented on a change in pull request #548: DISPATCH-1396: Add starting router procedure

2019-08-21 Thread GitBox
jdanekrh commented on a change in pull request #548: DISPATCH-1396: Add 
starting router procedure
URL: https://github.com/apache/qpid-dispatch/pull/548#discussion_r316213191
 
 

 ##
 File path: docs/books/_common/fragment-start-router-service-command.adoc
 ##
 @@ -0,0 +1,23 @@
+
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License
+
+
+[source,bash,options="nowrap"]
+
+$ systemctl start qdrouterd.service
 
 Review comment:
   This requires `systemd`, meaning rhel 7+. Not sure if this is problem or not.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] jdanekrh commented on a change in pull request #552: NO JIRA - Add prereq for accessing console

2019-08-21 Thread GitBox
jdanekrh commented on a change in pull request #552: NO JIRA - Add prereq for 
accessing console
URL: https://github.com/apache/qpid-dispatch/pull/552#discussion_r316215328
 
 

 ##
 File path: docs/books/_common/fragment-console-prereq.adoc
 ##
 @@ -0,0 +1,24 @@
+
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License
+
+
+.Prerequisites
+
+* {ConsoleName} requires the `qpid-dispatch-console` package.
++
+For more information, see the 
link:https://qpid.apache.org/packages.html[Packages page^].
 
 Review comment:
   `qpid-dispatch-console` is not mentioned on the packages page


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti opened a new pull request #553: NO-JIRA: update Travis with latest Proton (0.9.0)

2019-08-21 Thread GitBox
kgiusti opened a new pull request #553: NO-JIRA: update Travis with latest 
Proton (0.9.0)
URL: https://github.com/apache/qpid-dispatch/pull/553
 
 
   I also took the liberty to bump up the test timeout when running in travis - 
occasionally hitting the default timeout.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti commented on issue #553: NO-JIRA: update Travis with latest Proton (0.9.0)

2019-08-21 Thread GitBox
kgiusti commented on issue #553: NO-JIRA: update Travis with latest Proton 
(0.9.0)
URL: https://github.com/apache/qpid-dispatch/pull/553#issuecomment-523505795
 
 
   I'll fix the bad version # in the commit log before merging!


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-21 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r316257193
 
 

 ##
 File path: python/CMakeLists.txt
 ##
 @@ -112,35 +112,46 @@ endmacro(py_compile)
 py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
 py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
 
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
-   foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
-   endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to 
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+set(BUILD_SPHINX_DOCS TRUE)
 
 Review comment:
   I think resolving this neatly will involve restructuring the build a little, 
so this is fine for the moment.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on issue #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-21 Thread GitBox
astitcher commented on issue #186: PROTON-2086: Changed API documentation from 
epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#issuecomment-523516240
 
 
   This looks good from the pov of my concerns (I haven't looked at the actual 
documentation changes much though!)
   If you rebase it against master and squash into a single change I think we 
can commit it.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] asfgit closed pull request #553: NO-JIRA: update Travis with latest Proton (0.9.0)

2019-08-21 Thread GitBox
asfgit closed pull request #553: NO-JIRA: update Travis with latest Proton 
(0.9.0)
URL: https://github.com/apache/qpid-dispatch/pull/553
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on issue #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-21 Thread GitBox
kpvdr commented on issue #186: PROTON-2086: Changed API documentation from 
epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#issuecomment-523533365
 
 
   astitcher: Could you take a look at the summary on the main page (look at 
index.rst if not built, but you'll have to endure rst syntax) to check for 
conceptual correctness. It is somewhat of a repeat of Justin's more detailed 
introduction, and to which a link has been provided. If you are happy, I'll 
rebase.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti opened a new pull request #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-21 Thread GitBox
kgiusti opened a new pull request #554: DISPATCH-1266: Fix unsettled multicast 
forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] bhardesty commented on a change in pull request #548: DISPATCH-1396: Add starting router procedure

2019-08-21 Thread GitBox
bhardesty commented on a change in pull request #548: DISPATCH-1396: Add 
starting router procedure
URL: https://github.com/apache/qpid-dispatch/pull/548#discussion_r316408384
 
 

 ##
 File path: docs/books/_common/fragment-start-router-service-command.adoc
 ##
 @@ -0,0 +1,23 @@
+
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License
+
+
+[source,bash,options="nowrap"]
+
+$ systemctl start qdrouterd.service
 
 Review comment:
   I generalized a bit here since the major distros (Fedora, openSUSE, Debian, 
and most Debian variants) boot systemd by default.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] ChugR commented on issue #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-22 Thread GitBox
ChugR commented on issue #554: DISPATCH-1266: Fix unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#issuecomment-523907220
 
 
   I ran this with a tortured configuration:
 4 interior routers zigzagging between two hosts
 8 edge routers: four on each host connecting to all the interiors
   Send 1M multicast messages
 1 sender
 4 receivers: two on each host receiving from an edge on this host and that 
host
   
   After 550K messages the setup died. One host was OOM and an interior router 
disappeared without crashing. It went defunct. Fortunately one of the interior 
routers would still respond to qdstat.
   
   Will run this test again with a simpler configurations to get a reproducer.
   
   ```
   $ qdstat -g -b taj:21015
   Router Statistics
 attr value
 =
 Version  1.9.0-SNAPSHOT
 Mode interior
 Router IdINTC
 Area 0
 Link Routes  2
 Auto Links   2
 Links10
 Nodes0
 Addresses19
 Connections  3
 Presettled Count 0
 Dropped Presettled Count 0
 Accepted Count   555330
 Rejected Count   0
 Released Count   0
 Modified Count   0
 Deliveries Delayed > 1sec0
 Deliveries Delayed > 10sec   0
 Deliveries to Fallback   0
 Ingress Count1
 Egress Count 555329
 Transit Count555329
 Deliveries from Route Container  0
 Deliveries to Route Container0
   
   chug@unused apr5> qdstat -m -b taj:21015
   Types
 typesize   batch  thread-max  total  
in-threads  rebal-in  rebal-out
 
==
 _endpoint_ref_t 32 64 128 64 64
  0 0
 qd_bitmask_t24 64 128 640192   
  8,713 8,720
 qd_buffer_t 53664 128 2,225,472  2,221,504 
  26,86226,924
 qd_composed_field_t 64 64 128 256256   
  0 0
 qd_composite_t  11264 128 320320   
  0 0
 qd_connection_t 2,360  16 32  80 64
  4 5
 qd_connector_t  50464 128 64 64
  0 0
 qd_hash_handle_t16 64 128 128128   
  0 0
 qd_hash_item_t  32 64 128 192192   
  0 0
 qd_iterator_t   16064 128 5,004,608  4,998,272 
  1,130 1,229
 qd_link_ref_t   24 64 128 832384   
  2,192 2,199
 qd_link_t   10464 128 128128   
  0 0
 qd_listener_t   44064 128 64 64
  0 0
 qd_log_entry_t  2,112  16 32  1,072  1,072 
  0 0
 qd_management_context_t 56 64 128 64 64
  0 0
 qd_message_content_t1,080  64 128 556,288555,456   
  953   966
 qd_message_t14464 128 1,112,512  555,584   
  1,806 10,508
 qd_node_t   56 64 128 64 64
  0 0
 qd_parse_node_t 10464 128 128128   
  0 0
 qd_parsed_field_t   88 64 128 2,224,000  2,221,632 
  4582
 qd_parsed_turbo_t   64 64 128 256256   
  0 0
 qd_timer_t  56 64 128 128128   
  0 0
 qdr_action_t16064 128 448128   
  44,48744,492
 qdr_addr_endpoint_state_t   48 64 128 64 64
  0 0
 qdr_address_config_t72 64 128 64 64
  0 0
 qdr_address_t   37664 128 64 64
  0 0
 qdr_auto_link_t 13664 128 64 64
  0 0
 qdr_conn_identifier_t   11264 128 64 64
  0 0
 qdr_connection_info_t   88 64 128 128128   
  0 0
 qdr_connection_t56864 

[GitHub] [qpid-dispatch] kgiusti commented on issue #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-22 Thread GitBox
kgiusti commented on issue #554: DISPATCH-1266: Fix unsettled multicast 
forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#issuecomment-523909067
 
 
   Nice catch - a memory leak!   My favorite!
   I'll see what I can uncover on my end as well...


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] codecov-io commented on issue #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-22 Thread GitBox
codecov-io commented on issue #554: DISPATCH-1266: Fix unsettled multicast 
forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#issuecomment-524011262
 
 
   # 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/554?src=pr&el=h1) 
Report
   > Merging 
[#554](https://codecov.io/gh/apache/qpid-dispatch/pull/554?src=pr&el=desc) into 
[master](https://codecov.io/gh/apache/qpid-dispatch/commit/c6fe7ec4dfe1fb0538c750932a812ccc43904f56?src=pr&el=desc)
 will **increase** coverage by `0.01%`.
   > The diff coverage is `95.8%`.
   
   [![Impacted file tree 
graph](https://codecov.io/gh/apache/qpid-dispatch/pull/554/graphs/tree.svg?width=650&token=rk2Cgd27pP&height=150&src=pr)](https://codecov.io/gh/apache/qpid-dispatch/pull/554?src=pr&el=tree)
   
   ```diff
   @@Coverage Diff @@
   ##   master #554  +/-   ##
   ==
   + Coverage   86.58%   86.59%   +0.01% 
   ==
 Files  88   88  
 Lines   1973019827  +97 
   ==
   + Hits1708317169  +86 
   - Misses   2647 2658  +11
   ```
   
   
   | [Impacted 
Files](https://codecov.io/gh/apache/qpid-dispatch/pull/554?src=pr&el=tree) | 
Coverage Δ | |
   |---|---|---|
   | 
[src/router\_core/forwarder.c](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2ZvcndhcmRlci5j)
 | `93.42% <ø> (-0.14%)` | :arrow_down: |
   | 
[src/router\_core/core\_link\_endpoint.c](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2NvcmVfbGlua19lbmRwb2ludC5j)
 | `97% <100%> (ø)` | :arrow_up: |
   | 
[src/router\_node.c](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9ub2RlLmM=)
 | `92.76% <100%> (-0.24%)` | :arrow_down: |
   | 
[src/router\_core/transfer.c](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL3RyYW5zZmVyLmM=)
 | `94.34% <100%> (+0.22%)` | :arrow_up: |
   | 
[src/router\_core/connections.c](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2Nvbm5lY3Rpb25zLmM=)
 | `94.15% <100%> (-0.32%)` | :arrow_down: |
   | 
[src/router\_core/delivery.c](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree#diff-c3JjL3JvdXRlcl9jb3JlL2RlbGl2ZXJ5LmM=)
 | `88.46% <95%> (+0.6%)` | :arrow_up: |
   | 
[src/iterator.c](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree#diff-c3JjL2l0ZXJhdG9yLmM=)
 | `88.97% <0%> (-0.17%)` | :arrow_down: |
   | ... and [2 
more](https://codecov.io/gh/apache/qpid-dispatch/pull/554/diff?src=pr&el=tree-more)
 | |
   
   --
   
   [Continue to review full report at 
Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/554?src=pr&el=continue).
   > **Legend** - [Click here to learn 
more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute  (impact)`, `ø = not affected`, `? = missing data`
   > Powered by 
[Codecov](https://codecov.io/gh/apache/qpid-dispatch/pull/554?src=pr&el=footer).
 Last update 
[c6fe7ec...7e1cc88](https://codecov.io/gh/apache/qpid-dispatch/pull/554?src=pr&el=lastupdated).
 Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] ChugR commented on issue #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-22 Thread GitBox
ChugR commented on issue #554: DISPATCH-1266: Fix unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#issuecomment-524043580
 
 
   This patch @  7e1cc88 is good. 
   * I ran the torture test with one sender and four receivers and a million 
messages. All receivers received all messages. 
   * During the test I started dozens of receivers getting 1000 messages only. 
They would connect, get messages from the million message stream, and then 
disconnect. No problem with them nor with interference with the long-standing 
receivers.
   * Memory usage perfectly flat.
   There was no performance testing here, just some sanity checking with 
multiple network hops.
   Ship it.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] ffontaine opened a new pull request #187: cpp/CMakeLists.txt: fix qpid-proton-cpp linking

2019-08-23 Thread GitBox
ffontaine opened a new pull request #187: cpp/CMakeLists.txt: fix 
qpid-proton-cpp linking
URL: https://github.com/apache/qpid-proton/pull/187
 
 
   gpid-proton-cpp must use LINK_PUBLIC to link with qpid-proton-core and
   qpid-proton-proactor otherwise build will fail if those libraries are
   not yet installed on the system:
   
   [ 81%] Linking CXX executable value_test
   
/home/fabrice/buildroot/output/host/lib/gcc/arm-buildroot-linux-uclibcgnueabihf/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabihf/bin/ld:
 warning: libqpid-proton-proactor.so.1, needed by libqpid-proton-cpp.so.12.6.0, 
not found (try using -rpath or -rpath-link)
   
/home/fabrice/buildroot/output/host/lib/gcc/arm-buildroot-linux-uclibcgnueabihf/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabihf/bin/ld:
 warning: libqpid-proton-core.so.10, needed by libqpid-proton-cpp.so.12.6.0, 
not found (try using -rpath or -rpath-link)
   
/home/fabrice/buildroot/output/host/lib/gcc/arm-buildroot-linux-uclibcgnueabihf/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabihf/bin/ld:
 libqpid-proton-cpp.so.12.6.0: undefined reference to `pn_data_put_described'
   
   Signed-off-by: Fabrice Fontaine 


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on issue #187: cpp/CMakeLists.txt: fix qpid-proton-cpp linking

2019-08-23 Thread GitBox
astitcher commented on issue #187: cpp/CMakeLists.txt: fix qpid-proton-cpp 
linking
URL: https://github.com/apache/qpid-proton/pull/187#issuecomment-524436160
 
 
   Can you explain your specific situation more because this fix doesn't 
entirely make sense:
   These libraries should be LINK_PRIVATE as far as cmake semantics are 
concerned because they provide symbols only to the qpid-proton-cpp library 
itself and are not needed by any of it's clients.
   LINK_PUBLIC means that any client of qpid-proton-cpp would need to 
explicitly link with these libraries and this is not needed or desired.
   Are you perhaps trying to build the cpp directory of the qpid-proton tree by 
itself? Currently the only way to build the C++ API is as part of the full tree 
build.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher edited a comment on issue #187: cpp/CMakeLists.txt: fix qpid-proton-cpp linking

2019-08-23 Thread GitBox
astitcher edited a comment on issue #187: cpp/CMakeLists.txt: fix 
qpid-proton-cpp linking
URL: https://github.com/apache/qpid-proton/pull/187#issuecomment-524436160
 
 
   Can you explain your specific situation more because this fix doesn't 
entirely make sense:
   These libraries should be LINK_PRIVATE as far as cmake semantics are 
concerned because they provide symbols only to the qpid-proton-cpp library 
itself and are not needed by any of its clients.
   LINK_PUBLIC means that any client of qpid-proton-cpp would link with these 
libraries and this is not needed or desired.
   Are you perhaps trying to build the cpp directory of the qpid-proton tree by 
itself? Currently the only way to build the C++ API is as part of the full tree 
build.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317287382
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
 
 Review comment:
   typo - delivery


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317289512
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
 
 Review comment:
   'settling' is a term of art within the AMQP spec referring to the act of 
forgetting about a delivery when you no longer need to remember it because we 
no longer care about it receipt status and no longer need to retry the 
delivery. It is separate from the concepts of terminal delivery state - Accept, 
Reject, Release etc.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317289496
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
 
 Review comment:
   Really the only point of the Event object passed to the handlers is to get 
the object to which the event pertains. It also contains the event handled (but 
we know what that is because clearly we're already in the appropriate handler.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317293384
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
+
+* **on_start()**: This indicates that the event loop in the container has 
started, and that a new sender and/or
+receiver may now be created.
+
+To send a message, the following events need to be handled:
+
+* **on_sendable()**: This callback indicates that send credit has now been set 
by the receiver, and that a message may
+now be sent.
+* **on_accepted()**: This callback indicates that a message has been received 
and accepted by the receiving peer.
+
+To receive a message, the following event need to be handled:
+
+* **on_message()**: This callback indicates that a message has been received. 
The message and its delivery object may
+be retreived, and if needed, the message can be either accepted or 
rejected.
+
+Many other events exist for the handling of transactions and other message 
events and errors, and if present in
+your handler will be called as the corresponding events arise. See the 
:ref:`tutorial` for examples of handling
+some other events.
+
+Several event handl

[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317294349
 
 

 ##
 File path: python/docs/proton.handlers.rst
 ##
 @@ -0,0 +1,106 @@
+##
+Module ``proton.handlers``
+##
+
+.. currentmodule:: proton.handlers
+
+Module Summary
+##
+
+|
+
+.. autosummary::
+
+MessagingHandler
+EndpointStateHandler
 
 Review comment:
   Bear in mind this is because MessagingHandler actually aggregates all the 
other functionality anyway because of the way the event dispatch works. So all 
the default functionality is that of MessagingHandler.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317293874
 
 

 ##
 File path: python/docs/proton.handlers.rst
 ##
 @@ -0,0 +1,106 @@
+##
+Module ``proton.handlers``
+##
+
+.. currentmodule:: proton.handlers
+
+Module Summary
+##
+
+|
+
+.. autosummary::
+
+MessagingHandler
+EndpointStateHandler
 
 Review comment:
   As above I don't think we should document anything other than 
MessagingHandler & after consideration 
TransactionHandler/TransactionClientHandler.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317289764
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
 
 Review comment:
   So strike 'in some cases'


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317290849
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
+
+* **on_start()**: This indicates that the event loop in the container has 
started, and that a new sender and/or
+receiver may now be created.
+
+To send a message, the following events need to be handled:
 
 Review comment:
   'need' -> 'may need' (as above). Or 'usually' - but it's not an invariable 
rule.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317291003
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
+
+* **on_start()**: This indicates that the event loop in the container has 
started, and that a new sender and/or
+receiver may now be created.
+
+To send a message, the following events need to be handled:
+
+* **on_sendable()**: This callback indicates that send credit has now been set 
by the receiver, and that a message may
+now be sent.
+* **on_accepted()**: This callback indicates that a message has been received 
and accepted by the receiving peer.
+
+To receive a message, the following event need to be handled:
 
 Review comment:
   Again as sending messages


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

-
To 

[GitHub] [qpid-proton] astitcher commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
astitcher commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317290561
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
 
 Review comment:
   Strike 'should' insert 'may' or 'can'.
   Which handlers to use will be very dependent on the application and exactly 
which guarantees it needs.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317298149
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
+
+* **on_start()**: This indicates that the event loop in the container has 
started, and that a new sender and/or
+receiver may now be created.
+
+To send a message, the following events need to be handled:
 
 Review comment:
   Agreed.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317298210
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
 
 Review comment:
   Agreed.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317298014
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
+
+* **on_start()**: This indicates that the event loop in the container has 
started, and that a new sender and/or
+receiver may now be created.
+
+To send a message, the following events need to be handled:
+
+* **on_sendable()**: This callback indicates that send credit has now been set 
by the receiver, and that a message may
+now be sent.
+* **on_accepted()**: This callback indicates that a message has been received 
and accepted by the receiving peer.
+
+To receive a message, the following event need to be handled:
+
+* **on_message()**: This callback indicates that a message has been received. 
The message and its delivery object may
+be retreived, and if needed, the message can be either accepted or 
rejected.
+
+Many other events exist for the handling of transactions and other message 
events and errors, and if present in
+your handler will be called as the corresponding events arise. See the 
:ref:`tutorial` for examples of handling
+some other events.
+
+Several event handlers 

[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317298104
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
+when a message is received, the event object will have the property 
``event.message`` by which the message itself may
+be obtained. See :class:`proton.Event` for more details.
+
+The following are some of the important event callbacks that should be 
implemented by a developer:
+
+* **on_start()**: This indicates that the event loop in the container has 
started, and that a new sender and/or
+receiver may now be created.
+
+To send a message, the following events need to be handled:
+
+* **on_sendable()**: This callback indicates that send credit has now been set 
by the receiver, and that a message may
+now be sent.
+* **on_accepted()**: This callback indicates that a message has been received 
and accepted by the receiving peer.
+
+To receive a message, the following event need to be handled:
 
 Review comment:
   Agreed.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

-
To unsubscribe, e-mail: d

[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317298694
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
 
 Review comment:
   Thank you for the clarification. I changed this to read:
   
   > This also includes actions such as settling the
   > delivery (ie causing the delivery status to be forgotten when it is no 
longer needed).


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317298952
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
+status of the message as it is sent from the sender to the receiver. This also 
includes actions such as settling the
+delivery, a mechanism by which each peer can verify that the message has been 
properly received and is either accepted
+or rejected. The delivery class may be found at :class:`proton.Delivery`. The 
delivery object is most commonly obtained
+when a message-related event occurs through the event object. See `Event 
Handlers`_ below.
+
+Event Handlers
+--
+
+A **handler** is a class that handles events associated with the sending and 
receiving of messages. This includes
+callbacks for events such as the arrival of a new message, error conditions 
that might arise, and the closing
+of the connection over which messages are sent. An application developer must 
handle some key events to
+successfully send and receive messages. When an event handler callback is 
called by the library, an Event object is
+passed to it which contains details of the event, and in some cases, objects 
associated with the event. For example,
 
 Review comment:
   I changed this to read:
   
   > When an event handler callback is called by the library, an Event object is
   > passed to it which contains an object associated with the event.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317299082
 
 

 ##
 File path: python/docs/index.rst
 ##
 @@ -1,11 +1,134 @@
-Apache Qpid Proton: python documentation
-
+
+Qpid Proton Python API Documentation
+
 
-Contents:
+The Proton module provides a Python 2.7 and 3.x API for Qpid Proton. It 
enables a developer to write Python applications
+that send and receive AMQP messages.
 
+***
+Modules
+***
 .. toctree::
:maxdepth: 2
 
-   tutorial
+   proton
+   proton.handlers
+   proton.reactor
+   proton.utils
+
+*
+About AMQP and the Qpid Proton Python API
+*
+
+.. toctree::
+   :maxdepth: 1
+
overview
+   tutorial
+
+Key API Features
+
+
+ * Event-driven API
+ * SSL/TLS secured communication
+ * SASL authentication
+ * Automatic reconnect and failover
+ * Seamless conversion between AMQP and Python data types
+ * AMQP 1.0
+
+Basic API Concepts
+==
+
+The Qpid Python client API and library allows applications to send and receive 
AMQP messages. See :ref:`overview`
+for a more detailed explanation.
+
+Containers
+--
+
+Messages are transferred between connected peers (or nodes) using **senders** 
and **receivers**. Each sender
+or receiver is established over a **connection**. Each connection is 
established between two unique **containers**,
+the entry point for the API. The container class 
:class:`proton.reactor.Container` is found in the ``proton.reactor``
+module.
+
+Senders
+---
+
+The peer that sends messages uses a **sender** to send messages, which 
includes the target queue or topic which is
+to receive the messages. The sender may be found at :class:`proton.Sender`. 
Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_sender`.
+
+Receivers
+-
+
+The peer that receives messages uses a **receiver** to receive messages, and 
includes a source queue or topic from
+which to receive messages. The receiver may be found at 
:class:`proton.Receiver`. Note that senders are most commonly
+obtained by using the convenience method 
:meth:`proton.reactor.Container.create_receiver`.
+
+Message Delivery
+
+
+The process of sending a message is known as **delevery**. Each sent message 
has a delivry object which tracks the
 
 Review comment:
   Thanks, x2 in fact!


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] kpvdr commented on a change in pull request #186: PROTON-2086: Changed API documentation from epydoc to Sphinx

2019-08-23 Thread GitBox
kpvdr commented on a change in pull request #186: PROTON-2086: Changed API 
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r317299565
 
 

 ##
 File path: python/docs/proton.handlers.rst
 ##
 @@ -0,0 +1,106 @@
+##
+Module ``proton.handlers``
+##
+
+.. currentmodule:: proton.handlers
+
+Module Summary
+##
+
+|
+
+.. autosummary::
+
+MessagingHandler
+EndpointStateHandler
 
 Review comment:
   I went through this list with @ssorj, but if he agrees, we should remove it. 
Better now than after we release this. It is better to add bits than to have to 
retract/deprecate them later.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] jdanekrh opened a new pull request #188: PROTON-2091: fix `len(queue)` in python/examples and reformat for PEP8

2019-08-23 Thread GitBox
jdanekrh opened a new pull request #188: PROTON-2091: fix `len(queue)` in 
python/examples and reformat for PEP8
URL: https://github.com/apache/qpid-proton/pull/188
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on issue #188: PROTON-2091: fix `len(queue)` in python/examples and reformat for PEP8

2019-08-23 Thread GitBox
astitcher commented on issue #188: PROTON-2091: fix `len(queue)` in 
python/examples and reformat for PEP8
URL: https://github.com/apache/qpid-proton/pull/188#issuecomment-524469383
 
 
   I think you left extraneous testing code in the bottom of the file.
   Otherwise looks good to me.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] jdanekrh commented on issue #188: PROTON-2091: fix `len(queue)` in python/examples and reformat for PEP8

2019-08-23 Thread GitBox
jdanekrh commented on issue #188: PROTON-2091: fix `len(queue)` in 
python/examples and reformat for PEP8
URL: https://github.com/apache/qpid-proton/pull/188#issuecomment-524469661
 
 
   I meant to keep the test code there. It will only execute if user does 
`python -m unittest discover`, otherwise it is inert.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] astitcher commented on issue #188: PROTON-2091: fix `len(queue)` in python/examples and reformat for PEP8

2019-08-23 Thread GitBox
astitcher commented on issue #188: PROTON-2091: fix `len(queue)` in 
python/examples and reformat for PEP8
URL: https://github.com/apache/qpid-proton/pull/188#issuecomment-524470568
 
 
   Please remove it - this is meant to be example code. No other example has 
test code included.
   
   If you really think we need to include unit tests for something that you 
think is complex enough to need it then use a testing tool that can extract 
unit tests from comments and put the unit test comment with the class/function 
that is being tested.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] jdanekrh commented on issue #188: PROTON-2091: fix `len(queue)` in python/examples and reformat for PEP8

2019-08-23 Thread GitBox
jdanekrh commented on issue #188: PROTON-2091: fix `len(queue)` in 
python/examples and reformat for PEP8
URL: https://github.com/apache/qpid-proton/pull/188#issuecomment-524471523
 
 
   Ok, it is trivial enough it does not need a test. Adding this as a python 
doctest would be similarly distracting, I guess


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-proton] jdanekrh merged pull request #188: PROTON-2091: fix `len(queue)` in python/examples and reformat for PEP8

2019-08-24 Thread GitBox
jdanekrh merged pull request #188: PROTON-2091: fix `len(queue)` in 
python/examples and reformat for PEP8
URL: https://github.com/apache/qpid-proton/pull/188
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-26 Thread GitBox
kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix 
unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#discussion_r317628508
 
 

 ##
 File path: src/router_core/delivery.c
 ##
 @@ -558,81 +572,386 @@ void qdr_delivery_decref_CT(qdr_core_t *core, 
qdr_delivery_t *dlv, const char *l
 }
 
 
+// the remote endpoint has change the state (disposition) or settlement for the
+// delivery.  Update the local state/settlement accordingly.
+//
 static void qdr_update_delivery_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-qdr_delivery_t *dlv= action->args.delivery.delivery;
-qdr_delivery_t *peer   = qdr_delivery_first_peer_CT(dlv);
-boolpush   = false;
-boolpeer_moved = false;
-booldlv_moved  = false;
-uint64_tdisp   = action->args.delivery.disposition;
-boolsettled= action->args.delivery.settled;
-qdr_error_t*error  = action->args.delivery.error;
-bool error_unassigned  = true;
+if (discard)
+return;
+
+qdr_delivery_t *dlv  = action->args.delivery.delivery;
+qdr_delivery_t *peer = qdr_delivery_first_peer_CT(dlv);
+uint64_tnew_disp = action->args.delivery.disposition;
+boolsettled  = action->args.delivery.settled;
+qdr_error_t*error= action->args.delivery.error;
+bool free_error  = true;
+
+if (dlv->multicast) {
+//
+// remote state change for *inbound* multicast delivery,
+// update downstream *outbound* peers
+//
+qdr_delivery_mcast_update_CT(core, dlv, new_disp, settled);
 
 Review comment:
   qdr_delivery_mcast_inbound_update_CT


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-26 Thread GitBox
kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix 
unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#discussion_r317628990
 
 

 ##
 File path: src/router_core/delivery.c
 ##
 @@ -558,81 +572,386 @@ void qdr_delivery_decref_CT(qdr_core_t *core, 
qdr_delivery_t *dlv, const char *l
 }
 
 
+// the remote endpoint has change the state (disposition) or settlement for the
+// delivery.  Update the local state/settlement accordingly.
+//
 static void qdr_update_delivery_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-qdr_delivery_t *dlv= action->args.delivery.delivery;
-qdr_delivery_t *peer   = qdr_delivery_first_peer_CT(dlv);
-boolpush   = false;
-boolpeer_moved = false;
-booldlv_moved  = false;
-uint64_tdisp   = action->args.delivery.disposition;
-boolsettled= action->args.delivery.settled;
-qdr_error_t*error  = action->args.delivery.error;
-bool error_unassigned  = true;
+if (discard)
+return;
+
+qdr_delivery_t *dlv  = action->args.delivery.delivery;
+qdr_delivery_t *peer = qdr_delivery_first_peer_CT(dlv);
+uint64_tnew_disp = action->args.delivery.disposition;
+boolsettled  = action->args.delivery.settled;
+qdr_error_t*error= action->args.delivery.error;
+bool free_error  = true;
+
+if (dlv->multicast) {
+//
+// remote state change for *inbound* multicast delivery,
+// update downstream *outbound* peers
+//
+qdr_delivery_mcast_update_CT(core, dlv, new_disp, settled);
 
-qdr_link_t *dlv_link  = qdr_delivery_link(dlv);
-qdr_link_t *peer_link = qdr_delivery_link(peer);
+} else if (peer && peer->multicast) {
+//
+// remote state change for an *outbound* delivery to a multicast 
address,
+// propagate upstream to *inbound* delivery (peer)
+//
+// coverity[swapped_arguments]
+qdr_delivery_mcast_peer_update_CT(core, peer, dlv, new_disp, settled);
+
+} else {
+//
+// Unicast forwarding
+//
+free_error = !qdr_delivery_ucast_update_CT(core, dlv, peer, new_disp, 
settled, error);
 
 Review comment:
   ucast-->anycast


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-26 Thread GitBox
kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix 
unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#discussion_r317628702
 
 

 ##
 File path: src/router_core/delivery.c
 ##
 @@ -558,81 +572,386 @@ void qdr_delivery_decref_CT(qdr_core_t *core, 
qdr_delivery_t *dlv, const char *l
 }
 
 
+// the remote endpoint has change the state (disposition) or settlement for the
+// delivery.  Update the local state/settlement accordingly.
+//
 static void qdr_update_delivery_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-qdr_delivery_t *dlv= action->args.delivery.delivery;
-qdr_delivery_t *peer   = qdr_delivery_first_peer_CT(dlv);
-boolpush   = false;
-boolpeer_moved = false;
-booldlv_moved  = false;
-uint64_tdisp   = action->args.delivery.disposition;
-boolsettled= action->args.delivery.settled;
-qdr_error_t*error  = action->args.delivery.error;
-bool error_unassigned  = true;
+if (discard)
+return;
+
+qdr_delivery_t *dlv  = action->args.delivery.delivery;
+qdr_delivery_t *peer = qdr_delivery_first_peer_CT(dlv);
+uint64_tnew_disp = action->args.delivery.disposition;
+boolsettled  = action->args.delivery.settled;
+qdr_error_t*error= action->args.delivery.error;
+bool free_error  = true;
+
+if (dlv->multicast) {
+//
+// remote state change for *inbound* multicast delivery,
+// update downstream *outbound* peers
+//
+qdr_delivery_mcast_update_CT(core, dlv, new_disp, settled);
 
-qdr_link_t *dlv_link  = qdr_delivery_link(dlv);
-qdr_link_t *peer_link = qdr_delivery_link(peer);
+} else if (peer && peer->multicast) {
+//
+// remote state change for an *outbound* delivery to a multicast 
address,
+// propagate upstream to *inbound* delivery (peer)
+//
+// coverity[swapped_arguments]
+qdr_delivery_mcast_peer_update_CT(core, peer, dlv, new_disp, settled);
 
 Review comment:
   qdr_delivery_mcast_outbound_update_CT


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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



[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-26 Thread GitBox
kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix 
unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#discussion_r317630103
 
 

 ##
 File path: src/router_core/delivery.c
 ##
 @@ -558,81 +572,386 @@ void qdr_delivery_decref_CT(qdr_core_t *core, 
qdr_delivery_t *dlv, const char *l
 }
 
 
+// the remote endpoint has change the state (disposition) or settlement for the
+// delivery.  Update the local state/settlement accordingly.
+//
 static void qdr_update_delivery_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-qdr_delivery_t *dlv= action->args.delivery.delivery;
-qdr_delivery_t *peer   = qdr_delivery_first_peer_CT(dlv);
-boolpush   = false;
-boolpeer_moved = false;
-booldlv_moved  = false;
-uint64_tdisp   = action->args.delivery.disposition;
-boolsettled= action->args.delivery.settled;
-qdr_error_t*error  = action->args.delivery.error;
-bool error_unassigned  = true;
+if (discard)
+return;
+
+qdr_delivery_t *dlv  = action->args.delivery.delivery;
+qdr_delivery_t *peer = qdr_delivery_first_peer_CT(dlv);
+uint64_tnew_disp = action->args.delivery.disposition;
+boolsettled  = action->args.delivery.settled;
+qdr_error_t*error= action->args.delivery.error;
+bool free_error  = true;
+
+if (dlv->multicast) {
+//
+// remote state change for *inbound* multicast delivery,
+// update downstream *outbound* peers
+//
+qdr_delivery_mcast_update_CT(core, dlv, new_disp, settled);
 
-qdr_link_t *dlv_link  = qdr_delivery_link(dlv);
-qdr_link_t *peer_link = qdr_delivery_link(peer);
+} else if (peer && peer->multicast) {
+//
+// remote state change for an *outbound* delivery to a multicast 
address,
+// propagate upstream to *inbound* delivery (peer)
+//
+// coverity[swapped_arguments]
+qdr_delivery_mcast_peer_update_CT(core, peer, dlv, new_disp, settled);
+
+} else {
+//
+// Unicast forwarding
+//
+free_error = !qdr_delivery_ucast_update_CT(core, dlv, peer, new_disp, 
settled, error);
+}
 
 //
-// Logic:
+// Release the action reference, possibly freeing the delivery
 //
-// If disposition has changed and there is a peer link, set the 
disposition of the peer
-// If settled, the delivery must be unlinked and freed.
-// If settled and there is a peer, the peer shall be settled and unlinked. 
 It shall not
-//   be freed until the connection-side thread settles the PN delivery.
+qdr_delivery_decref_CT(core, dlv, "qdr_update_delivery_CT - remove from 
action");
+
+if (free_error)
+qdr_error_free(error);
+}
+
+
+// The remote delivery state (disposition) and/or remote settlement for an
+// unicast delivery has changed.  Propagate the changes to its peer delivery.
+//
+// returns true if ownership of error parameter is taken (do not free it)
+//
+static bool qdr_delivery_ucast_update_CT(qdr_core_t *core, qdr_delivery_t *dlv,
+ qdr_delivery_t *peer, uint64_t 
new_disp, bool settled,
+ qdr_error_t *error)
+{
+bool push   = false;
+bool peer_moved = false;
+bool dlv_moved  = false;
+bool error_assigned = false;
+qdr_link_t *dlink   = qdr_delivery_link(dlv);
+
+assert(!dlv->multicast);
+assert(!peer || !peer->multicast);
+
+if (peer)
+qdr_delivery_incref(peer, "qdr_delivery_ucast_update_CT - prevent peer 
from being freed");
+
+//
+// Non-multicast Logic:
+//
+// If disposition has changed and there is a peer link, set the disposition
+// of the peer
+// If remote settled, the delivery must be unlinked and freed.
+// If remote settled and there is a peer, the peer shall be settled and
+// unlinked.  It shall not be freed until the connection-side thread
+// settles the PN delivery.
 //
-if (disp != dlv->disposition) {
+if (new_disp != dlv->remote_disposition) {
 //
-// Disposition has changed, propagate the change to the peer delivery.
+// Remote disposition has changed, propagate the change to the peer
+// delivery local disposition.
 //
-dlv->disposition = disp;
+dlv->remote_disposition = new_disp;
 if (peer) {
-peer->disposition = disp;
+peer->disposition = new_disp;
 peer->error   = error;
 push = true;
-error_unassigned = false;
+error_assigned = true;
 qdr_delivery_copy_extension_state(dlv, peer, false);
 }
 }
 
 if (settled) {
 if (peer) {
 peer->settled = true;
-if (peer_li

[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-26 Thread GitBox
kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix 
unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#discussion_r317630736
 
 

 ##
 File path: src/router_core/delivery.c
 ##
 @@ -558,81 +572,386 @@ void qdr_delivery_decref_CT(qdr_core_t *core, 
qdr_delivery_t *dlv, const char *l
 }
 
 
+// the remote endpoint has change the state (disposition) or settlement for the
+// delivery.  Update the local state/settlement accordingly.
+//
 static void qdr_update_delivery_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-qdr_delivery_t *dlv= action->args.delivery.delivery;
-qdr_delivery_t *peer   = qdr_delivery_first_peer_CT(dlv);
-boolpush   = false;
-boolpeer_moved = false;
-booldlv_moved  = false;
-uint64_tdisp   = action->args.delivery.disposition;
-boolsettled= action->args.delivery.settled;
-qdr_error_t*error  = action->args.delivery.error;
-bool error_unassigned  = true;
+if (discard)
+return;
+
+qdr_delivery_t *dlv  = action->args.delivery.delivery;
+qdr_delivery_t *peer = qdr_delivery_first_peer_CT(dlv);
+uint64_tnew_disp = action->args.delivery.disposition;
+boolsettled  = action->args.delivery.settled;
+qdr_error_t*error= action->args.delivery.error;
+bool free_error  = true;
+
+if (dlv->multicast) {
+//
+// remote state change for *inbound* multicast delivery,
+// update downstream *outbound* peers
+//
+qdr_delivery_mcast_update_CT(core, dlv, new_disp, settled);
 
-qdr_link_t *dlv_link  = qdr_delivery_link(dlv);
-qdr_link_t *peer_link = qdr_delivery_link(peer);
+} else if (peer && peer->multicast) {
+//
+// remote state change for an *outbound* delivery to a multicast 
address,
+// propagate upstream to *inbound* delivery (peer)
+//
+// coverity[swapped_arguments]
+qdr_delivery_mcast_peer_update_CT(core, peer, dlv, new_disp, settled);
+
+} else {
+//
+// Unicast forwarding
+//
+free_error = !qdr_delivery_ucast_update_CT(core, dlv, peer, new_disp, 
settled, error);
+}
 
 //
-// Logic:
+// Release the action reference, possibly freeing the delivery
 //
-// If disposition has changed and there is a peer link, set the 
disposition of the peer
-// If settled, the delivery must be unlinked and freed.
-// If settled and there is a peer, the peer shall be settled and unlinked. 
 It shall not
-//   be freed until the connection-side thread settles the PN delivery.
+qdr_delivery_decref_CT(core, dlv, "qdr_update_delivery_CT - remove from 
action");
+
+if (free_error)
+qdr_error_free(error);
+}
+
+
+// The remote delivery state (disposition) and/or remote settlement for an
+// unicast delivery has changed.  Propagate the changes to its peer delivery.
+//
+// returns true if ownership of error parameter is taken (do not free it)
+//
+static bool qdr_delivery_ucast_update_CT(qdr_core_t *core, qdr_delivery_t *dlv,
+ qdr_delivery_t *peer, uint64_t 
new_disp, bool settled,
+ qdr_error_t *error)
+{
+bool push   = false;
+bool peer_moved = false;
+bool dlv_moved  = false;
+bool error_assigned = false;
+qdr_link_t *dlink   = qdr_delivery_link(dlv);
+
+assert(!dlv->multicast);
+assert(!peer || !peer->multicast);
+
+if (peer)
+qdr_delivery_incref(peer, "qdr_delivery_ucast_update_CT - prevent peer 
from being freed");
+
+//
+// Non-multicast Logic:
+//
+// If disposition has changed and there is a peer link, set the disposition
+// of the peer
+// If remote settled, the delivery must be unlinked and freed.
+// If remote settled and there is a peer, the peer shall be settled and
+// unlinked.  It shall not be freed until the connection-side thread
+// settles the PN delivery.
 //
-if (disp != dlv->disposition) {
+if (new_disp != dlv->remote_disposition) {
 //
-// Disposition has changed, propagate the change to the peer delivery.
+// Remote disposition has changed, propagate the change to the peer
+// delivery local disposition.
 //
-dlv->disposition = disp;
+dlv->remote_disposition = new_disp;
 if (peer) {
-peer->disposition = disp;
+peer->disposition = new_disp;
 peer->error   = error;
 push = true;
-error_unassigned = false;
+error_assigned = true;
 qdr_delivery_copy_extension_state(dlv, peer, false);
 }
 }
 
 if (settled) {
 if (peer) {
 peer->settled = true;
-if (peer_li

[GitHub] [qpid-dispatch] kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix unsettled multicast forwarding

2019-08-26 Thread GitBox
kgiusti commented on a change in pull request #554: DISPATCH-1266: Fix 
unsettled multicast forwarding
URL: https://github.com/apache/qpid-dispatch/pull/554#discussion_r317631718
 
 

 ##
 File path: src/router_core/delivery.c
 ##
 @@ -558,81 +572,386 @@ void qdr_delivery_decref_CT(qdr_core_t *core, 
qdr_delivery_t *dlv, const char *l
 }
 
 
+// the remote endpoint has change the state (disposition) or settlement for the
+// delivery.  Update the local state/settlement accordingly.
+//
 static void qdr_update_delivery_CT(qdr_core_t *core, qdr_action_t *action, 
bool discard)
 {
-qdr_delivery_t *dlv= action->args.delivery.delivery;
-qdr_delivery_t *peer   = qdr_delivery_first_peer_CT(dlv);
-boolpush   = false;
-boolpeer_moved = false;
-booldlv_moved  = false;
-uint64_tdisp   = action->args.delivery.disposition;
-boolsettled= action->args.delivery.settled;
-qdr_error_t*error  = action->args.delivery.error;
-bool error_unassigned  = true;
+if (discard)
+return;
+
+qdr_delivery_t *dlv  = action->args.delivery.delivery;
+qdr_delivery_t *peer = qdr_delivery_first_peer_CT(dlv);
+uint64_tnew_disp = action->args.delivery.disposition;
+boolsettled  = action->args.delivery.settled;
+qdr_error_t*error= action->args.delivery.error;
+bool free_error  = true;
+
+if (dlv->multicast) {
+//
+// remote state change for *inbound* multicast delivery,
+// update downstream *outbound* peers
+//
+qdr_delivery_mcast_update_CT(core, dlv, new_disp, settled);
 
-qdr_link_t *dlv_link  = qdr_delivery_link(dlv);
-qdr_link_t *peer_link = qdr_delivery_link(peer);
+} else if (peer && peer->multicast) {
+//
+// remote state change for an *outbound* delivery to a multicast 
address,
+// propagate upstream to *inbound* delivery (peer)
+//
+// coverity[swapped_arguments]
+qdr_delivery_mcast_peer_update_CT(core, peer, dlv, new_disp, settled);
+
+} else {
+//
+// Unicast forwarding
+//
+free_error = !qdr_delivery_ucast_update_CT(core, dlv, peer, new_disp, 
settled, error);
+}
 
 //
-// Logic:
+// Release the action reference, possibly freeing the delivery
 //
-// If disposition has changed and there is a peer link, set the 
disposition of the peer
-// If settled, the delivery must be unlinked and freed.
-// If settled and there is a peer, the peer shall be settled and unlinked. 
 It shall not
-//   be freed until the connection-side thread settles the PN delivery.
+qdr_delivery_decref_CT(core, dlv, "qdr_update_delivery_CT - remove from 
action");
+
+if (free_error)
+qdr_error_free(error);
+}
+
+
+// The remote delivery state (disposition) and/or remote settlement for an
+// unicast delivery has changed.  Propagate the changes to its peer delivery.
+//
+// returns true if ownership of error parameter is taken (do not free it)
+//
+static bool qdr_delivery_ucast_update_CT(qdr_core_t *core, qdr_delivery_t *dlv,
+ qdr_delivery_t *peer, uint64_t 
new_disp, bool settled,
+ qdr_error_t *error)
+{
+bool push   = false;
+bool peer_moved = false;
+bool dlv_moved  = false;
+bool error_assigned = false;
+qdr_link_t *dlink   = qdr_delivery_link(dlv);
+
+assert(!dlv->multicast);
+assert(!peer || !peer->multicast);
+
+if (peer)
+qdr_delivery_incref(peer, "qdr_delivery_ucast_update_CT - prevent peer 
from being freed");
+
+//
+// Non-multicast Logic:
+//
+// If disposition has changed and there is a peer link, set the disposition
+// of the peer
+// If remote settled, the delivery must be unlinked and freed.
+// If remote settled and there is a peer, the peer shall be settled and
+// unlinked.  It shall not be freed until the connection-side thread
+// settles the PN delivery.
 //
-if (disp != dlv->disposition) {
+if (new_disp != dlv->remote_disposition) {
 //
-// Disposition has changed, propagate the change to the peer delivery.
+// Remote disposition has changed, propagate the change to the peer
+// delivery local disposition.
 //
-dlv->disposition = disp;
+dlv->remote_disposition = new_disp;
 if (peer) {
-peer->disposition = disp;
+peer->disposition = new_disp;
 peer->error   = error;
 push = true;
-error_unassigned = false;
+error_assigned = true;
 qdr_delivery_copy_extension_state(dlv, peer, false);
 }
 }
 
 if (settled) {
 if (peer) {
 peer->settled = true;
-if (peer_li

  1   2   3   4   5   6   7   8   9   10   >