RELEASE LiveCode 9.6.0 DP-3

Find out what's going on with LiveCode (the company), product releases, announcements, and events.

Moderators: Klaus, FourthWorld, heatherlaine, kevinmiller, robinmiller

bogs
Posts: 4610
Joined: Sat Feb 25, 2017 10:45 pm

Re: RELEASE LiveCode 9.6.0 DP-3

Post by bogs » Sat Mar 21, 2020 11:39 am

Because this is in reply to a different part of the conversation, I did decide to post it separate from the above.
FourthWorld wrote:
Sat Mar 21, 2020 7:07 am
I have to admit that I don't fully understand the details about what keeps LC bound to an obsolete OS version.

Well, he laid out why pretty clearly, it is because -
If we move up one version of Debian, chances are the built executables will no longer run on other distributions of a similar age to Debian 8 which are still supported (and will continue to be for several years to come).

The problem is that the Linux community as a whole 'does not do binary compatibility' - but we have to, which means we have to build on what some might call 'legacy distributions'... I say some, because things like CentOS/RHEL have a support window spanning 10 years - precisely because upgrading Linux is a great deal of work when it isn't just your personal machine!
And that is correct about 'nix, as opposed to release .x of Windows or Mac (generally speaking). If I remember correctly, there were also compiler incompatibilities old to new.
mwieder wrote:
Sat Mar 21, 2020 4:35 am
Now personally I don't see why the need to build in a container vs building in a vm, which IMO would seem to deal with the problem.
A container allows you to locate the .dll's and such needed for your app specifically to locations for your app, regardless of what the system is running, which tends to cut down on the problem of dll hell. Building in a VM would turn out an executable, but that wouldn't contain the dll's needed for the build type to be installed, or would try to force those into the general system places for them, which would probably result in "you have held broken packages" messages.

I probably said that poorly, but the end result is that a container is self contained, much as the name implies, and so allows you to distribute much as he says.

The above is my take on it, of course, I *could* be completely off too.
richmond62 wrote:
Sat Mar 21, 2020 11:31 am
However (you'd have been disappointed if there hadn't been a "However"), LiveCode is "bound" to Linux (or a subset of Linux distros),
and while Ubuntu 20.04 is NOT Ubuntu 14.04 or 16.04 it is, in some sense at least, the same operating system.
Yes, just as programs written for DOS or Win. 3.1 could run on Win 95 and up or Mac OS(7,8,9) could run on OSX, but they sure were not supported for that, they were supported for the platforms they were designed to run on. As an example, I can comfortably run almost any Windows version of Lc on 'nix through WINE, but if I found a problem doing that, I for sure wouldn't expect LiveCode to provide support for it :twisted:
Image

trevix
Posts: 529
Joined: Sat Feb 24, 2007 11:25 pm
Location: Italy
Contact:

Re: RELEASE LiveCode 9.6.0 DP-3

Post by trevix » Sat Mar 21, 2020 11:44 am

Great job. Thanks for the update.

I would like to make 2 observation:

1. TTS
I haven't really checked if it is a matter of dictionary update or the Text-to-speech commands and functions have not be unified for all platform:
In dictionary the "Speech Library" is reported for Android, iOS, Mac. So we have for example "speechGetVoices" to retrieve a list of voices
And then we have function and commands from the old speech library, like "revSpeechVoice" that does a similar thing but only for Mac and Window.
It would be a lost opportunity not to unify everything in a single extension (perhaps using the old terminology so as to guarantee continuity)

2. TTS and system versions
As I now, LC 9.5.1 is the last version that allows making standalone for iOS 9.3 (with Xcode 11.1).
I understand, as you say, the Apple new policy:
From the end of April 2020, Apple will only be accepting apps built using iOS13 SDKs...
Since there are around an enormous number of apple device that cannot be updated past 9.3 I would make the Speech library as an external library that can be loaded with different versions of LC. I wouldn't follow Apple that much in this "kill them all" policy of system versions.

Trevix
Trevix
OSX 10.14.6 LC 9.6.0 Dp2 iOs 9.3>

heatherlaine
Site Admin
Site Admin
Posts: 320
Joined: Thu Feb 23, 2006 7:59 pm
Location: UK

Re: RELEASE LiveCode 9.6.0 DP-3

Post by heatherlaine » Mon Mar 23, 2020 1:03 pm

We've had a discussion in the team regarding our Linux support, and agreed that the docs could do with a bit of an update. Most of the functionality works just fine on recent Linux distros, the reason its officially stuck back at 14.04/16.04 is because the browser widget doesn't work on later systems. We will update the docs to give a truer picture of what is and isn't supported on more recent Linux distros.

I hope this helps,

Regards,

Heather

bogs
Posts: 4610
Joined: Sat Feb 25, 2017 10:45 pm

Re: RELEASE LiveCode 9.6.0 DP-3

Post by bogs » Mon Mar 23, 2020 1:19 pm

heatherlaine wrote:
Mon Mar 23, 2020 1:03 pm
Most of the functionality works just fine on recent Linux distros, the reason its officially stuck back at 14.04/16.04 is because the browser widget doesn't work on later systems.
The Browser worked on *ALL* the 14.04/16.04 versions? Or was it just on the 64 bit versions of those versions. Or was it just a specific release of Lc that etc etc etc?

I can't remember seeing it work anywhere myself, but then, I don't spend a whole lot of time in the newer versions either.
Image

richmond62
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 4353
Joined: Fri Feb 19, 2010 10:17 am
Location: Bulgaria

Re: RELEASE LiveCode 9.6.0 DP-3

Post by richmond62 » Mon Mar 23, 2020 1:43 pm

We will update the docs to give a truer picture of what is and isn't supported on more recent Linux distros.

I hope this helps,
It should do. Thanks. :D

LCMark
Livecode Staff Member
Livecode Staff Member
Posts: 1087
Joined: Thu Apr 11, 2013 11:27 am

Re: RELEASE LiveCode 9.6.0 DP-3

Post by LCMark » Mon Mar 23, 2020 2:19 pm

@trevix:

Re: Speech Library

In terms of the new speech library - the functionality it offers is a superset of that offered by revSpeech. Indeed, the callback mechanism isn't something which revSpeech does, although we could possibly emulate the smaller revSpeech API with the new speech library I suppose.

We do hope to add Windows support to the new library in a future version - but definitely not 9.6.

Re: iOS Version Support

Hardware which can only run at most iOS9 was now first on sale at least 8 years ago - they are next to useless for general use as most new apps in the AppStore don't support iOS9 nor do most app updates continue to support iOS9 in their builds. Indeed devices running iOS9 connecting to the AppStore look like they now measure in the < 1% category.

Additionally, Apple stopped providing any security or related updates for iOS9 after 9.3.5 which was released in August 2016 (they did do an update in 9.3.6 in 2019 which fixed an issue with GPS and date/time - nothing else).

With that said, whilst we only support use of bundled extensions (such as the speech library) with the version of LiveCode or newer that they ship with (because that is all we do and will test against), you can try shoving the speech extension from 9.6-dp-3 into 9.5.1 Indy/Business and see if it works - it might - it might not.

However, given you can't submit apps to the AppStore, and thus not easily distribute apps, which support iOS9... The utility of being able to do that isn't all that great.

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 7644
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: RELEASE LiveCode 9.6.0 DP-3

Post by FourthWorld » Mon Mar 23, 2020 4:25 pm

What exactly is the issue that has prevented LC's Linux version from having a working browser widget for so long?

What is required to fix it?
Richard Gaskin
Community volunteer LiveCode Community Liaison

LiveCode development, training, and consulting services: Fourth World Systems: http://FourthWorld.com
LiveCode User Group on Facebook : http://FaceBook.com/groups/LiveCodeUsers/

mwieder
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 2990
Joined: Mon Jan 22, 2007 7:36 am
Location: Berkeley, CA, US
Contact:

Re: RELEASE LiveCode 9.6.0 DP-3

Post by mwieder » Mon Mar 23, 2020 4:33 pm

There's nothing wrong with the third-party CEF library itself. I can build and run CEFsimple here with no problems. It's just the integration of the external library through the spaghetti of the MCBrowserx calls that messes things up.

richmond62
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 4353
Joined: Fri Feb 19, 2010 10:17 am
Location: Bulgaria

Re: RELEASE LiveCode 9.6.0 DP-3

Post by richmond62 » Mon Mar 23, 2020 5:27 pm

Let's suppose, for the sake of argument, that LiveCode 9.6.0 dp-3, or even heaven forfend, 9.5.1 works 99% on later versions of Ubuntu
than 14.04 and 16.04 . . .

. . . well, that needs to be stated explicitly in the PDF ReadMe, with a caveat relating to the Browser thing.

Not ALL users of LiveCode on recent Linux versions are going to be dependent on the Browser object. 8)
the spaghetti of the MCBrowserx
The fact that there is something with an 'MC' prefix [ i.e. it originated in MetaCard ] suggests that
that component is ancient.
-
spag.jpg
spag.jpg (6.15 KiB) Viewed 1124 times

LCMark
Livecode Staff Member
Livecode Staff Member
Posts: 1087
Joined: Thu Apr 11, 2013 11:27 am

Re: RELEASE LiveCode 9.6.0 DP-3

Post by LCMark » Mon Mar 23, 2020 6:10 pm

@mwieder:
There's nothing wrong with the third-party CEF library itself. I can build and run CEFsimple here with no problems. It's just the integration of the external library through the spaghetti of the MCBrowserx calls that messes things up.
I have to strongly disagree with you - the MCBrowser component (and code) is not spaghetti (just complex - as it does a complex thing) - it is a cross-platform API we built around the various different underlying browser engines (i.e. MCBrowser is an API which has a different 'driver' for each platform).

CEFSimple works - yes - but IIRC CEFSimple is 'you embed what you want to do in CEF' - LC has to do the opposite - we embed CEF in LC and for some reason something screws that up in 'recent' Linux releases and we are not sure what unfortunately (despite a good deal of time having been burnt on trying to figure out why in the past).

FWIW, CEF only really exists in a usable form (from what I can see) because there are some rather large companies which use it to build their clients - in particular Spotify and Steam (I think at least, they may have moved to some other means - I don't know). It used to sponsored heavily by Adobe as (I think) it used to be what they used to provide some sort of Flash standalone type thing. Spotify took over the main sponsorship of it (e.g. providing build servers and well managed releases) a year or two ago. All three of those companies embedded stuff in CEF, so the ability to embed CEF in something else whilst present perhaps doesn't get as much love as would be ideal.

For example, we had to drop using CEF on macOS quite a while back because the port of it there was using NSAutoreleasePools incorrectly *unless* CEF was the master (i.e. being extended, rather than being embedded), this would cause random crashes (earlier versions of macOS seemed to tolerate the abuse okay, but in later versions it caused a lot of instability).

@richmond64:
The fact that there is something with an 'MC' prefix [ i.e. it originated in MetaCard ] suggests that
that component is ancient.
The component is not ancient. We use MC as the namespace prefix for everything in the engine code - as there was already 250,000 lines of code using that convention when LiveCode bought the MetaCard engine, and changing something like that would be pointless (a lot of effort for no gain). Its just a naming convention at the end of the day.
Last edited by LCMark on Mon Mar 23, 2020 6:13 pm, edited 1 time in total.

richmond62
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 4353
Joined: Fri Feb 19, 2010 10:17 am
Location: Bulgaria

Re: RELEASE LiveCode 9.6.0 DP-3

Post by richmond62 » Mon Mar 23, 2020 6:11 pm

Its just a naming convention at the end of the day.
Now why didn't that occur to me?

Good to know. :)

mwieder
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 2990
Joined: Mon Jan 22, 2007 7:36 am
Location: Berkeley, CA, US
Contact:

Re: RELEASE LiveCode 9.6.0 DP-3

Post by mwieder » Tue Mar 24, 2020 1:04 am

@LCMark- Yeah, admittedly spaghetti isn't quite the right word. Complex definitely is.
Since I've got a vested interest in having a workable browser control on linux I've been diving in to the spa^H^H^Hcomplex intricacies of the LC browser code to see if I can even get a browser control to just instantiate without crashing. It's pretty deep wading around in there.
I have, of course, found that the browser control launches a separate process on linux that has to be killed separately from the rest of the LC code.

Interesting that the OSX code has dropped CEF dependence. Is there possibly a different route for linux that is future-proof?

simon.schvartzman
Posts: 365
Joined: Tue Jul 29, 2014 12:52 am
Location: Brazil

Re: RELEASE LiveCode 9.6.0 DP-3

Post by simon.schvartzman » Fri Mar 27, 2020 2:35 pm

Hi team, when is the Stable version of LC 9.6 expected to be released? I'm asking because DP-3 fixed (thanks Panos) a problem I encounter when playing YouTube on the browser widget but I should wait for the stable release to upload to the stores.

Thanks
Simon
________________________________________
To ";" or not to ";" that is the question

trevix
Posts: 529
Joined: Sat Feb 24, 2007 11:25 pm
Location: Italy
Contact:

Re: RELEASE LiveCode 9.6.0 DP-3

Post by trevix » Thu May 28, 2020 3:00 pm

With that said, whilst we only support use of bundled extensions (such as the speech library) with the version of LiveCode or newer that they ship with (because that is all we do and will test against), you can try shoving the speech extension from 9.6-dp-3 into 9.5.1 Indy/Business and see if it works - it might - it might not.
Yes, the speech library works with iOS 9.3 too (using LC 9.5.1RC1)! Good job.
Trevix
OSX 10.14.6 LC 9.6.0 Dp2 iOs 9.3>

richmond62
Livecode Opensource Backer
Livecode Opensource Backer
Posts: 4353
Joined: Fri Feb 19, 2010 10:17 am
Location: Bulgaria

Re: RELEASE LiveCode 9.6.0 DP-3

Post by richmond62 » Thu May 28, 2020 7:16 pm

Hi team, when is the Stable version of LC 9.6 expected to be released?
Dunno; but I have a feeling the second Release Candidate should be pretty well 'there'.

Post Reply

Return to “Announcements”