0
Fork 0
mirror of https://github.com/willnorris/imageproxy.git synced 2024-12-16 21:56:43 -05:00
Commit graph

363 commits

Author SHA1 Message Date
Will Norris
e7f9017674 dockerfile: use go 1.9
- setting myself as maintainer.  I've played with docker enough at this
point that I feel a bit more comfortable maintaining this
- name the build image
2017-10-07 03:10:11 +00:00
matematik7
837e72352f dockerfile: use scratch image to reduce size
Fixes #113
2017-10-07 03:09:33 +00:00
Will Norris
37c9f4d6ab preserve original URL encoding
fixes #115
2017-10-05 17:57:41 +00:00
Will Norris
7dbadc01d4 list image with smart crop first to match text 2017-09-27 03:47:08 +00:00
Will Norris
afbd254cdc add smartcrop feature
fixes #55
2017-09-27 00:54:15 +00:00
Will Norris
20c0a50a31 vendor: add github.com/muesli/smartcrop and deps 2017-09-27 00:35:00 +00:00
Will Norris
ba2da75102 parse crop and resize params before transforms 2017-09-27 00:04:04 +00:00
Will Norris
8eee5513ab refactor cropParams to return image.Rectangle 2017-09-26 20:55:03 +00:00
Will Norris
9fcdcadfa4 update README
- mention caching options in feature overview
- remove not about fetching with go1.2
2017-09-26 15:49:08 +00:00
James Reggio
ebcfb52f3a Fix interpretation of Last-Modified and If-Modified-Since headers
If the dates in `Last-Modified` and `If-Modified-Since` are an exact
match, the server should 304.
2017-09-23 17:01:24 -07:00
Will Norris
50c30f1f85 update/simplify travis config 2017-09-23 20:46:44 +00:00
Will Norris
91a4a63740 vendor: add github.com/die-net/lrucache 2017-09-17 11:20:04 +00:00
Will Norris
13409fd7c6 add support for tiered caches
The -cache flag can be specified multiple times to create a tier of
caches.  Typically this would be used to be put a small in-memory cache
in front of a slower on-disk cache.

Fixes #111
2017-09-17 11:20:04 +00:00
Will Norris
a57047ff22 replace in-memory cache with size-limited lrucache
Fixes #4
2017-09-17 11:13:22 +00:00
Will Norris
db55cb60f8 sort cache select cases 2017-09-17 11:12:11 +00:00
Will Norris
a4304294da vendor: remove unused packages 2017-09-12 05:16:22 +00:00
Will Norris
7338ef68ef switch from glog to standard log library
add "-verbose" flag for more logging.

fixes #105
2017-09-12 05:14:46 +00:00
Will Norris
9654679655 vendor: remove unused packages 2017-09-12 04:47:38 +00:00
Will Norris
c751f5b2c9 vendor: add aws-sdk-go and dependencies 2017-09-12 04:47:38 +00:00
Will Norris
0ee5167444 switch to official AWS Go SDK
This uses the official Go SDK from Amazon, which supports the newer v4
authentication method.  Fixes #74.  Doing so also required adding a new
s3cache package which uses the official SDK.

THIS IS A BREAKING CHANGE for anyone that uses s3, since the syntax of
the command line flag is now different.  This is unfortunately necessary
because aws-sdk-go always requires the region to be explicitly declared,
which wasn't always the case with the previous format.  This breaking
change is unfortunate, but given that the other s3 package hasn't seen
updates in years, and so many new S3 regions only support the newer v4
authentication method, it's necessary.
2017-09-12 04:44:43 +00:00
Will Norris
5264eb6db0 remove long-deprecated cacheDir and cacheSize flags 2017-09-09 08:33:06 +00:00
Will Norris
5ee7e282cf return a 200 OK for requests to root /
This has come up a couple of times, such as in #95.  As discussed there,
I'm not completely sure this is actually necessary in many cases, but
it's certainly not harmful and if it makes health checks easier to setup
than why not?
2017-09-09 08:31:22 +00:00
Will Norris
955ea12402 remove goxc stuff and update deploy docs
I don't use goxc anymore, and it hasn't been an active project in a
really long time, so there's no need in referencing it.
2017-09-09 08:14:25 +00:00
Will Norris
4aa8e01f60 add my personal systemd config 2017-09-09 08:11:47 +00:00
Will Norris
6b1cc060a0 vendor: add github.com/gregjones/httpcache/redis 2017-09-09 07:16:02 +00:00
Will Norris
dbfc693aea add support for redis cache backend
fixes #49
2017-09-09 07:14:44 +00:00
Will Norris
2d4bf70da0 vendor: add github.com/rwcarlsen/goexif 2017-09-09 06:13:33 +00:00
Will Norris
67619a67ae add support for exif orientation tag
if any transformation is requested, first apply any additional
transformation necessary to correct for the EXIF orientation tag, since
it is stripped from the resulting image.

Fixes #63
2017-09-09 06:13:33 +00:00
Will Norris
07c54b46e3 normalize rotate values
A -90 or 630 degree rotation is the same as 270.
2017-09-09 06:12:19 +00:00
Will Norris
76c8498abe vendor: add packages needed for azure support 2017-09-09 06:12:15 +00:00
Paul Roy
f1ef8af9ec adding azure support 2017-09-08 15:47:35 +00:00
Will Norris
03d75816a0 fix ordering of flip and rotation transformations
Fixes #112
2017-09-06 22:01:13 +00:00
Diego Marangoni
4b637567e3 add GCS cache 2017-09-01 20:46:05 +00:00
Will Norris
0fe3656939 vendor: add github.com/diegomarangoni/gcscache
also include all transitive dependencies of gcscache, which seems to
bring in the entire world of Google Cloud Platform.
2017-09-01 20:46:05 +00:00
Diego Marangoni
fcb6465a29 uprade to Go version 1.8
This is needed for upcoming dependencies for Google Cloud Storage
support.
2017-09-01 20:24:40 +00:00
Will Norris
817908938e allow forcing encoding as tiff 2017-08-31 17:06:22 -07:00
Michael Carey
c1a9dab401 Support TIFF images. 2017-08-31 13:04:10 -07:00
Will Norris
4533f0c68a allow crop options to be floats and negative
values between 0 and 1 have the same behavior as the size option - it is
treated as a percentage of the original image size.  Negative values for
cx and cy are calculated from the bottom and right edges of the image.
2017-08-31 07:27:35 +00:00
Will Norris
430baac0b0 minor cleanup to README and options docs
- remove unnecessary option example
- add option example for format changes
- move `-help` text to bottom of section
2017-08-31 07:25:02 +00:00
Will Norris
81cb74ef7e add evaluateFloat helper function 2017-08-31 04:42:52 +00:00
Will Norris
a33df59013 reorder rectangular crop parameters
change to x, y, width, height to more closely align with how parameters
are passed in the image package.
2017-08-31 03:50:25 +00:00
Maciej Tarnowski
1b70c6afd0 Implement rectangular crop functionality
Fixes #19
2017-08-31 03:50:25 +00:00
Will Norris
3211eeb13b bump to 0.6.0 2017-08-30 03:11:41 +00:00
Romanos
50f6f640b2 Enable CORS for 3rd party applications 2017-06-20 08:24:55 -07:00
Will Norris
d64b0f81c9 return 304 from TransformingTransport
If the caching headers in the request are valid, return a 304 response
instead of doing the transformation.

Ref #92
2017-06-14 20:25:56 -04:00
Will Norris
a7a04ebe7b simplify copyHeader func
- take simple http.Header values as input, rather than http.Response
- allow multiple headers to be copied to be specified.  If no headers
  specified, then copy all.
2017-06-14 17:22:45 -04:00
Will Norris
c81621ae35 rename check304 to should304
this reads a little better in if blocks
2017-06-14 16:34:34 -04:00
Will Norris
fb63cbe9df use strings.Join to construct options string 2017-06-01 09:53:29 -07:00
Will Norris
a85bfef357 quality adjustment is a transforming option
allow transformation where all that is changed is the image quality and
nothing else.
2017-06-01 09:40:12 -07:00
Will Norris
b5984d2822 update all downstream dependencies
no specific features I'm looking to add, just keeping thing up to date.
Unit tests and my manual testing seems like everything is still working
as expected.
2017-06-01 08:37:07 -07:00