NEWS.md
scrape_wahlrecht() now locates the poll rows by content (the first row whose date column holds a date) instead of skipping a fixed, per-URL number of rows. wahlrecht places <tfoot> before <tbody>, so the footer rows land above the data and the offset changes whenever that markup does: the Politbarometer header cell became a <th>, html_table() promoted the header, every body row shifted up by one, and the scraper read the party legend as column names and aborted on the duplicates — which also took down get_surveys() (#146).
scrape_wahlrecht() also locates the header row by content, so it no longer depends on whether html_table() promoted it. The Politbarometer page used to carry a stray <td> that kept the header inside <tbody> (special-cased by URL) and uses <th> today; both layouts now parse without a per-page branch.
scrape_wahlrecht() now fails with a clear message when a page yields no poll rows or no recognisable party columns, instead of continuing on unusable input and silently discarding every poll via the total == 100 filter.
scrape_wahlrecht() no longer warns Unknown or uninitialised column: 'Sonstige' on pages that do not report a combined “Sonstige” figure.
Repository moved to the KOALA-LMU organization: https://github.com/KOALA-LMU/coalitions ; documentation now at https://koala-lmu.github.io/coalitions/ (old URLs redirect, except the pkgdown site)
dHondt() and sls() now return a ties attribute (TRUE/FALSE) indicating whether the seat distribution is non-unique due to tied quotients at the last seat. When ties = TRUE, the result was resolved randomly and re-running may yield a different but equally valid distribution (see issue #131).\value tag to pipe.Rd
\dontrun{} with \donttest{} in get_surveys() and scrape_ltw() examplesget_surveys() example\value documentation to all functions missing return value descriptionsinst/CITATION to use bibentry() / c(person()) (replacing deprecated citEntry() / personList())scrape_wahlrecht() example to not use internal ::: accessor\dontrun{} with \donttest{} in examples requiring internet accessscrape_austria() function and Austria-related dependencies (RCurl, jsonlite)one_of() with any_of() throughoutgather() with pivot_longer()
mutate_at(), summarize_at(), filter_at() with across()/if_all()
select_if() with where()
get_superior() (stirng -> string)flatten_df() -> bind_rows())unnest() -> explicit column spec)pkgdown )