<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/py-amqp.git, branch v2.6</title>
<subtitle>github.com: celery/py-amqp.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/'/>
<entry>
<title>Backport basic publish confirm fix to 2.6 (#360)</title>
<updated>2021-12-22T04:50:42+00:00</updated>
<author>
<name>Carlos Corbacho</name>
<email>carlos@strangeworlds.co.uk</email>
</author>
<published>2021-12-22T04:50:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=f54e47d2ea8fe1546fcb058b9efd78c6f1a8ca74'/>
<id>f54e47d2ea8fe1546fcb058b9efd78c6f1a8ca74</id>
<content type='text'>
* Reuse the timeout for publishing to wait for a response.

* Added the confirm_timeout keyword argument.

If a timeout was specified and confirm_timeout was not use the timeout.
Otherwise, use the confirm_timeout.

* Fix unit test.

* Basic publish confirm timeout fix (#343)

* Reuse the timeout for publishing to wait for a response.

* Added the confirm_timeout keyword argument.

If a timeout was specified and confirm_timeout was not use the timeout.
Otherwise, use the confirm_timeout.

* Fix unit test.

* Add document for timeout and confirm_timeout in _basic_publish

Co-authored-by: Omer Katz &lt;omer.drow@gmail.com&gt;
Co-authored-by: Reza Shiri &lt;rezashiri@cafebazaar.ir&gt;

* Bump version to 2.6.2 for new release

Co-authored-by: Omer Katz &lt;omer.drow@gmail.com&gt;
Co-authored-by: RezaSi &lt;rezashiri88@gmail.com&gt;
Co-authored-by: Reza Shiri &lt;rezashiri@cafebazaar.ir&gt;
Co-authored-by: Carlos Corbacho &lt;carlos.corbacho@complyadvantage.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Reuse the timeout for publishing to wait for a response.

* Added the confirm_timeout keyword argument.

If a timeout was specified and confirm_timeout was not use the timeout.
Otherwise, use the confirm_timeout.

* Fix unit test.

* Basic publish confirm timeout fix (#343)

* Reuse the timeout for publishing to wait for a response.

* Added the confirm_timeout keyword argument.

If a timeout was specified and confirm_timeout was not use the timeout.
Otherwise, use the confirm_timeout.

* Fix unit test.

* Add document for timeout and confirm_timeout in _basic_publish

Co-authored-by: Omer Katz &lt;omer.drow@gmail.com&gt;
Co-authored-by: Reza Shiri &lt;rezashiri@cafebazaar.ir&gt;

* Bump version to 2.6.2 for new release

Co-authored-by: Omer Katz &lt;omer.drow@gmail.com&gt;
Co-authored-by: RezaSi &lt;rezashiri88@gmail.com&gt;
Co-authored-by: Reza Shiri &lt;rezashiri@cafebazaar.ir&gt;
Co-authored-by: Carlos Corbacho &lt;carlos.corbacho@complyadvantage.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'master' of https://github.com/celery/py-amqp</title>
<updated>2020-07-31T16:31:21+00:00</updated>
<author>
<name>Asif Saif Uddin (Auvi)</name>
<email>auvipy@gmail.com</email>
</author>
<published>2020-07-31T16:31:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=1390bc0b6758a38b4a5329889db0785ea831309d'/>
<id>1390bc0b6758a38b4a5329889db0785ea831309d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>v2.6.1</title>
<updated>2020-07-31T16:29:45+00:00</updated>
<author>
<name>Asif Saif Uddin (Auvi)</name>
<email>auvipy@gmail.com</email>
</author>
<published>2020-07-31T16:29:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=9d5d333c13e9f2a00f3c3af74cad03780c70b052'/>
<id>9d5d333c13e9f2a00f3c3af74cad03780c70b052</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Vhangelog entry for v2.6.1</title>
<updated>2020-07-31T16:27:52+00:00</updated>
<author>
<name>Asif Saif Uddin (Auvi)</name>
<email>auvipy@gmail.com</email>
</author>
<published>2020-07-31T16:27:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=4cbb5c46fc461bbf516e346aaca2aadc015544f6'/>
<id>4cbb5c46fc461bbf516e346aaca2aadc015544f6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused comment (#329)</title>
<updated>2020-07-28T09:29:53+00:00</updated>
<author>
<name>Dan Fuller</name>
<email>dfuller@sentry.io</email>
</author>
<published>2020-07-28T09:29:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=33761bc1806374b1b762b235bfd186c5f995d525'/>
<id>33761bc1806374b1b762b235bfd186c5f995d525</id>
<content type='text'>
Follow-up to https://github.com/celery/py-amqp/pull/328/, this removes an out of date comment.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Follow-up to https://github.com/celery/py-amqp/pull/328/, this removes an out of date comment.</pre>
</div>
</content>
</entry>
<entry>
<title>Fix buffer overflow in frame_writer after frame_max is increased</title>
<updated>2020-07-25T05:41:59+00:00</updated>
<author>
<name>Dan Fuller</name>
<email>dfuller@sentry.io</email>
</author>
<published>2020-07-23T23:18:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=9e9f4c0b97ef6d4fbb3243f1511939d132810236'/>
<id>9e9f4c0b97ef6d4fbb3243f1511939d132810236</id>
<content type='text'>
`frame_writer` allocates a `bytearray` on intialization with a length based on the
`connection.frame_max` value. If `connection.frame_max` is changed to a larger value, this causes an
error like `pack_into requires a buffer of at least 408736 bytes`.

From what I can tell, `connection._on_tune` can arbitrarily change this value, although I'm not
totally sure in what cases it actually occurs.

For context, we're upgrading from Celery 3.1.25 -&gt; Celery 4.1, librabbitmq 1.6.1 -&gt; amqp 2.6.0,
kombo 3.0.37 -&gt; 4.2.2.post1. This has worked fine in a small production environment, but fails on
our main deployment. The main culprit we see are lots of errors with `pack_into requires a buffer
of at least &lt;x&gt; bytes`, where x is always larger than our default `frame_max` of 131072. Despite
this, `bigbody` is False, which ends up with us attempting to write a frame that is too large into
the existing buffer. The only way I can see this happening is if `frame_max` increases.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`frame_writer` allocates a `bytearray` on intialization with a length based on the
`connection.frame_max` value. If `connection.frame_max` is changed to a larger value, this causes an
error like `pack_into requires a buffer of at least 408736 bytes`.

From what I can tell, `connection._on_tune` can arbitrarily change this value, although I'm not
totally sure in what cases it actually occurs.

For context, we're upgrading from Celery 3.1.25 -&gt; Celery 4.1, librabbitmq 1.6.1 -&gt; amqp 2.6.0,
kombo 3.0.37 -&gt; 4.2.2.post1. This has worked fine in a small production environment, but fails on
our main deployment. The main culprit we see are lots of errors with `pack_into requires a buffer
of at least &lt;x&gt; bytes`, where x is always larger than our default `frame_max` of 131072. Despite
this, `bigbody` is False, which ends up with us attempting to write a frame that is too large into
the existing buffer. The only way I can see this happening is if `frame_max` increases.
</pre>
</div>
</content>
</entry>
<entry>
<title>python 3.8 to classifier</title>
<updated>2020-06-01T06:17:52+00:00</updated>
<author>
<name>Asif Saif Uddin (Auvi)</name>
<email>auvipy@gmail.com</email>
</author>
<published>2020-06-01T06:17:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=d431062c3848e5053b0d5f944af8a652beaa44a6'/>
<id>d431062c3848e5053b0d5f944af8a652beaa44a6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>version 2.6.0</title>
<updated>2020-06-01T05:50:16+00:00</updated>
<author>
<name>Asif Saif Uddin (Auvi)</name>
<email>auvipy@gmail.com</email>
</author>
<published>2020-06-01T05:50:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=c1c1aa05a03cad9780054ad8df6c1c5b8c589814'/>
<id>c1c1aa05a03cad9780054ad8df6c1c5b8c589814</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>update changelog for 2.6.0</title>
<updated>2020-06-01T05:45:48+00:00</updated>
<author>
<name>Asif Saif Uddin (Auvi)</name>
<email>auvipy@gmail.com</email>
</author>
<published>2020-06-01T05:45:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=1ade6382da253f3c4f71937595b90ff7eda8f77d'/>
<id>1ade6382da253f3c4f71937595b90ff7eda8f77d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix deserialization of long string field values that are not utf-8.</title>
<updated>2020-05-30T01:18:21+00:00</updated>
<author>
<name>Tim Burke</name>
<email>tim@archsys.io</email>
</author>
<published>2020-05-29T23:31:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/py-amqp.git/commit/?id=fca0a94e371cea40ea21869f60ca6b550a82a1f1'/>
<id>fca0a94e371cea40ea21869f60ca6b550a82a1f1</id>
<content type='text'>
AMQP 0.9.1 allows arbitrary data in long string fields.  However,
py-amqp assumed that the fields would always contain valid utf-8
data and would fail to deserialize messages with a property that
contained non-utf-8 data.

See #323
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
AMQP 0.9.1 allows arbitrary data in long string fields.  However,
py-amqp assumed that the fields would always contain valid utf-8
data and would fail to deserialize messages with a property that
contained non-utf-8 data.

See #323
</pre>
</div>
</content>
</entry>
</feed>
