{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":12168723,"defaultBranch":"master","name":"swig","ownerLogin":"vadz","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2013-08-16T21:30:34.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/146917?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1726494344.0","currentOid":""},"activityList":{"items":[{"before":"bf422a84baf0a84ce34b0b44f61ca23fc303cb66","after":null,"ref":"refs/heads/quiet-test-suite","pushedAt":"2024-09-16T13:45:44.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"}},{"before":"4ea006c4f40ced91676a20f9c520fa7060c4ec83","after":null,"ref":"refs/heads/C","pushedAt":"2024-09-13T12:44:57.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"}},{"before":"4067991010a3538826c0fb4e71d3546b0a8002d2","after":"4ea006c4f40ced91676a20f9c520fa7060c4ec83","ref":"refs/heads/C","pushedAt":"2024-09-13T00:36:54.000Z","pushType":"push","commitsCount":24,"pusher":{"login":"ojwb","name":"Olly Betts","path":"/ojwb","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/164061?s=80&v=4"},"commit":{"message":"Merge branch 'master' into C","shortMessageHtmlLink":"Merge branch 'master' into C"}},{"before":"a183c7c980facf3f61adeec3ac72efea46d3df8c","after":"4067991010a3538826c0fb4e71d3546b0a8002d2","ref":"refs/heads/C","pushedAt":"2024-09-11T19:37:17.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"ojwb","name":"Olly Betts","path":"/ojwb","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/164061?s=80&v=4"},"commit":{"message":"[ci] Test C target language with C++20 too","shortMessageHtmlLink":"[ci] Test C target language with C++20 too"}},{"before":"2be1e8a83ae3dc8dd39cb4c658278ac63a54f331","after":"a183c7c980facf3f61adeec3ac72efea46d3df8c","ref":"refs/heads/C","pushedAt":"2024-09-11T12:51:13.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix mangling overloaded functions in C API\n\nA previous merge of master used a wrong function in get_mangled_type():\nwe need Swig_name_mangle_type() and not Swig_name_mangle_string() here,\nas it's more readable and, more importantly, backwards-compatible and\ndoesn't change the identifiers used in the generated C API.","shortMessageHtmlLink":"Fix mangling overloaded functions in C API"}},{"before":"6848b3ef5c08b415f2fe932d90919908bd3cec0d","after":"2be1e8a83ae3dc8dd39cb4c658278ac63a54f331","ref":"refs/heads/C","pushedAt":"2024-09-11T12:49:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix mangling overloaded functions in C API\n\nThe merge 391a0c9a2 (Merge branch 'master' into ito, 2024-06-16) used a\nwrong function in get_mangled_type(): we need Swig_name_mangle_type()\nand not Swig_name_mangle_string() here, as it's (a bit) more readable\nand, more importantly, backwards-compatible and doesn't change the\nidentifiers used in the generated C API.","shortMessageHtmlLink":"Fix mangling overloaded functions in C API"}},{"before":"78ef013da1cbaa30547aa3f554b094ed312e0c28","after":"6848b3ef5c08b415f2fe932d90919908bd3cec0d","ref":"refs/heads/C","pushedAt":"2024-09-11T04:48:15.000Z","pushType":"push","commitsCount":85,"pusher":{"login":"ojwb","name":"Olly Betts","path":"/ojwb","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/164061?s=80&v=4"},"commit":{"message":"Update C backend for #2990","shortMessageHtmlLink":"Update C backend for swig#2990"}},{"before":"474a936b15ddb6516995ee2ea5cc9b6f0894c529","after":null,"ref":"refs/heads/js-allow-keywords-for-members","pushedAt":"2024-09-09T16:08:34.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"}},{"before":null,"after":"a6b7202100951d72e3ba8d8adf459feee51b4fb9","ref":"refs/heads/js-fix-rename-test","pushedAt":"2024-09-09T16:07:59.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix JS keyword rename test to actually test for renaming\n\nAssigning to a property in JS always works, as it just creates a new\nproperty if there is no existing one, and so can't be used for testing\nfor its existence.\n\nSet the property value in C code and try accessing it from JS instead.\n\nAlso check that not only the property with the expected name exists, but\nalso that the property with the renamed name does not.\n\nSee #2943.","shortMessageHtmlLink":"Fix JS keyword rename test to actually test for renaming"}},{"before":"a4115cf97c3fa1f649cba3e6aa3766ffc05c796f","after":"474a936b15ddb6516995ee2ea5cc9b6f0894c529","ref":"refs/heads/js-allow-keywords-for-members","pushedAt":"2024-07-18T20:28:31.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Move javascriptkw.swg file to Lib/javascript directory\n\nThis file is JS-specific and should be in JS subdirectory, for\nconsistency with all the other languages.","shortMessageHtmlLink":"Move javascriptkw.swg file to Lib/javascript directory"}},{"before":"60a695381ea840361c1f3a3b393ea01aaca349af","after":"62b603768164e50af4c236fa2e8929cbb46b2ae9","ref":"refs/heads/py-doxygen-overloads","pushedAt":"2024-07-18T15:08:28.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Also fix docstrings when using Python with -builtin option\n\nUse the recently added find_overload_with_docstring() in builtin case\ntoo.\n\nNote that this relies on the parent commit as add_method() must be\ncalled with the last function in the overload set, and not the last but\none, for find_overload_with_docstring() to work correctly.\n\nAlternatively, we could change find_overload_with_docstring() to look at\nall elements of the overload set, not just the preceding, but also the\nfollowing ones. However it seems better to keep things simpler and only\ncall it for the last one.","shortMessageHtmlLink":"Also fix docstrings when using Python with -builtin option"}},{"before":null,"after":"60a695381ea840361c1f3a3b393ea01aaca349af","ref":"refs/heads/py-doxygen-overloads","pushedAt":"2024-07-18T13:36:09.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix Python docstring for overloads with some Doxygen comments\n\nThe existing code didn't work correctly if the last element of the\noverload set didn't have a Doxygen comment: in this case, no docstring\nwas generated at all.\n\nFix this by trying to find any overload with a Doxygen comment, as\nPython docstring is common for all of them: add a helper function to do\nit and use it for both all kinds of ordinary functions (global, member\nand static) and __init__ functions generated for C++ ctors, as docstring\nwas generated in the same wrong way for all of them in different places.\n\nNote that currently the overloads without Doxygen comments are not\ndocumented at all at Python level, as saying \"there exist other\noverloads but there is no documentation for them\" doesn't seem very\nuseful and there doesn't seem anything else that we could do.\n\nAdd a new unit test for testing all the different combinations of\noverloaded functions with and without Doxygen comments.","shortMessageHtmlLink":"Fix Python docstring for overloads with some Doxygen comments"}},{"before":"792744fec83931a1d8aec5c717b54681d35136f0","after":"78ef013da1cbaa30547aa3f554b094ed312e0c28","ref":"refs/heads/C","pushedAt":"2024-07-17T21:35:59.000Z","pushType":"push","commitsCount":44,"pusher":{"login":"ojwb","name":"Olly Betts","path":"/ojwb","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/164061?s=80&v=4"},"commit":{"message":"Eliminate bad test for CC\n\ntest -x \"$CC\" seems to be a typo for test -z \"$CC\", which we only\nget away with when CC has no PATH.\n\nHowever as vadz points out, CC and CXX are required anyway, so just\nremove this whole check.","shortMessageHtmlLink":"Eliminate bad test for CC"}},{"before":"b77c6d1616c1016c0698e9de7d2c27c5008c60c3","after":null,"ref":"refs/heads/avoid-undef-warn-if-ignored","pushedAt":"2024-07-15T19:32:28.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"}},{"before":null,"after":"98c36d31d329b9db19a312661afda15c2fb5ed65","ref":"refs/heads/csharp-empty-obsolete","pushedAt":"2024-07-02T22:07:20.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Restore C# empty() containers method but warn when using it\n\nIn d8c21410e (Replace empty() method with IsEmpty C# property in STL\ncontainers, 2023-11-10) the previously existing empty() method was made\nprivate, making it impossible to use it by default and breaking existing\ncode that called it and worked fine with the previous SWIG versions.\n\nInstead of breaking it completely, still define this method but\ndeprecate it using the standard Obsolete() attribute and a message\npointing to IsEmpty property.","shortMessageHtmlLink":"Restore C# empty() containers method but warn when using it"}},{"before":null,"after":"a4115cf97c3fa1f649cba3e6aa3766ffc05c796f","ref":"refs/heads/js-allow-keywords-for-members","pushedAt":"2024-06-30T21:51:31.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Allow using keywords for members in JS\n\nNames of object properties can be keywords in JS, so don't force\nrenaming them to have a leading underscore.\n\nCloses #2940.","shortMessageHtmlLink":"Allow using keywords for members in JS"}},{"before":null,"after":"b77c6d1616c1016c0698e9de7d2c27c5008c60c3","ref":"refs/heads/avoid-undef-warn-if-ignored","pushedAt":"2024-06-30T13:48:29.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Avoid warnings for %ignored using declarations\n\nIt doesn't make sense to give WARN_PARSE_USING_UNDEF if the identifier\nbeing brought in scope by a using declaration is explicitly %ignored,\nbut we still did it even in this case.\n\nJust ignore the declaration completely instead in this case.","shortMessageHtmlLink":"Avoid warnings for %ignored using declarations"}},{"before":null,"after":"f4866328447d41fdc5cf5dd85339ab6eff4507c0","ref":"refs/heads/fix-js-node-test-suite-twice","pushedAt":"2024-06-25T22:10:11.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix running preproc_include test with JS+node more than once\n\nAt least when building in a separate build directory, building this test\nsecond time fails due to a syntax error in the makefile created by\nnode-gyp which happens because it doesn't handle dependencies with\nspaces in them correctly.\n\nFix this by simply avoiding using such dependencies when using node-gyp,\nthis is not a big loss as the goal here is to test SWIG preprocessor and\nnot JS backend itself, and the preprocessor is still tested with the\nother languages.\n\nCloses #2930.","shortMessageHtmlLink":"Fix running preproc_include test with JS+node more than once"}},{"before":"b27a9b01f1d1f0b3cc6af54d1d5788fa891c475b","after":"4f5699c43b74d7f7f234a84bda5ffb0d3222bd54","ref":"refs/heads/javascript-vector-dedup","pushedAt":"2024-06-24T21:48:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Don't pass separate REFERENCE to JS macro defining std::vector\n\nJust use \"CTYPE&\" for both the generic case and bool specialization,\nit is still wrong (as std::vector::reference is a proxy type\ndifferent from this one), but not worse than before and it's simpler to\nhave 2 arguments in SWIG_STD_VECTOR_INTERNAL() macro rather than 3.","shortMessageHtmlLink":"Don't pass separate REFERENCE to JS macro defining std::vector"}},{"before":null,"after":"47783f068069bf1a29facd67fd37657854806aa4","ref":"refs/heads/fix-specialize-without-primary","pushedAt":"2024-06-23T15:03:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix specialization without primary template\n\nDue to a regression in 817c700 (Template partial specialization\nimprovements, 2023-01-30), specializations of templates without a\nprimary template definition were not handled correctly any more and,\nnotably, resulted in misparsing the injected name inside such\nspecializations.\n\nFix this by handling the nodes with template type \"classforward\" created\nfor the template declaration in the same way as those created for the\nprimary template definition.\n\nAdd a trivial test case which works (again) now but doesn't work without\nthe fix in this commit.\n\nCloses #2934.","shortMessageHtmlLink":"Fix specialization without primary template"}},{"before":null,"after":"b54b0d941704db29d5dbc4940e58acebff236bf5","ref":"refs/heads/autoconf-boost","pushedAt":"2024-06-20T23:13:24.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Reset BOOST_CPPFLAGS in AX_BOOST_BASE() itself\n\nChange the macro itself to avoid leaving junk values in BOOST_CPPFLAGS\nand BOOST_LDFLAGS if Boost was not detected instead of working around\nthis in our configure.\n\nThis uses the proposed, but not yet accepted, change to the upstream,\nsee https://github.com/autoconf-archive/autoconf-archive/pull/302","shortMessageHtmlLink":"Reset BOOST_CPPFLAGS in AX_BOOST_BASE() itself"}},{"before":null,"after":"b27a9b01f1d1f0b3cc6af54d1d5788fa891c475b","ref":"refs/heads/javascript-vector-dedup","pushedAt":"2024-06-20T12:57:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Avoid duplicating std::vector<> declaration for JavaScript\n\nUse a helper macro abstracting the difference between the generic\nversion and the bool specialization of std::vector<> instead of\nduplicating the entire class declaration.\n\nNo real changes, but this will help with future modifications by\nallowing to make them only once instead of twice.","shortMessageHtmlLink":"Avoid duplicating std::vector<> declaration for JavaScript"}},{"before":null,"after":"bf422a84baf0a84ce34b0b44f61ca23fc303cb66","ref":"refs/heads/quiet-test-suite","pushedAt":"2024-06-20T12:07:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Allow suppressing progress messages when running test suite\n\nUse $(ECHO_PROGRESS) instead of the hard-coded \"echo\" to allow setting\nECHO_PROGRESS=: on make command line to suppress the (many hundreds of)\nmessages given when running every unit test.\n\nThis makes it much easier to see any warnings given during the test\nsuite execution.","shortMessageHtmlLink":"Allow suppressing progress messages when running test suite"}},{"before":"bf604357460a406ae3aad58e4fd62ad99e530dfe","after":"792744fec83931a1d8aec5c717b54681d35136f0","ref":"refs/heads/C","pushedAt":"2024-06-16T22:43:04.000Z","pushType":"push","commitsCount":113,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Respect CPPFLAGS when compiling C and C++ code too\n\nNo real changes, just respect the standard variable for consistency.","shortMessageHtmlLink":"Respect CPPFLAGS when compiling C and C++ code too"}},{"before":"f4783c96a84e7164b85b8b53f05cfea8d0523be4","after":"a237171287f92f504ae3f579721c4f3cec42d477","ref":"refs/heads/C-ci-test","pushedAt":"2024-06-16T15:07:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Also disable AppVeyor CI","shortMessageHtmlLink":"Also disable AppVeyor CI"}},{"before":null,"after":"f4783c96a84e7164b85b8b53f05cfea8d0523be4","ref":"refs/heads/C-ci-test","pushedAt":"2024-06-16T15:05:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Remove most of CI jobs, leaving just C","shortMessageHtmlLink":"Remove most of CI jobs, leaving just C"}},{"before":"355b8a243104ba15c85ff15604b2148d195c11ce","after":"6a4987102eecd1f43cb535856462e2f2d7666fa8","ref":"refs/heads/py-nullptr-with-outparam","pushedAt":"2024-05-14T21:16:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix returning null from functions with output parameters in Python\n\nNull pointers returned from functions also using output parameters or C\nstrings typemaps were lost because the generated code didn't distinguish\nbetween Py_None corresponding to them and Py_None indicating the return\nvalue of a \"void\" function.\n\nThis doesn't seem to be easy to solve properly because the function\nreturn type and output parameters typemaps are independent and there is\nno way to customize the behaviour of the latter depending on the former.\n\nSo we do it using a hack involving a global variable which is always 0\nand is passed to SWIG_Python_AppendOutput() from non-void functions, but\nis shadowed by a local variable with the same name set to 1 in the void\nones. This allows us to only discard Py_None if it corresponds to a void\nfunction return value.\n\nThis is obviously ugly, but requires only minimal changes, doesn't\nimpose much extra run-time overhead and is MT-safe (unlike any solution\ninvolving changing global variables).\n\nAlso add a unit test checking for this for Python and for JS, where the\nsame function already worked correctly (unlike in some other languages,\nincluding at least Ruby and PHP).\n\nCloses #2905.","shortMessageHtmlLink":"Fix returning null from functions with output parameters in Python"}},{"before":"6d41c1a8c4be7dd7d384d5f524bb1fb3c8a8a95e","after":"355b8a243104ba15c85ff15604b2148d195c11ce","ref":"refs/heads/py-nullptr-with-outparam","pushedAt":"2024-05-14T19:56:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Fix returning null from functions with output parameters in Python\n\nNull pointers returned from functions also using output parameters or C\nstrings typemaps were lost because the generated code didn't distinguish\nbetween Py_None corresponding to them and Py_None indicating the return\nvalue of a \"void\" function.\n\nThis doesn't seem to be easy to solve properly because the function\nreturn type and output parameters typemaps are independent and there is\nno way to customize the behaviour of the latter depending on the former.\n\nSo we do it using a hack involving a global variable which is always 0\nand is passed to SWIG_Python_AppendOutput() from non-void functions, but\nis shadowed by a local variable with the same name set to 1 in the void\nones. This allows us to only discard Py_None if it corresponds to a void\nfunction return value.\n\nThis is obviously ugly, but requires only minimal changes, doesn't\nimpose much extra run-time overhead and is MT-safe (unlike any solution\ninvolving global variables).\n\nAlso add a unit test checking for this for Python and for JS, where the\nsame function already worked correctly (unlike in some other languages,\nincluding at least Ruby and PHP).\n\nCloses #2905.","shortMessageHtmlLink":"Fix returning null from functions with output parameters in Python"}},{"before":null,"after":"6d41c1a8c4be7dd7d384d5f524bb1fb3c8a8a95e","ref":"refs/heads/py-nullptr-with-outparam","pushedAt":"2024-05-14T19:55:45.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Python: fix returning null from functions with output parameters\n\nNull pointers returned from functions also using output parameters or C\nstrings typemaps were lost because the generated code didn't distinguish\nbetween Py_None corresponding to them and Py_None indicating the return\nvalue of a \"void\" function.\n\nThis doesn't seem to be easy to solve properly because the function\nreturn type and output parameters typemaps are independent and there is\nno way to customize the behaviour of the latter depending on the former.\n\nSo we do it using a hack involving a global variable which is always 0\nand is passed to SWIG_Python_AppendOutput() from non-void functions, but\nis shadowed by a local variable with the same name set to 1 in the void\nones. This allows us to only discard Py_None if it corresponds to a void\nfunction return value.\n\nThis is obviously ugly, but requires only minimal changes, doesn't\nimpose much extra run-time overhead and is MT-safe (unlike any solution\ninvolving global variables).\n\nAlso add a unit test checking for this for Python and for JS, where the\nsame function already worked correctly (unlike in some other languages,\nincluding at least Ruby and PHP).","shortMessageHtmlLink":"Python: fix returning null from functions with output parameters"}},{"before":"7ddd9da1306b7f394c25db8080d9de14ae8b9c58","after":"b6f7460fda0c754aacefc822759c1d356da9d159","ref":"refs/heads/master","pushedAt":"2024-05-14T19:55:45.000Z","pushType":"push","commitsCount":1852,"pusher":{"login":"vadz","name":"VZ","path":"/vadz","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/146917?s=80&v=4"},"commit":{"message":"Pin Ruby 3.1 testing to 3.1.4\n\nPin to working version while under investigation as import_fragments testcase fails.\nSee issue #2800\n\nSeems to be same crash as Ruby 3.2.5, see fab27c67ccb66f40001048a6ed5c2927d57b13dc","shortMessageHtmlLink":"Pin Ruby 3.1 testing to 3.1.4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEt3tEyQA","startCursor":null,"endCursor":null}},"title":"Activity ยท vadz/swig"}