Skip to content

Version 1.0

Compare
Choose a tag to compare
@lahwaacz lahwaacz released this 19 Aug 19:18
· 1380 commits to master since this release
1.0
  • Major reorganization of the project structure: common code shared between the
    scripts has been moved to the ws module and the original
    MediaWiki module has been renamed to ws.core, some of its
    parts were moved directly to ws.
  • Reorganization of the ws.parser_helpers submodule, added
    ws.parser_helpers.encodings.
  • Expanded documentation, fixed many typos in docstrings.
  • Expanded test suite, at least for parts not depending on the MediaWiki API.
  • Generalized the ws.core.connection.Connection class to handle also
    the index.php entry point.
  • Created the ws.core.lazy.LazyProperty decorator and made
    ws.core.api.API.is_loggedin, ws.core.api.API.user_rights
    and ws.core.api.API.namespaces proper properties.
  • Started using the logging module for messages.
  • New unified configuration interface for all scripts, using the
    ws.config submodule. See Configuration <configuration>_ for
    details.
    • Basically all scripts were modified to use the ws.config
      interface.
    • Default cookie path was changed from $XDG_CACHE_HOME to
      $XDG_CACHE_HOME/wiki-scripts.
    • Some command line arguments were renamed because of global configuration in
      a config file.
  • Added also assert=bot to all bot editing queries.
  • Fixed bugs:
    • formatting of streak timestamps in the statistic.py script
    • namespace prefix parsing in ws.core.api.API.detect_namespace
    • extraction of header elements in case they are nested inside e.g.
      <noinclude> tags
    • whitespace squashing in the
      ws.parser_helpers.wikicode.remove_and_squash function
    • query-continuation algorithm (used to fail with generator queries with
      multiple values in the prop query parameter)
    • JSON serialization of non-str keys
    • exception catching for opening cookies
  • Improved scripts:
    • statistics.py (minor bug fixes)
    • update-interlanguage-links.py (heavy refactoring)
    • check-user-namespace.py (warn if user pages are categorized)
    • list-redirects-broken-fragments.py (improved detection of redirects with
      broken fragments by comparing dot-encoded fragments)
    • dump.py (deduplicated against ws.core.connection.Connection)
  • New scripts:
    • recategorize-over-redirect.py