Changeset - 385f5a20da20
[Not reviewed]
0 3 0
Brett Smith - 4 years ago 2020-08-10 15:36:51
brettcsmith@brettcsmith.org
extract_odf_links: Don't print document-internal links.
3 files changed with 6 insertions and 4 deletions:
0 comments (0 inline, 0 general)
conservancy_beancount/tools/extract_odf_links.py
Show inline comments
...
 
@@ -84,7 +84,6 @@ read from stdin because it needs to know document paths to resolve links.
 
    return parser.parse_args(arglist)
 

	
 
def extract_links(odf_path: Path) -> Iterator[Path]:
 
    odf_root = odf_path.parent.resolve()
 
    with odf_path.open('rb') as odf_file:
 
        odf_doc = odf.opendocument.load(odf_file)
 
    for a_elem in odf_doc.getElementsByType(odf.text.A):
...
 
@@ -95,9 +94,12 @@ def extract_links(odf_path: Path) -> Iterator[Path]:
 
        if not path.is_absolute():
 
            path = (odf_path / path).resolve()
 
            try:
 
                path.relative_to(odf_root)
 
                path.relative_to(odf_path)
 
            except ValueError:
 
                logger.warning(f"link {path} is neither absolute nor relative to {odf_path}")
 
                pass
 
            else:
 
                # Link points to another document inside the ODF. Skip it.
 
                continue
 
        yield path
 

	
 
def main(arglist: Optional[Sequence[str]]=None,
setup.py
Show inline comments
...
 
@@ -5,7 +5,7 @@ from setuptools import setup
 
setup(
 
    name='conservancy_beancount',
 
    description="Plugin, library, and reports for reading Conservancy's books",
 
    version='1.7.0',
 
    version='1.7.1',
 
    author='Software Freedom Conservancy',
 
    author_email='info@sfconservancy.org',
 
    license='GNU AGPLv3+',
tests/repository/LinksReport.ods
Show inline comments
 
binary diff not shown
0 comments (0 inline, 0 general)