Video.js 6.5.0 Release

Gary Katsevman
Videojs
Published in
3 min readNov 29, 2017

November 17th marked the pre-release of Video.js 6.5.0. It comes shortly after the release of 6.4.0, which has now been promoted to latest! This is a pretty exciting release because we finally got our own element! I like to call it the I Can’t Believe It’s Not Custom Elements because it isn’t an actual custom element but it’s not a standard HTML element either. Also, a nice and smooth progress bar thanks to a first time contributor; thanks @vhmth! A pretty major memory leak fix, and many code refactors and bug fixes.

I’d like to thank everyone who contributed and the four first time contributors to Video.js: @vhmth, @FirefoxMetzger, @EhsanCh, and @shahlabs.

This post comes a week late because it was Thanksgiving week in the US after release and I was on break, if you celebrate Turkey day 🦃, hope you had a good one!

Notable Changes

  • I Can’t Believe It’s Not Custom Elements with a <video-js> element. It works exactly like the <video> embed but without requiring you to use the <video> element and the benefits and drawbacks that come with it. It also adds the video-js class name automatically for you, so, there’s no need to add it.
  • A smooth progress bar!
before the change
after the change
  • After much spelunking in the code base and developer tools, we’ve plugged most of the memory leaks with retained DOM elements in Video.js!
  • Many code refactorings from our old code style to the new one by @kocoten1992!
  • Previously, you could accidentally seek or toggle playback using the middle or right clicks. Now, just go ahead and try it!
  • An accessibility fix with regards to title tooltips and menu items.
  • Better handling of play() in our new asynchronous world, especially immediately after changing the source.

Committers

Raw Changelog

6.5.0 (2017–11–17)

Features

Bug Fixes

  • Avoid empty but shown title attribute with menu items and clickable components (#4746) (dc588dd)
  • Player#play: Wait for loadstart in play() when changing sources instead of just ready. (#4743) (26b0d2c)
  • being able to toggle playback with middle click (#4756) (7a776ee), closes #4689
  • make the progress bar progress smoothly (#4591) (acc641a)
  • only allow left click dragging on progress bar and volume control (#4613) (79b4355)
  • only print element not in DOM warning on player creation (#4755) (bbea5cc)
  • trigger timeupdate during seek (#4754) (1fcd5ae)

Chores

Code Refactoring

Documentation

Performance Improvements

  • null out els on dispose to minimize detached els (#4745) (2da7af1)

Tests

Originally published at blog.videojs.com.

--

--

Gary Katsevman
Videojs

Software Engineer using JavaScript. Technology enthusiast. Opinions my own. @videojs @Brightcove