Dumb deployment question

Trevor DeVore lists at mangomultimedia.com
Wed Jan 25 18:33:09 EST 2017


Where Monte = Malte.

Sorry about that.

-- 
Trevor DeVore

On Wed, Jan 25, 2017 at 5:19 PM Trevor DeVore <lists at mangomultimedia.com>
wrote:

> On Wed, Jan 25, 2017 at 2:49 PM, Malte Brill via use-livecode <
> use-livecode at lists.runrev.com> wrote:
>
> Now, I would really like to make the first serious standalone using 8.x
> (final might be using 9.x). This is still a bit ahead, but I want to
> prepare. I would really like to work with script only stacks. But what do
> we need to do to have them available as library in a standalone. Right now
> I am being lazy with my project and make regular stacks a substack of my
> mainstack, which I then start using. How would I go about this with a
> Script only stack, which appears to be only a text file, right? Upside
> until now was quasi single file distribution, but I could very well live
> with breaking that. Any good tips on deployment?
>
>
> Hi Monte,
>
> I bit the bullet in early November and started moving ScreenSteps over to
> script only stacks. My goal was to store my files in a VCS-friendly way (as
> much as possible). I moved all code over 3-5 lines out stacks and into
> script only stacks. To facilitate this I added some utilities to the PI in
> LC 9 that make it easy to create script only stacks from stacks you have
> open in the IDE. If you are going to convert an existing app over then I
> would suggest doing the conversion in LC 9. You can then go back to LC 8 if
> you want for working on the app.
>
> I’ll describe the basics of what I did.
>
> All of my libraries are individual script only stack files. When I package
> up the application I create a “Libraries” stack and make all script script
> only stacks that are libraries a sub stack of this stack. The standalone
> just loads a single stack file. I do the same for front and back scripts as
> well.
>
> For script only stacks used as behaviors it depends. For behaviors that
> are used generally I treat them as library stacks and package them up into
> a single stack. Every stack used for UI was moved into its own folder with
> a “behaviors” folder that sits alongside the stack file. All code related
> to the UI stack goes into script only stack files in that “behaviors”
> folder. These behaviors are just converted to regular stack files when I
> package up for distribution. The behavior stack files are assigned to the
> stackfiles property of the UI stack using relative paths. They are
> automatically loaded by the engine when the UI stack opens.
>
> Having all of the code in text files has worked really well so far.
> Working with git has become really easy for scripts and I have been keeping
> an exact history of changes through git commits. Having everything in git
> makes it really easy to move between computers as well. Just checkout the
> latest and I’m ready to get to work. The stack files are another story but
> that is a problem for another day. Script only stacks also allowed me to
> move over to Sublime Text for all of my script editing. I put together a
> LiveCode plugin and linter and coding is much faster as I can jump around
> in the code really quickly. The plugin also communicates with my LiveCode
> app and refreshes scripts whenever I save in Sublime Text so I can edit
> while editing my app in LiveCode.
>
> In order to make managing a script only stack-centric application easier I
> created a new application framework - Levure. You can see what I’ve done so
> far here:
>
> https://github.com/trevordevore/levure
>
> It use YAML for configuration and has a modular design. It manages
> building standalones and packaging everything up for deployment. I’ve been
> refining it over the last 2 1/2 months and there is still more work to do.
> I will be building an app to distribute to customers before the end of
> January though.
>
> Let me know if you have any further questions.
>
> --
> Trevor DeVore
> Outcome & ScreenSteps
> www.outcomeapp.io     -     www.screensteps.com
>



More information about the use-livecode mailing list