I agree my test was magical.

I'm still unclear about objectModes purpose in fs.WriteStream. Is it really
more of a
stringMode?

On Friday, February 15, 2013, Isaac Schlueter wrote:

> I'd think that writing non-string/buffer data into an fs stream has
> probably always been an error.  At best, it's undefined behavior
> (which you may be relying on, but it's still not guaranteed by the
> API).
>
> Relying on custom toString() is an antipattern.  It reeks of excessive
> magic.  Just cast to a string explicitly if that's what you mean to
> do.
>
> On Fri, Feb 15, 2013 at 7:53 PM, Aaron Heckmann
> <[email protected]> wrote:
> > Previously a WriteStream created with fs.createWriteStream converted
> > non-Buffers to buffers by concating an empty string with the data which
> gave
> > us an opportunity to run formatting logic on the data by setting a custom
> > toString method. This no longer works because fs.WriteStream._write
> rejects
> > any non-Buffer, even in objectMode.
> >
> > Seems like a bug but I'm just starting to familiarize myself with the new
> > streams and maybe I'm "doing it wrong".
> >
> > Thanks for the assistance.
> >
> >
> > On Friday, February 15, 2013, Nathan Rajlich wrote:
> >>
> >> Aaron, I'm a little confused at exactly what you're trying to do, but if
> >> you have a Readable stream outputting "objects" of some kind (since
> it's in
> >> objectMode), and you pipe() to a writable stream that is *not* in
> objectMode
> >> (i.e. it's expecting strings and/or buffers), then what would you
> expect the
> >> Writable stream to do? How would it know how to convert your Object
> from the
> >> readable stream into a Buffer?
> >>
> >> On Fri, Feb 15, 2013 at 12:14 PM, Aaron Heckmann
> >> <[email protected]> wrote:
> >>>
> >>> In node < 0.9, WriteStreams converted non-Buffers to Buffers
> >>> transparently.
> >>>
> >>>
> https://github.com/joyent/node/blob/v0.8.20-release/lib/fs.js#L1557-L1561
> >>>
> >>> In 0.9, this is not the case, which leaves me a bit confused with the
> >>> ReadableStreams objectMode option. I'd like to pipe a ReadableStream in
> >>> objectMode to a writable stream and rely on conversion to Buffers
> without
> >>> needing to create a transform stream, the way I could in 0.8x. Is this
> by
> >>> design?
> >>>
> >>>
> >>>
> http://nodejs.org/docs/v0.9.8/api/stream.html#stream_new_stream_readable_options
> >>>
> >>>
> >>>
> >>> --
> >>> Aaron
> >>> @aaronheckmann
> >>>
> >>>
> >>> --
> >>> --
> >>> Job Board: http://jobs.nodejs.org/
> >>> Posting guidelines:
> >>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> >>> You received this message because you are subscribed to the Google
> >>> Groups "nodejs" group.
> >>> To post to this group, send email to [email protected]
> >>> To unsubscribe from this group, send email to
> >>> [email protected]
> >>> For more options, visit this group at
> >>> http://groups.google.com/group/nodejs?hl=en?hl=en
> >>>
> >>> ---
> >>> You received this message because you are subscribed to the Google
> Groups
> >>> "nodejs" group.
> >>> To unsubscribe from this group and stop receiving emails from it, send
> an
> >>> email to [email protected].
> >>> For more options, visit https://groups.google.com/groups/opt_out.
> >>>
> >>>
> >>
> >>
> >> --
> >> --
> >> Job Board: http://jobs.nodejs.org/
> >> Posting guidelines:
> >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> >> You received this message because you are subscribed to the Google
> >> Groups "nodejs" group.
> >> To post to this group, send email to



-- 
Aaron
@aaronheckmann <https://twitter.com/#!/aaronheckmann>

-- 
-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to