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"
}