Skip to main content

Tool to build and perform checks on WCA Regulations and Guidelines

Project description


# WCA Regulations Compiler

This is a tool to check, build, compare WCA Regulations and Guidelines and its translations.

## Install from PyPi

Just run `pip install wrc`.

## External dependencies

If you want to build the pdf versions, you need the **patched qt** version of [wkhtmltopdf](http://wkhtmltopdf.org/) in your `$PATH`.
These stable standalone binaries are available [here](http://wkhtmltopdf.org/downloads.html) for several platforms.

For CJK translations you also need to install some packages providing CJK fonts. The official build uses "UnBatang" for Korean (package `fonts-unfonts-core` or alike), "WenQuanYi Micro Hei" for Chinese (package `fonts-wqy-microhei` or alike), and "IPAX0208PGothic" for Japanese (package `fonts-ipafont` or alike).

## Run the thing

Here are some sample invocations:

- To check the Regulations and Guidelines:
`wrc path/to/wca-regulations --target=check`
- To build the html to the `build` directory:
`wrc path/to/wca-regulations --target=html --output=build`
- When building translation it's necessary to provide the language (to choose the appropriate font/pdf names):
`wrc path/to/wca-regulations-translations/french --language=french --target=pdf --output=build`
- Check that a translation matches exactly the original rules:
`wrc path/to/wca-regulations-translations/french --diff=path/to/wca-regulations`

You can also take a look at the travis [script](https://github.com/thewca/wca-regulations-translations/blob/master/travis.sh) used in the translations repository.


## Running from the sources

Note: the whole project is written using python 2.7, if something goes wrong it's likely because your `python` command defaults to python 3.

The compiler is built on top of python lex/yacc implementation `ply`, so you probably need to run `pip install ply` to install it.
When this is done, you can use `python -m wrc.wrc` from the repository's root instead of `wrc`.
If you want to use `wrc-states` from the source, an easy way to do this is to run `python -c "from wrc.wrc import states; states()"`

## Deploying to PyPi

(section for maintainers in PyPi)

- Bump the version number in `wrc/version.py`
- Clean the `dist` and `wrc.egg_info` directories
- `python2 setup.py egg_info`
- `python2 setup.py sdist bdist_wheel`
- `twine upload dist/*`

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wrc-1.2.0.tar.gz (719.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wrc-1.2.0-py2-none-any.whl (710.9 kB view details)

Uploaded Python 2

File details

Details for the file wrc-1.2.0.tar.gz.

File metadata

  • Download URL: wrc-1.2.0.tar.gz
  • Upload date:
  • Size: 719.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for wrc-1.2.0.tar.gz
Algorithm Hash digest
SHA256 58621663e2633291f855af344370ad3424e04d1cbab59b950d107375bb6be51a
MD5 bc1beff264e1d2224fcceb9e14410a1e
BLAKE2b-256 be113f3b4adc8bc178cf35511526a1de789944b1d2b0e7058cda0b56a1f006bb

See more details on using hashes here.

File details

Details for the file wrc-1.2.0-py2-none-any.whl.

File metadata

  • Download URL: wrc-1.2.0-py2-none-any.whl
  • Upload date:
  • Size: 710.9 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for wrc-1.2.0-py2-none-any.whl
Algorithm Hash digest
SHA256 eba8c42e922afe3ac91b8f4b47a1be30019edb0c559d0ed7f3d7a6c5a8646f4f
MD5 0f7dad2c03b5e672fdc57268241e1683
BLAKE2b-256 d84d21a58c55c2c37ae94b5d854ce99807c853dc57281f9942ca3ae8d9501452

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page