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
DrivingThatTrain (talk | contribs)
cryptograss/pickipedia#178, as GitHub has it
DrivingThatTrain (talk | contribs)
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

pickipedia#178: Add a Bandcamp reader (working name Liner): a page's credits, word for word
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