Commit graph

343 commits

Author SHA1 Message Date
9fb5f453fe Rewrite entry parsing algorithm
Rewrite without regex crate.

The regex approach was broken. If the following _content_ was provided
in the entry:

    foo

    ---

    bar

The regex approach parsed the header until the "---" in the content.
This is, of course, not the way to do that.

Now, the parsing is implemented by hand. Should be faster as well,
though I don't care about this.

This fixes a severe bug.
2018-02-20 21:06:36 +01:00
b2048b3dcf
Merge pull request #1306 from matthiasbeyer/minor
Minor patches
2018-02-20 20:23:41 +01:00
a72f6482f6 Add changelog for libimagerror trace writeln!() fix 2018-02-20 19:25:49 +01:00
0315ee4fc2 Add changelog for imag-diary diary name presence fix 2018-02-20 17:32:52 +01:00
848bdd98d7 Add changelog for libimagdiary marker fix 2018-02-20 17:32:30 +01:00
5773e8a6c8 Remove libimagentrylist 2018-02-20 15:02:46 +01:00
aaaf8c4ffc Add changelog entry 2018-02-20 13:41:51 +01:00
a5eaf0439c Update documentation for new implementation 2018-02-19 12:14:32 +01:00
c27aa3a2b7 Add changelog entry for version output change 2018-02-18 20:06:09 +01:00
2089b63d56 Add changelog for broken-pipe panic bugfixes 2018-02-18 20:04:22 +01:00
5dc6a81c28 Add changelog for libimagentryref rewrite 2018-02-18 20:04:22 +01:00
6292d64ed9 Add changelog for libimagerror refactoring 2018-02-18 20:04:22 +01:00
327d795b4d Add changelog for imag 0.6.1 2018-02-18 20:04:22 +01:00
70ef837445 Remove Roadmap
Removed as we do it in another way anyways.
2018-02-18 20:03:50 +01:00
acef827bab Fix wording in README 2018-02-18 20:03:50 +01:00
eebe6c4d43 Add changelog entries for minor fixes 2018-02-18 20:03:50 +01:00
cf0f93104d Add kairos support in "list" subcommand
This patch adds kairos support in the "list" subcommand for the "-f" and
"-t" parameters which limit the entries to show.

Something like

    imag timetrack list --from yesterday

is now possible.
2018-02-11 21:27:15 +01:00
30d2c28a22 Update version string: 0.6.0 -> 0.7.0 2018-02-11 14:22:24 +01:00
a1c84a3770 Update date in documentation 2018-02-08 15:59:21 +01:00
1b2c479212 Update changelog for release 2018-02-08 15:58:19 +01:00
4d026131a1
Merge pull request #1232 from matthiasbeyer/doc-overhaul
Doc overhaul
2018-02-07 10:07:27 +01:00
f852e4e464 Add missing changelog entries 2018-02-07 01:58:37 +01:00
979a25c4d6 Make clear what is meant here. 2018-02-05 16:37:14 +01:00
ed81a5f2e4 Add subchapter on alternative projects 2018-02-05 16:35:56 +01:00
2d62009bc2 Rewrite "The Problem" and "The Approach" 2018-02-05 16:31:21 +01:00
209121f567 Typo 2018-02-05 16:23:54 +01:00
8d7138f6e5 Don't state the obvious here 2018-02-05 16:23:26 +01:00
d1fc8c3995 Add second support in imag-diary commandline interface 2018-02-04 19:51:07 +01:00
ae4ced9587 Show content by default 2018-02-01 21:47:09 +01:00
44c62b061e Fix typo 2018-02-01 10:35:07 +01:00
3215311bc9 Add missing bugfixes in the changelog 2018-02-01 10:35:07 +01:00
7731b88c97 Remove map_err_trace_exit() calls in favour of map_err_trace_exit_unwrap() 2018-01-29 09:38:32 +01:00
2c133de5bc Update contributing guide 2018-01-29 09:38:32 +01:00
8c4407415d Fix wrong version-number 2018-01-29 09:38:32 +01:00
53bf1a513b Implement stopping all tags which are started 2018-01-28 20:51:20 +01:00
45ac9b4132 Change list command to use a table for output 2018-01-16 14:48:48 +01:00
0c4be78223 Update dependency: toml-query -> 0.6 2018-01-13 01:14:03 +01:00
8d69e45c0e Add imag-edit command 2018-01-09 11:56:22 +01:00
5c2d15cf56 Add changelog entry for libimagentryutil 2018-01-08 23:46:36 +01:00
2d83796ef2 Initial import: libimagentryutil 2018-01-08 23:31:10 +01:00
7cf60d5bec
Merge pull request #1208 from matthiasbeyer/libimagdiary-bookmarkcollection-nonwrapping
libimagdiary: Do not wrap store types
2018-01-08 23:11:54 +01:00
689310edfe Rename Store::retrieve_copy to Store::get_copy
The function was named falsely and nobody noticed. So nobody uses this
function yet - hopefully - as this change is a breaking API change.
2018-01-08 15:16:41 +01:00
80c460dac9 Transform BookmarkCollection into two traits
One trait is implemented on the Store, it retrieves BookmarkCollection
objects.
The other is implemented on `libimagstore::store::Entry` which then
represents a BookmarkCollection.
2018-01-08 15:16:14 +01:00
53f554a279 Add the changelog up to now 2018-01-07 20:26:51 +01:00
5aeaacc317
Merge pull request #1190 from matthiasbeyer/imag-init/init
imag-init: initial import
2018-01-04 19:37:50 +01:00
b60b5c8981
Merge pull request #1184 from matthiasbeyer/imag-log/init
imag-log: init
2018-01-04 10:31:00 +01:00
9a76a2065b Add idea about functionality to include core-CLI things into domain-CLI 2018-01-03 17:42:26 +01:00
18424717f4 Rewrite TODOs into Roadmap 2018-01-03 17:42:26 +01:00
0865984d6f Add example usage for the log functionality 2018-01-03 16:54:08 +01:00
7a364639ee Initial import: imag-log 2018-01-03 16:54:08 +01:00
f324deb41e imag-init: initial import 2018-01-03 15:48:58 +01:00
92d4a0237e Initial import: libimaglog 2017-12-25 21:46:04 +01:00
f3ba1791b9 Update version strings in doc 2017-12-25 19:17:07 +01:00
29bde7a68f Update date in documentation 2017-12-23 15:32:30 +01:00
261aac55f2 Finalize changelog 2017-12-23 15:25:08 +01:00
591046d1f6 Remove finished TODOs 2017-12-23 15:25:08 +01:00
552d963980 Add changelog entry 2017-12-23 14:20:46 +01:00
9ec5ed9b05 Rewrite imag-link commandline to be intelligent
This patch is a rewrite for the imag-link commandline to automatically
recognize whether an internal or an external link is about to be made
and automatically do the right thing.

The commandline got a lot easier and also smaller in size (as in number
of commands), but the functionality should remain the same.
2017-12-23 12:57:13 +01:00
be79f6373e Import crate for imag-habit 2017-12-22 14:40:01 +01:00
7c752e8ef3 Update list of library todos 2017-12-20 14:45:26 +01:00
872dbb91e0 Update todo-list of crates which are done 2017-12-20 14:45:02 +01:00
167511afec Fix formatting and adjust module/lib documentation
Also add symlink in module implementation to lib-documentation.
2017-12-08 14:54:40 +01:00
5661dd8e35 Add CHANGELOG entry for imag-contact 2017-11-09 11:25:56 +01:00
eaa9ad5993 Add basic documentation on how the lib works 2017-10-31 19:09:43 +01:00
4250241f18 Try to get RTP from IMAG_RTP 2017-10-31 15:30:29 +01:00
eca7219039 Rewrite configuration providing in runtime
Before the configuration object (the raw TOML object) was provided via a
wrapper object `Configuration`. This was ugly and not very nice to use.

Now, we only have the `toml::Value` object we lend out from
`Runtime::config()`.

The changes included libimagrt internal rewrites, which are not visible
to the user. Anyways, this change changes the API for config-fetching
from the runtime, so fixes for all other crates may follow.

The changes also removed the support for reading the "editor" setting
from the configuration file, which was not used anyways (in the example
imagrc.toml file).
The CLI-reading and ENV-reading are still supported, though.
2017-10-31 09:25:14 +01:00
a5042ba80c Add changelog entry 2017-10-16 14:43:21 +02:00
a3de0f6712 Reword contributing guidelines 2017-10-15 10:56:39 +02:00
cd429a3116 Rewrite module section intro 2017-10-15 10:47:00 +02:00
16ebf52385 Revisit the documentation for the store 2017-10-14 21:52:16 +02:00
6068f2b52d Rephrase architecture doc. 2017-10-14 21:35:55 +02:00
b942b9702d Reword intro 2017-10-14 21:20:45 +02:00
106ba44d4a Update tool todo-list 2017-10-14 15:38:04 +02:00
01f527d7c4 Fix typos 2017-10-14 15:38:00 +02:00
5928968c8f Explain versioning conventions 2017-10-14 15:38:00 +02:00
2de3c512e3 Format markup 2017-10-14 15:37:53 +02:00
fcd30a80ad Revisit doc on entry version
We don't have that concept anymore, remove docs for it.
2017-10-14 15:29:41 +02:00
704c01b2c9 Merge pull request #1130 from matthiasbeyer/imag-annotate/init
Imag annotate/init
2017-10-13 16:20:57 +02:00
1d270ee1cf Add changelog entry 2017-10-13 14:53:57 +02:00
23f4d7948f Fix Store::entries() to not yield directories
Before the iterator did also yield storeids for directories, which was a
bug.

This change introduces a new if_file() function in the store-internal
backend, which is needed to check whether a path actually points to a
File, be it inmemory or on the real filesystem.

That's because tests might fail if they check via PathBuf::is_file() as
in tests, the entries only exist inmemory.
2017-10-13 14:26:06 +02:00
d4633d466e Add changelog entry 2017-10-12 22:15:13 +02:00
Kai Sickeler
1f84643486 Dump all StoreIds
Add StoreId Dump changes
2017-10-09 12:18:27 +02:00
f266791142 Add multi-destination logging to logger
The logger was not able to handle multiple destinations before. Now it
is possible for the logger.

The file must be held behind an Arc<Mutex<_>> so we can use the logging
from multiple threads but also because we need to borrow mutably, so
that bit changes whith this commit.
2017-10-08 18:08:51 +02:00
969211174a Rewrite imag-view
The imag-view command was redesigned with this change. It now looks up
view-templates in the config and calls them with the "in" subcommand.

This way, an entry can be viewed with editor, browser or whatever one
likes.

Compiling markdown is not supported yet.
2017-10-08 15:08:27 +02:00
d9add138d2 Use positional argument for id 2017-10-08 13:02:56 +02:00
c5ad59e96f Initial import of imag-mv 2017-10-01 10:07:29 +02:00
643db0df3a Remove libimagcounter / imag-counter 2017-09-28 22:41:23 +02:00
73f6016221 Update version strings: 0.4.0 -> 0.5.0 2017-09-24 13:05:01 +02:00
8a15aba1d0 Update month in doc 2017-09-23 22:18:28 +02:00
5ed5392193 Finalize changelog 2017-09-23 21:24:46 +02:00
2f2f606924 Add missing changelog entry for imag-gps 2017-09-23 21:19:27 +02:00
441e59753a Merge pull request #1105 from matthiasbeyer/minor
Minor
2017-09-22 16:06:23 +02:00
fbbb26b737 Initial import 2017-09-21 19:01:36 +02:00
5cf4df474a Doc: Todo: Fix indent 2017-09-21 12:29:27 +02:00
e5135aa9d5 Add imag-grep in todo-list, sort 2017-09-21 12:26:28 +02:00
94674841a0 Fix doc: Header structure 2017-09-21 12:21:32 +02:00
8bbaeeef45 Fix: Store::delete() should check FS as well
This patch fixes a problem where the Store::delete() function only
checked the store-internal cache whether an entry exists, but not the
Filesystem. After this patch is applied, the Store::delete() function
also checks the filesystem whether the entry exists.
2017-09-20 22:24:59 +02:00
9b2ceb31cc Merge pull request #1093 from matthiasbeyer/libimagentrylist/rip-out-cli-mod
libimagentrylist: Remove unused module
2017-09-20 22:00:34 +02:00
19c3bc829a Remove unused module 2017-09-20 18:41:54 +02:00
e000957722 Ensure that all arguments are passed to the subcommand 2017-09-20 17:13:04 +02:00
b853e35a05 Merge pull request #1071 from matthiasbeyer/imag-grep
imag-grep: Add new crate
2017-09-15 23:21:18 +02:00
922ed445d4 imag-grep: Add new crate 2017-09-15 21:16:02 +02:00
1ffc45a4c0 Use positional args 2017-09-15 21:07:01 +02:00
cefe58ffd4 Add changelog 2017-09-15 13:53:30 +02:00
2f0fa2b6ca Merge pull request #1068 from matthiasbeyer/imag-timetrack/fix-track-command
Fix: Let the track command parse the start/end time more intelligently
2017-09-15 12:38:42 +02:00
e049559bed Fix: Let the track command parse the start/end time more intelligently
It understands "now" from this point and can parse dates or date-times
(whereas dates get normalized to date + hour 0, minute 0, second 0).
2017-09-14 20:49:10 +02:00
bcb6c7b52d Add changelog entry 2017-09-14 20:06:22 +02:00
8aa5c2d82d Fix header locations
Also change that the implementation uses toml_query::set instead of
toml_query::insert.

Inserting values creates intermediate tables, set doesn't. And we really
want that convenience here, as the code is complex enough on its own.
2017-09-09 16:36:21 +02:00
976f280511 Update toml-query: 0.3.* -> ^0.3.1
This release contains a bugfix for a critical bug in the
`TomlValueInsertExt::insert()` algorithm which was triggered by an
edgecase.
2017-09-06 19:30:32 +02:00
30b466b622 Update changelog 2017-09-05 22:03:13 +02:00
b445cea9e7 Check TODO, add Changelog 2017-09-04 23:09:05 +02:00
336e0fb918 Add changelog 2017-09-03 13:48:36 +02:00
caa8529abc Add libimagentrygps 2017-09-01 20:36:03 +02:00
f71065c24d Add changelog for 0.3.0..master 2017-09-01 14:40:30 +02:00
a5e836fecb Add changelog 2017-09-01 14:25:00 +02:00
29d93a73f0 Merge pull request #1025 from matthiasbeyer/todo/libimagerror
Add todo: Rewrite libimagerror with chain-error crate
2017-08-27 20:07:22 +02:00
e386e86474 Add todo: Rewrite libimagerror with chain-error crate 2017-08-27 17:49:18 +02:00
2fcead5f53 Fix broken README symlinks
Along: Add files in documentation for modules that not yet had one.
2017-08-27 15:13:25 +02:00
Mario Krehl
8a63815854 Fix package name of libimagentryannotation
Fix: run `sed -i 's,libimagref,libimagentryref,g' (rg -l 'libimagref')`
Fix: run `sed -i 's,libimagannotation,libimagentryannotation,g' (rg -l 'libimagannotation')`
2017-08-27 15:13:25 +02:00
1c37703c32 Update version strings for next release: 0.3.0 -> 0.4.0 2017-08-26 13:27:32 +02:00
0f436d5b88 Merge pull request #1009 from matthiasbeyer/doc-overhaul
Doc overhaul
2017-08-25 18:34:11 +02:00
3001288442 Update date 2017-08-25 17:50:38 +02:00
abebf9c014 Fix format 2017-08-25 14:04:18 +02:00
49a7201125 Add documentation how the mail CLI should look like 2017-08-21 00:03:22 +01:00
d7b266a72c Add todos for maintenance scripts 2017-08-20 15:24:48 +01:00
469975d752 Add more ideas for modules 2017-08-20 14:46:34 +01:00
3e115b7014 Add todo for logger rewrite 2017-08-14 09:52:47 +00:00
5fa076914c Add docs on {habit,news,todo,wiki} lib 2017-08-12 21:26:55 +00:00
db51d971cc Improve mail module docs 2017-08-12 21:26:26 +00:00
740a5dad74 Cleanup intro 2017-08-12 21:26:02 +00:00
a96eb69b0f Basic documentation for read/write libs 2017-08-12 15:48:00 +00:00
d78288e6f7 Add files for libs 2017-08-12 15:37:17 +00:00
1c98dca547 Add basic descriptions for as many modules as possible 2017-08-11 22:20:11 +00:00
0e1925e5ae Add three more modules to do 2017-08-11 22:15:53 +00:00
6d73dae8a5 Add files for planned modules 2017-08-11 16:29:38 +00:00
31541fb1ba Fix filename 2017-08-11 12:59:40 +00:00
3d34ea0491 Add long-term todos in todo file 2017-08-11 09:13:42 +00:00
7ab0050a3d Remove outdated parts 2017-08-11 09:11:12 +00:00
7c227b4e4d Move contributing guidelines to documentation 2017-08-11 09:11:12 +00:00
f771337359 Remove 'Backend' sections, we dont need them 2017-08-11 09:03:46 +00:00
471e31172f Remove unused files 2017-08-10 19:47:19 +00:00
25db146dd5 Add architecture (and types) documentation 2017-08-10 19:44:19 +00:00
7a048f3795 Add file for coding conventions and best practices 2017-08-10 16:38:46 +00:00
b3e7f095ce Merge pull request #966 from matthiasbeyer/libimagtimetrack
imag-timetrack / libimagtimetrack
2017-06-29 14:55:39 +02:00
9583ae06cd Add README/documentation 2017-06-26 19:30:02 +02:00
dd7954ddb6 Add Documentation 2017-06-26 19:28:57 +02:00
0033d1b4b4 Add documentation file 2017-06-21 18:29:49 +02:00
266311d743 Change backends to do less ser-/deserialization
This commit changes the backends to do less de/ser, as it now stores the
Entry objects in the backend and does the de/serialization there.

This means the store does only serialize things once from json to toml
in the io backend.

See the diff of the documentation for more details.
2017-06-18 12:32:04 +02:00
c4b2287876 Move the documentation to the docs 2017-06-18 11:33:18 +02:00
9254851724 doc: Remove hook stuff 2017-06-06 11:12:37 +02:00