Skip to content

Conversation

chrisbreiding
Copy link
Contributor

@chrisbreiding chrisbreiding commented Jul 15, 2019

Electron 5.0.10, Node 12, Chrome 73

Changelog

@flotwig
Copy link
Contributor

flotwig commented Jul 23, 2019

Tasks:

  • Changes in Desktop GUI layout issues/improvements #4905 are breaking some desktop-gui tests w Chrome 76: https://stackoverflow.com/a/29909047/3474615
  • I was able to get the 2_cookies e2e test working, but had to bump Electron to v5.x (Node 12.0.0) to access the necessary CDP functions. This actually made fewer test suites fail than Electron v3 did, so hopefully it will lessen the redundant work needed for this.
  • Deferred issues with page loading in Electron 6 - [WIP] Electron 6.0.10 #5193
  • check native deps still work
    • only one is registry-js, manually verified that it's still working
    • get rid of our own registry-js since we can use mainline now
  • enable electron promise deprecation warnings in development
    • remove deprecated invocations - removed all i could find
  • websockets_spec shows some issues with websocket proxying in Node 12.
  • re-write socket_spec - it's failing since Node 10 and i have no idea why, it's always been spurious, might as well re-write it and eliminate the flakiness as we go
    • this was mostly fixed by the websocket_spec fix detailed below
  • video recording in e2e tests is busted - this is making most snapshots fail because the end bit is missing. this seems to be because the electron process is exiting before the video can be encoded, not because of an actual bug with video recording (race condition here?)
    • works in Electron 4.2.8 (Node 10.11.0, Chrome 69.0.3497.128) - broken in Electron 5.0.0 (Node 12.0.0, Chrome 73.0.3683.119)
    • could be a bug with a dependency, or a bug in the module API
    • "invalid data found" in uncompressed stream while compressing:
     cypress:server:video compression stderr log { message: '[mov,mp4,m4a,3gp,3g2,mj2 @ 0x70f4cc0] moov atom not found' } +3ms
       cypress:server:video compression stderr log { message: '/home/person/cypress/packages/server/.projects/e2e/cypress/videos/video_compression_spec.coffee.mp4: ' + 'Invalid data found when processing input' } +0ms
    
  • potentially update proxy to pass 102, 103 codes correctly. Node.js changed in v10 to handle these codes differently: Process 100, 102-199 status codes according to specs. nodejs/node#18033
    • tests that 102 and 103 status codes immediately end the connection have been removed, since in reality these indicate that future data is incoming on the connection
  • Node 12 made the max headers size only 8kb, down from 80kb: When http header size limit is reached, instead of a generic 400 response, return 431 Request Header Fields Too Large nodejs/node#25528
  • Updated websocket errors to not send back a 502, just end the socket. This was broken in Node 12, this new behavior fits in better with how we want to treat network errors anyways:
    • onProxyErr = (err, req, res) ->
      ## by default http-proxy will call socket.end
      ## with no data, so we need to override the end
      ## function and write our own response
      ## https://github.com/nodejitsu/node-http-proxy/blob/master/lib/http-proxy/passes/ws-incoming.js#L159
      end = socket.end
      socket.end = ->
      socket.end = end
      debug(
      "Got ERROR proxying websocket connection to url: received error %o", { err },
      )
      socket.end()
  • can now use console.table
  • update node versions, docker images to node 12.4.0

@brian-mann
Copy link
Member

Ignore socket_spec - it's likely all tested via the e2e tests actually "working".

Revert "update shell.openExternal to promisified"

This reverts commit 8b6460d.

Revert "update dialog.showOpenDialog to promisified"

This reverts commit 5f178b0.

Revert "update webContents.session.setProxy to promisified"

This reverts commit 727df3a.
@flotwig flotwig force-pushed the electron-3-from-develop branch from b929e54 to a724d4f Compare September 24, 2019 15:04
@flotwig flotwig changed the title Electron v6.0.9 Electron v5.0.10 Sep 24, 2019
@flotwig flotwig mentioned this pull request Sep 24, 2019
3 tasks
@cypress-bot
Copy link
Contributor

cypress-bot bot commented Oct 23, 2019

Released in 3.5.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

6 participants