Convert many arguments to keyword-only
This commit is contained in:
		
							parent
							
								
									693fce0d34
								
							
						
					
					
						commit
						7e9c78bb19
					
				
					 1 changed files with 37 additions and 26 deletions
				
			
		|  | @ -457,11 +457,12 @@ class PDBAlbumMixin: | ||||||
| 
 | 
 | ||||||
|     def new_album( |     def new_album( | ||||||
|             self, |             self, | ||||||
|  |             title=None, | ||||||
|  |             description=None, | ||||||
|  |             *, | ||||||
|             associated_directory=None, |             associated_directory=None, | ||||||
|             commit=True, |             commit=True, | ||||||
|             description=None, |  | ||||||
|             photos=None, |             photos=None, | ||||||
|             title=None, |  | ||||||
|         ): |         ): | ||||||
|         ''' |         ''' | ||||||
|         Create a new album. Photos can be added now or later. |         Create a new album. Photos can be added now or later. | ||||||
|  | @ -558,6 +559,7 @@ class PDBPhotoMixin: | ||||||
|     def new_photo( |     def new_photo( | ||||||
|             self, |             self, | ||||||
|             filename, |             filename, | ||||||
|  |             *, | ||||||
|             allow_duplicates=False, |             allow_duplicates=False, | ||||||
|             commit=True, |             commit=True, | ||||||
|             do_metadata=True, |             do_metadata=True, | ||||||
|  | @ -629,6 +631,7 @@ class PDBPhotoMixin: | ||||||
| 
 | 
 | ||||||
|     def search( |     def search( | ||||||
|             self, |             self, | ||||||
|  |             *, | ||||||
|             area=None, |             area=None, | ||||||
|             width=None, |             width=None, | ||||||
|             height=None, |             height=None, | ||||||
|  | @ -885,9 +888,9 @@ class PDBTagMixin: | ||||||
|     def get_tags(self): |     def get_tags(self): | ||||||
|         yield from self.get_things(thing_type='tag') |         yield from self.get_things(thing_type='tag') | ||||||
| 
 | 
 | ||||||
|     def new_tag(self, tagname, commit=True): |     def new_tag(self, tagname, *, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Register a new tag in and return the Tag object. |         Register a new tag and return the Tag object. | ||||||
|         ''' |         ''' | ||||||
|         tagname = normalize_tagname(tagname) |         tagname = normalize_tagname(tagname) | ||||||
|         try: |         try: | ||||||
|  | @ -947,6 +950,7 @@ class PhotoDB(PDBAlbumMixin, PDBPhotoMixin, PDBTagMixin): | ||||||
|             self, |             self, | ||||||
|             databasename=None, |             databasename=None, | ||||||
|             data_directory=None, |             data_directory=None, | ||||||
|  |             *, | ||||||
|             id_length=None, |             id_length=None, | ||||||
|         ): |         ): | ||||||
|         if databasename is None: |         if databasename is None: | ||||||
|  | @ -1000,7 +1004,14 @@ class PhotoDB(PDBAlbumMixin, PDBPhotoMixin, PDBTagMixin): | ||||||
|             task['action'](*args, **kwargs) |             task['action'](*args, **kwargs) | ||||||
|         self.sql.commit() |         self.sql.commit() | ||||||
| 
 | 
 | ||||||
|     def digest_directory(self, directory, exclude_directories=None, exclude_filenames=None, commit=True): |     def digest_directory( | ||||||
|  |             self, | ||||||
|  |             directory, | ||||||
|  |             *, | ||||||
|  |             exclude_directories=None, | ||||||
|  |             exclude_filenames=None, | ||||||
|  |             commit=True, | ||||||
|  |         ): | ||||||
|         ''' |         ''' | ||||||
|         Create an album, and add the directory's contents to it recursively. |         Create an album, and add the directory's contents to it recursively. | ||||||
| 
 | 
 | ||||||
|  | @ -1277,7 +1288,7 @@ class ObjectBase: | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class GroupableMixin: | class GroupableMixin: | ||||||
|     def add(self, member, commit=True): |     def add(self, member, *, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Add a child object to this group. |         Add a child object to this group. | ||||||
|         Child must be of the same type as the calling object. |         Child must be of the same type as the calling object. | ||||||
|  | @ -1317,7 +1328,7 @@ class GroupableMixin: | ||||||
|             results.sort(key=lambda x: x.id) |             results.sort(key=lambda x: x.id) | ||||||
|         return results |         return results | ||||||
| 
 | 
 | ||||||
|     def delete(self, delete_children=False, commit=True): |     def delete(self, *, delete_children=False, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Delete this object's relationships to other groupables. |         Delete this object's relationships to other groupables. | ||||||
|         Any unique / specific deletion methods should be written within the |         Any unique / specific deletion methods should be written within the | ||||||
|  | @ -1365,7 +1376,7 @@ class GroupableMixin: | ||||||
|         parentid = fetch[SQL_TAGGROUP['parentid']] |         parentid = fetch[SQL_TAGGROUP['parentid']] | ||||||
|         return self.group_getter(id=parentid) |         return self.group_getter(id=parentid) | ||||||
| 
 | 
 | ||||||
|     def join_group(self, group, commit=True): |     def join_group(self, group, *, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Leave the current group, then call `group.add(self)`. |         Leave the current group, then call `group.add(self)`. | ||||||
|         ''' |         ''' | ||||||
|  | @ -1380,7 +1391,7 @@ class GroupableMixin: | ||||||
|         self.leave_group(commit=commit) |         self.leave_group(commit=commit) | ||||||
|         group.add(self, commit=commit) |         group.add(self, commit=commit) | ||||||
| 
 | 
 | ||||||
|     def leave_group(self, commit=True): |     def leave_group(self, *, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Leave the current group and become independent. |         Leave the current group and become independent. | ||||||
|         ''' |         ''' | ||||||
|  | @ -1416,7 +1427,7 @@ class Album(ObjectBase, GroupableMixin): | ||||||
|     def __repr__(self): |     def __repr__(self): | ||||||
|         return 'Album:{id}'.format(id=self.id) |         return 'Album:{id}'.format(id=self.id) | ||||||
| 
 | 
 | ||||||
|     def add_photo(self, photo, commit=True): |     def add_photo(self, photo, *, commit=True): | ||||||
|         if self.photodb != photo.photodb: |         if self.photodb != photo.photodb: | ||||||
|             raise ValueError('Not the same PhotoDB') |             raise ValueError('Not the same PhotoDB') | ||||||
|         if self.has_photo(photo): |         if self.has_photo(photo): | ||||||
|  | @ -1426,7 +1437,7 @@ class Album(ObjectBase, GroupableMixin): | ||||||
|             log.debug('Committing - add photo to album') |             log.debug('Committing - add photo to album') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def add_tag_to_all(self, tag, nested_children=True, commit=True): |     def add_tag_to_all(self, tag, *, nested_children=True, commit=True): | ||||||
|         tag = self.photodb.get_tag(tag) |         tag = self.photodb.get_tag(tag) | ||||||
|         if nested_children: |         if nested_children: | ||||||
|             photos = self.walk_photos() |             photos = self.walk_photos() | ||||||
|  | @ -1439,7 +1450,7 @@ class Album(ObjectBase, GroupableMixin): | ||||||
|             log.debug('Committing - add tag to all') |             log.debug('Committing - add tag to all') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def delete(self, delete_children=False, commit=True): |     def delete(self, *, delete_children=False, commit=True): | ||||||
|         log.debug('Deleting album {album:r}'.format(album=self)) |         log.debug('Deleting album {album:r}'.format(album=self)) | ||||||
|         GroupableMixin.delete(self, delete_children=delete_children, commit=False) |         GroupableMixin.delete(self, delete_children=delete_children, commit=False) | ||||||
|         self.photodb.cur.execute('DELETE FROM albums WHERE id == ?', [self.id]) |         self.photodb.cur.execute('DELETE FROM albums WHERE id == ?', [self.id]) | ||||||
|  | @ -1448,7 +1459,7 @@ class Album(ObjectBase, GroupableMixin): | ||||||
|             log.debug('Committing - delete album') |             log.debug('Committing - delete album') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def edit(self, title=None, description=None, commit=True): |     def edit(self, title=None, description=None, *, commit=True): | ||||||
|         if title is None: |         if title is None: | ||||||
|             title = self.title |             title = self.title | ||||||
|         if description is None: |         if description is None: | ||||||
|  | @ -1486,7 +1497,7 @@ class Album(ObjectBase, GroupableMixin): | ||||||
|         photos.sort(key=lambda x: x.basename.lower()) |         photos.sort(key=lambda x: x.basename.lower()) | ||||||
|         return photos |         return photos | ||||||
| 
 | 
 | ||||||
|     def remove_photo(self, photo, commit=True): |     def remove_photo(self, photo, *, commit=True): | ||||||
|         if not self.has_photo(photo): |         if not self.has_photo(photo): | ||||||
|             return |             return | ||||||
|         self.photodb.cur.execute( |         self.photodb.cur.execute( | ||||||
|  | @ -1544,7 +1555,7 @@ class Photo(ObjectBase): | ||||||
|     def __repr__(self): |     def __repr__(self): | ||||||
|         return 'Photo:{id}'.format(id=self.id) |         return 'Photo:{id}'.format(id=self.id) | ||||||
| 
 | 
 | ||||||
|     def add_tag(self, tag, commit=True): |     def add_tag(self, tag, *, commit=True): | ||||||
|         tag = self.photodb.get_tag(tag) |         tag = self.photodb.get_tag(tag) | ||||||
| 
 | 
 | ||||||
|         if self.has_tag(tag, check_children=False): |         if self.has_tag(tag, check_children=False): | ||||||
|  | @ -1587,7 +1598,7 @@ class Photo(ObjectBase): | ||||||
|         for tag in other_photo.tags(): |         for tag in other_photo.tags(): | ||||||
|             self.add_tag(tag) |             self.add_tag(tag) | ||||||
| 
 | 
 | ||||||
|     def delete(self, delete_file=False, commit=True): |     def delete(self, *, delete_file=False, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Delete the Photo and its relation to any tags and albums. |         Delete the Photo and its relation to any tags and albums. | ||||||
|         ''' |         ''' | ||||||
|  | @ -1608,7 +1619,7 @@ class Photo(ObjectBase): | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     @decorators.time_me |     @decorators.time_me | ||||||
|     def generate_thumbnail(self, commit=True, **special): |     def generate_thumbnail(self, *, commit=True, **special): | ||||||
|         ''' |         ''' | ||||||
|         special: |         special: | ||||||
|             For videos, you can provide a `timestamp` to take the thumbnail from. |             For videos, you can provide a `timestamp` to take the thumbnail from. | ||||||
|  | @ -1675,7 +1686,7 @@ class Photo(ObjectBase): | ||||||
|         self.__reinit__() |         self.__reinit__() | ||||||
|         return self.thumbnail |         return self.thumbnail | ||||||
| 
 | 
 | ||||||
|     def has_tag(self, tag, check_children=True): |     def has_tag(self, tag, *, check_children=True): | ||||||
|         ''' |         ''' | ||||||
|         Return the Tag object if this photo contains that tag. Otherwise return False. |         Return the Tag object if this photo contains that tag. Otherwise return False. | ||||||
| 
 | 
 | ||||||
|  | @ -1714,7 +1725,7 @@ class Photo(ObjectBase): | ||||||
|         return helpers.get_mimetype(self.real_filepath) |         return helpers.get_mimetype(self.real_filepath) | ||||||
| 
 | 
 | ||||||
|     @decorators.time_me |     @decorators.time_me | ||||||
|     def reload_metadata(self, commit=True): |     def reload_metadata(self, *, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Load the file's height, width, etc as appropriate for this type of file. |         Load the file's height, width, etc as appropriate for this type of file. | ||||||
|         ''' |         ''' | ||||||
|  | @ -1766,7 +1777,7 @@ class Photo(ObjectBase): | ||||||
|             log.debug('Committing - reload metadata') |             log.debug('Committing - reload metadata') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def remove_tag(self, tag, commit=True): |     def remove_tag(self, tag, *, commit=True): | ||||||
|         tag = self.photodb.get_tag(tag) |         tag = self.photodb.get_tag(tag) | ||||||
| 
 | 
 | ||||||
|         log.debug('Removing tag {t} from photo {p}'.format(t=repr(tag), p=repr(self))) |         log.debug('Removing tag {t} from photo {p}'.format(t=repr(tag), p=repr(self))) | ||||||
|  | @ -1782,7 +1793,7 @@ class Photo(ObjectBase): | ||||||
|             log.debug('Committing - remove photo tag') |             log.debug('Committing - remove photo tag') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def rename_file(self, new_filename, move=False, commit=True): |     def rename_file(self, new_filename, *, move=False, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Rename the file on the disk as well as in the database. |         Rename the file on the disk as well as in the database. | ||||||
|         If `move` is True, allow this operation to move the file. |         If `move` is True, allow this operation to move the file. | ||||||
|  | @ -1886,7 +1897,7 @@ class Tag(ObjectBase, GroupableMixin): | ||||||
|         rep = 'Tag:{name}'.format(name=self.name) |         rep = 'Tag:{name}'.format(name=self.name) | ||||||
|         return rep |         return rep | ||||||
| 
 | 
 | ||||||
|     def add_synonym(self, synname, commit=True): |     def add_synonym(self, synname, *, commit=True): | ||||||
|         synname = normalize_tagname(synname) |         synname = normalize_tagname(synname) | ||||||
| 
 | 
 | ||||||
|         if synname == self.name: |         if synname == self.name: | ||||||
|  | @ -1906,7 +1917,7 @@ class Tag(ObjectBase, GroupableMixin): | ||||||
|             log.debug('Committing - add synonym') |             log.debug('Committing - add synonym') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def convert_to_synonym(self, mastertag, commit=True): |     def convert_to_synonym(self, mastertag, *, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Convert an independent tag into a synonym for a different independent tag. |         Convert an independent tag into a synonym for a different independent tag. | ||||||
|         All photos which possess the current tag will have it replaced |         All photos which possess the current tag will have it replaced | ||||||
|  | @ -1943,7 +1954,7 @@ class Tag(ObjectBase, GroupableMixin): | ||||||
|             log.debug('Committing - convert to synonym') |             log.debug('Committing - convert to synonym') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def delete(self, delete_children=False, commit=True): |     def delete(self, *, delete_children=False, commit=True): | ||||||
|         log.debug('Deleting tag {tag:r}'.format(tag=self)) |         log.debug('Deleting tag {tag:r}'.format(tag=self)) | ||||||
|         self.photodb._cached_frozen_children = None |         self.photodb._cached_frozen_children = None | ||||||
|         GroupableMixin.delete(self, delete_children=delete_children, commit=False) |         GroupableMixin.delete(self, delete_children=delete_children, commit=False) | ||||||
|  | @ -1966,7 +1977,7 @@ class Tag(ObjectBase, GroupableMixin): | ||||||
|         self._cached_qualified_name = qualname |         self._cached_qualified_name = qualname | ||||||
|         return qualname |         return qualname | ||||||
| 
 | 
 | ||||||
|     def remove_synonym(self, synname, commit=True): |     def remove_synonym(self, synname, *, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Delete a synonym. |         Delete a synonym. | ||||||
|         This will have no effect on photos or other synonyms because |         This will have no effect on photos or other synonyms because | ||||||
|  | @ -1984,7 +1995,7 @@ class Tag(ObjectBase, GroupableMixin): | ||||||
|             log.debug('Committing - remove synonym') |             log.debug('Committing - remove synonym') | ||||||
|             self.photodb.commit() |             self.photodb.commit() | ||||||
| 
 | 
 | ||||||
|     def rename(self, new_name, apply_to_synonyms=True, commit=True): |     def rename(self, new_name, *, apply_to_synonyms=True, commit=True): | ||||||
|         ''' |         ''' | ||||||
|         Rename the tag. Does not affect its relation to Photos or tag groups. |         Rename the tag. Does not affect its relation to Photos or tag groups. | ||||||
|         ''' |         ''' | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue