Commit 190af65
authored
Release v0.9.5: reproducible Colab-from-GitHub + pinned online version (#3)
* fix(pipeline): B1-B5 ordering/guards, N1-N3 stats, t-SNE metric and determinism
excluded_codes and group replace before embedding; RoBERTa chunk tokenize;
cross-POS multiset preserve; edge labels use raw similarity; t-SNE precomputed
distance for similarity matrices with deterministic keep order.
* chore: stop tracking pytest bytecode under tests/
* docs(notebook): restore Core principles block in usage guide
Keep author-facing intro markdown with ARS and Ethnography citations.
* chore(notebook): pin kernelspec to cmap_vis_replication
* fix(notebook,pipeline): B1/B2 wrapper ordering + safe list-column parser
Reorder all four teaching-notebook wrappers (run_heatmap_pipeline,
run_tsne_pipeline, run_heatmap_network_plain_pipeline,
run_heatmap_network_pipeline) to match the core pipeline contract:
exclude codes before sentence extraction (B1), and rebuild
filtered_sentences after group-label replacement so the co-occurrence /
PMI / TF-IDF methods embed the replaced text (B2).
Replace eval() on stringified codes/data_group cells with a bounded,
list[str]-only parse_list_column_cell in vis_tool_core.py and all four
notebook wrappers; it fails loud on tuples, malformed literals,
non-string items, and oversized cells instead of executing arbitrary code.
Add discriminating wrapper-ordering tests and list-column parser tests.
Document the supported clustering method/metric pairs (PMI = cosine only)
and the Ward-linkage clustered-heatmap design note in the README.
* fix(p1b-oom): fold Sol OOM docs + release-hygiene findings
P1b-OOM disposition (Sol/ultra out-of-model review). Gate targets B1/B2/eval
confirmed clean; folding the doc/config/metadata findings only.
- README: clustered heatmap is unconditional (clustered= flag is not gated);
TF-IDF experimental variant requires distance_metric="raw_weighted" (F10, F11)
- notebook: align method labels to README — method 2 "Jaccard" -> "Co-occurrence";
PMI described as PPMI, cosine-only; core comment typo co-occurrnece->co-occurrence
- notebook kernelspec cmap_vis_replication -> python3 (portable; was local env) (F4)
- .gitignore: re-exclude function/__pycache__/ and the foreign CDPH
org_cooccurrence_network.py so neither can reach the public repo (F8, F9)
Deferred (tracked follow-up): F2 empty-seed None-guard, F3 singleton memory,
F5 pytest dep, F6 parser char-bound, F1 chunking (pre-existing), F7 nltk-at-collection.
* Release v0.9.5: reproducible Colab-from-GitHub notebook + pinned online version
- On Colab the notebook now self-installs: it clones the pinned release tag
(v0.9.5) into a tag-specific folder and verifies the checkout is exactly that
tag before importing, so the online notebook and the function/ package always
come from the same version. This is a no-op outside Colab (local runs
unaffected).
- Point the Open-in-Colab badge and links (README, paper, notebook) at the
pinned tag so the online version is reproducible rather than tracking a moving
branch.
- Add a note for users importing from ATLAS.ti / NVivo / MAXQDA (CMAP QDPX
Converter).
- Widen supported torch to <2.9 so it runs on the current Colab torch (2.8).
- Add CITATION.cff.
* Add Beyond Text (2015) + open-access links; widen supported torch/scikit-learn
- Core Principles: add Abramson & Dohan 2015, "Beyond Text: Using Arrays to
Represent and Analyze Ethnographic Data" (Sociological Methodology) with an
open-access link, and add an open-access link for the 2018 computational
ethnography paper.
- Widen the supported/required ranges for the packages Colab provides so the
environment check passes on current Colab: scikit-learn to <1.8 and torch to
<3 (kept the notebook check and requirements.txt in sync).
* Reword Colab setup: "packages Colab does not ship" -> "packages that aren't already on Colab"
Plainer language in the Colab setup cell's guidance and comment; no behavior change.
* Collapse Setup and Helper Functions cells by default in Colab (cellView=form)1 parent 62659a2 commit 190af65
19 files changed
Lines changed: 1746 additions & 199 deletions
File tree
- documentation
- function
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
148 | 148 | | |
149 | 149 | | |
150 | 150 | | |
| 151 | + | |
151 | 152 | | |
152 | 153 | | |
153 | 154 | | |
| |||
159 | 160 | | |
160 | 161 | | |
161 | 162 | | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | | - | |
| 47 | + | |
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
| |||
334 | 334 | | |
335 | 335 | | |
336 | 336 | | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
337 | 354 | | |
338 | 355 | | |
339 | 356 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
64 | | - | |
| 64 | + | |
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
| |||
0 commit comments