Version 4.1.0 contains 3 important improvements. 2 of them are the obvious answer to several requests I have received during last months. The last one is something I tried to mimic from Flickr website.
These 3 new features are:
- Incremental uploads among F-Stop runs
- Ability to displays photos outside photosets
- Camera Roll like function
Incremental uploads among F-Stop runs
Up to version 4.0.5, F-Stop was able to perform incremental uploads. There was, however, a significant limitation. Incremental upload information about what was successfully uploaded or not, was stored in memory. As memory is volatile, this information was not preserved among F-Stop runs leading to duplicate file uploads when running, for two times in a row, the same folder upload.
Since version 4.1.0, F-Stop stores upload information locally on your computer hard-drive. Before an upload, F-Stop builds a list of files (which need to be uploaded) merging information between the list of files present inside a directory and an upload information store which contains all files already upload for the directory itself. Whenever a file is successfully uploaded, F-Stop appends file path to its upload information store.
Along with file uploads, F-Stop now preserves information about user settings applied to a folder, such as name, description, tags, etc.. Fill a batch with a folder (with stored settings), and F-Stop automatically restores them without user intervention.
As this functionality increases disk space and processing power, you can opt-in/out within F-Stop preferences.
You can find more information about incremental uploads in this post.
Ability to displays photos outside photosets
Another functionality I have added is related to photosets management. Some users requested a way to figure out which photos are not stored inside a photoset in a way similar to Flickr website organizer.
So now, when you are browsing a photoset, you can see a small wrench icon in the toolbar. Click it and open the right sidebar where you see 2 icons (on top). The first one shows comments for this photoset, the other one photos not belonging to any photoset.
From the sidebar you can drag&drop one or multiple photos over the first item of the set.
It’s important to know that this feature uses a specific Flickr API named flickr.photos.getNotInSet. This api lacks a way to specify a referring photoset. In other words, it returns photos not belonging to any photosets. This limitation can lead to the following scenario:
You are browsing photoset named “A”. Photoset “A” contains photo1 and photo2 while your photo stream contains photo1, photo2, photo3 and photo4. Photo4 belongs to photoset named “B”.
While browsing Photoset “A”, F-Stop will call flickr.photos.getNotInSet. This API will ONLY return photo3 and it will NOT return photo4. This because photo3 is the only photo which doesn’t belong to any photoset.
It would be nice to specify which photoset are you interested in when calling this api. In this way, F-Stop could say Flickr: “Hey, gimme all photos which don’t belong to photoset A”. That would fix the above scenario. I hope Flickr will add this capability soon.
Flickr has added a new functionality to its website named Camera Roll. Camera Roll is in beta stage and it’s difficult to predict all its features but, at the time of writing, it seems a way to have your photos organized per date (taken or uploaded). It sports a nice tiled interface with a left timeline used to filter events in the camera roll. It is nice, fast and very easy to use but its functionality is somehow limited by the lack of the following capabilities:
- Show camera roll of other users
- Filter date ranges (very important for huge photosets)
- Invert the order of time line (Most recent are always on top)
So, I have decided to implement something similar in F-Stop. I admit that my timeline implementation is not as beautiful as the Flickr one but, from a functionality perspective, I believe F-Stop is far ahead.
Camera Roll functionality is accessed using Camera Roll button available while browsing user photo streams (your own or another one)
A new view appears
Clicking the wrench icon on the toolbar, a sidebar appears. From this sidebar you can choose:
- Camera Roll main ordering field (upload date or taken date)
- Timeline order
- Date range
Date range can be null, partial or full.
Null range means that no date filters are applied.
Partial range means that you can specify just one boundary for the range. For example: show camera roll just for photos newer than 2014.
Full range means a completely defined range between 2 dates.