Mysterious new MetaCard file
ambassador at fourthworld.com
Sun Jul 9 01:52:09 CEST 2017
Mark Schonewille wrote:
> I got it running in 5 minutes. The guy who uploaded it says he has
> removed all references to passwords. I have no idea why this was a
> problem for him, but it is nice that he returned the modified files
> as required by the oss licence.
Depends on the license. And in this case the code wasn't
password-protected so that was never a concern at all.
The thread Mark linked to has the full backstory, but to address those
two points here:
- MC IDE was released by MetaCard Corp. under the MIT License, which is
not only GPL-compatible but also allows use in proprietary works. We
felt that was a good choice in case someone might want to use some of
the IDE components, and since the "Ask Dialog" and other resources could
be copied into a standalone it would be a necessity in such cases. GPL
compatibility was just a nice extra; MC IDE went open source about a
decade before the LC Community edition was announced, so of course we
had know way to know that GPL compatibility would one day also be useful
for running with that engine.
- The code was open; we were encrypting data. We were storing prefs
data in a stack file, and had a longer-term strategy of allowing plugins
to use the same API. Since it's possible some data might be sensitive,
it made sense to at least encrypt that data stack file on disk so other
programs wouldn't be able to read it easily.
What Bogs encountered wasn't locked code, just an error thrown by the LC
Community engine when it encountered the line that set the password of
the data stack. Since all scripts are open, he was able to just remove
that and now, as you've seen, it works well.
Of course today we have the encrypt and decrypt commands, so if I were
doing that now I'd store an encrypted serialized array instead.
In fact, now that arrays can be serialized (added late in the game for
us graybeards in v3.5 <g>) I rarely use stack files for storing data
anymore, except in the rare cases where I need to store LC objects.
Fourth World Systems
Software Design and Development for the Desktop, Mobile, and the Web
Ambassador at FourthWorld.com http://www.FourthWorld.com
More information about the use-livecode