New features:
- `t.co` urls resolution map as attachment (CSV file)
- PDF filenames based on twitter url and creation date
Dev "quality of life" updates:
- Basic integration tests and GitHub CI
- HTML 404s
- PDF "producer" field now contains the app's version number
- Better checkbox field name
- Documentation edits
I finally found it!
The problem comes from the fact that `ghostscript` behaves differently on Mac OS and Linux: on the latter, it strips existing attachments.
I was able to confirm this is not just version related, unfortunately, and might be hard to fix.
`pdf-crop-margins` is also affected by this issue, since it uses `ghostscript` behind the scenes (at least for what we want it to do).
I therefore put together a quickfix / workaround, resizing the PDF manually to try and get most of the trailing whitespace out, and skipping compression.
The cropping is much less consistent but!
- It's much _much_ faster
- I _think_ this should fix attachments on prod
- We can revisit when time allows
I suspect I will need to make further adjustments to the cropping logic once this has been tested on the production server.
This commit also adds an "Unfold thread" checkbox on the homepage form, allowing to skip browser behaviors (which some times gives better results).