PYOSMIUM-GET-CHANGES(1)

πŸ’– PYOSMIUM-GET-CHANGES πŸ’–

okay bestie, listen up β€” this is the Generated Python Manual page for pyosmium-get-changes, and it's genuinely one of my faves. it grabs diffs off an OSM planet server and keeps your data from going stale. no cap. πŸ¦‹


✨ NAME ✨

pyosmium-get-changes β€” your little diff-fetching bestie πŸ’…


🌸 SYNOPSIS 🌸

pyosmium-get-changes [options]

πŸŽ€ DESCRIPTION πŸŽ€

Fetch diffs from an OSM planet server. that's the whole vibe. πŸ”₯

okay so where do you even start? you gotta tell it, and you have three ways: give it a sequence ID, give it a date, or let it figure it out from an OSM file. main character choices only.

and here's the thing β€” if you don't give it an output file, it won't download anything at all. it'll just print the initial sequence ID it would use (or save that ID to a file if you asked for that) and dip. that's actually super useful, because it's how you bootstrap the whole update process. lowkey iconic. ✨

once it's running, it tries to download until either the latest change on the server is found, or you hit the maximum requested diff size. heads up though: diffs are kept in memory during download, so don't go feral with the size. 😭

on success, it prints a single number to stdout β€” the sequence number where you continue updates next run. that output can also be written to a file (and read back from one later, which is the whole point).

Note: you can pipe the diff to standard output with -o -. but then the sequence number will not be printed, so you must write it to a file in that case. fr fr, don't forget. πŸ’€

some OSM data sources want a cookie sent along with the HTTP requests. pyosmium-get-changes does not go fetch that cookie from those services for you β€” it's not your mom. πŸ™ˆ but! it can read cookies from a Netscape-style cookie jar file, send them to the server, and save any cookies it receives back into the jar file. self-sufficient queen. πŸ‘‘


πŸ’… OPTIONS πŸ’…

  • -v β€” bump up the verbosity (stack it, use it multiple times) πŸ—£οΈ
  • -o OUTFILE, --outfile OUTFILE β€” name of the diff output file. if you skip it, it only prints the sequence ID where updates would start.
  • --format FORMAT β€” the format the data should be saved in.
  • --server SERVER_URL β€” base URL of the replication server.
  • --diff-type SERVER_DIFF_TYPE β€” file format the replication server uses (default: osc.gz).
  • --cookie COOKIE β€” Netscape-style cookie jar file to read cookies from, and where received cookies get written to. πŸͺ
  • -s OUTSIZE, --size OUTSIZE β€” max data to load, in MB (defaults to 100MB when no end date/ID has been set).
  • -I ID, --start-id ID β€” the sequence ID to start with.
  • -D DATE, --start-date DATE β€” the date when to start updates.
  • -O OSMFILE, --start-osm-data OSMFILE β€” start at the date of the newest OSM object in the file.
  • --end-id ID β€” last sequence ID to download.
  • -E DATE, --end-date DATE β€” do not download diffs later than the given date. ⏰
  • -f SEQ_FILE, --sequence-file SEQ_FILE β€” sequence file. if the file exists, updates start after the id given in the file. at the end of the process, the last sequence ID contained in the diff is written. πŸ“
  • --ignore-osmosis-headers β€” when determining the start from an OSM file, ignore any potential replication info in the header and search for the newest OSM object instead.
  • -d, --no-deduplicate β€” do not deduplicate diffs. just let them stack, bestie.
  • --socket-timeout SOCKET_TIMEOUT β€” set the timeout for file downloads. ⏳
  • --version β€” show the program's version number and exit.

πŸ‘‘ AUTHOR πŸ‘‘

Sarah Hoffmann lonvia@denofr.de


🌈 DISTRIBUTION 🌈

the latest version of pyosmium may be downloaded from https://github.com/osmcode/pyosmium/


and that's the whole page, bestie!! 🫢 this was pyosmium version 4.3.1, dated 2026-04-01, and honestly? she ate. go forth and update your data. periodt. πŸ’œβœ¨πŸ§š

πŸ“¦ where this page comes from