Commit Graph

544 Commits

Author SHA1 Message Date
Jeff Kaufman d53a49bfbb Add angular 1.5.1, jquery 1.12.1, jquery 2.2.2, and spf 2.3.2. 2016-03-21 17:24:57 -04:00
Jeff Kaufman c47224cffa Use kFilterId more consistently. 2016-03-21 17:22:42 -04:00
Joshua Marantz ad71403117 HtmlFilter that recognizes Amp Documents, calling a callback as soon as
the AMP-ness is discovered.

Continues addressing
https://github.com/pagespeed/mod_pagespeed/issues/1263 .

See also: https://github.com/ampproject/amphtml/issues/2380
2016-03-18 23:41:29 -04:00
Joshua Marantz 186740f895 Identify filters that add scripts, and ensure that we don't miss any
script-adding features with a DCHECK.  In a later CL this bool method
will be used to disable filters that inject scripts when serving AMP
documents.
2016-03-18 10:33:35 -04:00
Steve Hill f8d7fc47cf Re-factor ExpensiveOperationContext and ScheduleRewriteContext to be
pure virtual. This will allow the contexts to have completely different
implementations for RPC or "local" access, which is a pre-req for gRPC.
This also removes some redundancy in the controller class heirarchy.
2016-03-16 18:56:40 -04:00
Steve Hill f71db40a27 Adjust ImageRewriteTest size treshold a little. 2016-03-16 18:53:49 -04:00
Maks Orlovich a7aaf15e19 Set http2 bit if indicated by mod_h2 or Via: header
Also internally treated h2 requests as http/1.1 (so we don't
risk leaking 2.0 into a plain HTTP get or such)
2016-03-10 09:05:22 -05:00
Jud Porter 620d55a060 Remove the unused menu button and nav panel classes. Also remove a bunch of outdated stuff from the mobilization css. 2016-03-09 18:06:06 -05:00
Maks Orlovich c1ed50cebf Add a special slot for rewriting things inside srcset's.
Tested, but not used by anything yet.

Step towards fixing https://github.com/pagespeed/mod_pagespeed/issues/1274
2016-03-09 15:46:01 -05:00
Huibao Lin 2c015d6b6f Remove option max_image_bytes_for_webp_in_css 2016-03-09 08:53:09 -05:00
Jud Porter 495d27b51d Remove the MobilizeCachedFinder. 2016-03-07 18:34:50 -05:00
Jud Porter 86da4fc42a Remove checks of psLabeledMode option in mobilization JS. 2016-03-07 18:05:00 -05:00
Jeff Kaufman 9bf75235c6 Add centralized process
This change adds two processes: a controller, and a babysitter. The
controller process is intended to host cheesy's controller work. The
babysitter process just waits around in case the controller dies and
restarts it if it does.

In order to exit when the host process exits, the controller watches a
pipe.  If reading from that pipe gets an EOF, then it knows the master
quit and it can quit itself. If the master wants to quit the controller
to load a new one with an updated configuration, it can write a byte to
the pipe, which the controller will see and exit.

Reviewed in https://github.com/pagespeed/mod_pagespeed/pull/1260

Companion nginx change: https://github.com/pagespeed/ngx_pagespeed/pull/1113
2016-03-07 16:06:35 -05:00
Huibao Lin e38ededfb5 Add convert_png_to_jpeg to recompress_images group 2016-03-07 15:54:14 -05:00
Maks Orlovich c84b75d3d2 Give up on cleaning up gflags on exit, it races
with some stuff in google-land.
2016-03-07 12:16:26 -05:00
Huibao Lin b92ddc14a2 Add system tests for image format, quality, and response in IPRO
Test image rewrites in IPRO for
- 3 quality levels: (1) desktop quality, (2) mobile quality, (3)
  Save-Data quality
- 3 user-agents: (1) Chrome on Android, (2) Safari on iOS, (3) Firefox
  on desktop
- 4 types of image: (1) JPEG, (2) Photographic PNG, (3)
  Non-photographic PNG, (4) animation
- 2 request headers: (1) Via, (2) Save-Data
- 3 AllowVaryOn options: (1) Auto, (2) Accept, (3) None.

Verify
- Content type (aka image type)
- Vary response header
- Content length (aka image quality)
2016-03-07 11:35:50 -05:00
Jeff Kaufman b651c7870b Style fixups and Google-specific fixess for 54983f4 2016-03-04 18:17:52 -05:00
Jeff Kaufman 54983f4ddd Merge pull request #1204 from pagespeed/keesspoelstra-strip-subresource-hints
Strip subresource hints / issue 973
2016-03-04 18:06:26 -05:00
Maks Orlovich 0e79a08a76 Relax CSS inlining charset check to always permit ASCII-only data.
Needed for fonts.g.c due to apparent recent changes (and us not
permitting inlining there was making the corresponding continuous tests
fail).
2016-03-04 14:45:37 -05:00
Jud Porter fef64d315c Remove unused ghost_click_buster. 2016-02-29 19:03:43 -05:00
Joshua Marantz de580d67aa Go back to using a shared scheduler for apache ipro requests. It turns
out that we weren't running scheduler-based locks while running the
tasks on a driver's private scheduler.

Includes a new unit-test that spins forever without this change.
2016-02-29 17:06:54 -05:00
Jud Porter 4e1143bd26 Add feature_id for maps. (from jmaessen) 2016-02-29 13:53:56 -05:00
Jud Porter 391a13e5b0 Remove more mobilization code, including the decision tree code and support for unused options in mobilize_rewrite_filter like layout mode. 2016-02-29 13:53:05 -05:00
Jud Porter 32b5edd7f9 Remove unused mobilization code. 2016-02-24 09:50:39 -05:00
Steve Hill d2b48ffdfa Switch some deprected proto fields to reserved. 2016-02-23 16:03:06 -05:00
Steve Hill 38842d11ce Upgrade our open source protobuf compiler. 2016-02-23 15:07:15 -05:00
Jan-Willem Maessen 0812d456a9 Update generated JS library code. 2016-02-23 13:55:22 -05:00
Steve Hill e8c03dd80a Add some explicit casts to int64 that are required with the newer proto
compiler, which uses google::protobuf::int64.
2016-02-22 13:59:57 -05:00
Huibao Lin c0b22d1cd2 Rewrite images for Save-Data mode 2016-02-19 15:53:01 -05:00
Huibao Lin 79eb6faa7a Add helper method SupportSaveData 2016-02-19 15:43:43 -05:00
Steve Hill 89f54b920e Fix calls to ReleaseCreationLock so that retries work as expected. 2016-02-18 17:45:16 -05:00
Huibao Lin b98bf9a12b Rename SupportsSaveData to RequestsSaveData 2016-02-18 10:40:05 -05:00
Jud Porter 74d705a62e Remove unused critical_xpaths.js 2016-02-17 09:28:43 -05:00
Huibao Lin 6c0be2e754 Detect Save-Data and Via request headers 2016-02-17 08:31:24 -05:00
Huibao Lin 5da54d8c0a Add utilities for computing image qualities 2016-02-17 08:29:04 -05:00
Huibao Lin e6864494f6 Add set_allow_vary_on method 2016-02-16 14:16:05 -05:00
Jud Porter fd4e636b61 Remove the critical line finder classes, which were used by split html. 2016-02-16 11:40:01 -05:00
Jud Porter 8c44f5a1b2 Update closure compiler and library to v20160208. 2016-02-16 11:00:43 -05:00
Jud Porter c316936298 Remove split html user agent checks. 2016-02-12 23:26:57 -05:00
Jud Porter c174ea4dbc Compiled JS update. 2016-02-12 20:41:49 -05:00
Joshua Marantz d647d454b3 Use AtomicBool for executing_rewrite_tasks_ to avoid a race condition
around concurrent writes of 'true'.  Note that this variable is only
used to implement a CHECK to ensure order of operations in an API.
2016-02-12 16:34:56 -05:00
Joshua Marantz 7c30b7ec44 height:0% should not be minified to height:0
Fixes https://github.com/pagespeed/mod_pagespeed/issues/1261
2016-02-11 11:25:06 -05:00
Joshua Marantz 60f80184b3 Optionally run mod_pagespeed ipro rewrite tasks on the request thread.
Change to having ApacheFetch block using the scheduler rather than
TimedWait on its own condvar, whenever there is a RewriteDriver.  This
allows in-place deadlines to work, and eliminates the 'abandoned' state
of ApacheFetch, simplifying its code and usage.

Added a Sequence* to CacheUrlAsyncFetcher in order to synchronize the
memcached cache response with the request-thread.
2016-02-10 14:35:37 -05:00
Huibao Lin 1fef4af9fb Add 3 options for supporting Save-Data mode:
- AllowVaryOn
- JpegQualityForSaveData
- WebpQualityForSaveData
2016-02-09 13:10:51 -05:00
Maks Orlovich 6d5fbbfda8 CriticalSelectorsEnable() is now trivial, inline + remove it. 2016-02-09 13:00:47 -05:00
Maks Orlovich cef377fdbc Update libraries catalog 2016-02-09 10:49:04 -05:00
Maks Orlovich 6695cf2755 Get rid of old critical_css_filter --- replaced by critical_selector_filter.
This did require adding some annoying glue to set up the pcache in a couple of tests.
2016-02-09 10:48:47 -05:00
Joshua Marantz bce5cf3fad Factor out a test helper class for fetching with a notifier for re-use
in new code.
2016-02-05 18:03:01 -05:00
Jud Porter 8bd899f2de Update compiled JS. 2016-02-03 10:20:55 -05:00
Jud Porter f60390045c Remove unused xhr.js files. 2016-02-03 10:19:46 -05:00