2
0
mirror of https://github.com/thumbsup/thumbsup synced 2024-11-15 18:12:46 +00:00
Commit Graph

83 Commits

Author SHA1 Message Date
Romain
06ecd2edad Add usage reporting with Google Analytics + greeting/error messages
This will help understand usage patterns to know what to focus on, e.g.
- are many people using thumbsup on Windows?
- are there many galleries with > 10,000 photos?
2017-12-08 00:04:16 +11:00
Romain
067238c8e4 2.2.0-alpha.3 2017-11-29 21:06:42 +11:00
Romain
0b8eb5bbd9 2.2.0-alpha.2 2017-11-29 08:49:26 +11:00
Romain
d19a230a6c Cleanup unused code 2017-11-28 21:50:44 +11:00
Romain
e9e5f32970 Add test coverage + clean up build scripts 2017-11-28 07:53:55 +11:00
Romain
2a0a8d6631 Upgrade mock-fs to support Node 8 (includes dynamic require workaround) 2017-11-26 22:47:51 +11:00
Romain
cbf8a1f3b4 Don’t index media from Synology thumbnail folders (@eaDir) nor folders starting with “.” 2017-11-26 22:32:03 +11:00
Romain
ac520d40ad Fix case insensitive glob + add unit tests for globbing 2017-11-26 21:21:15 +11:00
Romain
d66b28b12c 2.2.0-alpha.1 2017-11-26 09:18:00 +11:00
Romain
870b60de17 Simplify test scripts & document them in CONTRIBUTING.md 2017-11-25 22:29:21 +11:00
Romain
208f0f0212 Run full integration tests inside Docker. Travis runs unit + integration. 2017-11-25 22:01:30 +11:00
Romain
24b2f9bd7c Major optimisations: SQLite index + faster disk glob + new exiftool streaming
1. Move from a JSON index to a SQLite database.
  - This allows the indexing to be interrupted & resumed
  - Updating the index consumes less RAM than loading / saving an entire JSON object
  - Loading the index consumes less RAM since it can be streamed, only exacting the properties we need every time (instead of loading all EXIF data in memory, only to discard most of it later)
  - These make a big difference when processing 10,000+ photos

2. Switch from <glob> to a manual <readdir>
  - Glob would take several hundred or GB of RAM when asked to find several thousand files
  - Manual approach with <micromatch> library does the same thing in a fraction of the time / memory usage

3. Exiftool optimisations
  - Run 1 exiftool process per CPU, still in batch mode (divide all files to be read into 1 bucket per CPU)
  - Stream the exiftool output instead of buffering it in memory
2017-11-24 22:08:59 +11:00
Romain
30f203af4b Render progress using Listr + split the main process into "steps" which are easier to test 2017-11-06 00:02:42 +11:00
Romain
179cc57644 Update “debug” package to fix insecure vulnerability warning 2017-10-12 20:18:11 +11:00
Romain
97a6e348cc Update all dependencies 2017-10-12 20:12:50 +11:00
Romain
35f9ee96b6 Update many dependencies to latest 2017-08-15 19:08:53 +10:00
Romain
0b27d37881 Read metadata from Picasa.ini if present 2017-08-07 22:53:04 +10:00
Romain
3e64d2ab38 Create a Metadata model attached to input files
- for easier unit testing
- to enable input filtering (e.g. only include photos with this keyword)
2017-08-07 22:52:26 +10:00
Romain
5074fb267f 2.1.0 2017-07-23 21:40:23 +10:00
Romain
ac67a08da9 Use new “downsize” package that was split out (to make testing edge cases easier) 2017-07-15 20:22:46 +10:00
Romain
80f7a88c35 Fix #61: new options to avoid copying original photos to the output folder 2017-06-03 21:25:41 +10:00
Romain
92706276a0 Fix Github URL in package.json 2017-05-29 17:34:33 +10:00
Romain
96cd92aa46 2.0.1 2017-05-25 21:44:27 +10:00
Romain
8b66a16134 2.0.0 2017-03-20 20:51:21 +11:00
Romain
91e55daf9b Upgrade VideoJS to 5.17 2017-03-11 10:05:27 +11:00
Romain
fb77791c80 Fix #33: new --cleanup option to remove unused generated thumbnails/media 2017-03-09 22:40:41 +11:00
Romain
5d82cabd1c Run full CI build locally as part of "npm test" to avoid surprises 2017-03-07 17:44:17 +11:00
Romain
59b9bdbbd2 Use <standard> for code style, which removed lots of unused variables/requires 2017-03-06 23:46:46 +11:00
Romain
e71e5d4207 Replace custom "make" DSL with the output task list (#60) 2017-03-06 23:27:44 +11:00
Romain
631aee6a4d 2.0.0-alpha.4 2017-03-01 22:01:35 +11:00
Romain
8dccb88f25 Use [exiftool-json-db] to maintain the JSON database of media files 2017-02-28 00:13:45 +11:00
Romain
dcb06c5242 2.0.0-alpha.3 2017-02-18 16:41:31 +11:00
Romain
38a6969eac Fix lightgallery version to fix #53.
There seems to be a breaking change between 1.2.14 and 1.3.5
where light gallery doesn't bundle-in the plugins.
Instead they're available for download as separate npm modules.

Will need to fix that if we want to upgrade to the latest version of lightgallery.
2017-02-06 17:33:44 +11:00
Romain
1817aec7e4 Update package.json with new repository details 2017-02-05 11:04:10 +11:00
Romain
9eec5c3a0a 2.0.0-alpha.2 2017-02-05 11:00:45 +11:00
Romain
c98227fde4 2.0.0-alpha.1 2017-01-26 16:00:27 +11:00
Romain
21e4a3fae2 Add "npm test" to quickly run unit tests without the full build 2016-11-15 09:35:24 +11:00
Romain
6bfba60918 Update all dependencies + full build script in scripts/cibuild 2016-11-12 15:27:16 +11:00
Romain
6565acb259 Update README.md 2016-11-12 07:35:13 +11:00
Romain
5117c19eed Cleanup CLI and validate multiple-choice arguments 2016-11-03 13:17:31 +11:00
Romain Prieto
a47259b220 Fix README table of contents 2016-10-16 13:51:32 +11:00
Romain Prieto
9c0071c00d Work in progress: support multiple themes 2016-10-15 23:22:22 +11:00
Romain Prieto
c2f290bbd6 thumbsup v2: rewrite the website around 'albums' 2016-10-13 18:49:15 +11:00
Romain
3c4e5ad877 Move the website from gh-pages to a /docs subfolder (new Github feature) (#39)
Much easier to manage
2016-09-28 22:27:16 +10:00
Romain Prieto
4baf46031c Cleanup README and add table of contents 2016-09-27 18:39:21 +10:00
Romain Prieto
820f5649b2 1.1.2 2016-01-27 08:03:25 +11:00
Romain Prieto
b4378356f1 Update all packages, now compatible with Node 5 2016-01-22 12:27:26 +11:00
Romain Prieto
892c9380b8 1.1.0 2015-10-19 22:44:11 +11:00
Romain Prieto
7d6afac2d0 Upgrade to LightGallery 1.2.2, and use VideoJS for playing videos 2015-09-22 19:46:52 +10:00
Romain Prieto
9473462871 Move to lightgallery instead of blueimp (had video player issues) 2015-08-24 23:22:09 +10:00