phlorest


Namephlorest JSON
Version 1.7.0 PyPI version JSON
download
home_pagehttps://github.com/phlorest/phlorest
SummaryA cldfbench plugin to curate language phylogenies
upload_time2025-10-24 10:39:05
maintainerNone
docs_urlNone
authorSimon Greenhill and Robert Forkel
requires_python>=3.9
licenseApache 2.0
keywords cldf
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # phlorest

A [cldfbench](https://github.com/cldf/cldfbench) plugin to curate language phylogenies.


## Install

```shell
pip install phlorest
```


## Usage

### Bootstrapping a `phlorest`-curated dataset

`phlorest` provides a `cldfbench` dataset template to create the skeleton of files and directories for a
`phlorest`-curated dataset, to be run with [cldfbench new](https://github.com/cldf/cldfbench/#creating-a-skeleton-for-a-new-dataset-directory).

Running

```shell
cldfbench new --template phlorest 
```

will create a dataset skeleton looking as follows
```shell
$ tree testtree/
testtree/
├── cldf
│   └── README.md
├── cldfbench_testtree.py
├── etc
│   ├── characters.csv
│   └── taxa.csv
├── metadata.json
├── raw
│   └── README.md
├── setup.cfg
├── setup.py
└── test.py
```


### Implementing CLDF creation

Implementing CLDF creation means - as for any other `cldfbench`-curated dataset - filling in the
`cmd_makecldf` method of the `Dataset` subclass in `cldfbench_<id>.py`.

The CLDF writer which can be accessed as `args.writer` within `cmd_makecldf` is an instance of
`phlorest.CLDFWriter`, which has convenience methods to add summary- or posterior trees to the CLDF
dataset. At least a summary is needed to make a dataset valid. Adding one looks as follows

```python
    args.writer.add_summary(
        self.raw_dir.read_tree(...),
        self.metadata,
        args.log)
```


### Running CLDF creation

With `cmd_makecldf` implemented, CLDF creation can be triggered running
```shell
cldfbench makecldf cldfbench_<id>.py
```

The resulting CLDF dataset can be validated running
```shell
pytest
```


### Release workflow

```shell
cldfbench makecldf --glottolog-version v4.8 --with-cldfreadme cldfbench_<id>.py
pytest
cldfbench zenodo --communities phlorest cldfbench_<id>.py
cldfbench readme cldfbench_<id>.py
phlorest check --with-R cldfbench_<id>.py
git commit -a -m"release vX.Y"
git push origin
phlorest release cldfbench_<id>.py vX.Y
```


## Dependencies

The `run_treeannotator` method of `Dataset` requires the `treeannotator` command from BEAST to be
installed. For details on how to install `treeannotator` (and `BEAST`), see https://beast.community/index.html

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/phlorest/phlorest",
    "name": "phlorest",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "cldf",
    "author": "Simon Greenhill and Robert Forkel",
    "author_email": "dlce.rdm@eva.mpg.de",
    "download_url": "https://files.pythonhosted.org/packages/b6/84/2da51b56e208368a9602162bf1ece6c0f1eb5dbae5be8b0bddcf3eb9e832/phlorest-1.7.0.tar.gz",
    "platform": "any",
    "description": "# phlorest\n\nA [cldfbench](https://github.com/cldf/cldfbench) plugin to curate language phylogenies.\n\n\n## Install\n\n```shell\npip install phlorest\n```\n\n\n## Usage\n\n### Bootstrapping a `phlorest`-curated dataset\n\n`phlorest` provides a `cldfbench` dataset template to create the skeleton of files and directories for a\n`phlorest`-curated dataset, to be run with [cldfbench new](https://github.com/cldf/cldfbench/#creating-a-skeleton-for-a-new-dataset-directory).\n\nRunning\n\n```shell\ncldfbench new --template phlorest \n```\n\nwill create a dataset skeleton looking as follows\n```shell\n$ tree testtree/\ntesttree/\n\u251c\u2500\u2500 cldf\n\u2502   \u2514\u2500\u2500 README.md\n\u251c\u2500\u2500 cldfbench_testtree.py\n\u251c\u2500\u2500 etc\n\u2502   \u251c\u2500\u2500 characters.csv\n\u2502   \u2514\u2500\u2500 taxa.csv\n\u251c\u2500\u2500 metadata.json\n\u251c\u2500\u2500 raw\n\u2502   \u2514\u2500\u2500 README.md\n\u251c\u2500\u2500 setup.cfg\n\u251c\u2500\u2500 setup.py\n\u2514\u2500\u2500 test.py\n```\n\n\n### Implementing CLDF creation\n\nImplementing CLDF creation means - as for any other `cldfbench`-curated dataset - filling in the\n`cmd_makecldf` method of the `Dataset` subclass in `cldfbench_<id>.py`.\n\nThe CLDF writer which can be accessed as `args.writer` within `cmd_makecldf` is an instance of\n`phlorest.CLDFWriter`, which has convenience methods to add summary- or posterior trees to the CLDF\ndataset. At least a summary is needed to make a dataset valid. Adding one looks as follows\n\n```python\n    args.writer.add_summary(\n        self.raw_dir.read_tree(...),\n        self.metadata,\n        args.log)\n```\n\n\n### Running CLDF creation\n\nWith `cmd_makecldf` implemented, CLDF creation can be triggered running\n```shell\ncldfbench makecldf cldfbench_<id>.py\n```\n\nThe resulting CLDF dataset can be validated running\n```shell\npytest\n```\n\n\n### Release workflow\n\n```shell\ncldfbench makecldf --glottolog-version v4.8 --with-cldfreadme cldfbench_<id>.py\npytest\ncldfbench zenodo --communities phlorest cldfbench_<id>.py\ncldfbench readme cldfbench_<id>.py\nphlorest check --with-R cldfbench_<id>.py\ngit commit -a -m\"release vX.Y\"\ngit push origin\nphlorest release cldfbench_<id>.py vX.Y\n```\n\n\n## Dependencies\n\nThe `run_treeannotator` method of `Dataset` requires the `treeannotator` command from BEAST to be\ninstalled. For details on how to install `treeannotator` (and `BEAST`), see https://beast.community/index.html\n",
    "bugtrack_url": null,
    "license": "Apache 2.0",
    "summary": "A cldfbench plugin to curate language phylogenies",
    "version": "1.7.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/phlorest/phlorest/issues",
        "Homepage": "https://github.com/phlorest/phlorest"
    },
    "split_keywords": [
        "cldf"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ba5c4dea2e04791ebab20bdfe8aabff5b1665978c61f57033a0c94f3eb970b62",
                "md5": "fd047b8e740c19bd483c48055b6864f1",
                "sha256": "a5003fc3b707754ff9452d7f1a63263ada6967d693f740cfd4ffc6f7563d29a7"
            },
            "downloads": -1,
            "filename": "phlorest-1.7.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fd047b8e740c19bd483c48055b6864f1",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.9",
            "size": 29429,
            "upload_time": "2025-10-24T10:39:04",
            "upload_time_iso_8601": "2025-10-24T10:39:04.177495Z",
            "url": "https://files.pythonhosted.org/packages/ba/5c/4dea2e04791ebab20bdfe8aabff5b1665978c61f57033a0c94f3eb970b62/phlorest-1.7.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b6842da51b56e208368a9602162bf1ece6c0f1eb5dbae5be8b0bddcf3eb9e832",
                "md5": "b411f906682b80c6ecb5ad44f29ca087",
                "sha256": "1d5ceaf2a8ec0f6a2026f885d63df4c6377e18f8dac5243b4a51277c9a18865d"
            },
            "downloads": -1,
            "filename": "phlorest-1.7.0.tar.gz",
            "has_sig": false,
            "md5_digest": "b411f906682b80c6ecb5ad44f29ca087",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 28169,
            "upload_time": "2025-10-24T10:39:05",
            "upload_time_iso_8601": "2025-10-24T10:39:05.496693Z",
            "url": "https://files.pythonhosted.org/packages/b6/84/2da51b56e208368a9602162bf1ece6c0f1eb5dbae5be8b0bddcf3eb9e832/phlorest-1.7.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-24 10:39:05",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "phlorest",
    "github_project": "phlorest",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "phlorest"
}
        
Elapsed time: 1.09079s