timelink


Nametimelink JSON
Version 1.1.18 PyPI version JSON
download
home_pagehttps://github.com/time-link/timelink-py
SummaryTimelink is an information system for person related information collected from historical sources.
upload_time2025-02-04 07:22:09
maintainerNone
docs_urlNone
authorJoaquim Ramos de Carvalho
requires_python>=3.10
licenseMIT license
keywords timelink
VCS
bugtrack_url
requirements alembic bokeh certifi cryptography docker fastapi fastui fief-client httpx ipykernel IPython Jinja2 jsonrpcclient makefun matplotlib mysql-connector-python networkx numpy pandas psycopg2-binary py-markdown-table pydantic pydantic-settings pytest python-box python-dotenv python-jose python-multipart pyYAML requests setuptools sqlalchemy-utils sqlalchemy-views SQLAlchemy sqlalchemy-utils starlette starlette-admin typer urllib3 uvicorn wheel
Travis-CI
coveralls test coverage No coveralls.
            Timelink is an information system for person related information collected from historical sources. 

=======
History
=======
1.1.18 (2025-02-04)
-------------------

- Fix rendering of dates in kleio outputs
- More improvment to migration of old databases.
- Add database version to information on TimelinkNotebook
- Various bug fixes.

1.1.17 (2025-01-20)
-------------------

- Improve migration of old databases
- Various improvments in unit tests

1.1.16 (2025-01-08)
-------------------

- Adds comment and original wording to entities_with_attribute
- Fixes problem with alembic and logging.
- Improves view generation across database migrations
- Improves testing fixtures


1.1.15 (2024-12-17)
-------------------

Implements real-entities (#21)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This is a major refactor of the code, including changes to database structure
and the way data is imported. The main changes are:

1. Entities now register the source of the data.
   This was necessary to detect easily cross source references,
   such as xsame_as that link occurrences in different
   sources refering to the same entity.
2. Migrations with Alembic are now used to update the database
   schema. This is a major change, and it is still experimental.
   From this version onwards changes to the database are handled
   through Alembic and authomatically
   triggered when a Timelink database is opened
   with TimelinkDatabase() class.
3. The import process was refactored to save the context of
   cross source references, and restoring them after reimport.
   `See this note <https://time-link.github.io/timelink-docs/D_Updating_sources_in_the_database/D.1%20Processing_new_versions_of_source_transcriptions/>`_
4. Improvements to to_kleio() rendering, taking into account
   `extra_info` with comments and original wording.

1.1.14 (2024-09-23)
-------------------

* Add model for RealEntiy, imports Real Entities (sameas and authority records).
          #22, #21 (only Real Entities)
* Improve rendering of extra_info in Kleio
* Removes Kleio-home from path when storing Kleio files #20
* Fixes problem with checking length of content for numeric fields #54
* Implements #53 facilitates access to ORM models using group names.


1.1.13 (2024-09-07)
-------------------

* Improves import when tables duplicate columns of super class table, bug fixes.
* Fixes issue #49: now import propagates data to higher levels in table hierarchy, even if the data is not mapped in the lower levels.
* Fixes #44: get_person and get_entity now accept db and session as parameters
* Improves rendering of automatic ids.

1.1.12 (2024-09-05)
-------------------

* Fixes issue #48: now import propagates data to higher levels in table
    hierarchy, even if the data is not mapped in the lower levels.

1.1.11 (2024-07-7)
------------------

* Implements Issue43 (adds groupname filtering to attribute_values)
* Fixes bug in pandas.styles due to deprecation of matplotlib.cm
* Fix a problem with the release process.

1.1.10 (2024-05-19)
-------------------

* Fix a bug in entities_with_attribute() filter_by parameter handling.

1.1.9 (2024-05-03)
------------------

* fix bug with to_kleio() in models (bad identation)


1.1.8 (2024-05-02)
------------------

* Fix bug with export_to_kleio()
* Several minor bug fixes

1.1.7 (2024-04-28)
------------------

* Adds new eattributes views to easily access line, level, groupname of attributes
* pandas.entities_with_attribute returns attribute type,line,level and obs.
* Adds reference requirements.txt file to notebook tests
* Adds TimelinkDatabase.export_as_kleio(ids,filename

1.1.6 (2024-04-24)
------------------

Fixes regression in 1.1.5.

1.1.5 (2024-04-24)
------------------
* Comments and original wording are now stored
  in the "obs" field of entities, preceeded by
  "extra_info:".

* If obs field contained explicit observations,
  these are preserved, and "extra_info:" is appended.

* A new method in the Entity class, get_extra_info()
  fetches the extra info as a dictionnary.

* Partially implements issue #9.

1.1.4 (2024-03-16)
------------------

Skips long imports in Travis CI

1.1.3 (2024-03-16)
------------------

Fixes a bug in update_from_sources() when import_with_errors was choosen


1.1.2 (2024-02-27)
------------------

Bug fixes #16 #24 #28

1.1.1 (2024-02-26)
------------------

* Includes basic templates, better integration with Travis CI

1.0.5 (2024-02-07)
------------------

* Fix minor bugs, better interaction with Docker and Jupyter notebooks.

1.0.4 (2024-02-06)
------------------

* Improved notebook integration, new tutorial and receipts notebooks in progress.

1.0.3 (2024-02-01)
------------------

* Use new deployment method with Travis

1.0.1 (2024-01-31)
------------------

* Fix travis build

1.0.0 (2024-01-30)
------------------

First release with Jupyter notebooks integration.

0.3.10 (2022-06-07)
-------------------
* Fix to_kleio() in models: now generates quotes and
  triple quotes when necessary.

0.3.9 (2022-05-26)
------------------
*  Fix missing import in kleio.groups

0.3.8 (2022-03-28)
------------------
* Fix bug with Session import in mhk.models.db

0.3.3 to 0.3.7 (2022-03-27)
---------------------------
* Fix build on travis with auto deployment

0.3.2 (2022-03-27)
------------------
* Fixes bug in package descrition preventing release in Pypi.

0.3.1 (2022-03-25)
------------------
* All core ORM models for MHK databases
* Dynamic generation of ORM models from XML
  files produced by the Kleio translator.
* Python definition of Kleio groups allows synonyms to be defined for
  localized elements.
* Import from XML file to MHK database
* CLI interface refactored with `Typer`
* Improved documentation

Developement related changes

* `black` can be used to format code
* More and better tests, handling of MHK
  installation or lack of in CI tests

0.3.0 (2022-03-05)
------------------
* Fixes bugs related to mapping legacy MHK databases

0.2.9 (2021-09-30)
------------------
* Update requirements and docs

0.2.10 (2022-03-30)
-------------------
* Adds indexes to models
* Added sqlite test db
* Better testing, travis integration improved
* Replaced click with typer in cli interface

0.2.9 (2021-09-30)
-------------------
* Update documentation.

0.2.8 (2021-09-30)
------------------

* Add to_json() method to KGroup, enabling Kleio to JSon serialization.

0.2.7 (2021-08-29)
------------------

* Auto build on Travis, with release to pypi
* Skeleton docs on readthedocs

0.1.0 (2021-07-09)
------------------

* First release on PyPI.


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/time-link/timelink-py",
    "name": "timelink",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "timelink",
    "author": "Joaquim Ramos de Carvalho",
    "author_email": "joaquimcarvalho@mpu.edu.mo",
    "download_url": "https://files.pythonhosted.org/packages/64/19/ea1ab025966bde84aedc3204c3fb2a0222d44c22cceda6514b6c34d7cda3/timelink-1.1.18.tar.gz",
    "platform": null,
    "description": "Timelink is an information system for person related information collected from historical sources. \n\n=======\nHistory\n=======\n1.1.18 (2025-02-04)\n-------------------\n\n- Fix rendering of dates in kleio outputs\n- More improvment to migration of old databases.\n- Add database version to information on TimelinkNotebook\n- Various bug fixes.\n\n1.1.17 (2025-01-20)\n-------------------\n\n- Improve migration of old databases\n- Various improvments in unit tests\n\n1.1.16 (2025-01-08)\n-------------------\n\n- Adds comment and original wording to entities_with_attribute\n- Fixes problem with alembic and logging.\n- Improves view generation across database migrations\n- Improves testing fixtures\n\n\n1.1.15 (2024-12-17)\n-------------------\n\nImplements real-entities (#21)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nThis is a major refactor of the code, including changes to database structure\nand the way data is imported. The main changes are:\n\n1. Entities now register the source of the data.\n   This was necessary to detect easily cross source references,\n   such as xsame_as that link occurrences in different\n   sources refering to the same entity.\n2. Migrations with Alembic are now used to update the database\n   schema. This is a major change, and it is still experimental.\n   From this version onwards changes to the database are handled\n   through Alembic and authomatically\n   triggered when a Timelink database is opened\n   with TimelinkDatabase() class.\n3. The import process was refactored to save the context of\n   cross source references, and restoring them after reimport.\n   `See this note <https://time-link.github.io/timelink-docs/D_Updating_sources_in_the_database/D.1%20Processing_new_versions_of_source_transcriptions/>`_\n4. Improvements to to_kleio() rendering, taking into account\n   `extra_info` with comments and original wording.\n\n1.1.14 (2024-09-23)\n-------------------\n\n* Add model for RealEntiy, imports Real Entities (sameas and authority records).\n          #22, #21 (only Real Entities)\n* Improve rendering of extra_info in Kleio\n* Removes Kleio-home from path when storing Kleio files #20\n* Fixes problem with checking length of content for numeric fields #54\n* Implements #53 facilitates access to ORM models using group names.\n\n\n1.1.13 (2024-09-07)\n-------------------\n\n* Improves import when tables duplicate columns of super class table, bug fixes.\n* Fixes issue #49: now import propagates data to higher levels in table hierarchy, even if the data is not mapped in the lower levels.\n* Fixes #44: get_person and get_entity now accept db and session as parameters\n* Improves rendering of automatic ids.\n\n1.1.12 (2024-09-05)\n-------------------\n\n* Fixes issue #48: now import propagates data to higher levels in table\n    hierarchy, even if the data is not mapped in the lower levels.\n\n1.1.11 (2024-07-7)\n------------------\n\n* Implements Issue43 (adds groupname filtering to attribute_values)\n* Fixes bug in pandas.styles due to deprecation of matplotlib.cm\n* Fix a problem with the release process.\n\n1.1.10 (2024-05-19)\n-------------------\n\n* Fix a bug in entities_with_attribute() filter_by parameter handling.\n\n1.1.9 (2024-05-03)\n------------------\n\n* fix bug with to_kleio() in models (bad identation)\n\n\n1.1.8 (2024-05-02)\n------------------\n\n* Fix bug with export_to_kleio()\n* Several minor bug fixes\n\n1.1.7 (2024-04-28)\n------------------\n\n* Adds new eattributes views to easily access line, level, groupname of attributes\n* pandas.entities_with_attribute returns attribute type,line,level and obs.\n* Adds reference requirements.txt file to notebook tests\n* Adds TimelinkDatabase.export_as_kleio(ids,filename\n\n1.1.6 (2024-04-24)\n------------------\n\nFixes regression in 1.1.5.\n\n1.1.5 (2024-04-24)\n------------------\n* Comments and original wording are now stored\n  in the \"obs\" field of entities, preceeded by\n  \"extra_info:\".\n\n* If obs field contained explicit observations,\n  these are preserved, and \"extra_info:\" is appended.\n\n* A new method in the Entity class, get_extra_info()\n  fetches the extra info as a dictionnary.\n\n* Partially implements issue #9.\n\n1.1.4 (2024-03-16)\n------------------\n\nSkips long imports in Travis CI\n\n1.1.3 (2024-03-16)\n------------------\n\nFixes a bug in update_from_sources() when import_with_errors was choosen\n\n\n1.1.2 (2024-02-27)\n------------------\n\nBug fixes #16 #24 #28\n\n1.1.1 (2024-02-26)\n------------------\n\n* Includes basic templates, better integration with Travis CI\n\n1.0.5 (2024-02-07)\n------------------\n\n* Fix minor bugs, better interaction with Docker and Jupyter notebooks.\n\n1.0.4 (2024-02-06)\n------------------\n\n* Improved notebook integration, new tutorial and receipts notebooks in progress.\n\n1.0.3 (2024-02-01)\n------------------\n\n* Use new deployment method with Travis\n\n1.0.1 (2024-01-31)\n------------------\n\n* Fix travis build\n\n1.0.0 (2024-01-30)\n------------------\n\nFirst release with Jupyter notebooks integration.\n\n0.3.10 (2022-06-07)\n-------------------\n* Fix to_kleio() in models: now generates quotes and\n  triple quotes when necessary.\n\n0.3.9 (2022-05-26)\n------------------\n*  Fix missing import in kleio.groups\n\n0.3.8 (2022-03-28)\n------------------\n* Fix bug with Session import in mhk.models.db\n\n0.3.3 to 0.3.7 (2022-03-27)\n---------------------------\n* Fix build on travis with auto deployment\n\n0.3.2 (2022-03-27)\n------------------\n* Fixes bug in package descrition preventing release in Pypi.\n\n0.3.1 (2022-03-25)\n------------------\n* All core ORM models for MHK databases\n* Dynamic generation of ORM models from XML\n  files produced by the Kleio translator.\n* Python definition of Kleio groups allows synonyms to be defined for\n  localized elements.\n* Import from XML file to MHK database\n* CLI interface refactored with `Typer`\n* Improved documentation\n\nDevelopement related changes\n\n* `black` can be used to format code\n* More and better tests, handling of MHK\n  installation or lack of in CI tests\n\n0.3.0 (2022-03-05)\n------------------\n* Fixes bugs related to mapping legacy MHK databases\n\n0.2.9 (2021-09-30)\n------------------\n* Update requirements and docs\n\n0.2.10 (2022-03-30)\n-------------------\n* Adds indexes to models\n* Added sqlite test db\n* Better testing, travis integration improved\n* Replaced click with typer in cli interface\n\n0.2.9 (2021-09-30)\n-------------------\n* Update documentation.\n\n0.2.8 (2021-09-30)\n------------------\n\n* Add to_json() method to KGroup, enabling Kleio to JSon serialization.\n\n0.2.7 (2021-08-29)\n------------------\n\n* Auto build on Travis, with release to pypi\n* Skeleton docs on readthedocs\n\n0.1.0 (2021-07-09)\n------------------\n\n* First release on PyPI.\n\n",
    "bugtrack_url": null,
    "license": "MIT license",
    "summary": "Timelink is an information system for person related information collected from historical sources. ",
    "version": "1.1.18",
    "project_urls": {
        "Documentation": "https://timelink-py.readthedocs.io/",
        "Homepage": "https://github.com/time-link/timelink-py"
    },
    "split_keywords": [
        "timelink"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3bac730b6152b9204f506273b42ba76f435c4030014f5ebde5e09dd2c490497d",
                "md5": "124fb8e078ee17df0bfcd786ef4b4553",
                "sha256": "4406f90414ee0394a6581c853ee7aa3a90d7ea3d3238455ae6512487af7f476b"
            },
            "downloads": -1,
            "filename": "timelink-1.1.18-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "124fb8e078ee17df0bfcd786ef4b4553",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.10",
            "size": 182390,
            "upload_time": "2025-02-04T07:22:08",
            "upload_time_iso_8601": "2025-02-04T07:22:08.140375Z",
            "url": "https://files.pythonhosted.org/packages/3b/ac/730b6152b9204f506273b42ba76f435c4030014f5ebde5e09dd2c490497d/timelink-1.1.18-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6419ea1ab025966bde84aedc3204c3fb2a0222d44c22cceda6514b6c34d7cda3",
                "md5": "1cd6a3ec591d89f928a3d0ad93904cc2",
                "sha256": "f02f9148f27cab84b3cfaf2a8de7eedfcc92635aec8860d82aa726cceb14466f"
            },
            "downloads": -1,
            "filename": "timelink-1.1.18.tar.gz",
            "has_sig": false,
            "md5_digest": "1cd6a3ec591d89f928a3d0ad93904cc2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 2244571,
            "upload_time": "2025-02-04T07:22:09",
            "upload_time_iso_8601": "2025-02-04T07:22:09.912789Z",
            "url": "https://files.pythonhosted.org/packages/64/19/ea1ab025966bde84aedc3204c3fb2a0222d44c22cceda6514b6c34d7cda3/timelink-1.1.18.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-04 07:22:09",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "time-link",
    "github_project": "timelink-py",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "alembic",
            "specs": []
        },
        {
            "name": "bokeh",
            "specs": []
        },
        {
            "name": "certifi",
            "specs": [
                [
                    ">=",
                    "2024.07.04"
                ]
            ]
        },
        {
            "name": "cryptography",
            "specs": [
                [
                    ">=",
                    "43.0.1"
                ]
            ]
        },
        {
            "name": "docker",
            "specs": [
                [
                    ">=",
                    "7.0.0"
                ]
            ]
        },
        {
            "name": "fastapi",
            "specs": []
        },
        {
            "name": "fastui",
            "specs": []
        },
        {
            "name": "fief-client",
            "specs": []
        },
        {
            "name": "httpx",
            "specs": []
        },
        {
            "name": "ipykernel",
            "specs": []
        },
        {
            "name": "IPython",
            "specs": []
        },
        {
            "name": "Jinja2",
            "specs": [
                [
                    ">=",
                    "3.1.4"
                ]
            ]
        },
        {
            "name": "jsonrpcclient",
            "specs": []
        },
        {
            "name": "makefun",
            "specs": []
        },
        {
            "name": "matplotlib",
            "specs": []
        },
        {
            "name": "mysql-connector-python",
            "specs": [
                [
                    ">=",
                    "9.1.0"
                ]
            ]
        },
        {
            "name": "networkx",
            "specs": [
                [
                    ">=",
                    "3.0.0"
                ]
            ]
        },
        {
            "name": "numpy",
            "specs": [
                [
                    "==",
                    "1.26.4"
                ]
            ]
        },
        {
            "name": "pandas",
            "specs": [
                [
                    "~=",
                    "2.2.2"
                ]
            ]
        },
        {
            "name": "psycopg2-binary",
            "specs": [
                [
                    "==",
                    "2.9.6"
                ]
            ]
        },
        {
            "name": "py-markdown-table",
            "specs": [
                [
                    "==",
                    "0.3.3"
                ]
            ]
        },
        {
            "name": "pydantic",
            "specs": []
        },
        {
            "name": "pydantic-settings",
            "specs": []
        },
        {
            "name": "pytest",
            "specs": []
        },
        {
            "name": "python-box",
            "specs": [
                [
                    "~=",
                    "5.3.0"
                ]
            ]
        },
        {
            "name": "python-dotenv",
            "specs": [
                [
                    "~=",
                    "0.21.0"
                ]
            ]
        },
        {
            "name": "python-jose",
            "specs": []
        },
        {
            "name": "python-multipart",
            "specs": []
        },
        {
            "name": "pyYAML",
            "specs": [
                [
                    "==",
                    "6.0"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    ">=",
                    "2.32.0"
                ]
            ]
        },
        {
            "name": "setuptools",
            "specs": [
                [
                    ">=",
                    "65.5.1"
                ]
            ]
        },
        {
            "name": "sqlalchemy-utils",
            "specs": []
        },
        {
            "name": "sqlalchemy-views",
            "specs": []
        },
        {
            "name": "SQLAlchemy",
            "specs": [
                [
                    "~=",
                    "2.0.0"
                ]
            ]
        },
        {
            "name": "sqlalchemy-utils",
            "specs": []
        },
        {
            "name": "starlette",
            "specs": [
                [
                    ">=",
                    "0.40.0"
                ]
            ]
        },
        {
            "name": "starlette-admin",
            "specs": []
        },
        {
            "name": "typer",
            "specs": [
                [
                    ">=",
                    "0.9"
                ]
            ]
        },
        {
            "name": "urllib3",
            "specs": [
                [
                    ">=",
                    "1.26.19"
                ]
            ]
        },
        {
            "name": "uvicorn",
            "specs": []
        },
        {
            "name": "wheel",
            "specs": [
                [
                    ">=",
                    "0.38.1"
                ]
            ]
        }
    ],
    "tox": true,
    "lcname": "timelink"
}
        
Elapsed time: 2.59631s