{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":275712185,"defaultBranch":"master","name":"Storm","ownerLogin":"WillBAnders","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-06-29T02:32:58.000Z","ownerAvatar":"https://github.com/avatars/u/35618116?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1652381414.311875","currentOid":""},"activityList":{"items":[{"before":"bc52521764e4e32f6609d45048c22e303cc37ac5","after":"fa4aaf22403d4651180aeb68e711d89a40bebded","ref":"refs/heads/master","pushedAt":"2023-12-09T20:27:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"WillBAnders","name":"Blake Anderson","path":"/WillBAnders","primaryAvatarUrl":"https://github.com/avatars/u/35618116?s=80&v=4"},"commit":{"message":"Fix (partially) field order with class-based constructor serialization\n\nConstructor serialization depends on parameters matching the order of\ndeclared fields. This fixes fields being stored in a HashMap instead of\na LinkedHashMap, effectively loosing their order.\n\nHowever, Class#getFields is not documented to return fields in a defined\norder - rather, the order is implementation-dependent. In practice this\nis often the order declared, but this is not guaranteed. A long-term\nsolution may consider using parameter names to determine order (which\nalso allows multiple constructors), however parameter names are only\navailable if compiled with the -parameters option.","shortMessageHtmlLink":"Fix (partially) field order with class-based constructor serialization"}},{"before":"5a9aff790595c98812a192590da1cb8694a10b01","after":"bc52521764e4e32f6609d45048c22e303cc37ac5","ref":"refs/heads/master","pushedAt":"2023-12-03T21:30:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"WillBAnders","name":"Blake Anderson","path":"/WillBAnders","primaryAvatarUrl":"https://github.com/avatars/u/35618116?s=80&v=4"},"commit":{"message":"Fix/improve error ranges for whitespace-only input\n\nInput that contains only whitespace is invalid in JSON (while valid in\nStorm; being an empty object). The calculations of error ranges in these\ncases has been fixed to avoid an IndexOutOfBoundsException when checking\ntokens.has(-1). For empty input (or EOL), the diagnostic message will\ninclude at least one '^' marker to show where the character should be.\n\nIn retrospect, there's a lot of cases where the ideal error range\ndepends on the specific error, such as missing commas (the best location\nis probably the next character rather than next token).","shortMessageHtmlLink":"Fix/improve error ranges for whitespace-only input"}},{"before":"b52e6e2986260b3e80f556091818815258b0e73e","after":"5a9aff790595c98812a192590da1cb8694a10b01","ref":"refs/heads/master","pushedAt":"2023-12-03T21:26:33.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"WillBAnders","name":"Blake Anderson","path":"/WillBAnders","primaryAvatarUrl":"https://github.com/avatars/u/35618116?s=80&v=4"},"commit":{"message":"Ensure chars.newline() is called after newlines in whitespace\n\nUnlike Storm, JSON skips over whitespace completely. However, for error\nhandling it is still necessary to call chars.newline() to advance the\nline/column numbers used for diagnostic error messages. This also has a\nminor fix for the lexIdentifier peek to remove underscores.","shortMessageHtmlLink":"Ensure chars.newline() is called after newlines in whitespace"}},{"before":"5a9aff790595c98812a192590da1cb8694a10b01","after":"b52e6e2986260b3e80f556091818815258b0e73e","ref":"refs/heads/master","pushedAt":"2023-12-03T20:58:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"WillBAnders","name":"Blake Anderson","path":"/WillBAnders","primaryAvatarUrl":"https://github.com/avatars/u/35618116?s=80&v=4"},"commit":{"message":"Fix/improve error ranges for whitespace-only input\n\nInput that contains only whitespace is invalid in JSON (while valid in\nStorm; being an empty object). The calculations of error ranges in these\ncases has been fixed to avoid an IndexOutOfBoundsException when checking\ntokens.has(-1). For empty input (or EOL), the diagnostic message will\ninclude at least one '^' marker to show where the character should be.\n\nIn retrospect, there's a lot of cases where the ideal error range\ndepends on the specific error, such as missing commas (the best location\nis probably the next character rather than next token).","shortMessageHtmlLink":"Fix/improve error ranges for whitespace-only input"}},{"before":"8c3d1c8a978f021ec2bc1d20b2e221e0ad23d503","after":"5a9aff790595c98812a192590da1cb8694a10b01","ref":"refs/heads/master","pushedAt":"2023-12-03T19:37:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"WillBAnders","name":"Blake Anderson","path":"/WillBAnders","primaryAvatarUrl":"https://github.com/avatars/u/35618116?s=80&v=4"},"commit":{"message":"Ensure chars.newline() is called after newlines in whitespace\n\nUnlike Storm, JSON skips over whitespace completely. However, for error\nhandling it is still necessary to call chars.newline() to advance the\nline/column numbers used for diagnostic error messages. This also has a\nminor fix for the lexIdentifier peek to remove underscores.","shortMessageHtmlLink":"Ensure chars.newline() is called after newlines in whitespace"}},{"before":"f6c5261e5558abe3017cc3bb61c910d81f75a597","after":"8c3d1c8a978f021ec2bc1d20b2e221e0ad23d503","ref":"refs/heads/master","pushedAt":"2023-12-03T08:34:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"WillBAnders","name":"Blake Anderson","path":"/WillBAnders","primaryAvatarUrl":"https://github.com/avatars/u/35618116?s=80&v=4"},"commit":{"message":"Replace Matcher.replaceAll with appendReplacement (Java 8)\n\nMatcher.replaceAll is a method added in Java 9 and is thus not available\nin Java 8 (which is what Storm is currently built for). While updating\nversions is also an option, that's a larger investment that needs to be\nconsidered a bit more beforehand.","shortMessageHtmlLink":"Replace Matcher.replaceAll with appendReplacement (Java 8)"}},{"before":"1009ea6b0d7b31bbb18e6cf0533d8d6dbd23fa72","after":"f6c5261e5558abe3017cc3bb61c910d81f75a597","ref":"refs/heads/master","pushedAt":"2023-12-03T06:50:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"WillBAnders","name":"Blake Anderson","path":"/WillBAnders","primaryAvatarUrl":"https://github.com/avatars/u/35618116?s=80&v=4"},"commit":{"message":"Add JSON format support (following json.org specification)\n\nThis adds JSON support to allow using Storm for some other applications\ninvolving JSON files. This parser follows the json.org specification, or\nat least intends to. Some notable callouts on ambiguous or\nimplementation-dependent features:\n\n - Duplicate object keys are considered an error. This is an\n implementation-defined decision which is more restrictive to match\n Storm's design philosophy. In the future, format options may be a way\n to support this (e.g. overwrite previous values).\n - DEL (0x7F) is considered a control character. The json.org page does\n not enumerate control characters, so we follow Unicode's category via\n the \\p{Cntrl} class as used in regexes.\n - Resource limitations (e.g. memory/stack size) are not addressed. It\n is possible for VERY large numbers to be invalid even with BigDecimal\n or too much nesting to cause a StackOverflowException. In the future,\n it may be worth addressing this for safer parsing of untrusted input.\n\nAdditionally, a few other notes for Storm specifically:\n\n - Comments are not supported - attempting to reserialize a Node with\n comments will throw an exception. In the future, format options may\n be a way to support this (e.g. JSON5 compatibility).\n - Characters are not supported - attempting to reserialize a Node with\n characters with throw an exception. In the future, format options may\n be a way to support this (e.g. convert to a string), however this\n introduces risks with data conversion.\n - A digit-only number (no decimal, no exponent) is considered to be of\n type INTEGER to match Storm's design philosophy. This does not affect\n JSON compatibility (per se) but rather interacting with JSON within\n Storm. Users can define a NUMBER type to be an INTEGER/DECIMAL union\n if needed (which may be added to Storm at some point).","shortMessageHtmlLink":"Add JSON format support (following json.org specification)"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADxjvonAA","startCursor":null,"endCursor":null}},"title":"Activity ยท WillBAnders/Storm"}