I had to revert this change, specifically getting information from “PDF metadata”.
The PDF metadata was being fetched using pdf-reader gem which introduced lots of its own dependencies. I just removed the dependency on pdf-reader gem for onebox.
Now the onebox will simply show pdf filename and filesize. This change significantly reduces time required to onebox because instead of fetching the whole file and loading it in memory we are now just making a HEAD request to get “Content-Length” for filesize and the URL contains filename.
Here is the demo of new PDF onebox:
.
.
.
I looked into this locally. It was because of pdf title not being able to forced into UTF-8 encoding. The new onebox fixes this issue:
https://namati.org/wp-content/uploads/2017/01/4.Evidence_Land-Rights_-Myanmar-2017-Final.pdf