Not sure if this is by design, given the string args direction, but according to this comment http://stackoverflow.com/questions/15557480/node-js-typeerror-with-path-join-when-serving-webpage-with-express/15794146#15794146, it looks like there's a regression in behavior that could be causing subtle bugs if truthiness is used to evaluate inputs.
Namely, this snippet behaves differently under v0.8.21 and v0.10.2
Under v0.8.21, you get file.txt.
Under v0.10.2, you get
TypeError: Arguments to path.join must be strings
at Array.filter (native)
at Object.exports.join (path.js:358:36)
at REPLServer.self.eval (repl.js:110:21)
at REPLServer.self.eval (repl.js:122:7)
at Interface.<anonymous> (repl.js:239:12)
at Interface.EventEmitter.emit (events.js:95:17)
at Interface._onLine (readline.js:202:10)
Truthiness is not the test, stringiness is. Yes, this is by design.