1
0
mirror of https://github.com/mitb-archive/filebot synced 2024-08-13 17:03:45 -04:00
Commit Graph

3994 Commits

Author SHA1 Message Date
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
6229709825 Add flushAll() method for testing 2019-02-18 15:53:49 +07:00
Reinhard Pointner
acd1f0fa64 Refactor File DnD (and assume that "java.io.IOException: Owner failed to convert data" is normal during the DnD process and can be ignored) 2019-02-17 19:12:27 +07:00
Reinhard Pointner
9fb947bbfd Refactor File DnD (and assume that "java.io.IOException: Owner failed to convert data" is normal during the DnD process and can be ignored) 2019-02-17 19:11:30 +07:00
Reinhard Pointner
a4c3ac9faa Refactor File DnD (and assume that "java.io.IOException: Owner failed to convert data" is normal during the DnD process and can be ignored) 2019-02-17 19:09:38 +07:00
Reinhard Pointner
d3d78cb09c Refactor File DnD (and assume that "java.io.IOException: Owner failed to convert data" is normal during the DnD process and can be ignored) 2019-02-17 19:07:32 +07:00
Reinhard Pointner
5cec6f5162 Make sure "WARNING: Owner failed to convert data" doesn't fill up the error.log with useless messages that seem to happen all the time, don't matter, and are just confusing for new users. 2019-02-17 18:39:21 +07:00
Reinhard Pointner
c9c4e84ee4 Best effort to avoid cache corruption if process is killed or crashes 2019-02-17 18:30:16 +07:00
Reinhard Pointner
5777a700bc Improved default logging (for GUI users) 2019-02-17 18:22:08 +07:00
Reinhard Pointner
d3f1bdde15 Update log levels 2019-02-17 18:14:40 +07:00
Reinhard Pointner
5f5ee11004 Disable default copy & paste support in panel selection list 2019-02-16 21:48:50 +07:00
Reinhard Pointner
6bbea7d075 Formatting 2019-02-15 14:08:37 +07:00
Reinhard Pointner
a620f3f206 Fix unused import 2019-02-14 17:37:52 +07:00
Reinhard Pointner
cce9ba8c2b Make sure cache is not stale 2019-02-14 17:37:01 +07:00
Reinhard Pointner
afe75b430a Use separate cache to make sure we don't loose the cache on abort. 2019-02-14 17:10:52 +07:00
Reinhard Pointner
6aa65ce3d6 Unify long-term caches 2019-02-12 00:03:16 +07:00
Reinhard Pointner
580f2bd8f4 Make sure not to expose public locks 2019-02-11 14:34:02 +07:00
Reinhard Pointner
f0e3b5fa46 Make sure to preserve intended order 2019-02-11 14:16:14 +07:00
Reinhard Pointner
6092dae7bd Set headers in fixed order 2019-02-11 14:13:44 +07:00
Reinhard Pointner
ae989ee990 Refactor, Streamify 2019-02-11 14:12:04 +07:00
Reinhard Pointner
4e1f7104d0 Change button order 2019-02-09 20:39:21 +07:00
Reinhard Pointner
b38f9a3ddb Use Caffeine for in-memory caching 2019-02-07 13:27:04 +07:00
Reinhard Pointner
1a6994c491 Improved debug logging 2019-02-05 15:31:44 +07:00
Reinhard Pointner
431966cbbd Cache null values properly 2019-02-05 15:10:36 +07:00
Reinhard Pointner
d0c77c65fc Refactor EpisodeMetrics / SubtitleMetrics to make sure nothing is static so that GC can do it's job (i.e. fix memory leaks) 2019-02-05 14:45:57 +07:00
Reinhard Pointner
cf2c7785cc Don't cache parser results forever 2019-02-05 13:28:19 +07:00
Reinhard Pointner
8deb784419 Fix regression issue: com.google.common.cache.CacheLoader$InvalidCacheLoadException: CacheLoader returned null for key 2019-02-05 12:57:04 +07:00
Reinhard Pointner
241931f28b Don't cache video properties forever 2019-02-05 12:56:37 +07:00
Reinhard Pointner
42d678527b Don't cache video properties forever 2019-02-05 12:44:12 +07:00
Reinhard Pointner
fb31146c17 No need to initialize for 64 years of local index 2019-02-05 12:42:55 +07:00
Reinhard Pointner
25d92211eb Fix regression issue: com.google.common.cache.CacheLoader$InvalidCacheLoadException: CacheLoader returned null for key 2019-02-05 12:29:27 +07:00
Reinhard Pointner
aa0ba70848 Use Guava Cache for in-memory caches 2019-02-03 01:56:01 +07:00
Reinhard Pointner
342ced903d Improved support for read / writing CRC32 checksum to / from xattr (and enable by default) 2019-02-03 01:44:17 +07:00
Reinhard Pointner
501bb8f709 Use Guava Cache for in-memory caches 2019-02-03 01:37:17 +07:00
Reinhard Pointner
9ef4669f6f Expire cached items after 5 minutes 2019-02-02 23:04:39 +07:00
Reinhard Pointner
9fda2cff15 Fix docs 2019-02-02 22:25:11 +07:00
Reinhard Pointner
50a5d9779f Simplify 2019-02-02 22:23:24 +07:00
Reinhard Pointner
2c53176439 Fix backwards compatibility 2019-02-01 16:42:07 +07:00
Reinhard Pointner
edd1618849 Fix regex look-ahead / look-behind issues (esp. to fix 01v2 numeric matching issues) 2019-01-31 20:46:02 +07:00
Reinhard Pointner
9e0366bd64 Fix regex look-ahead / look-behind issues 2019-01-31 20:44:23 +07:00
Reinhard Pointner
c34e4d676b Fix various AutoDetection issues 2019-01-31 19:17:42 +07:00
Reinhard Pointner
bb09c102cc Declutter detailed log output 2019-01-31 18:32:56 +07:00
Reinhard Pointner
fb5c332bc5 Declutter detailed log output 2019-01-31 18:27:47 +07:00
Reinhard Pointner
50f7eb8439 Fix various AutoDetection issues 2019-01-31 18:03:46 +07:00
Reinhard Pointner
473f6a4992 Fix various AutoDetection issues 2019-01-31 18:00:19 +07:00
Reinhard Pointner
9a228e6927 Refactor string similarity code 2019-01-30 23:30:59 +07:00
Reinhard Pointner
dfa4f78448 Fix various AutoDetection issues 2019-01-30 23:05:23 +07:00
Reinhard Pointner
41fbc3516c Improved logging for AutoDetection 2019-01-30 00:25:15 +07:00
Reinhard Pointner
0531204e88 Fix various AutoDetection issues 2019-01-30 00:03:59 +07:00
Reinhard Pointner
fdce2c8c72 Optimize TMDB local index search 2019-01-29 19:04:06 +07:00
Reinhard Pointner
e3ee25879b Preserve group order according to original file order 2019-01-29 04:07:43 +07:00
Reinhard Pointner
af498ecd47 Fix NPE caused by series name being null 2019-01-29 02:27:51 +07:00
Reinhard Pointner
22a9f01760 Add File.getMediaCharacteristics() extension method 2019-01-29 00:20:39 +07:00
Reinhard Pointner
2b1585bca9 amc-universal script extensions 2019-01-28 23:56:12 +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
51072a2c40 Refactor MediaCharacteristics so we can switch between implementations easily 2019-01-28 21:08:24 +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
8aee1e9e85 Improved support for File DnD on Linux if File URIs are not escaped correctly (i.e. contain literal [ or ] in the File URI which is not allowed as per URI spec).
See https://www.filebot.net/forums/viewtopic.php?f=11&t=9651
2019-01-23 15:36:53 +07:00
Reinhard Pointner
4f26f4ec3d Support for adding timestamps to logging output via -Dnet.filebot.logging.time=true 2019-01-16 18:51:11 +07:00
Reinhard Pointner
11c899fddd Use more platform-independent code for our video quality comparator (e.g. based on libmediainfo or ffprobe depending on configuration) to make sure --conflict auto works as expected on platforms where libmediainfo doesn't work 2019-01-15 23:37:26 +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
103dd239c2 access episode list and find minimum airdate if necessary 2019-01-01 14:05:47 +07:00
Reinhard Pointner
dc1b8a41a0 Set .xattr folder hidden on Windows 2018-12-31 13:09:45 +07:00
Reinhard Pointner
4a090ff576 Set .xattr folder hidden on Windows 2018-12-31 13:03:07 +07:00
Reinhard Pointner
be7f86bf98 Make it clear that inferredMediaFile is used here 2018-12-31 12:07:33 +07:00
Reinhard Pointner
bba9ca4e8a Fix import 2018-12-30 14:42:58 +07:00
Reinhard Pointner
5ce426daed Fix import 2018-12-30 14:40:22 +07:00
Reinhard Pointner
61b551a37b Refactor and modularize xattr read/write access 2018-12-27 19:00:42 +07:00
Reinhard Pointner
5cdf6e4311 Refactor and modularize xattr read/write access 2018-12-27 18:51:24 +07:00
Reinhard Pointner
3daac8a72e Experiment with extattr commands for limited xattr support on *BSD 2018-12-27 04:36:27 +07:00
Reinhard Pointner
c93a85c82f Experiment with extattr commands for limited xattr support on *BSD 2018-12-27 03:36:15 +07:00
Reinhard Pointner
b8cb731d8b Reorder Type filters 2018-12-22 17:35:17 +07:00
Reinhard Pointner
62e276a9cf Add File.isClutter() extension method. 2018-12-20 18:38:44 +07:00
Reinhard Pointner
dd95a40d11 Add "Move to Trash" action to Filter Tools and add additional type filters that might come in handy when batch deleting clutter files 2018-12-20 18:22:53 +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
05700c63c6 // try to place embedded media title first 2018-12-06 15:35:05 +07:00
Reinhard Pointner
49b22e4137 Extended MediaCharacteristics common interface 2018-12-06 14:58:53 +07:00
Reinhard Pointner
2093882034 Extended MediaCharacteristics common interface 2018-12-06 14:56:26 +07:00
Reinhard Pointner
b2438ec6a1 Use embedded media title for filename-based bindings such as {group} {source} etc via libmediainfo 2018-12-05 22:41:55 +07:00
Reinhard Pointner
172c4954df Refactor license key import handling 2018-12-05 19:24:18 +07:00
Reinhard Pointner
9496ce6f10 Add {ci} collection index binding 2018-12-03 20:00:27 +07:00
Reinhard Pointner
6acd4b62ec Add {ci} collection index binding 2018-12-03 19:07:29 +07:00
Reinhard Pointner
a7c736d40b Fix dateutil methods in case groovy extension methods dont work 2018-12-03 03:23:37 +07:00
Reinhard Pointner
1710681ff6 Fix dateutil methods in case groovy extension methods dont work 2018-12-03 03:19:54 +07:00
Reinhard Pointner
789ee97212 Revert "Remove groovy dateutil hack"
dateutil extension still doesn't just work automatically for some unknown reason, so we need to keep forcing it
2018-12-03 03:06:49 +07:00
Reinhard Pointner
75fd182529 Remove groovy dateutil hack 2018-12-03 02:44:38 +07:00
Reinhard Pointner
e0dfd33af1 Remove junrar hack 2018-12-03 02:44:24 +07:00
Reinhard Pointner
f6efdbced8 Keyboard navigation doesn't work right unless there's a null token to end the line.
https://www.filebot.net/forums/viewtopic.php?f=6&t=9511&p=40230#p40230
2018-12-02 01:48:10 +07:00
Reinhard Pointner
eb8c5d850b Fix UI message 2018-12-02 00:03:51 +07:00
Reinhard Pointner
6dab4f8036 Make sure things work and compile with JDK8 2018-12-01 23:58:37 +07:00
Reinhard Pointner
fa491ce4c8 Make sure things work and compile with JDK8 2018-12-01 23:47:27 +07:00
Reinhard Pointner
cf3bc3802b Keyboard navigation doesn't work right unless there's a null token to end the line.
https://www.filebot.net/forums/viewtopic.php?f=6&t=9511&p=40230#p40230
2018-12-01 23:29:14 +07:00
Reinhard Pointner
7c7a2a54bf Support license activation via clipboard 2018-12-01 14:41:05 +07:00
Reinhard Pointner
e3877dcffb Refactor license parser 2018-12-01 14:00:50 +07:00
Reinhard Pointner
671703adb2 REVERT to avoid side effects and undocumented features 2018-12-01 04:20:03 +07:00
Reinhard Pointner
32abb2263c Support license activation via clipboard 2018-12-01 04:13:01 +07:00
Reinhard Pointner
35484ac730 If FileBot is called with --license with an interactive console, then force console license activation (to avoid issues when the GUI starts up but X is screwed up on some Linux systems, thus crashing on startup, failing to activate the license) 2018-11-29 01:55:03 +07:00
Reinhard Pointner
2dcb3ca2fc Fix license activation issues on headless machines 2018-11-29 01:50:56 +07:00
Reinhard Pointner
7b683f345a Fix APPX build 2018-11-24 03:01:59 +07:00
Reinhard Pointner
71f2262ddf Add keyboard shortcut F1 to FormatDialog to toggle the help / examples panel ON and OFF (to allow more space for large custom formats) 2018-11-23 15:51:00 +07:00
Reinhard Pointner
7ea854dcd1 Revert to -Dnet.filebot.Archive.7z=/path/to/7z to fix backwards compatibility issues 2018-11-19 22:26:19 +07:00
Reinhard Pointner
f5afeb6112 Strip JFX 2018-11-18 21:28:14 +07:00
Reinhard Pointner
6e8359913b Support Kodi Naming Standard (i.e. same as Plex, but with SxE and non-range based multi-episode formatting) via {kodi} binding 2018-11-18 00:50:34 +07:00
Reinhard Pointner
9eb07913b5 Sanity check subtitle file size before doing any kind of language detection, as to avoid java.lang.OutOfMemoryError issues when dealing with oddly large files.
* https://www.filebot.net/forums/viewtopic.php?f=4&t=5867&p=40063#p40061
2018-11-17 23:27:37 +07:00
Reinhard Pointner
b27844a41d Fix NPE in SubtitleMappingOptionRenderer 2018-11-07 21:10:41 +07:00
Reinhard Pointner
66b1141355 Port to OpenJDK 11 2018-11-06 15:50:20 +07:00
Reinhard Pointner
67e10db23d Fix NPE that crashes Swing EDT in Subtitles Panel (when search results includes odd languages) 2018-11-06 02:07:40 +07:00
Reinhard Pointner
b7fc1ecd81 print warning message if archive appears empty 2018-10-20 17:30:07 +07:00
Reinhard Pointner
b48da1a48c Make sure to avoid java.awt.HeadlessException if Desktop.moveToTrash() is called on headless Linux devices (possible issue breaking -revert on some Linux devices) 2018-09-20 20:39:53 +07:00
Reinhard Pointner
507e1c5df9 If FileBot is called with --license with an interactive console, then force console license activation (to avoid issues when the GUI starts up but X is screwed up on some Linux systems, thus crashing on startup, failing to activate the license) 2018-09-20 18:55:37 +07:00
Reinhard Pointner
360486848f Correctly deal with broken symlinks when using --conflict override
https://www.filebot.net/forums/viewtopic.php?f=6&t=6174
2018-09-02 11:07:08 +07:00
Reinhard Pointner
06eb06830d Notify the user if background computation is still in progress 2018-09-01 12:13:49 +07:00
Reinhard Pointner
9d15ac34b4 Make sure to not lock on Swing / AWT Window object
@see https://www.filebot.net/forums/viewtopic.php?f=11&t=5259&p=29747#p35519
2018-08-30 17:15:16 +07:00
Reinhard Pointner
b9572f4501 Make sure to not lock on Swing / AWT Window object
@see https://www.filebot.net/forums/viewtopic.php?f=11&t=5259&p=29747#p35519
2018-08-28 19:25:18 +07:00
Reinhard Pointner
aa8125e7e4 Improved support for rare SxE patterns (i.e. S1-01) 2018-08-25 12:50:06 +07:00
Reinhard Pointner
75347ae67f Enable new format expression token maker and syntax highlighting 2018-08-21 13:11:43 +07:00
Reinhard Pointner
aeb630d76a Enable new format expression token maker and syntax highlighting 2018-08-19 13:41:50 +07:00
Reinhard Pointner
a76f8a5753 XXX: org.apache.groovy.datetime.extensions.DateTimeExtensions is not registered for some reason in production (maybe a bug specific to Groovy 2.5.0) 2018-08-19 13:39:25 +07:00
Reinhard Pointner
720a535979 XXX: org.apache.groovy.datetime.extensions.DateTimeExtensions is not registered for some reason in production (maybe a bug specific to Groovy 2.5.0) 2018-08-19 12:37:32 +07:00
Reinhard Pointner
5681d103fa Simplify error messages 2018-08-17 11:40:36 +07:00
Reinhard Pointner
1a7e7b06c3 Add Object.toJsonString() convenience extension method 2018-08-16 14:04:09 +07:00
Reinhard Pointner
e2d867dc4d Remove -get-subtitles -r limit 2018-08-16 04:05:12 +07:00
Reinhard Pointner
945d5619c6 Try to fix 32-bit MWS support 2018-08-14 02:50:26 +07:00
Reinhard Pointner
61e2f54884 Try to fix 32-bit MWS support 2018-08-14 01:49:09 +07:00
Reinhard Pointner
2aa601fe3b Try to fix 32-bit MWS support 2018-08-13 19:41:06 +07:00
Reinhard Pointner
ef51f18c24 Try to fix 32-bit MWS support 2018-08-13 19:24:51 +07:00
Reinhard Pointner
a1c6251150 Try to fix 32-bit MWS support 2018-08-13 19:09:28 +07:00
Reinhard Pointner
665ed3094e Try to fix 32-bit MWS support 2018-08-13 19:06:13 +07:00
Reinhard Pointner
197d0e0b6b Try to fix 32-bit MWS support 2018-08-13 18:57:35 +07:00
Reinhard Pointner
7e4888d95f Try to fix 32-bit MWS support 2018-08-13 18:05:35 +07:00
Reinhard Pointner
28d126b5a8 Try to fix 32-bit MWS support 2018-08-13 15:50:12 +07:00
Reinhard Pointner
7da577e3db Fix MAS builds 2018-08-11 14:16:54 +07:00
Reinhard Pointner
87cc92656a Fix MAS builds 2018-08-10 17:57:46 +07:00
Reinhard Pointner
fcd331ba59 Fix MAS builds 2018-08-10 17:15:12 +07:00
Reinhard Pointner
69d523384c Fix MAS builds 2018-08-10 16:42:56 +07:00
Reinhard Pointner
bab16812d0 Fix MAS builds 2018-08-10 15:44:39 +07:00
Reinhard Pointner
9a7bf15ab9 Fix MAS builds 2018-08-10 14:44:45 +07:00
Reinhard Pointner
4527c0c6af Fix MAS builds 2018-08-09 13:58:04 +07:00
Reinhard Pointner
c6010fc7fc import static javax.swing.BorderFactory.*; 2018-08-08 14:50:22 +07:00
Reinhard Pointner
4af2a68376 Apply different themes to GroovyPad RSTA Code and Console 2018-08-08 14:50:08 +07:00
Reinhard Pointner
e5af729901 Apply different themes to GroovyPad RSTA Code and Console 2018-08-06 01:38:45 +07:00
Reinhard Pointner
a851b13a91 Apply different themes to GroovyPad RSTA Code and Console 2018-08-06 00:10:18 +07:00
Reinhard Pointner
b6bc21f26c Experiment with first class RSTA support 2018-08-05 19:02:20 +07:00
Reinhard Pointner
0d8d007ef4 Read and cache EXIF metadata only once while preserving File-mode backwards-compatibility 2018-08-04 22:40:13 +07:00
Reinhard Pointner
7ab9bb779c Refactor local datasources (exif, xattr, file) 2018-08-04 17:48:41 +07:00
Reinhard Pointner
b425ab6d42 Bring --db exif -non-strict behaviour in line with --db xattr -non-strict 2018-08-04 17:04:41 +07:00