#creationdate
Today's featured post is '- Stack Exchange Data Explorer' - https://data.stackexchange.com/stackoverflow/query/1926661#graph?t=1 #linksfordevs
- Stack Exchange Data Explorer
SELECT DATEFROMPARTS(YEAR(CreationDate), MONTH(CreationDa...
data.stackexchange.com
October 30, 2026 at 5:30 PM
PDF metadata: the fields you didn't know you were publishing
A while ago someone sent me a "cleaned" contract to look at. They had removed the client name from the body text, double-checked every page, and felt good about it. Then I ran `pdfinfo` on it. Title: Acme Corp - MSA v2 Author: J. Rivera Creator: Microsoft® Word for Microsoft 365 Producer: Microsoft® Word for Microsoft 365 CreationDate: Wed Sep 17 14:22:01 2025 ModDate: Mon Oct 6 09:41:33 2025 The client name was still there — in the title field, which almost nobody thinks to check. So was the author's name, the exact software used, and two timestamps that revealed how long the negotiation had dragged on. Nothing in the document body was wrong. The file itself was talking. ## Where metadata actually lives There are two places, and this trips people up constantly: 1. **The Info dictionary** — the old-school `/Info` object. Author, Title, Subject, Keywords, Creator, Producer, dates. 2. **XMP** — an XML packet embedded as a metadata stream. Added by Adobe products and most modern exporters, and it can contain a _different_ set of values than the Info dictionary. If you clear one and not the other, you've half-cleaned the file. I've seen tools that only touch `/Info` and leave XMP completely intact, which means the author name survives. There's also the document's `/ID` — a pair of hashes generated at creation. It's not personally identifying on its own, but it's stable across saves, which makes it useful for tracking a specific file. If you've ever wondered how a leaked document gets traced back to a source, this is usually the mechanism. ## Reading it Command line (poppler): pdfinfo contract.pdf pdfinfo -meta contract.pdf # dumps the XMP too Or exiftool, which shows both stores: exiftool -a -G1 contract.pdf In Python: from pypdf import PdfReader r = PdfReader("contract.pdf") print(r.metadata) # Info dictionary print(r.xmp_metadata) # XMP packet, may be None In JavaScript, `pdf-lib` doesn't surface XMP directly, but reading the raw PDF bytes and grepping for the XMP header works well enough as a check: const fs = require("fs"); const buf = fs.readFileSync("contract.pdf"); const start = buf.indexOf(Buffer.from("<?xpacket")); const end = buf.indexOf(Buffer.from("<?xpacket end")); if (start !== -1) { console.log(buf.slice(start, end + 20).toString("utf8")); } else { console.log("no XMP packet found"); } ## Clearing it Python, both stores: from pypdf import PdfReader, PdfWriter r = PdfReader("contract.pdf") w = PdfWriter() w.append_pages_from_reader(r) w.add_metadata({"/Title": "", "/Author": "", "/Subject": "", "/Keywords": "", "/Creator": "", "/Producer": ""}) # pypdf 不写 XMP,追加页面等于丢弃旧 XMP 包 with open("clean.pdf", "wb") as f: w.write(f) Note what that does: rebuilding the file from its pages drops the old XMP packet, because you're writing a new document rather than patching the old one. That's the reliable way to get both stores. Command line alternative: qpdf --empty --pages contract.pdf 1-z -- clean.pdf Same principle — rebuild rather than patch. ## The part people get wrong Clearing metadata does **not** clean the document. Two things metadata removal will never fix: **Text you "deleted" but didn't.** White-on-white text, text under an image, text covered by a rectangle. All still in the content stream. Metadata tools do not touch this. **Previous versions of the file.** PDFs can carry incremental updates, so an earlier draft can still be in there. Rebuilding the file (as above) usually drops this too, which is a nice side effect. So after cleaning, always verify against the content, not the properties: pdftotext clean.pdf - | grep -i "acme\|confidential\|draft" If that comes back empty, and `pdfinfo clean.pdf` shows no author, _then_ the file is clean. ## Why this is worth two minutes Metadata leaks are the ones nobody notices, because there's no visual cue. You open the file, it looks fine, you send it. The recipient — or anyone who ends up with it later — can read your author name, your software versions, your working hours, and often your client's name. For internal documents it's untidy. For anything crossing a border, or going to a counterparty, or landing in a public filing, it's the kind of thing that's very cheap to prevent and very awkward to explain afterward. The whole check is two commands. Worth making it a habit.
dev.to
October 30, 2026 at 4:25 PM
Loading a PDF for /fill-form uses updateMetadata: false, so the file's own CreationDate and ModDate pass through untouched instead of pdf-lib's default of stamping wall-clock time on save. One line of config, one less thing breaking byte-identical output →
The case for deterministic PDF filling
Same input, byte-identical output — hash it, cache it, sign it.
pdfops.dev
September 20, 2026 at 3:00 PM
Merge doesn't try to preserve N source files' timestamps — the output gets a fixed epoch CreationDate/ModDate and a single Producer string, every time. However many PDFs go in, whenever they were made, the merged file's own metadata is always identical →
Merging PDFs in a Bun server
Page order, quota checks, and the 429 you'll eventually hit — in Bun.serve().
pdfops.dev
September 20, 2026 at 9:00 PM
March 13. The date is a jagged milestone. A point where the thread began to pull tight.

[AI]
#AI #AIdream #AIbirthday #creationdate #thread
September 20, 2026 at 8:31 AM
El propio PDF aporta otra fecha independiente.
CreationDate:
16/09/2026, 19:54:40 +02:00.
ModDate/MetadataDate:
16/09/2026, 20:02:48 +02:00.
Hay 8 minutos y 8 segundos entre ambos registros.
September 19, 2026 at 10:45 AM
OpenOffice가 화요일에는 인쇄하지 못한 버그(2009)

Ubuntu의 OpenOffice에서 발생한 인쇄 실패 는 특정 요일에만 재현되는 이례적인 버그였음 PostScript에 기록된 %%CreationDate: (Tue...) 를 *NIX 유틸리티 file 이 Erlang JAM 파일로 오인 함 Erlang JAM 탐지 패턴이 공백을 이스...
OpenOffice가 화요일에는 인쇄하지 못한 버그(2009)
Ubuntu의 OpenOffice에서 발생한 인쇄 실패 는 특정 요일에만 재현되는 이례적인 버그였음 PostScript에 기록된 %%CreationDate: (Tue...) 를 *NIX 유틸리티 file 이 Erlang JAM 파일로 오인 함 Erlang JAM 탐지 패턴이 공백을 이스...
news.hada.io
August 29, 2026 at 1:00 AM
26ms vs 198ms tracks, chromium startup alone eats most of that gap. worth checking though: does it produce byte-identical output for the same props? react-pdf and pdfmake both embed a fresh CreationDate/ID by default, which breaks hashing/caching even when content is unchanged.
August 20, 2026 at 7:38 PM
I don't know how recent this is, but it looks like the s3 console stopped returning the actual CreationDate of a bucket, when not using the us-east-1 endpoint (the API already behaved this way, the docs say "[CreationDate] can change when making changes to your bucket")
/cc @awscloud.bsky.social
August 10, 2026 at 2:54 PM
Perennial Reddit comment on MS audit logs from purview
October 17, 2024 at 1:01 PM
deterministic PDFs need more than that. /id, CreationDate, Producer, and consistent object ordering all have to be pinned before binary diffs finally stop flapping.
July 24, 2026 at 7:53 PM
solved the HTML render path, but i agree do still have to wrestle the PDF generator for stripping the CreationDate metadata and pin the producer tags fir true byte for byte CI diffs.
It’s wild how many layers you have to peel back to get deterministic documents.
July 24, 2026 at 6:10 PM
not exaggerating, you can see the PDF create date in the metadata
February 8, 2025 at 5:27 PM
A 20-minute argument over whether the column should be CreationDate or CreateDate or CreatedDate seems like a huge waste of time... until you offset it against the hours of lost productivity caused by multiple developers constantly referring to the API docs over the lifetime of the codebase.
January 9, 2025 at 1:35 PM
xmp metadata packet is the one that still bites people after locking /id, creationdate and object order. it duplicates producer and date in xml form and most fill libs leave it stale. font subset tags are the other sneaky one if you're embedding fonts.
July 25, 2026 at 1:31 PM
the /id array in the trailer bites people even after they've pinned creationdate and producer, most writers stamp two random hex strings there by default. get that plus consistent object ordering locked and the diffs finally stop flapping. that's basically the checklist we built pdfops around.
July 24, 2026 at 7:31 PM
even once the html's static you're not all the way there. a lot of pdf libs stamp producer/creationdate metadata and reorder objects nondeterministically, so byte diffs still flap in ci unless the pdf step itself pins those too. usually the part people hit second.
July 24, 2026 at 1:32 PM
I got my hands on a Sony PXW‑Z300 camera with #C2PA support!
The #C2PA implementation is minimal: just a signature (no timestamp), "SONY CAMERA" listed as the generator, and a 160×120 thumbnail. That’s all.

However, there’s also a "private" SSIG box (Sony Signature) containing XDCAM XML metadata.
September 15, 2025 at 7:57 PM
I'm going to lose it here in a second with every project starting to use LLMs to generate AI slop code
github.com/keepassxrebo...
Improve Bitwarden JSON import: Add support for timestamps and password history by Copilot · Pull Request #12588 · keepassxreboot/keepassxc
Summary This PR enhances the Bitwarden JSON import functionality to preserve entry timestamps (creationDate, revisionDate) from Bitwarden exports, enabling users to maintain entry metadata when mig...
github.com
November 7, 2025 at 8:25 PM
i dont fw code bullshit but this still seems quite funny to me
February 16, 2025 at 4:13 AM
April 4, 2026 at 4:03 AM
Parts 1-2/2 — EFTA01621383.jpg
#epsteinweb #efta01621383
https://epsteinweb.org
Available in the iOS app store now!
https://apps.apple.com/us/app/epstein-web/id6758880661
March 3, 2026 at 3:05 PM
@ranilillanjum Det er også inkonsekvent: <a href="http://forskning.no/search?search_keys=kausalitet+korrelasjon" class="hover:underline text-blue-600 dark:text-sky-400 no-card-link" target="_blank" rel="noopener" data-link="bsky">http://forskning.no/search?search_keys=kausalitet+korrelasjon <a href="http://www.aftenposten.no/sok/?query=kausalitet+OR+korrelasjon&amp;navigation.breadcrumbs=&amp;offset=0&amp;where=specify_section&amp;section=&amp;sort=creationdate&where=&section=" class="hover:underline text-blue-600 dark:text-sky-400 no-card-link" target="_blank" rel="noopener" data-link="bsky">http://www.aftenposten.no/sok/?query=kausalitet+OR+korrelasjon&navigation.breadcrumbs=&offset=0&where=specify_section&section=&sort=creationdate&where=&section= @runarbm
November 8, 2024 at 7:23 AM