This is some kind of "special" release, as exactly 20 years ago, on 2003-11-27, version 1.0 was tagged (we tagged this release already on saturday, so that it will hit the mirrors and we can publish this release announcement at this very date though ;-).
20 years is quite a long time for such a "small" FLOSS project. Enough times, nice programs die from bit rot, because the only dev or too many of the few lose interest in it, don't need it anymore and/or nobody wants to take over maintainership. Happily, this is not the case for KPA! After all these years, the project is still alive and kicking, and – when the family, the job and everything else allow it (after all, we're all not fulltime KPA devs), we work on it to make it better.
Just speaking of me, I joined the project back in 2014, almost ten years ago now (which is arguably also quite a long period of time). And I'm really proud to still be a part of this great project :-)
So, I think it's time to especially thank Jesper Pedersen for initiating the project back then, and Johannes Zarl-Zierl for taking over the maintainership and being the project leader since 2019! Joyfully, Jesper never really stopped contributing to KPA and still works on it until now.
After all, we're still – without too much self-laudation – a small but excellent crew of FLOSS enthusiasts ;-)
But about the release itself:
Most notably, we could fix a really big amount of crashes and unexpected behavior. The following bug reports could be closed as "fixed": #472427, #472523, #473231, #473324, #473587, #473762, #474151, #474392, #475387, #475388, #475529, #475585, #476131, #476561, #476651, #476862 and #477195. That's quite an impressive list, isn't it?!
Kudos to our new super-diligent beta tester Victor Lobo for filing 17 of those bug reports alone, always providing meaningful information about how to reproduce the issue and tirelessly testing the fixes. Thank you! As a dev, you really appreciate this! Apart from that, also big thanks to Pierre Etchemaïté and Andreas Schleth for providing equivalently excellent bug reports!
Thanks to you all for helping making KPhotoAlbum better!
Apart from that, there are also some new interesting features:
… as well as sone changes:
According to git, the following individuals pushed commits:
Thanks for spending your time with coding on KPA and for contributing your work!
Have a lot of fun with the new release, and keep KPA the best photo management program out there, also for the 20 years to come :-)
]]>Most notably, this release can be built against Exiv2 0.28, which introduced some breaking changes. Older versions are still supported as before.
Other things that have been changed and fixed (as listed in the ChangeLog) are:
kphotoalbum.XMLDB
was merged into kphotoalbum.DB
The list of contributors is quite short this time, it was only Johannes and me ;-) Anyway, thanks to everybody working on KPA in any way, to everybody having contributed in the past and for all future work!
Have a lot of fun with KPhotoAlbum 5.11.0 :-)
]]>The ChangeLog for this version is as follows:
Thanks to everybody having contributed to this release! The authors were (according to git log and in alphabetical order):
Have a lot of fun with the new version!
]]>So here we are, KPhotoAlbum 5.9.1 is out now – even with translations now ;-)
]]>The new version includes (from the ChangeLog):
Thanks to everybody having contributed to this release. The authors were (according to git log and in alphabetical order):
Have a lot of fun with the new version!
]]>The new version includes (from the ChangeLog):
Thanks to everybody having contributed to this release. The authors were (according to git log and in alphabetical order):
Have a lot of fun with the new version!
]]>You can use KGeoTag to assign image files to GPS locations. This can help you with remembering the exact location where a photo was taken, or with discovering images that were taken at the same place. Of course, this is most useful when used together with another program such as KPhotoAlbum, that can adequately display this information and lets you search by GPS coordinates ;-)
With KGeoTag, you can:
The app shows assigned and unassigned images in different lists so that the current status is immediately obvious (showing all images in one list is also possible).
I find that it provides a nice workflow especially when there are “holes” in a GPX track where images can not be matched to a GPS datum with reasonable accuracy. In these cases I first load the images and the GPX track and let KGeoTag auto-assign most images. The remaining images can then be assigned manually and when I’m content with the outcome I save the coordinates into the image metadata.
If you are interested, check out the README.md file that comes with KGeoTag for more details.
]]>Note: This feature replaces the custom background color for the thumbnail view.
Image search: We now offer experimental options for image search tuning.
Thumbnails: We added the new CLI utility kpa-thumbnailtool
to manage KPA’s thumbnail cache. The cache now also contains the thumbnail size. Please notice that after the thumbnail cache was converted to the new format, older versions of KPhotoAlbum can no longer read it!
Privacy lock: The fake password-protection has been removed from privacy lock. Even with the warning message it might give somebody a false sense of security.
In addition to other bugfixes, these have been addressed in the new release:
Make sure tag groups are always added to tag list as well (Fixes #423334).
Fixed handling of negation in searches (Fixes #334672).
Fix crash when dragging an image beyond the last thumbnail (Fixes #418251).
Fixed crash when ffmpeg
can’t extract video thumbnails (Fixes #422555).
Removing a token no longer makes it disappear from the annotation dialog (Fixes #423978).
Sanitize input for the Tokens category, make Folder and Media Type categories read-only (Fixes #423979).
We now have three types of list selects:
The complete list of changes and fixes is listed in the ChangeLog
.
This may be of interest esp. for the distributors:
Marble/libkgeomap: We no longer use Digikam’s libkgeomap to display geographic information and map views. Instead, we now utilize Marble directly.
KIPI plugins: The support for KDE’s KIPI plugins has been removed in favor of the new Purpose infrastructure.
Python 2: KPhotoAlbum’s Python 2 API has been dropped, along with all associated Python 2 scripts.
Qt 5.15: KPA’s code has been widely reworked and modernized (esp. speaking of using C++11 features instead of their old Qt macro counterparts) and now compiles again warning-free with Qt 5.15.
According to git
, the following individuals did commits this time (in alphabetical order):
Thanks a lot to everybody having put work in this release!
]]>So far, this goal is doing quite well. A visible indicator of this is the new website, which is not just good-looking, but visually in line with other KDE project websites.
On a personal note, I went to FOSDEM this year. Unfortunately, my time with other KDE people was very limited (to put it mildly), as I was occupied with FSFE topics. I did, however, say hello at the KDE booth, and was very touched by the warm welcome there. Bhushan immediately recognised me and handed me a KDE nametag, and I had a nice chat with Nicolas about some Purpose issue I was having.
KPhotoAlbum 5.6 was the first major version with support for the Purpose plugin framework, and the last major version to support the now unmaintained KIPI plugin interface.
The Purpose plugin framework is already supported by a number of applications, such as Spectacle and Gwenview. At this time, Purpose plugins are focused around sharing images with devices or web services.
At its prime, KIPI had quite an assortment of useful plugins. If there is a specific feature that you would like to implement as a Purpose plugin, contact us so that we can make it happen.
As promised, this goal will stay with us for the years to come. Still, we would have liked to spend more time on refactoring KPhotoAlbum to reduce the technical debt of the codebase.
KPhotoAlbum 5.7 will see a complete rewrite of our map feature.
We have spent a good amount of work into replacing libkgeomap with Marble. By using Marble directly instead of depending on libkgeomap as a wrapper, we could both simplify the code for our map widget (one less layer of abstraction) and add new features to the map.
On the downside, as with every rewrite, there may be some new bugs that we haven’t found yet.
Sometimes, a graphical user interface won’t cut it.
For that reason, Robert has contributed the kpa-filter
and kpa-merge
scripts for working with database files on the commandline.
Robert is working on a replacement for kpa-merge
, called kpa-util
.
The new script will allow users to add tags to existing categories, and to tag images without the need for a graphical user interface.
The KDE community has decided on three goals to focus on for the next couple of years.
We already have some ideas on how to improve KPhotoAlbum regarding the Consistency goal. If you have further suggestions and ideas we would love to hear them!
]]>Big thanks to Johannes for fixing this in no time (and finding it before the distributors add version 5.6 ;-)
]]>