Kodi “Leia” 18.5 Release

In our ongoing mission to bring you the very greatest (and most reliable) media centre software in the world, it’s time to let another point release escape into the wild. Usual rules apply: this isn’t about features, it’s about stability and usability.

As usual, you can find a full summary of closed pull requests on GitHub, but the summary would be…

Interface/Look-and-Feel

  • Estuary and GUI info fixes, including scrollbar behaviour, icon names, label changes
  • Add dual support for Artist Slideshow 2.x and 3.x
  • Fix to always allow ‘Black’ screen saver
  • Fix wrong sort order list for music playlists node

Playback/Display

  • Fixes to external subtitle playback
  • Fixes to support for archives over UPnP
  • Fixes to “queue item” and “play next” for STRM files with Plugin URL
  • Fixes to “hide watched” status for videos
  • Fixes to resume handling when marking a file as unwatched

PVR

  • Fixes to EPG database storage, start/stop of PVR service
  • Fix handling of open modal dialogs
  • Fixes to commercial skip (EDL) processing 

Other/General Fixes

  • Multiple Android changes around windowing, secure decoder and SDK versions
  • Multiple iOS changes, including support for iPhone 11 and 7th generation iPad, plus fixes for touch input, overlapping drawing surfaces, sandbox checks, notch support.
  • MacOS fixes around windowing, where only a portion of the screen was correctly rendered
  • Log files improvements around verbosity and security
  • Shoutcast improvements
  • Various fixes and improvements to add-on settings, package build documentation, build system, advancedsettings.xml, skin/profile changes and many other subsystems

 

The nature of point releases is that most of these changes won’t be visible to most people unless they address a specific problem you’d stumbled across. That said, they’re all real bugs, and real fixes, so thanks as always to all who found a bug, took the time to report it and, in some cases, provided a fix.

The full v18.5 changelog can be found in our GitHub milestone. If you want to read back on what was actually changed in v18 itself, you can find the corresponding articles in the blog posts – Kodi 18Kodi 18.1Kodi 18.2, Kodi 18.3 and Kodi 18.4.

Application delpoyment on different platforms (notably, Google Play and the Microsoft Store) varies due to circumstances outside of our control. It may thus take a few more days to appear everywhere, so just stay tuned.

Windows Developers – Kodi Needs You!

Windows Developers – Kodi Needs You!

It will probably come as a surprise to many of you that the active team of Kodi developers is tiny – millions of users and yet only a handful of volunteers spending their spare time to do all the technical stuff at the heart of Kodi. In turn, there is another handful of valuable people providing user support, forum moderation, supervision of the addon repo, and so on. Sometimes, we have a need for specific skills that the team does not currently have. Well, that’s what has happened.

You can read all about the switch to Python3 here, an essential upgrade to one of the underlying tools which Kodi uses. This is a breaking change for us, and there is a lot of work that needs to be done to get things functional again. In turn, this has brought the lack of experience of (or even interest in) developing on the Windows platforms in the team to a crisis.

We are currently very short of active developers with in-depth, practical knowledge of developing and deploying C++ applications on Windows platforms, for both the desktop and UWP versions of Kodi. We especially need people:

  • who know and understand CMake, to bring packaging of Windows dependencies into line with those of our other actively-developed platforms.
  • with knowledge of the UWP API, and an interest in implementing Kodi as a UWP app running on Xbox, etc.

We cannot hold up releases of Kodi just for one or two platforms, no matter how large or active they may be or how many users they have. So there is a real risk that if new blood does not join the team, at least UWP (XBox) will have to be dropped for Kodi v20 and probably even Matrix v19.

Put bluntly, we need Windows developers. If that is you, and you’d be willing and interested to work on a project like Kodi, then we’d love to hear from you. We really want to say that our existing developers would be able to mentor as much as required, and we will certainly assist as much as we can, but in reality you need to be self-reliant and sufficiently experienced to be able to hold your own. Kodi is not a starter project, more a serious mountain that few conquer; it’s complex, but very rewarding too. A sense of adventure and enjoyment of unravelling mysteries and puzzles would help a lot.

Bottom line, without developer interest, the likelihood of there being a UWP release for v19 is slim, and v20 would be zero.

Your Kodi needs you!

 

Footnote: for those who may be interested, Team member Rechi has provided the following technical notes.

The current dependency system is mandatory for compilation on Android, iOS, macOS and tvOS. It can be also used for Linux, but we usually use system libraries (provided by the distribution). The process compiles all libraries needed for Kodi (link) from source, along with some required tools (link).

For Windows, however, pre-compiled libraries (except FFmpeg and libdvd) and executables are downloaded (download-dependencies.bat) and then used to build Kodi. Because some libs depend on other libs, one has to recompile all reverse dependencies to be sure everything is still working. If an issue then shows up within a library, that one has to be compiled again (and maybe also, in turn, its reverse dependencies), packaged and re-uploaded, instead of simply fixing the issue in source code.

Where we’re trying to get to with Windows, then, is to have all necessary libraries compiled from source, as an integrated part of the build process, and thus replace the download-dependencies.bat, download-msys2.bat and make-mingwlibs.bat scripts.

The main changes for this can be found here as detailed in this pull request (link). It switches from downloading pre-compiled native executables to building them from source. Target libraries are only switched to compiling from source for x86-windows, arm-windowsstore, x86-windowsstore and x86_64-windowsstore, because it currently contains only required dependencies. This means those platforms will lose some functionality until the libs are added. This can be done one by one and I can guide anyone who is interested. Once all optional libraries are added, x86_64-windows platform can also be switched to this dependency system.

 

Kodi 19 with Python 3 Goes Live

Kodi 19 with Python 3 Goes Live

Nearly two years ago, we announced that Kodi was migrating to use the Python 3 interpreter for its many addons (see here) and we explained both why we were doing it and what would change. Since then we have been encouraging all add-on developers to work towards that goal. If you want to read more about how to make add-ons work with the new Python version, see this page on our wiki.

As Python 2 is imminently reaching end of life (1st January 2020)m we’ve needed to pull this forwards, so have just taken the next big step: the nightly builds for Kodi 19 “Matrix” are now using the Python 3 interpreter to run all Python-based add-ons

This means that not only can add-on developers test their work using the most recent Kodi builds, but that early bird users of v19 also are able to use them. However, this migration is very much a breaking change for us, and there’s a lot of work that needs to be done to get things fully functional again. This also needs to be done quickly, as we need to be complete before the end of life of Python 2 happens.

The support of the wider community in this phase will be very welcome. For early users of Kodi v19 via the nightly builds, the obvious issue is that a large number of add-ons are non-functional. Problems with specific add-ons can best be reported on the forum thread for that add-on – read up if the author is already aware before posting. However, the developers of some older add-ons are no longer active, so anyone with Python skills and an interest in Kodi is encouraged to get involved with updating some of the now otherwise-unmaintained add-ons and scripts.

There are also issues that need core developer knowledge to fix. Since moving to Python 3 there are some difficulties on all Windows platforms in particular. The version of Kodi for UWP (Xbox) does not compile at all, and needs someone to champion it. There are also issues with certain libraries e.g. Pillow, PyCryptodome, cTypes etc., being missing or incompatible versions, so those add-ons that depend on them don’t run and can’t be tested on Windows.

Things will be a little raw at the edges until we can get these things fixed, so bear with us and if you have skills and can step up and contribute then please do.