Skip to content

feat: Add support for lubridate::month()#660

Open
andreranza wants to merge 16 commits intotidyverse:mainfrom
andreranza:f-167-lubridate-month
Open

feat: Add support for lubridate::month()#660
andreranza wants to merge 16 commits intotidyverse:mainfrom
andreranza:f-167-lubridate-month

Conversation

@andreranza
Copy link
Copy Markdown
Contributor

Closes #167.

@andreranza
Copy link
Copy Markdown
Contributor Author

After #658.

@krlmlr
Copy link
Copy Markdown
Member

krlmlr commented Mar 26, 2025

Thanks!

  • Would you like to add the translation of other similar functions?
  • Can you please add tests?

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if 0f1854f is merged into main:

  • ✔️001_tpch_01: 25.2ms -> 25.3ms [-4.4%, +5.62%]
  • ✔️001_tpch_02: 74.7ms -> 75.2ms [-1.2%, +2.69%]
  • ✔️001_tpch_03: 37.1ms -> 37.3ms [-1.82%, +2.75%]
  • ✔️001_tpch_04: 23.9ms -> 24.1ms [-1.79%, +3.49%]
  • ✔️001_tpch_05: 63.4ms -> 63.8ms [-1.59%, +2.74%]
  • ✔️001_tpch_06: 12.7ms -> 12.7ms [-2.58%, +2.35%]
  • ✔️001_tpch_07: 79.3ms -> 80.4ms [-0.44%, +3.36%]
  • ✔️001_tpch_08: 103ms -> 102ms [-2.52%, +1.4%]
  • ✔️001_tpch_09: 76.8ms -> 76.9ms [-1.73%, +2.01%]
  • ✔️001_tpch_10: 52.9ms -> 53.8ms [-0.18%, +3.78%]
  • ✔️001_tpch_11: 35.3ms -> 35.3ms [-1.87%, +1.68%]
  • ✔️001_tpch_12: 22ms -> 22ms [-1.99%, +1.9%]
  • ✔️001_tpch_13: 18.5ms -> 19.2ms [-1%, +8.85%]
  • ✔️001_tpch_14: 17.9ms -> 18ms [-2.65%, +2.98%]
  • ✔️001_tpch_15: 32.8ms -> 32.7ms [-1.78%, +0.9%]
  • ✔️001_tpch_16: 31.3ms -> 31.6ms [-0.63%, +2.12%]
  • ✔️001_tpch_17: 30ms -> 29.9ms [-1.76%, +1.01%]
  • ✔️001_tpch_18: 23.5ms -> 23.7ms [-1.15%, +3.1%]
  • ✔️001_tpch_19: 47.5ms -> 47.5ms [-1.81%, +2.06%]
  • ✔️001_tpch_20: 48ms -> 48ms [-1.3%, +1.44%]
  • ✔️001_tpch_21: 86.7ms -> 86.2ms [-2.1%, +0.82%]
  • ✔️001_tpch_22: 52.5ms -> 53.5ms [-1.59%, +5.39%]
  • 🚀010_tpch_01: 94.4ms -> 87.1ms [-12.48%, -3.13%]
  • ✔️010_tpch_02: 127ms -> 126ms [-2.99%, +2.44%]
  • ✔️010_tpch_03: 63ms -> 64.1ms [-0.46%, +4.07%]
  • ✔️010_tpch_04: 45.2ms -> 45.8ms [-0.63%, +3.2%]
  • ✔️010_tpch_05: 140ms -> 141ms [-0.18%, +2.56%]
  • ✔️010_tpch_06: 32.1ms -> 33.5ms [-6.87%, +15.57%]
  • ✔️010_tpch_07: 154ms -> 155ms [-1.91%, +2.61%]
  • ✔️010_tpch_08: 119ms -> 120ms [-1.35%, +2.9%]
  • ✔️010_tpch_09: 166ms -> 166ms [-1.57%, +1.48%]
  • ✔️010_tpch_10: 130ms -> 130ms [-4.09%, +2.78%]
  • ✔️010_tpch_11: 45.8ms -> 45.1ms [-4.63%, +1.69%]
  • ✔️010_tpch_12: 56ms -> 56.3ms [-0.84%, +1.95%]
  • ✔️010_tpch_13: 53.5ms -> 53.8ms [-1.11%, +2.18%]
  • 🚀010_tpch_14: 38.1ms -> 37.3ms [-3.32%, -0.89%]
  • ✔️010_tpch_15: 58.3ms -> 60.8ms [-2.33%, +11.15%]
  • ✔️010_tpch_16: 45.3ms -> 45ms [-3.26%, +1.9%]
  • ✔️010_tpch_17: 62ms -> 61.1ms [-4.44%, +1.5%]
  • ✔️010_tpch_18: 63.5ms -> 60.9ms [-9.87%, +1.6%]
  • ✔️010_tpch_19: 157ms -> 154ms [-6.01%, +2%]
  • ✔️010_tpch_20: 76.2ms -> 74.8ms [-4.53%, +0.89%]
  • ✔️010_tpch_21: 346ms -> 345ms [-2.94%, +2.59%]
  • ✔️010_tpch_22: 65.4ms -> 65.3ms [-1.97%, +1.62%]
  • ✔️100_tpch_01: 352ms -> 317ms [-25.91%, +6.07%]
  • ✔️100_tpch_02: 135ms -> 132ms [-13.54%, +8.1%]
  • ✔️100_tpch_03: 168ms -> 165ms [-11.57%, +7.94%]
  • 🚀100_tpch_04: 159ms -> 144ms [-13.61%, -4.59%]
  • ✔️100_tpch_05: 251ms -> 262ms [-10.19%, +18.76%]
  • ✔️100_tpch_06: 102ms -> 94ms [-29.49%, +14.31%]
  • ✔️100_tpch_07: 225ms -> 240ms [-4.48%, +18.18%]
  • ✔️100_tpch_08: 268ms -> 262ms [-8.25%, +3.88%]
  • ✔️100_tpch_09: 340ms -> 321ms [-15.6%, +4.92%]
  • 🚀100_tpch_10: 215ms -> 201ms [-11.77%, -0.82%]
  • ✔️100_tpch_11: 89.8ms -> 98.2ms [-15.19%, +33.92%]
  • ✔️100_tpch_12: 192ms -> 201ms [-7%, +16.14%]
  • ✔️100_tpch_13: 332ms -> 342ms [-4.05%, +10.1%]
  • ✔️100_tpch_14: 116ms -> 112ms [-10.54%, +4.4%]
  • ✔️100_tpch_15: 209ms -> 199ms [-14.63%, +5.16%]
  • ✔️100_tpch_16: 129ms -> 125ms [-11.71%, +6.17%]
  • ✔️100_tpch_17: 180ms -> 178ms [-11.02%, +8.89%]
  • ✔️100_tpch_18: 204ms -> 215ms [-6.09%, +17%]
  • ✔️100_tpch_19: 267ms -> 276ms [-6.91%, +13.94%]
  • ✔️100_tpch_20: 185ms -> 175ms [-15.74%, +4.45%]
  • 🚀100_tpch_21: 1.5s -> 1.43s [-9.05%, -0.29%]
  • ✔️100_tpch_22: 155ms -> 159ms [-2.2%, +7.24%]

Further explanation regarding interpretation and methodology can be found in the documentation.

@andreranza
Copy link
Copy Markdown
Contributor Author

Right. The contribution guide mentions that. Will add tests, too.
Happy to add more functions.

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if c346fb5 is merged into main:

  • ✔️001_tpch_01: 24.5ms -> 25.3ms [-1.08%, +7.41%]
  • ✔️001_tpch_02: 69.5ms -> 69.5ms [-1.04%, +1.24%]
  • ✔️001_tpch_03: 35.3ms -> 35.2ms [-1.66%, +1.08%]
  • ✔️001_tpch_04: 22.9ms -> 23.3ms [-0.68%, +3.74%]
  • ✔️001_tpch_05: 60.7ms -> 61ms [-0.54%, +1.63%]
  • ✔️001_tpch_06: 12.1ms -> 12ms [-3.38%, +1.93%]
  • ✔️001_tpch_07: 77.2ms -> 77.3ms [-1.25%, +1.68%]
  • ✔️001_tpch_08: 99.1ms -> 98.3ms [-2.11%, +0.56%]
  • ✔️001_tpch_09: 73.6ms -> 73.3ms [-1.27%, +0.71%]
  • ✔️001_tpch_10: 51.6ms -> 51.3ms [-1.49%, +0.52%]
  • ✔️001_tpch_11: 34.4ms -> 34.6ms [-1.03%, +2.29%]
  • ✔️001_tpch_12: 22.2ms -> 22.3ms [-1.66%, +2.02%]
  • ✔️001_tpch_13: 18.7ms -> 18.9ms [-1.52%, +3.67%]
  • ✔️001_tpch_14: 17.9ms -> 17.7ms [-2.85%, +0.56%]
  • ✔️001_tpch_15: 32.5ms -> 32.3ms [-2.21%, +1.44%]
  • 🚀001_tpch_16: 30.9ms -> 30ms [-4.2%, -1.66%]
  • ✔️001_tpch_17: 27.3ms -> 27.4ms [-1%, +1.57%]
  • ✔️001_tpch_18: 22.5ms -> 22.9ms [-0.77%, +3.73%]
  • ✔️001_tpch_19: 45.7ms -> 45.7ms [-0.92%, +0.88%]
  • ✔️001_tpch_20: 46.8ms -> 46.9ms [-0.47%, +1.23%]
  • ✔️001_tpch_21: 87ms -> 85.8ms [-2.82%, +0.25%]
  • ✔️001_tpch_22: 50.3ms -> 50.5ms [-0.39%, +1.15%]
  • ✔️010_tpch_01: 93.1ms -> 91.5ms [-7.52%, +4.17%]
  • ❗🐌010_tpch_02: 138ms -> 141ms [+0.42%, +3.87%]
  • ✔️010_tpch_03: 66.6ms -> 70.9ms [-4.13%, +16.99%]
  • ✔️010_tpch_04: 50.2ms -> 48.8ms [-5.97%, +0.6%]
  • ✔️010_tpch_05: 156ms -> 155ms [-2.71%, +2.01%]
  • ✔️010_tpch_06: 34.1ms -> 33.7ms [-8.75%, +6.83%]
  • ✔️010_tpch_07: 161ms -> 164ms [-0.87%, +4.55%]
  • ✔️010_tpch_08: 122ms -> 123ms [-0.86%, +3.03%]
  • ✔️010_tpch_09: 176ms -> 177ms [-0.95%, +2.03%]
  • ✔️010_tpch_10: 139ms -> 139ms [-2%, +1.5%]
  • ✔️010_tpch_11: 48.2ms -> 46.9ms [-5.79%, +0.33%]
  • ✔️010_tpch_12: 59.3ms -> 57.8ms [-6.58%, +1.42%]
  • ✔️010_tpch_13: 55.8ms -> 54.6ms [-5.25%, +1.15%]
  • ✔️010_tpch_14: 40.2ms -> 39.5ms [-6.19%, +2.9%]
  • ✔️010_tpch_15: 59ms -> 59.5ms [-6.55%, +8.25%]
  • 🚀010_tpch_16: 50.3ms -> 47.1ms [-9.94%, -2.94%]
  • ✔️010_tpch_17: 62.9ms -> 62.9ms [-3.12%, +3.38%]
  • ✔️010_tpch_18: 61.1ms -> 59.8ms [-7.88%, +3.48%]
  • ✔️010_tpch_19: 151ms -> 151ms [-1.9%, +1.71%]
  • ✔️010_tpch_20: 75.1ms -> 75ms [-5.1%, +4.97%]
  • ✔️010_tpch_21: 331ms -> 331ms [-2.45%, +2.07%]
  • ✔️010_tpch_22: 62.6ms -> 62.7ms [-2.8%, +3.15%]
  • ✔️100_tpch_01: 345ms -> 335ms [-14.59%, +8.84%]
  • ✔️100_tpch_02: 130ms -> 136ms [-11.47%, +20.11%]
  • ✔️100_tpch_03: 177ms -> 179ms [-3.3%, +5.75%]
  • ✔️100_tpch_04: 154ms -> 154ms [-11.46%, +11.4%]
  • ✔️100_tpch_05: 247ms -> 242ms [-12.16%, +7.65%]
  • ✔️100_tpch_06: 97.9ms -> 101ms [-15.87%, +22.3%]
  • 🚀100_tpch_07: 233ms -> 218ms [-10.73%, -2.58%]
  • ✔️100_tpch_08: 260ms -> 262ms [-8.88%, +10.46%]
  • ✔️100_tpch_09: 307ms -> 309ms [-12.01%, +13.43%]
  • ✔️100_tpch_10: 205ms -> 205ms [-13.52%, +13.47%]
  • ✔️100_tpch_11: 89.7ms -> 85.1ms [-29.69%, +19.29%]
  • ✔️100_tpch_12: 192ms -> 200ms [-8.03%, +15.67%]
  • ✔️100_tpch_13: 337ms -> 342ms [-2.16%, +5.44%]
  • ✔️100_tpch_14: 120ms -> 123ms [-12.45%, +17.51%]
  • ✔️100_tpch_15: 218ms -> 216ms [-7.28%, +5.59%]
  • 🚀100_tpch_16: 144ms -> 130ms [-14.51%, -5.64%]
  • ✔️100_tpch_17: 182ms -> 171ms [-13.78%, +1.7%]
  • ✔️100_tpch_18: 209ms -> 210ms [-1.17%, +2.26%]
  • ✔️100_tpch_19: 276ms -> 259ms [-22.9%, +10.56%]
  • ✔️100_tpch_20: 181ms -> 183ms [-4.39%, +6.82%]
  • ✔️100_tpch_21: 1.47s -> 1.48s [-4.63%, +6.29%]
  • ✔️100_tpch_22: 156ms -> 163ms [-5.31%, +14.44%]

Further explanation regarding interpretation and methodology can be found in the documentation.

@andreranza
Copy link
Copy Markdown
Contributor Author

Thanks, @krlmlr. I added one test and updated the vignette. Is this good enough? Am I missing something?

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if f523905 is merged into main:

  • ✔️001_tpch_01: 24.1ms -> 23.3ms [-7.35%, +0.93%]
  • ✔️001_tpch_02: 69.1ms -> 69.4ms [-0.93%, +1.99%]
  • 🚀001_tpch_03: 36.4ms -> 35.3ms [-5.22%, -0.49%]
  • ✔️001_tpch_04: 22.4ms -> 22.4ms [-1.77%, +1.33%]
  • ✔️001_tpch_05: 59.7ms -> 59.8ms [-0.91%, +1.23%]
  • ✔️001_tpch_06: 11.8ms -> 11.9ms [-1.38%, +3.26%]
  • ✔️001_tpch_07: 75.6ms -> 75.7ms [-1.22%, +1.44%]
  • ✔️001_tpch_08: 96.2ms -> 96.1ms [-0.91%, +0.77%]
  • ✔️001_tpch_09: 71.8ms -> 71.9ms [-1.72%, +2.11%]
  • ✔️001_tpch_10: 50.1ms -> 49.7ms [-2.63%, +1.05%]
  • ✔️001_tpch_11: 33.5ms -> 33.7ms [-0.22%, +1.36%]
  • ✔️001_tpch_12: 21.5ms -> 21.4ms [-0.94%, +0.68%]
  • ✔️001_tpch_13: 18.1ms -> 18ms [-1.97%, +1.04%]
  • ✔️001_tpch_14: 17.2ms -> 17.4ms [-0.23%, +1.75%]
  • ✔️001_tpch_15: 31.3ms -> 31.6ms [-0.62%, +2.58%]
  • ✔️001_tpch_16: 30.1ms -> 30.3ms [-0.26%, +1.35%]
  • ✔️001_tpch_17: 27.4ms -> 27.1ms [-3.22%, +1.1%]
  • ✔️001_tpch_18: 22.6ms -> 22.6ms [-1.91%, +1.52%]
  • ✔️001_tpch_19: 45.6ms -> 45.9ms [-0.56%, +1.91%]
  • ✔️001_tpch_20: 47.1ms -> 46.5ms [-2.52%, +0.15%]
  • ✔️001_tpch_21: 83.6ms -> 84.3ms [-0.49%, +2.08%]
  • ✔️001_tpch_22: 48.5ms -> 48.7ms [-1.83%, +2.37%]
  • ✔️010_tpch_01: 89.5ms -> 88.4ms [-6.28%, +3.88%]
  • ✔️010_tpch_02: 125ms -> 124ms [-2.38%, +0.86%]
  • ✔️010_tpch_03: 63.1ms -> 63.2ms [-1.14%, +1.64%]
  • ✔️010_tpch_04: 45.6ms -> 45.3ms [-2.18%, +1.05%]
  • ✔️010_tpch_05: 140ms -> 140ms [-0.83%, +1.27%]
  • ✔️010_tpch_06: 31.4ms -> 30ms [-9.03%, +0.45%]
  • ✔️010_tpch_07: 153ms -> 152ms [-2.73%, +1.91%]
  • ✔️010_tpch_08: 120ms -> 119ms [-3.44%, +2.42%]
  • ✔️010_tpch_09: 163ms -> 163ms [-0.73%, +1.35%]
  • ✔️010_tpch_10: 128ms -> 128ms [-2.11%, +1%]
  • ✔️010_tpch_11: 44.1ms -> 44ms [-2.24%, +1.96%]
  • ✔️010_tpch_12: 56.1ms -> 54.7ms [-6.13%, +1.39%]
  • ✔️010_tpch_13: 51.8ms -> 51.6ms [-1.59%, +0.84%]
  • ✔️010_tpch_14: 36.8ms -> 36.4ms [-2.89%, +1.03%]
  • ✔️010_tpch_15: 58.4ms -> 57.5ms [-8.77%, +5.66%]
  • ✔️010_tpch_16: 46.3ms -> 45.5ms [-4.76%, +1.22%]
  • ✔️010_tpch_17: 59.7ms -> 59.6ms [-4.33%, +3.98%]
  • ✔️010_tpch_18: 58.7ms -> 59.1ms [-6.25%, +7.78%]
  • ✔️010_tpch_19: 146ms -> 146ms [-1.06%, +1.49%]
  • ✔️010_tpch_20: 73.1ms -> 72.2ms [-6.06%, +3.5%]
  • ✔️010_tpch_21: 334ms -> 333ms [-2.01%, +1.67%]
  • ✔️010_tpch_22: 61ms -> 62.5ms [-2.3%, +7.21%]
  • ✔️100_tpch_01: 379ms -> 362ms [-16.5%, +7.36%]
  • ✔️100_tpch_02: 132ms -> 133ms [-13.45%, +14.26%]
  • ✔️100_tpch_03: 169ms -> 168ms [-11.64%, +10.69%]
  • ✔️100_tpch_04: 159ms -> 149ms [-16.42%, +3.32%]
  • ✔️100_tpch_05: 260ms -> 240ms [-15.93%, +0.91%]
  • ✔️100_tpch_06: 100ms -> 94.2ms [-17.9%, +6.33%]
  • ✔️100_tpch_07: 230ms -> 231ms [-7.01%, +7.58%]
  • ✔️100_tpch_08: 252ms -> 264ms [-8.86%, +18.31%]
  • ✔️100_tpch_09: 325ms -> 317ms [-14.01%, +9.54%]
  • ✔️100_tpch_10: 196ms -> 208ms [-5.33%, +17.49%]
  • ✔️100_tpch_11: 83.6ms -> 85.8ms [-10.68%, +15.99%]
  • ✔️100_tpch_12: 190ms -> 201ms [-3.42%, +14.62%]
  • ✔️100_tpch_13: 327ms -> 333ms [-4.57%, +8.37%]
  • ✔️100_tpch_14: 120ms -> 118ms [-19.56%, +15.66%]
  • ✔️100_tpch_15: 214ms -> 214ms [-6.28%, +6.56%]
  • ✔️100_tpch_16: 132ms -> 137ms [-0.93%, +8.48%]
  • ✔️100_tpch_17: 170ms -> 181ms [-1.53%, +13.98%]
  • ✔️100_tpch_18: 205ms -> 207ms [-8.08%, +9.96%]
  • ✔️100_tpch_19: 265ms -> 271ms [-11.39%, +15.69%]
  • ✔️100_tpch_20: 183ms -> 169ms [-16.81%, +1.92%]
  • ✔️100_tpch_21: 1.48s -> 1.44s [-7.22%, +1.74%]
  • ✔️100_tpch_22: 166ms -> 152ms [-23.91%, +6.25%]

Further explanation regarding interpretation and methodology can be found in the documentation.

@krlmlr
Copy link
Copy Markdown
Member

krlmlr commented Apr 11, 2025

Thanks. Tests failed with the last run, let's see. What about day() and year() and perhaps other accessors?

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if 07d4258 is merged into main:

  • ✔️001_tpch_01: 24.6ms -> 24.3ms [-5.86%, +3.12%]
  • ✔️001_tpch_02: 70.9ms -> 71.1ms [-1.2%, +1.87%]
  • ✔️001_tpch_03: 35.7ms -> 35.6ms [-1.72%, +1.63%]
  • ✔️001_tpch_04: 23.2ms -> 23.8ms [-0.24%, +5.97%]
  • ✔️001_tpch_05: 60.7ms -> 61.4ms [-0.92%, +3.19%]
  • ❗🐌001_tpch_06: 11.9ms -> 12.6ms [+1.56%, +8.76%]
  • ✔️001_tpch_07: 77ms -> 77.4ms [-0.76%, +1.95%]
  • ✔️001_tpch_08: 98.3ms -> 97.7ms [-1.76%, +0.56%]
  • ✔️001_tpch_09: 73.8ms -> 73.7ms [-1.56%, +1.18%]
  • ✔️001_tpch_10: 51.8ms -> 51ms [-3.39%, +0.29%]
  • ✔️001_tpch_11: 34.4ms -> 34.5ms [-0.84%, +1.32%]
  • ✔️001_tpch_12: 22.4ms -> 22.3ms [-2.56%, +1.6%]
  • ✔️001_tpch_13: 19.4ms -> 19.4ms [-3.67%, +3.43%]
  • ✔️001_tpch_14: 18ms -> 18ms [-1.76%, +1.53%]
  • ✔️001_tpch_15: 32.4ms -> 32.2ms [-1.81%, +1.02%]
  • ✔️001_tpch_16: 31.9ms -> 31.7ms [-2.7%, +1.36%]
  • ✔️001_tpch_17: 28.8ms -> 29ms [-0.56%, +2.11%]
  • ✔️001_tpch_18: 23.6ms -> 23.9ms [-0.81%, +3.59%]
  • ✔️001_tpch_19: 47.5ms -> 47.9ms [-1.13%, +3.01%]
  • ✔️001_tpch_20: 48.9ms -> 48.6ms [-2.16%, +1.17%]
  • ✔️001_tpch_21: 87.3ms -> 86.8ms [-1.98%, +0.72%]
  • ✔️001_tpch_22: 50.5ms -> 51ms [-0.69%, +2.81%]
  • ✔️010_tpch_01: 88.2ms -> 91.2ms [-2.18%, +9.15%]
  • ✔️010_tpch_02: 125ms -> 125ms [-2.03%, +1.67%]
  • ✔️010_tpch_03: 64ms -> 63.6ms [-1.42%, +0.31%]
  • ✔️010_tpch_04: 45.9ms -> 46.5ms [-0.3%, +2.84%]
  • ✔️010_tpch_05: 141ms -> 141ms [-2.83%, +2.63%]
  • ✔️010_tpch_06: 32.4ms -> 31.7ms [-8.21%, +3.82%]
  • ✔️010_tpch_07: 152ms -> 151ms [-2.23%, +1.37%]
  • ✔️010_tpch_08: 120ms -> 119ms [-2.29%, +1.16%]
  • ✔️010_tpch_09: 163ms -> 163ms [-0.91%, +1.41%]
  • ✔️010_tpch_10: 129ms -> 128ms [-2.43%, +0.78%]
  • 🚀010_tpch_11: 45.4ms -> 44.2ms [-4.68%, -0.78%]
  • ✔️010_tpch_12: 56.6ms -> 55.5ms [-5.27%, +1.13%]
  • ✔️010_tpch_13: 54ms -> 53.8ms [-5.91%, +5.19%]
  • ✔️010_tpch_14: 37.1ms -> 37.9ms [-2.11%, +6.18%]
  • ✔️010_tpch_15: 56.1ms -> 55.7ms [-8.69%, +7.17%]
  • ✔️010_tpch_16: 45.9ms -> 45.7ms [-2.62%, +1.56%]
  • ✔️010_tpch_17: 59.6ms -> 59ms [-2.9%, +1.04%]
  • ✔️010_tpch_18: 60.9ms -> 58.6ms [-11.4%, +3.65%]
  • ❗🐌010_tpch_19: 142ms -> 144ms [+0.15%, +2.49%]
  • ✔️010_tpch_20: 73.1ms -> 73.2ms [-2.6%, +3.07%]
  • ✔️010_tpch_21: 329ms -> 328ms [-2.6%, +2.17%]
  • ✔️010_tpch_22: 64.6ms -> 63.1ms [-5.68%, +1.12%]
  • ✔️100_tpch_01: 365ms -> 375ms [-10.24%, +15.74%]
  • ✔️100_tpch_02: 131ms -> 129ms [-4.94%, +2%]
  • ✔️100_tpch_03: 175ms -> 171ms [-30.84%, +26.33%]
  • ✔️100_tpch_04: 154ms -> 160ms [-19.96%, +27.22%]
  • ✔️100_tpch_05: 244ms -> 241ms [-11.22%, +8.39%]
  • ✔️100_tpch_06: 94.5ms -> 111ms [-21.08%, +55.38%]
  • ✔️100_tpch_07: 235ms -> 225ms [-14.41%, +6.21%]
  • ✔️100_tpch_08: 264ms -> 267ms [-2.35%, +4.42%]
  • ✔️100_tpch_09: 311ms -> 317ms [-12.2%, +16.24%]
  • ✔️100_tpch_10: 212ms -> 214ms [-2.67%, +4.09%]
  • ✔️100_tpch_11: 90.1ms -> 84ms [-29.01%, +15.61%]
  • ✔️100_tpch_12: 193ms -> 197ms [-15.96%, +20.28%]
  • ✔️100_tpch_13: 336ms -> 337ms [-10.67%, +11.52%]
  • ✔️100_tpch_14: 117ms -> 121ms [-5.38%, +12.87%]
  • ✔️100_tpch_15: 193ms -> 215ms [-3.28%, +25.48%]
  • ✔️100_tpch_16: 134ms -> 133ms [-3.44%, +2.05%]
  • ✔️100_tpch_17: 180ms -> 176ms [-10.99%, +6.07%]
  • ✔️100_tpch_18: 205ms -> 208ms [-2.67%, +4.77%]
  • ✔️100_tpch_19: 262ms -> 275ms [-13.85%, +24.07%]
  • ✔️100_tpch_20: 175ms -> 167ms [-13.37%, +4.23%]
  • ✔️100_tpch_21: 1.42s -> 1.44s [-3.92%, +5.72%]
  • ✔️100_tpch_22: 154ms -> 154ms [-3.76%, +4.48%]

Further explanation regarding interpretation and methodology can be found in the documentation.

@andreranza
Copy link
Copy Markdown
Contributor Author

Thank you, @krlmlr.

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if 8fb1f55 is merged into main:

  • ❗🐌001_tpch_01: 24.5ms -> 25.8ms [+0.14%, +10.46%]
  • ✔️001_tpch_02: 74.5ms -> 73.8ms [-4.36%, +2.49%]
  • ✔️001_tpch_03: 36.8ms -> 36.8ms [-3.17%, +3.34%]
  • ✔️001_tpch_04: 23.8ms -> 23.6ms [-3.14%, +1.73%]
  • ✔️001_tpch_05: 65.6ms -> 65.6ms [-4.16%, +4.1%]
  • ✔️001_tpch_06: 12.8ms -> 12.9ms [-2.81%, +3.36%]
  • ✔️001_tpch_07: 82.3ms -> 81.7ms [-5.04%, +3.59%]
  • ✔️001_tpch_08: 102ms -> 102ms [-2.65%, +2.19%]
  • ✔️001_tpch_09: 75.6ms -> 76.1ms [-0.96%, +2.34%]
  • ✔️001_tpch_10: 55.6ms -> 54.2ms [-7.73%, +2.61%]
  • ✔️001_tpch_11: 37.1ms -> 36.7ms [-3.75%, +1.88%]
  • ✔️001_tpch_12: 23ms -> 23.6ms [-0.74%, +6.28%]
  • ❗🐌001_tpch_13: 19ms -> 19.7ms [+0.26%, +6.73%]
  • ✔️001_tpch_14: 18.7ms -> 18.3ms [-5.58%, +1.33%]
  • ✔️001_tpch_15: 34.6ms -> 34.1ms [-4.29%, +1.49%]
  • ✔️001_tpch_16: 32.4ms -> 32.7ms [-2.4%, +3.96%]
  • ✔️001_tpch_17: 29ms -> 28.9ms [-2.67%, +2.15%]
  • ✔️001_tpch_18: 24.6ms -> 24.4ms [-3.99%, +2.59%]
  • ✔️001_tpch_19: 50.1ms -> 51.5ms [-2.32%, +8.06%]
  • ✔️001_tpch_20: 49.2ms -> 49.8ms [-0.93%, +3.32%]
  • ✔️001_tpch_21: 90.9ms -> 90.4ms [-3.5%, +2.3%]
  • ✔️001_tpch_22: 52.2ms -> 52.6ms [-3.31%, +5.18%]
  • ✔️010_tpch_01: 91ms -> 96.2ms [-0.11%, +11.47%]
  • ✔️010_tpch_02: 140ms -> 133ms [-12.03%, +3.19%]
  • ❗🐌010_tpch_03: 66.4ms -> 68.9ms [+0.24%, +7.32%]
  • ✔️010_tpch_04: 49ms -> 49.3ms [-2.08%, +3.33%]
  • ✔️010_tpch_05: 162ms -> 168ms [-8.27%, +14.57%]
  • ✔️010_tpch_06: 35.1ms -> 33.5ms [-14.47%, +5.4%]
  • ✔️010_tpch_07: 177ms -> 170ms [-12.61%, +5.13%]
  • 🚀010_tpch_08: 127ms -> 122ms [-8.81%, -0.07%]
  • ✔️010_tpch_09: 178ms -> 174ms [-8.75%, +4.35%]
  • ✔️010_tpch_10: 148ms -> 138ms [-16.82%, +4.21%]
  • ✔️010_tpch_11: 46.7ms -> 45.6ms [-5.02%, +0.48%]
  • ✔️010_tpch_12: 57.2ms -> 58.1ms [-1.74%, +4.97%]
  • 🚀010_tpch_13: 57.1ms -> 53.6ms [-10.09%, -2.18%]
  • ✔️010_tpch_14: 40.5ms -> 39.1ms [-7.76%, +1.19%]
  • ✔️010_tpch_15: 61.2ms -> 60.9ms [-8.6%, +7.57%]
  • ✔️010_tpch_16: 52ms -> 49.4ms [-15.52%, +5.52%]
  • ✔️010_tpch_17: 62.7ms -> 62.4ms [-3.87%, +2.95%]
  • ✔️010_tpch_18: 60.9ms -> 59.7ms [-7.29%, +3.55%]
  • ✔️010_tpch_19: 160ms -> 153ms [-10.08%, +1.22%]
  • ✔️010_tpch_20: 74.6ms -> 75.9ms [-0.34%, +3.8%]
  • ✔️010_tpch_21: 347ms -> 347ms [-3.37%, +3.12%]
  • ✔️010_tpch_22: 122ms -> 132ms [-3.38%, +19.8%]
  • ✔️100_tpch_01: 323ms -> 350ms [-6.95%, +23.46%]
  • ✔️100_tpch_02: 140ms -> 138ms [-3.56%, +0.63%]
  • ✔️100_tpch_03: 179ms -> 189ms [-9.39%, +20.09%]
  • ✔️100_tpch_04: 152ms -> 152ms [-12.62%, +13.47%]
  • ✔️100_tpch_05: 254ms -> 277ms [-7.61%, +25.65%]
  • ✔️100_tpch_06: 106ms -> 105ms [-22.63%, +19.9%]
  • ✔️100_tpch_07: 244ms -> 238ms [-11.28%, +6.43%]
  • ✔️100_tpch_08: 271ms -> 267ms [-9.07%, +6.09%]
  • ✔️100_tpch_09: 341ms -> 350ms [-3.6%, +8.47%]
  • ✔️100_tpch_10: 229ms -> 221ms [-8.46%, +1.54%]
  • ✔️100_tpch_11: 95ms -> 100ms [-15.19%, +25.7%]
  • ✔️100_tpch_12: 197ms -> 191ms [-16.94%, +11.05%]
  • ✔️100_tpch_13: 389ms -> 373ms [-13.38%, +5.54%]
  • ✔️100_tpch_14: 123ms -> 125ms [-6.08%, +8.13%]
  • 🚀100_tpch_15: 226ms -> 214ms [-9.87%, -0.53%]
  • ✔️100_tpch_16: 147ms -> 149ms [-4.53%, +7.16%]
  • ✔️100_tpch_17: 184ms -> 195ms [-7.62%, +19.3%]
  • ✔️100_tpch_18: 223ms -> 227ms [-10.15%, +13.53%]
  • ✔️100_tpch_19: 271ms -> 283ms [-4.52%, +13.4%]
  • ✔️100_tpch_20: 187ms -> 178ms [-14.97%, +5.71%]
  • ✔️100_tpch_21: 1.58s -> 1.52s [-14.24%, +6.85%]
  • ✔️100_tpch_22: 162ms -> 168ms [-8.74%, +15.9%]

Further explanation regarding interpretation and methodology can be found in the documentation.

@andreranza
Copy link
Copy Markdown
Contributor Author

Still failing:

  ── Error ('test-as_duckplyr_df.R:1656:3'): as_duckplyr_df_impl() and mutate(d = month(d)) ──
  Error in `mutate(., d = month(d))`: Function `month()` not found.
  Backtrace:

Didn't get it running tests locally, IIRC. Do I need lubridate:: in tests? Will double check soon

@krlmlr
Copy link
Copy Markdown
Member

krlmlr commented Apr 16, 2025

Yes, we need lubridate::month() . All relevant PRs are in. Having all new functions in this PR sounds good.

@andreranza
Copy link
Copy Markdown
Contributor Author

Seeing some type mismatch using lubridate::day() on dplyr (returning integer) and duckdb (double). Trying to find my way out, otherwise @krlmlr I'll seek for your guidance. Thank you!

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if 212f8b5 is merged into main:

  • ✔️001_tpch_01: 23.1ms -> 23.3ms [-3.51%, +5.29%]
  • ✔️001_tpch_02: 66.9ms -> 66.3ms [-2.13%, +0.46%]
  • ✔️001_tpch_03: 34.2ms -> 35.4ms [-1.87%, +8.96%]
  • ✔️001_tpch_04: 22ms -> 22.1ms [-0.92%, +2.1%]
  • ✔️001_tpch_05: 58.6ms -> 58.5ms [-1.33%, +1.07%]
  • ❗🐌001_tpch_06: 11.6ms -> 12ms [+0.67%, +5.19%]
  • ✔️001_tpch_07: 74.6ms -> 74.5ms [-0.9%, +0.69%]
  • ✔️001_tpch_08: 95.8ms -> 95.6ms [-1.05%, +0.47%]
  • ✔️001_tpch_09: 71ms -> 71.4ms [-0.22%, +1.27%]
  • ✔️001_tpch_10: 49.2ms -> 49.5ms [-0.91%, +2.14%]
  • ✔️001_tpch_11: 34ms -> 33.9ms [-1.77%, +1%]
  • ✔️001_tpch_12: 21.5ms -> 21.5ms [-0.96%, +0.78%]
  • ✔️001_tpch_13: 18ms -> 18.1ms [-0.96%, +1.98%]
  • ✔️001_tpch_14: 17.4ms -> 17.3ms [-1.77%, +0.77%]
  • ✔️001_tpch_15: 31.6ms -> 31.4ms [-2.2%, +0.75%]
  • ✔️001_tpch_16: 30.3ms -> 30.5ms [-0.33%, +2.01%]
  • ✔️001_tpch_17: 27.2ms -> 27.2ms [-1.16%, +0.72%]
  • ✔️001_tpch_18: 22.7ms -> 22.2ms [-5.24%, +0.75%]
  • ✔️001_tpch_19: 45.1ms -> 44.9ms [-1.91%, +1.02%]
  • ✔️001_tpch_20: 46.7ms -> 46.8ms [-1.28%, +1.52%]
  • ✔️001_tpch_21: 83.7ms -> 83.9ms [-1.5%, +1.97%]
  • ✔️001_tpch_22: 47.8ms -> 47.5ms [-1.8%, +0.5%]
  • ✔️010_tpch_01: 87.5ms -> 86ms [-8.51%, +5.09%]
  • ✔️010_tpch_02: 119ms -> 121ms [-0.57%, +3.73%]
  • ✔️010_tpch_03: 62.3ms -> 62.9ms [-1.13%, +3.11%]
  • ✔️010_tpch_04: 46.9ms -> 44.8ms [-9.34%, +0.61%]
  • ✔️010_tpch_05: 135ms -> 135ms [-2.57%, +2.5%]
  • ✔️010_tpch_06: 32.1ms -> 32.2ms [-7.26%, +8.07%]
  • ✔️010_tpch_07: 145ms -> 147ms [-0.9%, +3.59%]
  • ✔️010_tpch_08: 118ms -> 117ms [-2.41%, +0.79%]
  • ✔️010_tpch_09: 159ms -> 158ms [-2.22%, +1.25%]
  • ✔️010_tpch_10: 125ms -> 123ms [-4.58%, +1.07%]
  • ✔️010_tpch_11: 44.8ms -> 44.8ms [-2.91%, +3.03%]
  • ✔️010_tpch_12: 54.6ms -> 54.2ms [-6.22%, +4.7%]
  • ✔️010_tpch_13: 51.3ms -> 54ms [-4.23%, +14.93%]
  • ✔️010_tpch_14: 37.4ms -> 36.5ms [-7.8%, +3.14%]
  • ✔️010_tpch_15: 56.6ms -> 58.3ms [-6.31%, +12.17%]
  • ✔️010_tpch_16: 44.3ms -> 44.3ms [-3.49%, +3.68%]
  • ✔️010_tpch_17: 57.9ms -> 59.2ms [-2.17%, +6.62%]
  • ✔️010_tpch_18: 54.4ms -> 54.8ms [-4.01%, +5.63%]
  • ✔️010_tpch_19: 138ms -> 136ms [-4.35%, +1.17%]
  • ✔️010_tpch_20: 71.7ms -> 70.8ms [-4.38%, +1.86%]
  • ✔️010_tpch_21: 319ms -> 322ms [-1.3%, +3.62%]
  • ✔️010_tpch_22: 109ms -> 111ms [-0.93%, +3.09%]
  • ✔️100_tpch_01: 337ms -> 356ms [-15.92%, +27.3%]
  • ✔️100_tpch_02: 128ms -> 126ms [-13.27%, +10.31%]
  • ✔️100_tpch_03: 170ms -> 176ms [-13.78%, +20.76%]
  • ✔️100_tpch_04: 145ms -> 151ms [-7.2%, +14.35%]
  • ✔️100_tpch_05: 246ms -> 246ms [-11.01%, +11.18%]
  • ✔️100_tpch_06: 98.7ms -> 103ms [-9.56%, +18.87%]
  • ✔️100_tpch_07: 221ms -> 234ms [-3.44%, +14.94%]
  • ✔️100_tpch_08: 258ms -> 272ms [-5.39%, +15.59%]
  • ✔️100_tpch_09: 312ms -> 325ms [-12.08%, +20.01%]
  • ✔️100_tpch_10: 204ms -> 209ms [-6.27%, +11.37%]
  • ✔️100_tpch_11: 86.1ms -> 80.6ms [-30.38%, +17.81%]
  • ✔️100_tpch_12: 200ms -> 194ms [-9.51%, +3.52%]
  • ✔️100_tpch_13: 332ms -> 347ms [-19.31%, +28.38%]
  • ✔️100_tpch_14: 115ms -> 118ms [-13.21%, +17.77%]
  • ✔️100_tpch_15: 204ms -> 213ms [-3.88%, +12.41%]
  • ✔️100_tpch_16: 129ms -> 127ms [-7.32%, +3.41%]
  • ✔️100_tpch_17: 179ms -> 185ms [-4.99%, +11.33%]
  • ✔️100_tpch_18: 208ms -> 209ms [-2%, +2.96%]
  • ✔️100_tpch_19: 269ms -> 246ms [-21.98%, +4.4%]
  • ✔️100_tpch_20: 181ms -> 175ms [-10.64%, +3.85%]
  • ✔️100_tpch_21: 1.37s -> 1.39s [-3.33%, +5.65%]
  • ✔️100_tpch_22: 156ms -> 149ms [-11.98%, +2.97%]

Further explanation regarding interpretation and methodology can be found in the documentation.

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if e23796d is merged into main:

  • ✔️001_tpch_01: 47.5ms -> 48.2ms [-0.39%, +3.41%]
  • ✔️001_tpch_02: 87.3ms -> 87.6ms [-0.91%, +1.55%]
  • ✔️001_tpch_03: 59.8ms -> 59.4ms [-2.1%, +0.57%]
  • ✔️001_tpch_04: 34.8ms -> 34.9ms [-0.61%, +1.45%]
  • ✔️001_tpch_05: 84.9ms -> 85.1ms [-0.78%, +1.24%]
  • ✔️001_tpch_06: 41.8ms -> 41.7ms [-1.57%, +1.17%]
  • ✔️001_tpch_07: 147ms -> 147ms [-1.07%, +0.29%]
  • ✔️001_tpch_08: 145ms -> 145ms [-0.72%, +0.84%]
  • ✔️001_tpch_09: 92.2ms -> 91.5ms [-1.85%, +0.39%]
  • ✔️001_tpch_10: 74.2ms -> 74.6ms [-0.25%, +1.33%]
  • ✔️001_tpch_11: 57.8ms -> 57.7ms [-0.88%, +0.53%]
  • ✔️001_tpch_12: 99.5ms -> 99.3ms [-1.17%, +0.83%]
  • ✔️001_tpch_13: 36.5ms -> 36.5ms [-1.29%, +1.25%]
  • ✔️001_tpch_14: 59.2ms -> 58.9ms [-1.25%, +0.16%]
  • ✔️001_tpch_15: 68ms -> 67.6ms [-1.37%, +0.26%]
  • ✔️001_tpch_16: 103ms -> 103ms [-0.61%, +1.29%]
  • ✔️001_tpch_17: 52.3ms -> 51.9ms [-1.98%, +0.44%]
  • ✔️001_tpch_18: 29.8ms -> 29.7ms [-1.35%, +1.2%]
  • ✔️001_tpch_19: 320ms -> 320ms [-0.73%, +0.8%]
  • ✔️001_tpch_20: 77.3ms -> 77.4ms [-0.87%, +1.11%]
  • ✔️001_tpch_21: 128ms -> 129ms [-0.13%, +1.62%]
  • ✔️001_tpch_22: 258ms -> 258ms [-0.67%, +0.39%]
  • ✔️010_tpch_01: 113ms -> 114ms [-1.73%, +3.42%]
  • ✔️010_tpch_02: 149ms -> 151ms [-2.41%, +4.86%]
  • ✔️010_tpch_03: 90.5ms -> 90.3ms [-2.66%, +2.36%]
  • ✔️010_tpch_04: 59.3ms -> 59.7ms [-0.85%, +2.41%]
  • ✔️010_tpch_05: 173ms -> 170ms [-4.77%, +0.7%]
  • ✔️010_tpch_06: 62.7ms -> 62.4ms [-4.46%, +3.54%]
  • ✔️010_tpch_07: 231ms -> 230ms [-2.84%, +2.06%]
  • ✔️010_tpch_08: 167ms -> 167ms [-1.59%, +1.83%]
  • ✔️010_tpch_09: 186ms -> 188ms [-1.07%, +3.15%]
  • ✔️010_tpch_10: 156ms -> 158ms [-1.54%, +3.41%]
  • ✔️010_tpch_11: 69.2ms -> 69.7ms [-1.74%, +3.26%]
  • ✔️010_tpch_12: 135ms -> 134ms [-1.94%, +1.58%]
  • ✔️010_tpch_13: 71.9ms -> 71.9ms [-2.08%, +2.23%]
  • ✔️010_tpch_14: 78.7ms -> 79.6ms [-0.33%, +2.49%]
  • ✔️010_tpch_15: 93.3ms -> 95.7ms [-1.32%, +6.43%]
  • ✔️010_tpch_16: 118ms -> 117ms [-1.65%, +0.64%]
  • 🚀010_tpch_17: 86.1ms -> 83.5ms [-5.71%, -0.2%]
  • ✔️010_tpch_18: 64.8ms -> 63.3ms [-7.37%, +2.64%]
  • ✔️010_tpch_19: 419ms -> 417ms [-1.93%, +1.2%]
  • ✔️010_tpch_20: 102ms -> 103ms [-1.23%, +2.49%]
  • ✔️010_tpch_21: 376ms -> 378ms [-2.33%, +3.53%]
  • ✔️010_tpch_22: 328ms -> 330ms [-1.39%, +2.21%]
  • ✔️100_tpch_01: 374ms -> 337ms [-25.26%, +5.79%]
  • ✔️100_tpch_02: 151ms -> 149ms [-7.26%, +4.44%]
  • ✔️100_tpch_03: 198ms -> 198ms [-9.7%, +9.44%]
  • ✔️100_tpch_04: 166ms -> 167ms [-8.53%, +10.39%]
  • ✔️100_tpch_05: 265ms -> 270ms [-6.74%, +10.97%]
  • ✔️100_tpch_06: 131ms -> 126ms [-11.66%, +3.98%]
  • ✔️100_tpch_07: 298ms -> 304ms [-1.58%, +5.87%]
  • ✔️100_tpch_08: 313ms -> 302ms [-11.49%, +4.51%]
  • ✔️100_tpch_09: 342ms -> 323ms [-12.18%, +1.04%]
  • ✔️100_tpch_10: 224ms -> 225ms [-8.48%, +9.73%]
  • ✔️100_tpch_11: 111ms -> 112ms [-7.6%, +7.89%]
  • ✔️100_tpch_12: 268ms -> 263ms [-9.71%, +5.61%]
  • ✔️100_tpch_13: 349ms -> 347ms [-5.52%, +4.14%]
  • ✔️100_tpch_14: 158ms -> 159ms [-8.42%, +9.29%]
  • ✔️100_tpch_15: 238ms -> 243ms [-6.25%, +10.55%]
  • ✔️100_tpch_16: 207ms -> 207ms [-5.16%, +5.41%]
  • ✔️100_tpch_17: 207ms -> 208ms [-5.54%, +6.46%]
  • ✔️100_tpch_18: 218ms -> 213ms [-6.5%, +1.99%]
  • ✔️100_tpch_19: 538ms -> 532ms [-6.19%, +3.96%]
  • ✔️100_tpch_20: 208ms -> 208ms [-1.83%, +2.47%]
  • ✔️100_tpch_21: 1.45s -> 1.47s [-0.05%, +3.07%]
  • ✔️100_tpch_22: 368ms -> 369ms [-1.13%, +1.4%]

Further explanation regarding interpretation and methodology can be found in the documentation.

@krlmlr krlmlr requested a review from Copilot February 22, 2026 10:05
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for lubridate::month() and several other lubridate date manipulation functions to duckplyr. The changes enable these functions to be translated and executed efficiently in DuckDB.

Changes:

  • Added lubridate::month() to the list of implemented date manipulation functions in documentation
  • Extended translation support for multiple lubridate functions including day(), month(), year(), quarter(), and various date parsing functions
  • Added comprehensive test coverage for the new lubridate functions

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
vignettes/limits.Rmd Updated documentation to include lubridate::month() in the list of implemented functions and added it to the example code
tools/00-funs.R Added test cases for new lubridate functions including day(), month(), year(), and date parsing functions
tests/testthat/test-as_duckplyr_df.R Added test cases verifying correct behavior of lubridate functions (day(), month(), year(), quarter(), ymd())
R/translate.R Registered multiple lubridate functions in the package lookup table for translation support
Comments suppressed due to low confidence (2)

vignettes/limits.Rmd:199

  • Trailing whitespace detected on lines 197-199. Remove the trailing spaces after the commas for consistency with line 200.
    hour = lubridate::hour(a), 
    minute = lubridate::minute(a), 
    second = lubridate::second(a), 

tests/testthat/test-as_duckplyr_df.R:1675

  • Extra blank line found between test blocks. Remove one blank line to maintain consistency with spacing between other test cases in this file.


test_that("as_duckplyr_df_impl() and mutate(d = lubridate::year(d))", {

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link
Copy Markdown
Contributor

This is how benchmark results would change (along with a 95% confidence interval in relative change) if 9570cb5 is merged into main:

  • ✔️001_tpch_01: 48.7ms -> 48.9ms [-1.78%, +2.79%]
  • ✔️001_tpch_02: 90.6ms -> 90.7ms [-0.91%, +1.09%]
  • ✔️001_tpch_03: 58.6ms -> 58.5ms [-1.05%, +0.83%]
  • ✔️001_tpch_04: 34.7ms -> 34.7ms [-1.11%, +1.01%]
  • ✔️001_tpch_05: 85.6ms -> 85.2ms [-1.47%, +0.52%]
  • ✔️001_tpch_06: 40.4ms -> 40.2ms [-1.58%, +0.71%]
  • ✔️001_tpch_07: 147ms -> 147ms [-0.82%, +0.86%]
  • ✔️001_tpch_08: 147ms -> 147ms [-0.94%, +0.79%]
  • ✔️001_tpch_09: 93ms -> 92.8ms [-1.41%, +0.9%]
  • ✔️001_tpch_10: 75.3ms -> 75.2ms [-1.27%, +1%]
  • ✔️001_tpch_11: 59ms -> 58.7ms [-1.37%, +0.29%]
  • ✔️001_tpch_12: 95.2ms -> 95.3ms [-0.49%, +0.72%]
  • ✔️001_tpch_13: 36.7ms -> 36.7ms [-1.56%, +1.8%]
  • ❗🐌001_tpch_14: 57.4ms -> 57.8ms [+0.02%, +1.23%]
  • ✔️001_tpch_15: 68.8ms -> 68.5ms [-2.46%, +1.52%]
  • ✔️001_tpch_16: 100ms -> 99.9ms [-0.84%, +0.26%]
  • ✔️001_tpch_17: 51.7ms -> 51.4ms [-1.59%, +0.29%]
  • ✔️001_tpch_18: 30.9ms -> 31ms [-1.36%, +2.4%]
  • ✔️001_tpch_19: 301ms -> 302ms [-0.11%, +0.95%]
  • ✔️001_tpch_20: 79.2ms -> 79.5ms [-1%, +1.69%]
  • ✔️001_tpch_21: 136ms -> 135ms [-1.63%, +0.68%]
  • ✔️001_tpch_22: 246ms -> 246ms [-0.44%, +0.34%]
  • ✔️010_tpch_01: 129ms -> 128ms [-2.7%, +0.47%]
  • ✔️010_tpch_02: 148ms -> 148ms [-1.74%, +1.81%]
  • ✔️010_tpch_03: 89.1ms -> 88.8ms [-2.21%, +1.61%]
  • ✔️010_tpch_04: 59.7ms -> 59.7ms [-2.09%, +2.04%]
  • ✔️010_tpch_05: 170ms -> 168ms [-3.02%, +0.98%]
  • ✔️010_tpch_06: 61.5ms -> 63.1ms [-1.87%, +7.2%]
  • ✔️010_tpch_07: 225ms -> 225ms [-1.04%, +1.22%]
  • ✔️010_tpch_08: 169ms -> 168ms [-1.39%, +0.37%]
  • 🚀010_tpch_09: 189ms -> 186ms [-2.78%, -0.1%]
  • ✔️010_tpch_10: 157ms -> 156ms [-3%, +1.6%]
  • ✔️010_tpch_11: 69.4ms -> 70.5ms [-0.35%, +3.42%]
  • ✔️010_tpch_12: 129ms -> 130ms [-1.4%, +1.69%]
  • ✔️010_tpch_13: 74.5ms -> 74.4ms [-1.25%, +0.9%]
  • ✔️010_tpch_14: 77.6ms -> 78.3ms [-0.61%, +2.41%]
  • ✔️010_tpch_15: 94.2ms -> 95.5ms [-3.47%, +6.35%]
  • ✔️010_tpch_16: 114ms -> 114ms [-1.67%, +0.96%]
  • ✔️010_tpch_17: 84.7ms -> 85ms [-3.72%, +4.23%]
  • ✔️010_tpch_18: 75.6ms -> 76.3ms [-3.06%, +4.9%]
  • ✔️010_tpch_19: 400ms -> 400ms [-0.44%, +0.57%]
  • ✔️010_tpch_20: 105ms -> 104ms [-2.85%, +0.92%]
  • ✔️010_tpch_21: 391ms -> 394ms [-0.77%, +2.67%]
  • ✔️010_tpch_22: 312ms -> 313ms [-0.42%, +1.35%]
  • ✔️100_tpch_01: 429ms -> 407ms [-13.94%, +3.94%]
  • ✔️100_tpch_02: 151ms -> 151ms [-3.58%, +4.49%]
  • ✔️100_tpch_03: 224ms -> 213ms [-17.33%, +7.61%]
  • ✔️100_tpch_04: 177ms -> 172ms [-8.98%, +2.8%]
  • ✔️100_tpch_05: 275ms -> 272ms [-11.3%, +8.89%]
  • ✔️100_tpch_06: 127ms -> 133ms [-2.98%, +13.56%]
  • ✔️100_tpch_07: 318ms -> 308ms [-16.51%, +10.26%]
  • ✔️100_tpch_08: 320ms -> 308ms [-9.94%, +2.09%]
  • ✔️100_tpch_09: 366ms -> 365ms [-13.22%, +13.08%]
  • ✔️100_tpch_10: 242ms -> 238ms [-14.15%, +10.88%]
  • ✔️100_tpch_11: 111ms -> 112ms [-2.06%, +2.47%]
  • ✔️100_tpch_12: 258ms -> 272ms [-2.15%, +13.08%]
  • ✔️100_tpch_13: 387ms -> 390ms [-6.21%, +7.77%]
  • ✔️100_tpch_14: 154ms -> 155ms [-5.62%, +7.56%]
  • ✔️100_tpch_15: 249ms -> 244ms [-9.32%, +5.74%]
  • ✔️100_tpch_16: 210ms -> 210ms [-2.8%, +2.59%]
  • ✔️100_tpch_17: 199ms -> 194ms [-16.89%, +12.06%]
  • ✔️100_tpch_18: 230ms -> 224ms [-10.42%, +5.61%]
  • ✔️100_tpch_19: 535ms -> 535ms [-8.73%, +8.75%]
  • ✔️100_tpch_20: 196ms -> 195ms [-5.96%, +5.24%]
  • ✔️100_tpch_21: 1.54s -> 1.52s [-8.39%, +6.16%]
  • ✔️100_tpch_22: 350ms -> 351ms [-1.41%, +2.17%]

Further explanation regarding interpretation and methodology can be found in the documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

duckplyr does not support lubridate

3 participants