Releases: joeyaurel/python-gedcom
Releases · joeyaurel/python-gedcom
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__.py
into individual files, updating the package structure (#15)- Resulted in a new
parser.py
file containing the actual parser, aelement.py
containing the elements the parser can parse and atags.py
containing the used GEDCOM tags
- Resulted in a new
- Separated code of new
element.py
into individual modules extending theElement
class within new submoduleelement
to better
differentiate between the type ofElement
s the parser parses (e.g.FamilyElement
,IndividualElement
, ...) - Added
helpers.py
containing helper functions like a@deprecated
annotation 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
Parser
class (the actual parser; it was namedGedcom
before).
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 withinElement
class. Useto_gedcom_string()
instead.given_match()
method withinIndividualElement
class. Usegiven_name_match()
instead.get_burial()
method withinIndividualElement
class. Useget_burial_data()
instead.get_burial()
method withinIndividualElement
class. Useget_burial_data()
instead.get_census()
method withinIndividualElement
class. 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!)
v0.2.1dev
v0.2.0dev
Changes:
- Added
develop
branch to track and update current development process - Applied PEP 8 Style Guide conventions
- Renamed variables and methods to make their purpose more clear
- Outsourced GEDCOM tags to module level
- Added missing inline documentation
- Optimized
README.md
(sections and better description) - Added
LICENSE
file - Cleaned up and optimized code