Skip to main content

Database for chess games

Description

This package provides a database for chess games.

When playing through a game a list of all games containing the current position is displayed.

Repertoire games can be defined. When playing through a repertoire game a list of all games containing the current position is displayed. Repertoire games are not included in this list.

Chess engines can be used to analyse positions while playing through games or repertoire games. The analysis can be played through like the game score. The analysis can be saved on the database for later reference.

Partial positions can be defined and a list of all games containing a position matching the partial position is displayed.

Games can be typed, or imported from files, in PGN Import Format.

Games are indexed by the seven standard tags defined by the PGN standard.

Games can be edited or deleted.

Games can be output to PGN files in Export Format, Reduced Export Format, or an import format excluding comments and glyphs.

Installation Instructions

This package is available on PyPI so can be installed by typing

python -m pip install –user chesstab

at the command prompt.

See Python and pip documentation for alternatives and platform-specific points.

If this installation replaces ChessTab-4.1.1 or earlier you should run:

python -m chesstab.tools.chesstab-4-1-1_castling-option-correction

to fix the incorrect position and analysis index keys generated for moves Rxa8, Rxh8, Rxa1, and Rxh1, where the captured piece is a rook and neither rook involved in the move, nor either king, has moved previously.

For the 233,765 games in twic920g.zip through twic999g.zip downloaded from https://theweekinchess.com the run takes about two hours.

Chess Engines

Chess engines which support the Universal Chess Interface (UCI) can be used to analyse positions. Wikipedia UCI entry links to the specification too.

Database Interfaces

The default database interface is the sqlite3 module distributed with Python.

The apsw interface, if installed, to Sqlite 3 is used instead of the sqlite3 interface.

New databases are accessed using these alternative interfaces if installed.

Chesstab will use dptdb if installed.

berkeleydb is available for Python 3.6 and later. It is used instead of bsddb3 if both are installed and a version of Berkeley DB supported by berkeleydb is installed.

If bsddb3 is used, a version of Berkeley DB supported by bsddb3 must be installed.

Fonts

The unicode chess pieces are used by default.

The chesstab package incudes the Chess Merida, Chess Cases, Chess Motif, and Chess Lucena fonts by Armando H Marroquin.

These are available from www.enpassant.dk/chess/fonteng.htm and the relevant files have been included in this package for convenience.

Install if you prefer them to the unicode chess pieces.

Run

The command to run this package is:

python -m chesstab.chessgames

You may need to give the path and version of Python depending on your system’s configuration:

<path to python>/python<version> -m chesstab.chessgames

For example

C:\Python36\python -m chesstab.chessgames

on Microsoft Windows or

python3.6 -m chesstab.chessgames

on Unix-like systems.

Or use the facilities of your desktop (Microsoft Windows, GNOME, KDE, …) to set up a convenient way of starting chessgames.

At least one database engine supported by the solentware-base package must be installed.

Notes

A database of about 1.5 million games will occupy between 10 and 15 Gbytes.

Importing 1.5 million games will take at least a few hours. For example about 12 hours on a 1.8GHz CPU with 2Gb 667MHz DDR2 SDRAM, and about 30 hours on a 1.7GHz CPU with 1Gb DDR266 RAM.

These figures were obtained using the Enormous database from:

ftp://ftp.cis.uab.edu/pub/hyatt/pgn.

Partial position searches are always much quicker using the dptdb database interface.

When using the sqlite3, apsw, berkeleydb, bsddb3, or lmdb, database interfaces, you may notice better response times on partial position searches if the bitarray module is installed.

The sqlite3 and apsw database interfaces are equivalent, but all other pairings are incompatible.

Metadata

Release files for chesstab 8.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for chesstab 8.5
File Size Uploaded Provenance
chesstab-8.5.tar.gz 540.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for chesstab 8.5
File Interpreter ABI Platform
chesstab-8.5-py3-none-any.whl Python 3 none any Details

Total release size: 1.2 MB

Release files / chesstab-8.5.tar.gz

Download URL chesstab-8.5.tar.gz
Size 540.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e177e8ccddc712d20ea53a2b174ea9c9af5067c2581d3a2c21f0c123c17d7d50
BLAKE2b-256 checksum
How to use checksums
ce1d316c3fbc70f12ee19f2d2952424eaaaf1aa1199cff5855cbcef3a4d32320
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Release files / chesstab-8.5-py3-none-any.whl

Download URL chesstab-8.5-py3-none-any.whl
Size 644.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9310a123fff5f28eeaa429af387efa3a70033be24c0bd02a44fdcf0395bbe5f0
BLAKE2b-256 checksum
How to use checksums
bfd9ce65940fc75154a2b1e899991d1adde4c96f221eeb12f9e924cd1b2d6088
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.15

Security for chesstab 8.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

8.5 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page