# CMS 4.0.0-rc2 released

**URL:** https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854
**Category:** Beta
**Created:** [August 19, 2023, 12:18pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854 "2023-08-19T12:18:50Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 19, 2023, 12:18pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/1 "2023-08-19T12:18:51Z")

</div>

We are pleased to announce release candidate 2 for the 4.0 version of Xibo. The codename for this version is “Westphal”.

**[20D/Westphal](https://en.wikipedia.org/wiki/20D/Westphal)** was a periodic comet with an orbital period of 61 years. It fits the classical definition of a Halley-type comet with (20 years \< period \< 200 years). It was originally discovered by the German astronomer J. G. Westphal on July 24, 1852.

**4.0.0-rc2 is a development preview only and should not be used in production. We recommend testing this release with a fresh installation of Xibo.**

**Please note** , due to an error during the release process, the `release-4.0.0-rc2` Docker tag and release files report 4.0.0-rc1 as the version on login and about.

Earlier test releases working towards 4.0:

- [CMS 4.0.0-alpha released](https://community.xibo.org.uk/t/cms-4-0-0-alpha-released/29582)
- [CMS 4.0.0-alpha2 released](https://community.xibo.org.uk/t/cms-4-0-0-alpha2-released/29636)
- [CMS 4.0.0-beta released](https://community.xibo.org.uk/t/cms-4-0-0-beta-released/29714)
- [CMS 4.0.0-rc1 released](https://community.xibo.org.uk/t/cms-4-0-0-rc1-released/29807)

### Feedback, Feedback, Feedback

This release candidate allows all users to test the v4 functionality we have included so far and provide feedback. This is a huge help to us in identifying bugs with new functionality or areas we ought to note for further improvement.

Feedback can be made in reply to this post where a member of the team will pick it up and ask for further details if required.

## Download

This release requires PHP 8.1 or later. We also recommend MySQL 8.

Please use the links below to download this release:

- Xibo for Docker - [Linux](https://github.com/xibosignage/xibo-cms/releases/download/4.0.0-rc2/xibo-docker.tar.gz) / [Windows](https://github.com/xibosignage/xibo-cms/releases/download/4.0.0-rc2/xibo-docker.zip)
- Xibo for [Apache/Nginx](https://github.com/xibosignage/xibo-cms/releases/download/4.0.0-rc2/xibo-cms-4.0.0-rc2.tar.gz) / [WAMP/IIS](https://github.com/xibosignage/xibo-cms/releases/download/4.0.0-rc2/xibo-cms-4.0.0-rc2.zip)

**You can also get a 14 day trial of v4.0.0-rc2 using Xibo’s Cloud hosting.**

### Players

The following beta test players are available to try with this release:

- [Android Player v4 R400](https://xibo-firmware.fra1.cdn.digitaloceanspaces.com/Android-Test-APK/Xibo_for_Android_v4_R400-5b3a998a-beta.apk)
- [Windows Player v4 R400.5](https://xibo-firmware.fra1.cdn.digitaloceanspaces.com/Windows-Test-MSI/xibo-client-v4-R400.5-win32-x86.msi)

All latest v3 players (Android, Tizen, webOS and Windows) will communicate with a v4 CMS in legacy mode.

## Changes

This release builds on the prior alpha/beta/rc releases, further refining the scheduling and layout editing experience.

- Commands: multiselect displays to run commands
- Dashboard: refresh the media manager dashboard with relevant information
- Layout Editor: group elements
- Layout Editor: pin/repeat data slots for elements
- Layout Editor: preview playlists on the canvas with previous/next arrows
- Widgets: dataset elements
- Widgets: mastodon username filter
- Widgets: PDF duration fixes
- Widgets: various fixes to static templates
- Various bug fixes

### Content Synchronisation

The content synchronisation feature is available **for beta testing on Android**. The ideal configuration is a wired network connection, to the same physical switch, with identical devices. We hope to support different devices on networks which are “further apart” and will update these recommendations once we have further feedback.

We hope to bring this feature to webOS/Tizen and Windows players in due course.

### Elements and “pin/repeat slot”

We have added an option to elements for pinning/repeating a data slot. Pinning a slot makes the first data item to appear in that slot stay there for the entire duration of that widget - it will not cycle with the others.

Repeating items to fill all data slots will ensure that you don’t have any empty slots in case you have 2 slots and 3 items (you will see items 1, 2 and then 3,1).

The pin slot options appears underneath the data slot:

 ![image](https://community.xibo.org.uk/uploads/default/original/2X/f/f64d880d5cf66c586eeafc2567b3c29d3a7dc96e.png)

And the repeat option can be found on the advanced tab.

![image](https://community.xibo.org.uk/uploads/default/original/2X/2/26d6402ed3a79d282904740e8d86938f0b0fabf2.png)

Neither of these options are fully operational yet, and we will be updating them ahead of release.

## 4.0.0 is nearly here!

This will be our final release candidate before a stable release is available in due course!

---

<div class="post-metadata">

### Author: ![vashadow](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/vashadow/32/14305_2.png) [@vashadow](https://community.xibo.org.uk/u/vashadow)
#### Post date: [August 21, 2023, 11:16pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/2 "2023-08-21T23:16:03Z")

</div>

Text and Shape elements are still not respecting the layers when a video is on the lower layer. In this pic, the video is on layer 1, and everything else is on layers above it, but the text and shape elements will not get in front of the video.

 ![image](https://community.xibo.org.uk/uploads/default/original/2X/8/89745dbe434a21dc59b9c0d84d6a2c8fc99101f6.jpeg)

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 22, 2023, 7:03am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/3 "2023-08-22T07:03:03Z")

</div>

Elements placed directly on the layout have their own Canvas layer, which determines where they appear in relation to other natively rendered elements such as playlists and videos.

You can find this option by clicking on any element and opening the positioning tab:

![image](https://community.xibo.org.uk/uploads/default/original/2X/6/6671e46cdaabe8e163c7ac57c9ba356225d23288.png)

We’re very conscious that you’re all having issues with layering, so we will introduce a layer panel before the stable release so that they are more easily managed/understood.

---

<div class="post-metadata">

### Author: ![vashadow](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/vashadow/32/14305_2.png) [@vashadow](https://community.xibo.org.uk/u/vashadow)
#### Post date: [August 22, 2023, 1:13pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/4 "2023-08-22T13:13:37Z")

</div>

Yes, thats what I am talking about. In the picture every element has its own layer with the video being layer 1

Layers  
Video - 1  
Xibo Logo - 2  
Shape - 3  
Text - 4

As you can see, when a video is involved the layers don’t matter, I also noticed data elements seem to hide behind the video as well.

Also is there no way to loop video anymore? it played once and stops, no matter how long I set the duration for.

---

<div class="post-metadata">

### Author: ![albert](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/albert/32/13381_2.png) [@albert](https://community.xibo.org.uk/u/albert)
#### Post date: [August 22, 2023, 1:14pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/5 "2023-08-22T13:14:47Z")

</div>

Hey Dan,

Apart from the fact that it took me a bit of effort to set up access for the user ‘cms’ to the ‘cms’ database (but that might be due to my tinkering installation ^^), my very first impression is that something is missing in the left menu (in the picture, the left side shows an older version, and the right side shows version 4.0rc2). I’m not a big tester for various options, just a humble behind-the-scenes admin, but I wanted to report that already. 🙂

![xibo-beta-rc2-something-missing](https://community.xibo.org.uk/uploads/default/original/2X/4/4e73e033978fee6d8d64a6a85b6450e502a19d55.png)  
Albert.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 22, 2023, 1:25pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/6 "2023-08-22T13:25:41Z")

</div>

> [@albert](#):
>
> I’m not a big tester for various options, just a humble behind-the-scenes admin, but I wanted to report that already.

Thanks Albert - its missing on purpose. The about page can be reached via the user profile menu as before, and the handbook will appear on each page in the final release. Thanks for pointing it out!

> [@vashadow](#):
>
> Layers  
> Video - 1  
> Xibo Logo - 2  
> Shape - 3  
> Text - 4

I think you’ll find that the “Shape / Text” have a “Canvas Layer” of 0 moving all of those elements behind the video/image.

> [@vashadow](#):
>
> Also is there no way to loop video anymore? it played once and stops, no matter how long I set the duration for.

It looks like that checkbox isn’t being activated - we will look at that now!

---

<div class="post-metadata">

### Author: ![vashadow](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/vashadow/32/14305_2.png) [@vashadow](https://community.xibo.org.uk/u/vashadow)
#### Post date: [August 22, 2023, 1:36pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/7 "2023-08-22T13:36:55Z")

</div>

You were correct. I did not notice the canvas layer option. I was stuck and confused by the element layer. May I ask the difference between canvas and element layer? It looks like it moved the whole canvas forward. I am assuming the video is not rendered on the canvas.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 22, 2023, 1:49pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/8 "2023-08-22T13:49:47Z")

</div>

> [@vashadow](#):
>
> I was stuck and confused by the element layer.

Sorry, this will be made much clearer with the layer panel.

> [@vashadow](#):
>
> I am assuming the video is not rendered on the canvas.

That’s right - elements are rendered on the canvas, other things (static templates, video, web page, embedded, etc) are rendered outside. We had hoped to make images render on the canvas for 4.0, but we have run out of time and will do that for 4.1.

One of the more powerful things about Elements (which is perhaps a touch on the technical side) is that they are all rendered by the player in the same webview.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 25, 2023, 7:46am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/9 "2023-08-25T07:46:42Z")

</div>

4 posts were split to a new topic: [V4 calendar widget schedule not returning events](https://community.xibo.org.uk/t/v4-calendar-widget-schedule-not-returning-events/29892)

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 25, 2023, 7:41am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/13 "2023-08-25T07:41:39Z")

</div>

2 posts were split to a new topic: [V4 release candidate closes on start](https://community.xibo.org.uk/t/v4-release-candidate-closes-on-start/29890)

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 25, 2023, 7:45am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/14 "2023-08-25T07:45:52Z")

</div>

2 posts were split to a new topic: [DataSet: two datasets update at the same time (v4?)](https://community.xibo.org.uk/t/dataset-two-datasets-update-at-the-same-time-v4/29891)

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 29, 2023, 4:09pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/15 "2023-08-29T16:09:28Z")

</div>

Below is our work in progress layer panel, designed to make it easier to select items completely covered by other items, and to see the duration of each item.

 ![image](https://community.xibo.org.uk/uploads/default/original/2X/d/dfab7b602245ccff9e4eac8c2dbf0615a86a9280.jpeg)

We have some adjustments still to make, but broadly this is what you can expect.

---

<div class="post-metadata">

### Author: ![vashadow](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/vashadow/32/14305_2.png) [@vashadow](https://community.xibo.org.uk/u/vashadow)
#### Post date: [August 29, 2023, 5:22pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/16 "2023-08-29T17:22:41Z")

</div>

is the “10” a representative of the duration for that layer? It will be helpful to see the duration for each layer as I have layouts jump all over the duration time and spend a bunch of time digging into each layer looking for the cause.

Looking good, by the way.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 29, 2023, 6:47pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/17 "2023-08-29T18:47:44Z")

</div>

> [@vashadow](#):
>
> is the “10” a representative of the duration for that layer?

Yes it is, and it will be 00:00 format to make it easier to read.

---

<div class="post-metadata">

### Author: ![real](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/r/35a633/32.png) [@real](https://community.xibo.org.uk/u/real)
#### Post date: [August 30, 2023, 10:32am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/18 "2023-08-30T10:32:28Z")

</div>

Hi, Thanks for the job !!

For information : With rss ticker i have this error :

GetResource Unknown error during getResource. E = Cache not ready

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [August 30, 2023, 10:33am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/19 "2023-08-30T10:33:24Z")

</div>

> [@real](#):
>
> GetResource Unknown error during getResource. E = Cache not ready

Usually this is because you don’t have the XTR task running operating correctly and therefore the Widget Sync Task (which warms up the cache) has not run.

---

<div class="post-metadata">

### Author: ![jwandscheer](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/jwandscheer/32/14525_2.png) [@jwandscheer](https://community.xibo.org.uk/u/jwandscheer)
#### Post date: [September 3, 2023, 4:54pm UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/20 "2023-09-03T16:54:17Z")

</div>

Hi,  
i just tried to upgrade to 4.0.0-rc2 in a local, docker-based test environment from 3.3.7.

The Migrations are failing with the following statement:

```auto
xibo-cms-web-1 | PDOException: SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a foreign key constraint fails (`cms`.`lkwidgetmedia`, CONSTRAINT `lkwidgetmedia_ibfk_2` FOREIGN KEY (`mediaId`) REFERENCES `media` (`mediaId`) ON DELETE RESTRICT ON UPDATE RESTRICT) in /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php:192
xibo-cms-web-1 | Stack trace:
xibo-cms-web-1 | #0 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php(192): PDO->exec()
xibo-cms-web-1 | #1 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/AdapterWrapper.php(157): Phinx\Db\Adapter\PdoAdapter->execute()
xibo-cms-web-1 | #2 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Migration/AbstractMigration.php(199): Phinx\Db\Adapter\AdapterWrapper->execute()
xibo-cms-web-1 | #3 /var/www/cms/db/migrations/20220915100902_add_fonts_table_migration.php(92): Phinx\Migration\AbstractMigration->execute()
xibo-cms-web-1 | #4 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Migration/Manager/Environment.php(108): AddFontsTableMigration->change()
xibo-cms-web-1 | #5 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(388): Phinx\Migration\Manager\Environment->executeMigration()
xibo-cms-web-1 | #6 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Migration/Manager.php(359): Phinx\Migration\Manager->executeMigration()
xibo-cms-web-1 | #7 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Console/Command/Migrate.php(122): Phinx\Migration\Manager->migrate()
xibo-cms-web-1 | #8 /var/www/cms/vendor/symfony/console/Command/Command.php(298): Phinx\Console\Command\Migrate->execute()
xibo-cms-web-1 | #9 /var/www/cms/vendor/symfony/console/Application.php(1040): Symfony\Component\Console\Command\Command->run()
xibo-cms-web-1 | #10 /var/www/cms/vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand()
xibo-cms-web-1 | #11 /var/www/cms/vendor/robmorgan/phinx/src/Phinx/Console/PhinxApplication.php(70): Symfony\Component\Console\Application->doRun()
xibo-cms-web-1 | #12 /var/www/cms/vendor/symfony/console/Application.php(171): Phinx\Console\PhinxApplication->doRun()
xibo-cms-web-1 | #13 /var/www/cms/vendor/robmorgan/phinx/bin/phinx(28): Symfony\Component\Console\Application->run()
xibo-cms-web-1 | #14 /var/www/cms/vendor/bin/phinx(119): include('...')
xibo-cms-web-1 | #15 {main}

```

Is this already a known problem?

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [September 4, 2023, 7:05am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/21 "2023-09-04T07:05:55Z")

</div>

Hi, yes we found that ourselves just the other day. Somehow your CMS has a font directly assigned to a layout (which is odd as that shouldn’t be possible).

We’ve adjusted the migration for 4.0.0, which will be released later today.

---

<div class="post-metadata">

### Author: ![jwandscheer](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/jwandscheer/32/14525_2.png) [@jwandscheer](https://community.xibo.org.uk/u/jwandscheer)
#### Post date: [September 4, 2023, 8:07am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/22 "2023-09-04T08:07:00Z")

</div>

Thank you!  
Looking forward to the release.  
Is there a way to find the corrupted Layout and fix it (even if migrations are running then), maybe its better to keep the system consistent?

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [September 4, 2023, 10:08am UTC](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854/23 "2023-09-04T10:08:55Z")

</div>

You could run some SQL to do that:

```auto
DELETE 
  FROM `lkwidgetmedia` 
 WHERE `mediaId` IN (
    SELECT `mediaId`
      FROM `media`
     WHERE `type` = 'font'
);

```

[Next page](https://community.xibo.org.uk/t/cms-4-0-0-rc2-released/29854.md?page=2)
