{"action":"created","issue":{"url":"https://api.github.com/repos/apache/arrow/issues/2845","repository_url":"https://api.github.com/repos/apache/arrow","labels_url":"https://api.github.com/repos/apache/arrow/issues/2845/labels{/name}","comments_url":"https://api.github.com/repos/apache/arrow/issues/2845/comments","events_url":"https://api.github.com/repos/apache/arrow/issues/2845/events","html_url":"https://github.com/apache/arrow/pull/2845","id":374427401,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI2MTMyNDk1","number":2845,"title":"ARROW-3628: [R] Expose Decimal128Array using vctrs","user":{"login":"romainfrancois","id":2625526,"node_id":"MDQ6VXNlcjI2MjU1MjY=","avatar_url":"https://avatars3.githubusercontent.com/u/2625526?v=4","gravatar_id":"","url":"https://api.github.com/users/romainfrancois","html_url":"https://github.com/romainfrancois","followers_url":"https://api.github.com/users/romainfrancois/followers","following_url":"https://api.github.com/users/romainfrancois/following{/other_user}","gists_url":"https://api.github.com/users/romainfrancois/gists{/gist_id}","starred_url":"https://api.github.com/users/romainfrancois/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/romainfrancois/subscriptions","organizations_url":"https://api.github.com/users/romainfrancois/orgs","repos_url":"https://api.github.com/users/romainfrancois/repos","events_url":"https://api.github.com/users/romainfrancois/events{/privacy}","received_events_url":"https://api.github.com/users/romainfrancois/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2018-10-26T15:10:21Z","updated_at":"2018-11-12T15:14:53Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/apache/arrow/pulls/2845","html_url":"https://github.com/apache/arrow/pull/2845","diff_url":"https://github.com/apache/arrow/pull/2845.diff","patch_url":"https://github.com/apache/arrow/pull/2845.patch"},"body":"This is a WIP for holding decimal types in a vctrs record, that I submit for initial feedback. \r\n\r\nI'm probably doing something wrong, because the ToString methods gives me nonsense: \r\n\r\n``` r\r\nlibrary(arrow)\r\n#> \r\n#> Attaching package: 'arrow'\r\n#> The following object is masked from 'package:utils':\r\n#> \r\n#>     timestamp\r\n#> The following objects are masked from 'package:base':\r\n#> \r\n#>     array, table\r\nlibrary(vctrs)\r\n#> \r\n#> Attaching package: 'vctrs'\r\n#> The following object is masked from 'package:arrow':\r\n#> \r\n#>     list_of\r\n\r\n(x <- vec_cast(1:10, new_decimal128()))\r\n#> <arrow_decimal128[10]>\r\n#>  [1] 1  2  3  4  5  6  7  8  9  10\r\n# ???\r\n(a <- array(x))\r\n#> arrow::Decimal128Array <0x7fc838463bd0> \r\n#> [\r\n#>   18446744073709551616,\r\n#>   36893488147419103232,\r\n#>   55340232221128654848,\r\n#>   73786976294838206464,\r\n#>   92233720368547758080,\r\n#>   110680464442257309696,\r\n#>   129127208515966861312,\r\n#>   147573952589676412928,\r\n#>   166020696663385964544,\r\n#>   184467440737095516160\r\n#> ]\r\n\r\na$FormatValue(0L)\r\n#> [1] \"18446744073709551616\"\r\n\r\na$as_vector()\r\n#> <arrow_decimal128[10]>\r\n#>  [1] 1  2  3  4  5  6  7  8  9  10\r\n```\r\n\r\nThe basic idea is to host a Decimal128 (which takes 128 bits) in a complex (which also takes 128 bits), so that it minimizes copies (eventually when we use ALTREP). \r\n\r\n"},"comment":{"url":"https://api.github.com/repos/apache/arrow/issues/comments/437917365","html_url":"https://github.com/apache/arrow/pull/2845#issuecomment-437917365","issue_url":"https://api.github.com/repos/apache/arrow/issues/2845","id":437917365,"node_id":"MDEyOklzc3VlQ29tbWVudDQzNzkxNzM2NQ==","user":{"login":"romainfrancois","id":2625526,"node_id":"MDQ6VXNlcjI2MjU1MjY=","avatar_url":"https://avatars3.githubusercontent.com/u/2625526?v=4","gravatar_id":"","url":"https://api.github.com/users/romainfrancois","html_url":"https://github.com/romainfrancois","followers_url":"https://api.github.com/users/romainfrancois/followers","following_url":"https://api.github.com/users/romainfrancois/following{/other_user}","gists_url":"https://api.github.com/users/romainfrancois/gists{/gist_id}","starred_url":"https://api.github.com/users/romainfrancois/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/romainfrancois/subscriptions","organizations_url":"https://api.github.com/users/romainfrancois/orgs","repos_url":"https://api.github.com/users/romainfrancois/repos","events_url":"https://api.github.com/users/romainfrancois/events{/privacy}","received_events_url":"https://api.github.com/users/romainfrancois/received_events","type":"User","site_admin":false},"created_at":"2018-11-12T15:14:53Z","updated_at":"2018-11-12T15:14:53Z","author_association":"CONTRIBUTOR","body":"The alternative is to use some sort of sentinel here too, this is what e.g. integer64 does in bit64"}}
{"actor":{"display_login":"romainfrancois"}}