Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(datafile manager): Node datafile requests use gzip,deflate compression #456

Merged
merged 8 commits into from
Apr 17, 2020

Conversation

mjc1283
Copy link
Contributor

@mjc1283 mjc1283 commented Apr 16, 2020

Summary

Update Node datafile manager request code to support gzip or deflate compression. Uses the decompress-response library.

  • Add accept-encoding: gzip,deflate request header
  • Decode response body when content-encoding response header indicates encoded body

Test plan

Manual testing, new unit test, existing unit tests

Issues

OASIS-6294

@mjc1283 mjc1283 added the WIP label Apr 16, 2020
@mjc1283 mjc1283 self-assigned this Apr 16, 2020
@tylerbrandt
Copy link
Contributor

Too bad we had to remove request eh? This seems sensible, and the library is well-maintained and has a compatible license.

setLogHandler(new ConsoleLogHandler());

const manager = new HttpPollingDatafileManager({
sdkKey: '9LCprAQyd1bs1BBXZ3nVji',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hopefully this isn't sensitive at all.

@mjc1283 mjc1283 removed the WIP label Apr 17, 2020
@mjc1283 mjc1283 removed their assignment Apr 17, 2020
@mjc1283 mjc1283 marked this pull request as ready for review April 17, 2020 01:00
@mjc1283 mjc1283 requested a review from a team as a code owner April 17, 2020 01:00
Copy link
Contributor

@mikeproeng37 mikeproeng37 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@@ -96,23 +96,17 @@ Prod dependencies are as follows:
"publisher": "Kris Zyp",
"repository": "https://github.com/kriszyp/json-schema"
},
"lodash@4.17.10": {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, thanks for cleaning this up as well!

@mjc1283 mjc1283 merged commit 3523f66 into master Apr 17, 2020
@mjc1283 mjc1283 deleted the mcarroll/node-gzip branch April 17, 2020 16:33
jasonkarns added a commit to github/optimizely-javascript-sdk that referenced this pull request May 12, 2020
* v4:
  test suite doesn't pass cleanly
  prepare already runs build
  v4.0.0-github.0
  Ignore package tarballs
  Resume building non-minified ES entrypoint
  revert to master
  Expose an ESM-FULL bundle which includes optimizely deps
  Standardize ESM bundle
  Generate both min and non-min esm output
  exports option for es output is redundant. auto is best
  Use rollup --config- options for specifying bundles
  Build-all by default
  build various bundles using --config-* param
  chore: Prepare for 4.0.0 release (optimizely#468)
  fix: Removed React Native client engine temporarily (optimizely#466)
  chore: Prepare for 4.0.0-rc.2 release (optimizely#465)
  chore: Add source maps to build output (optimizely#464)
  fix(project config): Don't mutate the datafile object (optimizely#462)
  chore: Prepare for 4.0.0-rc.1 release (optimizely#461)
  chore: Prepare for js-sdk-datafile-manager 0.5.0 release (optimizely#460)
  chore(datafile manager): Remove react native datafile manager entry from package.json (optimizely#459)
  fix(datafile manager): Node datafile requests use gzip,deflate compression (optimizely#456)
  docs(datafile manager): Removed manual dependency installation requirement from docs (optimizely#457)
  chore(datafile manager): Added async storage as dev dependency (optimizely#455)
  refactor: Added a separate bundle for Json Schema Validator (optimizely#454)
  refactor: Convert lib/utils to ES module (Part 2/2) (optimizely#452)
  refactor: Convert lib/core to ES module (Part 2/2) (optimizely#450)
  chore(datafile manager): Update years in header comments (optimizely#453)
  refactor: Convert lib/core to ES module (Part 1/2) (optimizely#449)
  refactor: Convert lib/utils to ES module (Part 1/2) (optimizely#451)
  refactor: Convert lib/optimizely/* and lib/tests/* to ES module (optimizely#448)
  refactor: Convert lib/plugins from CJS to ES module (optimizely#427)
  chore: Update js-sdk-utils to 0.2.0 (optimizely#447)
  refactor: Convert entry points to es module and create minified bundles (optimizely#445)
  chore: Update CHANGELOG.MD for jsonSchemaValidator change (optimizely#443)
  Change functionality of JSON schema validation by removing skipJSONValidation entirely. Now a user needs to import jsonSchemaValidator from @optimizely/optimizely-sdk/lib/utils/json_schema_validator and pass it to createInstance when validation is desired. (optimizely#442)
  chore(datafile manager): Lint and formatting fixes for datafile manager tests (optimizely#441)
  [OASIS-6102]: changed functionality of the JSON schema validator module (optimizely#438)
  chore(datafile manager): Fix ESLint warnings & errors, apply Prettier formatting (optimizely#440)
  fix (datafile-manager): Fix boolean types, remove StaticDatafileManager, update READMe, add eslint + prettier (optimizely#436)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants