Skip to content

ci: add 2025.07.0 release to text matrix #1184

ci: add 2025.07.0 release to text matrix

ci: add 2025.07.0 release to text matrix #1184

GitHub Actions / integration-test-results failed Sep 2, 2025 in 0s

1 fail, 58 pass in 15m 47s

   28 files  ±0     28 suites  ±0   15m 47s ⏱️ +3s
   59 tests ±0     58 ✅  - 1    0 💤 ± 0   1 ❌ + 1 
1 652 runs  ±0  1 452 ✅ ±0  185 💤  - 15  15 ❌ +15 

Results for commit 334980d. ± Comparison against earlier commit ca18eba.

Annotations

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.09.0 - Integration Test Report/2023.09.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f3729e3c050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2024.04.1 - Integration Test Report/2024.04.1.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f1076fcc050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2024.03.0 - Integration Test Report/2024.03.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f0d95f70050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.07.0 - Integration Test Report/2023.07.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f7e5a5e8050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2022.11.0 - Integration Test Report/2022.11.0.xml [took 0s]
Raw output
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime
self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
>           return complexjson.loads(self.text, **kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

../.venv/lib/python3.13/site-packages/requests/models.py:976: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/local/lib/python3.13/json/__init__.py:346: in loads
    return _default_decoder.decode(s)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <json.decoder.JSONDecoder object at 0x7f287c303770>
s = '404 page not found'
_w = <built-in method match of re.Pattern object at 0x7f287c1cf780>

    def decode(self, s, _w=WHITESPACE.match):
        """Return the Python representation of ``s`` (a ``str`` instance
        containing a JSON document).
    
        """
        obj, end = self.raw_decode(s, idx=_w(s, 0).end())
        end = _w(s, end).end()
        if end != len(s):
>           raise JSONDecodeError("Extra data", s, end)
E           json.decoder.JSONDecodeError: Extra data: line 1 column 5 (char 4)

/usr/local/lib/python3.13/json/decoder.py:348: JSONDecodeError

During handling of the above exception, another exception occurred:

response = <Response [404]>, request_hook_args = ()
request_hook_kwargs = {'cert': None, 'proxies': OrderedDict(), 'stream': False, 'timeout': None, ...}

    def handle_errors(
        response: Response,
        # Arguments for the hook callback signature
        *request_hook_args,  # noqa: ARG001
        **request_hook_kwargs,  # noqa: ARG001
    ) -> Response:
        if response.status_code >= 400:
            try:
>               data = response.json()
                       ^^^^^^^^^^^^^^^

../src/posit/connect/hooks.py:17: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
            return complexjson.loads(self.text, **kwargs)
        except JSONDecodeError as e:
            # Catch JSON-related errors and raise as requests.JSONDecodeError
            # This aliases json.JSONDecodeError and simplejson.JSONDecodeError
>           raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
E           requests.exceptions.JSONDecodeError: Extra data: line 1 column 5 (char 4)

../.venv/lib/python3.13/site-packages/requests/models.py:980: JSONDecodeError

During handling of the above exception, another exception occurred:

self = <connect.test_system.TestSystem object at 0x7f287a91c190>

    def test_runtime_caches(self):
>       caches = self.client.system.caches.runtime.find()
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/posit/connect/test_system.py:31: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../src/posit/connect/system.py:191: in find
    response = self._ctx.client.get(self._path)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/client.py:496: in get
    return self.session.get(url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:602: in get
    return self.request("GET", url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:589: in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:710: in send
    r = dispatch_hook("response", hooks, r, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/hooks.py:30: in dispatch_hook
    _hook_data = hook(hook_data, **kwargs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/hooks.py:26: in handle_errors
    response.raise_for_status()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>

    def raise_for_status(self):
        """Raises :class:`HTTPError`, if one occurred."""
    
        http_error_msg = ""
        if isinstance(self.reason, bytes):
            # We attempt to decode utf-8 first because some servers
            # choose to localize their reason strings. If the string
            # isn't utf-8, we fall back to iso-8859-1 for all other
            # encodings. (See PR #3538)
            try:
                reason = self.reason.decode("utf-8")
            except UnicodeDecodeError:
                reason = self.reason.decode("iso-8859-1")
        else:
            reason = self.reason
    
        if 400 <= self.status_code < 500:
            http_error_msg = (
                f"{self.status_code} Client Error: {reason} for url: {self.url}"
            )
    
        elif 500 <= self.status_code < 600:
            http_error_msg = (
                f"{self.status_code} Server Error: {reason} for url: {self.url}"
            )
    
        if http_error_msg:
>           raise HTTPError(http_error_msg, response=self)
E           requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime

../.venv/lib/python3.13/site-packages/requests/models.py:1026: HTTPError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.01.0 - Integration Test Report/2023.01.0.xml [took 0s]
Raw output
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime
self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
>           return complexjson.loads(self.text, **kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

../.venv/lib/python3.13/site-packages/requests/models.py:976: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/local/lib/python3.13/json/__init__.py:346: in loads
    return _default_decoder.decode(s)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <json.decoder.JSONDecoder object at 0x7f6e41c1b770>
s = '404 page not found'
_w = <built-in method match of re.Pattern object at 0x7f6e41ae7780>

    def decode(self, s, _w=WHITESPACE.match):
        """Return the Python representation of ``s`` (a ``str`` instance
        containing a JSON document).
    
        """
        obj, end = self.raw_decode(s, idx=_w(s, 0).end())
        end = _w(s, end).end()
        if end != len(s):
>           raise JSONDecodeError("Extra data", s, end)
E           json.decoder.JSONDecodeError: Extra data: line 1 column 5 (char 4)

/usr/local/lib/python3.13/json/decoder.py:348: JSONDecodeError

During handling of the above exception, another exception occurred:

response = <Response [404]>, request_hook_args = ()
request_hook_kwargs = {'cert': None, 'proxies': OrderedDict(), 'stream': False, 'timeout': None, ...}

    def handle_errors(
        response: Response,
        # Arguments for the hook callback signature
        *request_hook_args,  # noqa: ARG001
        **request_hook_kwargs,  # noqa: ARG001
    ) -> Response:
        if response.status_code >= 400:
            try:
>               data = response.json()
                       ^^^^^^^^^^^^^^^

../src/posit/connect/hooks.py:17: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
            return complexjson.loads(self.text, **kwargs)
        except JSONDecodeError as e:
            # Catch JSON-related errors and raise as requests.JSONDecodeError
            # This aliases json.JSONDecodeError and simplejson.JSONDecodeError
>           raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
E           requests.exceptions.JSONDecodeError: Extra data: line 1 column 5 (char 4)

../.venv/lib/python3.13/site-packages/requests/models.py:980: JSONDecodeError

During handling of the above exception, another exception occurred:

self = <connect.test_system.TestSystem object at 0x7f6e4022c050>

    def test_runtime_caches(self):
>       caches = self.client.system.caches.runtime.find()
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/posit/connect/test_system.py:31: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../src/posit/connect/system.py:191: in find
    response = self._ctx.client.get(self._path)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/client.py:496: in get
    return self.session.get(url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:602: in get
    return self.request("GET", url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:589: in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:710: in send
    r = dispatch_hook("response", hooks, r, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/hooks.py:30: in dispatch_hook
    _hook_data = hook(hook_data, **kwargs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/hooks.py:26: in handle_errors
    response.raise_for_status()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>

    def raise_for_status(self):
        """Raises :class:`HTTPError`, if one occurred."""
    
        http_error_msg = ""
        if isinstance(self.reason, bytes):
            # We attempt to decode utf-8 first because some servers
            # choose to localize their reason strings. If the string
            # isn't utf-8, we fall back to iso-8859-1 for all other
            # encodings. (See PR #3538)
            try:
                reason = self.reason.decode("utf-8")
            except UnicodeDecodeError:
                reason = self.reason.decode("iso-8859-1")
        else:
            reason = self.reason
    
        if 400 <= self.status_code < 500:
            http_error_msg = (
                f"{self.status_code} Client Error: {reason} for url: {self.url}"
            )
    
        elif 500 <= self.status_code < 600:
            http_error_msg = (
                f"{self.status_code} Server Error: {reason} for url: {self.url}"
            )
    
        if http_error_msg:
>           raise HTTPError(http_error_msg, response=self)
E           requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime

../.venv/lib/python3.13/site-packages/requests/models.py:1026: HTTPError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.01.1 - Integration Test Report/2023.01.1.xml [took 0s]
Raw output
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime
self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
>           return complexjson.loads(self.text, **kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

../.venv/lib/python3.13/site-packages/requests/models.py:976: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/local/lib/python3.13/json/__init__.py:346: in loads
    return _default_decoder.decode(s)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <json.decoder.JSONDecoder object at 0x7fed6fc87770>
s = '404 page not found'
_w = <built-in method match of re.Pattern object at 0x7fed6fb4b780>

    def decode(self, s, _w=WHITESPACE.match):
        """Return the Python representation of ``s`` (a ``str`` instance
        containing a JSON document).
    
        """
        obj, end = self.raw_decode(s, idx=_w(s, 0).end())
        end = _w(s, end).end()
        if end != len(s):
>           raise JSONDecodeError("Extra data", s, end)
E           json.decoder.JSONDecodeError: Extra data: line 1 column 5 (char 4)

/usr/local/lib/python3.13/json/decoder.py:348: JSONDecodeError

During handling of the above exception, another exception occurred:

response = <Response [404]>, request_hook_args = ()
request_hook_kwargs = {'cert': None, 'proxies': OrderedDict(), 'stream': False, 'timeout': None, ...}

    def handle_errors(
        response: Response,
        # Arguments for the hook callback signature
        *request_hook_args,  # noqa: ARG001
        **request_hook_kwargs,  # noqa: ARG001
    ) -> Response:
        if response.status_code >= 400:
            try:
>               data = response.json()
                       ^^^^^^^^^^^^^^^

../src/posit/connect/hooks.py:17: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
            return complexjson.loads(self.text, **kwargs)
        except JSONDecodeError as e:
            # Catch JSON-related errors and raise as requests.JSONDecodeError
            # This aliases json.JSONDecodeError and simplejson.JSONDecodeError
>           raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
E           requests.exceptions.JSONDecodeError: Extra data: line 1 column 5 (char 4)

../.venv/lib/python3.13/site-packages/requests/models.py:980: JSONDecodeError

During handling of the above exception, another exception occurred:

self = <connect.test_system.TestSystem object at 0x7fed6e284050>

    def test_runtime_caches(self):
>       caches = self.client.system.caches.runtime.find()
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/posit/connect/test_system.py:31: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../src/posit/connect/system.py:191: in find
    response = self._ctx.client.get(self._path)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/client.py:496: in get
    return self.session.get(url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:602: in get
    return self.request("GET", url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:589: in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:710: in send
    r = dispatch_hook("response", hooks, r, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/hooks.py:30: in dispatch_hook
    _hook_data = hook(hook_data, **kwargs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/hooks.py:26: in handle_errors
    response.raise_for_status()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>

    def raise_for_status(self):
        """Raises :class:`HTTPError`, if one occurred."""
    
        http_error_msg = ""
        if isinstance(self.reason, bytes):
            # We attempt to decode utf-8 first because some servers
            # choose to localize their reason strings. If the string
            # isn't utf-8, we fall back to iso-8859-1 for all other
            # encodings. (See PR #3538)
            try:
                reason = self.reason.decode("utf-8")
            except UnicodeDecodeError:
                reason = self.reason.decode("iso-8859-1")
        else:
            reason = self.reason
    
        if 400 <= self.status_code < 500:
            http_error_msg = (
                f"{self.status_code} Client Error: {reason} for url: {self.url}"
            )
    
        elif 500 <= self.status_code < 600:
            http_error_msg = (
                f"{self.status_code} Server Error: {reason} for url: {self.url}"
            )
    
        if http_error_msg:
>           raise HTTPError(http_error_msg, response=self)
E           requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime

../.venv/lib/python3.13/site-packages/requests/models.py:1026: HTTPError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.05.0 - Integration Test Report/2023.05.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f0395684050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2024.02.0 - Integration Test Report/2024.02.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7fc48be58050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2024.04.0 - Integration Test Report/2024.04.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f5760c50050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.06.0 - Integration Test Report/2023.06.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7ff7d8d7c050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2022.12.0 - Integration Test Report/2022.12.0.xml [took 0s]
Raw output
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime
self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
>           return complexjson.loads(self.text, **kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

../.venv/lib/python3.13/site-packages/requests/models.py:976: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/local/lib/python3.13/json/__init__.py:346: in loads
    return _default_decoder.decode(s)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <json.decoder.JSONDecoder object at 0x7f82e8fcf770>
s = '404 page not found'
_w = <built-in method match of re.Pattern object at 0x7f82e8e9b780>

    def decode(self, s, _w=WHITESPACE.match):
        """Return the Python representation of ``s`` (a ``str`` instance
        containing a JSON document).
    
        """
        obj, end = self.raw_decode(s, idx=_w(s, 0).end())
        end = _w(s, end).end()
        if end != len(s):
>           raise JSONDecodeError("Extra data", s, end)
E           json.decoder.JSONDecodeError: Extra data: line 1 column 5 (char 4)

/usr/local/lib/python3.13/json/decoder.py:348: JSONDecodeError

During handling of the above exception, another exception occurred:

response = <Response [404]>, request_hook_args = ()
request_hook_kwargs = {'cert': None, 'proxies': OrderedDict(), 'stream': False, 'timeout': None, ...}

    def handle_errors(
        response: Response,
        # Arguments for the hook callback signature
        *request_hook_args,  # noqa: ARG001
        **request_hook_kwargs,  # noqa: ARG001
    ) -> Response:
        if response.status_code >= 400:
            try:
>               data = response.json()
                       ^^^^^^^^^^^^^^^

../src/posit/connect/hooks.py:17: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>, kwargs = {}

    def json(self, **kwargs):
        r"""Decodes the JSON response body (if any) as a Python object.
    
        This may return a dictionary, list, etc. depending on what is in the response.
    
        :param \*\*kwargs: Optional arguments that ``json.loads`` takes.
        :raises requests.exceptions.JSONDecodeError: If the response body does not
            contain valid json.
        """
    
        if not self.encoding and self.content and len(self.content) > 3:
            # No encoding set. JSON RFC 4627 section 3 states we should expect
            # UTF-8, -16 or -32. Detect which one to use; If the detection or
            # decoding fails, fall back to `self.text` (using charset_normalizer to make
            # a best guess).
            encoding = guess_json_utf(self.content)
            if encoding is not None:
                try:
                    return complexjson.loads(self.content.decode(encoding), **kwargs)
                except UnicodeDecodeError:
                    # Wrong UTF codec detected; usually because it's not UTF-8
                    # but some other 8-bit codec.  This is an RFC violation,
                    # and the server didn't bother to tell us what codec *was*
                    # used.
                    pass
                except JSONDecodeError as e:
                    raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
    
        try:
            return complexjson.loads(self.text, **kwargs)
        except JSONDecodeError as e:
            # Catch JSON-related errors and raise as requests.JSONDecodeError
            # This aliases json.JSONDecodeError and simplejson.JSONDecodeError
>           raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
E           requests.exceptions.JSONDecodeError: Extra data: line 1 column 5 (char 4)

../.venv/lib/python3.13/site-packages/requests/models.py:980: JSONDecodeError

During handling of the above exception, another exception occurred:

self = <connect.test_system.TestSystem object at 0x7f82e75dc050>

    def test_runtime_caches(self):
>       caches = self.client.system.caches.runtime.find()
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/posit/connect/test_system.py:31: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
../src/posit/connect/system.py:191: in find
    response = self._ctx.client.get(self._path)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/client.py:496: in get
    return self.session.get(url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:602: in get
    return self.request("GET", url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:589: in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/sessions.py:710: in send
    r = dispatch_hook("response", hooks, r, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../.venv/lib/python3.13/site-packages/requests/hooks.py:30: in dispatch_hook
    _hook_data = hook(hook_data, **kwargs)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
../src/posit/connect/hooks.py:26: in handle_errors
    response.raise_for_status()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <Response [404]>

    def raise_for_status(self):
        """Raises :class:`HTTPError`, if one occurred."""
    
        http_error_msg = ""
        if isinstance(self.reason, bytes):
            # We attempt to decode utf-8 first because some servers
            # choose to localize their reason strings. If the string
            # isn't utf-8, we fall back to iso-8859-1 for all other
            # encodings. (See PR #3538)
            try:
                reason = self.reason.decode("utf-8")
            except UnicodeDecodeError:
                reason = self.reason.decode("iso-8859-1")
        else:
            reason = self.reason
    
        if 400 <= self.status_code < 500:
            http_error_msg = (
                f"{self.status_code} Client Error: {reason} for url: {self.url}"
            )
    
        elif 500 <= self.status_code < 600:
            http_error_msg = (
                f"{self.status_code} Server Error: {reason} for url: {self.url}"
            )
    
        if http_error_msg:
>           raise HTTPError(http_error_msg, response=self)
E           requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://connect:3939/__api__/v1/system/caches/runtime

../.venv/lib/python3.13/site-packages/requests/models.py:1026: HTTPError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.10.0 - Integration Test Report/2023.10.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7ff4a4830050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2024.01.0 - Integration Test Report/2024.01.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f55deda8050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError

Check warning on line 0 in integration.tests.posit.connect.test_system.TestSystem

See this annotation in the file changed.

@github-actions github-actions / integration-test-results

1 out of 28 runs failed: test_runtime_caches (integration.tests.posit.connect.test_system.TestSystem)

artifacts/2023.12.0 - Integration Test Report/2023.12.0.xml [took 0s]
Raw output
assert 0 > 0
 +  where 0 = len([])
self = <connect.test_system.TestSystem object at 0x7f99f1f6c050>

    def test_runtime_caches(self):
        caches = self.client.system.caches.runtime.find()
>       assert len(caches) > 0
E       assert 0 > 0
E        +  where 0 = len([])

tests/posit/connect/test_system.py:32: AssertionError