Commit Graph

404 Commits

Author SHA1 Message Date
Aaron Boodman 8e64e636aa Introduce photo-dedup-by-date (#2826)
Introduce photo-dedup-by-date

This program deduplicates photos by the date they were taken. It considers two photos a group if they were separated by less than 5 seconds.
2016-11-15 14:07:57 -08:00
Aaron Boodman 03434861ea coffeebot: don't do anything until 10a each day (#2834)
this way easier for message to be seen
2016-11-15 02:24:48 -08:00
Ben Kalman 401a878478 Add auth parameter to Splore (#2820) 2016-11-10 16:14:03 -08:00
Erik Arvidsson 257520c287 Sync photo-set-iterator.js between repos (#2818) 2016-11-10 15:45:04 -08:00
zcstarr 3afbd11578 Remove dependency on bash shell from package (#2817) 2016-11-10 14:38:42 -08:00
Ben Kalman cdfbee1b3d Remove spec GetDataset/GetDatabase/GetPath, update all clients (#2815)
These are now ForDataset/ForDatabase/ForPath.
2016-11-09 17:34:39 -08:00
Erik Arvidsson 45a36a46e9 Change to use interface instead of declare (#2816) 2016-11-09 15:38:58 -08:00
Dan Willhite b6b1389c30 Danloader (#2794)
* Downloader

* Review changes
2016-11-08 16:46:55 -08:00
Aaron Boodman a0f489bc1c Remove temporary time-based dedup from webui (#2814) 2016-11-08 14:59:03 -08:00
Ben Kalman 172b991ac1 Port new Spec API to Go from JS (#2807)
This is a side-by-side port, taking inspiration from the old dataspec.go
code. Notably:

- LDB support has been added in Go. It wasn't needed in JS.
- There is an Href() method on Spec now.
- Go now handles IPV6.
- Go no longer treats access_token specially.
- Go now has Pin.
- I found some issues in the JS while doing this, I'll fix later.

I've also updated the config code to use the new API so that basically
all the Go samples use the code, even if they don't really change.
2016-11-08 14:18:47 -08:00
Aaron Boodman 1f773a1c18 fix timezone in coffeebot (#2811) 2016-11-07 20:40:58 -08:00
Aaron Boodman 508a4dd3b5 coffeebot: remove secret url (#2810) 2016-11-07 17:36:28 -08:00
Aaron Boodman f51da13e44 Add coffee bot (#2809)
* Add coffee bot

* fix order
2016-11-07 17:25:58 -08:00
Ben Kalman 5ab12777f6 Remove the demo server and receipt code (again) (#2808) 2016-11-07 15:13:28 -08:00
Erik Arvidsson 1775c3805a Update to Flow 0.34 (#2803) 2016-11-07 08:32:24 -08:00
Dan Willhite 46586ee928 Remove msg args from d.PanicIfTrue and d.PanicIfFalse. (#2757)
Should discourage people from writing code that does unnecessary work
to generate a msg every time that an error condition is checked. Fixes #2741
2016-11-03 11:43:57 -07:00
Eric Halpern 74df877747 Don't print warning unless -v (#2799) 2016-11-03 11:05:02 -07:00
Eric Halpern 11cc65ca7c Add jobs for grouping similar photos in PhotoGroups (#2789)
* Add jobs for grouping similar photos in PhotoGroups

Outline:
- The first photo-dhash job adds a dhash field to each photo. The dhash is a 128 bit
  downsampled representation of the photo that works well for visual similarity comparisions.
- The second photo-dedup job groups photos that have similar dhash's into PhotoGroups.

fixes: #2787
2016-11-02 12:06:54 -07:00
Ben Kalman 50c48be4b8 Noms, demo-server, and photos UI changes to support auth (#2793)
The big change here is adding a new Spec class in spec.js. This replaces
DatabaseSpec/DatasetSpec/PathSpec in specs.js, but I'm leaving those in
and moving code over in a later patch. For now, only photos UI.

The photos UI change is to plumb through the authorization token through
the Spec code. For now, it's reading it from a URL parameter, but soon
I'll make it session based (probably localStorage).

The demo-server change is to add the Authorization header into CORS.
2016-11-02 11:57:07 -07:00
Ben Kalman bbfc27d7fe Revert "Remove demo-server and receipts code" (#2791) 2016-10-31 17:10:17 -07:00
Ben Kalman ba5e309c84 Remove demo-server and receipts code (#2790)
They're in attic now: https://github.com/attic-labs/attic
2016-10-31 17:08:18 -07:00
Ben Kalman 26391d9d57 Implement private databases for the demo server (#2772)
Private databases begin with "/p/" - for example, "/kalman" is not
private, but "/p/kalman" is private. They are not the same database.

The bulk of this work is the receipt infrastructure.

A receipt is form data that gives access to a database, encrypted using
secretbox. For example, "Database=/p/kalman&Date=12345678" might encrypt
to "SFH5bcIJ3_XgEbtmi_AdCKTItW20fl90czVl5_pF5PAXhNQ366U1yOpYGAjT".

* A new tool receiptkey generates random receipt (secretbox) keys.
* A new tool receipttool generates receipts for databases.
* demo-server has been updated to check for a receipt in the
  Authorization header to access private databases.

receipttool and demo-server must be given the same receipt key.
2016-10-31 10:58:33 -07:00
Dan Willhite 82f2a1218b Add resources field to find-photo's Photo object (#2778) 2016-10-30 14:21:35 -07:00
Erik Arvidsson 9a3a119e60 Update build scripts to use the installed node (#2781) 2016-10-28 18:01:07 -07:00
Erik Arvidsson 7983e61afc Use babel-preset-noms (#2780) 2016-10-28 15:04:20 -07:00
Erik Arvidsson bbea22b395 Mark non standalone packages as private (#2773)
This prevents us from doing npm publish on them.

https://docs.npmjs.com/files/package.json#private
2016-10-27 17:05:21 -07:00
cmasone-attic f2ca3d6e8e Add noms merge (#2768)
Add optional merging functionality to noms commit.
noms merge <database> <left-dataset-name> <right-dataset-name> <output-dataset-name>

The command above will look in the given Database for the two named
Datasets and, if possible, merge their HeadValue()s and commit the
result back to <output-dataset-name>.

Fixes #2535
2016-10-27 15:27:36 -07:00
Erik Arvidsson 8320cb6d28 Use the eslint-config-noms instead (#2767) 2016-10-27 13:28:26 -07:00
zcstarr fdf86980d5 Adds face merge functionality to photos (#2750)
Performs face merge functionality, it takes a photo's set of
face center points and face rectangles and returns the
set of faces in which the face rectangle contains the face
center point. We store a new photo object with a set of faces, that
have the names from the face center points and the rectangles from the
face rectangles.
2016-10-26 09:28:16 -07:00
Erik Arvidsson c15a2bb770 Use a newer version of @attic/eslintrc (#2758) 2016-10-25 16:58:02 -07:00
Aaron Boodman fd7c1cc14d Make dropbox work with the photos sample (#2745)
* dropbox/find-photos: encode auth token in photo URLs so they can
work in UI.

* Remove requirement for datePublished from photo-index

Dropbox doesn't have a publish date

* fix test

* review comments

* npm test
2016-10-21 14:49:03 -07:00
Ben Kalman cf296b48ca Fix photo set intersection bug (#2746) 2016-10-21 14:28:42 -07:00
Aaron Boodman 3afbc18079 picasa/slurp: use the redirect-less flow instead (#2732)
picasa/slurp: use the redirect-less flow instead
2016-10-20 21:32:41 -07:00
Aaron Boodman b9e104bfbd Fix date grouping logic (#2740)
Fix timestamp grouping
2016-10-20 09:49:45 -07:00
Aaron Boodman 7099c89bc9 Introduce the concept of an 'id' to several samples (#2738) 2016-10-20 09:49:22 -07:00
Aaron Boodman 02d0a8e8f7 ['foo'] -> .foo (#2736) 2016-10-20 06:51:40 -07:00
zcstarr d055fb5a37 Refactors face rectangle to face center point (#2737) 2016-10-19 15:37:07 -07:00
Erik Arvidsson e164f8aeec Flow header after copyright (#2734)
This puts the flow header after the copyright header.

It also:
 * fixes the existing files to have valid headers
 * Makes sure the script can handle doctype
2016-10-19 11:36:48 -07:00
Aaron Boodman 3adab7a874 picasa/find-photos (#2714)
* Introduce picasa/find-photos

* npm test
2016-10-19 09:07:49 -07:00
Aaron Boodman 067dc268ae Only dedupe photos by dateTaken, not datePublished (#2730)
Only dedupe photos by dateTaken, not datePublished

It's very common for groups of photos to have same datePublished
2016-10-18 17:39:47 -07:00
Aaron Boodman 4b843b8600 Introduce dropbox/find-photos (#2712)
Introduce dropbox/find-photos
2016-10-16 21:37:45 -07:00
Aaron Boodman 4ae6b16ac4 picasa/slurp: command-line flags should use dash not underscore (#2713) 2016-10-14 21:18:49 -07:00
Aaron Boodman f487358046 dropbox/slurp: path is optional (#2710) 2016-10-14 20:59:55 -07:00
Aaron Boodman 233af18525 dropbox/slurp: add ability to restrict import to a path prefix (#2709) 2016-10-14 14:24:52 -07:00
Ben Kalman 35495aa69a Add Picasa slurp importer (#2701) 2016-10-13 21:51:22 -07:00
Aaron Boodman 8fe85df1a4 Introduce samples/js/dropbox/slurp (#2702)
* Introduce samples/js/dropbox/slurp

Doing the filter step will be a bit different because Dropbox does
not provide secret URLs for every photo by default. Requests have
to be oauth-authenticated so we'll have to figure out how to do
that.

* vendor golang.org/x/oauth2 and golang.org/x/net

* Introduce oauthify and modify dropbox/slurp to use
2016-10-13 17:34:37 -07:00
Erik Arvidsson 5619d2b3ac Update Flow to 0.33 (#2692) 2016-10-12 14:17:49 -07:00
Aaron Boodman 5191b136c2 fb/slurp: fix eslint error (#2697) 2016-10-12 08:58:20 -07:00
Aaron Boodman 71b949489c fb: fix paging logic (#2691)
We didn't notice this before because none of us had enough fb data
to cause it to page.
2016-10-11 17:09:17 -07:00
cmasone-attic 23f94bdf8c demo-server: Remove cachingReadThroughChunkStoreFactory (#2689)
demo-server was using a read-through cache to allow it to serve more
concurrent requests more quickly by reducing disk I/O. As seen in issue
across Databases, leading to incorrect sync results in some instances.

Since we're not worried about demo-server load right now, simply delete
the cache.

Fixes #2688
2016-10-10 14:14:54 -07:00