I'm using shotwell-0.20.2, glib-2.42.1, vala-0.26.1. After picking a directory with only under ten JPGs and clicking «Import in place», Shotwell simply hangs. GDB backtrace for in interrupted shotwell process: (gdb) where #0 0x00007ffff4173289 in syscall () from /lib64/libc.so.6 #1 0x00007ffff466a1e6 in g_mutex_lock_slowpath () at /var/tmp/portage/dev-libs/glib-2.42.1/work/glib-2.42.1/glib/gthread-posix.c:1308 #2 0x000000000048de23 in abstract_semaphore_notify () #3 0x000000000048a86f in interlocked_notification_object_internal_completed () #4 0x000000000048c597 in background_job_on_notification_ready () #5 0x000000000048bc45 in _background_job_on_notification_ready_gsource_func () #6 0x00007ffff46976d5 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #7 0x00007ffff4697a38 in g_main_context_iterate.isra.24 () from /usr/lib64/libglib-2.0.so.0 #8 0x00007ffff4697adc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #9 0x00007ffff4c81d0c in g_application_run () from /usr/lib64/libgio-2.0.so.0 #10 0x0000000000933b8a in application_start () #11 0x00000000006b6ca9 in library_exec () #12 0x00000000006b942b in _vala_main () #13 0x00000000006b985d in main () Upstream bug discussion https://bugzilla.gnome.org/show_bug.cgi?id=742047 suggested bumping vala to 0.26. Currently shotwell-0.20.2.ebuild allows maximum vala version of 0.24.
As pointed out in the upstream bug, this gets fixed if vala 0.26 is used to compile shotwell. I edited the ebuild to use 0.26 as VALA_{MIN|MAX}_API_VERSION and import no longer hangs.
Bumping VALA_MAX_API_VERSION and rebuilding shotwell with vala-0.26 fixes the problem for me as well.
*shotwell-0.20.2-r1 (25 Jan 2015) + + 25 Jan 2015; Justin Lecher <jlec@gentoo.org> +shotwell-0.20.2-r1.ebuild: + Fix vala version to 0.26, #537020 +