)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000003,"name":"plaisthos","display_name":"Arne Schwabe","email":"arne-openvpn@rfc2549.org","username":"plaisthos"},"change_message_id":"d72ab9220708bcc130635f01164d860f4ecf6bd1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a2334461_1bdabb57","updated":"2025-12-10 09:32:25.000000000","message":"Did we ever benchmark this? This removes this without giving checking if that was a good optimisation.","commit_id":"d67ea4136872d8ec75173de924e8cdbd841a4bff"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8a19c9df6f5011ce6a5956d9c46cff0e6c05545b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"6f8cd2b3_d46698fe","in_reply_to":"a2334461_1bdabb57","updated":"2025-12-10 09:37:08.000000000","message":"Yes I did, and even though you can get a 5% performance gain it may lead to weird issues if used server side, another way could be to make the option client only.","commit_id":"d67ea4136872d8ec75173de924e8cdbd841a4bff"}],"doc/man-sections/generic-options.rst":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"aa8569546aaeb48fce016aae0815b5a98bef6c6a","unresolved":true,"context_lines":[{"line_number":212,"context_line":"  are supported by OpenSSL."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"--fast-io"},{"line_number":215,"context_line":"  **DEPRECATED** Optimize TUN/TAP/UDP I/O writes by avoiding a call to"},{"line_number":216,"context_line":"  poll/epoll/select prior to the write operation. The purpose of such a"},{"line_number":217,"context_line":"  call would normally be to block until the device or socket is ready to"},{"line_number":218,"context_line":"  accept the write. Such blocking is unnecessary on some platforms which"}],"source_content_type":"text/x-rst","patch_set":2,"id":"6c719c88_f7491c74","line":215,"updated":"2025-12-09 12:30:45.000000000","message":"We should remove this whole explanation. Since the option is now an no-op, it doesn\u0027t make sense to keep it. For options that are a no-op, the most common solution seems to be to add a short note in `unsupported-options.rst`.","commit_id":"694464bb7636e122ede766f169b66841294ff7c0"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"467cfebefc983d60c3fce893006e67358d8c0bf9","unresolved":false,"context_lines":[{"line_number":212,"context_line":"  are supported by OpenSSL."},{"line_number":213,"context_line":""},{"line_number":214,"context_line":"--fast-io"},{"line_number":215,"context_line":"  **DEPRECATED** Optimize TUN/TAP/UDP I/O writes by avoiding a call to"},{"line_number":216,"context_line":"  poll/epoll/select prior to the write operation. The purpose of such a"},{"line_number":217,"context_line":"  call would normally be to block until the device or socket is ready to"},{"line_number":218,"context_line":"  accept the write. Such blocking is unnecessary on some platforms which"}],"source_content_type":"text/x-rst","patch_set":2,"id":"97eedf9d_7c40861a","line":215,"in_reply_to":"6c719c88_f7491c74","updated":"2025-12-09 12:48:28.000000000","message":"Done","commit_id":"694464bb7636e122ede766f169b66841294ff7c0"}],"doc/man-sections/unsupported-options.rst":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"39b8d74d50bfb6232c965848b3a8c597c5b346f2","unresolved":true,"context_lines":[{"line_number":50,"context_line":"  Removed in OpenVPN 2.7.  This option does not make sense anymore as option"},{"line_number":51,"context_line":"  strings may not match due to the introduction of parameters negotiation."},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"--fast-io"},{"line_number":54,"context_line":"  Ignored since OpenVPN 2.7. This option became broken with latest changes"},{"line_number":55,"context_line":"  to the event loop."}],"source_content_type":"text/x-rst","patch_set":3,"id":"e0878cd5_9c32f4ab","line":53,"updated":"2025-12-09 13:51:28.000000000","message":"The options are alphabetically sorted. Please put it in the right spot.","commit_id":"7fbebb31d6239f43529d14eb5f05299c7f780603"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8164337f291f33ccb27d9869aa5b75a83a5b1a99","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  Removed in OpenVPN 2.7.  This option does not make sense anymore as option"},{"line_number":51,"context_line":"  strings may not match due to the introduction of parameters negotiation."},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"--fast-io"},{"line_number":54,"context_line":"  Ignored since OpenVPN 2.7. This option became broken with latest changes"},{"line_number":55,"context_line":"  to the event loop."}],"source_content_type":"text/x-rst","patch_set":3,"id":"4124cd87_f4b415ee","line":53,"in_reply_to":"e0878cd5_9c32f4ab","updated":"2025-12-09 14:28:29.000000000","message":"Done","commit_id":"7fbebb31d6239f43529d14eb5f05299c7f780603"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"39b8d74d50bfb6232c965848b3a8c597c5b346f2","unresolved":true,"context_lines":[{"line_number":51,"context_line":"  strings may not match due to the introduction of parameters negotiation."},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"--fast-io"},{"line_number":54,"context_line":"  Ignored since OpenVPN 2.7. This option became broken with latest changes"},{"line_number":55,"context_line":"  to the event loop."}],"source_content_type":"text/x-rst","patch_set":3,"id":"d3d06463_5f63df3e","line":54,"updated":"2025-12-09 13:51:28.000000000","message":"\"latest\" feels wrong in this context. How about \"This option became broken due to changes to the event loop.\"?","commit_id":"7fbebb31d6239f43529d14eb5f05299c7f780603"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8164337f291f33ccb27d9869aa5b75a83a5b1a99","unresolved":false,"context_lines":[{"line_number":51,"context_line":"  strings may not match due to the introduction of parameters negotiation."},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"--fast-io"},{"line_number":54,"context_line":"  Ignored since OpenVPN 2.7. This option became broken with latest changes"},{"line_number":55,"context_line":"  to the event loop."}],"source_content_type":"text/x-rst","patch_set":3,"id":"4fcd2867_d74273a7","line":54,"in_reply_to":"d3d06463_5f63df3e","updated":"2025-12-09 14:28:29.000000000","message":"Done","commit_id":"7fbebb31d6239f43529d14eb5f05299c7f780603"}],"src/openvpn/options.c":[{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"fe00b39c1761b105fa8a4d5fa2609139d0e0d19d","unresolved":true,"context_lines":[{"line_number":6597,"context_line":"    else if (streq(p[0], \"fast-io\") \u0026\u0026 !p[1])"},{"line_number":6598,"context_line":"    {"},{"line_number":6599,"context_line":"        VERIFY_PERMISSION(OPT_P_GENERAL);"},{"line_number":6600,"context_line":"        msg(M_WARN, \"DEPRECATED: --fast-io option ignored. \");"},{"line_number":6601,"context_line":"    }"},{"line_number":6602,"context_line":"    else if (streq(p[0], \"inactive\") \u0026\u0026 p[1] \u0026\u0026 !p[3])"},{"line_number":6603,"context_line":"    {"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"aac4015e_6f38dfd0","line":6600,"updated":"2025-12-09 11:31:47.000000000","message":"Most warnings use `DEPRECATED OPTION:` so please use that for consistency.","commit_id":"f1f558c76b654ff53b713c7be3faf10526fbfdb8"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"d7d2d54772622de0fbda7b985d30e0acdca23a8c","unresolved":false,"context_lines":[{"line_number":6597,"context_line":"    else if (streq(p[0], \"fast-io\") \u0026\u0026 !p[1])"},{"line_number":6598,"context_line":"    {"},{"line_number":6599,"context_line":"        VERIFY_PERMISSION(OPT_P_GENERAL);"},{"line_number":6600,"context_line":"        msg(M_WARN, \"DEPRECATED: --fast-io option ignored. \");"},{"line_number":6601,"context_line":"    }"},{"line_number":6602,"context_line":"    else if (streq(p[0], \"inactive\") \u0026\u0026 p[1] \u0026\u0026 !p[3])"},{"line_number":6603,"context_line":"    {"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"f47786ff_81c645e4","line":6600,"in_reply_to":"aac4015e_6f38dfd0","updated":"2025-12-09 12:03:05.000000000","message":"Done","commit_id":"f1f558c76b654ff53b713c7be3faf10526fbfdb8"},{"author":{"_account_id":1000001,"name":"flichtenheld","display_name":"Frank Lichtenheld","email":"frank@lichtenheld.com","username":"flichtenheld","status":"OpenVPN Inc."},"change_message_id":"39b8d74d50bfb6232c965848b3a8c597c5b346f2","unresolved":true,"context_lines":[{"line_number":6597,"context_line":"    else if (streq(p[0], \"fast-io\") \u0026\u0026 !p[1])"},{"line_number":6598,"context_line":"    {"},{"line_number":6599,"context_line":"        VERIFY_PERMISSION(OPT_P_GENERAL);"},{"line_number":6600,"context_line":"        msg(M_WARN, \"DEPRECATED OPTION: --fast-io option ignored. \");"},{"line_number":6601,"context_line":"    }"},{"line_number":6602,"context_line":"    else if (streq(p[0], \"inactive\") \u0026\u0026 p[1] \u0026\u0026 !p[3])"},{"line_number":6603,"context_line":"    {"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"4514d830_40647eb5","line":6600,"updated":"2025-12-09 13:51:28.000000000","message":"Remove superfluous space at the end of the line.","commit_id":"7fbebb31d6239f43529d14eb5f05299c7f780603"},{"author":{"_account_id":1000034,"name":"its_Giaan","display_name":"Gianmarco De Gregori","email":"gianmarco@mandelbit.com","username":"its_Giaan"},"change_message_id":"8164337f291f33ccb27d9869aa5b75a83a5b1a99","unresolved":false,"context_lines":[{"line_number":6597,"context_line":"    else if (streq(p[0], \"fast-io\") \u0026\u0026 !p[1])"},{"line_number":6598,"context_line":"    {"},{"line_number":6599,"context_line":"        VERIFY_PERMISSION(OPT_P_GENERAL);"},{"line_number":6600,"context_line":"        msg(M_WARN, \"DEPRECATED OPTION: --fast-io option ignored. \");"},{"line_number":6601,"context_line":"    }"},{"line_number":6602,"context_line":"    else if (streq(p[0], \"inactive\") \u0026\u0026 p[1] \u0026\u0026 !p[3])"},{"line_number":6603,"context_line":"    {"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"34b27d89_4fabdab6","line":6600,"in_reply_to":"4514d830_40647eb5","updated":"2025-12-09 14:28:29.000000000","message":"Done","commit_id":"7fbebb31d6239f43529d14eb5f05299c7f780603"}]}
