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

Prototype Review Pull Request #1

Closed
wants to merge 270 commits into from
Closed

Prototype Review Pull Request #1

wants to merge 270 commits into from
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Oct 19, 2018

  1. Update README

    ottomata committed Oct 19, 2018
    Configuration menu
    Copy the full SHA
    d7bebc9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    646a040 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    cdc0b58 View commit details
    Browse the repository at this point in the history
  4. Update TODO

    ottomata committed Oct 19, 2018
    Configuration menu
    Copy the full SHA
    c1c9123 View commit details
    Browse the repository at this point in the history
  5. Use test/utils/eventbus_test_init as eventbus_init_module in config.t…

    …est.yaml
    
    This allows us to fully mock the Eventbus instance used when testing,
    while still piping events through the same functions used
    for prod by creating them in eventbus-init-utils.js
    ottomata committed Oct 19, 2018
    Configuration menu
    Copy the full SHA
    b67caa0 View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2018

  1. Configuration menu
    Copy the full SHA
    4c4d8b3 View commit details
    Browse the repository at this point in the history
  2. Use url.parse instead of new URL

    to be compatible with node 6
    ottomata committed Oct 22, 2018
    Configuration menu
    Copy the full SHA
    d00aa6e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    da49795 View commit details
    Browse the repository at this point in the history
  4. Eventbus now handles createEventError and processing; the route doesn't

    This makes configuration of Eventbus for the route cleaner.  Instead
    of the app.conf.eventbus_init_module exporting both an Eventbus instance
    and a createEventError function, it only needs to export the Eventbus instance.
    createEventError is given to the Eventbus constructor, and Eventbus
    handles event error processing.
    ottomata committed Oct 22, 2018
    Configuration menu
    Copy the full SHA
    7293c2a View commit details
    Browse the repository at this point in the history

Commits on Oct 23, 2018

  1. Configuration menu
    Copy the full SHA
    c692eb0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    57b279a View commit details
    Browse the repository at this point in the history
  3. Tweaks

    - schema_field -> schema_uri_field
    - config file cleanup
    - allow protocol less uris, assume these are local file paths
    ottomata committed Oct 23, 2018
    Configuration menu
    Copy the full SHA
    4e2376d View commit details
    Browse the repository at this point in the history
  4. Update read me and some docs

    ottomata committed Oct 23, 2018
    Configuration menu
    Copy the full SHA
    f1a1ae9 View commit details
    Browse the repository at this point in the history
  5. Move TODO to README

    ottomata committed Oct 23, 2018
    Configuration menu
    Copy the full SHA
    17dc169 View commit details
    Browse the repository at this point in the history
  6. README about _field

    ottomata committed Oct 23, 2018
    Configuration menu
    Copy the full SHA
    f8d596c View commit details
    Browse the repository at this point in the history

Commits on Oct 24, 2018

  1. README updates

    ottomata committed Oct 24, 2018
    Configuration menu
    Copy the full SHA
    e97f056 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d9faef2 View commit details
    Browse the repository at this point in the history

Commits on Oct 25, 2018

  1. Use built in ajv caching by schema $id instead of ValidatorCache

    Ajv already caches its compiled validators (and schemas) by
    $id. This makes it really handy to look up event schemas if
    their schema URIs match the schema's $id property.
    
    $refs get a little tricky, but I think I got it.  Unfortunetly,
    in order to properly resolve, we need to make event schema $schema
    URIs start with /, other wise $ref that point at schemas will not
    be correct.
    ottomata committed Oct 25, 2018
    Configuration menu
    Copy the full SHA
    cd5d8ac View commit details
    Browse the repository at this point in the history
  2. Remove TODO comment

    ottomata committed Oct 25, 2018
    Configuration menu
    Copy the full SHA
    6e255bb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4292995 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4d2ce96 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ae5aee3 View commit details
    Browse the repository at this point in the history

Commits on Oct 26, 2018

  1. Use lodash get instead of custom objectProperty, add objectGet

    objectGet just wraps _.get, but throws PropertyNotFoundError
    if undefined.
    
    Also fix test logging to make it easier to enable logging
    output during tests.
    ottomata committed Oct 26, 2018
    Configuration menu
    Copy the full SHA
    05168f7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    039ef1c View commit details
    Browse the repository at this point in the history
  3. Code reorg - use lib/factories

    TODO: update README docs about this
    ottomata committed Oct 26, 2018
    Configuration menu
    Copy the full SHA
    b1720a4 View commit details
    Browse the repository at this point in the history
  4. Code reorg docs

    ottomata committed Oct 26, 2018
    Configuration menu
    Copy the full SHA
    9991c25 View commit details
    Browse the repository at this point in the history

Commits on Oct 29, 2018

  1. Configuration menu
    Copy the full SHA
    e1a3e38 View commit details
    Browse the repository at this point in the history
  2. Move errors to lib/errors and make them more generic

    Also throw EventSchemaLoadError when schema fails loading from uri
    ottomata committed Oct 29, 2018
    Configuration menu
    Copy the full SHA
    5507df4 View commit details
    Browse the repository at this point in the history

Commits on Oct 30, 2018

  1. Configuration menu
    Copy the full SHA
    5d91ebf View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    80b118b View commit details
    Browse the repository at this point in the history
  3. Use options for Eventbus constructor rather than positional args

    Makes things easier to customize
    ottomata committed Oct 30, 2018
    Configuration menu
    Copy the full SHA
    ed7ca9b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    98ccd83 View commit details
    Browse the repository at this point in the history
  5. disconnect in Kafka factory

    ottomata committed Oct 30, 2018
    Configuration menu
    Copy the full SHA
    8cca3dc View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1561123 View commit details
    Browse the repository at this point in the history
  7. Rename create...Function to ...FromConf

    Makes it clearer what these function generators are doing.
    ottomata committed Oct 30, 2018
    Configuration menu
    Copy the full SHA
    7172d15 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    c3c63e7 View commit details
    Browse the repository at this point in the history

Commits on Oct 31, 2018

  1. Rename functions and move all default factory code into default-eventbus

    This makes it more clear as to what the default-eventbus is and what it is doing.
    Individual function makers are renamed to make*, and they are exported
    along with the default eventbus factory function for reuse elsewhere.
    ottomata committed Oct 31, 2018
    Configuration menu
    Copy the full SHA
    8a9e29a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4d5624d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    23c3651 View commit details
    Browse the repository at this point in the history
  4. Filter out empty results from mapToEventError

    This allows implementers of mapToEventError to decide which
    types of event errors they want to be produced to the error topic.
    ottomata committed Oct 31, 2018
    Configuration menu
    Copy the full SHA
    863730c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4fa8753 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    56b49b2 View commit details
    Browse the repository at this point in the history

Commits on Nov 1, 2018

  1. eslint fixes for ecma 2017

    ottomata committed Nov 1, 2018
    Configuration menu
    Copy the full SHA
    36c5548 View commit details
    Browse the repository at this point in the history
  2. Some error response cleanup

    ottomata committed Nov 1, 2018
    Configuration menu
    Copy the full SHA
    513dda1 View commit details
    Browse the repository at this point in the history
  3. Remove extra comma

    ottomata committed Nov 1, 2018
    Configuration menu
    Copy the full SHA
    02f6414 View commit details
    Browse the repository at this point in the history
  4. Readme update and forgotten file

    lib/errors.js should have been added days ago
    ottomata committed Nov 1, 2018
    Configuration menu
    Copy the full SHA
    2ed78eb View commit details
    Browse the repository at this point in the history
  5. Add spec.test.yaml

    + some lines in .gitignore
    ottomata committed Nov 1, 2018
    Configuration menu
    Copy the full SHA
    18922dc View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2018

  1. Add spec.test.yaml

    + some lines in .gitignore
    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    bb19a7b View commit details
    Browse the repository at this point in the history
  2. Remove some done TODOs

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    2e8a0db View commit details
    Browse the repository at this point in the history
  3. require alignments

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    7f6b578 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b077e44 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2281ed0 View commit details
    Browse the repository at this point in the history
  6. Tests for event-util

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    2d31320 View commit details
    Browse the repository at this point in the history
  7. Remove console.log

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    44fb483 View commit details
    Browse the repository at this point in the history
  8. Alignment

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    e5fab50 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    2cf5316 View commit details
    Browse the repository at this point in the history
  10. Add tests for EventValidator

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    85ca14f View commit details
    Browse the repository at this point in the history
  11. Alignment

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    745210c View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    8631080 View commit details
    Browse the repository at this point in the history
  13. default eventRepr 'event'

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    dafc756 View commit details
    Browse the repository at this point in the history
  14. If stream_field not configured, use schema_uri_field to create topic

    This adds some extra default behavior if events don't have stream
    or topic names in them.  This makes the explanation and usage
    of a default eventbus install simpler; The 'only' extra information
    clients need to include in their events is the schema URI.
    If stream_field is not configued, Extracted schema URIs will be
    sanitized and used as the Kafka topic.
    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    d81c6da View commit details
    Browse the repository at this point in the history
  15. README fixes

    ottomata committed Nov 13, 2018
    Configuration menu
    Copy the full SHA
    91ecadb View commit details
    Browse the repository at this point in the history

Commits on Nov 14, 2018

  1. Re throw error

    ottomata committed Nov 14, 2018
    Configuration menu
    Copy the full SHA
    55d3519 View commit details
    Browse the repository at this point in the history

Commits on Nov 19, 2018

  1. Add context to Eventbus.process, validate and produce functions

    This allows for users of Eventbus (like the service template route)
    to pass in extra context for validate() and produce() implementaitons
    to use.
    
    This is used by wikimedia-eventbus to instantiate two different
    Kafka producers, a guarunteed and a 'hasty' producer, to use
    for both reliable and fire and forget ?hasty=true cases.
    ottomata committed Nov 19, 2018
    Configuration menu
    Copy the full SHA
    fc6b74a View commit details
    Browse the repository at this point in the history
  2. README update

    ottomata committed Nov 19, 2018
    Configuration menu
    Copy the full SHA
    f264a4a View commit details
    Browse the repository at this point in the history
  3. Fixes from PR review

    ottomata committed Nov 19, 2018
    Configuration menu
    Copy the full SHA
    500ddc2 View commit details
    Browse the repository at this point in the history
  4. Simplify default-eventbus

    default-eventbus changes:
    - remove topic_prefix support
    - remove partition_field support
    - remove key_field support
    - remove HastyKafkaProducer support
    - remove id_field support
    
    wikimedia-eventbus changes:
    - remove schema_uri -> stream name default mapping; all events must have stream_name
    - topic_prefix, id_field and HastyKafkaProducer support moved into wikimedia-eventbus
    ottomata committed Nov 19, 2018
    Configuration menu
    Copy the full SHA
    1a5fcc4 View commit details
    Browse the repository at this point in the history
  5. Cache schemas in AJV by schema URIs as well as $id

    This removes the restriction that schema URIs match exactly $id fields.
    ottomata committed Nov 19, 2018
    Configuration menu
    Copy the full SHA
    100eef6 View commit details
    Browse the repository at this point in the history

Commits on Nov 26, 2018

  1. Use schema 'title' field as schema name in stream config

    This allows us to use the title rather to ensure that an event
    of a particular schema is allowed in the stream, rather than
    relying on the schema_uri.  The title will be more consistent
    and canonical than schema_uris, which might change due to location
    moving, etc.
    
    Also refactory wikimedia-eventbus a bit to simplify.
    ottomata committed Nov 26, 2018
    Configuration menu
    Copy the full SHA
    8e49f3e View commit details
    Browse the repository at this point in the history
  2. Remove full batch validation idea from README

    we can consider implementing this if we have a use case
    ottomata committed Nov 26, 2018
    Configuration menu
    Copy the full SHA
    b10a970 View commit details
    Browse the repository at this point in the history

Commits on Nov 29, 2018

  1. Fixes

    ottomata committed Nov 29, 2018
    Configuration menu
    Copy the full SHA
    9481f15 View commit details
    Browse the repository at this point in the history

Commits on Nov 30, 2018

  1. Rename Eventbus to EventGate

    ottomata committed Nov 30, 2018
    Configuration menu
    Copy the full SHA
    ef59064 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aa699c1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d6b5c8f View commit details
    Browse the repository at this point in the history
  4. README update

    ottomata committed Nov 30, 2018
    Configuration menu
    Copy the full SHA
    0cfb121 View commit details
    Browse the repository at this point in the history

Commits on Dec 3, 2018

  1. WIP event error

    ottomata committed Dec 3, 2018
    Configuration menu
    Copy the full SHA
    13ffb41 View commit details
    Browse the repository at this point in the history

Commits on Dec 4, 2018

  1. Configuration menu
    Copy the full SHA
    27e775a View commit details
    Browse the repository at this point in the history
  2. Support draft 4 schemas and schema_uri_field as array

    The default Ajv instance knows about the Draft 7 JSONSchema meta schema,
    but does not on its own include meta schemas for other JSONSchema drafts.
    Schemas should point to their meta schema in the $schema field.
    JSONSChema meta schemas are self validating, so they have their
    $id fields and $schema fields set to the same URL.  If Ajv
    does not yet have a meta schema referneced by that URL, this will
    cause infinite recursion as our loadSchema implementation will
    look up remote schemas by $id.
    
    This patch adds a option for EventValidator to match $id schema URLs
    as being meta schemas, instead of data (event) schemas.  If a schema's
    URL matches, it will be added as a meta schema to Ajv, breaking the
    infinite recursion.
    
    ---
    
    This patch also includes a change to the default-eventgate schema_uri_field
    option.  If this is given as an array, the event will be searched for
    the field names in the array when extracting a schema uri.
    
    Both of thse changes allow wikimedia to support draft 4 events
    with schema URIs at meta.schema_uri, as well as new draft 7 ones
    we will make with schema URIs at $schema.
    ottomata committed Dec 4, 2018
    2 Configuration menu
    Copy the full SHA
    671d117 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    bff315f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b6fc329 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    01a0325 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c6e9553 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a73b6ba View commit details
    Browse the repository at this point in the history
  8. README TODO update

    ottomata committed Dec 4, 2018
    Configuration menu
    Copy the full SHA
    193f0ef View commit details
    Browse the repository at this point in the history

Commits on Dec 5, 2018

  1. Configuration menu
    Copy the full SHA
    7d23739 View commit details
    Browse the repository at this point in the history
  2. Comment fix

    ottomata committed Dec 5, 2018
    Configuration menu
    Copy the full SHA
    274788a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    163747e View commit details
    Browse the repository at this point in the history
  4. Fix lint error

    ottomata committed Dec 5, 2018
    Configuration menu
    Copy the full SHA
    7f9ee8c View commit details
    Browse the repository at this point in the history
  5. Fix lint fix

    ottomata committed Dec 5, 2018
    Configuration menu
    Copy the full SHA
    e36b4fc View commit details
    Browse the repository at this point in the history
  6. README update

    ottomata committed Dec 5, 2018
    Configuration menu
    Copy the full SHA
    c01d69b View commit details
    Browse the repository at this point in the history
  7. Add eventgate unit tests

    ottomata committed Dec 5, 2018
    Configuration menu
    Copy the full SHA
    1061492 View commit details
    Browse the repository at this point in the history

Commits on Dec 10, 2018

  1. Add default-eventgate tests

    ottomata committed Dec 10, 2018
    Configuration menu
    Copy the full SHA
    cb464f4 View commit details
    Browse the repository at this point in the history

Commits on Dec 18, 2018

  1. Doc updates and typo fixees

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    c083808 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4fdd3f2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b8b162a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6b7dd36 View commit details
    Browse the repository at this point in the history
  5. Config file refactoring

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    92aaa45 View commit details
    Browse the repository at this point in the history
  6. Doc update

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    f62f2c1 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    2f68cf6 View commit details
    Browse the repository at this point in the history
  8. Use dist: trusty for travis

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    a5bdda5 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    e1a7c8d View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    cac1609 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    72387bf View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    a087f6a View commit details
    Browse the repository at this point in the history
  13. Better failure messages

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    51bcf3a View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    7d157aa View commit details
    Browse the repository at this point in the history
  15. Use dist: xenial in travis

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    c87f2a8 View commit details
    Browse the repository at this point in the history
  16. lint at ecmaVersion: 10

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    c00bb0b View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    de6df3a View commit details
    Browse the repository at this point in the history
  18. Add travis badge

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    8ee4c3e View commit details
    Browse the repository at this point in the history
  19. Add coveralls

    ottomata committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    67e2fa1 View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2018

  1. Configuration menu
    Copy the full SHA
    ffa7d02 View commit details
    Browse the repository at this point in the history

Commits on Jan 2, 2019

  1. Configuration menu
    Copy the full SHA
    0ecb4c7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5bb467b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e8a056f View commit details
    Browse the repository at this point in the history
  4. Add coveralls badge

    ottomata committed Jan 2, 2019
    Configuration menu
    Copy the full SHA
    9c3ba4b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ac782bf View commit details
    Browse the repository at this point in the history

Commits on Jan 3, 2019

  1. Fix bug with runtime remote loading of meta schemas

    The use of _.defaults in EventValidator constructor was
    causing the defaultOptions.ajvConfig to be assigned
    to the final value of ajvConfig.  By using defaultsDeep
    only once, we avoid accidentally assinging it and
    possibly accidentally using the wrong loadSchema function
    for different EventValidator instances.
    
    This brings back the ability to add meta schemas at runtime
    via the metaSchemaIdRegex option.
    ottomata committed Jan 3, 2019
    Configuration menu
    Copy the full SHA
    a1456de View commit details
    Browse the repository at this point in the history

Commits on Jan 7, 2019

  1. Configuration menu
    Copy the full SHA
    c26fd37 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    63812d9 View commit details
    Browse the repository at this point in the history

Commits on Jan 8, 2019

  1. README

    ottomata committed Jan 8, 2019
    Configuration menu
    Copy the full SHA
    7cacd70 View commit details
    Browse the repository at this point in the history

Commits on Jan 11, 2019

  1. Configuration menu
    Copy the full SHA
    6779b67 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aba0ea2 View commit details
    Browse the repository at this point in the history
  3. Remove debug log message

    ottomata committed Jan 11, 2019
    Configuration menu
    Copy the full SHA
    cc06e57 View commit details
    Browse the repository at this point in the history

Commits on Jan 14, 2019

  1. Configuration menu
    Copy the full SHA
    0c9a2fe View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2019

  1. Configuration menu
    Copy the full SHA
    7652d8b View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2019

  1. Use array of schema_base_uris instead of a single schema_base_uri

    The base URIs will be searched until a schema is found. This allows
    us to use multiple schema repository locations for a single EventGate
    instance.  We can configure a local schema repository for reliability,
    but still lookup schemas remotely if they don't exist locally.
    ottomata committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    0b52d2c View commit details
    Browse the repository at this point in the history
  2. Add allow_aboslute_schema_uris config to wikimedia-eventgate

    This allows us to only accept events that have relative schema URIs;
    e.g. they don't start with a uri protocol.  By doing so,
    we restrict the locations at which EventGate will attempt
    to download schemas from.
    ottomata committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    dbdc505 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3a0ba7e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    61268c4 View commit details
    Browse the repository at this point in the history

Commits on Feb 8, 2019

  1. Configuration menu
    Copy the full SHA
    09c9fb9 View commit details
    Browse the repository at this point in the history
  2. Use eslint-config-wikimedia and lint fixes

    Also bump a couple of dependency versions.
    
    Bug: https://phabricator.wikimedia.org/T208251
    ottomata committed Feb 8, 2019
    Configuration menu
    Copy the full SHA
    002c4e2 View commit details
    Browse the repository at this point in the history
  3. EventValidator now uses AJV's json-schema-secure to validate schemas

    This is a security measure that will prevent schemas that use
    risky JSONSchema features from being compiled.  See also
    https://github.com/epoberezkin/ajv#security-considerations
    
    json-schema-secure checking can be disabled by setting
    allowInsecureSchemas: true
    
    This change also refactors some Error classes, as well
    as fixes the `title` fields of our test event schemas.
    
    Bug: https://phabricator.wikimedia.org/T208251
    ottomata committed Feb 8, 2019
    2 Configuration menu
    Copy the full SHA
    74a3c0d View commit details
    Browse the repository at this point in the history
  4. Add missing test schema

    Should have been in the previous commit
    ottomata committed Feb 8, 2019
    Configuration menu
    Copy the full SHA
    0763227 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    eab7ed3 View commit details
    Browse the repository at this point in the history
  6. README update

    ottomata committed Feb 8, 2019
    Configuration menu
    Copy the full SHA
    398d9ae View commit details
    Browse the repository at this point in the history
  7. README update

    ottomata committed Feb 8, 2019
    Configuration menu
    Copy the full SHA
    d8539fb View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    7dedf21 View commit details
    Browse the repository at this point in the history

Commits on Feb 11, 2019

  1. Configuration menu
    Copy the full SHA
    6b07062 View commit details
    Browse the repository at this point in the history
  2. Fix missing semicolon

    ottomata committed Feb 11, 2019
    Configuration menu
    Copy the full SHA
    97f271f View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2019

  1. Change default port to 8192

    ottomata committed Feb 12, 2019
    Configuration menu
    Copy the full SHA
    869f1c3 View commit details
    Browse the repository at this point in the history
  2. Allow any $schema in any stream if no stream_config_uri

    This makes it easier to develop new schemas and streams
    without having to modify stream configuration.
    In wikimedia production, we always set a stream_config_uri.
    ottomata committed Feb 12, 2019
    Configuration menu
    Copy the full SHA
    e199600 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    59f94f6 View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2019

  1. Security updates

    ottomata committed Feb 20, 2019
    Configuration menu
    Copy the full SHA
    61b3ec5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f1a7b86 View commit details
    Browse the repository at this point in the history

Commits on Feb 25, 2019

  1. Clone mediawiki/event-schemas into WMF Docker image

    Bug: T214080
    ottomata committed Feb 25, 2019
    Configuration menu
    Copy the full SHA
    72f2f9a View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2019

  1. Configuration menu
    Copy the full SHA
    eac4282 View commit details
    Browse the repository at this point in the history

Commits on Mar 4, 2019

  1. Configuration menu
    Copy the full SHA
    6ac1a85 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9f7b9df View commit details
    Browse the repository at this point in the history

Commits on Mar 5, 2019

  1. Add validatorAt function in EventValidator

    This allows us to precache a configured list of URIs
    in wikimedia-eventgate instance.
    
    Bug: T217661
    ottomata committed Mar 5, 2019
    Configuration menu
    Copy the full SHA
    d048e2d View commit details
    Browse the repository at this point in the history

Commits on Mar 6, 2019

  1. Configuration menu
    Copy the full SHA
    f838ce7 View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2019

  1. Configuration menu
    Copy the full SHA
    17562c3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    36269f1 View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2019

  1. Configuration menu
    Copy the full SHA
    877c9f7 View commit details
    Browse the repository at this point in the history
  2. Fixed typos

    Pchelolo committed Mar 13, 2019
    Configuration menu
    Copy the full SHA
    c77a954 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #2 from Pchelolo/spelling

    Fixed typos
    ottomata committed Mar 13, 2019
    Configuration menu
    Copy the full SHA
    1af724d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    31b5d5f View commit details
    Browse the repository at this point in the history

Commits on Mar 14, 2019

  1. Support node-rdkafka-statsd metric reporting

    Bug: T218305
    ottomata committed Mar 14, 2019
    Configuration menu
    Copy the full SHA
    a548bd1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d5cfd06 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a9b1389 View commit details
    Browse the repository at this point in the history

Commits on Mar 18, 2019

  1. Configuration menu
    Copy the full SHA
    3cc8c61 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e5954ec View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2019

  1. Remove README TODOs

    Change-Id: I656648a4fd9b6d5d1aceb42c8e5192344e4d8e11
    ottomata committed Mar 19, 2019
    Configuration menu
    Copy the full SHA
    8a26642 View commit details
    Browse the repository at this point in the history
  2. Add/fix kafka event.error logging

    Change-Id: I243eefef1668cabf3a762fca7d4c55de6aa21fd5
    ottomata committed Mar 19, 2019
    Configuration menu
    Copy the full SHA
    7cc21af View commit details
    Browse the repository at this point in the history
  3. Remove log on event.error for Kafka producer

    This log isn't really useful, as is it bubbled up to
    caller anyway.  It also is misleading during connect,
    as there seems to be at least one error logged before
    connection to brokers is established.
    
    Change-Id: Ief77d29735294e9e77687d77e931cbe5ed42ba91
    ottomata committed Mar 19, 2019
    Configuration menu
    Copy the full SHA
    b930cf7 View commit details
    Browse the repository at this point in the history
  4. Don't pass logger to Kafka producers in wikimedia-eventgate

    Change-Id: Iba91e6079bc5c264ee1ca9a3743a266405cbbdd1
    ottomata committed Mar 19, 2019
    Configuration menu
    Copy the full SHA
    d6f411c View commit details
    Browse the repository at this point in the history
  5. Fix docs about producer 'acks'

    Change-Id: Icd67d49196d1284e24cdfd8edbb1cf6c1a31f311
    ottomata committed Mar 19, 2019
    Configuration menu
    Copy the full SHA
    e2c6d97 View commit details
    Browse the repository at this point in the history
  6. Bump node-rdkafka-statsd to 0.1.2

    Change-Id: Ibdeb08735eb9de256a02bd0b50cb188e6a421298
    ottomata committed Mar 19, 2019
    Configuration menu
    Copy the full SHA
    d2020d5 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2019

  1. Add more docs in lib/kafka.js

    Change-Id: I4fbb656754c9a0e00f6ae783f929d0c8391252c7
    ottomata committed Mar 20, 2019
    Configuration menu
    Copy the full SHA
    5378759 View commit details
    Browse the repository at this point in the history
  2. wikimedia-eventgate - log on rdkafka event.error

    Change-Id: Ifa5b6f5c9281c4a143d56a46109a203008ada333
    ottomata committed Mar 20, 2019
    Configuration menu
    Copy the full SHA
    bae8c0a View commit details
    Browse the repository at this point in the history
  3. wikimedia-eventgate - Log error.message with rdkafka error log message

    Change-Id: Ic6278dda8d90cb99cc6bd8ba20ed036764f9ee9e
    ottomata committed Mar 20, 2019
    Configuration menu
    Copy the full SHA
    13941a2 View commit details
    Browse the repository at this point in the history
  4. wikimedia-eventgate - DRY Kafka Producer creation

    log.connection.close does not silence event.errors for connection closing,
    we now do so by filtering out those messages.
    
    Change-Id: I133e52ec3ef0fd82dd28efeda36bb684461d0d07
    ottomata committed Mar 20, 2019
    Configuration menu
    Copy the full SHA
    7315e0f View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2019

  1. wikimedia-eventgate - Add rdkafka logging support

    Add event-util logAtSyslogSeverity function.
    
    Change-Id: I938a77d6c56626f404a32101b03a2a8c9e0ef6ae
    ottomata committed Mar 21, 2019
    Configuration menu
    Copy the full SHA
    7e37916 View commit details
    Browse the repository at this point in the history
  2. Move kafka log handler registration into kafka.js

    Also fix bug where HastyProducer was not being used.
    
    Change-Id: Iab0548d0c3f14bff35cb53b77789b6b00af00ceb
    ottomata committed Mar 21, 2019
    Configuration menu
    Copy the full SHA
    e662929 View commit details
    Browse the repository at this point in the history
  3. Remove undefined function

    Change-Id: Iac1b94fdbe3178c1f9432fcf30a8b49d449b4f9a
    ottomata committed Mar 21, 2019
    Configuration menu
    Copy the full SHA
    516280d View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2019

  1. Use user_agent in kafka client.id

    Change-Id: I6f9139121ba1c4474049d0127b409c908e7dcee1
    ottomata committed Mar 22, 2019
    Configuration menu
    Copy the full SHA
    e05e98e View commit details
    Browse the repository at this point in the history
  2. Register rdkafka log handler before connect

    Waiting until after connect might avoid some confusing errors, but
    it supresses potentially useful debugging information.
    
    Change-Id: Ic7737aed73b62fe03c672c8305dd45f7ab5589c5
    ottomata committed Mar 22, 2019
    Configuration menu
    Copy the full SHA
    060d5f1 View commit details
    Browse the repository at this point in the history
  3. Don't default request.required.acks in HastyProducer

    Hasty should not imply ACK setting, only delivery report functionality.
    
    Change-Id: I2faa93cb7d64fe2e8f6fbcddd6a6b0fac02c1b21
    ottomata committed Mar 22, 2019
    Configuration menu
    Copy the full SHA
    95983c6 View commit details
    Browse the repository at this point in the history

Commits on Mar 25, 2019

  1. Suppress rdkakfa on-connect error

    Delay registering the event.error logging
    to avoid misleading errors like 'broker transport failure'
    and 'all brokers are down' during startup.
    
    Change-Id: I1a4b4d5038af62517272f5bb72a31f82a94c4d7b
    ottomata committed Mar 25, 2019
    Configuration menu
    Copy the full SHA
    b8ba9f9 View commit details
    Browse the repository at this point in the history
  2. Support Kakfa producer type config overrides

    This also nicely logs the rdkafka configs
    used for each kafka producer on service startup.
    
    Bug: T219032
    Change-Id: If2b56812c194c62683de5e0188b9f5e9537ce8e5
    ottomata committed Mar 25, 2019
    Configuration menu
    Copy the full SHA
    c58eed4 View commit details
    Browse the repository at this point in the history
  3. Bump to 1.0.9

    Change-Id: I8d6865f1bfe7b5b7e45523eda8dd7b3e22e7c199
    ottomata committed Mar 25, 2019
    Configuration menu
    Copy the full SHA
    8623ea5 View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2019

  1. Add 202 response to spec.yaml

    Change-Id: Ia4117b2ccd8ee44a2d83d044720722b70b79d96d
    ottomata committed Mar 26, 2019
    Configuration menu
    Copy the full SHA
    88a7f85 View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2019

  1. Remove unused gen-init-scripts.rb

    Change-Id: Iaf592a0e50bad8afc131e954b5a0edc18cafc207
    ottomata committed Mar 27, 2019
    Configuration menu
    Copy the full SHA
    b936a3a View commit details
    Browse the repository at this point in the history
  2. Add scripts/post-events

    This helps with testing the health of the /v1/events endpoint
    by posting and event to it via a file with the JSON event,
    or using the JSONSchema examples field found at the provided
    schema URL.
    
    Bug: T218680
    Change-Id: I3e9625b35c8be6dc57aabd711d645eacdac47ee4
    ottomata committed Mar 27, 2019
    6 Configuration menu
    Copy the full SHA
    08261d7 View commit details
    Browse the repository at this point in the history
  3. Add scripts/.eslintrc

    Change-Id: I4728c560e4bcce9cbd8d07b956e3725aa9ac7d2f
    ottomata committed Mar 27, 2019
    Configuration menu
    Copy the full SHA
    506f334 View commit details
    Browse the repository at this point in the history
  4. Update .pipeline/blubber.yaml event-schemas repo sha

    Change-Id: I687cecae9e2927cd05c64faf66a8f403f56d7846
    ottomata committed Mar 27, 2019
    Configuration menu
    Copy the full SHA
    b0d16ba View commit details
    Browse the repository at this point in the history

Commits on Apr 8, 2019

  1. Support kafka message event timestamps in wikimedia-eventgate

    Also DRY up some field extraction logic a bit more.
    Next patch will include some DRYing of field extraction
    in default-eventgate.
    
    Bug: T219513
    
    Change-Id: Ib6c3404a2398248aaa2e85a37d686a280e240141
    ottomata committed Apr 8, 2019
    Configuration menu
    Copy the full SHA
    dd8cf55 View commit details
    Browse the repository at this point in the history
  2. DRY makeExtractSchemaUri and remove dependency betweeen factory impls

    Change-Id: Icc1e27340df279a7008cac821a29e7f9ca628542
    ottomata committed Apr 8, 2019
    Configuration menu
    Copy the full SHA
    ec92c1f View commit details
    Browse the repository at this point in the history

Commits on Apr 9, 2019

  1. scripts/post-events - support reading from stdin and modifying --dt-f…

    …ield
    
    This will allow us to use the post-events script to post an event with
    a current dt.  Unfortunetly this assumes that your events use
    an ISO-8601 string for the event timestamp.
    
    Bug: https://phabricator.wikimedia.org/T219513
    Change-Id: I8bc8be5e5e4f29d5696c755edff10a2087fd8a78
    ottomata committed Apr 9, 2019
    Configuration menu
    Copy the full SHA
    04506dd View commit details
    Browse the repository at this point in the history
  2. Remove unused fs import in scripts/post-events

    Change-Id: I8738bd0f493491d44a01e6ab9766c97ed5ee3420
    ottomata committed Apr 9, 2019
    Configuration menu
    Copy the full SHA
    8f974a5 View commit details
    Browse the repository at this point in the history
  3. 1.0.11

    Change-Id: I585042b869c0542c9f7e5b81b9e144b6ebfba653
    ottomata committed Apr 9, 2019
    Configuration menu
    Copy the full SHA
    d174278 View commit details
    Browse the repository at this point in the history

Commits on Apr 12, 2019

  1. Refactor Kafka producer to use setPollInterval

    Change-Id: Idabeaada44e87b2d29f17d65d3aecdfabda6cf11
    ottomata committed Apr 12, 2019
    Configuration menu
    Copy the full SHA
    c0f3fb0 View commit details
    Browse the repository at this point in the history

Commits on Apr 15, 2019

  1. Comment fixes, make producerTypes in kafka.js module level

    Change-Id: I48d3e549f45f32d6e645e307c01a1b520f3eca26
    ottomata committed Apr 15, 2019
    Configuration menu
    Copy the full SHA
    0e7cc12 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #3 from ottomata/master

    Refactor Kafka producer to use setPollInterval
    ottomata committed Apr 15, 2019
    Configuration menu
    Copy the full SHA
    822ccd8 View commit details
    Browse the repository at this point in the history
  3. Bump to v1.0.12

    Change-Id: Id9e00927da1bf7137efef6997b8ce29ddcc7d5eb
    ottomata committed Apr 15, 2019
    Configuration menu
    Copy the full SHA
    fb8b1b6 View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2019

  1. Bump wikimedia event schemas repo in docker image to a925448

    Change-Id: I2e5ee2efbba6edd2b6fa7c19ea52b3ddb260626c
    ottomata committed Apr 19, 2019
    Configuration menu
    Copy the full SHA
    89a8e61 View commit details
    Browse the repository at this point in the history
  2. Bump wikimedia event schemas repo in docker image to a7201ff

    Change-Id: I62169502cb6d7f789c32ef202cd6e2ef910cb940
    ottomata committed Apr 19, 2019
    Configuration menu
    Copy the full SHA
    6041d4e View commit details
    Browse the repository at this point in the history

Commits on May 2, 2019

  1. Precache the draft-07 schema with an https URL.

    This avoids a remote lookup for draft-07 in case
    $schema: https://json-schema.org/draft-07/schema is
    encountered.
    
    Change-Id: I35de1d4c76ebabd5bab52dbd01594168003bd2b4
    ottomata committed May 2, 2019
    Configuration menu
    Copy the full SHA
    aa1adff View commit details
    Browse the repository at this point in the history
  2. Merge pull request #4 from ottomata/master

    Precache the draft-07 schema with an https URL.
    Pchelolo committed May 2, 2019
    Configuration menu
    Copy the full SHA
    1f04b03 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2019

  1. Bump wikimedia event-schemas repo in docker image to efe2224

    Change-Id: Id1efe2c6d79e22f2a051ed2b351591ab0578292b
    ottomata committed May 6, 2019
    Configuration menu
    Copy the full SHA
    23a190b View commit details
    Browse the repository at this point in the history

Commits on May 8, 2019

  1. Bump wikimedia event-schemas repo in docker image to 83932b3

    Change-Id: I39ab121aa2e0efbc3d2896457f0c006a2f55f40e
    ottomata committed May 8, 2019
    Configuration menu
    Copy the full SHA
    19a033e View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2019

  1. Bump WMF schema repo to 91eff9f

    Change-Id: I407693ad2915979a3bcaa4c841577baf59f1d2aa
    ottomata committed Jun 4, 2019
    Configuration menu
    Copy the full SHA
    0f0c6fc View commit details
    Browse the repository at this point in the history
  2. Use node-rdkafka ~2.4.2 to stay compatible with librdkafka 0.11.6

    Change-Id: I6fcfd33f6c1a7cba15e583e33367087bc240c6a3
    ottomata committed Jun 4, 2019
    Configuration menu
    Copy the full SHA
    665c434 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2019

  1. Bump WMF event-schemas to 50e0a82

    Change-Id: I82d18a594482e300138001889598b67a55f41747
    ottomata committed Jun 10, 2019
    Configuration menu
    Copy the full SHA
    03e64fc View commit details
    Browse the repository at this point in the history
  2. Bump WMF event schemas to bc1dbdf

    Change-Id: I8743f9545e878068a7a2d6344af058ec7c9e7256
    ottomata committed Jun 10, 2019
    Configuration menu
    Copy the full SHA
    c98967e View commit details
    Browse the repository at this point in the history

Commits on Jun 17, 2019

  1. Bump WMF event schemas to 91100b8

    Bug: T211248
    Change-Id: I8240cbf35b3adf9750b74b589a6607cd2050b782
    ottomata committed Jun 17, 2019
    Configuration menu
    Copy the full SHA
    1e13ea1 View commit details
    Browse the repository at this point in the history
  2. Bump WMF event schemas to eb13353

    Change-Id: I0672a435525b42bae239d044b5022037ad7859cf
    ottomata committed Jun 17, 2019
    Configuration menu
    Copy the full SHA
    da3afa7 View commit details
    Browse the repository at this point in the history
  3. Bump WMF event schemas to 3f9d5eb

    Change-Id: I5dc0967647ca95ca8ce23092da22325d4c375a56
    ottomata committed Jun 17, 2019
    Configuration menu
    Copy the full SHA
    aee777d View commit details
    Browse the repository at this point in the history

Commits on Jun 18, 2019

  1. Allow configuration of bodyParser limit via app.conf.max_body_size

    Bug: T226026
    
    Cherry-Pick from
    ottomata/service-template-node@182163a
    
    Conflicts:
    	config.dev.yaml
    	config.prod.yaml
    
    Change-Id: I9ad438068f7dbc4c1da0c6e0a9dfccccd438042e
    ottomata committed Jun 18, 2019
    Configuration menu
    Copy the full SHA
    62f07fe View commit details
    Browse the repository at this point in the history
  2. Set max_body_size in config examples to 4mb

    Bump to version 1.0.14
    
    Change-Id: I4f6f95c3afe48169cfd2ab34142deb56aa834ebe
    ottomata committed Jun 18, 2019
    Configuration menu
    Copy the full SHA
    63c297a View commit details
    Browse the repository at this point in the history

Commits on Jun 26, 2019

  1. Allow for more easily using EventGate as a dependency

    By adding the cwd to module.paths when we require the
    eventgate_factory_module, we make it possible for
    a dependent repository to provide its own factory
    modules from within its cwd, e.g.
    
      eventgate_factory_module: 'lib/my-eventgate-factory'
    
    at path /path/to/my-dependent-project/lib/my-eventgate-factory.js.
    
    This commit also exports an 'eventgate' bin script that
    will launch service.js.
    
    Bug: T226668
    Change-Id: Ie202b9326918637eb41c165153fd7b7f1d4d7460
    ottomata committed Jun 26, 2019
    Configuration menu
    Copy the full SHA
    02542cb View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2019

  1. Fix default-eventgate to use kafka.producerFactory

    Change-Id: I6e0cd3ba41ee1f7dfa86083a5f1f5db990e48f8b
    ottomata committed Jun 27, 2019
    Configuration menu
    Copy the full SHA
    323221b View commit details
    Browse the repository at this point in the history
  2. Make main module exports useful for use as library

    Bug: T226668
    Change-Id: I25496d369f80214d503422c593c34fd6c176e6dd
    ottomata committed Jun 27, 2019
    Configuration menu
    Copy the full SHA
    38712a7 View commit details
    Browse the repository at this point in the history
  3. eventgate should export the express app function so service-runner ca…

    …n run it
    
    But we also need library exports by default too, so attach them to
    the exported app function.
    
    Bug: T226668
    Change-Id: I2d7aac59f5152047951c45d5388fc269f854251a
    ottomata committed Jun 27, 2019
    Configuration menu
    Copy the full SHA
    0395b41 View commit details
    Browse the repository at this point in the history

Commits on Jul 18, 2019

  1. Export app as object in index.js

    This allows service-runner to use require('eventgate').app as its entrypoint.
    
    Bug: T226668
    Change-Id: Ic2d7cb2fddf6ef2c6848c449ea2f738f91fdd42f
    ottomata committed Jul 18, 2019
    Configuration menu
    Copy the full SHA
    ff6071f View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2019

  1. Remove wikimedia implementation of eventgate and update docs

    This has moved to https://gerrit.wikimedia.org/r/plugins/gitiles/eventgate-wikimedia/
    
    Bug: T226668
    Change-Id: Id93fb9fb52f835b2408bc14265f5a4d9356e3e89
    ottomata committed Jul 22, 2019
    Configuration menu
    Copy the full SHA
    63ee5e0 View commit details
    Browse the repository at this point in the history
  2. README updates

    Change-Id: I921c1ada1cae93247a0af6595b8e685fd6ec0aba
    ottomata committed Jul 22, 2019
    Configuration menu
    Copy the full SHA
    0e4ada7 View commit details
    Browse the repository at this point in the history
  3. Remove more wmf specific code

    Bug: T226668
    Change-Id: Ib3deda3c62f29c8f34fad1894f87940229d24389
    ottomata committed Jul 22, 2019
    Configuration menu
    Copy the full SHA
    a4a0617 View commit details
    Browse the repository at this point in the history
  4. Type fix in README

    Change-Id: I5bdbc86a1885ac0ce5f18529cdacc3ca4cac5282
    ottomata committed Jul 22, 2019
    Configuration menu
    Copy the full SHA
    477f90a View commit details
    Browse the repository at this point in the history
  5. Remove wmf specific init scripts

    Change-Id: I7368ae437ac9054d9556328a9a24b6ec5d3168f2
    ottomata committed Jul 22, 2019
    Configuration menu
    Copy the full SHA
    a6b74c4 View commit details
    Browse the repository at this point in the history
  6. Remove wikimedia-eventgate.js test

    This has moved to https://gerrit.wikimedia.org/r/plugins/gitiles/eventgate-wikimedia/
    
    Bug: T226668
    Change-Id: I3c888a4b8047e3b5439bff135e733b838a2b28bd
    ottomata committed Jul 22, 2019
    Configuration menu
    Copy the full SHA
    2624aae View commit details
    Browse the repository at this point in the history

Commits on Dec 9, 2019

  1. Allow JSON body parsing with text/plain Content-Type

    We want to be able to accept POSTed events from
    browser navigator.sendBeacon calls, but sendBeacon
    CORS restrictions don't allow Content-Type: application/json.
    sendBeacon sets Content-Type to text/plain by default; so
    assume POST bodies with text/plain are JSON.
    
    Bug: T238544
    Change-Id: I240693e353b624e11fdc7af0c296a52dd063ab5b
    ottomata committed Dec 9, 2019
    Configuration menu
    Copy the full SHA
    d898a10 View commit details
    Browse the repository at this point in the history

Commits on Dec 11, 2019

  1. Pass eventgate context to _processEvent for error event too

    This is needed in case any validate or produce functions
    use the context, since they will be used for
    error events as well.
    
    Change-Id: Ibe633b59317e99a5dd2ba5586c22dbcd877b59ef
    ottomata committed Dec 11, 2019
    Configuration menu
    Copy the full SHA
    4cd2eaa View commit details
    Browse the repository at this point in the history

Commits on Feb 25, 2020

  1. Allow passing options to urlGet

    This allows callers to pass e.g. custom HTTP headers
    when using urlGet function(s) to load URLs.
    
    Change-Id: Ib31713c8da1adf119393301837a27bfec23f2f1d
    ottomata committed Feb 25, 2020
    Configuration menu
    Copy the full SHA
    3c31f3c View commit details
    Browse the repository at this point in the history

Commits on May 19, 2020

  1. Pass router into eventgate factory function

    This will allow for custom EventGate implementations
    (like eventgate-wikimedia) to register extra routes
    with the eventgate service.
    
    eventgate-wikimedia will use this to expose runtime stream
    configs.
    
    Bug: T253157
    Change-Id: I72b21df3696e5fa09bf5e9597037c80af79ce6d6
    ottomata committed May 19, 2020
    Configuration menu
    Copy the full SHA
    ab16908 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2020

  1. Add missing semicolon

    Change-Id: Id35ef1a18d476bf276de7ac9db8ba18a28d31c75
    ottomata committed May 26, 2020
    Configuration menu
    Copy the full SHA
    1c0d6b9 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #7 from ottomata/master

    Pass router into eventgate factory function
    ottomata committed May 26, 2020
    Configuration menu
    Copy the full SHA
    6fc596f View commit details
    Browse the repository at this point in the history

Commits on Jul 6, 2020

  1. Bump service-runner dependency to 2.7.7

    Release EventGate 1.1.1
    
    Change-Id: I4e502f3d9bd4559ab6d2e0293bf05595d341beae
    ottomata committed Jul 6, 2020
    Configuration menu
    Copy the full SHA
    85d95ea View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2020

  1. Configuration menu
    Copy the full SHA
    12b803e View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2020

  1. Configuration menu
    Copy the full SHA
    f23b14e View commit details
    Browse the repository at this point in the history
  2. When requiring eventgate factory modules, search cwd and app_base_path

    This allows our default config files to work even if eventgate is launched
    from outside of the current directory.
    ottomata committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    e78b404 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7eecd8f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    46a2bdb View commit details
    Browse the repository at this point in the history
  5. Fix lint errors

    ottomata committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    593eaae View commit details
    Browse the repository at this point in the history
  6. Merge pull request #8 from wikimedia/app_base_path

    App base path
    ottomata committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    e42b9cc View commit details
    Browse the repository at this point in the history
  7. Bump version to 1.2.0

    ottomata committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    39d1c5a View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2020

  1. Add a configurable /v1/events-test route

    If `test_events` is configured, a `GET /v1/events-test` route will be added.
    When requested, the `test_events` will be produced as if they were POSTed to
    /v1/events. This is useful for readiness probes that want to make sure the
    service can produce events end to end.
    
    Bug: T251935
    ottomata committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    9f6b39a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    48905c7 View commit details
    Browse the repository at this point in the history
  3. Use /v1/_test/events route instead of /v1/events-test

    More clearly indicates that this is a route for internal use.
    ottomata committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    aab39ad View commit details
    Browse the repository at this point in the history
  4. Merge pull request #9 from ottomata/master

    Add a configurable /v1/events-test route
    ottomata committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    d3326ba View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2020

  1. Fix bug in /v1/_test/events where test event default values were only…

    … being set once
    
    Downstream processors of events might mutate those events if they are filling
    in default values. Usually this is fine since normal events are discarded after
    they are processed.  But we were holding a reference to test_events, and when
    they were mutated, the next call to /v1/_test/events was passing in the mutated
    events from the previous call.
    ottomata committed Aug 12, 2020
    Configuration menu
    Copy the full SHA
    e7cfa6d View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2020

  1. In CORS mode, also respond with access-control-allow-methods

    This is needed for compatibility with Chrome's Network Error Logging
    reporter code: https://bit.ly/2YWcf6f
    cdanis committed Aug 27, 2020
    Configuration menu
    Copy the full SHA
    15d1a96 View commit details
    Browse the repository at this point in the history
  2. Also parse content-type application/reports+json

    Per the Reporting API W3C technical recommendation, this is the
    content-type used by browsers to POST reporting events.
    https://www.w3.org/TR/reporting/#media-type
    cdanis committed Aug 27, 2020
    Configuration menu
    Copy the full SHA
    6a367d8 View commit details
    Browse the repository at this point in the history

Commits on Aug 28, 2020

  1. Configuration menu
    Copy the full SHA
    b21443b View commit details
    Browse the repository at this point in the history
  2. Merge pull request #10 from cdanis/network-error-logging-compat

    Make EventGate compatible with receiving Network Error Logging reports from Chrome
    ottomata committed Aug 28, 2020
    Configuration menu
    Copy the full SHA
    38e2ec0 View commit details
    Browse the repository at this point in the history
  3. Bump to version 1.3.2

    Add comment in app.js about cors modification for network error logging.
    ottomata committed Aug 28, 2020
    Configuration menu
    Copy the full SHA
    e900440 View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2020

  1. Provide express Response context to EventGate

    Bug: T263466
    ottomata committed Sep 23, 2020
    Configuration menu
    Copy the full SHA
    892079f View commit details
    Browse the repository at this point in the history

Commits on Oct 20, 2020

  1. Make node-rdkafka an optionalDependency

    Producing to Kafka is just one way to use EventGate.
    It's nice to have it as the default, except that building the
    librdkafka binary is not very lightway, nor does it always work so
    smoothly on all OS-es (e.g. MacOS). By making node-rdkafka an
    optional dependency (and guarding against it being missing),
    we should be able to more easily create development eventgate
    instances without needing to build librdkafka.
    
    Bug: T266058
    ottomata committed Oct 20, 2020
    2 Configuration menu
    Copy the full SHA
    dcfe10c View commit details
    Browse the repository at this point in the history
  2. Since node-rdkafka-statsd is an optionalDependency, guard against req…

    …uiring it
    
    Bug: T266058
    ottomata committed Oct 20, 2020
    Configuration menu
    Copy the full SHA
    4b605bd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3b6023c View commit details
    Browse the repository at this point in the history