{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":784551943,"defaultBranch":"main","name":"nocturne","ownerLogin":"composerinteralia","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2024-04-10T04:27:51.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/13696143?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1712723308.0","currentOid":""},"activityList":{"items":[{"before":"5f7ae689a139c9e0251257b8f2b6d0a50373152f","after":"decaea4a96c53e7889fe6a5c0467648be19c301c","ref":"refs/heads/main","pushedAt":"2024-05-28T22:29:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Add support for various charsets/encodings\n\n1. Tell the server what charset we are using (converting from the\n human-friendly encoding option—e.g. 'utf8mb4'—to the corresponding\n enum value—e.g. 45)\n2. Attempt to convert the SQL query to the appropriate Ruby encoding\n for the given charset\n3. Concert each result column to the appropriate Ruby encoding for the\n charset enum value associated with that column","shortMessageHtmlLink":"Add support for various charsets/encodings"}},{"before":"c5232d4a66ecee997c1ab130d59c1a542e0901a3","after":"5f7ae689a139c9e0251257b8f2b6d0a50373152f","ref":"refs/heads/main","pushedAt":"2024-05-20T14:30:57.000Z","pushType":"push","commitsCount":8,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Implement set_server_option command","shortMessageHtmlLink":"Implement set_server_option command"}},{"before":"cba13dd1ce7299c772bbdba2e6fc9cb7379a0dba","after":"c5232d4a66ecee997c1ab130d59c1a542e0901a3","ref":"refs/heads/main","pushedAt":"2024-04-24T01:26:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Support multi-result","shortMessageHtmlLink":"Support multi-result"}},{"before":"fa7d3b7818eca634f9fd27bd7ec052f1e837015e","after":"cba13dd1ce7299c772bbdba2e6fc9cb7379a0dba","ref":"refs/heads/main","pushedAt":"2024-04-23T16:04:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Implement caching_sha2_password auth","shortMessageHtmlLink":"Implement caching_sha2_password auth"}},{"before":"81a48fa7665754878d8d82cf73baf8d698c70224","after":"fa7d3b7818eca634f9fd27bd7ec052f1e837015e","ref":"refs/heads/main","pushedAt":"2024-04-23T15:53:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Implement caching_sha2_password auth","shortMessageHtmlLink":"Implement caching_sha2_password auth"}},{"before":"899110c922281548b22b38ff8bddc8937a9b7690","after":"81a48fa7665754878d8d82cf73baf8d698c70224","ref":"refs/heads/main","pushedAt":"2024-04-23T15:27:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Implement caching_sha2_password auth\n\nNote that this only implements it if the server requests it by default.\nWe don't have any tests for a server that defaults to native, and then a\nuser that auth switches to caching_sha2 (I'm not sure Trilogy supports\nthat yet either). I'll worry about that later.","shortMessageHtmlLink":"Implement caching_sha2_password auth"}},{"before":"9f81d69651bded672f9169f0309c9c17f703fef4","after":"899110c922281548b22b38ff8bddc8937a9b7690","ref":"refs/heads/main","pushedAt":"2024-04-23T15:24:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Implement caching_sha2_password auth\n\nNote that this only implements it if the server requests it by default.\nWe don't have any tests for a server that defaults to native, and then a\nuser that auth switches to caching_sha2 (I'm not sure Trilogy supports\nthat yet either). I'll worry about that later.","shortMessageHtmlLink":"Implement caching_sha2_password auth"}},{"before":"29f158e6d9317735b2d6a2f7e74e12f528209523","after":"9f81d69651bded672f9169f0309c9c17f703fef4","ref":"refs/heads/main","pushedAt":"2024-04-23T15:21:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Implement caching_sha2_password auth\n\nNote that this only implements it if the server requests it by default.\nWe don't have any tests for a server that defaults to native, and then a\nuser that auth switches to caching_sha2 (I'm not sure Trilogy supports\nthat yet either). I'll worry about that later.","shortMessageHtmlLink":"Implement caching_sha2_password auth"}},{"before":"e8b157693f3b767a508726371451cdba8412f0e2","after":"29f158e6d9317735b2d6a2f7e74e12f528209523","ref":"refs/heads/main","pushedAt":"2024-04-23T15:15:51.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Implement caching_sha2_password auth\n\nNote that this only implements it if the server requests it by default.\nWe don't have any tests for a server that defaults to native, and then a\nuser that auth switches to caching_sha2 (I'm not sure Trilogy supports\nthat yet either). I'll worry about that later.","shortMessageHtmlLink":"Implement caching_sha2_password auth"}},{"before":"b713c6093a0a966956134c4f9cab8c8afe0f26bd","after":"e8b157693f3b767a508726371451cdba8412f0e2","ref":"refs/heads/main","pushedAt":"2024-04-23T02:30:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Allow disabling multi-statement","shortMessageHtmlLink":"Allow disabling multi-statement"}},{"before":"8fbf09ecaef2dd0c4289d3145dd5e22d132d98cf","after":"b713c6093a0a966956134c4f9cab8c8afe0f26bd","ref":"refs/heads/main","pushedAt":"2024-04-23T02:21:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Allow connecting to db during handshake\n\nI got the test passing with an extra change_db command, which wasn't\nstrictly correct (I had just hard-coded the capabilities back then so it\nwas easier).","shortMessageHtmlLink":"Allow connecting to db during handshake"}},{"before":"46ab9b76ed2c71286c2a7d7a7add577e8dce6437","after":"8fbf09ecaef2dd0c4289d3145dd5e22d132d98cf","ref":"refs/heads/main","pushedAt":"2024-04-23T02:14:11.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Stop hard-coding capabilities\n\nThis allows adding the found_rows option","shortMessageHtmlLink":"Stop hard-coding capabilities"}},{"before":"6743d303762b039b34cd38ff99e23d260d14b180","after":"46ab9b76ed2c71286c2a7d7a7add577e8dce6437","ref":"refs/heads/main","pushedAt":"2024-04-22T13:58:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Add max_allowed_packet option\n\nConfusingly this is not the same as a MySQL packet—this controls the max\nallowed length of all of the packet payloads combined for a single\ncommand.","shortMessageHtmlLink":"Add max_allowed_packet option"}},{"before":"2796b43cc7934b8325b8e0177a5e276d6c12a1b0","after":"6743d303762b039b34cd38ff99e23d260d14b180","ref":"refs/heads/main","pushedAt":"2024-04-22T03:36:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Replace general write int func with specific ones\n\nNo huge performance win or anything—just makes it more like the reader","shortMessageHtmlLink":"Replace general write int func with specific ones"}},{"before":"d81b4e4f442e782e52fc04a2731bb545d0d70526","after":"2796b43cc7934b8325b8e0177a5e276d6c12a1b0","ref":"refs/heads/main","pushedAt":"2024-04-22T03:20:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Move timeout accessors into a separate module","shortMessageHtmlLink":"Move timeout accessors into a separate module"}},{"before":"773d9aeb739e03b60b2f990eee7854b5ab53c817","after":"d81b4e4f442e782e52fc04a2731bb545d0d70526","ref":"refs/heads/main","pushedAt":"2024-04-22T03:15:28.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Add timeout options","shortMessageHtmlLink":"Add timeout options"}},{"before":"c30ba01645de478f1395879fddf0466e61915748","after":"773d9aeb739e03b60b2f990eee7854b5ab53c817","ref":"refs/heads/main","pushedAt":"2024-04-22T00:57:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Speed up escaping\n\nUsing bytes instead of lots of single-char sub-strings gets this from\n> 20x slower to around < 9x slower than the Trilogy method. Still a long\nway to go, but a lot better than what we had before.","shortMessageHtmlLink":"Speed up escaping"}},{"before":"576041c28ef15b07f52b17e8c47b3f6d8c35e215","after":"c30ba01645de478f1395879fddf0466e61915748","ref":"refs/heads/main","pushedAt":"2024-04-21T15:08:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"List various things that are missing","shortMessageHtmlLink":"List various things that are missing"}},{"before":"4319dc36bdf8d0ff99ab22b089cc31dc2bc4dcee","after":"576041c28ef15b07f52b17e8c47b3f6d8c35e215","ref":"refs/heads/main","pushedAt":"2024-04-21T03:32:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Prevent commands if connection explicitly closed","shortMessageHtmlLink":"Prevent commands if connection explicitly closed"}},{"before":"279489d9a19ce5f7a2c20ad7d6fa23f4cbb4396a","after":"4319dc36bdf8d0ff99ab22b089cc31dc2bc4dcee","ref":"refs/heads/main","pushedAt":"2024-04-21T03:28:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Prevent commands if connection explicitly closed","shortMessageHtmlLink":"Prevent commands if connection explicitly closed"}},{"before":"bc708f520509b6930d8d5fb19ec35a8926657285","after":"279489d9a19ce5f7a2c20ad7d6fa23f4cbb4396a","ref":"refs/heads/main","pushedAt":"2024-04-21T02:27:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Add escape method\n\nHad to start reading the server_status, since that can change the way\nescaping works. Storing the status on the connection object for now,\nsince that gets passed around to all the relevant places.","shortMessageHtmlLink":"Add escape method"}},{"before":"c16af9bf2c909eb78553928acc88c0886cc6d406","after":"bc708f520509b6930d8d5fb19ec35a8926657285","ref":"refs/heads/main","pushedAt":"2024-04-20T16:24:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Allow connection over a unix socket","shortMessageHtmlLink":"Allow connection over a unix socket"}},{"before":"7c3e7ec76e139f1009ac3207cab5b331ca9eeb21","after":"c16af9bf2c909eb78553928acc88c0886cc6d406","ref":"refs/heads/main","pushedAt":"2024-04-20T16:08:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Allow connection over a unix socket","shortMessageHtmlLink":"Allow connection over a unix socket"}},{"before":"511a9f6a667239cde940fc36a1aa9098ae71b380","after":"7c3e7ec76e139f1009ac3207cab5b331ca9eeb21","ref":"refs/heads/main","pushedAt":"2024-04-20T15:47:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Get remaining cast tests passing\n\nSome charset encoding stuff, plus the bigdecimal option (which we\nprobably don't actually want long term, but GitHub needed it)","shortMessageHtmlLink":"Get remaining cast tests passing"}},{"before":"2c93e6f4128dcefd0a659542361c244ff0878de4","after":"511a9f6a667239cde940fc36a1aa9098ae71b380","ref":"refs/heads/main","pushedAt":"2024-04-20T02:37:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Skip a couple test\n\nThese are failing only on MySQL 5.7 and I don't want to figure out why\nright now.","shortMessageHtmlLink":"Skip a couple test"}},{"before":"9a15b196d7acb32749797bee9b3c3eb225d7d3d9","after":"2c93e6f4128dcefd0a659542361c244ff0878de4","ref":"refs/heads/main","pushedAt":"2024-04-20T02:31:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Add a basic ssl upgrade\n\nStill missing all the cert options, but it's got the basics and makes\nsome tests pass.","shortMessageHtmlLink":"Add a basic ssl upgrade"}},{"before":"340ecf9976e917c4a4b53bfa0402b12de49b3025","after":"9a15b196d7acb32749797bee9b3c3eb225d7d3d9","ref":"refs/heads/main","pushedAt":"2024-04-20T02:28:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Add a basic ssl upgrade\n\nStill missing all the cert options, but it's got the basics and makes\nsome tests pass.","shortMessageHtmlLink":"Add a basic ssl upgrade"}},{"before":"2799490afdec06d73d993f4d0064d5118ff7f6d7","after":"340ecf9976e917c4a4b53bfa0402b12de49b3025","ref":"refs/heads/main","pushedAt":"2024-04-19T14:38:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Init socket inside connection\n\nThe top-level Nocturne class doesn't really need direct access to the\nsocket class. I was just using it to call close, which is easy enough to\ndelegate.\n\nHopefully this will make it slightly easier to upgrade to an ssl socket\ntoo.","shortMessageHtmlLink":"Init socket inside connection"}},{"before":"2649ecd68150d6dc9810b351fddfc7d2439e3dbb","after":"2799490afdec06d73d993f4d0064d5118ff7f6d7","ref":"refs/heads/main","pushedAt":"2024-04-19T01:24:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Handle writing packet continuations\n\nNow we can make really big queries in both directions, and comment in\nsome parts of our max packet tests (although I haven't set up the actual\nmax packet option yet)","shortMessageHtmlLink":"Handle writing packet continuations"}},{"before":"0ef69afbe70a01a14309fdf355c65147097acf0b","after":"2649ecd68150d6dc9810b351fddfc7d2439e3dbb","ref":"refs/heads/main","pushedAt":"2024-04-18T20:12:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"composerinteralia","name":"Daniel Colson","path":"/composerinteralia","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/13696143?s=80&v=4"},"commit":{"message":"Handle reading packet continuation\n\nThese are packets with length 0xFFFFFF, eventually followed by a packet\nwith a smaller length. Assembling these all into a giant string isn't\nideal really, but I'd have to rethink payload parsing if we want to do\nsomething else.","shortMessageHtmlLink":"Handle reading packet continuation"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEVlaSjwA","startCursor":null,"endCursor":null}},"title":"Activity · composerinteralia/nocturne"}