pulumi/lib
Luke Hoban d77c51ff7f Allow runtime lambda to reference globals.
For lambdas which will execute at runtime,
we want to allow them to reference Node.js
global variables, like `console`.

This change makes Lumijs generated IL
incrementally more dynamic by preferring to
generate `TryLoadDynamic` over `LoadLocation`
for references to global variables (except for
references to imports).

Also introduces `console.log` in LumiJS, though
it is not yet attached to a Lumi global environment.

Fixes #174.
2017-06-08 22:06:41 -07:00
..
aws Save build artifacts aftifacts for Go builds 2017-06-07 17:03:07 -07:00
lumi Finish scrubbing TODOs 2017-06-06 06:05:35 -07:00
lumijs Allow runtime lambda to reference globals. 2017-06-08 22:06:41 -07:00
mantle Add aws.lambda.Permission resource (#224) 2017-06-06 18:42:00 -07:00
README.md Preserve the lumi prefix on our CLI tools 2017-05-18 12:38:58 -07:00

lumi/lib

This directory contains some libraries that Lumi programs may depend upon.

Overview

The Lumi standard library underneath lumi/ is special in that every program will ultimately use it directly or indirectly to create resources.

Similarly, lumijs/ is the LumiJS compiler's runtime library, and so most LumiJS programs will on it.

Note that these are written in the Lumi subsets of the languages and therefore cannot perform I/O, etc.

Installation and Usage

Eventually these packages will be published like any other NPM package. For now, they are consumed only in a development capacity, and so there are some manual steps required to prepare a developer workspace.

For each library <lib> you wish to use, please see its install.sh script in its root directory. This performs installation so that it can be used simply by adding a dependency to it.

We currently use NPM/Yarn symlinks to ease the developer workspace flow. As such, you will need to run:

  • yarn link <lib>

In a project that intends to consume <lib> before actually using it. For example, yarn link @lumi/lumi.