Reinhard Pointner
d1c1f027d3
Execute only distinct commands
2019-05-27 15:25:34 +07:00
Reinhard Pointner
877e52c02a
Add ExpressionMapper interface
2019-05-27 15:25:22 +07:00
Reinhard Pointner
f6199e154f
Add ExpressionMapper interface
2019-05-27 14:36:38 +07:00
Reinhard Pointner
23ff6048a3
Rearrange CLI option order
2019-05-27 14:36:25 +07:00
Reinhard Pointner
0678aa646a
Inject ExpressionFormatFunctions via extensionClasses instead of starImports
2019-05-25 01:34:58 +07:00
Reinhard Pointner
a7b92060f5
Default Anime processing to TheTVDB with Absolute Order instead of AniDB (and improve logging to make sure users see what's going on)
2019-05-22 19:38:26 +07:00
Reinhard Pointner
d5c8551761
Dark Mode for GroovyPad
2019-05-22 18:46:00 +07:00
Reinhard Pointner
a9285d53fd
[!] Stream.count() may short-circuit and not traverse any elements at all.
...
@apiNote
An implementation may choose to not execute the stream pipeline (either sequentially or in parallel) if it is capable of computing the count directly from the stream source. In such cases no source elements will be traversed and no intermediate operations will be evaluated. Behavioral parameters with side-effects, which are strongly discouraged except for harmless cases such as debugging, may be affected. For example, consider the following stream:
List<String> l = Arrays.asList("A", "B", "C", "D");
long count = l.stream().peek(System.out::println).count();
The number of elements covered by the stream source, a List, is known and the intermediate operation, peek, does not inject into or remove elements from the stream (as may be the case for flatMap or filter operations). Thus the count is the size of the List and there is no need to execute the pipeline and, as a side-effect, print out the list elements.
2019-05-20 13:13:12 +07:00
Reinhard Pointner
6fb43e79b7
Add File.getDisplaySize() extension method
2019-05-20 00:28:21 +07:00
Reinhard Pointner
c9478ffeba
Allow *.groovy
files as argument value for --format
, --filter
and --file-filter
CLI options (e.g. --format /path/to/MyFormat.groovy
)
2019-05-19 18:54:58 +07:00
Reinhard Pointner
e3ff4525c0
Allow *.groovy
files as argument value for --format
, --filter
and --file-filter
CLI options (e.g. --format /path/to/MyFormat.groovy
)
2019-05-19 18:41:46 +07:00
Reinhard Pointner
616f361b0b
Added -no-history switch
2019-05-19 12:47:17 +07:00
Reinhard Pointner
e35e905fa9
Streamify --filter --format -exec pipeline
2019-05-19 04:01:12 +07:00
Reinhard Pointner
9bc0871b92
Streamify --filter --format -exec pipeline
2019-05-19 03:54:01 +07:00
Reinhard Pointner
8b71eda926
Make --format -exec pipeline more stateless
2019-05-19 03:52:33 +07:00
Reinhard Pointner
2838a8f976
Streamify --filter --format -exec pipeline
2019-05-19 03:48:10 +07:00
Reinhard Pointner
a11b405931
Streamify --filter --format -exec pipeline
2019-05-19 03:30:53 +07:00
Reinhard Pointner
c2090273d9
Improved logging
2019-05-01 17:07:06 +07:00
Reinhard Pointner
38d9af01fe
Fix readability
2019-04-30 15:31:03 +07:00
Reinhard Pointner
aefda884a7
Fix readability
2019-04-30 15:24:31 +07:00
Reinhard Pointner
2911ea488a
Move DSL utilities
2019-04-24 13:58:41 +07:00
Reinhard Pointner
18ad7b4561
Return destination file path (if sensible) so xattr & history integration works out of the box for simple use cases
2019-04-21 01:25:21 +07:00
Reinhard Pointner
3fa0530da9
Refactor system exec
2019-03-15 14:19:00 +07:00
Reinhard Pointner
88388f347f
Make sure to create output folder before calling extract() operations
2019-03-12 22:16:25 +07:00
Reinhard Pointner
569575db0d
Add {mbps} to default -mediainfo format
2019-03-11 16:53:00 +07:00
Reinhard Pointner
621655a532
Improved error logging
2019-03-08 14:53:29 +07:00
Reinhard Pointner
8390e65ee9
Refactor error messages / kaomoji
2019-03-07 10:45:09 +07:00
Reinhard Pointner
02545ba78c
Make --def name=value sanity check less strict
2019-02-26 14:34:11 +07:00
Reinhard Pointner
0815aa6532
Refactor PanelBuilder[]
2019-02-26 12:20:26 +07:00
Reinhard Pointner
08ba94d2f3
Support for setting the Lanternal TextUI theme via -Dnet.filebot.cli.theme
2019-02-25 10:11:30 +07:00
Reinhard Pointner
5d19b9c2c1
Document only CLI options
2019-02-24 16:44:22 +07:00
Reinhard Pointner
f8e3c3460d
Refactor and extend new ExitCode logic
2019-02-21 21:10:24 +07:00
Reinhard Pointner
111e4661d9
NO_OPERATION = 10;
2019-02-21 20:48:24 +07:00
Reinhard Pointner
adf3007372
Add default string representation for args object
2019-02-21 20:48:16 +07:00
Reinhard Pointner
164e6bc28e
Add more fine-grained exit codes
2019-02-21 16:52:22 +07:00
Reinhard Pointner
5402374d32
Use Exit Code 4 when aborting a script via die()
2019-02-21 16:16:52 +07:00
Reinhard Pointner
01807285ed
Refactor argument passing for mac app
2019-02-20 21:23:49 +07:00
Reinhard Pointner
a63556e3f4
flush all memory caches to disk (before starting any long running file system operations that might be cancelled by the user)
2019-02-19 01:13:53 +07:00
Reinhard Pointner
267bf133f6
flush all memory caches to disk (before starting any long running file system operations that might be cancelled by the user)
2019-02-18 18:13:19 +07:00
Reinhard Pointner
22a9f01760
Add File.getMediaCharacteristics() extension method
2019-01-29 00:20:39 +07:00
Reinhard Pointner
ce2bfbb177
Improved output logging if --conflict override is used in combination with --action test
2019-01-28 21:31:10 +07:00
Reinhard Pointner
e4abc0afb4
Add --action AbsoluteAirdate to man page
2019-01-27 12:07:36 +07:00
Reinhard Pointner
71e0033cfc
Add --db TheMovieDB::TV to man page
2019-01-27 11:41:33 +07:00
Reinhard Pointner
86391a7f78
Force and Restore source last modified timestamp only if it was (possibly) changed by writing xattr metadata
2019-01-08 22:57:56 +07:00
Reinhard Pointner
d194ebee73
If MOVE is used, then don't Preserve Last Modified because source / destination file is the same, so time stamp can't be transferred from now non-existing source file
2019-01-08 11:03:18 +07:00
Reinhard Pointner
d15a250644
If MOVE is used, then don't Preserve Last Modified because source / destination file is the same, so time stamp can't be transferred from now non-existing source file
2019-01-05 13:54:48 +07:00
Reinhard Pointner
62e276a9cf
Add File.isClutter() extension method.
2018-12-20 18:38:44 +07:00
Reinhard Pointner
4b3ac80a88
MAS does not support or allow command-line applications and may run executables with strange arguments for no apparent reason (e.g. filebot.launcher -psn_0_774333) so we ignore arguments completely in this case
2018-12-17 16:43:02 +07:00
Reinhard Pointner
7213220c86
Make sure to preserve Last Modified date after renamed and xattr-tagging files (and use last modified date for abuse sanity checks as well to reduce false positives)
2018-12-15 13:46:27 +07:00
Reinhard Pointner
172c4954df
Refactor license key import handling
2018-12-05 19:24:18 +07:00