profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/taverntesting/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

taverntesting/tavern 818

A command-line tool and Python library and Pytest plugin for automated testing of RESTful APIs, with a simple, concise and flexible YAML-based syntax

taverntesting/tavern-flask 4

WIP for a tavern flask plugin

taverntesting/taverntesting.github.io 1

The taverntesting.github.io webpage

taverntesting/tavern-curl 0

WIP tavern plugin to use Curl (for additional stats)

taverntesting/tavern-plugin-template 0

All the boilerplate for tavern plugins

issue openedtaverntesting/tavern

follow_redirects set to true is ignored if first redirect request ends with a too many redirects stack-trace.

To be more specific - if the test specifies max_retries with a delay_before or delay_after value then the following behaviour is observed:

INFO     tavern._plugins.rest.request:request.py:219 Overriding global follow_redirects setting of False with test-level specification of True
DEBUG    tavern._plugins.rest.request:request.py:223 Allow redirects in stage: True
DEBUG    tavern._plugins.rest.request:request.py:433 Request args: {'method': 'GET', 'url': '<REDACTED>', 'verify': True, 'stream': False, 'allow_redirects': True}
DEBUG    tavern.plugins:plugins.py:243 Getting expected response for requests
DEBUG    tavern.util.dict_util:dict_util.py:137 Not formatting something of type '<class 'int'>'
DEBUG    tavern.util.dict_util:dict_util.py:137 Not formatting something of type '<class 'float'>'
DEBUG    tavern.util.delay:delay.py:23 Delaying before request for 10.00 seconds
INFO     tavern.core:core.py:244 Running stage : serving an Admin Welcome login page
DEBUG    urllib3.connectionpool:connectionpool.py:943 Starting new HTTPS connection (1): <REDACTED>
DEBUG    urllib3.connectionpool:connectionpool.py:442 https://tt.anise.pzt.dev.perfsec.com:443 "GET <REDACTED> HTTP/1.1" 302 0
DEBUG    urllib3.connectionpool:connectionpool.py:442 https://tt.anise.pzt.dev.perfsec.com:443 "GET <REDACTED> HTTP/1.1" 302 0
DEBUG    urllib3.connectionpool:connectionpool.py:442 https://tt.anise.pzt.dev.perfsec.com:443 "GET <REDACTED> HTTP/1.1" 302 0
DEBUG    urllib3.connectionpool:connectionpool.py:442 https://tt.anise.pzt.dev.perfsec.com:443 "GET <REDACTED> HTTP/1.1" 302 0
DEBUG    urllib3.connectionpool:connectionpool.py:442 https://tt.anise.pzt.dev.perfsec.com:443 "GET <REDACTED> HTTP/1.1" 302 0
DEBUG    urllib3.connectionpool:connectionpool.py:442 https://tt.anise.pzt.dev.perfsec.com:443 "GET <REDACTED> HTTP/1.1" 302 0
...
ERROR    tavern._plugins.rest.request:request.py:472 Error running prepared request
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/tavern/_plugins/rest/request.py", line 470, in run
    return self._prepared()
  File "/usr/local/lib/python3.7/site-packages/tavern/_plugins/rest/request.py", line 455, in prepared_request
    return session.request(**self._request_args)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 530, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 665, in send
    history = [resp for resp in gen]
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 665, in <listcomp>
    history = [resp for resp in gen]
  File "/usr/local/lib/python3.7/site-packages/requests/sessions.py", line 166, in resolve_redirects
    raise TooManyRedirects('Exceeded {} redirects.'.format(self.max_redirects), response=resp)
requests.exceptions.TooManyRedirects: Exceeded 30 redirects.
INFO     tavern.util.retry:retry.py:55 Stage 'serving an Admin Welcome login page' failed for 1 time. Retrying.
DEBUG    tavern.plugins:plugins.py:210 Initialising request class for requests (<class 'tavern._plugins.rest.request.RestRequest'>)
DEBUG    tavern.util.dict_util:dict_util.py:137 Not formatting something of type '<class 'NoneType'>'
DEBUG    tavern._plugins.rest.request:request.py:248 No cookies specified in request, sending all
DEBUG    tavern._plugins.rest.request:request.py:223 Allow redirects in stage: False
DEBUG    tavern._plugins.rest.request:request.py:433 Request args: {'method': 'GET', 'url': '<REDACTED>', 'verify': True, 'stream': False, 'allow_redirects': False}
DEBUG    tavern.plugins:plugins.py:243 Getting expected response for requests
DEBUG    tavern.util.dict_util:dict_util.py:137 Not formatting something of type '<class 'int'>'
DEBUG    tavern.util.dict_util:dict_util.py:137 Not formatting something of type '<class 'float'>'
DEBUG    tavern.util.delay:delay.py:23 Delaying before request for 10.00 seconds
INFO     tavern.core:core.py:244 Running stage : serving an Admin Welcome login page
DEBUG    urllib3.connectionpool:connectionpool.py:442 <REDACTED> "GET <REDACTED> HTTP/1.1" 302 0
DEBUG    tavern.plugins:plugins.py:273 Initialising verifier for requests (<class 'tavern._plugins.rest.response.RestResponse'>)
INFO     tavern._plugins.rest.response:response.py:50 Response: '<Response [302]>'
DEBUG    tavern._plugins.rest.response:response.py:64 Headers:

It is understood that redirect loops are very bad but the test is expected to behave as directed and if it can't then it should just fail the test with the first redirect stack-trace instead of retrying with the default value of false for follow_redirects.

Observed on version 1.4.0 and 1.16.1

created time in 2 hours

startedtaverntesting/tavern

started time in 6 hours

delete branch taverntesting/taverntesting.github.io

delete branch : dependabot/bundler/nokogiri-1.11.5

delete time in 16 hours

PR closed taverntesting/taverntesting.github.io

Bump nokogiri from 1.8.1 to 1.11.5 dependencies

Bumps nokogiri from 1.8.1 to 1.11.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sparklemotion/nokogiri/releases">nokogiri's releases</a>.</em></p> <blockquote> <h2>1.11.5 / 2021-05-19</h2> <h3>Fixed</h3> <p>[Windows CRuby] Work around segfault at process exit on Windows when using libxml2 system DLLs.</p> <p>libxml 2.9.12 introduced new behavior to avoid memory leaks when unloading libxml2 shared libraries (see <a href="https://gitlab.gnome.org/GNOME/libxml2/-/merge_requests/66">libxml/!66</a>). Early testing caught this segfault on non-Windows platforms (see <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2059">#2059</a> and <a href="https://gitlab.gnome.org/GNOME/libxml2/-/commit/956534e02ef280795a187c16f6ac04e107f23c5d">libxml@956534e</a>) but it was incompletely fixed and is still an issue on Windows platforms that are using system DLLs.</p> <p>We work around this by configuring libxml2 in this situation to use its default memory management functions. Note that if Nokogiri is not on Windows, or is not using shared system libraries, it will will continue to configure libxml2 to use Ruby's memory management functions. <code>Nokogiri::VERSION_INFO["libxml"]["memory_management"]</code> will allow you to verify when the default memory management functions are being used. [<a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2241">#2241</a>]</p> <h3>Added</h3> <p><code>Nokogiri::VERSION_INFO["libxml"]</code> now contains the key <code>"memory_management"</code> to declare whether libxml2 is using its <code>default</code> memory management functions, or whether it uses the memory management functions from <code>ruby</code>. See above for more details.</p> <h2>1.11.4 / 2021-05-14</h2> <h3>Security</h3> <p>[CRuby] Vendored libxml2 upgraded to v2.9.12 which addresses:</p> <ul> <li><a href="https://security.archlinux.org/CVE-2019-20388">CVE-2019-20388</a></li> <li><a href="https://security.archlinux.org/CVE-2020-24977">CVE-2020-24977</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3517">CVE-2021-3517</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3518">CVE-2021-3518</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3537">CVE-2021-3537</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3541">CVE-2021-3541</a></li> </ul> <p>Note that two additional CVEs were addressed upstream but are not relevant to this release. <a href="https://security.archlinux.org/CVE-2021-3516">CVE-2021-3516</a> via <code>xmllint</code> is not present in Nokogiri, and <a href="https://security.archlinux.org/CVE-2020-7595">CVE-2020-7595</a> has been patched in Nokogiri since v1.10.8 (see <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/1992">#1992</a>).</p> <p>Please see <a href="https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-7rrm-v45f-jp64">nokogiri/GHSA-7rrm-v45f-jp64 </a> or <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2233">#2233</a> for a more complete analysis of these CVEs and patches.</p> <h3>Dependencies</h3> <ul> <li>[CRuby] vendored libxml2 is updated from 2.9.10 to 2.9.12. (Note that 2.9.11 was skipped because it was superseded by 2.9.12 a few hours after its release.)</li> </ul> <h2>1.11.3 / 2021-04-07</h2> <h3>Fixed</h3> <ul> <li>[CRuby] Passing non-<code>Node</code> objects to <code>Document#root=</code> now raises an <code>ArgumentError</code> exception. Previously this likely segfaulted. [<a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/1900">#1900</a>]</li> <li>[JRuby] Passing non-<code>Node</code> objects to <code>Document#root=</code> now raises an <code>ArgumentError</code> exception. Previously this raised a <code>TypeError</code> exception.</li> <li>[CRuby] arm64/aarch64 systems (like Apple's M1) can now compile libxml2 and libxslt from source (though we continue to strongly advise users to install the native gems for the best possible experience)</li> </ul> <h2>1.11.2 / 2021-03-11</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md">nokogiri's changelog</a>.</em></p> <blockquote> <h2>1.11.5 / 2021-05-19</h2> <h3>Fixed</h3> <p>[Windows CRuby] Work around segfault at process exit on Windows when using libxml2 system DLLs.</p> <p>libxml 2.9.12 introduced new behavior to avoid memory leaks when unloading libxml2 shared libraries (see <a href="https://gitlab.gnome.org/GNOME/libxml2/-/merge_requests/66">libxml/!66</a>). Early testing caught this segfault on non-Windows platforms (see <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2059">#2059</a> and <a href="https://gitlab.gnome.org/GNOME/libxml2/-/commit/956534e02ef280795a187c16f6ac04e107f23c5d">libxml@956534e</a>) but it was incompletely fixed and is still an issue on Windows platforms that are using system DLLs.</p> <p>We work around this by configuring libxml2 in this situation to use its default memory management functions. Note that if Nokogiri is not on Windows, or is not using shared system libraries, it will will continue to configure libxml2 to use Ruby's memory management functions. <code>Nokogiri::VERSION_INFO["libxml"]["memory_management"]</code> will allow you to verify when the default memory management functions are being used. [<a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2241">#2241</a>]</p> <h3>Added</h3> <p><code>Nokogiri::VERSION_INFO["libxml"]</code> now contains the key <code>"memory_management"</code> to declare whether libxml2 is using its <code>default</code> memory management functions, or whether it uses the memory management functions from <code>ruby</code>. See above for more details.</p> <h2>1.11.4 / 2021-05-14</h2> <h3>Security</h3> <p>[CRuby] Vendored libxml2 upgraded to v2.9.12 which addresses:</p> <ul> <li><a href="https://security.archlinux.org/CVE-2019-20388">CVE-2019-20388</a></li> <li><a href="https://security.archlinux.org/CVE-2020-24977">CVE-2020-24977</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3517">CVE-2021-3517</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3518">CVE-2021-3518</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3537">CVE-2021-3537</a></li> <li><a href="https://security.archlinux.org/CVE-2021-3541">CVE-2021-3541</a></li> </ul> <p>Note that two additional CVEs were addressed upstream but are not relevant to this release. <a href="https://security.archlinux.org/CVE-2021-3516">CVE-2021-3516</a> via <code>xmllint</code> is not present in Nokogiri, and <a href="https://security.archlinux.org/CVE-2020-7595">CVE-2020-7595</a> has been patched in Nokogiri since v1.10.8 (see <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/1992">#1992</a>).</p> <p>Please see <a href="https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-7rrm-v45f-jp64">nokogiri/GHSA-7rrm-v45f-jp64 </a> or <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2233">#2233</a> for a more complete analysis of these CVEs and patches.</p> <h3>Dependencies</h3> <ul> <li>[CRuby] vendored libxml2 is updated from 2.9.10 to 2.9.12. (Note that 2.9.11 was skipped because it was superseded by 2.9.12 a few hours after its release.)</li> </ul> <h2>1.11.3 / 2021-04-07</h2> <h3>Fixed</h3> <ul> <li>[CRuby] Passing non-<code>Node</code> objects to <code>Document#root=</code> now raises an <code>ArgumentError</code> exception. Previously this likely segfaulted. [<a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/1900">#1900</a>]</li> <li>[JRuby] Passing non-<code>Node</code> objects to <code>Document#root=</code> now raises an <code>ArgumentError</code> exception. Previously this raised a <code>TypeError</code> exception.</li> <li>[CRuby] arm64/aarch64 systems (like Apple's M1) can now compile libxml2 and libxslt from source (though we continue to strongly advise users to install the native gems for the best possible experience)</li> </ul> <h2>1.11.2 / 2021-03-11</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/sparklemotion/nokogiri/commit/e43f521caa4b29deba4089bd83ae2709c19c5942"><code>e43f521</code></a> version bump to v1.11.5</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/42354e479ae5702faa8aaa0e46a771f99fd676e6"><code>42354e4</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2243">#2243</a> from sparklemotion/flavorjones-v1_11_x-update-tests-...</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/05f30eb4693cbfc900faced0b0ea172a8fc13df7"><code>05f30eb</code></a> update CHANGELOG</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/e6709aaa14b8f8cd9e842bd07bb7f2edf94a4d7c"><code>e6709aa</code></a> windows: work around libxml2 xmlCleanupParser</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/8f54c0fc5a85e4d384f5dacefdfd5f595cf858a4"><code>8f54c0f</code></a> test: adjust tests to pass on system libxml2 >= 2.9.11</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/3d8a57075aebdc647728181f0fd279ed3d063857"><code>3d8a570</code></a> ci: windows config for github actions</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/4b9bfe3849f0c2ce1fb81d66249e738aa5a4f46b"><code>4b9bfe3</code></a> update CHANGELOG with the GHSA</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/9d69b44ed3357b8069856083d39ee418cd10109b"><code>9d69b44</code></a> version bump to v1.11.4</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/058e87fdfda2cc2f309df098d18fe8856e785fcc"><code>058e87f</code></a> update CHANGELOG with complete CVE information</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/92852514a0d4621961deb6ce249441ff5140358f"><code>9285251</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2234">#2234</a> from sparklemotion/2233-upgrade-to-libxml-2-9-12</li> <li>Additional commits viewable in <a href="https://github.com/sparklemotion/nokogiri/compare/v1.8.1...v1.11.5">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the Security Alerts page.

</details>

+5 -3

1 comment

1 changed file

dependabot[bot]

pr closed time in 16 hours

pull request commenttaverntesting/taverntesting.github.io

Bump nokogiri from 1.8.1 to 1.11.5

Superseded by #22.

dependabot[bot]

comment created time in 16 hours

PR opened taverntesting/taverntesting.github.io

Bump nokogiri from 1.8.1 to 1.12.5

Bumps nokogiri from 1.8.1 to 1.12.5. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/sparklemotion/nokogiri/releases">nokogiri's releases</a>.</em></p> <blockquote> <h2>1.12.5 / 2021-09-27</h2> <h3>Security</h3> <p>[JRuby] Address CVE-2021-41098 (<a href="https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-2rr5-8q37-2w7h">GHSA-2rr5-8q37-2w7h</a>).</p> <p>In Nokogiri v1.12.4 and earlier, on JRuby only, the SAX parsers resolve external entities (XXE) by default. This fix turns off entity-resolution-by-default in the JRuby SAX parsers to match the CRuby SAX parsers' behavior.</p> <p>CRuby users are not affected by this CVE.</p> <h3>Fixed</h3> <ul> <li>[CRuby] <code>Document#to_xhtml</code> properly serializes self-closing tags in libxml > 2.9.10. A behavior change introduced in libxml 2.9.11 resulted in emitting start and and tags (e.g., <code><br></br></code>) instead of a self-closing tag (e.g., <code><br/></code>) in previous Nokogiri versions. [<a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2324">#2324</a>]</li> </ul> <hr /> <p>SHA256 checksums:</p> <pre><code>36bfa3a07aced069b3f3c9b39d9fb62cb0728d284d02b079404cd55780beaeff nokogiri-1.12.5-arm64-darwin.gem 16b1a9ddbb70a9c998462912a5972097cbc79c3e01eb373906886ef8a469f589 nokogiri-1.12.5-java.gem 218dcc6edd1b49cc6244b5f88afb978739bb2f3f166c271557fe5f51e4bc713c nokogiri-1.12.5-x64-mingw32.gem e33bb919d64c16d931a5f26dc880969e587d225cfa97e6b56e790fb52179f527 nokogiri-1.12.5-x86-linux.gem e13c2ed011b8346fbd589e96fe3542d763158bc2c7ad0f4f55f6d801afd1d9ff nokogiri-1.12.5-x86-mingw32.gem 1ed64f7db7c1414b87fce28029f2a10128611d2037e0871ba298d00f9a00edd6 nokogiri-1.12.5-x86_64-darwin.gem 0868c8d0a147904d4dedaaa05af5f06656f2d3c67e4432601718559bf69d6cea nokogiri-1.12.5-x86_64-linux.gem 2b20905942acc580697c8c496d0d1672ab617facb9d30d156b3c7676e67902ec nokogiri-1.12.5.gem </code></pre> <h2>1.12.4 / 2021-08-29</h2> <h3>Notable fix: Namespace inheritance</h3> <p>Namespace behavior when reparenting nodes has historically been poorly specified and the behavior diverged between CRuby and JRuby. As a result, making this behavior consistent in v1.12.0 introduced a breaking change.</p> <p>This patch release reverts the Builder behavior present in v1.12.0..v1.12.3 but keeps the Document behavior. This release also introduces a Document attribute to allow affected users to easily change this behavior for their legacy code without invasive changes.</p> <h4>Compensating Feature in XML::Document</h4> <p>This release of Nokogiri introduces a new <code>Document</code> boolean attribute, <code>namespace_inheritance</code>, which controls whether children should inherit a namespace when they are reparented. <code>Nokogiri::XML:Document</code> defaults this attribute to <code>false</code> meaning "do not inherit," thereby making explicit the behavior change introduced in v1.12.0.</p> <p>CRuby users who desire the pre-v1.12.0 behavior may set <code>document.namespace_inheritance = true</code> before reparenting nodes.</p> <p>See <a href="https://nokogiri.org/rdoc/Nokogiri/XML/Document.html#namespace_inheritance-instance_method">https://nokogiri.org/rdoc/Nokogiri/XML/Document.html#namespace_inheritance-instance_method</a> for example usage.</p> <h4>Fix for XML::Builder</h4> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md">nokogiri's changelog</a>.</em></p> <blockquote> <h2>1.12.5 / 2021-09-27</h2> <h3>Security</h3> <p>[JRuby] Address CVE-2021-41098 (<a href="https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-2rr5-8q37-2w7h">GHSA-2rr5-8q37-2w7h</a>).</p> <p>In Nokogiri v1.12.4 and earlier, on JRuby only, the SAX parsers resolve external entities (XXE) by default. This fix turns off entity-resolution-by-default in the JRuby SAX parsers to match the CRuby SAX parsers' behavior.</p> <p>CRuby users are not affected by this CVE.</p> <h3>Fixed</h3> <ul> <li>[CRuby] <code>Document#to_xhtml</code> properly serializes self-closing tags in libxml > 2.9.10. A behavior change introduced in libxml 2.9.11 resulted in emitting start and and tags (e.g., <code><br></br></code>) instead of a self-closing tag (e.g., <code><br/></code>) in previous Nokogiri versions. [<a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2324">#2324</a>]</li> </ul> <h2>1.12.4 / 2021-08-29</h2> <h3>Notable fix: Namespace inheritance</h3> <p>Namespace behavior when reparenting nodes has historically been poorly specified and the behavior diverged between CRuby and JRuby. As a result, making this behavior consistent in v1.12.0 introduced a breaking change.</p> <p>This patch release reverts the Builder behavior present in v1.12.0..v1.12.3 but keeps the Document behavior. This release also introduces a Document attribute to allow affected users to easily change this behavior for their legacy code without invasive changes.</p> <h4>Compensating Feature in XML::Document</h4> <p>This release of Nokogiri introduces a new <code>Document</code> boolean attribute, <code>namespace_inheritance</code>, which controls whether children should inherit a namespace when they are reparented. <code>Nokogiri::XML:Document</code> defaults this attribute to <code>false</code> meaning "do not inherit," thereby making explicit the behavior change introduced in v1.12.0.</p> <p>CRuby users who desire the pre-v1.12.0 behavior may set <code>document.namespace_inheritance = true</code> before reparenting nodes.</p> <p>See <a href="https://nokogiri.org/rdoc/Nokogiri/XML/Document.html#namespace_inheritance-instance_method">https://nokogiri.org/rdoc/Nokogiri/XML/Document.html#namespace_inheritance-instance_method</a> for example usage.</p> <h4>Fix for XML::Builder</h4> <p>However, recognizing that we want <code>Builder</code>-created children to inherit namespaces, Builder now will set <code>namespace_inheritance=true</code> on the underlying document for both JRuby and CRuby. This means that, on CRuby, the pre-v1.12.0 behavior is restored.</p> <p>Users who want to turn this behavior off may pass a keyword argument to the Builder constructor like so:</p> <pre lang="ruby"><code>Nokogiri::XML::Builder.new(namespace_inheritance: false) </code></pre> <p>See <a href="https://nokogiri.org/rdoc/Nokogiri/XML/Builder.html#label-Namespace+inheritance">https://nokogiri.org/rdoc/Nokogiri/XML/Builder.html#label-Namespace+inheritance</a> for example usage.</p> <h4>Downstream gem maintainers</h4> <p>Note that any downstream gems may want to specifically omit Nokogiri v1.12.0--v1.12.3 from their dependency specification if they rely on child namespace inheritance:</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/sparklemotion/nokogiri/commit/47f6a461fdc3e375b30522259e48569fb578dece"><code>47f6a46</code></a> version bump to v1.12.5</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/2a0ac88518fdd1509d14c4cbdb9784c73dd8a839"><code>2a0ac88</code></a> update CHANGELOG</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/6b6063782cefc42e527dc967c6119125cae0042d"><code>6b60637</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2329">#2329</a> from sparklemotion/flavorjones-GHSA-2rr5-8q37-2w7h_1...</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/4bd943cae3039c51c3f54de9cd76abbfb647666b"><code>4bd943c</code></a> fix(jruby): SAX parser uses an entity resolver</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/f943ee4108b007d225e00c3ac7da00df17b81b1a"><code>f943ee4</code></a> refactor(jruby): handle errors more consistently</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/27901227488ea7e439777cfc907e52c68622e6a3"><code>2790122</code></a> format: test files</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/01e1618f7551ae3c32c1a5790c1004c18a46b316"><code>01e1618</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2327">#2327</a> from sparklemotion/2324-xhtml-self-closing-tags_v1.12.x</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/a0180c72c55c44b8e0db3a98040bd5f115742817"><code>a0180c7</code></a> fix: HTML4::Document.to_xhtml self-closing tags</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/564ac1787303332e0b2b92311ff6f1b30a893eae"><code>564ac17</code></a> release v1.12.4</li> <li><a href="https://github.com/sparklemotion/nokogiri/commit/4d5754baede4fc98cd4f12754f479bd228b6b55b"><code>4d5754b</code></a> backport <a href="https://github-redirect.dependabot.com/sparklemotion/nokogiri/issues/2320">#2320</a></li> <li>Additional commits viewable in <a href="https://github.com/sparklemotion/nokogiri/compare/v1.8.1...v1.12.5">compare view</a></li> </ul> </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the Security Alerts page.

</details>

+5 -3

0 comment

1 changed file

pr created time in 16 hours

startedtaverntesting/tavern

started time in 2 days

startedtaverntesting/tavern

started time in 3 days

push eventtaverntesting/tavern

Michael Boulton

commit sha 3498ea73dca493a3415836643d7c3ac1ef3f458e

fix imports

view details

push time in 3 days

push eventtaverntesting/tavern

Michael Boulton

commit sha 59b444c0a746de886a7ae62f6df605f58fd54e87

Add various things to gitingore

view details

michaelboulton

commit sha db8d456385013a4081b2ce053849c8498cf363cc

Add warning for pyjwt API change (#705)

view details

michaelboulton

commit sha 6737b4b9a424f273ed200b9810ec634c2f09ebc9

707 Fix nested strict match (#710)

view details

Michael Boulton

commit sha 70990b2ac7f19eddaabc5ee876d7a981f38e46d5

Bump version: 1.16.0 → 1.16.1

view details

yu

commit sha c5a4c505797ccec3cdee53f8cc05d3e2c7077b0c

fix readme.rst uses markdown (#714)

view details

Michael Boulton

commit sha 8a6cb9787ac8e110bc3dd7728f25ff4c50794ec3

Update version

view details

Michael Boulton

commit sha 5e5dc9e8d4b82fea03069fe83fa313fb621b3002

Update workflows disable build on push to 2.0 Fix hash Update py version Fix position of schema key remove bad depenencies Clear tox cache Lock black version Stop clearing cache2

view details

michaelboulton

commit sha 42707265d2041bee59adc833ba401660d4d76ab9

Change force_format_include tag name (#660)

view details

michaelboulton

commit sha d4e31eace06035b167c7056fac81f9830d286073

Make merge ext options default and unchangeable (#666)

view details

michaelboulton

commit sha 358da8449852556167df3b3940675f658072734a

Move 'clear cookies' key out of 'meta' block (#662)

view details

michaelboulton

commit sha f51e9de133a643cbb1fee83d5b525dd56cd42a2c

Require pyjwt>2 (#661)

view details

michaelboulton

commit sha ebce4db0aa2b033ace0f8e4329b61f82d74008b2

Use jsonschema instead of pykwalify (#679)

view details

michaelboulton

commit sha 0ae3e8c3b619db7734f631f2bb00094f74afe547

Convert test block config into a class (#665)

view details

Michael Boulton

commit sha a3a4ddf7e48e55c8bcd5d8e87908b172c0d37667

Bump

view details

Michael Boulton

commit sha e37183632c6b3f27ce8c00ef61294547d124d7a3

Fix import

view details

michaelboulton

commit sha b5a5159193b1b8a8859e21d4d0b28d838d3a2168

Move 'clear cookies' key out of 'meta' block (#662)

view details

Michael Boulton

commit sha 6bd10e445cbb69c984f463b9797fdc0a43e386e9

first reshuffle of functions

view details

Michael Boulton

commit sha 18b1e67397c9a613f912044b5062ef0126d82bf0

Fix some mocks

view details

Michael Boulton

commit sha 05202c86dab9725fda9f2c3c3bf992c282552f05

Fix some imports

view details

Michael Boulton

commit sha df62bb9351c16ea3f8e53c4af512e149dc23ae16

Move helpers

view details

push time in 3 days

push eventtaverntesting/tavern

Michael Boulton

commit sha 59b444c0a746de886a7ae62f6df605f58fd54e87

Add various things to gitingore

view details

michaelboulton

commit sha db8d456385013a4081b2ce053849c8498cf363cc

Add warning for pyjwt API change (#705)

view details

michaelboulton

commit sha 6737b4b9a424f273ed200b9810ec634c2f09ebc9

707 Fix nested strict match (#710)

view details

Michael Boulton

commit sha 70990b2ac7f19eddaabc5ee876d7a981f38e46d5

Bump version: 1.16.0 → 1.16.1

view details

yu

commit sha c5a4c505797ccec3cdee53f8cc05d3e2c7077b0c

fix readme.rst uses markdown (#714)

view details

Michael Boulton

commit sha 8a6cb9787ac8e110bc3dd7728f25ff4c50794ec3

Update version

view details

Michael Boulton

commit sha 5e5dc9e8d4b82fea03069fe83fa313fb621b3002

Update workflows disable build on push to 2.0 Fix hash Update py version Fix position of schema key remove bad depenencies Clear tox cache Lock black version Stop clearing cache2

view details

michaelboulton

commit sha 42707265d2041bee59adc833ba401660d4d76ab9

Change force_format_include tag name (#660)

view details

michaelboulton

commit sha d4e31eace06035b167c7056fac81f9830d286073

Make merge ext options default and unchangeable (#666)

view details

michaelboulton

commit sha 358da8449852556167df3b3940675f658072734a

Move 'clear cookies' key out of 'meta' block (#662)

view details

michaelboulton

commit sha f51e9de133a643cbb1fee83d5b525dd56cd42a2c

Require pyjwt>2 (#661)

view details

michaelboulton

commit sha ebce4db0aa2b033ace0f8e4329b61f82d74008b2

Use jsonschema instead of pykwalify (#679)

view details

michaelboulton

commit sha 0ae3e8c3b619db7734f631f2bb00094f74afe547

Convert test block config into a class (#665)

view details

Michael Boulton

commit sha a3a4ddf7e48e55c8bcd5d8e87908b172c0d37667

Bump

view details

Michael Boulton

commit sha e37183632c6b3f27ce8c00ef61294547d124d7a3

Fix import

view details

push time in 3 days

issue commenttaverntesting/tavern

Continue execution after failed stage

I don't think there's any particular reason why there couldn't be something like

setup:
	- name: ...

stages:
	- name: step 1
	- name: step 2

teardown:
	- name: ...

Where the teardown would act like a 'finally' block in Python and would always run as long as the setup stages all finished

KenStorey

comment created time in 3 days

issue commenttaverntesting/tavern

special json data INTERNALERROR

I think this is because you are including curly braces in the string, which tavern then tries to format (and fails). I don't think there is an easy way to fix this because although there is the !raw tag which turns off formatting, there can only be one yaml tag per line so you can't do !raw !include create_order_data.json.

You can change the content of the file to

{
    "box_list": !raw "[{\"length\":\"100\",\"width\":\"100\",\"height\":\"100\",\"weight\":\"10\",\"goods_sku_num\":\"\",\"goods_num_total\":\"\",\"isDisabled\":false,\"box_material\":\"纸箱\",\"goods_list\":[{\"goods_sku\":\"V1001\",\"goods_num\":10}]}]"
}

And it should work, but then any other programs that try to read it will fail. Otherwise, you will have to just copy/paste the content of the file into the test and do

stages:
  - name: oms下单

    request:
      url: "{oms_stg_env.base_url}/order/create"
      method: POST
      headers:
        test-token: "admin"
        Content-Type: application/json
      json:    
        box_list: !raw "[{\"length\":\"100\",\"width\":\"100\",\"height\":\"100\",\"weight\":\"10\",\"goods_sku_num\":\"\",\"goods_num_total\":\"\",\"isDisabled\":false,\"box_material\":\"纸箱\",\"goods_list\":[{\"goods_sku\":\"V1001\",\"goods_num\":10}]}]"

visonforcoding

comment created time in 3 days

pull request commenttaverntesting/tavern

fix readme.rst uses markdown

Thanks for that - should probably convert the whole readme back to markdown now pypi can handle it really

looker53

comment created time in 3 days

push eventtaverntesting/tavern

yu

commit sha c5a4c505797ccec3cdee53f8cc05d3e2c7077b0c

fix readme.rst uses markdown (#714)

view details

push time in 3 days

PR merged taverntesting/tavern

fix readme.rst uses markdown
+1 -1

0 comment

1 changed file

looker53

pr closed time in 3 days

pull request commenttaverntesting/tavern

fix: handle response that is a json list

Can you give an example of this failing? Tavern can handle list responses fine, is there a situation where this isn't working?

melnaquib

comment created time in 3 days

startedtaverntesting/tavern

started time in 4 days

PR opened taverntesting/tavern

fix readme.rst uses markdown
+1 -1

0 comment

1 changed file

pr created time in 5 days

fork looker53/tavern

A command-line tool and Python library and Pytest plugin for automated testing of RESTful APIs, with a simple, concise and flexible YAML-based syntax

https://taverntesting.github.io/

fork in 5 days

create barnchtaverntesting/tavern

branch : feat-cleanup-examples

created branch time in 10 days

PR opened taverntesting/tavern

fix: handle response that is a json list

trying to validate json reponse that is a list currently fails code converts it to dict to be handled as expected

+3 -1

0 comment

1 changed file

pr created time in 14 days

Pull request review commenttaverntesting/taverntesting.github.io

Update docs with cookie information

 response:     # on the actual value of it     returned_uuid: null ```++## Persistent cookies++Tavern uses+[requests](http://docs.python-requests.org/en/master/api/#requests.request)+under the hood, and uses a persistent `Session` for each test. This means that+cookies are propagated forward to further stages of a test. Cookies can also be+required to pass a test. For example, say we have a server that returns a cookie+which then needs to be used for future requests:++```yaml+---++test_name: Make sure cookie is required to log in++includes:+  - !include common.yaml++stages:+  - name: Try to check user info without login information+    request:+      url: "{host}/userinfo"+      method: GET+    response:+      status_code: 401+      body:+        error: "no login information"+      headers:+        content-type: application/json++  - name: login+    request:+      url: "{host}/login"+      json:+        user: test-user+        password: correct-password+      method: POST+      headers:+        content-type: application/json+    response:+      status_code: 200+      cookies:+        - session-cookie+      headers:+        content-type: application/json++  - name: Check user info+    request:+      url: "{host}/userinfo"+      method: GET+    response:+      status_code: 200+      body:+        name: test-user+      headers:+        content-type: application/json+```++This test ensures that a cookie called `session-cookie` is returned from the+'login' stage, and this cookie will be sent with all future stages of that test.

Are you sure?

michaelboulton

comment created time in 14 days

PullRequestReviewEvent

issue closedtaverntesting/tavern

Logging example in the Tavern document does not work

I'm attempting to set up Tavern logging, exactly as shown in the document here, however it throws an error:

     ImportError while loading conftest '/tavern_tests/conftest.py'.
tavern_tests/conftest.py:5: in <module>
    config.dictConfig(yaml.load(log_spec_file))
usr/local/lib/python3.9/logging/config.py:809: in dictConfig
    dictConfigClass(config).configure()
usr/local/lib/python3.9/logging/config.py:546: in configure
    raise ValueError('Unable to configure '
E   ValueError: Unable to configure formatter 'default'

closed time in 14 days

KenStorey

issue commenttaverntesting/tavern

Logging example in the Tavern document does not work

@KenStorey Ran into this today. You need to pip install colorlog which has the the referenced handler defined.

Thank you. That did the trick.

KenStorey

comment created time in 14 days

issue commenttaverntesting/tavern

Logging example in the Tavern document does not work

@KenStorey Ran into this today. You need to pip install colorlog which has the the referenced handler defined.

KenStorey

comment created time in 15 days

issue commenttaverntesting/tavern

Use parametrize for HTTP method

@GitifyMe Any progress on this? I'm having the same issue..

GitifyMe

comment created time in 15 days

fork melnaquib/tavern

A command-line tool and Python library and Pytest plugin for automated testing of RESTful APIs, with a simple, concise and flexible YAML-based syntax

https://taverntesting.github.io/

fork in 15 days