Uploaded image for project: 'Node.js Driver'
  1. Node.js Driver
  2. NODE-2934

Audit function overrides for complete definitions

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.0.0
    • Affects Version/s: 4.0.0
    • Component/s: Shell
    • Labels:

      In Typescript when listing the function overrides you have to enumerate all possible usages, seperate from the actual function signature. For example:

      watch(): ChangeStream;
      watch(pipeline?: Document[]): ChangeStream;
      watch(pipeline?: Document[], options?: ChangeStreamOptions): ChangeStream {/* ... */}
      

      Since there is no override that accepts options, options is not exposed as a parameter to the user of this function. This is also a case where no override is necessary. We should scan through our usage of overrides and make sure we have used it correctly and completely.

      Helpful regex: \1 references the first capture group!

      ^\s*(\w+)\(.*\).+;\n\s+\1

            Assignee:
            neal.beeken@mongodb.com Neal Beeken
            Reporter:
            neal.beeken@mongodb.com Neal Beeken
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: