Unable to Set an Environment Variable on Device Using the Balena SDK

I’m trying to set an environment variable using the
Balena Python SDK on a specific device. However, I keep getting this error. Is this a know issue? I’ve double checked that the string I’m passing as an environment variable is properly formatted (actually utf-8 encoded as well).


    balena_sdk.models.device.env_var.set(
  File ".venv/lib/python3.11/site-packages/balena/models/device.py", line 2287, in set
    super(DeviceEnvVariable, self)._set(uuid_or_id, env_var_name, value)
  File ".venv/lib/python3.11/site-packages/balena/dependent_resource.py", line 61, in _set
    parent_id = parent_param if is_id(parent_param) else self.get_resource_id(parent_param)
                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/balena/models/device.py", line 2204, in <lambda>
    lambda id: self.__device.get(id, {"$select": "id"})["id"],
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/balena/models/device.py", line 377, in get
    device = self.__pine.get(
             ^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/pine_client/client.py", line 848, in get
    result = self.request({**params, "method": "GET"})
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/pine_client/client.py", line 944, in request
    return self._request(method=method, url=url, body=params.get("body"))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/balena/pine.py", line 39, in _request
    return self.__request(method, url, body)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/balena/pine.py", line 63, in __base_request
    req = requests.request(method, url=url, json=body, headers=headers)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/urllib3/connectionpool.py", line 715, in urlopen
    httplib_response = self._make_request(
                       ^^^^^^^^^^^^^^^^^^^
  File ".venv/lib/python3.11/site-packages/urllib3/connectionpool.py", line 416, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File ".venv/lib/python3.11/site-packages/urllib3/connection.py", line 244, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/.pyenv/versions/3.11.6/lib/python3.11/http/client.py", line 1286, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/.pyenv/versions/3.11.6/lib/python3.11/http/client.py", line 1327, in _send_request
    self.putheader(hdr, value)
  File ".venv/lib/python3.11/site-packages/urllib3/connection.py", line 224, in putheader
    _HTTPConnection.putheader(self, header, *values)
  File "/.pyenv/versions/3.11.6/lib/python3.11/http/client.py", line 1259, in putheader
    values[i] = one_value.encode('latin-1')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 9-11: ordinal not in range(256)

This comes from this function call:

 balena_sdk.models.device.env_var.set(
            uuid_or_id=balena_device_id, env_var_name=env_var_name, value=value
        )