Re: Deprecate "install" and "sync" commands?

2019-08-05 Thread Vipul Rahane
Hi Chris,

We always needed that. I like 2 better than 3 just because of backwards
compatibility.

3 seems fine as well just that CI setups/scripts will have to change
accordingly.

Regards,
Vipul Rahane

On Mon, Aug 5, 2019 at 2:08 PM Łukasz Rymanowski <
lukasz.rymanow...@codecoup.pl> wrote:

> Hi Chris,
>
> I'm with you on 3)
>
> Best
> Łukasz
>
> On Mon, 5 Aug 2019 at 22:59, Fabio Utzig  wrote:
> >
> >
> > On Mon, Aug 5, 2019, at 3:30 PM, Szymon Janc wrote:
> > > Hi Chris,
> > >
> > > Yes!  I'm also for option 3. Lets deprecate for next (1.8) release
> (make
> > > those print proper warning info when used) and just remove for 1.9.
> >
> > +1
>
-- 

Regards,
Vipul Rahane


Re: Deprecate "install" and "sync" commands?

2019-08-05 Thread Łukasz Rymanowski
Hi Chris,

I'm with you on 3)

Best
Łukasz

On Mon, 5 Aug 2019 at 22:59, Fabio Utzig  wrote:
>
>
> On Mon, Aug 5, 2019, at 3:30 PM, Szymon Janc wrote:
> > Hi Chris,
> >
> > Yes!  I'm also for option 3. Lets deprecate for next (1.8) release (make
> > those print proper warning info when used) and just remove for 1.9.
>
> +1


Re: Deprecate "install" and "sync" commands?

2019-08-05 Thread Fabio Utzig


On Mon, Aug 5, 2019, at 3:30 PM, Szymon Janc wrote:
> Hi Chris,
> 
> Yes!  I'm also for option 3. Lets deprecate for next (1.8) release (make
> those print proper warning info when used) and just remove for 1.9.

+1


Re: Deprecate "install" and "sync" commands?

2019-08-05 Thread Szymon Janc
Hi Chris,

Yes!  I'm also for option 3. Lets deprecate for next (1.8) release (make
those print proper warning info when used) and just remove for 1.9.




On Mon, 5 Aug 2019 at 18:47, Christopher Collins  wrote:

> Hello all,
>
> The newt tool supports three "project commands":
>
> * install
> * upgrade
> * sync
>
> I always have a hard time remembering the particulars of commands like
> these.  For example, when other package management systems support both
> "update" and "upgrade", I inevitably mix them up.  I propose we remove
> "install" and "sync", reducing the list to just one command.
>
> First, here is a refresher for each of these three commands:
>
> INSTALL: Downloads repos that aren't installed yet.  The downloaded
> version matches what `project.yml` specifies.
>
> UPGRADE: Performs an INSTALL, and then ensures the installed version of
> each repo matches what `project.yml` specifies.  This is similar to
> INSTALL, but it also operates on already-installed repos.
>
> SYNC: Fetches and pulls the latest for each repo, but does not change
> the branch (version).  Only necessary for Mynewt repo versions that
> point to a git branch (e.g., 0.0.0 usually points to "master").
>
> The distinction between these commands is somewhat subtle, so please
> ask if it isn't clear.
>
> I would like to remove INSTALL and SYNC.  I propose we do this as
> follows:
>
> A. Remove SYNC:
> A recent newt change allows us to deprecate SYNC:
> https://github.com/apache/mynewt-newt/pull/312.  With this change,
> `newt upgrade` always grabs the latest commit for repos with
> branch-versions.  So UPGRADE now subsumes SYNC.
>
> B. Remove INSTALL:
> I have never found the INSTALL to be very useful.  I find it easier to
> simply use UPGRADE instead.  It's just my experience, but there is never
> a time when I want to install new repos without updating existing ones.
> If you don't want to upgrade existing repos, then you can just not
> change their versions in `project.yml`.
>
> Alternatively, we don't have to go so far as to deprecate and remove
> these commands.  We could keep them, but just make them synonyms for
> `upgrade`.  This is a less disruptive option.
>
> So I see three options:
>
> 1. Change nothing.
> 2. Make "install" and "sync" synonyms for "upgrade".
> 3. Deprecate "install" and "sync"
>
> My vote is for 3, but I would be happy with 2.
>
> Thoughts?
>
> Chris
>


-- 
pozdrawiam
Szymon K. Janc


Deprecate "install" and "sync" commands?

2019-08-05 Thread Christopher Collins
Hello all,

The newt tool supports three "project commands":

* install
* upgrade
* sync

I always have a hard time remembering the particulars of commands like
these.  For example, when other package management systems support both
"update" and "upgrade", I inevitably mix them up.  I propose we remove
"install" and "sync", reducing the list to just one command.

First, here is a refresher for each of these three commands:

INSTALL: Downloads repos that aren't installed yet.  The downloaded
version matches what `project.yml` specifies.

UPGRADE: Performs an INSTALL, and then ensures the installed version of
each repo matches what `project.yml` specifies.  This is similar to
INSTALL, but it also operates on already-installed repos.

SYNC: Fetches and pulls the latest for each repo, but does not change
the branch (version).  Only necessary for Mynewt repo versions that
point to a git branch (e.g., 0.0.0 usually points to "master").

The distinction between these commands is somewhat subtle, so please
ask if it isn't clear.

I would like to remove INSTALL and SYNC.  I propose we do this as
follows:

A. Remove SYNC:
A recent newt change allows us to deprecate SYNC:
https://github.com/apache/mynewt-newt/pull/312.  With this change,
`newt upgrade` always grabs the latest commit for repos with
branch-versions.  So UPGRADE now subsumes SYNC.

B. Remove INSTALL:
I have never found the INSTALL to be very useful.  I find it easier to
simply use UPGRADE instead.  It's just my experience, but there is never
a time when I want to install new repos without updating existing ones.
If you don't want to upgrade existing repos, then you can just not
change their versions in `project.yml`.

Alternatively, we don't have to go so far as to deprecate and remove
these commands.  We could keep them, but just make them synonyms for
`upgrade`.  This is a less disruptive option.

So I see three options:

1. Change nothing.
2. Make "install" and "sync" synonyms for "upgrade".
3. Deprecate "install" and "sync"

My vote is for 3, but I would be happy with 2.

Thoughts?

Chris