{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":80573145,"defaultBranch":"main","name":"libfsm","ownerLogin":"katef","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-01-31T23:31:36.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1371085?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717784204.0","currentOid":""},"activityList":{"items":[{"before":"2b4821e7e1933e06818c1d9b154162c981b5a98e","after":"ed4709c74e55590b5c25943aabb3dede39308447","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-12T09:42:54.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"No need for the tri-state enum here.\n\nI don't see any reason callers of fsm_endid_get() would want to fetch into a fixed-size buffer of fewer elements than the number of endids an end state has. In all cases the caller can fsm_endid_count() to find out.","shortMessageHtmlLink":"No need for the tri-state enum here."}},{"before":"f2852a94ad742a543cee5709fb8219990646efb1","after":"2b4821e7e1933e06818c1d9b154162c981b5a98e","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-11T23:45:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Printing for endids.","shortMessageHtmlLink":"Printing for endids."}},{"before":"26b9d25333193a3ee23a67063d24d5352c33e4da","after":"f2852a94ad742a543cee5709fb8219990646efb1","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-11T19:01:11.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Printing for endids.","shortMessageHtmlLink":"Printing for endids."}},{"before":"de0822b82d9adab7832cdfe1f191522c83070620","after":"26b9d25333193a3ee23a67063d24d5352c33e4da","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-11T18:06:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Printing for endids.\n\nThis is never actually reached, because fsm_collate() doesn't handle end IDs.","shortMessageHtmlLink":"Printing for endids."}},{"before":"ebdbbbd6b2fb5a9436f0e9538c1940a053223d3b","after":"de0822b82d9adab7832cdfe1f191522c83070620","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-11T14:43:23.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Printing for endids.\n\nThis is never actually reached, because fsm_collate() doesn't handle end IDs.","shortMessageHtmlLink":"Printing for endids."}},{"before":"1d30a1250ee44fa7dc802065c6374e42c415932b","after":"ebdbbbd6b2fb5a9436f0e9538c1940a053223d3b","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-11T07:25:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Tests for .fsm syntax.\n\nThe file format is complex enough that I want to cover these explicitly now, rather than relying on coverage through other tests.","shortMessageHtmlLink":"Tests for .fsm syntax."}},{"before":"0447463aabb9f8c7e90f33df40fef0afd47ca19a","after":"1d30a1250ee44fa7dc802065c6374e42c415932b","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-11T06:40:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Bugfix for argv handling for fsm_exec cli usage.\n\nTwo things here:\n\nFirstly I've reworked all this stuff such that we handle filenames, and then any remaining arguments are used to match with fsm_exec.\n\nThis is what I'd originally intended, but I think it got lost at some point, probably when introducing operators with arity 2.\n\nSecondly matching text with fsm_exec now runs regarless of the operation, not just on OP_IDENTITY. I see no reason to limit that.","shortMessageHtmlLink":"Bugfix for argv handling for fsm_exec cli usage."}},{"before":"9ce1fb0210784adfea93a3a99e91737e10ee94e4","after":"0447463aabb9f8c7e90f33df40fef0afd47ca19a","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-11T05:49:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Allow an empty list of end-ids.","shortMessageHtmlLink":"Allow an empty list of end-ids."}},{"before":"e009aa82422768358407e03b2a1ac4ffc7cf93cc","after":"9ce1fb0210784adfea93a3a99e91737e10ee94e4","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-10T19:46:01.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Missing error handling for the initial token.","shortMessageHtmlLink":"Missing error handling for the initial token."}},{"before":"b71c09d320d443bede708632d0dc75903c86eec1","after":"e009aa82422768358407e03b2a1ac4ffc7cf93cc","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-10T08:46:22.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Add syntax for endids in .fsm format.\n\nThese are optional.\n\nI'd expected this to be per state at file scope, but I don't like that the syntax would then allow attempting to attach an id to a non-accepting state. Since we have a block for `end:` already, adding the end ids here means they can't be mixed up.\n\nThis looks like:\n```\n; ./build/bin/re -r pcre -bpl fsm 'ab?c' 'abc*'\n0 -> 1 \"a\"; # e.g. \"a\"\n1 -> 2 \"b\"; # e.g. \"ab\"\n1 -> 3 \"c\"; # e.g. \"ac\"\n2 -> 4 \"c\"; # e.g. \"abc\"\n4 -> 5 \"c\"; # e.g. \"abcc\"\n5 -> 5 \"c\"; # e.g. \"abcc\"\n\nstart: 0;\nend: 2 = [0], 3 = [0], 4 = [0, 1], 5 = [0];\n```","shortMessageHtmlLink":"Add syntax for endids in .fsm format."}},{"before":null,"after":"b71c09d320d443bede708632d0dc75903c86eec1","ref":"refs/heads/kate/endleaf-rejiggle","pushedAt":"2024-06-07T18:16:44.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Return a set of endids, rather than the state id.","shortMessageHtmlLink":"Return a set of endids, rather than the state id."}},{"before":"d2fd0890ef02029e8527f57c94b670ce2ec2841f","after":"bdb5dd0bef34f345c1fa1a8bc106e8bd8ef2aa2f","ref":"refs/heads/kate/rx","pushedAt":"2024-06-07T13:04:10.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Simplification, deal with -n earlier.","shortMessageHtmlLink":"Simplification, deal with -n earlier."}},{"before":"ad3d3fa4d4a5a79503796abcf7d10bd3c1e4ec64","after":"d2fd0890ef02029e8527f57c94b670ce2ec2841f","ref":"refs/heads/kate/rx","pushedAt":"2024-06-07T00:49:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Allocate and duplicate for \\0-terminated patterns, rather than pointing at \\n-terminated patterns in-situ. This is just so much less complicated.","shortMessageHtmlLink":"Allocate and duplicate for \\0-terminated patterns, rather than pointi…"}},{"before":"26d2b80b1130492f63a22af5140e4e4083597ccd","after":"ad3d3fa4d4a5a79503796abcf7d10bd3c1e4ec64","ref":"refs/heads/kate/rx","pushedAt":"2024-06-06T23:57:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Clarification, resolving a few TODOs, smaller CLI options etc.","shortMessageHtmlLink":"Clarification, resolving a few TODOs, smaller CLI options etc."}},{"before":"46edc672df806212ac96cb3ed1c288c8f1eb68b8","after":"26d2b80b1130492f63a22af5140e4e4083597ccd","ref":"refs/heads/kate/rx","pushedAt":"2024-05-31T16:30:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Tidying up.","shortMessageHtmlLink":"Tidying up."}},{"before":"8ec1f3ab6f10d56c3538c094d7e54cd85bee361f","after":"46edc672df806212ac96cb3ed1c288c8f1eb68b8","ref":"refs/heads/kate/rx","pushedAt":"2024-05-31T15:40:01.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"xstrndup()","shortMessageHtmlLink":"xstrndup()"}},{"before":"825a6218314c1afcf7aa63267ca070a37e80bf4b","after":null,"ref":"refs/heads/kate/xstrndup","pushedAt":"2024-05-31T15:38:08.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"}},{"before":"e6ba81b6f4618427187b4ec4a68f99928ef1a3e5","after":"2483417ec80bf62f45ddd9d864405677917d06cd","ref":"refs/heads/main","pushedAt":"2024-05-31T15:38:03.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Merge pull request #476 from katef/kate/xstrndup\n\nAdd xstrndup","shortMessageHtmlLink":"Merge pull request #476 from katef/kate/xstrndup"}},{"before":"60a8f66fd18c98d9bd806cd41f77beda6d584152","after":"825a6218314c1afcf7aa63267ca070a37e80bf4b","ref":"refs/heads/kate/xstrndup","pushedAt":"2024-05-31T15:21:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"No need to depend on POSIX here.","shortMessageHtmlLink":"No need to depend on POSIX here."}},{"before":"a3fb7d7dc02f481ddade1d88f2a2dd5bbb344f4e","after":null,"ref":"refs/heads/sv/vmc-codegen-opaque-param-and-warning","pushedAt":"2024-05-31T15:15:38.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"}},{"before":"65d8624e0dc45a15be72b5da9b2ee5242aad73f1","after":"e6ba81b6f4618427187b4ec4a68f99928ef1a3e5","ref":"refs/heads/main","pushedAt":"2024-05-31T15:15:34.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Merge pull request #475 from katef/sv/vmc-codegen-opaque-param-and-warning\n\nAdd `void* opaque` to vmc codegen too, disable unused warning.","shortMessageHtmlLink":"Merge pull request #475 from katef/sv/vmc-codegen-opaque-param-and-wa…"}},{"before":"96c59a46d66685a235b34c4d77c239caead2227b","after":"60a8f66fd18c98d9bd806cd41f77beda6d584152","ref":"refs/heads/kate/xstrndup","pushedAt":"2024-05-31T15:09:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"No need to depend on POSIX here.","shortMessageHtmlLink":"No need to depend on POSIX here."}},{"before":null,"after":"a3fb7d7dc02f481ddade1d88f2a2dd5bbb344f4e","ref":"refs/heads/sv/vmc-codegen-opaque-param-and-warning","pushedAt":"2024-05-31T14:59:04.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"silentbicycle","name":"Scott Vokes","path":"/silentbicycle","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/217280?s=80&v=4"},"commit":{"message":"Add `void* opaque` to vmc codegen too, disable unused warning.\n\nThis is a follow-up to #465:\n\n- Also add the extra `void *opaque` to vmc's codegen.\n\n- Add a `(void)` cast to suppress warnings if the extra opaque\n void pointer isn't used by the generated code.","shortMessageHtmlLink":"Add void* opaque to vmc codegen too, disable unused warning."}},{"before":null,"after":"96c59a46d66685a235b34c4d77c239caead2227b","ref":"refs/heads/kate/xstrndup","pushedAt":"2024-05-31T14:53:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Normalization; all x*() xalloc.h interfaces exit on error.\n\nThere's no need to have xstrdup() behave differently here, it's just confusing.","shortMessageHtmlLink":"Normalization; all x*() xalloc.h interfaces exit on error."}},{"before":"748b7afc934164fa5b0e2e3aaf9ead198a708901","after":null,"ref":"refs/heads/kate/fsm_new_statealloc","pushedAt":"2024-05-30T16:26:08.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"}},{"before":"79f111c7bc385193d981dcb4f100a3d8dcf130c9","after":"8ec1f3ab6f10d56c3538c094d7e54cd85bee361f","ref":"refs/heads/kate/rx","pushedAt":"2024-05-30T16:26:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Rework categorisation for (hopefully) clearer outputs and verbose messages.","shortMessageHtmlLink":"Rework categorisation for (hopefully) clearer outputs and verbose mes…"}},{"before":"1732de7cc8b779b42d4fcc3f1a7c8bf3fd7b78d0","after":"65d8624e0dc45a15be72b5da9b2ee5242aad73f1","ref":"refs/heads/main","pushedAt":"2024-05-30T16:25:32.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Merge pull request #474 from katef/kate/fsm_new_statealloc\n\nAdd fsm_new_statealloc()","shortMessageHtmlLink":"Merge pull request #474 from katef/kate/fsm_new_statealloc"}},{"before":"7e244e79cf23db8d27e21bf765ec5051e3a39a50","after":"79f111c7bc385193d981dcb4f100a3d8dcf130c9","ref":"refs/heads/kate/rx","pushedAt":"2024-05-30T16:21:01.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Rework categorisation for (hopefully) clearer outputs and verbose messages.","shortMessageHtmlLink":"Rework categorisation for (hopefully) clearer outputs and verbose mes…"}},{"before":"738cfea2f112295fbbe1ffd7508e3a9f7210b00c","after":"7e244e79cf23db8d27e21bf765ec5051e3a39a50","ref":"refs/heads/kate/rx","pushedAt":"2024-05-30T16:01:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Rework categorisation for (hopefully) clearer outputs and verbose messages.","shortMessageHtmlLink":"Rework categorisation for (hopefully) clearer outputs and verbose mes…"}},{"before":"762d328975c54f8a57d9b08d6bd0e7ffc32ea646","after":"748b7afc934164fa5b0e2e3aaf9ead198a708901","ref":"refs/heads/kate/fsm_new_statealloc","pushedAt":"2024-05-30T16:00:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"katef","name":"Katherine","path":"/katef","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1371085?s=80&v=4"},"commit":{"message":"Add fsm_new_statealloc(), to pre-allocate to a known number of states.","shortMessageHtmlLink":"Add fsm_new_statealloc(), to pre-allocate to a known number of states."}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEYyELmAA","startCursor":null,"endCursor":null}},"title":"Activity · katef/libfsm"}