Reflections and Projections

New Release: OpenLP 3.0 RC1 (2.9.4) Mighty Malachi

Time for the first release candidate for 3.0 - we're getting really close now!

Basically, if no issues are detected with this release it will become the 3.0 release.

Bug fixes since beta 2

  • Dark mode fixes

  • Fix of problem showing presentations after media items

  • Fix issues when adding service items remotely

  • Default to the first screen if there is no display screen

  • Correction of previous fix for setting slide numbers in footers

  • Various code clean ups especially Alerts.

  • Fix media issues with DVD playing

  • Resolve issues with formatting Tags

  • Fix bugs from the beta 2 release

This release should be nearly ready for production, but there might be a few bugs left here and there. Make sure to report them if you find any!


OpenLP 3.0 Beta 2 (2.9.3) Zealous Zechariah [UPDATED]

Yes! It's finally here! The second beta release of OpenLP 3.0 is available for download immediately. Go and get it while it's hot!

From here on out, we will only be fixing bugs and making release candidates in an effort to get version 3.0 out the door.

New Features

Here are some of the fancy new features in this release:

  • Better dark mode

  • Folders in Media and Presentations

  • Various Webserver changes to support the remote interface.

  • Quick access to the help through the "?" icon on a number of windows

  • High DPI scaling for 4k monitors

  • Improved media handling

  • Updated display mode toggle system

  • Add slide numbers in footers

  • Allow sub directories in custom stages

  • Make images fullscreen

Bug Fixes

Of course, this release also packs a ton of bug fixes and enhancements:

  • Fix merging of song books

  • Fix replacing the incorrect service entry when the live item was changed externally (#881)

  • Fix some issues with the alerts

  • Handle window changes more gracefully

  • Fix icons in print when using a dark theme

  • Fix data directory copy fail

  • Various fixes around presentations

  • Various fixes for the remote API and the web remote

  • Fix preview video restart after pause or stop

  • Fix some bugs in the CCLI/SongSelect import

  • Fix missing image service load crash

  • Fix a bug where drag-and-drop images are loaded twice.

  • Fix chapter count for Zechariah

  • Fix a few other issues with Bibles

  • Fix reset footer template

    And let us not grow weary of doing good, for in due season we will reap, if we do not give up.

    Galatians 6:9 ESV


OpenLP 2.9.2 aka 3.0 Beta 1 - Persistent Peninah

As the song says "Come now is the time to - test a new version of OpenLP!"

Apart from some select as-yet implemented features, this beta contains all the features that will be in the final release of OpenLP 3.0. This beta release should be stable enough for people to try it out and report back any bugs they encounter. Please make sure you know how to generate a debug log file and submit a log file when something goes wrong.

Of course there are a ton of bug fixes across the board, including fixes in some of the song importers, fixes in handling videos, presentations as well as fixes to the web Bibles.

New Features

  • Keynote and PowerPoint support for macOS

  • New web remote version (upgrade by visiting Settings -> Remotes)

  • Fixed SongSelect importer -- it now opens an internal web browser

  • A better dark mode on Windows 10

  • Native dark mode on macOS

Known issues

  • Using a video / streaming background theme prevents playback of audio linked to to songs


Other notable changes and bug fixes

  • Powerpoint fixes

  • Relicense GPL-2 files

  • Fix the CrossWalk importer

  • Fix two bugs in the MediaShout importer

  • Fix image db upgrade

  • Add footer to the object returned in the api

  • Re-add custom stage view support

  • Expose the entire ServiceItem in the API

  • Remove and add screens without reloading screens

  • Allow XML processing istructions in OpenLyrics importer

  • Revert recently introduced bug causing video background to be on top of lyrics. The crash this was supposed to fix is no longer present.

  • Fix the colour of the icons on macOS

  • Set default header and footer areas if not overridden

  • Scale service save progress increments to thousandths

  • Fix incorrect image title from loading service

  • Fix Image Backgrounds and remove Image Manager

  • Upgrade and cleanup WebSocket code

  • Various alpha2 fixes

  • Update API definition

  • Settings cleanup

OpenLP 2.9.1 aka 3.0 Alpha 2 - Encouraging Ephraim [UPDATED]

It has been a few months since the first alpha release and now the time has come for the next alpha release. We expect to have implemented most of the new features that will be in the upcoming 3.0 release, so the next release will be a beta release, marking the shift to focus on bugfixes and stability.

Release Highlights

  • Fixed planning center plugin

  • New service file format (faster loading of presentations from service file)

  • Web remote and web complete

  • Songs with Media backgrounds

  • Media now supports live streams via cameras or VLC IP streams

  • Changes to internals which improve the start up time

  • Tons of bugfixes.

Do note that this is an alpha release and as such it is not suitable for "production use". There will be serious bugs. There will be crashes. There is a high risk of data loss. That being said, we hope you will test this release and report any findings to the forums or issue tracker. It is recommended to use the portable build/mode (download the portable build for Windows, or use the -p command line argument on Linux or macOS) if you do not want to affect existing install.

Have I not commanded you? Be strong and courageous. Do not be frightened, and do not be dismayed, for the Lord your God is with you wherever you go.

Joshua 1:9 ESV


Full Change Log

  • Remove a traceback on exiting OpenLP

  • Add back toolbar separator

  • Fix biblegateway webpage parsing

  • New API method to return current theme

  • Use single method to set service items via both position and uuid

  • Update tests to match above new features

  • Fix issue where chords were not being returned to the API

  • Fix the clear/backspace icon (the old one doesn't exist in Debian)

  • Clean up Apis and remove duplicate files

  • Add new API to help testing

  • Fix a traceback to wrongful path to string convertion

  • Correctly hide network stream button in the theme background page.

  • Fix traceback in the FTW due to the mainwindow (which is not yet created) being used

  • Updated translations

  • Change server send correct files for new web-remote

  • Change live toolbar to use radio buttons

  • Removed the live -> preview button

  • Simplified button handler functions (removing duped code)

  • Set new showScreen shortcut to spacebar

  • Removed desktopScreenEnable button and shortcut

  • Liveworship import change

  • New service file format

  • Fix errors in translatable texts

  • Logging and Powerpoint fixes

  • Fix loading optical and streaming items from servicemanager

  • Always use transparency when going to desktop

  • Fix loading PDF items from the servicemanager

  • API improvements

  • Deploy to PyPI when a tag is created

  • Make OpenLP download version files from

  • Fix theme image transparency

  • Remove global background

  • Fix slow preview after fetching live image

  • Add missing theme functionality

  • Download the web remote as part of the FTW

  • Add version checking for the web remote

  • Always order the authors when exporting to OpenLyrics

  • Fix core/logo hide on startup setting

  • Fix display stuck as hidden and invert transparent display setting

  • Fix up the formatting of the contents of the help box

  • Fix presentation load from service file

  • Fix some race conditions

  • Remove calls to ImageManager (which no longer exists)

  • Fix a crash in the remote API

  • Add basic theme API

  • Refactor deployment away from the web server thread

  • Refactor the web remote settings tab

  • Provide a way for threads to show an error message to the user

  • Fix an issue where multiple zeroconf services were being run instead of a single instance on multiple addresses

  • Refactored the DownloadProcess dialog

  • Always return a list when searching in the API

  • Fix error when adding songs from services

  • Fix song editor crash - don't call a non existent function (create_slides on a service item)

  • Add support for network streams

  • Don't reload images on start (they are already loaded)

  • Update Reveal.js to 3.9.2

  • Fix vertical positioning on text slides

  • Fix common settings crash

  • Deregister screen-updates to the theme widget when it closes.

  • Fix missing / incorrect copyright

  • Update remote API to use Flask, and be more RESTful

  • Made the Bible and song import more robust.

  • Properly detect chords, support >5 optional splits

  • Change Structure of OpenLP and move a test

  • Fix bibleserver integration.

  • Migrate setting definitions to Core from plugins

  • Handle git styled version tags/hashes instead of bzr

  • Fix planningcenter traceback

  • Fix minor stuff detected by pylint.

  • Create a Theme Preview dialog, plus some theme background fixes.

OpenLP 3.0 Alpha 1: Refactored Rebecca

At long last, we are proud to announce the first alpha release of OpenLP 3.0!

The biggest new feature in version 3.0 is the new renderer. Still based in HTML, but using the new Chrome-based QtWebEngine component, it should deliver much better performance, and it also enables us to offer something people have been requesting for a long time: transitions!

But the wheat and the spelt were not ruined, for they ripen late.

Exodus 9:32

Below is a list of known issues, new features, enhancements to existing features, and bug fixes. Download links are at the bottom of this article.

Known Issues

  • Disable BibleServer support for now

  • Remote API is still unstable

  • Old web remote doesn't work, new one on the way

  • QCollatorKey error when loading services created by OpenLP 2.4.6

  • After installing on Windows OpenLP does not start automaticly even though "Launch OpenLP" is checked

New Features

  • Implemented a new renderer

  • Transitions in themes

  • Drop all media players other than VLC

  • Planning Center plugin

  • New screen selection widget

  • New icons

  • New song importers:

    • Singing The Faith

    • LiveWorship

    • ProPresenter 5 and 6

    • EasyWorship 6

  • New Bible importers:

    • SWORD

    • WordProject

  • Searching by Song Number

  • Guitar chords (in ChordPro format)

  • Update license GPL version 3 or higher

  • Added a Zeroconf service to aid devices detecting OpenLP on the network

  • Video changes

    • Ability to show Streaming

    • Sound for Preview

    • Ability to loop videos

    • Show video time and how long it has played

  • Support Impress for presentations on macOS via Pyro4

  • Support PJLink2 specification for projector control

  • New dark theme for OpenLP

  • Global proxy settings

  • Totally new internal API server

  • Added SongBook name, Song Number and Alternative Title to "Entire Song" search

  • Support more fields in song search: topic, copyright, CCLI number search

  • Natural sorting for song book searches

  • Revamped the Bible tab interface in the Library

  • New logo and branding!


  • Refactored how settings work

  • Better layouts in Theme wizard

  • Better parsing of scripture references

  • Sort the authors when exporting the songs

  • Alerts are now able to scroll

  • Update the about dialog

  • Updated translations

  • Some performance enhancements

  • Add epub, cbz, and fb2 support to pdf controller

  • Catch some errors to provide user friendly error messages

  • Replace PyICU with PyQt's QCollator

  • Add proxy settings button to First Run Wizard

  • Remove proxy settings from individual bibles and use the central OpenLP proxy server settings.

  • Use appdirs instead of pyxdg

  • Raise minimum Python version to 3.6

  • Implement natural sort for authors, topics, songbooks, themes

  • Added QR code and link for iOS app to remote plugin ui

  • Hide the splash screen when a message shows during startup

  • Hide the Projectors manager by default so that it doesn't confuse people

Plus a whole lot of code cleanup and feature streamlining...

Bug Fixes

  • Fix window titles so that the main window just says 'OpenLP'

  • Update the translation process files and fix issues

  • Use PyMySQL rather than MySQL Connector

  • Fix service Print code

  • Fix deleting song books

  • Fix bible reference search when text matches multiple books

  • Strip unwanted formatting characters when pasting into song editor

  • Word of Worship file importer fixes / rework

  • Fix choruses, bridges & etc. being imported as verses in CCLI txt files

  • Attempt to remove/reduce circular imports

  • Fix dvd clip selection

Tons and tons of other minor bug fixes



Windows 7+ Windows 7+ (32-bit) Windows Portable Windows Portable (32-bit)


macOS 10.13+


Fedora    (Debian & Ubuntu downloads unavailable at the moment)

Source Code:

Source Code

OpenLP is now on GitLab

One of the steps toward OpenLP 3.0 was moving to git and GitLab, and this has now been completed. After many years on Launchpad and using Bazaar, it was clear to us that unfortunately there was no future in either of those, due to them being all but abandoned by their developers.

You can now find OpenLP on GitLab:

Further News

We've also recently made great strides toward an alpha release recently. The new rendering engine is almost complete, and the VLC-based media framework is also pretty much done. There are a couple more minor things like bug fixes and general cleanup that need to be done, and then we're going to release OpenLP 3.0 Alpha 1.

Again, we don't have an exact date, but it will be pretty soon.

Helping with Development

Just a reminder, if you want to help with development (and that includes non-coders!), please take a look at the getting started page on our wiki, and making sure to join the mailing list and hang out with us in IRC.

Integration with BibleGateway Broken

Over the last few days we have received a TON of reports about OpenLP's integration with BibleGateway being broken. Users who rely on web Bibles from BibleGateway are telling us that they get an error message whenever they try to look up new passages (verses are downloaded from Bible Gateway on an as-needed basis in order to comply with Bible translation copyright terms).

Unfortunately there is no quick fix for this, and because some of the libraries that OpenLP 2.4.6 uses are no longer available, we are not able to create new builds for the OpenLP 2.4.x release series. We are investigating other options, but we cannot guarantee anything.

While we are well aware that some bibles available on BibleGateway are not available elsewhere, there are other sources for a lot of Bibles, such as Zefania or from the homepage of Open Song. In both cases do remember to extract the zip file before importing. See the Bibles section of the manual for more details on importing Bibles from other sources.

Alternatively, going to and copying and pasting the Bible text into a custom slide is also an option.

The only good news here is that the new implementation for web Bibles in the upcoming OpenLP 3.0 release is not affected by this, although it is not ready for production use.

We apologise for the problems people are experiencing. The bad side of using an external service like BibleGateway is that when they change something, OpenLP is not built to handle the change, and appears to be "broken". Sadly, there is no real way to prevent something like this from happening again.

OpenLP Now Licensed Under GPL Version 3

As of today, the 1st of May 2019, OpenLP is officially licensed under version 3 (or higher) of the GNU General Public License.

Simply put, we're updating to a newer version of the license we already use.

Does this affect me?

People reading this blog post will no doubt be asking themselves, "does this affect me?" and the answer depends on what your role within OpenLP is.

End user

If you're an end user, someone who downloaded and installed OpenLP and is using it in your church, youth group, Bible study, or somewhere else, this change does not affect you. Your freedoms remain the same, you can still use it whenever, wherever and however you want. You can still give OpenLP away to as many people as you want, without needing to obtain permission (the license expressly gives you permission to do this). This newer version of the license ensures your freedoms the same way the old version did, but adapted to a newer age of technology.


In many ways, this change does not affect people contributing to OpenLP either. From today onward, however, your contributions to OpenLP will be covered by version 3 (or higher) of the GNU GPL.

Do I need to do anything?

No, this is just a change to how we the developers are licensing OpenLP. You don't need to do anything.

Why the change?

Version 2 of the GPL was sufficient for many years, but many of the libraries and projects that OpenLP uses have moved forward, not only in code but also in licenses. With this in mind, OpenLP had to change our license to be compliant with the licenses of the libaries and project we use.

Getting closer to OpenLP 3.0

It has been almost 2 years since the release of 2.4.6 and understandably we are getting a lot of questions as to when the next release will be ready. The answer is always the same: "When it is ready". So what does "ready" mean? Currently there are 2 major features that we need to finish before we feel we can begin the release process:

  • The new renderer engine.

  • The new VLC based mediaplayer framework.

Once these are in place we will release the first Alpha (2.9.1) and then work from there towards the final release of 3.0.

So how far are these features from being complete?

The new rendering engine is fairly close to being complete, but we need to make sure we have all standard use cases (songs, image, etc.) working correctly.

The new mediaplayer framework still needs some work. All the hard ground work has been done (i.e. playing videos works), so it is now more a question of connecting the different parts of the code to make everything work correctly and ironing out the bugs that have crept in.

But why is it taking so long?

The thing is that it requires time to do development, and as volunteers, time is a scarce resource when you have full-time jobs and families. In fact, within the last year, 3 of the 4 core developers have been blessed with babies, which means even less time for OpenLP development.

Another reason for the long wait is that we might have been a bit too ambitious with this release. The thing is that when you start adding code to introduce new major features you often see that the "old way" of doing things is not optimal for the new features and therefore you want to change the old code to better support the new code. Sometimes this can lead to using time rewriting code that strictly speaking does not need rewriting, thereby "stealing" time from new features. So while the end result is a lot better, it also means longer development time.

License change

A few months ago we were made aware that OpenLP's current license is not compatible with the licenses of some of the libraries that OpenLP uses. For instance, PyQt5 is under the GPLv3 license, which is incompatiable with OpenLPs GPLv2. To resolve this we are planning to relicense OpenLP under the GPLv3 license. To do this we have contacted all of the known contributors to OpenLP to get their permission to relicense. So far it has been a success, even though it is a slow process. Not everybody has replied yet, so if you have contributed in the past but have not been contacted about this, please contact us.

Other news

Around the time of the upcoming release we will also migrate the OpenLP bug tracker and source code from to GitLab. This also means migrating from bzr to git.

Shutting Down the Support System

Due to a lack of resources within the OpenLP team we have decided to close down the e-mail support system (not to be mistaken for the forums which will not be affected).

For some time now a single person has answered almost all the support requests the support system has received. And since that person is also one of the most active developers of OpenLP, it has drawn a lot of time away from actual development. In order to free up more time for development the only solution was to close down the support system.

We are really sad to do this, as we feel our support is one of the defining parts of OpenLP, but since we need to move OpenLP forward we do not believe we have any other choice - though it was not an easy decision.

In future anyone who e-mails will get a message that redirects them to the manual and the forums.

[ Image Credit: Closed by Rob Brewer ]