title: Why am I unable to update Node client-session inside async waterfall function?
body: <p>I'm using client-sessions (<a href="https://github.com/mozilla/node-client-sessions" rel="nofollow">https://github.com/mozilla/node-client-sessions</a>) with async (<a href="https://github.com/caolan/async" rel="nofollow">https://github.com/caolan/async</a>) but am unable to update the user session from within an async waterfall function. I'm wondering if I'm doing something obviously wrong:</p>
  
  <pre>
  app.get('/', function (req, res) {  
  
      console.log(req.session) // first request logs: {}, second request logs: {foo: 'bar'}
  
      req.session.foo = 'bar'
  
      async.waterfall([
          function(callback){
              req.session.baz = 'bip'
          }
      ], function(){
          console.log(req.session)  // this logs full object: { foo: 'bar', baz: 'bip' }
      })
  
      res.send('')
  })
  </pre>
  
  <p>It seems like the second request should have <code>baz: 'bip'</code> in the session object, but it doesn't. Why?</p>