nodejs / nan

Native Abstractions for Node.js
MIT License
3.27k stars 501 forks source link

New version #163

Closed santigimeno closed 10 years ago

santigimeno commented 10 years ago

Can we expect a new version anytime soon?

And thanks for this fantastic module!

rvagg commented 10 years ago

@santigimeno what are you after specifically in a new release?

santigimeno commented 10 years ago

@rvagg The new NanMakeCallback functions https://github.com/rvagg/nan/commit/b8059148f67b16f0afef30e5ee9233b3036ac155

heapwolf commented 10 years ago

bump. this seems to be the main issue with level not working with 11.x. Also, is there any support for 11.x at the moment?

kkoopa commented 10 years ago

11.13 is fully supported

rvagg commented 10 years ago

yeah, what he said, though we do need to get a new release out, I'm just not sure where everything is at because I've been slightly distracted!

@kkoopa did we get new String stuff in? Are we ready to push for a new minor release?

heapwolf commented 10 years ago

node-leveldown is at ~0.6.0, but nan's current version is 1.2.0. I can test this and see if leveldown compiles in node 11.13 with the latest version of nan.

rvagg commented 10 years ago

@hij1nx that's leveldown's problem, not NAN's

https://github.com/rvagg/node-leveldown/pull/91

blocking on https://github.com/rvagg/node-leveldown/pull/85 getting done; I'm going to dedicate some time to it within the next week or so cause I'm feeling the pressure of this release not getting out!

rvagg commented 10 years ago

(the branch in 91 should compile and work on 0.11.13 btw)

kkoopa commented 10 years ago

I changed operator to * for the new string stuff to match the existing similar things and fixed the typo in the docs. I guess it is done for now. New conversions can be added as needed.

heapwolf commented 10 years ago

@rvagg is there anything I can do? I'd love to get this working asap, I want to start using generators for everything :)

heapwolf commented 10 years ago

I seem to remember there being some configuration of nan/node/leveldown that worked /cc @juliangruber

rvagg commented 10 years ago

bah! you're on the generators kool-aid, sad for you

grab https://github.com/rvagg/node-leveldown/pull/85 and finish that off, it's the blocker here. we're going to bump to 1.0.0 and that empty value stuff should get in there for that

heapwolf commented 10 years ago

hahaha, sad for you when you have a real-life project that not even the cleanest callback code feels good any more. While I agree callbacks are a nice primitive, they're better in small to medium size projects -- while with projects that have metric-shit-tons of IO, generators really clean things up and feel nearly as primitive.

Anyway, get a dog up ya ;)

heapwolf commented 10 years ago

ok, im going to take a crack at #85.

TooTallNate commented 10 years ago

Paolo, you can also try gnode: https://github.com/TooTallNate/gnode

It works well with native addons since you can run node v0.8.x or v0.10.x and most native addons work there already.

That said, updating leveldown will be necessary eventually so maybe just get it done sooner than later?

On Tue, Jul 22, 2014 at 8:52 AM, Paolo Fragomeni notifications@github.com wrote:

ok, im going to take a crack at #85 https://github.com/rvagg/nan/pull/85 .

— Reply to this email directly or view it on GitHub https://github.com/rvagg/nan/issues/163#issuecomment-49758382.

rvagg commented 10 years ago

My objection is mainly about the way they obscure I/O and that one of the big benefits of Node, that the programmer is forced to think about I/O as a special class of operation, is nullified and can therefore lead to poor practices--like encouraging serial I/O when parallel would work. i.e. look at co and how serial execution is easy but making it parallel requires extra cognitive overhead and mildly clumsy code.

But whatever, it's an argument I'll probably end up losing anyway and I'll just be that grumpy old man in the corner that people tell their kids not to talk to cause I bite.

heapwolf commented 10 years ago

@TooTallNate i'll do both, I'm looking at 85 now and i think i might be able to make it work, if not I will fall back to gnode for the immediate term. oh and haha, i just realized i had already starred gnode, it's awesome :)

rvagg commented 10 years ago

as I said, https://github.com/rvagg/node-leveldown/pull/91 is good to go now, you can check it out and compile and use it in place of leveldown@latest and it should be fine, it's just a question of making getting a release right.

heapwolf commented 10 years ago

@rvagg I railed against tacking new forms of concurrency onto node for years. The more large projects I ship, the more I realize that generators are not little demons. In their most primitive form, they identify IO just as well as callbacks. Remember, just because you see continuation passing, doesn't mean you're seeing IO, same for generators. If you ask me it's become pure culture to fight against them.

juliangruber commented 10 years ago

@rvagg haha sad for you to be so judgmental :P @hij1nx level worked for me on 0.11.10, I haven't had success with later versions

andrewrk commented 10 years ago

There's always the option of making a release now and then addressing remaining issues later in future releases. Just saying :)

kkoopa commented 10 years ago

As this is a library of sorts, certain things need to be as correct as possible on release. Otherwise everything breaks with the inevitable fixes. This will be the third incompatible version of string conversion, we try hard not to need a fourth.

On July 23, 2014 1:24:13 AM EEST, Andrew Kelley notifications@github.com wrote:

There's always the option of making a release now and then addressing remaining issues later in future releases. Just saying :)


Reply to this email directly or view it on GitHub: https://github.com/rvagg/nan/issues/163#issuecomment-49809800

kkoopa commented 10 years ago

New version released: e482fbe142e58373d5a24f4e5a60c61e22a13f83

santigimeno commented 10 years ago

thanks!