| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | import jsonimport loggingimport requestsfrom flask_restful import Resource, reqparsefrom configs import dify_configfrom . import apiclass VersionApi(Resource):    def get(self):        parser = reqparse.RequestParser()        parser.add_argument("current_version", type=str, required=True, location="args")        args = parser.parse_args()        check_update_url = dify_config.CHECK_UPDATE_URL        result = {            "version": dify_config.CURRENT_VERSION,            "release_date": "",            "release_notes": "",            "can_auto_update": False,            "features": {                "can_replace_logo": dify_config.CAN_REPLACE_LOGO,                "model_load_balancing_enabled": dify_config.MODEL_LB_ENABLED,            },        }        if not check_update_url:            return result        try:            response = requests.get(check_update_url, {"current_version": args.get("current_version")})        except Exception as error:            logging.warning("Check update version error: {}.".format(str(error)))            result["version"] = args.get("current_version")            return result        content = json.loads(response.content)        result["version"] = content["version"]        result["release_date"] = content["releaseDate"]        result["release_notes"] = content["releaseNotes"]        result["can_auto_update"] = content["canAutoUpdate"]        return resultapi.add_resource(VersionApi, "/version")
 |