Skip to content

Commit

Permalink
Version 348
Browse files Browse the repository at this point in the history
  • Loading branch information
hydrusnetwork committed Apr 17, 2019
1 parent d7b2e12 commit f8b49fc
Show file tree
Hide file tree
Showing 48 changed files with 1,259 additions and 261 deletions.
22 changes: 22 additions & 0 deletions help/changelog.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,28 @@
<div class="content">
<h3>changelog</h3>
<ul>
<li><h3>version 348</h3></li>
<ul>
<li>wrote some OR search help to 'getting started with tags' help page</li>
<li>wrote a new multi-reader, single-writer lock object for the client file manager, along with some unit tests for it.</li>
<li>updated the file and thumbnail access and regen and maintenance code to use the new lock. various access is now faster when available and overall safer. there is still work to do here</li>
<li>adjusted file import to be less aggressive about locking, which should reduce some file/thumbnail access lag during heavy imports</li>
<li>the thumbnail space estimate in the migrate database dialog is now more adaptive to the new more flexible thumbnail size system and specificies better that it is an estimate</li>
<li>the client api's /add_tags/add_tags call now collapses siblings and expands parents on an add/pend call. this can be turned off by setting the new optional parameter 'add_siblings_and_parents' to false. the help is updated regarding this and the client api version is incremented to 6</li>
<li>fixed the client api's /add_tags/add_tags call for the 'hashes' parameter, which was failing to parse, and added an accidentally missing unit test to check this in future</li>
<li>the client local services (the booru and client api) now have two new options under their 'manage services' panel: 'support CORS', which turns on cross-orogin support (which is experimental for now, so defaults to False), and 'logs requests', which controls whether your log will be spammed with request reports (this also defaults to False), which should clear up some 100MB+ log hassle for people using the Hydrus Companion browser add-on</li>
<li>hydrus services now respond correctly (albeit sparsely) to OPTIONS requests, and if CORS is enabled, to CORS OPTIONS requests. there are unit tests for this that seem to work ok, but I think we'll need to verify it irl</li>
<li>finished a first version bitmap manager to handle all wx bitmap creation and destruction, including recycling mid-steps</li>
<li>updated all simple wx bitmap creation and destruction calls across the client to use the new bitmap manager, improving stability and saving some CPU</li>
<li>fixed some incorrect button alignment flags that were causing problems for clients set to assert check these values</li>
<li>added a new yiff.party file url class to the defaults that matches a new file attachment format</li>
<li>updated the 'url' content parser so if a parsed url is in the form 'summary_text url', as some booru source fields sometimes specify, the preceding summary text is removed, cleaning up the resultant url</li>
<li>silenced an old server connection lost error that was needlessly loud</li>
<li>silenced the client network engine from additionally log-printing SizeException errors when a downloading file (usually gif) exceeds file import options rules</li>
<li>improved misc window destruction code</li>
<li>updated supported mime list in 'getting started with files' help and website index</li>
<li>misc cleanup</li>
</ul>
<li><h3>version 347</h3></li>
<ul>
<li>or search:</li>
Expand Down
2 changes: 2 additions & 0 deletions help/client_api.html
Original file line number Diff line number Diff line change
Expand Up @@ -253,6 +253,7 @@ <h3><b>POST /add_tags/add_tags</b></h3>
<li>hashes : (a list of SHA256 hashes)</li>
<li>service_names_to_tags : (an Object of service names to lists of tags to be 'added' to the files)</li>
<li>service_names_to_actions_to_tags : (an Object of service names to content update actions to lists of tags)</li>
<li>add_siblings_and_parents : (an optional boolean, defaulting to true)</li>
</ul>
<p>You can use either 'hash' or 'hashes', and you can use either the simple add-only 'service_names_to_tags' or the advanced 'service_names_to_actions_to_tags'.</p>
<p>The service names are as in the <i>/add_tags/get_tag_services</i> call.</p>
Expand All @@ -266,6 +267,7 @@ <h3><b>POST /add_tags/add_tags</b></h3>
<li>5 - Rescind a petition from a tag repository.</li>
</ul>
<p>When you petition a tag from a repository, a 'reason' for the petition is typically needed. If you send a normal list of tags here, a default reason of "Petitioned from API" will be given. If you want to set your own reason, you can instead give a list of [ tag, reason ] pairs.</p>
<p>By default, any 'add' or 'pend' action, including the simpler 'service_names_to_tags' structure, will collapse tags according to their siblings and add appropriate tag parents. This does not apply to non-'add' actions. You can turn this off by setting the 'add_siblings_and_parents' parameter to false.</p>
<p>Some example requests:</p>
<p>Adding some tags to a file:</p>
<pre>{
Expand Down
21 changes: 15 additions & 6 deletions help/getting_started_files.html
Original file line number Diff line number Diff line change
Expand Up @@ -52,19 +52,28 @@ <h3>so, what does the hydrus client do?</h3>
<li><b>image/bmp</b> (.bmp - converted to image/png on import)</li>
<li><b>image/gif</b> (.gif)</li>
<li><b>image/png</b> (.png)</li>
<li><b>image/apng</b> (.apng)</li>
<li><b>image/jpeg</b> (.jpg)</li>
<li><b>application/x-shockwave-flash</b> (.swf)</li>
<li><b>application/pdf</b> (.pdf)</li>
<li><b>audio/mp3</b> (.mp3)</li>
<li><b>audio/ogg</b> (.ogg)</li>
<li><b>audio/flac</b> (.flac)</li>
<li><b>audio/x-ms-wma</b> (.wma)</li>
<li><b>image/tiff</b> (.tiff)</li>
<li><b>image/webp</b> (.webp)</li>
<li><b>video/x-msvideo</b> (.avi)</li>
<li><b>video/x-flv</b> (.flv)</li>
<li><b>video/x-matroska</b> (.mkv)</li>
<li><b>video/quicktime</b> (.mov)</li>
<li><b>video/mp4</b> (.mp4)</li>
<li><b>video/mpeg</b> (.mpeg)</li>
<li><b>video/webm</b> (.webm)</li>
<li><b>video/x-ms-wmv</b> (.wmv)</li>
<li><b>audio/mp3</b> (.mp3)</li>
<li><b>audio/ogg</b> (.ogg)</li>
<li><b>audio/flac</b> (.flac)</li>
<li><b>audio/x-ms-wma</b> (.wma)</li>
<li><b>application/x-shockwave-flash</b> (.swf)</li>
<li><b>application/pdf</b> (.pdf)</li>
<li><b>application/x-photoshop</b> (.psd)</li>
<li><b>application/vnd.rar</b> (.rar)</li>
<li><b>application/zip</b> (.zip)</li>
<li><b>application/x-7z-compressed</b> (.7z)</li>
</ul>
<p>Although some support is imperfect for the complicated filetypes. Most videos will not play audio yet, some animated gifs with unusual transparency will render like static, and flash cannot embed into Linux or OS X. When something does not render how you want, right-clicking on its thumbnail presents the option 'open externally', which will open the file in the appropriate default program (e.g. ACDSee, VLC).</p>
<p>The client can also download files from several websites, including 4chan and 8chan, many boorus, and gallery sites like deviant art and hentai foundry. You will learn more about this later.</p>
Expand Down
11 changes: 11 additions & 0 deletions help/getting_started_tags.html
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,17 @@ <h3>how do we find files?</h3>
<p>If you add more tags or system predicates to a search, you will limit the results to those files that match every single one:</p>
<p><a href="sororitas_hanako.png"><img src="sororitas_hanako.png" width="960" height="540" /></a></p>
<p>You can also exclude a tag by prefixing it with a hyphen (e.g. '-heresy').</p>
<h3>OR searching</h3>
<p>Searches find files that match every search 'predicate' in the list (it is an <b>AND</b> search), which makes it difficult to search for files that include one <b>OR</b> another tag. More recently, simple OR search support was added. All you have to do is hold down Shift when you enter/double-click a tag in the autocomplete entry area. Instead of sending the tag up to the active search list up top, it will instead start an under-construction 'OR chain' in the tag results below:</p>
<p><img src="or_under_construction.png" /></p>
<p>You can keep searching for and entering new tags. Holding down Shift on new tags will extend the OR chain, and entering them as normal will 'cap' the chain and send it to the complete and active search predicates above.</p>
<p><img src="or_done.png" /></p>
<p>Any file that has one or more of those OR sub-tags will match.</p>
<p>If you enter an OR tag incorrectly, you can either cancel or 'rewind' the under-construction search predicate with these new buttons that will appear:</p>
<p><img src="or_buttons.png" /></p>
<p>You can also cancel an under-construction OR by hitting Esc on an empty input. You can add any sort of search term to an OR search predicate, including system predicates. Some unusual sub-predicates (typically a '-tag', or a very broad system predicate) can run very slowly, but they will run much faster if you include non-OR search predicates in the search:</p>
<p><img src="or_mixed.png" /></p>
<p>This search will return all files that have the tag 'fanfic' and one or more of 'medium:text', a positive value for the like/dislike rating 'read later', or PDF mime.</p>
<h3>tag repositories</h3>
<p>It can take a long time to tag even small numbers of files well, so I created <i>tag repositories</i> so people can share the work.</p>
<p>Tag repos store many file->tag relationships. Anyone who has an access key to the repository can sync with it and hence download all these relationships. If any of their own files match up, they will get those tags. Access keys will also usually have permission to upload new tags and ask for existing ones to be deleted.</p>
Expand Down
Binary file added help/or_buttons.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added help/or_done.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added help/or_mixed.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added help/or_under_construction.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit f8b49fc

Please sign in to comment.