aantron / promise

Light and type-safe binding to JS promises
MIT License
340 stars 24 forks source link

Convert to ReScript syntax once there is enough adoption #73

Open aantron opened 3 years ago

aantron commented 3 years ago

reasoin-promise needs to stay in Reason syntax for a while. However, as people switch to newer versions of BuckleScript, it should probably switch to ReScript syntax.

jbhoot commented 3 years ago

Given the widening gulf between the rescript and the reason/ocaml ecosystem, will this switch mean that promise will become a rescript-only library?

aantron commented 3 years ago

Perhaps I won't do this conversion for that reason. I originally created this issue before the announcement of Melange, when it looked like there would be no compiler that used/favored Reason anymore.

will this switch mean that promise will become a rescript-only library?

I interpreted this question as if it said "on JS," because promise native remains an OCaml library (which, to my knowledge, nobody is using :P)

lessp commented 3 years ago

I interpreted this question as if it said "on JS," because promise native remains an OCaml library __(which, to my knowledge, nobody is using :P)__

How dare you!

image

jbhoot commented 3 years ago

I interpreted this question as if it said "on JS,"

You got it right.

Perhaps I won't do this conversion for that reason. I originally created this issue before the announcement of Melange, when it looked like there would be no compiler that used/favored Reason anymore.

Makes sense. And frankly, I am relieved. For a moment, I feared this reason-to-rescript decision would carry over to dream as well.

because promise native remains an OCaml library (which, to my knowledge, nobody is using :P)

Well at the beginner stage at least, the promise syntax looks more intuitive to me than lwt. So there is that.

aantron commented 3 years ago

How dare you!

My apologies :D

Perhaps with Melange there will be good reason, eventually, to "push"/advertise native reason-promise. But there is also the pending merging of effects into the language, so perhaps not.

TheSpyder commented 3 years ago

Even if this library isn't converted to ReScript syntax, which is fine, can the bs-platform peer dependency be removed? The main package has been renamed to rescript so anyone still using this with rescript is (or will eventually) get a 'missing peer dependency' warning.

aantron commented 3 years ago

@TheSpyder I removed the peer dependency completely. I figure anyone using reason-promise is going to inevitably depend on rescript (or bs-platform) anyway, and we don't need an extra nag. I'll do a release in the coming days. Thanks for noting it!

TheSpyder commented 3 years ago

yes, I think between the project rename and melange it no longer makes sense to use peer dependency at all 👍

Thanks!

TheSpyder commented 3 years ago

I hate to bug you, but can we get that release please? 😅

aantron commented 3 years ago

I hate to bug you, but can we get that release please? 😅

Now out as reason-promise@1.1.5. Thanks for bugging me. I had lost track of this.