Skip to main content

The Classical Language Toolkit

Project description

https://travis-ci.org/cltk/cltk.svg?branch=master

About

Experimental CLTK with new NLP() class.

Installation

$ pip install cltk

Documentation

$ make docs

Development

The following steps will give you a working development environment.

Python setup

Use pyenv to manage Python versions and poetry for package builds.

  • Install pyenv:
  • Install supported versions of the Python language through pyenv into a dedicated virtualenv:
    • $ pyenv install --list | grep 3.8

    • $ pyenv install 3.8.3 (or whatever is latest)

    • $ pyenv virtualenv 3.8.3 cltk

    • $ pyenv local cltk. Open a new window and this should be activated (check with $ python --version).

  • Install poetry to support packaging: $ curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python (https://poetry.eustace.io/docs/)

  • Install dependencies in poetry.lock: $ poetry install

  • Install Stanford NLP models: $ poetry run python scripts/download_misc_dependencies.py

  • Install Graphiz (necessary for building docs): https://graphviz.gitlab.io/download/

Packaging

  • Validate structure of pyproject.toml: $ poetry check

  • Update project version with poetry: $ poetry version prepatch (e.g., 1.0.0 to 1.0.1-alpha.0)
    • For minor version: $ poetry version preminor (1.0.0 to 1.1.0-alpha.0)

    • For major version: $ poetry version premajor (1.0.0 to 2.0.0-alpha.0)

  • Update all dependencies to latest version (optional): $ make updateDependencies

  • Make package (sdist and wheel): $ make build

  • Check typing: $ make typing
    • View report at .mypy_cache/index.html

  • Run linter: $ make lint
    • View report at pylint/pylint.html

  • Auto-format code: $ make format

  • Build docs: $ make docs
    • View docs at docs/_build/html/index.html

  • Make UML diagrams: $ make uml
    • View diagrams at docs/classes.png and docs/packages.png

  • Run the above at each commit with pre-commit: $ poetry run pre-commit install (just once)

  • Run tests: $ make test

  • Publish pre-release (permissions required): $ make uploadTest

  • Install from TestPyPI: $ make installPyPITest

  • Repeat the above as necessary

  • Bump version: $ poetry version patch (e.g., 1.0.1-alpha.0 to 1.0.1)
    • For minor version: $ poetry version minor (1.0.1-alpha.0 to 1.1.0)

    • For major version: $ poetry version major (1.0.1-alpha.0 to 2.0.0)

    • If you need to publish multiple versions of an alpha pre-release, run $ poetry version prerelease (e.g., 1.0.1-alpha.0 to 1.0.1-alpha.1 to 1.0.1-alpha.2)

  • Publish to PyPI (permissions required): $ make upload

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

cltk-1.0.0a5.tar.gz (313.9 kB view details)

Uploaded Source

Built Distribution

cltk-1.0.0a5-py3-none-any.whl (380.6 kB view details)

Uploaded Python 3

File details

Details for the file cltk-1.0.0a5.tar.gz.

File metadata

  • Download URL: cltk-1.0.0a5.tar.gz
  • Upload date:
  • Size: 313.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.7.5 Darwin/19.5.0

File hashes

Hashes for cltk-1.0.0a5.tar.gz
Algorithm Hash digest
SHA256 cf206738adb4616c7d4f42e67a29263a4546f0db4a1dd136dabe5398ce6a9a53
MD5 1aa2a29f826e8d7a653d4421a0be7218
BLAKE2b-256 2807aeb54d5a41020f6787f6b8b71d7ff4e19bbccaab9c37b9e0ef9b3c215b2e

See more details on using hashes here.

File details

Details for the file cltk-1.0.0a5-py3-none-any.whl.

File metadata

  • Download URL: cltk-1.0.0a5-py3-none-any.whl
  • Upload date:
  • Size: 380.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.7.5 Darwin/19.5.0

File hashes

Hashes for cltk-1.0.0a5-py3-none-any.whl
Algorithm Hash digest
SHA256 4cd54dea7855eab923480f9bdd9f7b819ab4f6166186b9f3d0689c77046d0ad9
MD5 2dc94bee78e4ad6b1201548ad99f03a0
BLAKE2b-256 122bfbb43cec090b224aa16e86ec52c96adf2d4b857980ca60bc88101f31c18b

See more details on using hashes here.

Supported by

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