It looks like _retrieve_data is now returning the decoded json object instead of a string (at least for some API methods). One example is item_types(). i.e., calling Zotero.item_types() throws an exception because you're trying to json decode something that's already been decoded. Perhaps the response content-type has changed for these items, or perhaps you changed _retrieve_data to automatically decode json responses, but forgot to update the methods that call it?
It looks like _retrieve_data is now returning the decoded json object instead of a string (at least for some API methods). One example is item_types(). i.e., calling Zotero.item_types() throws an exception because you're trying to json decode something that's already been decoded. Perhaps the response content-type has changed for these items, or perhaps you changed _retrieve_data to automatically decode json responses, but forgot to update the methods that call it?