{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":34139230,"defaultBranch":"main","name":"ibis","ownerLogin":"ibis-project","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-04-17T20:43:46.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/27442526?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716387560.0","currentOid":""},"activityList":{"items":[{"before":"b30916eeeef3b563df8a7a9a69fbbef46f022e0b","after":"8ba05c86bfd665ac09b319d2a2a3df74193f1fec","ref":"refs/heads/main","pushedAt":"2024-05-25T12:19:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"ci(snowflake): ensure that snowpark tests run in their own schema (#9253)","shortMessageHtmlLink":"ci(snowflake): ensure that snowpark tests run in their own schema (#9253"}},{"before":"582165f307b9d28c94194a136d23190a281a1213","after":"b30916eeeef3b563df8a7a9a69fbbef46f022e0b","ref":"refs/heads/main","pushedAt":"2024-05-25T12:17:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"test(trino): make sure uri connect test does not rely on backend data (#9252)","shortMessageHtmlLink":"test(trino): make sure uri connect test does not rely on backend data ("}},{"before":"10afc989ca689d8c497808b35494c93d6e288ad4","after":"582165f307b9d28c94194a136d23190a281a1213","ref":"refs/heads/main","pushedAt":"2024-05-24T19:14:17.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jcrist","name":"Jim Crist-Harif","path":"/jcrist","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2783717?s=80&v=4"},"commit":{"message":"feat(api): support wider range of types in `where` arg to column reductions","shortMessageHtmlLink":"feat(api): support wider range of types in where arg to column redu…"}},{"before":"65327c3f447773e6ea74abeb9c21604554fac98f","after":"978a5c2b4b4453526d4d74e83771578acb813f40","ref":"refs/heads/renovate/sqlglot-24.x","pushedAt":"2024-05-24T13:56:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"fix(mysql): use sqlglot Var construct instead of string for position in trim calls","shortMessageHtmlLink":"fix(mysql): use sqlglot Var construct instead of string for position …"}},{"before":"67460aa16e66cc0765a06e64caa47abfa89b1c8a","after":"10afc989ca689d8c497808b35494c93d6e288ad4","ref":"refs/heads/main","pushedAt":"2024-05-23T15:41:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"test(duckdb): test multiple connections to named in-memory db (#9242)","shortMessageHtmlLink":"test(duckdb): test multiple connections to named in-memory db (#9242)"}},{"before":"01383ecfdd88093abfd050dd3facbc8cc73b7f1c","after":"67460aa16e66cc0765a06e64caa47abfa89b1c8a","ref":"refs/heads/main","pushedAt":"2024-05-23T12:43:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"feat(duckdb): allow to use named in-memory db (#9241)\n\nAllows to use a named in-memory database with the DuckDB backend.\r\n\r\n* Resolves #9240","shortMessageHtmlLink":"feat(duckdb): allow to use named in-memory db (#9241)"}},{"before":"aba913df0e92e17516efca3f880717bbf8b66124","after":"01383ecfdd88093abfd050dd3facbc8cc73b7f1c","ref":"refs/heads/main","pushedAt":"2024-05-22T21:07:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"test(snowflake): use env-vars only for ibis.snowflake.connect test (#9236)\n\nThe previous version of this test isn't passing on CI for reasons I\r\ncan't quite understand, so I'm trying this instead. We'll see?","shortMessageHtmlLink":"test(snowflake): use env-vars only for ibis.snowflake.connect test (#…"}},{"before":"e3ee67b6183da79dd03d5d74b85f48a6eb5d8d09","after":"aba913df0e92e17516efca3f880717bbf8b66124","ref":"refs/heads/main","pushedAt":"2024-05-22T20:28:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jcrist","name":"Jim Crist-Harif","path":"/jcrist","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2783717?s=80&v=4"},"commit":{"message":"feat(api): add `Table.value_counts` for easy group by count on multiple fields","shortMessageHtmlLink":"feat(api): add Table.value_counts for easy group by count on multip…"}},{"before":"56e0b384aa97e4ef8cf67dfbee742279eb2e1ba3","after":"e3ee67b6183da79dd03d5d74b85f48a6eb5d8d09","ref":"refs/heads/main","pushedAt":"2024-05-22T19:40:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jcrist","name":"Jim Crist-Harif","path":"/jcrist","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2783717?s=80&v=4"},"commit":{"message":"fix(trino): parse URL passed to ibis.connect","shortMessageHtmlLink":"fix(trino): parse URL passed to ibis.connect"}},{"before":"26ee87a2fa97059ce4213a478d09072b8825f9f8","after":"56e0b384aa97e4ef8cf67dfbee742279eb2e1ba3","ref":"refs/heads/main","pushedAt":"2024-05-22T19:37:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"refactor(sql): extract aggregate handling out into common utility class (#9222)\n\nThis is an initial refactor moving towards #9170.\r\n\r\nPreviously every backend implemented their own `_aggregate` function -\r\nmany of them copy-pasted (with slight variations) of each other.\r\n\r\nTo add a new `order_by` kwarg to `_aggregate` would require editing all\r\n16 copies of this function, which would be _annoying_. This PR is an\r\nattempt to centralize their implementations into a common `Gen` class.\r\nThe class takes a config flag to handle the common cases, the uncommon\r\ncases are then handled by backend-specific subclasses.\r\n\r\nThis also extracts the `.agg` attribute out to be a class variable (err,\r\ndescriptor) rather than an instance variable.\r\n\r\nAn alternative implementation would be adding boolean flags directly to\r\nthe `SQLGlotCompiler` class, but IIRC we intentionally moved away from\r\nthose in the SQLAlchemy -> SQLGlot refactor. Could go either way here.","shortMessageHtmlLink":"refactor(sql): extract aggregate handling out into common utility cla…"}},{"before":"1ecb3194d8f7e7ddec012f2e4041511defc57fcb","after":"26ee87a2fa97059ce4213a478d09072b8825f9f8","ref":"refs/heads/main","pushedAt":"2024-05-22T16:04:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"test(snowflake): add test for ibis.snowflake.connect (#9234)\n\nxref #9221\r\n\r\nWe weren't handling passing in `catalog/database` as the `database`\r\nkwarg, despite our documentation telling users to do that.\r\n\r\nThis was fixed in the above PR -- here I'm adding a test to\r\nensure that both connection methods work.","shortMessageHtmlLink":"test(snowflake): add test for ibis.snowflake.connect (#9234)"}},{"before":"7a272e39c445455d1b76272f6175a778a23df5c1","after":"1ecb3194d8f7e7ddec012f2e4041511defc57fcb","ref":"refs/heads/main","pushedAt":"2024-05-22T14:59:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"fix(snowflake): properly pass schema and database for sqlglot generation (#9221)\n\n## Description of changes\r\n\r\n- split database and schema to pass to sqlglot for proper full name\r\nqualification\r\n- conditionally include `use_stmt` to prevent invalid `USE SCHEMA`\r\nstatement when\r\n\r\ncurrently `use_stmt` is generated like `'USE SCHEMA \"DATABASE/SCHEMA\"'`,\r\nit should be `'USE SCHEMA \"DATABASE\".\"SCHEMA\"'`\r\n\r\n---------\r\n\r\nCo-authored-by: Gil Forsyth ","shortMessageHtmlLink":"fix(snowflake): properly pass schema and database for sqlglot generat…"}},{"before":"c06285ebff80ba94af3a5de2aca920ebf46ce4ef","after":"7a272e39c445455d1b76272f6175a778a23df5c1","ref":"refs/heads/main","pushedAt":"2024-05-22T14:49:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"feat(polars): accept list of CSVs to read_csv (#9232)\n\nPolars now accepts a list of CSVs to `scan_csv` so we can expose this to\r\nend-users.\r\n\r\nA few caveats:\r\n- it doesn't accept lists of globs, or lists of compressed CSVs, so we\r\n flatten the list of paths if it only has one element in case it is a\r\n glob or csv.gz\r\n\r\nFixes #9230","shortMessageHtmlLink":"feat(polars): accept list of CSVs to read_csv (#9232)"}},{"before":"8e6ec4f1e458499305a3530ab5a36070f2235792","after":"65327c3f447773e6ea74abeb9c21604554fac98f","ref":"refs/heads/renovate/sqlglot-24.x","pushedAt":"2024-05-22T14:19:21.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"renovate[bot]","name":null,"path":"/apps/renovate","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/2740?s=80&v=4"},"commit":{"message":"fix(deps): update dependency sqlglot to v24","shortMessageHtmlLink":"fix(deps): update dependency sqlglot to v24"}},{"before":"c66d6aa7f197e063b6e3102733b59109c1c27ae4","after":"c06285ebff80ba94af3a5de2aca920ebf46ce4ef","ref":"refs/heads/main","pushedAt":"2024-05-22T14:16:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"feat: drop Python 3.9 and test on Python 3.10/3.12 (#9213)\n\n## Description of changes\r\nAccording to NEP-29, we could have dropped Python 3.9 last month.\r\n\r\n* Test on 3.10/3.12 in CI, except for a few exceptions (e.g. Flink).\r\n* Apply `pyupgrade` rules to remove code for Python<3.10.\r\n* Remove workaround for DuckDB geospatial tests.","shortMessageHtmlLink":"feat: drop Python 3.9 and test on Python 3.10/3.12 (#9213)"}},{"before":null,"after":"8e6ec4f1e458499305a3530ab5a36070f2235792","ref":"refs/heads/renovate/sqlglot-24.x","pushedAt":"2024-05-21T22:09:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"renovate[bot]","name":null,"path":"/apps/renovate","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/2740?s=80&v=4"},"commit":{"message":"fix(deps): update dependency sqlglot to v24","shortMessageHtmlLink":"fix(deps): update dependency sqlglot to v24"}},{"before":"8e015a73334d8f019565d93f22da7b98f00eeaa4","after":"c66d6aa7f197e063b6e3102733b59109c1c27ae4","ref":"refs/heads/main","pushedAt":"2024-05-21T22:06:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"fix(to_sql): use default backend for sql generation when set (#9228)\n\nWe weren't passing `use_default=True` when looking for backends in\r\n`to_sql` when no `dialect` was specified. This worked for nearly all\r\ncases, except when an expression was built from a `memtable`.\r\nA `memtable` doesn't have a specific backend, but if a user has set a\r\ndefault backend, we should assume that dialect for rendering\r\nsql (instead of our default of DuckDB sql)\r\n\r\nResolves #9227","shortMessageHtmlLink":"fix(to_sql): use default backend for sql generation when set (#9228)"}},{"before":"f1c03f4c148ff299d48018c3490ee1effd206ec6","after":"8e015a73334d8f019565d93f22da7b98f00eeaa4","ref":"refs/heads/main","pushedAt":"2024-05-21T21:36:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"lostmygithubaccount","name":"Cody Peterson","path":"/lostmygithubaccount","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/54814569?s=80&v=4"},"commit":{"message":"docs(blog): new blog post on sqlmesh + ibis (#9218)","shortMessageHtmlLink":"docs(blog): new blog post on sqlmesh + ibis (#9218)"}},{"before":"707214bca7cde00a47b6ef1b6166c18b1b00d608","after":null,"ref":"refs/heads/renovate/pypi-pymysql-vulnerability","pushedAt":"2024-05-21T21:10:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"renovate[bot]","name":null,"path":"/apps/renovate","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/2740?s=80&v=4"}},{"before":"b92dd7b461fe1960f675c252b04f7f182218c1e8","after":"f1c03f4c148ff299d48018c3490ee1effd206ec6","ref":"refs/heads/main","pushedAt":"2024-05-21T21:10:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"gforsyth","name":"Gil Forsyth","path":"/gforsyth","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3596999?s=80&v=4"},"commit":{"message":"chore(deps): bump pymysql (#9226)\n\nBump pymysql in dev deps due to CVE-2024-36039.","shortMessageHtmlLink":"chore(deps): bump pymysql (#9226)"}},{"before":null,"after":"707214bca7cde00a47b6ef1b6166c18b1b00d608","ref":"refs/heads/renovate/pypi-pymysql-vulnerability","pushedAt":"2024-05-21T20:34:35.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"renovate[bot]","name":null,"path":"/apps/renovate","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/2740?s=80&v=4"},"commit":{"message":"fix(deps): update dependency pymysql to v1.1.1 [security]","shortMessageHtmlLink":"fix(deps): update dependency pymysql to v1.1.1 [security]"}},{"before":"85a2deab635919bf687d3ba703903be02c165942","after":null,"ref":"refs/heads/renovate/sqlglot-23.x","pushedAt":"2024-05-21T20:31:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"}},{"before":"7043e28afd1067e7edec6bd2bade55ffdd40cea4","after":"b92dd7b461fe1960f675c252b04f7f182218c1e8","ref":"refs/heads/main","pushedAt":"2024-05-21T20:31:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"fix(deps): update dependency sqlglot to >=23.4,<23.18 (#9212)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\r\nCo-authored-by: Phillip Cloud <417981+cpcloud@users.noreply.github.com>","shortMessageHtmlLink":"fix(deps): update dependency sqlglot to >=23.4,<23.18 (#9212)"}},{"before":"657e54d6be0336b8b245653f45038d4c38e1bb10","after":"85a2deab635919bf687d3ba703903be02c165942","ref":"refs/heads/renovate/sqlglot-23.x","pushedAt":"2024-05-21T15:28:06.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"chore(deps): relock requirements-dev.txt","shortMessageHtmlLink":"chore(deps): relock requirements-dev.txt"}},{"before":"ae92e2a591619be9ab5f635a44a7031a27691ab7","after":null,"ref":"refs/heads/renovate/pypi-requests-vulnerability","pushedAt":"2024-05-21T15:09:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"}},{"before":"51519068c336c1089a7a855f0cecf74a9409b248","after":"7043e28afd1067e7edec6bd2bade55ffdd40cea4","ref":"refs/heads/main","pushedAt":"2024-05-21T15:09:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"chore(deps): update dependency requests to v2.32.0 [security] (#9219)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>\r\nCo-authored-by: Phillip Cloud <417981+cpcloud@users.noreply.github.com>","shortMessageHtmlLink":"chore(deps): update dependency requests to v2.32.0 [security] (#9219)"}},{"before":"474bda2dc7793a069bdd26898b8b5e52b7e9fe00","after":null,"ref":"refs/heads/dependabot/pip/requests-2.32.0","pushedAt":"2024-05-21T14:22:09.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"}},{"before":"f89ff22742b8444732b3b7ecdef97d5f53529c17","after":null,"ref":"refs/heads/renovate/cachix-cachix-action-15.x","pushedAt":"2024-05-21T14:21:33.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"}},{"before":"15a5257cc56723a17be0e0548c53c0aedbf02b5f","after":"51519068c336c1089a7a855f0cecf74a9409b248","ref":"refs/heads/main","pushedAt":"2024-05-21T14:21:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"chore(deps): update cachix/cachix-action action to v15 (#9214)\n\nCo-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>","shortMessageHtmlLink":"chore(deps): update cachix/cachix-action action to v15 (#9214)"}},{"before":"435c31410a4a81246f1656ca0711b83a599a5f8f","after":"ae92e2a591619be9ab5f635a44a7031a27691ab7","ref":"refs/heads/renovate/pypi-requests-vulnerability","pushedAt":"2024-05-21T14:19:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cpcloud","name":"Phillip Cloud","path":"/cpcloud","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/417981?s=80&v=4"},"commit":{"message":"chore(deps): relock requirements-dev.txt","shortMessageHtmlLink":"chore(deps): relock requirements-dev.txt"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEU7MQ4AA","startCursor":null,"endCursor":null}},"title":"Activity · ibis-project/ibis"}