6e56f469ae
More verbose erroring in test
2018-08-26 04:24:57 +02:00
acdc1e84bc
Merge pull request #1495 from matthiasbeyer/imag-diary/fix-missing-header
...
Imag diary/fix missing header
2018-07-27 20:10:59 +02:00
b896bc2657
Fix: Do not create entries with Store::retrieve()
...
This patch fixes a bug where entries where created with
`Store::retrieve()` rather than with the API from libimagdiary.
This caused headers to be missing.
Now, the CLI is parsed for the values passed and a NaiveDateTime object
is crafted from that, which is then passed to libimagdiary.
2018-07-20 01:37:36 +02:00
22d63f0946
Add functionality to create entry at a certain time
2018-07-20 01:37:36 +02:00
f6a7345b4a
Simplify: Move header verification from Value extension to Entry type
2018-07-19 20:58:27 +02:00
8d86af5f15
Fix: Use unused result
2018-06-27 00:43:36 +02:00
eb682d76e8
Prettify error messages
2018-06-15 22:07:13 +02:00
3b97db5c25
Fix: Duplicated printing of entries with "show --all"
...
The problem was that the used `Diary::diary_names()` iterator does not
call `unique()` on its output.
That decision was made because the return type would get more
complicated with that feature.
Now that rustc 1.26 with Impl Trait is out, we can refactor the return
types of these functions (so also with `Diary::diary_names()`) to
automatically do this.
2018-05-11 15:45:50 +02:00
664edc7943
Update version string: 0.8.0 -> 0.9.0
2018-05-09 11:39:33 +02:00
61d0136c26
imag-category: Initial import
2018-05-04 11:09:20 +02:00
9c36fc8ac0
Merge pull request #1468 from matthiasbeyer/imag-ids/filters
...
imag-ids: filters
2018-05-03 10:22:20 +02:00
846de028cf
Add trace output in filtering process
2018-05-02 20:42:56 +02:00
191f049ea8
Add language documentation in commandline help
2018-05-02 20:42:56 +02:00
f618026305
Add store cache flushing after each 100st entry
2018-05-02 20:42:56 +02:00
c27349e94f
Implement header filter language
2018-05-02 20:42:56 +02:00
f4e1c0864c
Implement 'where' subcommand
2018-05-02 20:42:56 +02:00
d518322401
Add notes how the filter language should look like
2018-05-02 20:42:56 +02:00
74c982984c
Move collection filter to new module
2018-05-02 20:42:56 +02:00
f85dc02db6
Revert "Deny non-absolut import pathes"
...
This reverts commit b90abfb868
.
Because `libimagcontact` is not based on `libimagentryref` anymore (as
of 2b10ab0b36
), and thus does not put
pathes into the header, we can allow non-absolute pathes here.
2018-05-02 19:42:38 +02:00
eb20a9d881
Merge pull request #1477 from matthiasbeyer/libimagstore/remove-walk
...
Remove Store::walk()
2018-05-02 18:39:11 +02:00
0dbef993c1
Adapt "imag store verify" implementation for removed Store::walk()
2018-05-02 17:46:45 +02:00
be62843608
Fix description
2018-05-01 22:29:46 +02:00
b86ed2ffa9
Refactor imag-wiki to new store iterator interface
2018-05-01 17:44:20 +02:00
7aca84dd5e
Refactor imag-mail to new store iterator interface
2018-05-01 17:44:17 +02:00
519b6f7ef2
Refactor imag-habit to new store iterator interface
2018-05-01 17:44:14 +02:00
11f9a9027e
Refactor imag-diary to new store iterator interface
2018-05-01 17:44:09 +02:00
829e425c12
Refactor imag-view to new store iterator interface
2018-05-01 17:44:05 +02:00
a9d0f3d53a
Refactor imag-edit to new store iterator interface
2018-05-01 17:44:01 +02:00
dd453659ed
Refactor imag-mv to fit new store iterator interface
2018-05-01 17:44:01 +02:00
e6244d7e9e
Refactor imag-todo to fit new store iterator interface
2018-05-01 17:44:01 +02:00
eaf8148cda
Refactor imag-ids to fit new store iterator interface
2018-05-01 17:44:01 +02:00
40a04376ed
Refactor imag-link to fit new store iterator interface
2018-05-01 17:44:01 +02:00
d45eef299e
Merge pull request #1476 from matthiasbeyer/imag-diagnostics/refactor
...
Minify code with helper macro
2018-04-30 21:49:24 +02:00
424a060cc8
Merge pull request #1475 from matthiasbeyer/imag-diagnostics/flush-cache
...
imag-diagnostics: flush cache
2018-04-30 21:07:56 +02:00
004faaa905
Performe cache flushing during aggregation
2018-04-30 18:40:19 +02:00
b713718693
Minify code with helper macro
2018-04-30 14:15:34 +02:00
58a6eea573
Remove the edit command
...
The edit command of imag-diary gets removed by this patch.
The rationale is that imag-edit is way more powerful and thus, not every
other imag module should implement an edit command. Chaining
`imag-diary list` and `imag edit -I` is encouraged.
We still need the edit functionality in imag-diary, as `imag diary
create` shall spawn an editor, still. We only remove the ability for
editing of existing entries with this patch.
2018-04-30 14:04:16 +02:00
6d21d8eb49
Update dependency: filters: 0.2 -> 0.3
2018-04-29 10:46:36 +02:00
0976cab014
Merge pull request #1464 from matthiasbeyer/libimagentrygps/32-bit-gps-values
...
libimagentrygps: 32 bit gps values
2018-04-29 00:35:21 +02:00
dbb39475d9
Upgrade variables to 64 bit
2018-04-28 23:27:12 +02:00
f493b4b8c3
Fix: Allow second to be missing
2018-04-28 23:18:02 +02:00
713621337f
Adapt for new libimagcontact interface
2018-04-27 16:57:48 +02:00
932ba3e7d4
Set extension or warn if none there
...
In case of auto-generating the file name, we should add an extension.
If we do not auto-generate the file name, we should warn that the
extension for the file is missing.
2018-04-27 13:58:46 +02:00
493fa0226c
Merge pull request #1453 from matthiasbeyer/imag-contact/create-uid
...
Fix: Generate UID when creating a contact
2018-04-26 16:16:33 +02:00
ad9eb62376
Fix: Generate UID when creating a contact
2018-04-26 14:43:21 +02:00
07e804a7c8
Fix: Make most fields optional
2018-04-26 14:01:53 +02:00
d6f8751f6e
Reimplement imag-contact
2018-04-25 13:45:00 +02:00
a83d10fb1e
Remove feature usage
2018-04-25 13:45:00 +02:00
b90abfb868
Deny non-absolut import pathes
2018-04-25 10:33:12 +02:00
0e567e2358
Merge pull request #1445 from matthiasbeyer/imag-view/seperator
...
imag-view argument to put seperator between shown entries
2018-04-25 10:01:36 +02:00
95a4816604
Implement imag-view argument to put seperator between shown entries
2018-04-24 22:49:53 +02:00
be74afd031
Remove "dump" subcommand
2018-04-24 22:16:40 +02:00
c2fd3fa94e
Add support for formatted markdown output
...
This patch also removes the (unused) "compile" subcommand and replaces
it with a flag "-c" / "--compile" which prints the output in formatted
to the terminal.
Compiling the output from markdown to HTML and showing in the browser is
not yet possible.
2018-04-24 18:06:45 +02:00
279f7ef2aa
Fix: Pass output stream to view_entries()
2018-04-24 16:46:23 +02:00
653db333e6
Fix imag-view for new view_entry() interface
2018-04-24 16:46:23 +02:00
726e4c515f
Merge pull request #1422 from matthiasbeyer/imag-git/init
...
imag-git: init
2018-04-24 15:26:19 +02:00
8a5abb22f4
Generate completion for imag-git
2018-04-24 13:56:11 +02:00
055a55c9f0
Add imag-git command
2018-04-24 13:56:11 +02:00
09d34783cb
Fix imag-mail to list from appropriate collection
2018-04-24 13:40:42 +02:00
22fb26dc12
Replace Store::retrieve_for_module() with own iterator type
2018-04-24 13:40:42 +02:00
7d3224a258
Merge pull request #1437 from matthiasbeyer/imag/fix-doubled-output
...
Fix: Do not inherit stdout here
2018-04-22 16:12:32 +02:00
9303a72a28
Merge pull request #1436 from matthiasbeyer/imag-log/show-ordered
...
Fix: imag-log show should order by datetime
2018-04-22 15:55:25 +02:00
c3fe934119
Merge pull request #1435 from matthiasbeyer/imag-view/fix-autowrapping
...
Fix: Do not automatically wrap text
2018-04-22 15:55:19 +02:00
909240fc24
Fix: Do not inherit stdout here
...
This caused us to print funny output. But we want to catch the output
and print a nice list ourselves here.
2018-04-22 14:37:56 +02:00
ee75d2309c
Fix: imag-log show should order by datetime
2018-04-22 14:33:53 +02:00
10b71864f6
Fix: Do not automatically wrap text
...
We must use `ArgMatches::occurrences_of` here to check whether the
argument was actually passed.
If it was not passed, we do not wrap at all.
2018-04-22 14:17:12 +02:00
a343a2ab90
Do not use version crate in build script
2018-04-22 11:09:31 +02:00
d742e15763
Do not depend on "version" crate
...
We should not depend on the version crate, as it is GPL licensed.
We removed the usage of this crate before, but it was still in the
Cargo.toml files (despite being used in the source).
2018-04-22 11:09:31 +02:00
ca5e150f3a
Merge pull request #1421 from matthiasbeyer/imag-view/wrapping
...
imag-view: wrapping
2018-04-20 09:24:14 +02:00
e0decb7294
Merge pull request #1419 from matthiasbeyer/imag-diary/list-diaries
...
Add functionality to list diaries
2018-04-20 09:24:07 +02:00
e820f8bfb2
Add functionality to read storeids from stdin
2018-04-19 22:08:34 +02:00
36bc517524
Add support for tagging/untagging multiple entries with one call
2018-04-19 22:08:34 +02:00
e80bf7b57d
Add feature for wrapping output
2018-04-19 21:55:27 +02:00
6e80f603d6
Add functionality to list diaries
2018-04-19 21:36:22 +02:00
d2dceb6640
Update version numbers: 0.7.0 -> 0.8.0
2018-04-19 10:05:53 +02:00
0d31ee7efd
Update dependencies: Add version
2018-04-19 09:57:36 +02:00
b690925e01
Fix: Use fill storeid when listing
2018-04-18 18:32:11 +02:00
e29bbdb98d
Fix: Make error message more explanatory
2018-04-18 17:41:34 +02:00
4568b1f625
Merge pull request #1380 from matthiasbeyer/minor
...
Minor patches
2018-04-18 16:46:41 +02:00
962b5fffd8
Remove unused imports/code
2018-04-18 14:32:23 +02:00
2a0bf1cd51
Remove CLI for mainpage setting
2018-04-18 14:32:23 +02:00
8ea3f62fbc
Add autolinking
2018-04-18 14:32:23 +02:00
e1ffa4b107
Add name filtering in show command
2018-04-18 14:32:23 +02:00
4450f22c5e
Add show subcommand
2018-04-18 14:32:23 +02:00
cc9e7c89d0
Remove grep functionality
2018-04-18 14:32:23 +02:00
caf0e63b35
Rename "create" command to "create-wiki", introduce "create" for creating entries
2018-04-18 14:32:23 +02:00
2c07ad9a3a
Implement grep command
2018-04-18 14:32:23 +02:00
2ee6dde75e
Add implementation for delete functionality
2018-04-18 14:32:23 +02:00
28f882e6c7
Add implementation for create subcommand
2018-04-18 14:32:23 +02:00
8dd3a57114
Initial import
2018-04-18 14:32:23 +02:00
98f8366e4c
Fix documentation in crate metadata
2018-04-17 15:55:08 +02:00
90593e2d93
Update dependency: toml-query: 0.4 -> 0.6
2018-04-15 09:15:24 +02:00
fb4917d050
Remove feature to generate commandline completion scripts
2018-04-14 14:35:28 +02:00
Mario Krehl
9a316d1268
Add license header to build.rs script
2018-04-14 14:19:28 +02:00
Mario Krehl
f463565770
Change target directory of completions to target/
2018-04-14 14:19:28 +02:00
Mario Krehl
38b4151b84
Fix: macro call build_subcommand
2018-04-14 14:19:28 +02:00
Mario Krehl
7e9c25fd63
Refactor: use App in the build_ui function of imag-init
2018-04-14 14:19:28 +02:00
Mario Krehl
84e1cffbe3
Fix: use mod ui and remove unused imports
2018-04-14 14:19:28 +02:00
Mario Krehl
d4c7019fc7
move target directory of the shell completions to target/shell-completions.d/
2018-04-14 14:19:28 +02:00
Mario Krehl
264a07239f
move the build_ui function of imag-ids into its own file
2018-04-14 14:19:28 +02:00
Mario Krehl
1d6e993ee8
fix copypasta fails
2018-04-14 14:19:28 +02:00
Mario Krehl
a7959a2e67
add all current imag binaries to the shell-completion script
2018-04-14 14:19:28 +02:00
Mario Krehl
a104d53919
build script for shell completion works again
2018-04-14 14:19:28 +02:00
Mario Krehl
de9ef077c3
add build.rs again
2018-04-14 14:19:28 +02:00
mario
ec2b8984bb
Add comment for &version!()[..]
2018-04-14 14:19:28 +02:00
mario
0f22941cd0
Add comments about functionality,
...
increase verbosity of some variables
2018-04-14 14:19:27 +02:00
mario
85cd326818
Add build_subcommand! macro
2018-04-14 14:19:27 +02:00
mario
a825f4aba6
Add additional dependencies
2018-04-14 14:19:27 +02:00
mario
d93b93fece
Change from types implementing build_ui to a mod for every binary.
...
Works with all available binaries.
Code cleanup
2018-04-14 14:19:27 +02:00
51b9b5c0db
Fix: Use qualification
2018-04-14 00:58:40 +02:00
1511d70fa3
Add lints
2018-04-14 00:39:43 +02:00
561008bd7f
Add lints
2018-04-14 00:39:43 +02:00
f92163f6d0
Add lints
2018-04-14 00:39:43 +02:00
e71019a2f2
Add lints
2018-04-14 00:39:43 +02:00
ad3269bbcc
Add lints
2018-04-14 00:39:43 +02:00
f6f1c23456
Add lints
2018-04-14 00:39:43 +02:00
461d59fcb0
Add lints
2018-04-14 00:39:43 +02:00
76c8443e50
Merge pull request #1395 from matthiasbeyer/clap-text-wrap
...
Clap text wrap
2018-04-13 22:46:09 +02:00
aeec10bf76
Use clap with wrap_help feature
2018-04-13 16:19:10 +02:00
b59c234588
Use clap "^2.29" instead of ">=2.29"
2018-04-13 16:17:43 +02:00
a53f130557
Merge pull request #1393 from matthiasbeyer/imag-diary/list-ids-sorted
...
Fix: List ids sorted
2018-04-13 15:54:32 +02:00
17ff619ca5
Merge pull request #1391 from matthiasbeyer/imag-grep/fix-count
...
Fix missing counting
2018-04-13 15:54:18 +02:00
532de484f2
Fix: List ids sorted
2018-04-13 13:51:56 +02:00
02985e5a0d
Fix missing counting
2018-04-13 13:27:08 +02:00
89cf979b13
Add functionality to filter for a collection
2018-04-13 11:25:59 +02:00
dce7c1b820
Update copyright years
2018-04-11 16:54:26 +02:00
2f47becef4
Merge pull request #1378 from matthiasbeyer/imag-view/ids-from-stdin
...
imag-view: Add support for piping entry ids into command
2018-04-07 10:51:10 +02:00
a14ab7b635
Merge pull request #1377 from matthiasbeyer/imag-contact/find-id
...
imag-contact: Add functionality to find contacts and print the storeid/file path
2018-04-07 10:51:02 +02:00
5061faaa74
Add support for piping entry ids into command
2018-04-06 16:16:22 +02:00
1d5171d770
Merge pull request #1376 from matthiasbeyer/imag-view/multiple-ids
...
imag-view: Add support for viewing multiple entries
2018-04-06 16:15:32 +02:00
3dfb17aabd
Add functionality to find contacts and print the storeid/file path
2018-04-06 15:42:15 +02:00
2cee4ba90f
Merge pull request #1375 from matthiasbeyer/imag-contact/find-format
...
imag-contact: Add format argument
2018-04-06 15:32:15 +02:00
f1cdb21430
Add support for viewing multiple entries
2018-04-06 15:30:12 +02:00
c6d0e37629
Fix formatted output, use seperator for lists
...
The formatted output should use ", " as seperator for lists of values
2018-04-06 14:26:46 +02:00
14fc6c7c7f
Add format argument
2018-04-06 14:24:30 +02:00
8c1b4124c0
Handle unknown subcommands in binaries with Runtime::handle_unknown_subcommand
2018-04-04 19:34:13 +02:00
e61ccc9561
Fix: Entry::to_str() should return Result<_>
...
Because serializing might fail.
Also fixes all usages of the API.
2018-03-26 14:24:42 +02:00
7907ed96c7
Merge pull request #1368 from matthiasbeyer/imag-link/list-output-table
...
imag-link: Do table output by default
2018-03-23 19:37:13 +01:00
f627d22057
Add header editing support
2018-03-23 17:16:40 +01:00
9c13c276fb
Do table output by default
2018-03-23 15:58:45 +01:00
fd91662ed9
Merge pull request #1363 from matthiasbeyer/imag-init/create-store-dir
...
Fix: Create store directory as well
2018-03-23 13:41:10 +01:00
8f1d3c4ffb
Fix: Create store directory as well
2018-03-23 10:12:39 +01:00
127681498f
Add debug output in tests
2018-03-23 10:05:58 +01:00
bcdfe3ceea
Use variable mutable, so we can create an instance
2018-03-22 21:32:58 +01:00
00d485c3d3
Add parameter to show done habits
2018-03-22 14:36:51 +01:00
64c8aee7fb
Add functionality to include store path (defaults to no)
2018-03-16 23:51:41 +01:00
dc76729bea
Merge pull request #1345 from matthiasbeyer/imag/inherit-stdio
...
Inherit stdio to child process
2018-03-12 23:22:17 +01:00
ee72e61b44
Merge pull request #1343 from matthiasbeyer/imag-tag/rewrite-cli
...
imag-tag: rewrite cli
2018-03-12 23:07:06 +01:00
45be292dd3
Inherit stdio to child process
2018-03-12 22:43:26 +01:00
fbc3bda54b
Rewrite CLI for more positional args
...
Also removed some non-working "+<tag>" and "-<tag>" handling.
2018-03-12 22:16:47 +01:00
8ae6e735e7
Allow reading store ids from stdin
2018-03-12 19:58:27 +01:00
e755bfd9de
Add JSON output support
2018-03-12 17:46:06 +01:00
6ec509709d
Merge pull request #1336 from matthiasbeyer/imag-contact/find-show
...
imag-contact: Add "find" command
2018-03-12 17:07:11 +01:00
cbe30fa9c2
Add "find" command
...
This patch adds a "find" command to imag-contact which can either list
or show the found contacts (defaults to "list").
2018-03-12 15:23:37 +01:00
af4fadf104
Join mails with comma
2018-03-12 14:46:24 +01:00
579c00b62a
Replace hard coded version strings with compiletime env
2018-03-06 12:45:41 +01:00
ee6e766c8d
Use generate_runtime_setup() to create Runtime object
2018-03-04 13:57:44 +01:00
50461b839a
Use output stream from Runtime::stdout()
2018-03-04 13:57:44 +01:00
f88884c321
Merge pull request #1321 from matthiasbeyer/libimagdiary/not-on-retrieve-for-module
...
libimagdiary: Do not rely on Store::retrieve_for_module
2018-03-03 13:53:18 +01:00
590a2e8f1d
Merge pull request #1317 from matthiasbeyer/imag-diary/daily
...
imag diary: "daily" support + Fixes for other timed entries
2018-03-03 13:29:10 +01:00
eccb52a85c
Fix imag-log for new Diary::entries() interface
2018-03-02 23:27:20 +01:00
cedbaf1b5c
Add "daily" support
2018-03-02 23:10:53 +01:00
776e1dac91
Fix: Hourly/Minutely should set minute/second to zero
2018-03-02 23:10:53 +01:00
affd15a890
Rewrite imag-diary for new Diary::entries() interface
2018-03-02 21:28:40 +01:00
78fe9b8cc5
Change "imag" impl to not instantiate Runtime object
...
Adapt libimagrt interface to export the functions we need to do this.
This is not that nice, but the best approach without rewriting large
parts of libimagrt.
2018-02-26 22:10:23 +01:00
35ac7ba927
Provide unlink() CLI interface
2018-02-25 18:59:02 +01:00
b2048b3dcf
Merge pull request #1306 from matthiasbeyer/minor
...
Minor patches
2018-02-20 20:23:41 +01:00
f38a4eb723
Merge pull request #1304 from matthiasbeyer/imag-init/imag-version-generator
...
Use the make_imag_version!() helper
2018-02-20 19:21:08 +01:00
c2b754dbec
Merge pull request #1303 from matthiasbeyer/imag-diary/fix-list-diary-name-passing
...
Fix order of evaluation
2018-02-20 18:37:55 +01:00
c4b33005fd
Increase gap size
2018-02-20 17:46:50 +01:00
59ea31a077
Use the make_imag_version!() helper
2018-02-20 17:45:14 +01:00
0cde88d661
Fix order of evaluation
...
We need to evaluate the commandline argument first and if there is none,
we use the default.
This patch fixes that bug.
2018-02-20 17:27:42 +01:00
027c4b3287
Remove usage of libimagentrylist
2018-02-20 15:02:46 +01:00
f5df7cf332
Revert "Dump all StoreIds"
...
This reverts commit 1f84643486
.
2018-02-20 13:40:52 +01:00
dd8d4e6fa4
Add imag-ids core command
2018-02-20 13:37:10 +01:00
2dc23c8101
Merge branch 'imag-ref/rewrite-libimagref-api-usage' into libimagentryref/refactor
2018-02-19 12:17:58 +01:00
9ced9008b5
Refactor imag-contact for new libimagentryref API
2018-02-19 12:15:40 +01:00
d3d6b80b8b
Redesign of the CLI
2018-02-19 12:15:13 +01:00
b9d04730db
Fix for broken pipe panics
2018-02-19 11:14:19 +01:00
e8f8969ded
Fix broke pipe panics
2018-02-19 11:14:19 +01:00
36e511d39b
Fix broken pipe panics
2018-02-19 11:14:19 +01:00
380aeccdc7
Fix broken pipe panics
2018-02-19 11:14:19 +01:00
125eebe1ce
Fix broken pipe panic
2018-02-19 11:14:19 +01:00
fc0610b77f
Fix broken pipe panic
2018-02-19 11:14:19 +01:00
872b300b9c
Fix broken pipe panics
2018-02-19 11:14:19 +01:00
632d68e0e0
Fix broken pipe panic
2018-02-19 11:14:19 +01:00
09da5cc21e
Fix for broken pipe panic
2018-02-19 11:14:19 +01:00
427ad89e55
Fix broken pipe panics
2018-02-19 11:14:19 +01:00
849229eec6
Fix broken pipe panics
2018-02-19 11:14:19 +01:00
e501f66dac
Fix broken pipe panics
2018-02-19 11:14:19 +01:00
23e0f720e5
Fix broken pipe errors
2018-02-19 11:14:18 +01:00
876c1cb9af
Fix broken pipe panics
2018-02-19 11:14:18 +01:00
5e78a43242
Fix for broken pipe panics
2018-02-19 11:14:18 +01:00
c2dfb2ef52
Refactor timetrack subcommands output for broken pipe errors
2018-02-19 11:14:18 +01:00
6a341d3723
Abstract exit code as a type
2018-02-19 11:14:18 +01:00
eb2f6fbbe2
Fix for broken pipe errors
2018-02-19 10:40:26 +01:00
013fc75d85
Fix output for broken pipe errors
2018-02-19 10:40:26 +01:00
88d21375b9
Refactor "imag store ids" command to not panic on broken pipe
2018-02-19 10:40:26 +01:00
2decc904aa
Fix binary name
2018-02-18 20:04:22 +01:00
b586e13a98
Add timewarrior import script
2018-02-18 20:03:50 +01:00
10e7a82a45
Refactor imag-diary
2018-02-18 20:03:50 +01:00
b61547c2d1
Add debug output what is about to be done
2018-02-18 20:03:50 +01:00
3341e3640c
Merge pull request #1224 from matthiasbeyer/git-version-in-version
...
Git version in version
2018-02-18 20:03:09 +01:00
9469693763
Use new make_imag_version!() macro for building version string
2018-02-13 11:38:34 +01:00
94cad804e1
Use ErrFromStr convenience extension
2018-02-12 21:25:51 +01:00
6b0930adec
Use ErrFromStr convenience extension
2018-02-12 21:25:33 +01:00
efdfb2a308
Fix imag-view for new error interface
2018-02-12 21:19:48 +01:00
63f2c70bed
Fix imag-notes for new error interface
2018-02-12 21:19:48 +01:00
8128d3ade9
Fix imag-mail for new error interface
2018-02-12 21:19:48 +01:00
ee23f432de
Fix imag-contact for new error interface
2018-02-12 21:19:48 +01:00
86abfb88a4
Fix imag-bookmark error handling
2018-02-12 21:19:48 +01:00
c0000b6410
Rewrite .map_err_trace_exit_unwrap()
...
Necessary because error types changed
2018-02-12 21:19:48 +01:00
50b0ffa6ae
Remove calls to trace_error_exit()
2018-02-12 21:19:48 +01:00
3845399fb8
Simplify implementation for new libimagerror interface
2018-02-12 21:19:48 +01:00
ba1c6c06fa
Add error chaining for compatibility with new libimagerror interface
2018-02-12 21:19:48 +01:00
1f4c0cafe4
Remove calls to trace_error_exit
2018-02-12 21:19:48 +01:00
a43232230b
Fix error handling for new API
2018-02-12 21:19:48 +01:00
7892782675
Refactor error handling
2018-02-12 21:19:48 +01:00
b9800e19e9
Refactor imag-diary to use new error handling interface
2018-02-12 21:19:48 +01:00
77be32d80f
Remove "get" iterator, store provides this now
2018-02-11 23:44:27 +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
4c95625def
Merge pull request #1278 from matthiasbeyer/imag-init/fix-release-build-include-string-path
...
imag-init: fix release build include string path
2018-02-11 17:55:27 +01:00
9e3c966d84
Merge pull request #1273 from matthiasbeyer/update-version-numbers
...
Update version string: 0.6.0 -> 0.7.0
2018-02-11 17:50:52 +01:00
938601f4fd
Merge pull request #1267 from matthiasbeyer/imag-link/do-not-link-entry-with-itself
...
Do not allow linking with entry itself
2018-02-11 16:07:36 +01:00
8a3f2602e0
Fix include_str!() in imag-init
...
Fixed by symlinking the imagrc.toml file to the crate directory of
imag-init.
2018-02-11 14:43:35 +01:00
30d2c28a22
Update version string: 0.6.0 -> 0.7.0
2018-02-11 14:22:24 +01:00
5e43773158
Do not allow linking with entry itself
...
Without this check, linking an entry with itself yields the following
error:
ERROR[ 1]: Entry is already borrowed: StoreId { base: Some("/home/m/.imag/store"), id: "notes/test" }
ERROR[ 2]: Error when calling retrieve() -- caused:
ERROR[ 3]: Error when calling get()
Which is semantically correct, but the user may get confused by that.
Instead, we print a nice error message that the entry cannot be linked
to itself.
This is not fixed in libimagentrylink itself, because libimagentrylink
cannot be called for the same entry.
If this would be possible, we would pass two `Entry` objects
mutably to the link functionality routines. This is not possible with
Rusts borrow semantics and therefor yields above error.
We compare strings to check whether the user accidentially linked an
entry with itself because we cannot get StoreIds from Entries because we
cannot get the Entry two times from the store in the first place. So
this is the best we have.
2018-02-11 13:41:16 +01:00
fa8af0c053
Merge pull request #1275 from matthiasbeyer/clap-features
...
Clap features
2018-02-11 13:29:17 +01:00
4ead39233b
Merge pull request #1280 from matthiasbeyer/imag-init/fix-git-init
...
Fix: git dir is not worktree dir
2018-02-11 13:29:02 +01:00
7f4cdced4a
Merge pull request #1262 from matthiasbeyer/do-not-print-ok
...
Do not print "Ok" after successful execution
2018-02-10 21:22:12 +01:00
1f462e4635
Merge pull request #1264 from matthiasbeyer/imag-log/show-alias-list
...
Alias subcommand "show" to "list"
2018-02-10 21:22:05 +01:00
7bbc379b73
Merge pull request #1266 from matthiasbeyer/imag/list-commands-alphabetically
...
Sort commands alphabetically
2018-02-10 21:21:57 +01:00
faafe6e994
Merge pull request #1265 from matthiasbeyer/imag/help
...
Add subcommand "help"
2018-02-10 18:56:29 +01:00
3b098069c5
Fix: git dir is not worktree dir
2018-02-10 18:18:39 +01:00
9f48071e48
Do not print "Ok" after successful execution
2018-02-10 16:41:27 +01:00
ec2f3a73d7
Do not print stats when listing files with matches
2018-02-10 16:41:23 +01:00
2dfede240e
Alias subcommand "show" to "list"
2018-02-10 16:41:20 +01:00
c17b256dfd
Add subcommand "help"
2018-02-10 16:41:15 +01:00
45cec64575
Sort commands alphabetically
2018-02-10 16:40:53 +01:00
8656a38c50
Update dependency: clap: 2.17 -> 2.29
2018-02-10 16:40:34 +01:00
9d2900a7dc
Compile clap with suggestions and color support
2018-02-10 16:40:34 +01:00
35bc1009f2
Revert "Fix include path for release"
...
This reverts commit c229d7d1fc
.
2018-02-10 15:14:03 +01:00
c229d7d1fc
Fix include path for release
2018-02-10 15:08:40 +01:00
3b710e082d
Add missing Cargo.toml metadata
2018-02-10 14:11:46 +01:00
d5a9e4930d
Update dates in license header
...
And add missing header in one file
2018-02-07 02:48:53 +01:00
1217d88a50
Fix links after moving entry
2018-02-06 23:37:21 +01:00
864e457dce
Merge pull request #1259 from matthiasbeyer/imag-log/no-leading-space
...
Do not put a leading space in the log
2018-02-06 23:29:22 +01:00
da74896248
Merge pull request #1258 from matthiasbeyer/imag-log/dont-list-non-log-entries
...
Do not list entries which are not "log" entries
2018-02-06 22:39:13 +01:00
1b588172dd
Merge pull request #1255 from matthiasbeyer/imag-notes/fix-list
...
Fix imag-notes list errors
2018-02-06 21:45:37 +01:00
88b7b43d2c
Do not put a leading space in the log
2018-02-06 20:54:11 +01:00
f44f13e23a
Do not list entries which are not "log" entries
2018-02-06 20:48:47 +01:00
97e613d8c5
Use libimagstore get iterator
...
Use libimagstore infrastructure to transform iterator in
StoreIdGetIterator for getting entries from store.
2018-02-06 20:41:13 +01:00
8cba4daf20
Print to stderr
2018-02-06 19:28:27 +01:00
85d1c632d3
Print "imag-<tool>" rather than only "<tool>"
...
The error output should note "imag-<tool> exited with ..." rather than
only "<tool> exited with ..."
2018-02-06 19:28:08 +01:00
3b138ba881
Merge pull request #1231 from matthiasbeyer/update-kairos
...
Update kairos dependency: 0.1.0-beta-2 -> 0.1.0
2018-02-05 17:30:55 +01:00
e2e3b4f6e2
Update kairos dependency: 0.1.0-beta-2 -> 0.1.0
2018-02-05 16:20:05 +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
8e931cd79f
Change calls to into_get_iter() to not take argument
2018-02-01 16:46:38 +01:00
030e32e44f
Provide StoreId Iterator which has a ref to the Store
...
This change is needed so we can refactor the "get" iterator to not take
an argument (the store) later, which improves the API.
2018-02-01 15:47:39 +01:00
da4b823048
Merge pull request #1219 from matthiasbeyer/minor
...
Minor patches
2018-02-01 13:18:31 +01:00
4d94791b1f
Move date <-> string conversion utility to libimagutil
2018-02-01 09:26:33 +01:00
30ef3bf0d3
Comment type fixed
2018-01-29 09:38:32 +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
82b67115e6
Refactor: Minify
...
Pull in new dependencies for minification
2018-01-29 09:38:32 +01:00
74f58d6c06
Remove unused imports
2018-01-29 09:38:32 +01:00
53bf1a513b
Implement stopping all tags which are started
2018-01-28 20:51:20 +01:00
3735fbac2f
Merge pull request #1166 from matthiasbeyer/log-0-4-0
...
Dependency update: log 0.4.0
2018-01-18 15:40:50 +01:00
fcfc397fc8
env_logger: 0.5.0-rc.2 -> 0.5
2018-01-18 14:15:40 +01:00
45ac9b4132
Change list command to use a table for output
2018-01-16 14:48:48 +01:00
8d9c7dce4f
env_logger: 0.5.0-rc.1 -> 0.5.0-rc.2
2018-01-15 11:22:09 +01:00
635d000344
log: 0.4.0-rc.1 -> 0.4.0
2018-01-15 11:21:52 +01:00
c45130ddd0
env_logger: 0.4.* -> 0.5.0-rc.1
2018-01-15 11:20:27 +01:00
f209e12410
Update dependency: log: 0.3.* -> 0.4.0-rc.1
2018-01-15 11:20:07 +01:00
5beadbbf5b
Call default command if no command is passed
2018-01-13 14:36:31 +01:00
284f12e8cb
Refactor: Split actual list implementation from argument processing
2018-01-13 14:36:31 +01:00
47e98675e7
imag-todo: Replace read with typed read
2018-01-13 01:14:03 +01:00
55d97e565d
imag-log: Replace read with typed read
2018-01-13 01:14:03 +01:00
f0e8e89c15
imag-contact: Replace read with typed read
2018-01-13 01:14:03 +01:00
137680498c
imag-bookmark: Replace read with typed read
2018-01-13 01:14:03 +01:00
0a78d43741
imag-view: Replace read with typed read
2018-01-13 01:14:03 +01:00
0c4be78223
Update dependency: toml-query -> 0.6
2018-01-13 01:14:03 +01:00
bfc35e0517
Remove dependency "version"
...
Because the "version" crate is licensed as GPL, which would us require
to release imag as GPL, we remove the crate now.
2018-01-12 13:33:40 +01:00
8d69e45c0e
Add imag-edit command
2018-01-09 11:56:22 +01:00
15cc7d6805
Merge pull request #1210 from matthiasbeyer/imag-after-help
...
imag: Use App::after_help()
2018-01-08 23:30:51 +01:00
0c2308bd76
Use App::after_help() for printing runtime-generated help output
2018-01-08 16:55:07 +01:00
95e861b5ca
Adapt for new API
2018-01-08 15:16:14 +01:00
5aeaacc317
Merge pull request #1190 from matthiasbeyer/imag-init/init
...
imag-init: initial import
2018-01-04 19:37:50 +01:00
38f8de15bf
Revert "Integrate spinner for nicer progress reports"
...
This reverts commit de7a4d2dfb
.
2018-01-04 12:10:07 +01:00
a6fd525c0f
Add "show" functionality
2018-01-03 21:09:03 +01:00
3cf1fd0baf
Add CLI implementation
2018-01-03 16:54:08 +01:00
7a364639ee
Initial import: imag-log
2018-01-03 16:54:08 +01:00
de7a4d2dfb
Integrate spinner for nicer progress reports
2018-01-03 16:00:46 +01:00
f324deb41e
imag-init: initial import
2018-01-03 15:48:58 +01:00
774933ae4a
Merge pull request #1163 from matthiasbeyer/libimagstore/mighty-iters
...
libimagstore: More powerful iterator extensions
2017-12-25 22:02:56 +01:00
3c8dd19d11
Update version strings: 0.5.0 -> 0.6.0
2017-12-25 19:17:07 +01:00
d6e1994eeb
Fix: Explicitely import only relevant trait
2017-12-24 13:52:50 +01:00
8104b1cf0b
Adapt tests
...
This changes the internal function `link_from_to` a bit, but as this is
only internal we don't care.
2017-12-23 12:57:15 +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
05a630f943
Change UI. Positional args are not possible here
2017-12-22 14:40:01 +01:00
6a7e7f0f12
Add functionality so we can create a habit with a due date
2017-12-22 14:40:01 +01:00
df16d0737e
Adapt for new API of Habit::next_instance_date()
...
With cd8f0beae8
the interface of `HabitTemplate::next_instance_date()` changed to return
a `Result<Option<_>>` rather than a `Result<_>` because the
next_instance_date could be a None if the Habit was closed already.
This patch adapts imag-habit for this new interface.
2017-12-22 14:40:01 +01:00
501f67dcf2
Add more output in today()
2017-12-22 14:40:01 +01:00
496850a762
Add future-check in CLI and fix for default command invokation
2017-12-22 14:40:01 +01:00
39a983f6fb
Add more details to default command
2017-12-22 14:40:01 +01:00
7cf46f99d4
Add done
functionality
2017-12-22 14:40:01 +01:00
b78095d8bc
Impl delete()
2017-12-22 14:40:01 +01:00
ff39a450b1
Explicitely state that printing an empty table is forbidden
2017-12-22 14:40:01 +01:00
404d839310
Make "today" the default command
2017-12-22 14:40:01 +01:00
0fa1ae28f8
Let "today" command list upcoming habits
2017-12-22 14:40:01 +01:00
5574764d83
Add a subcommand to list habits due today
2017-12-22 14:40:01 +01:00
2520635cae
Add support for listing the next date when the habit must be done
2017-12-22 14:40:01 +01:00
6e7414a2fd
Implement show()
2017-12-22 14:40:01 +01:00
915b1325d2
Implement list()
2017-12-22 14:40:01 +01:00
528b30c1ff
Implement create()
2017-12-22 14:40:01 +01:00
d1848e9186
Add CLI spec
2017-12-22 14:40:01 +01:00
be79f6373e
Import crate for imag-habit
2017-12-22 14:40:01 +01:00
04d5af8d50
Switch to upstream rust-vobject
2017-11-09 11:21:17 +01:00
521d661f1c
Fix path
2017-11-09 11:21:17 +01:00
00c73d53c7
Phone and email information is in the person table
2017-11-09 11:21:17 +01:00
c8a8bdcd22
Fix format and location of content
2017-11-09 11:21:17 +01:00
c90d0ab34a
Fix UUID-Filename creating, add debug output
2017-11-09 11:21:17 +01:00
296136fca5
Add tests
2017-11-09 11:21:17 +01:00
524df37ca6
Add parsing of personal information: Birthday
2017-11-09 11:21:17 +01:00
794efb0034
Outsource functional part for testability
2017-11-09 11:21:17 +01:00
e211aba341
Implement create subcommand
...
The complexity of the create() routine justifies the move to another file.
This commit implements the create() functionality which creates a TOML
tempfile which the user should edit and then reads the contents to build
the Vcard object which then gets written to either stdout or the
destination file.
Besides that:
* Move helper function to util module
* Rewrite and fix tests
2017-11-09 11:20:32 +01:00
ab8c8e4e41
Add new required dependencies
2017-11-09 11:19:17 +01:00
d0ec7e26dc
Add implementation for imag-contact
...
* Implement contact listing with formatting via commandline or config
* Implement importer functionality for contact
* Implement "show" subcommand
* imagrc.toml: Add explanation which fns are supported in templates
2017-11-09 11:19:17 +01:00
0540ae9392
Initial import of imag-contact
2017-11-09 11:15:04 +01:00
dc26f8c20c
Merge pull request #1156 from matthiasbeyer/store-verify-from-cli-app
...
Move verify implementation from Store to CLI interface
2017-10-31 15:47:57 +01:00
9308c05057
Replace uses of try!() macro with "?" operator
2017-10-31 15:04:50 +01:00
1dda98e17e
Replace uses of try!() macro with "?" operator
2017-10-31 15:04:50 +01:00
246bf04dbf
Replace uses of try!() macro with "?" operator
2017-10-31 15:04:50 +01:00
ee7b04dd42
Replace uses of try!() macro with "?" operator
2017-10-31 15:04:50 +01:00
a20871eb5e
Add badges in Cargo.toml of all crates
2017-10-31 15:03:30 +01:00
2855a89e24
Move verify implementation from Store to CLI interface
2017-10-31 13:11:34 +01:00
b237adfe19
Fix calls to Runtime::config() to use direct result
2017-10-31 09:25:14 +01:00
36adac4a16
Add output about max internal links and max overall byte size
2017-10-16 14:43:21 +02:00
6daeefa0d8
Show average link count in all entries
2017-10-16 14:43:21 +02:00
f9a56bee3f
Add a few small diagnostics
2017-10-16 14:43:00 +02:00
ec78237198
Initial imag-diagnostics import
2017-10-16 14:43:00 +02:00
e7aa5af9be
Merge pull request #1149 from matthiasbeyer/libimagrt/remove-logging-format-overrides
...
Remove override functionality for logging formats
2017-10-16 10:11:28 +02:00
3487eb4c8a
Remove override passing in imag binary command
2017-10-16 00:47:42 +02:00
5917dade99
Fix missed version updates
2017-10-14 21:05:42 +02:00
38494a31da
Support deleting by partial hash
2017-10-14 14:05:56 +02:00
d37de44c94
Add RefStore::find_storeid_by_partial_hash() helper
2017-10-14 14:05:56 +02:00
60f2a34074
Add debug output
2017-10-13 14:53:57 +02:00
da013d65dc
Initial import for imag-annotate
2017-10-13 14:53:57 +02:00
758166637b
Update toml-query: 0.3.* -> 0.4
...
This update is needed for the error-chain update, as the toml-query
0.4.0 release also bumps this dependency.
2017-10-12 22:13:04 +02:00
663242db7e
Update dependency: error-chain: 0.10 -> 0.11
2017-10-12 22:12:27 +02:00
3ed9c1fcc8
Merge pull request #1131 from matthiasbeyer/libimagerror/trace-and-unwrap-helper
...
Add helper for tracing error and exit or unwrap the value
2017-10-12 22:08:48 +02:00
815cde76d0
Rewrite .map_err_trace_exit().unwrap() with new helper fn
2017-10-12 20:15:46 +02:00
013e82f04f
Update dependency: filters: 0.1 -> 0.2
2017-10-12 19:48:01 +02:00
67a127f700
Update dependency: itertools: 0.6 -> 0.7
2017-10-12 19:45:50 +02:00
Kai Sickeler
1f84643486
Dump all StoreIds
...
Add StoreId Dump changes
2017-10-09 12:18:27 +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
169107d569
Remove FoldResult
2017-09-30 10:45:10 +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
61d472a8c7
Remove section build-dependencies
2017-09-24 12:05:32 +02:00
738b0ce4b9
Implement CLI
2017-09-22 14:37:03 +02:00
664d85c42f
Add UI spec
2017-09-22 14:37:03 +02:00
fbbb26b737
Initial import
2017-09-21 19:01:36 +02:00
b431d0ee49
Merge pull request #1092 from matthiasbeyer/minor
...
Minor things
2017-09-20 19:24:44 +02:00
1e7e6ab601
Merge pull request #1090 from matthiasbeyer/imag-ref/positional-args
...
imag-ref: Use positional args
2017-09-20 18:39:06 +02:00
e000957722
Ensure that all arguments are passed to the subcommand
2017-09-20 17:13:04 +02:00
456c5539cc
Use positional args
2017-09-20 16:44:39 +02:00
c3ad3a1256
Remove unused import
2017-09-20 12:05:44 +02:00
e986fbeabc
Add debugging output
2017-09-20 12:05:44 +02:00
0da07a3387
Each test should use an other name for the file it creates
2017-09-20 12:05:44 +02:00
8ddb0f6c24
Do not use "imag" namespace in header
...
This change switches the header location for the tagging information
from "imag.tags" to "tag.values". "tags" is not used because non-tables
are not allowed at the top level of the header.
Tests are adapted.
2017-09-20 09:24:46 +02:00
39b9c17a0c
Add default entry by simply creating an empty Entry
2017-09-19 22:31:23 +02:00
a3d923ab20
Add default entry by simply creating an empty Entry
2017-09-19 22:31:23 +02:00
162b36d6ee
Update dependency specs
...
Most notably:
* env_logger: 0.4 -> 0.5
* hoedown: 5.0.0 -> 6.0.0
* itertools: 0.5 -> 0.6
* lazy_static: 0.1.15 -> 0.2
* regex: 0.1 -> 0.2
* semver: 0.5 -> 0.8
* url: 1.2 -> 1.5
* uuid: 0.3 -> 0.5
(This list is most surely not complete)
2017-09-19 17:16:19 +02:00
d56e086242
Remove shell code which is not used anymore
2017-09-18 14:21:48 +02:00
d97b77c30c
Merge pull request #1078 from matthiasbeyer/imag-tag/positional-args
...
Transform UI to use positional args
2017-09-17 09:48:30 +02:00
210688d913
Transform UI to use positional args
2017-09-17 08:30:00 +02:00
26a0038ac2
Merge pull request #1073 from matthiasbeyer/imag-bookmark/configurable
...
Make default bookmark collection configurable via imagrc.toml
2017-09-16 09:52:08 +02:00
b853e35a05
Merge pull request #1071 from matthiasbeyer/imag-grep
...
imag-grep: Add new crate
2017-09-15 23:21:18 +02:00
d7d4d9fa7a
Make default bookmark collection configurable via imagrc.toml
2017-09-15 21:46:15 +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
2bbda59051
Refactor and simplify imag-notes binary
2017-09-15 13:53:16 +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
dc78c0e448
Change create() to check config and commandline whether entry should be created timed or not
2017-09-14 18:59:03 +02:00
dbf529e427
Add config parsing helpers
2017-09-14 18:58:40 +02:00
ea982204b9
Add new deps: toml, toml_query
2017-09-14 18:58:17 +02:00
dc263de947
Fix imag-link tests for new header location
2017-09-09 16:36:21 +02:00
c332bcb195
Implement aliases for imag binary
2017-09-08 17:08:14 +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
f86d02ecbb
Adapt the cli-test for delete()
...
In the process fix the binary name.
2017-09-05 17:41:09 +02:00
861817a87f
Adapt cli-test for create()
...
In the process fix the binary name.
2017-09-05 17:39:17 +02:00
7b1ffdfa4b
Rewrite delete() to use positional arg
2017-09-05 17:36:32 +02:00
9e9c04e5f3
Rewrite update() to use positional arg
2017-09-05 17:36:32 +02:00
381223efd9
Rewrite get() to use positional arg
2017-09-05 17:36:32 +02:00
9dde4731f2
Rewrite retrieve() to use positional arg
2017-09-05 17:36:32 +02:00
a71732be49
Rewrite create() to use positional arg
2017-09-05 17:36:32 +02:00