What's coming up in imag (25)
This is the 25th iteration on what happened in the last four weeks in the imag project, the text based personal information management suite for the commandline.
imag is a personal information management suite for the commandline. Its target audience are commandline- and power-users. It does not reimplement personal information management (PIM) aspects, but re-uses existing tools and standards to be an addition to an existing workflow, so one does not have to learn a new tool before beeing productive again. Some simple PIM aspects are implemented as imag modules, though. It gives the user the power to connect data from different existing tools and add meta-information to these connections, so one can do data-mining on PIM data.
What happenend?
Luckily I can write this iteration on imag. After we had no blog post about the progress in imag in April this year, due to no time on my side, I'm not very lucky to be able to report: We had progress in the last 4 (8) weeks!
Lets have a look at the merged PRs (I'm now starting to link to git.imag-pim.org here):
- #915 merged a libruby dependency for travis.
- #918 removed some compiler warnings.
- #917 merged some travis enhancements/fixes.
- #916
superceeded PR #898, which simplified the implementation of the
FoldResult
extension. - #895 started a re-do of the ruby build setup.
- #911
changed the interface of the
StoreId::exists()
function to return aResult
now. - #904
added initial support for annotations in the
libimagentrylink
library, which gives us the posibility to add annotations to links. There are no tests yet and also no remove functionality. - #921 was a cleanup PR for #911 which broke master unexpectedly.
- #914 fixed a compiler warning.
- #929
removed
libimagruby
entirely because we couldn't merge to master because a dependency on master started to fail. The whole ruby thing is a complete mess right now, dependencies are not found, tests fail because of this... it is a mess. - #927 removed unused imports.
- #924 updated links in the readme file.
- #926
added tests for the
StoreId
type. - #919 merged preparings for the 0.3.0 release, which is overdue for one month right now, because the ruby scripting interface does not work.
- #930
updated the
toml-rs
dependency to0.4
, which gives us even more superpowers. - #932 added some tests for the configuration parsing functionality.
- #933
Adds a new dependency:
is-match
, a library I extracted from the imag source code into a new crate.
The libimagruby mess
Well, this is unfortunate.
libimagruby
should be ready for one month by now and usable – and it is (the
basic things, few things tested also)!
But as the CI does not work (fuck you travis!) I cannot merge it.
I also don't know how to properly package a Ruby gem, so there's that.
I really hope @malept can help me.
I'm already thinking about adding another scripting interface, so I can continue and start implementing frontends for imag, for example I'm thinking about a lua or ketos interface, still. Lua might be the better idea, as there are libraries around for certain things, while there are no libraries for ketos (I assume).
What will happen
I honestly don't know. I will continue working on imag, of course, but right
now, the libimagruby
is stalled.
I'm not sure where to start working besides libimagruby
– a Ruby scripting
interface is what I need right now, but it won't work ... so there's that.
As soon as the Ruby interface is ready, we can have nice things. But right now, it is really hard to continue.
tags: #linux #open source #programming #rust #software #tools #imag