de2f1caa42 
								
							 
						 
						
							
							
								
								Don't use log_level from config -- pass it in to constructor.  
							
							... 
							
							
							
							The problem with the log_level config was twofold. First, there is some
work to be done before the config is be loaded, and so we must hardcode
the log level for that. I was using debug. Secondly, I have realized
that log levels should be pushed as close to the front of the UI code
as possible, not the backend code. 
							
						 
						
							2020-11-08 20:09:16 -08:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c9fcb51247 
								
							 
						 
						
							
							
								
								When normalizing tag names, collapse whitespace to 1 space.  
							
							
							
						 
						
							2020-10-25 20:21:52 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								40d369e2bb 
								
							 
						 
						
							
							
								
								Fix handling of root drive path as within_directory.  
							
							
							
						 
						
							2020-10-25 20:18:56 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								90e7f6b6e1 
								
							 
						 
						
							
							
								
								Rewrite tag_export.easybake as a generator.  
							
							
							
						 
						
							2020-10-17 17:56:21 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c278f3e0af 
								
							 
						 
						
							
							
								
								Let Tag objects be sortable using their name.  
							
							
							
						 
						
							2020-10-17 17:55:36 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6fb6b1eeb0 
								
							 
						 
						
							
							
								
								Add Bookmark.display_name, just like Album.  
							
							
							
						 
						
							2020-10-13 10:37:12 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b2290d030a 
								
							 
						 
						
							
							
								
								Allow orderby bitrate.  
							
							
							
						 
						
							2020-10-12 22:28:09 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								735fbf9abd 
								
							 
						 
						
							
							
								
								Let the purge methods yield their deleted items.  
							
							
							
						 
						
							2020-09-30 13:41:42 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3a8aadf6aa 
								
							 
						 
						
							
							
								
								Remove __main__ from photodb.py.  
							
							
							
						 
						
							2020-09-28 20:15:28 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6eb4d887ba 
								
							 
						 
						
							
							
								
								Replace create_or_get_photos with singular.  
							
							
							
						 
						
							2020-09-28 20:14:10 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d531c66bf0 
								
							 
						 
						
							
							
								
								Delete photo's thumbnail when deleting the file.  
							
							... 
							
							
							
							A minor oversight, I think you'll agree. 
							
						 
						
							2020-09-28 14:22:09 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								949e6f68fe 
								
							 
						 
						
							
							
								
								Remove support for two Photos with same path.  
							
							... 
							
							
							
							I have yet to find a practical need for this, and all it does is cause
headaches about the safety of moving / renaming the file. 
							
						 
						
							2020-09-28 14:18:10 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								585882028d 
								
							 
						 
						
							
							
								
								Add get_things_by_sql for quick, bespoke queries.  
							
							
							
						 
						
							2020-09-28 14:07:28 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								98f706f486 
								
							 
						 
						
							
							
								
								Let Photo.basename be a @property.  
							
							
							
						 
						
							2020-09-28 14:06:32 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3b72b07262 
								
							 
						 
						
							
							
								
								Replace yield from generator with return generator.  
							
							
							
						 
						
							2020-09-28 11:26:16 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								63bc2dfed5 
								
							 
						 
						
							
							
								
								Add yield_photos, count albums in search result limit.  
							
							... 
							
							
							
							This experiment of bringing Photos and Albums closer to parity in
search is going well so far. I have found some situations where it
is nice to only get albums back from search results. 
							
						 
						
							2020-09-27 23:38:49 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c7eda36133 
								
							 
						 
						
							
							
								
								Add decollide_names, prefer simplified names in album exports.  
							
							
							
						 
						
							2020-09-27 23:36:15 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								28aa47d40d 
								
							 
						 
						
							
							
								
								Add __str__ to Album and Photo.  
							
							
							
						 
						
							2020-09-27 23:35:12 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ba1fba0c06 
								
							 
						 
						
							
							
								
								Add full_name to Albums.  
							
							
							
						 
						
							2020-09-27 23:35:12 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8777998829 
								
							 
						 
						
							
							
								
								Add plural method remove_children.  
							
							
							
						 
						
							2020-09-27 22:24:33 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0eb8fd3f1b 
								
							 
						 
						
							
							
								
								Fix incorrect short-circuit order of add_chidren bail.  
							
							
							
						 
						
							2020-09-27 19:49:27 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								06340d03da 
								
							 
						 
						
							
							
								
								Dedent these loops via comprehensions of questionable clarity.  
							
							
							
						 
						
							2020-09-27 13:50:35 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fa512eff28 
								
							 
						 
						
							
							
								
								Add argument once_each, set to False if you want every permutation.  
							
							
							
						 
						
							2020-09-27 13:28:03 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								97cc023866 
								
							 
						 
						
							
							
								
								Add Groupable methods has_ancestor, _descendant, _parent.  
							
							
							
						 
						
							2020-09-27 13:01:19 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								667c14f072 
								
							 
						 
						
							
							
								
								Add search argument within_directory.  
							
							
							
						 
						
							2020-09-27 10:48:01 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								da67740689 
								
							 
						 
						
							
							
								
								Move these print statements to log.debug.  
							
							
							
						 
						
							2020-09-27 10:47:32 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								51b2642be9 
								
							 
						 
						
							
							
								
								Let data_directory take an existing pathclass instance.  
							
							
							
						 
						
							2020-09-27 10:45:58 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a2fc49b6e7 
								
							 
						 
						
							
							
								
								Let config.log_level None -> setLevel(NOTSET).  
							
							
							
						 
						
							2020-09-27 10:45:07 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								343ce508bf 
								
							 
						 
						
							
							
								
								Add search UI for yield_albums.  
							
							
							
						 
						
							2020-09-24 14:26:51 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9a85714df7 
								
							 
						 
						
							
							
								
								Use pathclass.Path.makedirs.  
							
							
							
						 
						
							2020-09-24 14:18:23 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								28181428be 
								
							 
						 
						
							
							
								
								Synchronize Etiquette and YCDL.  
							
							
							
						 
						
							2020-09-22 02:54:26 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								18e1849fcf 
								
							 
						 
						
							
							
								
								Fix video_thumbnail not checking if probe failed before using it.  
							
							
							
						 
						
							2020-09-20 18:31:55 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2accb5c961 
								
							 
						 
						
							
							
								
								Use pathclass.Path.open.  
							
							
							
						 
						
							2020-09-20 18:31:31 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								55e66c8656 
								
							 
						 
						
							
							
								
								Fix NameError during set_override_filename.  
							
							
							
						 
						
							2020-09-20 13:43:02 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f8e03bed21 
								
							 
						 
						
							
							
								
								Replace usage of row[0] with (column,) tuple unpack.  
							
							
							
						 
						
							2020-09-20 13:41:22 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fa57386908 
								
							 
						 
						
							
							
								
								Don't call p.get_tags until needed, and don't sort them.  
							
							
							
						 
						
							2020-09-20 13:17:51 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f56da72881 
								
							 
						 
						
							
							
								
								Return more sets from backend, do sorting on frontend.  
							
							... 
							
							
							
							It's better semantically for these items coming out of the backend
to be sets. Sorted lists are only relevant to human consumption at the
frontend. 
							
						 
						
							2020-09-20 13:16:52 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								317fa3b51d 
								
							 
						 
						
							
							
								
								Call assert_not_deleted before every @transaction.  
							
							
							
						 
						
							2020-09-20 12:46:52 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								497abf26cd 
								
							 
						 
						
							
							
								
								Move circular dependency to end of file.  
							
							
							
						 
						
							2020-09-20 12:46:38 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5c4c0a3034 
								
							 
						 
						
							
							
								
								Let jsonify.photo expect that tags are sets, not lists.  
							
							
							
						 
						
							2020-09-20 12:06:10 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a8f5f858b7 
								
							 
						 
						
							
							
								
								Add abstractmethod to Groupable methods that write; dunder methods.  
							
							... 
							
							
							
							The read-only methods like get_* and has_* don't need to be overridden,
but for anything that writes I don't want to forget to override them
with feature decorators etc. 
							
						 
						
							2020-09-20 12:04:49 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2a89cf33d3 
								
							 
						 
						
							
							
								
								Add has_tags=False suggestion to digest_directory docstring.  
							
							
							
						 
						
							2020-09-20 11:43:18 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								512470f73d 
								
							 
						 
						
							
							
								
								Add log statement for PDB.digest_directory.  
							
							
							
						 
						
							2020-09-20 11:42:44 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1acd570467 
								
							 
						 
						
							
							
								
								Simplify log statement for Photo.rename_file.  
							
							
							
						 
						
							2020-09-20 11:41:33 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								718da6c5c3 
								
							 
						 
						
							
							
								
								Remove leftover attributes group_sql_index, group_getter.  
							
							
							
						 
						
							2020-09-20 11:41:15 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b66464dc46 
								
							 
						 
						
							
							
								
								Add exceptions.DeletedObject and ObjectBase.assert_not_deleted.  
							
							
							
						 
						
							2020-09-20 11:31:51 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								85260144ef 
								
							 
						 
						
							
							
								
								Add attribute deleted to all objects, for held instances.  
							
							... 
							
							
							
							If an instance is being held in two places, and then one of them
calls delete(), the other can check deleted before doing anything with
the object. 
							
						 
						
							2020-09-20 11:16:07 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7412ef5162 
								
							 
						 
						
							
							
								
								Let parse_unit_string try int before float.  
							
							
							
						 
						
							2020-09-19 04:01:49 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								865c3011e5 
								
							 
						 
						
							
							
								
								Some linting.  
							
							
							
						 
						
							2020-09-19 03:59:37 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0df556da3f 
								
							 
						 
						
							
							
								
								Some more stricter type checks and exceptions.  
							
							
							
						 
						
							2020-09-19 03:52:42 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2db1f12bfb 
								
							 
						 
						
							
							
								
								Add constants.USER_ID_CHARACTERS and show that when raising invalid.  
							
							
							
						 
						
							2020-09-19 03:51:55 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b223691107 
								
							 
						 
						
							
							
								
								Add helpers.collapse_whitespace.  
							
							
							
						 
						
							2020-09-19 03:50:55 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1013fb81c1 
								
							 
						 
						
							
							
								
								Call assert_no_such_user before assert_valid_password.  
							
							
							
						 
						
							2020-09-19 03:35:26 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7b7015125e 
								
							 
						 
						
							
							
								
								Add period to all exception messages.  
							
							
							
						 
						
							2020-09-19 03:32:16 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								06c811d858 
								
							 
						 
						
							
							
								
								Move all get_user_id_or_none calls to "these might raise" portions.  
							
							
							
						 
						
							2020-09-19 03:24:02 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								adb1d0ef39 
								
							 
						 
						
							
							
								
								Replace all double blank lines with single, improve hash headers.  
							
							... 
							
							
							
							There was always some semblance that two blank lines has some kind of
meaning or structure that's different from single blank lines, but
in reality it was mostly arbitrary and I can't stand to look at it
any more. 
							
						 
						
							2020-09-19 03:13:23 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a7cc6d2383 
								
							 
						 
						
							
							
								
								Rename all caught exception variables to "exc", not "e".  
							
							
							
						 
						
							2020-09-19 03:08:45 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								854f210a4f 
								
							 
						 
						
							
							
								
								Alphabetize Photo.set_searchhidden.  
							
							
							
						 
						
							2020-09-18 13:11:56 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4b5a52abb4 
								
							 
						 
						
							
							
								
								Take advantage of the tag_exports cache for get_all_tag_names.  
							
							
							
						 
						
							2020-09-17 21:22:54 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4bcfd9958a 
								
							 
						 
						
							
							
								
								Split get_user into _by_id, _by_username.  
							
							
							
						 
						
							2020-09-17 21:11:42 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								22d16693f3 
								
							 
						 
						
							
							
								
								Remove path parameter from get_album, remove get_album_by_id.  
							
							... 
							
							
							
							First of all, I realized the return statement was using the
outdated singular name of the method. But anyway, I don't like the
idea that this method would sometimes return a single album by id
or a list of albums by path. If you want to get by path, use
get_albums_by_path explicitly. 
							
						 
						
							2020-09-17 21:09:10 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								838982b6c3 
								
							 
						 
						
							
							
								
								Let login take username.  
							
							... 
							
							
							
							This cuts back on unnecessary sql selects. 
							
						 
						
							2020-09-17 21:02:55 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								40e458e713 
								
							 
						 
						
							
							
								
								Don't update self.attribute until sql_update goes through.  
							
							
							
						 
						
							2020-09-17 20:44:33 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a093dc273c 
								
							 
						 
						
							
							
								
								Update self.real_path after relocating and renaming.  
							
							
							
						 
						
							2020-09-17 20:43:17 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								39b7f3cd98 
								
							 
						 
						
							
							
								
								Experiment: Remove character whitelist for tag names.  
							
							... 
							
							
							
							I have always felt bad about forbidding unicode in tag names,
but I want to make sure I have a grip on sanitization / preventing
abuse before allowing it. I think stripping control characters is
enough and any abuse can be handled manually.
Of course that's all fiction because there are no users except myself. 
							
						 
						
							2020-09-17 18:52:06 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								26b9371f26 
								
							 
						 
						
							
							
								
								When @transaction rolls back, log the name of the called method.  
							
							
							
						 
						
							2020-09-17 18:33:56 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c99f6858df 
								
							 
						 
						
							
							
								
								Add Photo.normalize_override_filename.  
							
							
							
						 
						
							2020-09-17 17:46:52 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c91888a738 
								
							 
						 
						
							
							
								
								Some linting.  
							
							
							
						 
						
							2020-09-15 19:47:07 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d093843f28 
								
							 
						 
						
							
							
								
								Use sql_execute instead of sql.execute.  
							
							
							
						 
						
							2020-09-15 14:58:05 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								750d93673d 
								
							 
						 
						
							
							
								
								Add method purge_deleted_associated_directories.  
							
							
							
						 
						
							2020-09-15 14:57:20 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								37bff5c427 
								
							 
						 
						
							
							
								
								Look for renamed files (lost&found) during digest_directory.  
							
							
							
						 
						
							2020-09-15 14:57:05 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9578dc4d67 
								
							 
						 
						
							
							
								
								Add column for photo's st_dev, st_ino to facilitate lost&found.  
							
							
							
						 
						
							2020-09-15 14:56:45 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								50ecc4c1c1 
								
							 
						 
						
							
							
								
								Let digest_directory act as a generator, yielding photos & albums.  
							
							
							
						 
						
							2020-09-15 13:48:06 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								37c784982a 
								
							 
						 
						
							
							
								
								Add PDB.clear_all_caches.  
							
							
							
						 
						
							2020-09-15 13:44:49 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5bc3fdd08e 
								
							 
						 
						
							
							
								
								Move purge_empty_albums to PDBAlbumMixin.  
							
							
							
						 
						
							2020-09-15 13:44:28 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5b4cc5bf9c 
								
							 
						 
						
							
							
								
								Log the exception before rolling back.  
							
							
							
						 
						
							2020-09-14 20:25:24 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5d40622b76 
								
							 
						 
						
							
							
								
								Add log for Photo.relocate.  
							
							
							
						 
						
							2020-09-14 19:38:29 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								be0747fd8c 
								
							 
						 
						
							
							
								
								Use path.absolute_path when logging add_associated_directory.  
							
							
							
						 
						
							2020-09-14 19:38:13 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8279a1871b 
								
							 
						 
						
							
							
								
								Return set instead of list from get_parents, get_tags.  
							
							
							
						 
						
							2020-09-14 18:34:14 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a32caafb8b 
								
							 
						 
						
							
							
								
								Remove leftover print statements.  
							
							
							
						 
						
							2020-09-14 16:56:55 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1f7ffbb283 
								
							 
						 
						
							
							
								
								Fix old reference to incorrect variable name tagname.  
							
							
							
						 
						
							2020-09-14 05:50:10 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f3bceb4688 
								
							 
						 
						
							
							
								
								Remove get_cached_flat_dict, add get_cached_tag_export.  
							
							
							
						 
						
							2020-09-14 05:49:24 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cf64c79809 
								
							 
						 
						
							
							
								
								When grouping tags, update tagged photos to prefer child.  
							
							... 
							
							
							
							I am also considering applying the opposite effect when ungrouping.
Should a photo with A.B get A when A and B are ungrouped? There are
some cases where the answer is yes, and others no, depending on the
reason you're ungrouping the tags. Whereas this change is non-
controversial and simply enforces the existing standard of adding
more specific tags to a photo. 
							
						 
						
							2020-09-14 05:46:43 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f1d17350a7 
								
							 
						 
						
							
							
								
								Add Photo.remove_tags.  
							
							
							
						 
						
							2020-09-14 05:38:20 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								85f24dd1f5 
								
							 
						 
						
							
							
								
								Let Photo.remove_tag only remove exact tag, not children.  
							
							... 
							
							
							
							I wrote this because I felt it would be a useful shorthand, as a way
of nuking all tags of a subtree off a photo, but it's too easy
to cause collateral damage when composing remove_tag with other
functions. So, when you remove tags from a photo, you'll have to be
more specific. 
							
						 
						
							2020-09-14 05:37:47 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								54add8ad61 
								
							 
						 
						
							
							
								
								Add search parameter yield_albums.  
							
							... 
							
							
							
							The exact details of this feature are still experimental, but I think
the concept is sound enough to make it an official parameter. 
							
						 
						
							2020-09-14 05:16:36 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								188095c30b 
								
							 
						 
						
							
							
								
								Remove unnecessary intermediate variable syn_lines.  
							
							
							
						 
						
							2020-09-12 17:33:45 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5dcccae646 
								
							 
						 
						
							
							
								
								Fix add_children all(bail) causing short-circuit.  
							
							
							
						 
						
							2020-09-12 13:14:40 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d41bad63e7 
								
							 
						 
						
							
							
								
								Move reset of cached_tag_flat_dict out of GroupableMixin into Tag.  
							
							... 
							
							
							
							That should not have been there!
Needed to add the BAIL sentinel so that Tag methods would only
reset the cache if the internal method actually did made any changes. 
							
						 
						
							2020-09-12 01:19:03 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								74445d0a1f 
								
							 
						 
						
							
							
								
								Add internal _add_child so that plural doesn't call transacted.  
							
							... 
							
							
							
							add_children was calling add_child in a loop. Since this is a parent
class, that call would actually call the subclasses' add_child method,
which has a transaction decorator, and create unnecessary transactions. 
							
						 
						
							2020-09-12 01:00:39 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								21921dc8fc 
								
							 
						 
						
							
							
								
								Rename cached_frozen_children -> cached_tag_flat_dict.  
							
							
							
						 
						
							2020-09-12 00:56:32 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b59c2700db 
								
							 
						 
						
							
							
								
								Update _lift_children docstring.  
							
							
							
						 
						
							2020-09-12 00:53:12 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1a53af8821 
								
							 
						 
						
							
							
								
								Replace horrible flat_dict algorithm with actual recursion.  
							
							
							
						 
						
							2020-09-12 00:21:37 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2a9b2cd095 
								
							 
						 
						
							
							
								
								Add methods PDB.get_thing_count for all thing types.  
							
							
							
						 
						
							2020-09-11 23:51:57 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cfb48a8d11 
								
							 
						 
						
							
							
								
								Add disclaimer about yield order to get_things_by_id.  
							
							
							
						 
						
							2020-09-11 22:13:30 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0cdd8c0d71 
								
							 
						 
						
							
							
								
								Add detailed doctstring to digest_directory.  
							
							
							
						 
						
							2020-09-11 15:49:02 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4a3236babe 
								
							 
						 
						
							
							
								
								Update digest_directory to handle plural albums at every step.  
							
							
							
						 
						
							2020-09-11 15:48:37 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								dea746c45a 
								
							 
						 
						
							
							
								
								Alphabetize Album's methods.  
							
							
							
						 
						
							2020-09-11 15:21:13 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1cc70616a5 
								
							 
						 
						
							
							
								
								Replace get_album_by_path with get_albums_by_path generator.  
							
							
							
						 
						
							2020-09-11 15:15:12 -07:00 
							
								 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7705848714 
								
							 
						 
						
							
							
								
								Let new_album take multiple associated directories.  
							
							
							
						 
						
							2020-09-11 15:02:33 -07:00