Skip to content

Instantly share code, notes, and snippets.

@ThierryO
Last active October 24, 2019 08:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save ThierryO/068d0904fbaf42ee0bcee445dd4b23e4 to your computer and use it in GitHub Desktop.
Save ThierryO/068d0904fbaf42ee0bcee445dd4b23e4 to your computer and use it in GitHub Desktop.

Compare datahash among OS

library(git2r)
library(git2rdata)
x <- c("", "|", "#", "@", "$")
y <- iconv(x, to = "UTF-8")
root <- tempfile("test")
dir.create(root)
write_vc(data.frame(x = x, stringsAsFactors = FALSE), file = "test", root = root, sorting = "x")
## 1307142e85caaaa92f8bc9250c6fb5f4b20ee3c7 
##                               "test.tsv" 
## e21516f070a7f525bd8bbdc86f04846e1f263197 
##                               "test.yml"
z <- tail(readLines(file.path(root, "test.tsv"), encoding = "UTF-8"), -1)
cbind(x, y, z)
##      x   y   z  
## [1,] "€" "€" "#"
## [2,] "|" "|" "$"
## [3,] "#" "#" "€"
## [4,] "@" "@" "@"
## [5,] "$" "$" "|"
cbind(Encoding(x), Encoding(y), Encoding(z))
##      [,1]      [,2]      [,3]     
## [1,] "UTF-8"   "UTF-8"   "unknown"
## [2,] "unknown" "unknown" "unknown"
## [3,] "unknown" "unknown" "UTF-8"  
## [4,] "unknown" "unknown" "unknown"
## [5,] "unknown" "unknown" "unknown"
cat(paste(x, y, collapse = "\n"))
## € €
## | |
## # #
## @ @
## $ $
cbind(hash(x), hash(y), hash(z))
##      [,1]                                      
## [1,] "eca7d6d81cace4d7fdc1808a5d7619cfe98a6bde"
## [2,] "a3871d4508259dc2e3eae0be6fc69d1d3daf0a35"
## [3,] "4287ca8617970fa8fc025b75cb319c7032706910"
## [4,] "b516b2c489f1fefd53b4a1905bf37480a8eb056d"
## [5,] "6f4f765ed6998a016a32bf9b4c48b77219ef7f0a"
##      [,2]                                      
## [1,] "eca7d6d81cace4d7fdc1808a5d7619cfe98a6bde"
## [2,] "a3871d4508259dc2e3eae0be6fc69d1d3daf0a35"
## [3,] "4287ca8617970fa8fc025b75cb319c7032706910"
## [4,] "b516b2c489f1fefd53b4a1905bf37480a8eb056d"
## [5,] "6f4f765ed6998a016a32bf9b4c48b77219ef7f0a"
##      [,3]                                      
## [1,] "4287ca8617970fa8fc025b75cb319c7032706910"
## [2,] "6f4f765ed6998a016a32bf9b4c48b77219ef7f0a"
## [3,] "eca7d6d81cace4d7fdc1808a5d7619cfe98a6bde"
## [4,] "b516b2c489f1fefd53b4a1905bf37480a8eb056d"
## [5,] "a3871d4508259dc2e3eae0be6fc69d1d3daf0a35"
cbind(meta(x), meta(y))
##      [,1] [,2]
## [1,] "€"  "€" 
## [2,] "|"  "|" 
## [3,] "#"  "#" 
## [4,] "@"  "@" 
## [5,] "$"  "$"
---
title: "Compare datahash among OS"
output: github_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
```{r}
library(git2r)
library(git2rdata)
```
```{r}
x <- c("€", "|", "#", "@", "$")
y <- iconv(x, to = "UTF-8")
root <- tempfile("test")
dir.create(root)
write_vc(data.frame(x = x, stringsAsFactors = FALSE), file = "test", root = root, sorting = "x")
z <- tail(readLines(file.path(root, "test.tsv"), encoding = "UTF-8"), -1)
cbind(x, y, z)
cbind(Encoding(x), Encoding(y), Encoding(z))
cat(paste(x, y, collapse = "\n"))
cbind(hash(x), hash(y), hash(z))
cbind(meta(x), meta(y))
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment