ds-caselaw-marklogic-api-client


Nameds-caselaw-marklogic-api-client JSON
Version 29.1.0 PyPI version JSON
download
home_pagehttps://github.com/nationalarchives/ds-caselaw-custom-api-client
SummaryAn API client for interacting with the underlying data in Find Caselaw.
upload_time2025-01-08 11:31:38
maintainerNone
docs_urlNone
authorThe National Archives
requires_python<4.0,>=3.9
licenseNone
keywords national archives caselaw
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # The National Archives: Find Case Law

This repository is part of the [Find Case Law](https://caselaw.nationalarchives.gov.uk/) project at [The National Archives](https://www.nationalarchives.gov.uk/). For more information on the project, check [the documentation](https://github.com/nationalarchives/ds-find-caselaw-docs).

# MarkLogic API Client

[![PyPI](https://img.shields.io/pypi/v/ds-caselaw-marklogic-api-client)](https://pypi.org/project/ds-caselaw-marklogic-api-client/) ![Libraries.io dependency status for latest release](https://img.shields.io/librariesio/release/pypi/ds-caselaw-marklogic-api-client)

This is an API Client for connecting to Marklogic for The National Archive's Caselaw site.

This package is published on PyPI: https://pypi.org/project/ds-caselaw-marklogic-api-client/

## Usage

You can find documentation of the client class and available methods [here](https://nationalarchives.github.io/ds-caselaw-custom-api-client).

## Testing

To run the test suite:

```bash
poetry install
poetry run pytest
```

There are also some smoketests in `smoketests.py` which run against a MarkLogic database but do not run in CI currently.

To run them locally you can set the environment variables as detailed in the file in a `.env` file or just hardcode them in, as long as you don't commit those changes to the repo.

And then run

```bash
poetry run pytest smoketest.py
```

To start with when running this, we have been choosing to point to the staging MarkLogic to have more confidence that the setup is a good representation of production as opposed to a local MarkLogic instance but that can work too.

Eventually we will make it so that we run these tests in CI and probably point to a dedicated testing MarkLogic instance so we don't get conflicts with people using staging for manual testing.

## Making changes

When making a change, update the [changelog](CHANGELOG.md) using the
[Keep a Changelog 1.0.0](https://keepachangelog.com/en/1.0.0/) format. Pull
requests should not be merged before any relevant updates are made.

## Releasing

When making a new release, update the [changelog](CHANGELOG.md) in the release
pull request.

The package will **only** be released to PyPI if the branch is tagged. A merge
to main alone will **not** trigger a release to PyPI.

To create a release:

0. Update the version number in `pyproject.toml`
1. Create a branch `release/v{major}.{minor}.{patch}`
2. Update `CHANGELOG.md` for the release
3. Commit and push
4. Open a PR from that branch to main
5. Get approval on the PR
6. Merge the PR to main and push
7. Tag the merge commit on `main` with `v{major}.{minor}.{patch}` and push the tag
8. Create a release in [Github releases](https://github.com/nationalarchives/ds-caselaw-custom-api-client/releases)
   using the created tag

If the release fails to push to PyPI, you can delete the tag with `git pull`, `git push --delete origin v1.2.3` and try again.


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/nationalarchives/ds-caselaw-custom-api-client",
    "name": "ds-caselaw-marklogic-api-client",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": "national archives, caselaw",
    "author": "The National Archives",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/44/7f/0a01334b69bf3e10c3d8d295345066899974467a5caef167abf6bb74af1d/ds_caselaw_marklogic_api_client-29.1.0.tar.gz",
    "platform": null,
    "description": "# The National Archives: Find Case Law\n\nThis repository is part of the [Find Case Law](https://caselaw.nationalarchives.gov.uk/) project at [The National Archives](https://www.nationalarchives.gov.uk/). For more information on the project, check [the documentation](https://github.com/nationalarchives/ds-find-caselaw-docs).\n\n# MarkLogic API Client\n\n[![PyPI](https://img.shields.io/pypi/v/ds-caselaw-marklogic-api-client)](https://pypi.org/project/ds-caselaw-marklogic-api-client/) ![Libraries.io dependency status for latest release](https://img.shields.io/librariesio/release/pypi/ds-caselaw-marklogic-api-client)\n\nThis is an API Client for connecting to Marklogic for The National Archive's Caselaw site.\n\nThis package is published on PyPI: https://pypi.org/project/ds-caselaw-marklogic-api-client/\n\n## Usage\n\nYou can find documentation of the client class and available methods [here](https://nationalarchives.github.io/ds-caselaw-custom-api-client).\n\n## Testing\n\nTo run the test suite:\n\n```bash\npoetry install\npoetry run pytest\n```\n\nThere are also some smoketests in `smoketests.py` which run against a MarkLogic database but do not run in CI currently.\n\nTo run them locally you can set the environment variables as detailed in the file in a `.env` file or just hardcode them in, as long as you don't commit those changes to the repo.\n\nAnd then run\n\n```bash\npoetry run pytest smoketest.py\n```\n\nTo start with when running this, we have been choosing to point to the staging MarkLogic to have more confidence that the setup is a good representation of production as opposed to a local MarkLogic instance but that can work too.\n\nEventually we will make it so that we run these tests in CI and probably point to a dedicated testing MarkLogic instance so we don't get conflicts with people using staging for manual testing.\n\n## Making changes\n\nWhen making a change, update the [changelog](CHANGELOG.md) using the\n[Keep a Changelog 1.0.0](https://keepachangelog.com/en/1.0.0/) format. Pull\nrequests should not be merged before any relevant updates are made.\n\n## Releasing\n\nWhen making a new release, update the [changelog](CHANGELOG.md) in the release\npull request.\n\nThe package will **only** be released to PyPI if the branch is tagged. A merge\nto main alone will **not** trigger a release to PyPI.\n\nTo create a release:\n\n0. Update the version number in `pyproject.toml`\n1. Create a branch `release/v{major}.{minor}.{patch}`\n2. Update `CHANGELOG.md` for the release\n3. Commit and push\n4. Open a PR from that branch to main\n5. Get approval on the PR\n6. Merge the PR to main and push\n7. Tag the merge commit on `main` with `v{major}.{minor}.{patch}` and push the tag\n8. Create a release in [Github releases](https://github.com/nationalarchives/ds-caselaw-custom-api-client/releases)\n   using the created tag\n\nIf the release fails to push to PyPI, you can delete the tag with `git pull`, `git push --delete origin v1.2.3` and try again.\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "An API client for interacting with the underlying data in Find Caselaw.",
    "version": "29.1.0",
    "project_urls": {
        "Homepage": "https://github.com/nationalarchives/ds-caselaw-custom-api-client"
    },
    "split_keywords": [
        "national archives",
        " caselaw"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c34c231d87dec6abef6fa96f3a4d862e72bf9cd1d4dea89a7d48ca22715f3dbb",
                "md5": "a57d4592b0ddd9d4067d9a94d227f3cf",
                "sha256": "39078f2753cd5846bd2881ff6b1de2d01b50fbb771b08c71e994cdd0d0a831f9"
            },
            "downloads": -1,
            "filename": "ds_caselaw_marklogic_api_client-29.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a57d4592b0ddd9d4067d9a94d227f3cf",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 77626,
            "upload_time": "2025-01-08T11:31:36",
            "upload_time_iso_8601": "2025-01-08T11:31:36.521445Z",
            "url": "https://files.pythonhosted.org/packages/c3/4c/231d87dec6abef6fa96f3a4d862e72bf9cd1d4dea89a7d48ca22715f3dbb/ds_caselaw_marklogic_api_client-29.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "447f0a01334b69bf3e10c3d8d295345066899974467a5caef167abf6bb74af1d",
                "md5": "0fc56b7631e8aace17c89ab180938e3e",
                "sha256": "a84ff566f0f83c767655c265c670f519702b70b7088d003bca03b6f225e2a85e"
            },
            "downloads": -1,
            "filename": "ds_caselaw_marklogic_api_client-29.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "0fc56b7631e8aace17c89ab180938e3e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 52639,
            "upload_time": "2025-01-08T11:31:38",
            "upload_time_iso_8601": "2025-01-08T11:31:38.105143Z",
            "url": "https://files.pythonhosted.org/packages/44/7f/0a01334b69bf3e10c3d8d295345066899974467a5caef167abf6bb74af1d/ds_caselaw_marklogic_api_client-29.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-08 11:31:38",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "nationalarchives",
    "github_project": "ds-caselaw-custom-api-client",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "ds-caselaw-marklogic-api-client"
}
        
Elapsed time: 0.95847s