From 72b3eda2ec385863d7416f067f6cd0cefeed72bb Mon Sep 17 00:00:00 2001 From: Mike Kruskal Date: Wed, 18 Dec 2024 11:20:17 -0800 Subject: [PATCH] Breaking change: fix closed enum validation under editions See https://protobuf.dev/news/2024-10-02/#python-setter-validation PiperOrigin-RevId: 707612946 --- python/convert.c | 5 ----- upb/port/def.inc | 4 ---- upb/port/undef.inc | 1 - 3 files changed, 10 deletions(-) diff --git a/python/convert.c b/python/convert.c index 809f8608a43f9..bf82d64ff719c 100644 --- a/python/convert.c +++ b/python/convert.c @@ -180,12 +180,7 @@ static bool PyUpb_PyToUpbEnum(PyObject* obj, const upb_EnumDef* e, } else { int32_t i32; if (!PyUpb_GetInt32(obj, &i32)) return false; -#ifdef UPB_FUTURE_PYTHON_CLOSED_ENUM_ENFORCEMENT if (upb_EnumDef_IsClosed(e) && !upb_EnumDef_CheckNumber(e, i32)) { -#else - if (upb_FileDef_Syntax(upb_EnumDef_File(e)) == kUpb_Syntax_Proto2 && - !upb_EnumDef_CheckNumber(e, i32)) { -#endif PyErr_Format(PyExc_ValueError, "invalid enumerator %d", (int)i32); return false; } diff --git a/upb/port/def.inc b/upb/port/def.inc index 91a37dc7a30c9..13107958ea5e5 100644 --- a/upb/port/def.inc +++ b/upb/port/def.inc @@ -462,8 +462,4 @@ void __asan_unpoison_memory_region(void const volatile *addr, size_t size); // user code can be updated before upgrading versions of protobuf. #ifdef UPB_FUTURE_BREAKING_CHANGES -// Properly enforce closed enums in python. -// Owner: mkruskal@ -#define UPB_FUTURE_PYTHON_CLOSED_ENUM_ENFORCEMENT 1 - #endif diff --git a/upb/port/undef.inc b/upb/port/undef.inc index 3a882f44d3c3a..99555fb933abb 100644 --- a/upb/port/undef.inc +++ b/upb/port/undef.inc @@ -64,4 +64,3 @@ #undef UPB_LINKARR_START #undef UPB_LINKARR_STOP #undef UPB_FUTURE_BREAKING_CHANGES -#undef UPB_FUTURE_PYTHON_CLOSED_ENUM_ENFORCEMENT