Class properties are instantiated twice when pushing changes

Please select what you are reporting on:

Verse

What Type of Bug are you experiencing?

Verse

Summary

When pushing changes to the server (which automatically previews the game) creative_device member classes will be instantiated twice.

Steps to Reproduce

  1. Use this verse script:
log_test:=class(log_channel){}
test_class:=class<concrete>:
    Logger:log = log{Channel:=log_test }
    block:
        Logger.Print("Test")

test_device := class(creative_device):
    
    @editable
    TestProperty: test_class = test_class{}
  1. Add a test_device into your world.
  2. Push changes into your server (F5 or F6)
  3. Check the Logs, they prove that the TestProperty creates two separate test_class instances.

(5.Now leave the preview and start the preview again - this time it will only print once, which is the correct behaviour)

Whenever you push changes, it will create two instances. When you just preview without pushing changes, it will correctly create one instance.

Expected Result

The test_class should be instantiated once when pushing changes to the server.

Observed Result

The test_class is being instantiated twice.

Platform(s)

All