Releases: nickreynke/python-gedcom
Releases · nickreynke/python-gedcom
v1.1.0
What's Changed
- Fix for to_gedcom_string() by @KeithPetro in #29
- Parse stream issue#32 by @mameen in #37
- Get all names Issue#34 by @mameen in #38
- Dropped support of Python 2.7 / 3.4, added support for 3.5 to 3.8 and moved from
requirements.txtto using Pipenv by @nickreynke in #40 - feature/docs by @nickreynke in #41
- 2.0.0.dev1 by @nickreynke in #42
- fix(parser.py): remove call to deleted method is_family() by @joephayes in #58
- refactor: remove legacy dependencies and migrate to
uvby @nickreynke in #66
New Contributors
- @KeithPetro made their first contribution in #29
- @mameen made their first contribution in #37
Full Changelog: v1.0.0...v1.1.0
v2.0.0-dev3
chore: release 2.0.0-dev3
v2.0.0-dev2
Bump version: 2.0.0-dev1 → 2.0.0-dev2
v2.0.0-dev1
Bump version: 2.0.0-dev0 → 2.0.0-dev1
v1.0.0
Changes:
- Added
CHANGELOG.md - Set source code encoding to UTF-8 explicitly, since for Python 2 ASCII would be the default. For Python 3 the default is UTF-8.
- Separated code of
__init__.pyinto individual files, updating the package structure (#15)- Resulted in a new
parser.pyfile containing the actual parser, aelement.pycontaining the elements the parser can parse and atags.pycontaining the used GEDCOM tags
- Resulted in a new
- Separated code of new
element.pyinto individual modules extending theElementclass within new submoduleelementto better
differentiate between the type ofElements the parser parses (e.g.FamilyElement,IndividualElement, ...) - Added
helpers.pycontaining helper functions like a@deprecatedannotation to annotate methods or classes as
deprecated. (The helpers may be removed when its contents are no longer used within the project.) - GEDCOM file is no longer parsed within constructor of
Parserclass (the actual parser; it was namedGedcombefore).
The new way to parse is as follows:# from gedcom import Gedcom <- Old way of importing the parser from gedcom.parser import Parser file_path = '' # Path to your `.ged` file # The old way would be to supply the `Parser` (or `Gedcom`) class the `file_path` as its first parameter on initialization gedcom_parser = Parser() # The new way to parse a GEDCOM file gedcom_parser.parse_file(file_path) # ...
Deprecations:
get_individual()method withinElementclass. Useto_gedcom_string()instead.given_match()method withinIndividualElementclass. Usegiven_name_match()instead.get_burial()method withinIndividualElementclass. Useget_burial_data()instead.get_burial()method withinIndividualElementclass. Useget_burial_data()instead.get_census()method withinIndividualElementclass. Useget_census_data()instead.
Migrating from v0.2.x to v1.0.0:
The old way of importing the gedcom package was like this: from gedcom import Gedcom.
The new package code is separated into individual modules within the package. So Parser (the actual parser which was named Gedcom) would be imported like this:
from gedcom.parser import Parser, since the Parser class lies within the module parser within the package gedcom.
Same procedure for the Element class: from gedcom.element.element import Element, since the Element class lies
within the package gedcom, the subpackage element and the module element.
This allows for better maintainability and scalability.
If there are any questions or you encounter a bug please open an issue here.
v0.2.5dev
v0.2.4dev
v0.2.3dev
v0.2.2dev
Changes:
- Changed broken links to GEDCOM format specification (#2)
- Added support for BOM control characters (#5, thanks to @nomadyow!)
- Added support for the last line not having a CR and/or LF (#5, thanks to @nomadyow!)
- Added support for incorrect line splitting generated by Ancestry. Insert CONT/CONC tag as necessary (#5, thanks to @nomadyow!)