Node.js Thin Client @ npmjs

classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

Node.js Thin Client @ npmjs

Pavel Petroshenko
Igniters,

I'm finalizing the docs (with regards to installation instructions) for the
Node.js Thin Client at readme.io. And I've got a couple of questions.

1. Does the name "apache-ignite-client" for the Node.js Thin Client
npm module sound good to everyone? This name will be used to install the
client library, for example:

npm i -g apache-ignite-client

or include it from the source code:

const IgniteClient = require('apache-ignite-client');

2. Which version should the npm module get: 1.0 or does it need to be
aligned with the Ignite release version when it's published or compatible
with, i.e. 2.4, 2.5 or 2.6?

thanks,
p.
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

Igor Sapego-2
1. Sounds OK for me.
2. Since Node.js client is going to be included in Ignite releases,
    I guess it make sense to align its version with the version of
    Ignite, i.e. 2.6, etc...

Best Regards,
Igor

On Thu, May 24, 2018 at 9:02 AM, Pavel Petroshenko <[hidden email]>
wrote:

> Igniters,
>
> I'm finalizing the docs (with regards to installation instructions) for the
> Node.js Thin Client at readme.io. And I've got a couple of questions.
>
> 1. Does the name "apache-ignite-client" for the Node.js Thin Client
> npm module sound good to everyone? This name will be used to install the
> client library, for example:
>
> npm i -g apache-ignite-client
>
> or include it from the source code:
>
> const IgniteClient = require('apache-ignite-client');
>
> 2. Which version should the npm module get: 1.0 or does it need to be
> aligned with the Ignite release version when it's published or compatible
> with, i.e. 2.4, 2.5 or 2.6?
>
> thanks,
> p.
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

Pavel Petroshenko
Igor,

Are you proposing to update the Thin Client versions on every Ignite
release regardless of the changes made to them?

I tend to think that an independent versioning scheme for the Thin Clients
might be more flexible/meaningful.

p.

On Thu, May 24, 2018 at 2:04 AM, Igor Sapego <[hidden email]> wrote:

> 1. Sounds OK for me.
> 2. Since Node.js client is going to be included in Ignite releases,
>     I guess it make sense to align its version with the version of
>     Ignite, i.e. 2.6, etc...
>
> Best Regards,
> Igor
>
> On Thu, May 24, 2018 at 9:02 AM, Pavel Petroshenko <[hidden email]>
> wrote:
>
> > Igniters,
> >
> > I'm finalizing the docs (with regards to installation instructions) for
> the
> > Node.js Thin Client at readme.io. And I've got a couple of questions.
> >
> > 1. Does the name "apache-ignite-client" for the Node.js Thin Client
> > npm module sound good to everyone? This name will be used to install the
> > client library, for example:
> >
> > npm i -g apache-ignite-client
> >
> > or include it from the source code:
> >
> > const IgniteClient = require('apache-ignite-client');
> >
> > 2. Which version should the npm module get: 1.0 or does it need to be
> > aligned with the Ignite release version when it's published or compatible
> > with, i.e. 2.4, 2.5 or 2.6?
> >
> > thanks,
> > p.
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

dsetrakyan
On Thu, May 24, 2018 at 10:03 AM, Pavel Petroshenko <[hidden email]>
wrote:

> Igor,
>
> Are you proposing to update the Thin Client versions on every Ignite
> release regardless of the changes made to them?
>
> I tend to think that an independent versioning scheme for the Thin Clients
> might be more flexible/meaningful.
>

Pavel, I agree, the thin clients should have independent versioning.
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

Igor Sapego-2
Well, all other clients have the same version as Ignite.
Are there any reasons to make a Node.js client some
kind of a special case?

Best Regards,
Igor

On Thu, May 24, 2018 at 8:21 PM, Dmitriy Setrakyan <[hidden email]>
wrote:

> On Thu, May 24, 2018 at 10:03 AM, Pavel Petroshenko <[hidden email]
> >
> wrote:
>
> > Igor,
> >
> > Are you proposing to update the Thin Client versions on every Ignite
> > release regardless of the changes made to them?
> >
> > I tend to think that an independent versioning scheme for the Thin
> Clients
> > might be more flexible/meaningful.
> >
>
> Pavel, I agree, the thin clients should have independent versioning.
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

dsetrakyan
On Thu, May 24, 2018 at 11:42 AM, Igor Sapego <[hidden email]> wrote:

> Well, all other clients have the same version as Ignite.
> Are there any reasons to make a Node.js client some
> kind of a special case?
>
>
I may have spoken too soon. Do we plan to include the node.js client into
Ignite build? If yes, then it will be built anew with every Ignite release,
so the same versioning makes sense in this case.

D.
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

Pavel Petroshenko
Fair enough. Consistency with the other clients is a good argument.

p.

On Thu, May 24, 2018 at 11:44 AM, Dmitriy Setrakyan <[hidden email]>
wrote:

> On Thu, May 24, 2018 at 11:42 AM, Igor Sapego <[hidden email]> wrote:
>
> > Well, all other clients have the same version as Ignite.
> > Are there any reasons to make a Node.js client some
> > kind of a special case?
> >
> >
> I may have spoken too soon. Do we plan to include the node.js client into
> Ignite build? If yes, then it will be built anew with every Ignite release,
> so the same versioning makes sense in this case.
>
> D.
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

dsetrakyan
On Thu, May 24, 2018 at 12:36 PM, Pavel Petroshenko <[hidden email]>
wrote:

> Fair enough. Consistency with the other clients is a good argument.
>
>
Pavel, I would discuss it a bit more. Does it really make sense for a
node.js user to download the whole Ignite distribution just to get a
node.js client?
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

dmagda
Once the client is built it will be uploaded to the npmjs repository,
right? So, a JS developer can download the client from there without
touching the whole Ignite binary release.

However, those who download the whole Ignite binary distribution will find
node.js there (as well as .NET, C++, JDBC and ODBC).

--
Denis

On Thu, May 24, 2018 at 1:06 PM, Dmitriy Setrakyan <[hidden email]>
wrote:

> On Thu, May 24, 2018 at 12:36 PM, Pavel Petroshenko <[hidden email]
> >
> wrote:
>
> > Fair enough. Consistency with the other clients is a good argument.
> >
> >
> Pavel, I would discuss it a bit more. Does it really make sense for a
> node.js user to download the whole Ignite distribution just to get a
> node.js client?
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

Pavel Petroshenko
As Denis said, there is no need to download the entire Ignite repo to
install the client. Once published the client is going to be installed by
users with a command:

npm install -g apache-ignite-client

The sources are going to be distributed as a part of the ignite repository,
yes. But in general, release and installation process for the client and
the Ignite technically are completely independent.

And moreover: if there is a bug, especially critical, found in the client
we shouldn't wait for the next Ignite to be released to get it fixed. We
should be flexible enough to push the fixes and release the clients'
updates independently at any point in time.

Having an independent release/versioning scheme would allow the clients to
get bug-fixes (minor version update) or nonbreaking feature-adds or
improvements (medium version update) between major Ignite releases
(potentially breaking changes and thus - the major version update). But the
client and the Ignite versions mapping might be tricky and should be
clearly documented.

So there are pros and cons.

But I believe the release policy should be consistent across all the Thin
clients (I'm not talking about the "native" or Thick ones, which heavily
depend on the Ignite internals and are a different story).

p.


On Thu, May 24, 2018 at 1:44 PM, Denis Magda <[hidden email]> wrote:

> Once the client is built it will be uploaded to the npmjs repository,
> right? So, a JS developer can download the client from there without
> touching the whole Ignite binary release.
>
> However, those who download the whole Ignite binary distribution will find
> node.js there (as well as .NET, C++, JDBC and ODBC).
>
> --
> Denis
>
> On Thu, May 24, 2018 at 1:06 PM, Dmitriy Setrakyan <[hidden email]>
> wrote:
>
> > On Thu, May 24, 2018 at 12:36 PM, Pavel Petroshenko <
> [hidden email]
> > >
> > wrote:
> >
> > > Fair enough. Consistency with the other clients is a good argument.
> > >
> > >
> > Pavel, I would discuss it a bit more. Does it really make sense for a
> > node.js user to download the whole Ignite distribution just to get a
> > node.js client?
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

dsetrakyan
I generally think that as a community we need to start taking an approach
of separate thin client releases. This goes for Java, .NET, JDBC, ODBC,
Node.JS, etc...

We can still host them in the same Ignite repo, but they should be a
separate download. Of course, they should be included in the overall Ignite
distribution as well.

Node.JS client could be the first one to take this approach. We can then
migrate others as well.

Denis, Pavel, what do you think?

D.

On Thu, May 24, 2018 at 2:11 PM, Pavel Petroshenko <[hidden email]>
wrote:

> As Denis said, there is no need to download the entire Ignite repo to
> install the client. Once published the client is going to be installed by
> users with a command:
>
> npm install -g apache-ignite-client
>
> The sources are going to be distributed as a part of the ignite repository,
> yes. But in general, release and installation process for the client and
> the Ignite technically are completely independent.
>
> And moreover: if there is a bug, especially critical, found in the client
> we shouldn't wait for the next Ignite to be released to get it fixed. We
> should be flexible enough to push the fixes and release the clients'
> updates independently at any point in time.
>
> Having an independent release/versioning scheme would allow the clients to
> get bug-fixes (minor version update) or nonbreaking feature-adds or
> improvements (medium version update) between major Ignite releases
> (potentially breaking changes and thus - the major version update). But the
> client and the Ignite versions mapping might be tricky and should be
> clearly documented.
>
> So there are pros and cons.
>
> But I believe the release policy should be consistent across all the Thin
> clients (I'm not talking about the "native" or Thick ones, which heavily
> depend on the Ignite internals and are a different story).
>
> p.
>
>
> On Thu, May 24, 2018 at 1:44 PM, Denis Magda <[hidden email]> wrote:
>
> > Once the client is built it will be uploaded to the npmjs repository,
> > right? So, a JS developer can download the client from there without
> > touching the whole Ignite binary release.
> >
> > However, those who download the whole Ignite binary distribution will
> find
> > node.js there (as well as .NET, C++, JDBC and ODBC).
> >
> > --
> > Denis
> >
> > On Thu, May 24, 2018 at 1:06 PM, Dmitriy Setrakyan <
> [hidden email]>
> > wrote:
> >
> > > On Thu, May 24, 2018 at 12:36 PM, Pavel Petroshenko <
> > [hidden email]
> > > >
> > > wrote:
> > >
> > > > Fair enough. Consistency with the other clients is a good argument.
> > > >
> > > >
> > > Pavel, I would discuss it a bit more. Does it really make sense for a
> > > node.js user to download the whole Ignite distribution just to get a
> > > node.js client?
> > >
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

Pavel Petroshenko
Hi Dmitriy,

Agree, your proposal makes a lot of sense.

p.

On Fri, May 25, 2018 at 11:04 AM, Dmitriy Setrakyan <[hidden email]>
wrote:

> I generally think that as a community we need to start taking an approach
> of separate thin client releases. This goes for Java, .NET, JDBC, ODBC,
> Node.JS, etc...
>
> We can still host them in the same Ignite repo, but they should be a
> separate download. Of course, they should be included in the overall Ignite
> distribution as well.
>
> Node.JS client could be the first one to take this approach. We can then
> migrate others as well.
>
> Denis, Pavel, what do you think?
>
> D.
>
> On Thu, May 24, 2018 at 2:11 PM, Pavel Petroshenko <[hidden email]>
> wrote:
>
> > As Denis said, there is no need to download the entire Ignite repo to
> > install the client. Once published the client is going to be installed by
> > users with a command:
> >
> > npm install -g apache-ignite-client
> >
> > The sources are going to be distributed as a part of the ignite
> repository,
> > yes. But in general, release and installation process for the client and
> > the Ignite technically are completely independent.
> >
> > And moreover: if there is a bug, especially critical, found in the client
> > we shouldn't wait for the next Ignite to be released to get it fixed. We
> > should be flexible enough to push the fixes and release the clients'
> > updates independently at any point in time.
> >
> > Having an independent release/versioning scheme would allow the clients
> to
> > get bug-fixes (minor version update) or nonbreaking feature-adds or
> > improvements (medium version update) between major Ignite releases
> > (potentially breaking changes and thus - the major version update). But
> the
> > client and the Ignite versions mapping might be tricky and should be
> > clearly documented.
> >
> > So there are pros and cons.
> >
> > But I believe the release policy should be consistent across all the Thin
> > clients (I'm not talking about the "native" or Thick ones, which heavily
> > depend on the Ignite internals and are a different story).
> >
> > p.
> >
> >
> > On Thu, May 24, 2018 at 1:44 PM, Denis Magda <[hidden email]> wrote:
> >
> > > Once the client is built it will be uploaded to the npmjs repository,
> > > right? So, a JS developer can download the client from there without
> > > touching the whole Ignite binary release.
> > >
> > > However, those who download the whole Ignite binary distribution will
> > find
> > > node.js there (as well as .NET, C++, JDBC and ODBC).
> > >
> > > --
> > > Denis
> > >
> > > On Thu, May 24, 2018 at 1:06 PM, Dmitriy Setrakyan <
> > [hidden email]>
> > > wrote:
> > >
> > > > On Thu, May 24, 2018 at 12:36 PM, Pavel Petroshenko <
> > > [hidden email]
> > > > >
> > > > wrote:
> > > >
> > > > > Fair enough. Consistency with the other clients is a good argument.
> > > > >
> > > > >
> > > > Pavel, I would discuss it a bit more. Does it really make sense for a
> > > > node.js user to download the whole Ignite distribution just to get a
> > > > node.js client?
> > > >
> > >
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: Node.js Thin Client @ npmjs

dmagda
+1

Vladimir, Igor, Pavel Tupitsyn, what do you think?

--
Denis

On Fri, May 25, 2018 at 11:26 AM, Pavel Petroshenko <[hidden email]>
wrote:

> Hi Dmitriy,
>
> Agree, your proposal makes a lot of sense.
>
> p.
>
> On Fri, May 25, 2018 at 11:04 AM, Dmitriy Setrakyan <[hidden email]
> >
> wrote:
>
> > I generally think that as a community we need to start taking an approach
> > of separate thin client releases. This goes for Java, .NET, JDBC, ODBC,
> > Node.JS, etc...
> >
> > We can still host them in the same Ignite repo, but they should be a
> > separate download. Of course, they should be included in the overall
> Ignite
> > distribution as well.
> >
> > Node.JS client could be the first one to take this approach. We can then
> > migrate others as well.
> >
> > Denis, Pavel, what do you think?
> >
> > D.
> >
> > On Thu, May 24, 2018 at 2:11 PM, Pavel Petroshenko <
> [hidden email]>
> > wrote:
> >
> > > As Denis said, there is no need to download the entire Ignite repo to
> > > install the client. Once published the client is going to be installed
> by
> > > users with a command:
> > >
> > > npm install -g apache-ignite-client
> > >
> > > The sources are going to be distributed as a part of the ignite
> > repository,
> > > yes. But in general, release and installation process for the client
> and
> > > the Ignite technically are completely independent.
> > >
> > > And moreover: if there is a bug, especially critical, found in the
> client
> > > we shouldn't wait for the next Ignite to be released to get it fixed.
> We
> > > should be flexible enough to push the fixes and release the clients'
> > > updates independently at any point in time.
> > >
> > > Having an independent release/versioning scheme would allow the clients
> > to
> > > get bug-fixes (minor version update) or nonbreaking feature-adds or
> > > improvements (medium version update) between major Ignite releases
> > > (potentially breaking changes and thus - the major version update). But
> > the
> > > client and the Ignite versions mapping might be tricky and should be
> > > clearly documented.
> > >
> > > So there are pros and cons.
> > >
> > > But I believe the release policy should be consistent across all the
> Thin
> > > clients (I'm not talking about the "native" or Thick ones, which
> heavily
> > > depend on the Ignite internals and are a different story).
> > >
> > > p.
> > >
> > >
> > > On Thu, May 24, 2018 at 1:44 PM, Denis Magda <[hidden email]>
> wrote:
> > >
> > > > Once the client is built it will be uploaded to the npmjs repository,
> > > > right? So, a JS developer can download the client from there without
> > > > touching the whole Ignite binary release.
> > > >
> > > > However, those who download the whole Ignite binary distribution will
> > > find
> > > > node.js there (as well as .NET, C++, JDBC and ODBC).
> > > >
> > > > --
> > > > Denis
> > > >
> > > > On Thu, May 24, 2018 at 1:06 PM, Dmitriy Setrakyan <
> > > [hidden email]>
> > > > wrote:
> > > >
> > > > > On Thu, May 24, 2018 at 12:36 PM, Pavel Petroshenko <
> > > > [hidden email]
> > > > > >
> > > > > wrote:
> > > > >
> > > > > > Fair enough. Consistency with the other clients is a good
> argument.
> > > > > >
> > > > > >
> > > > > Pavel, I would discuss it a bit more. Does it really make sense
> for a
> > > > > node.js user to download the whole Ignite distribution just to get
> a
> > > > > node.js client?
> > > > >
> > > >
> > >
> >
>