-
Notifications
You must be signed in to change notification settings - Fork 380
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: bump version to v9.5.0 Pre-Release 1; update docs (#751)
* chore: change version branch to "Pre-Release 1" * docs: update docstring for JSON `open_library()` Update method docstring with exact starting and ending versions now that they exist. * docs: update README, CONTRIBUTING.md, & index.md * docs: update roadmap * docs: fix typo in README, change callout * docs: update docs site with v9.5 features * docs: remove warning from index.md
- Loading branch information
Showing
18 changed files
with
279 additions
and
276 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,26 +1,50 @@ | ||
# Entry | ||
# File Entries | ||
|
||
Entries are the units that fill a [library](index.md). Each one corresponds to a file, holding a reference to it along with the metadata associated with it. | ||
File entries are the individual representations of your files inside a TagStudio [library](index.md). Each one corresponds one-to-one to a file on disk, and tracks all of the additional [tags](tag.md) and metadata that you attach to it inside TagStudio. | ||
|
||
### Entry Object Structure | ||
## Storage | ||
|
||
1. `id` | ||
- Int, Unique, **Required** | ||
- The ID for the Entry. | ||
- Used for internal processing | ||
2. `filename`: | ||
- String, **Required** | ||
- The filename with extension of the referenced media file. | ||
3. `path`: | ||
- String, **Required**, OS Agnostic | ||
- The folder path in which the media file is located in. | ||
4. [`fields`](field.md): | ||
- List of dicts, Optional | ||
- A list of Field ID/Value dicts. | ||
File entry data is storied within the `ts_library.sqlite` file inside each library's `.TagStudio` folder. No modifications are made to your actual files on disk, and nothing like sidecar files are generated for your files. | ||
|
||
!!! note | ||
Entries currently have several unused optional fields intended for later features. | ||
## Appearance | ||
|
||
## Retrieving Entries based on [Tag](tag.md) Cluster | ||
File entries appear as file previews both inside the thumbnail grid. The preview panel shows a more detailed preview of the file, along with extra file stats and all attached TagStudio tags and fields. | ||
|
||
By default when querying Entries, each Entry's `tags` list (stored in the form of Tag `id`s) is compared against the Tag `id`s in a given Tag cluster (list of Tag `id`s) or appended clusters in the case of multi-term queries. The type of comparison depends on the type of query and whether or not it is an inclusive or exclusive query, or a combination of both. This default searching behavior is done in _O(n)_ time, but can be sped up in the future by building indexes on certain search terms. These indexes can be stored on disk and loaded back into memory in future sessions. These indexes will also need to be updated as new Tags and Entries are added or edited. | ||
## Unlinked File Entries | ||
|
||
If the file that an entry is referencing has been moved, renamed, or deleted on disk, then TagStudio will display a red chain-link icon for the thumbnail image. Certain uncached stats such as the file size and image dimensions will also be unavailable to see in the preview panel when a file becomes unlinked. | ||
|
||
To fix file entries that have become unlinked, select the "Fix Unlinked Entries" option from the Tools menu. From there, refresh the unlinked entry count and choose whether to search and relink you files, and/or delete the file entires from your library. This will NOT delete or modify any files on disk. | ||
|
||
## Internal Structure | ||
|
||
- `id` (`INTEGER`/`int`, `UNIQUE`, `NOT NULL`, `PRIMARY KEY`) | ||
- The ID for the file entry. | ||
- Used for guaranteed unique references. | ||
- `folder` (`INTEGER`/`int`, `NOT NULL`, `FOREIGN KEY`) | ||
- _Not currently used, may be removed._ | ||
- `path` (`VARCHAR`/`Path`, `UNIQUE`, `NOT NULL`) | ||
- The filename and filepath relative to the root of the library folder. | ||
- (E.g. for library "Folder", path = "any_subfolders/filename.txt") | ||
- `suffix` (`VARCHAR`/`str`, `NOT NULL`) | ||
- The filename suffix with no leading dot. | ||
- Used for quicker file extension checks. | ||
- `date_created` (`DATETIME`/`Datetime`) | ||
- _Not currently used, will be implemented in an upcoming update._ | ||
- The creation date of the file (not the entry). | ||
- Generates from `st_birthtime` on Windows and Mac, and `st_ctime` on Linux. | ||
- `date_modified` (`DATETIME`/`Datetime`) | ||
- _Not currently used, will be implemented in an upcoming update._ | ||
- The latest modification date of the file (not the entry). | ||
- Generates from `st_mtime`. | ||
- `date_added` (`DATETIME`/`Datetime`) | ||
- The date the file entry was added to the TagStudio library. | ||
|
||
### Table Relationships | ||
|
||
- `tag_entries` | ||
- A relationship between `entry_id` to `tag_id`s from the `tags` table. | ||
- `text_fields` | ||
- (TODO: determine the relationship for `entry_id`) | ||
- `datetime_fields` | ||
- (TODO: determine the relationship for `entry_id`) |
Oops, something went wrong.