{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":732193031,"defaultBranch":"main","name":"wak","ownerLogin":"raygard","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-12-15T22:10:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/24783736?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1725035991.0","currentOid":""},"activityList":{"items":[{"before":"7b0da534d2230e50627ca754df4b100d0c4119e4","after":"76614045dd4279cc86bf9988bbe73e3d37aa4a48","ref":"refs/heads/main","pushedAt":"2024-09-09T02:18:18.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Update awk.test\n\nAdd tests for last several commits","shortMessageHtmlLink":"Update awk.test"}},{"before":"b5abca70b167173913f8e1030071e61bce70b4f0","after":"7b0da534d2230e50627ca754df4b100d0c4119e4","ref":"refs/heads/main","pushedAt":"2024-08-30T03:04:30.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Mod getrec_f() to permit null RS=\"()\"\n\nAn empty RS string (RS=\"\") is special and causes awk to enter multiline record\nmode. But a null RS (e.g. RS=\"()\") matches an empty string at the beginning of\nthe file, and cannot match any separator string, and caused an infinite loop of\noutput. Other awks (except busybox awk, which has the same bug, and mawk which\ngives an error on that regex) treat it as not matching anything (same as\nRS=\"^$), so entire input becomes a single record (../cmit_ggdb). Here we adopt the same\npolicy.\nAlso added CHANGELOG.md and updated README.md.","shortMessageHtmlLink":"Mod getrec_f() to permit null RS=\"()\""}},{"before":"647ca87801fba825eb4580f017635258a7fba5eb","after":"b5abca70b167173913f8e1030071e61bce70b4f0","ref":"refs/heads/main","pushedAt":"2024-08-28T03:07:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Fix nextfile; add tests\n\nThe nextfile statement was failing because it left unprocessed input in the\nrecord buffer from the current file. Mod to reset the buffer so it will get\ndata from the next file immediately. Add a test for the nextfile fix and also\nfor the preceding commit that fixed the 'getline var' bug (not setting it as a\nnumeric string if needed).","shortMessageHtmlLink":"Fix nextfile; add tests"}},{"before":"d83b3621515f85c4c8de8d95055e6ee4fcdbc22b","after":"647ca87801fba825eb4580f017635258a7fba5eb","ref":"refs/heads/main","pushedAt":"2024-05-15T01:58:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Fix 'getline var' bug\n\n'getline var' was not setting var as numeric string when needed. Found when running https://github.com/patsie75/awk-mandelbrot/raw/master/mandelbrot.awk","shortMessageHtmlLink":"Fix 'getline var' bug"}},{"before":"4e0c0a03c11070b60bf943d184ad6b496b91e277","after":"d83b3621515f85c4c8de8d95055e6ee4fcdbc22b","ref":"refs/heads/main","pushedAt":"2024-05-07T23:54:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Update awk.test\n\nFix 64 bit rshift test; remove trailing spaces; a few other tweaks","shortMessageHtmlLink":"Update awk.test"}},{"before":"1efada55877378fc3e32d18870549895eaaa4e9c","after":"4e0c0a03c11070b60bf943d184ad6b496b91e277","ref":"refs/heads/main","pushedAt":"2024-05-06T16:23:53.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"clean up pass on run.c\n\nInline set_string(); rename val_to_str to to_str and val_to_num to to_num; replace str_to_num with atof; other cleanups","shortMessageHtmlLink":"clean up pass on run.c"}},{"before":"7eefc4a9ce6e4d7a14a61820b67751b238b1d4b0","after":"1efada55877378fc3e32d18870549895eaaa4e9c","ref":"refs/heads/main","pushedAt":"2024-04-18T00:03:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Improve printf/sprintf() format handling\n\nwith research help from @oliverkwebb","shortMessageHtmlLink":"Improve printf/sprintf() format handling"}},{"before":"d81ae0734d728209fc4d4385040541b204ecb652","after":"7eefc4a9ce6e4d7a14a61820b67751b238b1d4b0","ref":"refs/heads/main","pushedAt":"2024-04-13T20:07:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Implement \\u escape for Unicode in scan.c\n\nAuthored by Oliver Webb, thanks!\n\nCo-Authored-By: Oliver Webb ","shortMessageHtmlLink":"Implement \\u escape for Unicode in scan.c"}},{"before":"acf69f13748e1429401b83d903a4edc9b4ef0fd8","after":"d81ae0734d728209fc4d4385040541b204ecb652","ref":"refs/heads/main","pushedAt":"2024-04-13T15:55:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Implement -b in bytesinutf8() (fixes substr())\n\nCredit to Oliver Webb, thanks!\nAlso fixes mono.c that didn't get updated in prev. commit\n\nCo-Authored-By: Oliver Webb ","shortMessageHtmlLink":"Implement -b in bytesinutf8() (fixes substr())"}},{"before":"2e94cd3de8fb4d091ca19bb429cb4b2cb9d6a80e","after":"acf69f13748e1429401b83d903a4edc9b4ef0fd8","ref":"refs/heads/main","pushedAt":"2024-04-12T23:42:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Group Rob Landley's code together; add his copyright\n\nNeed a few functions from Landley's toybox when making standalone wak versions","shortMessageHtmlLink":"Group Rob Landley's code together; add his copyright"}},{"before":"b539c8a2bd8a6543248c9819a4fb3a5a1efeded2","after":"2e94cd3de8fb4d091ca19bb429cb4b2cb9d6a80e","ref":"refs/heads/main","pushedAt":"2024-04-12T23:15:37.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Mod UTF-8 support to obviate most dynamic allocation\n\nMostly need to count codepoints in UTF-8 strings, so no need to allocate / free space for converted wide chars etc. Also allow for expansion in toupper() / tolower()","shortMessageHtmlLink":"Mod UTF-8 support to obviate most dynamic allocation"}},{"before":"938a43eff1ca9f252774bbdd727b4c46a91f5a5e","after":"b539c8a2bd8a6543248c9819a4fb3a5a1efeded2","ref":"refs/heads/main","pushedAt":"2024-04-12T23:08:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Merge rx_escape_str() into escape_str(), remove new_zstring_cap()\n\nCleanup to remove/combine code\n\nCo-Authored-By: Oliver Webb ","shortMessageHtmlLink":"Merge rx_escape_str() into escape_str(), remove new_zstring_cap()"}},{"before":"72a6839cd7ea89fbb301d5b0f9c1b66a423ee7c7","after":"938a43eff1ca9f252774bbdd727b4c46a91f5a5e","ref":"refs/heads/main","pushedAt":"2024-04-06T21:54:24.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Move math builtin code into main interp loop\n\nInlined the math builtins into the main interpreter loop (thanks Oliver Webb), updated toybox test file with bitwise ops tests","shortMessageHtmlLink":"Move math builtin code into main interp loop"}},{"before":"dca8c09e9e20581330dd930b0219b07f431f2388","after":"72a6839cd7ea89fbb301d5b0f9c1b66a423ee7c7","ref":"refs/heads/main","pushedAt":"2024-04-01T03:24:08.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Handle array deletions better\n\nHash insert to first vacant *or* first marked-deleted slot","shortMessageHtmlLink":"Handle array deletions better"}},{"before":"1cd4d66ab22409de6781ff6d6b3f76dcde4d45c5","after":"dca8c09e9e20581330dd930b0219b07f431f2388","ref":"refs/heads/main","pushedAt":"2024-03-27T21:37:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Use random() / srandom() for toybox","shortMessageHtmlLink":"Use random() / srandom() for toybox"}},{"before":"7d1843c5dc82656901f967cee24c5a9d7d5c8c29","after":"1cd4d66ab22409de6781ff6d6b3f76dcde4d45c5","ref":"refs/heads/main","pushedAt":"2024-03-27T16:58:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Add toybox awk test file\n\nIncluded original from toybox mailing list 2015: http://lists.landley.net/pipermail/toybox-landley.net/2015-March/015201.html. Had a couple bad tests.","shortMessageHtmlLink":"Add toybox awk test file"}},{"before":"7f84ed92f5411c7bdeeb049068cde7abd62740af","after":"7d1843c5dc82656901f967cee24c5a9d7d5c8c29","ref":"refs/heads/main","pushedAt":"2024-03-27T16:52:08.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Make file_or_pipe be 1/0 not 'f'/'p'","shortMessageHtmlLink":"Make file_or_pipe be 1/0 not 'f'/'p'"}},{"before":"79f345a4a8ac8b2dc7468c60a9c19e5998889c68","after":"7f84ed92f5411c7bdeeb049068cde7abd62740af","ref":"refs/heads/main","pushedAt":"2024-02-22T20:22:19.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Allow nul bytes in data (WIP)\n\nAllow nul bytes in data files (not in source code yet). Still cannot have nul in multiline record (RS=\"\") data. Work in progress.","shortMessageHtmlLink":"Allow nul bytes in data (WIP)"}},{"before":"0acf22d7b292cf70889dc05491151f14742e4427","after":"79f345a4a8ac8b2dc7468c60a9c19e5998889c68","ref":"refs/heads/main","pushedAt":"2024-02-15T18:53:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Fix memory leak in assign_global()\n\nawk -v n=x 'BEGIN{f(n)};function f(n){}' caused a mem leak; see comment in assign_global(). Also tweak push_val(), zlist_append_zvalue(); change an exit(42) to exit(2).","shortMessageHtmlLink":"Fix memory leak in assign_global()"}},{"before":"c1f86a1103ec98348970ee595a1008ac6c5207a6","after":"0acf22d7b292cf70889dc05491151f14742e4427","ref":"refs/heads/main","pushedAt":"2024-02-03T23:10:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Fix previous fix for comma flag in printf\n\nFixed (again) the regex for printf format. \"-\" needs to go first or else be escaped (to not be a range indicator). Moved \"'\" to end of \"flags\" bracket expression.","shortMessageHtmlLink":"Fix previous fix for comma flag in printf"}},{"before":"50531a1043ef5c4fc13d70df6781ee55accec176","after":"c1f86a1103ec98348970ee595a1008ac6c5207a6","ref":"refs/heads/main","pushedAt":"2024-02-03T22:03:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"write \\n at end of error_exit(); adjust error messages\n\nMatch toybox error_exit() (puts newline at end); fix up error messages","shortMessageHtmlLink":"write \\n at end of error_exit(); adjust error messages"}},{"before":"487a510664cebcb199c37803f62bf9455da0f839","after":"50531a1043ef5c4fc13d70df6781ee55accec176","ref":"refs/heads/main","pushedAt":"2024-02-03T20:46:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Allow comma flag in printf; fix ENVIRON init code\n\nAllow \"'\" in printf format for comma thousands separators; make ENVIRON init not modify program environment","shortMessageHtmlLink":"Allow comma flag in printf; fix ENVIRON init code"}},{"before":"4cbce995cba31b08390ce471044b315fe0dcbbf2","after":"487a510664cebcb199c37803f62bf9455da0f839","ref":"refs/heads/main","pushedAt":"2024-02-02T17:08:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Update README.md","shortMessageHtmlLink":"Update README.md"}},{"before":"121f498cc34f5ff3df8aa0503675c5c5e3b913be","after":"4cbce995cba31b08390ce471044b315fe0dcbbf2","ref":"refs/heads/main","pushedAt":"2024-02-01T22:54:24.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Update Makefile\n\nMod Makefile to keep mono.c and toybox/awk.c after 'make clean'; add those sources to repo","shortMessageHtmlLink":"Update Makefile"}},{"before":"3e9b7bba401d1bd4eb4087c72261b88d12e7c715","after":"121f498cc34f5ff3df8aa0503675c5c5e3b913be","ref":"refs/heads/main","pushedAt":"2024-01-29T21:43:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"bug fixes and cleanup\n\nfixed some problems with maybemap objects; allow newlines before 'while' in 'do{}while()'; some code cleanup","shortMessageHtmlLink":"bug fixes and cleanup"}},{"before":"a1251cc8686f18eada7390d58db5de74cd1ae146","after":"3e9b7bba401d1bd4eb4087c72261b88d12e7c715","ref":"refs/heads/main","pushedAt":"2024-01-27T20:11:56.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Close files at end of run\n\nClose files at end of run, except stdin stdout stderr","shortMessageHtmlLink":"Close files at end of run"}},{"before":"7f3c4ccae48b8b9a6f89c27d6d60cf01cb95fdba","after":"a1251cc8686f18eada7390d58db5de74cd1ae146","ref":"refs/heads/main","pushedAt":"2024-01-08T19:07:52.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Minor code cleanup\n\nFixed a few comments; tweaked code in print_stmt() for compiling output modes.","shortMessageHtmlLink":"Minor code cleanup"}},{"before":"803a12b71234a0dd45e9a56c464793b0893aa11f","after":"7f3c4ccae48b8b9a6f89c27d6d60cf01cb95fdba","ref":"refs/heads/main","pushedAt":"2024-01-03T22:09:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Change option arg handling\n\nChanged arrays of -f and -v options into linked lists (arg_list) as used in toybox","shortMessageHtmlLink":"Change option arg handling"}},{"before":"442aa900c18197212d8a80bbd55dba0e7bfc2d3a","after":"803a12b71234a0dd45e9a56c464793b0893aa11f","ref":"refs/heads/main","pushedAt":"2024-01-03T22:04:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Update file handling\n\nChange zfile array to linked list to reduce global space and remove limit on open files. Also format tweaks and minor fix to Makefile","shortMessageHtmlLink":"Update file handling"}},{"before":"750a622573df8424717086a20822c14be04ed601","after":"442aa900c18197212d8a80bbd55dba0e7bfc2d3a","ref":"refs/heads/main","pushedAt":"2023-12-20T20:42:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raygard","name":"Ray Gardner","path":"/raygard","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/24783736?s=80&v=4"},"commit":{"message":"Code format cleanup\n\nRemove extra spaces, tweak comments, rename an enum.","shortMessageHtmlLink":"Code format cleanup"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wOVQwMjoxODoxOC4wMDAwMDBazwAAAASwZjsm","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0wOVQwMjoxODoxOC4wMDAwMDBazwAAAASwZjsm","endCursor":"Y3Vyc29yOnYyOpK7MjAyMy0xMi0yMFQyMDo0Mjo0OC4wMDAwMDBazwAAAAPPDERL"}},"title":"Activity ยท raygard/wak"}