Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Jul 12, 2015
  1. @farmdawgnation

    Switch to using the single-char version of append wherever possible.

    farmdawgnation committed
    The single-char version of append should be much more efficient per our
    previous changes to addEscapedString, so let's be sure to use it where
    we can in the other code as well.
  2. @farmdawgnation
  3. @farmdawgnation
  4. @farmdawgnation
Commits on Jul 9, 2015
  1. @farmdawgnation
  2. @farmdawgnation
  3. @farmdawgnation
  4. @farmdawgnation
  5. @farmdawgnation

    Add support for pretty rendering of arrays in bufRenderArr.

    farmdawgnation committed
    I'm surprised there hasn't been a pirate pun added to this method yet.
                 ./ /| `\.
                /  | |   `\.
               |   | |     `\.
               |    \|       `\.
             .  `----|__________\.
               \               ""/
  6. @farmdawgnation
  7. @farmdawgnation
  8. @farmdawgnation
  9. @farmdawgnation
  10. @Shadowfiend

    Merge pull request #1709 from lift/scope-callback

    Shadowfiend committed
    Add LiftSession.onFunctionOwnersRemoved.
    These functions are invoked with the set of function owners that had
    all of their remaining associated functions evicted from a session in a
    given run. A function owner is typically a page’s RenderVersion, though
    there are cases (e.g., comets) where this is not necessarily the case.
    As a sample usage:
    object pageIdWatchers extends java.util.concurrent.ConcurrentHashMap[String,List[()=>Unit]] {
        def addCleanupFunc(func: () => Unit): Unit = {
            put(S.renderVersion, List(func) ::: pageIdWatchers.getOrDefault(S.renderVersion, Nil))
    In Boot:
    LiftSession.onFunctionOwnersRemoved ::= { removedOwners =>
        for {
            owner <- removedOwners
            watcher <- Option(pageIdWatchers.get(owner))} {
    In a snippet:
    def cleanupPage(): Unit = {
        println(s"Running cleanupPage for ${S.renderVersion}.")
    println(s"Adding cleanupFunc for ${S.renderVersion}")
Commits on Jul 6, 2015
  1. @Shadowfiend

    Merge pull request #1701 from lift/ajk_datalift-fixedattrs

    Shadowfiend committed
    Add LiftRules.attributeForRemovedEventAttributes
    This PR adds a LiftRule, LiftRules.attributeForRemovedEventAttributes.
    When we remove a JavaScript event from an element for separate
    application via the page's JS file, if this rule is set, the attribute it specified
    is populated with the names of the attributes that were removed from the
    element. If no attributes were removed, no attribute is added to the element.
    The default for the LiftRule is to be None, meaning this information is never
    added to the output.
Commits on Jul 4, 2015
  1. @Shadowfiend

    Bump sbt to 0.13.8.

    Shadowfiend committed
    0.13.5 seems to be having alllll sorts of issues.
Commits on Jul 3, 2015
  1. @Shadowfiend

    Add LiftSession.onFunctionOwnersRemoved.

    Shadowfiend committed
    These functions are invoked with the set of function owners that had
    all of their remaining associated functions evicted from a session in a
    given run. A function owner is typically a page’s RenderVersion, though
    there are cases (e.g., comets) where this is not necessarily the case.
  2. @Shadowfiend

    Merge pull request #1705 from lift/msf_issue_1615

    Shadowfiend committed
    Log if JSON parsing fails when handling a jsonCall invocation.
    This PR is designed to address an issue where the call sent to a
    function wired up to a jsonCall isn't something that the JSON parser can
    actually parse. This tends to happen in cases where developers are doing
    some custom things with the jsonCall system---a bit more custom than
    just wiring it up to a button directly in a CSS transform.
  3. @Shadowfiend
  4. @Shadowfiend

    Merge pull request #1699 from lift/test-fixes

    Shadowfiend committed
    Test Fixes: Drop some sleeps in LAFutureSpec.
    A couple of these specs are behaving intermittently in the CI environment, and
    the sleeps seem beside the point to these two specs.
  5. @Shadowfiend

    Switch to single LiftRule for removed attribute inclusion.

    Shadowfiend committed
    We now have one LiftRules.attributeForRemovedEventAttributes, which can be None
    to indicate no attribute should be emitted. The default is currently None.
  6. @Shadowfiend

    Merge branch 'appendStringOp'

    Shadowfiend committed
    The StringBuilder.append method invoked was StringBuilder.append(Object) as
    both String and Char are being returned. The implementation of
    StringBuilder.append(Object) when applied to a Character is essentially:
    * call Character.toString - which produces a one element char[] and then
      creates a new String with the char array, which in turn does a defensive copy
      of the buffer.
    * the string created is then used to add to the StringBuilder
    This PR changes JsonAST.appendEscapedString to use StringBuilder.append(Char)
    which directly inserts the character into the buffer avoiding the operations
    described above
  7. @Shadowfiend
Commits on Jun 24, 2015
  1. @andreak

    Renamed LiftRules.includeFixedEventAttributesAsDataAttributes_? and a…

    andreak committed
    …dded configurable attribute-name for "data-lift-removed-attributes", set in LiftRules.removedEventAttributesAttributeName
Commits on Jun 22, 2015
  1. @andreak

    Use data-lift-removed-attributes

    andreak committed
Commits on Jun 14, 2015
  1. @Shadowfiend

    Merge pull request #1707 from lift/sbt-fixes

    Shadowfiend committed
    SBT Fixes
    Looks like SBT changed some things about the way you have to
    download the tool. I've updated the liftsh shell script to compensate
    for it. This should get things in travis passable again. I also added a
    comment to the top of liftsh.cmd explaining that it's probably broken.
    Going to shoot something out to the mailing list and see if I can get
    some love on getting that updated by a Windows user.
Commits on Jun 13, 2015
  1. @farmdawgnation

    Revert "Only build master and lift_26 on push."

    farmdawgnation committed
    This reverts commit b95327c.
  2. @farmdawgnation

    Only build master and lift_26 on push.

    farmdawgnation committed
    Without this specifier Travis will attempt to execute two jobs for each
    PR: the PR-merged job and the push job. The former is really the most
    useful of the two. Also, without this specifier Travis will execute a
    build for every push to every branch. Both of these conditions mean
    we're making Travis do more work than is really useful.
    With this change we should only be running builds on:
      - Push to master to lift_26
      - Opening or push to open PR.
  3. @farmdawgnation
  4. @farmdawgnation

    Correct liftsh bootstrapping for new sbt.

    farmdawgnation committed
    It looks like sbt changed their download location and the amount of work
    we have to do to bootstrap the liftsh script. This resolves those
Commits on May 27, 2015
  1. optimize StringBuilder.append for character insertion

    Christopher Webster committed
Commits on May 23, 2015
  1. @farmdawgnation
Commits on May 13, 2015
  1. @Shadowfiend

    Merge pull request #1702 from lift/dcb_issue_1677

    Shadowfiend committed
    Dcb issue 1677, send pre-creation CometActor messages in the order received
    Fixes an issue where CometActor messages sent with session.sendCometActorMessage
    to actors that are not yet initialized would be sent to it in the wrong order once the actor
    *was* eventually initialized. Specifically, they were sent backwards. They are now sent in
    the correct order.
Commits on Apr 28, 2015
  1. @Shadowfiend

    Merge pull request #1703 from lift/working_pwd_reset

    Shadowfiend committed
    Fixed the new bind-less password change in ProtoUser
    The right side of CSS selector transforms is call-by-name, so we were computing
    two separate password fields for the password and confirmation input. As a result,
    we were failing to set the password because the confirmation input and password
    input both registered as not having a confirmation submitted for them. We now
    generate the password input ahead of time and reuse it to get the right behavior.
  2. @dpp
Something went wrong with that request. Please try again.