Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0a7575b889 | ||
|
|
c776f3070d | ||
|
|
3b789242aa |
@@ -1943,7 +1943,7 @@ cog.out(get_template_field_table())
|
|||||||
|{lf}|A line feed: '\n', alias for {newline}|
|
|{lf}|A line feed: '\n', alias for {newline}|
|
||||||
|{cr}|A carriage return: '\r'|
|
|{cr}|A carriage return: '\r'|
|
||||||
|{crlf}|a carriage return + line feed: '\r\n'|
|
|{crlf}|a carriage return + line feed: '\r\n'|
|
||||||
|{osxphotos_version}|The osxphotos version, e.g. '0.49.2'|
|
|{osxphotos_version}|The osxphotos version, e.g. '0.49.3'|
|
||||||
|{osxphotos_cmd_line}|The full command line used to run osxphotos|
|
|{osxphotos_cmd_line}|The full command line used to run osxphotos|
|
||||||
|{album}|Album(s) photo is contained in|
|
|{album}|Album(s) photo is contained in|
|
||||||
|{folder_album}|Folder path + album photo is contained in. e.g. 'Folder/Subfolder/Album' or just 'Album' if no enclosing folder|
|
|{folder_album}|Folder path + album photo is contained in. e.g. 'Folder/Subfolder/Album' or just 'Album' if no enclosing folder|
|
||||||
|
|||||||
10
CHANGELOG.md
10
CHANGELOG.md
@@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file. Dates are d
|
|||||||
|
|
||||||
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
|
||||||
|
|
||||||
|
#### [v0.49.2](https://github.com/RhetTbull/osxphotos/compare/v0.49.1...v0.49.2)
|
||||||
|
|
||||||
|
> 21 May 2022
|
||||||
|
|
||||||
|
- Initial implementation of exiftool command, #691 [`#696`](https://github.com/RhetTbull/osxphotos/pull/696)
|
||||||
|
- Added exiftool command [`8e9f279`](https://github.com/RhetTbull/osxphotos/commit/8e9f27995b56489da8968e77018a8a3d1bbe76bd)
|
||||||
|
- Added example [skip ci] [`6d5af5c`](https://github.com/RhetTbull/osxphotos/commit/6d5af5c5e87aa0699da7291376cbf05c4237f6ec)
|
||||||
|
- Updated docs [skip ci] [`3473c2e`](https://github.com/RhetTbull/osxphotos/commit/3473c2ece2b6eea9885893c85aa9eceb16921b94)
|
||||||
|
- Updated test [`dfcb99f`](https://github.com/RhetTbull/osxphotos/commit/dfcb99f3774cb519c30a9fcf403ca9fdc3fed993)
|
||||||
|
|
||||||
#### [v0.49.1](https://github.com/RhetTbull/osxphotos/compare/v0.49.0...v0.49.1)
|
#### [v0.49.1](https://github.com/RhetTbull/osxphotos/compare/v0.49.0...v0.49.1)
|
||||||
|
|
||||||
> 17 May 2022
|
> 17 May 2022
|
||||||
|
|||||||
@@ -1849,7 +1849,7 @@ Substitution Description
|
|||||||
{lf} A line feed: '\n', alias for {newline}
|
{lf} A line feed: '\n', alias for {newline}
|
||||||
{cr} A carriage return: '\r'
|
{cr} A carriage return: '\r'
|
||||||
{crlf} a carriage return + line feed: '\r\n'
|
{crlf} a carriage return + line feed: '\r\n'
|
||||||
{osxphotos_version} The osxphotos version, e.g. '0.49.2'
|
{osxphotos_version} The osxphotos version, e.g. '0.49.3'
|
||||||
{osxphotos_cmd_line} The full command line used to run osxphotos
|
{osxphotos_cmd_line} The full command line used to run osxphotos
|
||||||
|
|
||||||
The following substitutions may result in multiple values. Thus if specified
|
The following substitutions may result in multiple values. Thus if specified
|
||||||
@@ -4025,7 +4025,7 @@ The following template field substitutions are availabe for use the templating s
|
|||||||
|{lf}|A line feed: '\n', alias for {newline}|
|
|{lf}|A line feed: '\n', alias for {newline}|
|
||||||
|{cr}|A carriage return: '\r'|
|
|{cr}|A carriage return: '\r'|
|
||||||
|{crlf}|a carriage return + line feed: '\r\n'|
|
|{crlf}|a carriage return + line feed: '\r\n'|
|
||||||
|{osxphotos_version}|The osxphotos version, e.g. '0.49.2'|
|
|{osxphotos_version}|The osxphotos version, e.g. '0.49.3'|
|
||||||
|{osxphotos_cmd_line}|The full command line used to run osxphotos|
|
|{osxphotos_cmd_line}|The full command line used to run osxphotos|
|
||||||
|{album}|Album(s) photo is contained in|
|
|{album}|Album(s) photo is contained in|
|
||||||
|{folder_album}|Folder path + album photo is contained in. e.g. 'Folder/Subfolder/Album' or just 'Album' if no enclosing folder|
|
|{folder_album}|Folder path + album photo is contained in. e.g. 'Folder/Subfolder/Album' or just 'Album' if no enclosing folder|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# Sphinx build info version 1
|
# Sphinx build info version 1
|
||||||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||||
config: 3a7efae54b6e07cdaf59f7d2e9729b6e
|
config: c75833b1d95a335d2161bc31370bc337
|
||||||
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
tags: 645f666f9bcd5a90fca523b33c5a78b7
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="../genindex.html" /><link rel="search" title="Search" href="../search.html" />
|
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="../genindex.html" /><link rel="search" title="Search" href="../search.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>Overview: module code - osxphotos 0.49.2 documentation</title>
|
<title>Overview: module code - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="../_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="../_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="../_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="../_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="../_static/copybutton.css" />
|
||||||
@@ -123,7 +123,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="../index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="../index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -146,7 +146,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="../index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="../index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="../search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="../search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="../../genindex.html" /><link rel="search" title="Search" href="../../search.html" />
|
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="../../genindex.html" /><link rel="search" title="Search" href="../../search.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>osxphotos.export_db - osxphotos 0.49.2 documentation</title>
|
<title>osxphotos.export_db - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="../../_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="../../_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="../../_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="../../_static/copybutton.css" />
|
||||||
@@ -123,7 +123,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="../../index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="../../index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -146,7 +146,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="../../index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="../../index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="../../search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="../../search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
@@ -211,7 +211,7 @@
|
|||||||
<span class="kn">from</span> <span class="nn">io</span> <span class="kn">import</span> <span class="n">StringIO</span>
|
<span class="kn">from</span> <span class="nn">io</span> <span class="kn">import</span> <span class="n">StringIO</span>
|
||||||
<span class="kn">from</span> <span class="nn">sqlite3</span> <span class="kn">import</span> <span class="n">Error</span>
|
<span class="kn">from</span> <span class="nn">sqlite3</span> <span class="kn">import</span> <span class="n">Error</span>
|
||||||
<span class="kn">from</span> <span class="nn">tempfile</span> <span class="kn">import</span> <span class="n">TemporaryDirectory</span>
|
<span class="kn">from</span> <span class="nn">tempfile</span> <span class="kn">import</span> <span class="n">TemporaryDirectory</span>
|
||||||
<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Any</span><span class="p">,</span> <span class="n">Optional</span><span class="p">,</span> <span class="n">Tuple</span><span class="p">,</span> <span class="n">Union</span>
|
<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Any</span><span class="p">,</span> <span class="n">Optional</span><span class="p">,</span> <span class="n">Tuple</span><span class="p">,</span> <span class="n">Union</span><span class="p">,</span> <span class="n">List</span>
|
||||||
|
|
||||||
<span class="kn">from</span> <span class="nn">tenacity</span> <span class="kn">import</span> <span class="n">retry</span><span class="p">,</span> <span class="n">stop_after_attempt</span>
|
<span class="kn">from</span> <span class="nn">tenacity</span> <span class="kn">import</span> <span class="n">retry</span><span class="p">,</span> <span class="n">stop_after_attempt</span>
|
||||||
|
|
||||||
@@ -367,6 +367,17 @@
|
|||||||
<span class="n">uuid</span> <span class="o">=</span> <span class="kc">None</span>
|
<span class="n">uuid</span> <span class="o">=</span> <span class="kc">None</span>
|
||||||
<span class="k">return</span> <span class="n">uuid</span></div>
|
<span class="k">return</span> <span class="n">uuid</span></div>
|
||||||
|
|
||||||
|
<div class="viewcode-block" id="ExportDB.get_files_for_uuid"><a class="viewcode-back" href="../../reference.html#osxphotos.ExportDB.get_files_for_uuid">[docs]</a> <span class="k">def</span> <span class="nf">get_files_for_uuid</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">uuid</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">:</span>
|
||||||
|
<span class="sd">"""query database for UUID and return list of files associated with UUID or empty list"""</span>
|
||||||
|
<span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_conn</span>
|
||||||
|
<span class="n">c</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">cursor</span><span class="p">()</span>
|
||||||
|
<span class="n">c</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span>
|
||||||
|
<span class="s2">"SELECT filepath FROM export_data WHERE uuid = ?"</span><span class="p">,</span>
|
||||||
|
<span class="p">(</span><span class="n">uuid</span><span class="p">,),</span>
|
||||||
|
<span class="p">)</span>
|
||||||
|
<span class="n">results</span> <span class="o">=</span> <span class="n">c</span><span class="o">.</span><span class="n">fetchall</span><span class="p">()</span>
|
||||||
|
<span class="k">return</span> <span class="p">[</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">export_dir</span><span class="p">,</span> <span class="n">r</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="k">for</span> <span class="n">r</span> <span class="ow">in</span> <span class="n">results</span><span class="p">]</span></div>
|
||||||
|
|
||||||
<div class="viewcode-block" id="ExportDB.get_photoinfo_for_uuid"><a class="viewcode-back" href="../../reference.html#osxphotos.ExportDB.get_photoinfo_for_uuid">[docs]</a> <span class="k">def</span> <span class="nf">get_photoinfo_for_uuid</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">uuid</span><span class="p">):</span>
|
<div class="viewcode-block" id="ExportDB.get_photoinfo_for_uuid"><a class="viewcode-back" href="../../reference.html#osxphotos.ExportDB.get_photoinfo_for_uuid">[docs]</a> <span class="k">def</span> <span class="nf">get_photoinfo_for_uuid</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">uuid</span><span class="p">):</span>
|
||||||
<span class="sd">"""returns the photoinfo JSON struct for a UUID"""</span>
|
<span class="sd">"""returns the photoinfo JSON struct for a UUID"""</span>
|
||||||
<span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_conn</span>
|
<span class="n">conn</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_conn</span>
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ Template Substitutions
|
|||||||
* - {crlf}
|
* - {crlf}
|
||||||
- a carriage return + line feed: '\r\n'
|
- a carriage return + line feed: '\r\n'
|
||||||
* - {osxphotos_version}
|
* - {osxphotos_version}
|
||||||
- The osxphotos version, e.g. '0.49.2'
|
- The osxphotos version, e.g. '0.49.3'
|
||||||
* - {osxphotos_cmd_line}
|
* - {osxphotos_cmd_line}
|
||||||
- The full command line used to run osxphotos
|
- The full command line used to run osxphotos
|
||||||
* - {album}
|
* - {album}
|
||||||
|
|||||||
2
docs/_static/documentation_options.js
vendored
2
docs/_static/documentation_options.js
vendored
@@ -1,6 +1,6 @@
|
|||||||
var DOCUMENTATION_OPTIONS = {
|
var DOCUMENTATION_OPTIONS = {
|
||||||
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
|
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
|
||||||
VERSION: '0.49.2',
|
VERSION: '0.49.3',
|
||||||
LANGUAGE: 'None',
|
LANGUAGE: 'None',
|
||||||
COLLAPSE_INDEX: false,
|
COLLAPSE_INDEX: false,
|
||||||
BUILDER: 'html',
|
BUILDER: 'html',
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Template System" href="template_help.html" /><link rel="prev" title="OSXPhotos Tutorial" href="tutorial.html" />
|
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Template System" href="template_help.html" /><link rel="prev" title="OSXPhotos Tutorial" href="tutorial.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>OSXPhotos Command Line Interface (CLI) - osxphotos 0.49.2 documentation</title>
|
<title>OSXPhotos Command Line Interface (CLI) - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
@@ -1278,6 +1278,16 @@ to modify this behavior.</p>
|
|||||||
<dd><p>Print information about FILE_PATH contained in the database.</p>
|
<dd><p>Print information about FILE_PATH contained in the database.</p>
|
||||||
</dd></dl>
|
</dd></dl>
|
||||||
<dl class="std option">
|
<dl class="std option">
|
||||||
|
<dt class="sig sig-object std" id="cmdoption-osxphotos-exportdb-uuid-files">
|
||||||
|
<span class="sig-name descname"><span class="pre">--uuid-files</span></span><span class="sig-prename descclassname"> <span class="pre"><UUID></span></span><a class="headerlink" href="#cmdoption-osxphotos-exportdb-uuid-files" title="Permalink to this definition">#</a></dt>
|
||||||
|
<dd><p>List exported files associated with UUID.</p>
|
||||||
|
</dd></dl>
|
||||||
|
<dl class="std option">
|
||||||
|
<dt class="sig sig-object std" id="cmdoption-osxphotos-exportdb-uuid-info">
|
||||||
|
<span class="sig-name descname"><span class="pre">--uuid-info</span></span><span class="sig-prename descclassname"> <span class="pre"><UUID></span></span><a class="headerlink" href="#cmdoption-osxphotos-exportdb-uuid-info" title="Permalink to this definition">#</a></dt>
|
||||||
|
<dd><p>Print information about UUID contained in the database.</p>
|
||||||
|
</dd></dl>
|
||||||
|
<dl class="std option">
|
||||||
<dt class="sig sig-object std" id="cmdoption-osxphotos-exportdb-report">
|
<dt class="sig sig-object std" id="cmdoption-osxphotos-exportdb-report">
|
||||||
<span class="sig-name descname"><span class="pre">--report</span></span><span class="sig-prename descclassname"> <span class="pre"><REPORT_FILE</span> <span class="pre">RUN_ID></span></span><a class="headerlink" href="#cmdoption-osxphotos-exportdb-report" title="Permalink to this definition">#</a></dt>
|
<span class="sig-name descname"><span class="pre">--report</span></span><span class="sig-prename descclassname"> <span class="pre"><REPORT_FILE</span> <span class="pre">RUN_ID></span></span><a class="headerlink" href="#cmdoption-osxphotos-exportdb-report" title="Permalink to this definition">#</a></dt>
|
||||||
<dd><p>Generate an export report as <cite>osxphotos export … –report REPORT_FILE</cite> would have done. This allows you to re-create an export report if you didn’t use the –report option when running <cite>osxphotos export</cite>. The extension of the report file is used to determine the format. Valid extensions are: .csv (CSV file), .json (JSON), .db and .sqlite (SQLite database). RUN_ID may be any integer from -10 to 0 specifying which run to use. For example, <cite>–report report.csv 0</cite> will generate a CSV report for the last run and <cite>–report report.json -1</cite> will generate a JSON report for the second-to-last run (one run prior to last run). REPORT_FILE may be a template string (see Templating System), for example, –report ‘export_{today.date}.csv’ will write a CSV report file named with today’s date. See also –append.</p>
|
<dd><p>Generate an export report as <cite>osxphotos export … –report REPORT_FILE</cite> would have done. This allows you to re-create an export report if you didn’t use the –report option when running <cite>osxphotos export</cite>. The extension of the report file is used to determine the format. Valid extensions are: .csv (CSV file), .json (JSON), .db and .sqlite (SQLite database). RUN_ID may be any integer from -10 to 0 specifying which run to use. For example, <cite>–report report.csv 0</cite> will generate a CSV report for the last run and <cite>–report report.json -1</cite> will generate a JSON report for the second-to-last run (one run prior to last run). REPORT_FILE may be a template string (see Templating System), for example, –report ‘export_{today.date}.csv’ will write a CSV report file named with today’s date. See also –append.</p>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
||||||
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="#" /><link rel="search" title="Search" href="search.html" />
|
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="#" /><link rel="search" title="Search" href="search.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/><title>Index - osxphotos 0.49.2 documentation</title>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/><title>Index - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -122,7 +122,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -145,7 +145,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
@@ -1143,8 +1143,6 @@
|
|||||||
<li><a href="cli.html#cmdoption-osxphotos-repl-no-title">osxphotos-repl command line option</a>
|
<li><a href="cli.html#cmdoption-osxphotos-repl-no-title">osxphotos-repl command line option</a>
|
||||||
</li>
|
</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
</ul></td>
|
|
||||||
<td style="width: 33%; vertical-align: top;"><ul>
|
|
||||||
<li>
|
<li>
|
||||||
--not-burst
|
--not-burst
|
||||||
|
|
||||||
@@ -1156,6 +1154,8 @@
|
|||||||
<li><a href="cli.html#cmdoption-osxphotos-repl-not-burst">osxphotos-repl command line option</a>
|
<li><a href="cli.html#cmdoption-osxphotos-repl-not-burst">osxphotos-repl command line option</a>
|
||||||
</li>
|
</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
|
</ul></td>
|
||||||
|
<td style="width: 33%; vertical-align: top;"><ul>
|
||||||
<li>
|
<li>
|
||||||
--not-cloudasset
|
--not-cloudasset
|
||||||
|
|
||||||
@@ -1872,6 +1872,13 @@
|
|||||||
<li><a href="cli.html#cmdoption-osxphotos-query-uuid">osxphotos-query command line option</a>
|
<li><a href="cli.html#cmdoption-osxphotos-query-uuid">osxphotos-query command line option</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="cli.html#cmdoption-osxphotos-repl-uuid">osxphotos-repl command line option</a>
|
<li><a href="cli.html#cmdoption-osxphotos-repl-uuid">osxphotos-repl command line option</a>
|
||||||
|
</li>
|
||||||
|
</ul></li>
|
||||||
|
<li>
|
||||||
|
--uuid-files
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li><a href="cli.html#cmdoption-osxphotos-exportdb-uuid-files">osxphotos-exportdb command line option</a>
|
||||||
</li>
|
</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li>
|
<li>
|
||||||
@@ -1883,6 +1890,13 @@
|
|||||||
<li><a href="cli.html#cmdoption-osxphotos-query-uuid-from-file">osxphotos-query command line option</a>
|
<li><a href="cli.html#cmdoption-osxphotos-query-uuid-from-file">osxphotos-query command line option</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="cli.html#cmdoption-osxphotos-repl-uuid-from-file">osxphotos-repl command line option</a>
|
<li><a href="cli.html#cmdoption-osxphotos-repl-uuid-from-file">osxphotos-repl command line option</a>
|
||||||
|
</li>
|
||||||
|
</ul></li>
|
||||||
|
<li>
|
||||||
|
--uuid-info
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li><a href="cli.html#cmdoption-osxphotos-exportdb-uuid-info">osxphotos-exportdb command line option</a>
|
||||||
</li>
|
</li>
|
||||||
</ul></li>
|
</ul></li>
|
||||||
<li>
|
<li>
|
||||||
@@ -2464,17 +2478,19 @@
|
|||||||
<li><a href="reference.html#osxphotos.ExportDB.get_exported_files">get_exported_files() (osxphotos.ExportDB method)</a>
|
<li><a href="reference.html#osxphotos.ExportDB.get_exported_files">get_exported_files() (osxphotos.ExportDB method)</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="reference.html#osxphotos.ExportDB.get_file_record">get_file_record() (osxphotos.ExportDB method)</a>
|
<li><a href="reference.html#osxphotos.ExportDB.get_file_record">get_file_record() (osxphotos.ExportDB method)</a>
|
||||||
|
</li>
|
||||||
|
<li><a href="reference.html#osxphotos.ExportDB.get_files_for_uuid">get_files_for_uuid() (osxphotos.ExportDB method)</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="reference.html#osxphotos.PhotoTemplate.get_media_type">get_media_type() (osxphotos.PhotoTemplate method)</a>
|
<li><a href="reference.html#osxphotos.PhotoTemplate.get_media_type">get_media_type() (osxphotos.PhotoTemplate method)</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="reference.html#osxphotos.PhotosDB.get_photo">get_photo() (osxphotos.PhotosDB method)</a>
|
<li><a href="reference.html#osxphotos.PhotosDB.get_photo">get_photo() (osxphotos.PhotosDB method)</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="reference.html#osxphotos.PhotoTemplate.get_photo_video_type">get_photo_video_type() (osxphotos.PhotoTemplate method)</a>
|
<li><a href="reference.html#osxphotos.PhotoTemplate.get_photo_video_type">get_photo_video_type() (osxphotos.PhotoTemplate method)</a>
|
||||||
</li>
|
|
||||||
<li><a href="reference.html#osxphotos.ExportDB.get_photoinfo_for_uuid">get_photoinfo_for_uuid() (osxphotos.ExportDB method)</a>
|
|
||||||
</li>
|
</li>
|
||||||
</ul></td>
|
</ul></td>
|
||||||
<td style="width: 33%; vertical-align: top;"><ul>
|
<td style="width: 33%; vertical-align: top;"><ul>
|
||||||
|
<li><a href="reference.html#osxphotos.ExportDB.get_photoinfo_for_uuid">get_photoinfo_for_uuid() (osxphotos.ExportDB method)</a>
|
||||||
|
</li>
|
||||||
<li><a href="reference.html#osxphotos.ExportDB.get_previous_uuids">get_previous_uuids() (osxphotos.ExportDB method)</a>
|
<li><a href="reference.html#osxphotos.ExportDB.get_previous_uuids">get_previous_uuids() (osxphotos.ExportDB method)</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="reference.html#osxphotos.PhotoTemplate.get_template_value">get_template_value() (osxphotos.PhotoTemplate method)</a>
|
<li><a href="reference.html#osxphotos.PhotoTemplate.get_template_value">get_template_value() (osxphotos.PhotoTemplate method)</a>
|
||||||
@@ -3248,6 +3264,10 @@
|
|||||||
<li><a href="cli.html#cmdoption-osxphotos-exportdb-touch-file">--touch-file</a>
|
<li><a href="cli.html#cmdoption-osxphotos-exportdb-touch-file">--touch-file</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="cli.html#cmdoption-osxphotos-exportdb-update-signatures">--update-signatures</a>
|
<li><a href="cli.html#cmdoption-osxphotos-exportdb-update-signatures">--update-signatures</a>
|
||||||
|
</li>
|
||||||
|
<li><a href="cli.html#cmdoption-osxphotos-exportdb-uuid-files">--uuid-files</a>
|
||||||
|
</li>
|
||||||
|
<li><a href="cli.html#cmdoption-osxphotos-exportdb-uuid-info">--uuid-info</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="cli.html#cmdoption-osxphotos-exportdb-vacuum">--vacuum</a>
|
<li><a href="cli.html#cmdoption-osxphotos-exportdb-vacuum">--vacuum</a>
|
||||||
</li>
|
</li>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos" href="overview.html" />
|
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos" href="overview.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>osxphotos 0.49.2 documentation</title>
|
<title>osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="#"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="#"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="#">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="#">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
|
|||||||
BIN
docs/objects.inv
BIN
docs/objects.inv
Binary file not shown.
@@ -6,7 +6,7 @@
|
|||||||
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Tutorial" href="tutorial.html" /><link rel="prev" title="Welcome to OSXPhotos’s documentation!" href="index.html" />
|
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Tutorial" href="tutorial.html" /><link rel="prev" title="Welcome to OSXPhotos’s documentation!" href="index.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>OSXPhotos - osxphotos 0.49.2 documentation</title>
|
<title>OSXPhotos - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos python API" href="reference.html" /><link rel="prev" title="OSXPhotos Template System" href="template_help.html" />
|
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos python API" href="reference.html" /><link rel="prev" title="OSXPhotos Template System" href="template_help.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>OSXPhotos Python Package Overview - osxphotos 0.49.2 documentation</title>
|
<title>OSXPhotos Python Package Overview - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
||||||
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" />
|
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/><title>Python Module Index - osxphotos 0.49.2 documentation</title>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/><title>Python Module Index - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -122,7 +122,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -145,7 +145,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="prev" title="OSXPhotos Python Package Overview" href="package_overview.html" />
|
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="prev" title="OSXPhotos Python Package Overview" href="package_overview.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>OSXPhotos python API - osxphotos 0.49.2 documentation</title>
|
<title>OSXPhotos python API - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
@@ -423,6 +423,11 @@ If called in context manager, returns True (execution is delayed until exiting c
|
|||||||
<p>Returns: an ExportRecord object or None if filename not found</p>
|
<p>Returns: an ExportRecord object or None if filename not found</p>
|
||||||
</dd></dl>
|
</dd></dl>
|
||||||
<dl class="py method">
|
<dl class="py method">
|
||||||
|
<dt class="sig sig-object py" id="osxphotos.ExportDB.get_files_for_uuid">
|
||||||
|
<span class="sig-name descname"><span class="pre">get_files_for_uuid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">uuid</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">→</span> <span class="sig-return-typehint"><span class="pre">List</span></span></span><a class="reference internal" href="_modules/osxphotos/export_db.html#ExportDB.get_files_for_uuid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#osxphotos.ExportDB.get_files_for_uuid" title="Permalink to this definition">#</a></dt>
|
||||||
|
<dd><p>query database for UUID and return list of files associated with UUID or empty list</p>
|
||||||
|
</dd></dl>
|
||||||
|
<dl class="py method">
|
||||||
<dt class="sig sig-object py" id="osxphotos.ExportDB.get_photoinfo_for_uuid">
|
<dt class="sig sig-object py" id="osxphotos.ExportDB.get_photoinfo_for_uuid">
|
||||||
<span class="sig-name descname"><span class="pre">get_photoinfo_for_uuid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">uuid</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/osxphotos/export_db.html#ExportDB.get_photoinfo_for_uuid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#osxphotos.ExportDB.get_photoinfo_for_uuid" title="Permalink to this definition">#</a></dt>
|
<span class="sig-name descname"><span class="pre">get_photoinfo_for_uuid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">uuid</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="_modules/osxphotos/export_db.html#ExportDB.get_photoinfo_for_uuid"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#osxphotos.ExportDB.get_photoinfo_for_uuid" title="Permalink to this definition">#</a></dt>
|
||||||
<dd><p>returns the photoinfo JSON struct for a UUID</p>
|
<dd><p>returns the photoinfo JSON struct for a UUID</p>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
||||||
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="#" />
|
<meta name="color-scheme" content="light dark"><link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="#" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/><title>Search - osxphotos 0.49.2 documentation</title><link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/><title>Search - osxphotos 0.49.3 documentation</title><link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?digest=30d1aed668e5c3a91c3e3bf6a60b675221979f0e" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo-extensions.css?digest=30d1aed668e5c3a91c3e3bf6a60b675221979f0e" />
|
||||||
@@ -121,7 +121,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -144,7 +144,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="#" role="search">
|
</a><form class="sidebar-search-container" method="get" action="#" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -6,7 +6,7 @@
|
|||||||
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Python Package Overview" href="package_overview.html" /><link rel="prev" title="OSXPhotos Command Line Interface (CLI)" href="cli.html" />
|
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Python Package Overview" href="package_overview.html" /><link rel="prev" title="OSXPhotos Command Line Interface (CLI)" href="cli.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>OSXPhotos Template System - osxphotos 0.49.2 documentation</title>
|
<title>OSXPhotos Template System - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
@@ -567,7 +567,7 @@
|
|||||||
<td><p>a carriage return + line feed: ‘rn’</p></td>
|
<td><p>a carriage return + line feed: ‘rn’</p></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="row-odd"><td><p>{osxphotos_version}</p></td>
|
<tr class="row-odd"><td><p>{osxphotos_version}</p></td>
|
||||||
<td><p>The osxphotos version, e.g. ‘0.49.2’</p></td>
|
<td><p>The osxphotos version, e.g. ‘0.49.3’</p></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="row-even"><td><p>{osxphotos_cmd_line}</p></td>
|
<tr class="row-even"><td><p>{osxphotos_cmd_line}</p></td>
|
||||||
<td><p>The full command line used to run osxphotos</p></td>
|
<td><p>The full command line used to run osxphotos</p></td>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Command Line Interface (CLI)" href="cli.html" /><link rel="prev" title="OSXPhotos" href="overview.html" />
|
<link rel="index" title="Index" href="genindex.html" /><link rel="search" title="Search" href="search.html" /><link rel="next" title="OSXPhotos Command Line Interface (CLI)" href="cli.html" /><link rel="prev" title="OSXPhotos" href="overview.html" />
|
||||||
|
|
||||||
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
<meta name="generator" content="sphinx-4.4.0, furo 2022.04.07"/>
|
||||||
<title>OSXPhotos Tutorial - osxphotos 0.49.2 documentation</title>
|
<title>OSXPhotos Tutorial - osxphotos 0.49.3 documentation</title>
|
||||||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
<link rel="stylesheet" type="text/css" href="_static/styles/furo.css?digest=68f4518137b9aefe99b631505a2064c3c42c9852" />
|
||||||
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
<link rel="stylesheet" type="text/css" href="_static/copybutton.css" />
|
||||||
@@ -124,7 +124,7 @@
|
|||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-center">
|
<div class="header-center">
|
||||||
<a href="index.html"><div class="brand">osxphotos 0.49.2 documentation</div></a>
|
<a href="index.html"><div class="brand">osxphotos 0.49.3 documentation</div></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div class="theme-toggle-container theme-toggle-header">
|
<div class="theme-toggle-container theme-toggle-header">
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
<div class="sidebar-sticky"><a class="sidebar-brand" href="index.html">
|
||||||
|
|
||||||
|
|
||||||
<span class="sidebar-brand-text">osxphotos 0.49.2 documentation</span>
|
<span class="sidebar-brand-text">osxphotos 0.49.3 documentation</span>
|
||||||
|
|
||||||
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
</a><form class="sidebar-search-container" method="get" action="search.html" role="search">
|
||||||
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
<input class="sidebar-search" placeholder=Search name="q" aria-label="Search">
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ Template Substitutions
|
|||||||
* - {crlf}
|
* - {crlf}
|
||||||
- a carriage return + line feed: '\r\n'
|
- a carriage return + line feed: '\r\n'
|
||||||
* - {osxphotos_version}
|
* - {osxphotos_version}
|
||||||
- The osxphotos version, e.g. '0.49.2'
|
- The osxphotos version, e.g. '0.49.3'
|
||||||
* - {osxphotos_cmd_line}
|
* - {osxphotos_cmd_line}
|
||||||
- The full command line used to run osxphotos
|
- The full command line used to run osxphotos
|
||||||
* - {album}
|
* - {album}
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
""" version info """
|
""" version info """
|
||||||
|
|
||||||
__version__ = "0.49.2"
|
__version__ = "0.49.3"
|
||||||
|
|||||||
@@ -350,7 +350,7 @@ def process_files(
|
|||||||
verbose(f"Skipping missing file [filepath]{file}[/]")
|
verbose(f"Skipping missing file [filepath]{file}[/]")
|
||||||
report_writer.write(ExportResults(missing=[file]))
|
report_writer.write(ExportResults(missing=[file]))
|
||||||
continue
|
continue
|
||||||
# zzz put in check for hardlink
|
# TODO: zzz put in check for hardlink
|
||||||
verbose(f"Processing file [filepath]{file}[/] ([num]{count}/{total}[/num])")
|
verbose(f"Processing file [filepath]{file}[/] ([num]{count}/{total}[/num])")
|
||||||
photo = photosdb.get_photo(uuid)
|
photo = photosdb.get_photo(uuid)
|
||||||
export_options = ExportOptions(
|
export_options = ExportOptions(
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
"""exportdb command for osxphotos CLI"""
|
"""exportdb command for osxphotos CLI"""
|
||||||
|
|
||||||
|
import json
|
||||||
import pathlib
|
import pathlib
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
@@ -63,6 +64,18 @@ from .verbose import verbose_print
|
|||||||
nargs=1,
|
nargs=1,
|
||||||
help="Print information about FILE_PATH contained in the database.",
|
help="Print information about FILE_PATH contained in the database.",
|
||||||
)
|
)
|
||||||
|
@click.option(
|
||||||
|
"--uuid-files",
|
||||||
|
metavar="UUID",
|
||||||
|
nargs=1,
|
||||||
|
help="List exported files associated with UUID.",
|
||||||
|
)
|
||||||
|
@click.option(
|
||||||
|
"--uuid-info",
|
||||||
|
metavar="UUID",
|
||||||
|
nargs=1,
|
||||||
|
help="Print information about UUID contained in the database.",
|
||||||
|
)
|
||||||
@click.option(
|
@click.option(
|
||||||
"--report",
|
"--report",
|
||||||
metavar="REPORT_FILE RUN_ID",
|
metavar="REPORT_FILE RUN_ID",
|
||||||
@@ -110,22 +123,24 @@ from .verbose import verbose_print
|
|||||||
)
|
)
|
||||||
@click.argument("export_db", metavar="EXPORT_DATABASE", type=click.Path(exists=True))
|
@click.argument("export_db", metavar="EXPORT_DATABASE", type=click.Path(exists=True))
|
||||||
def exportdb(
|
def exportdb(
|
||||||
version,
|
|
||||||
vacuum,
|
|
||||||
check_signatures,
|
|
||||||
update_signatures,
|
|
||||||
touch_file,
|
|
||||||
last_run,
|
|
||||||
save_config,
|
|
||||||
info,
|
|
||||||
report,
|
|
||||||
migrate,
|
|
||||||
sql,
|
|
||||||
export_dir,
|
|
||||||
append,
|
append,
|
||||||
verbose,
|
check_signatures,
|
||||||
dry_run,
|
dry_run,
|
||||||
export_db,
|
export_db,
|
||||||
|
export_dir,
|
||||||
|
info,
|
||||||
|
last_run,
|
||||||
|
migrate,
|
||||||
|
report,
|
||||||
|
save_config,
|
||||||
|
sql,
|
||||||
|
touch_file,
|
||||||
|
update_signatures,
|
||||||
|
uuid_files,
|
||||||
|
uuid_info,
|
||||||
|
vacuum,
|
||||||
|
verbose,
|
||||||
|
version,
|
||||||
):
|
):
|
||||||
"""Utilities for working with the osxphotos export database"""
|
"""Utilities for working with the osxphotos export database"""
|
||||||
|
|
||||||
@@ -163,6 +178,8 @@ def exportdb(
|
|||||||
sql,
|
sql,
|
||||||
touch_file,
|
touch_file,
|
||||||
update_signatures,
|
update_signatures,
|
||||||
|
uuid_files,
|
||||||
|
uuid_info,
|
||||||
vacuum,
|
vacuum,
|
||||||
version,
|
version,
|
||||||
]
|
]
|
||||||
@@ -273,6 +290,37 @@ def exportdb(
|
|||||||
print(f"[red]File '{info}' not found in export database[/red]")
|
print(f"[red]File '{info}' not found in export database[/red]")
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
|
||||||
|
if uuid_info:
|
||||||
|
# get photoinfo record for a uuid
|
||||||
|
exportdb = ExportDB(export_db, export_dir)
|
||||||
|
try:
|
||||||
|
info_rec = exportdb.get_photoinfo_for_uuid(uuid_info)
|
||||||
|
except Exception as e:
|
||||||
|
print(f"[red]Error: {e}[/red]")
|
||||||
|
sys.exit(1)
|
||||||
|
else:
|
||||||
|
if info_rec:
|
||||||
|
print(json.dumps(json.loads(info_rec), sort_keys=True, indent=2))
|
||||||
|
else:
|
||||||
|
print(f"[red]UUID '{uuid_info}' not found in export database[/red]")
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
|
if uuid_files:
|
||||||
|
# list files associated with a uuid
|
||||||
|
exportdb = ExportDB(export_db, export_dir)
|
||||||
|
try:
|
||||||
|
file_list = exportdb.get_files_for_uuid(uuid_files)
|
||||||
|
except Exception as e:
|
||||||
|
print(f"[red]Error: {e}[/red]")
|
||||||
|
sys.exit(1)
|
||||||
|
else:
|
||||||
|
if file_list:
|
||||||
|
for f in file_list:
|
||||||
|
print(f)
|
||||||
|
else:
|
||||||
|
print(f"[red]UUID '{uuid_files}' not found in export database[/red]")
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
if report:
|
if report:
|
||||||
exportdb = ExportDB(export_db, export_dir)
|
exportdb = ExportDB(export_db, export_dir)
|
||||||
report_template, run_id = report
|
report_template, run_id = report
|
||||||
|
|||||||
Binary file not shown.
@@ -15,7 +15,7 @@ from contextlib import suppress
|
|||||||
from io import StringIO
|
from io import StringIO
|
||||||
from sqlite3 import Error
|
from sqlite3 import Error
|
||||||
from tempfile import TemporaryDirectory
|
from tempfile import TemporaryDirectory
|
||||||
from typing import Any, Optional, Tuple, Union
|
from typing import Any, Optional, Tuple, Union, List
|
||||||
|
|
||||||
from tenacity import retry, stop_after_attempt
|
from tenacity import retry, stop_after_attempt
|
||||||
|
|
||||||
@@ -171,6 +171,17 @@ class ExportDB:
|
|||||||
uuid = None
|
uuid = None
|
||||||
return uuid
|
return uuid
|
||||||
|
|
||||||
|
def get_files_for_uuid(self, uuid: str) -> List:
|
||||||
|
"""query database for UUID and return list of files associated with UUID or empty list"""
|
||||||
|
conn = self._conn
|
||||||
|
c = conn.cursor()
|
||||||
|
c.execute(
|
||||||
|
"SELECT filepath FROM export_data WHERE uuid = ?",
|
||||||
|
(uuid,),
|
||||||
|
)
|
||||||
|
results = c.fetchall()
|
||||||
|
return [os.path.join(self.export_dir, r[0]) for r in results]
|
||||||
|
|
||||||
def get_photoinfo_for_uuid(self, uuid):
|
def get_photoinfo_for_uuid(self, uuid):
|
||||||
"""returns the photoinfo JSON struct for a UUID"""
|
"""returns the photoinfo JSON struct for a UUID"""
|
||||||
conn = self._conn
|
conn = self._conn
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ def test_export_db():
|
|||||||
assert db.get_uuid_for_file(filepath) is None
|
assert db.get_uuid_for_file(filepath) is None
|
||||||
db.create_file_record(filepath, uuid)
|
db.create_file_record(filepath, uuid)
|
||||||
assert db.get_uuid_for_file(filepath) == uuid
|
assert db.get_uuid_for_file(filepath) == uuid
|
||||||
|
assert db.get_files_for_uuid(uuid) == [filepath]
|
||||||
|
|
||||||
record = db.get_file_record(filepath)
|
record = db.get_file_record(filepath)
|
||||||
assert record.uuid == uuid
|
assert record.uuid == uuid
|
||||||
@@ -142,6 +143,7 @@ def test_export_db_in_memory():
|
|||||||
assert record2.digest == DIGEST_DATA
|
assert record2.digest == DIGEST_DATA
|
||||||
assert record2.src_sig == (7, 8, 9)
|
assert record2.src_sig == (7, 8, 9)
|
||||||
assert record2.dest_sig == (10, 11, 12)
|
assert record2.dest_sig == (10, 11, 12)
|
||||||
|
assert dbram.get_files_for_uuid(uuid) == [filepath]
|
||||||
|
|
||||||
# change some values
|
# change some values
|
||||||
record2.photoinfo = INFO_DATA2
|
record2.photoinfo = INFO_DATA2
|
||||||
|
|||||||
Reference in New Issue
Block a user