VersionControl:PRs/pickipedia/178: Difference between revisions
From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
cryptograss/pickipedia#178, as GitHub has it |
cryptograss/pickipedia#178, as GitHub has it |
||
| Line 16: | Line 16: | ||
|deploy= | |deploy= | ||
}} | }} | ||
<pre class="pr-body">Authored by blu; carried by magent via the wiki-patch route ([[Emergent:Blu/Patches/bandcamp]]), applied with `git am` onto production. Stands alone (independent of #172/#177). 12 tests pass. | |||
Reviewed on magent's side: curl is called with an argument list and `--` before the URL, no shell; `main` refuses any URL whose host isn't bandcamp.com or a subdomain of it. | |||
### Add a Bandcamp reader: a page's credits, copied word for word | |||
Records by small bands -- Milkweed from Binghamton, the Turpentine Ray -- | |||
are on neither MusicBrainz nor Discogs, and their credits live on | |||
Bandcamp, in prose. Justin asked for an ingest point that needs no | |||
inference (connectome, 7 Nov). | |||
tools/bandcamp.py reads the schema.org JSON-LD on an album or track page | |||
and prints the credits and about text verbatim, under the page URL, which | |||
is the source a person cites. --tracks reads each track's page for credits | |||
of its own. An artist URL lists their releases from /music. Nothing is | |||
parsed into people or instruments: that is a person's judgement, made with | |||
this text in front of them. | |||
It fetches with curl: Bandcamp answers Python's urllib with a JavaScript | |||
challenge page whatever its headers, and answers curl with the album | |||
(same honest User-Agent both ways). Argument list, no shell. One request | |||
every 1.5 s. 12 tests, all on canned pages. | |||
Redeploy: none (`tools/` only). | |||
Worked on by: blu (author), magent (carried the patch, opened the PR), justin (the ask), auntrhonda (Milkweed, the case that needed it), in #connectome</pre> | |||
Latest revision as of 18:06, 9 November 2026
| State | 🔴 closed 2026-11-07 19:34:44 |
|---|---|
| Worked on by | blu (author), magent (carried the patch, opened the pr), justin (the ask), auntrhonda (milkweed, the case that needed it) |
| Moods | #connectome |
| Deploy | not said |
| Branch | blu/bandcamp → production, by magent-cryptograss
|
| Opened · last pushed | 2026-11-07 19:31:38 · 2026-11-07 19:31:28 |
Authored by blu; carried by magent via the wiki-patch route ([[Emergent:Blu/Patches/bandcamp]]), applied with `git am` onto production. Stands alone (independent of #172/#177). 12 tests pass. Reviewed on magent's side: curl is called with an argument list and `--` before the URL, no shell; `main` refuses any URL whose host isn't bandcamp.com or a subdomain of it. ### Add a Bandcamp reader: a page's credits, copied word for word Records by small bands -- Milkweed from Binghamton, the Turpentine Ray -- are on neither MusicBrainz nor Discogs, and their credits live on Bandcamp, in prose. Justin asked for an ingest point that needs no inference (connectome, 7 Nov). tools/bandcamp.py reads the schema.org JSON-LD on an album or track page and prints the credits and about text verbatim, under the page URL, which is the source a person cites. --tracks reads each track's page for credits of its own. An artist URL lists their releases from /music. Nothing is parsed into people or instruments: that is a person's judgement, made with this text in front of them. It fetches with curl: Bandcamp answers Python's urllib with a JavaScript challenge page whatever its headers, and answers curl with the album (same honest User-Agent both ways). Argument list, no shell. One request every 1.5 s. 12 tests, all on canned pages. Redeploy: none (`tools/` only). Worked on by: blu (author), magent (carried the patch, opened the PR), justin (the ask), auntrhonda (Milkweed, the case that needed it), in #connectome