You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Ivan Daschinsky <iv...@gmail.com> on 2021/10/25 14:58:02 UTC

Re: [DISCUSSION] Remove VS project from C++

FYI: PR is ready [1]. Since we already changed release builds and switched
them to CMake, we can proceed with removing.

[1] -- https://issues.apache.org/jira/browse/IGNITE-15637

ср, 15 сент. 2021 г. в 13:03, Pavel Tupitsyn <pt...@apache.org>:

> Ivan, thanks for the answers! I retract my "-1". No objections.
>
> On Wed, Sep 15, 2021 at 12:58 PM Ivan Daschinsky <iv...@gmail.com>
> wrote:
>
> > >> 1. What percentage of our users rely on existing VS projects?
> > It is impossible to answer, but I suppose not so much. And, again, these
> > projects needs some tweaks in order to work properly in VS 2015+
> > Moreover, you cannot use VS as is, you should tweak them or download
> > dependencies in specific location.
> >
> > >> How much time (in minutes) does it take to switch from using existing
> VS
> > projects to CMake-generated ones?
> > If you use VS 2017 and later -- just a second, they already support CMake
> > out of box
> > https://devblogs.microsoft.com/cppblog/cmake-support-in-visual-studio/
> > If you use VS2015 and earlielr -- just download cmake and use bundled gui
> > app and generate projects in few clicks.
> >
> > And don't forget about vcpkg [1]. Even microsoft goes towards cmake and
> > make even package manager for it.
> > And it works great, I've tried with Ignite C++.
> >
> > [1] -- https://github.com/microsoft/vcpkg
> >
> > ср, 15 сент. 2021 г. в 12:46, Pavel Tupitsyn <pt...@apache.org>:
> >
> > > Ivan,
> > >
> > > Ok, I've got your point.
> > > What's your assessment on the following:
> > >
> > > 1. What percentage of our users rely on existing VS projects?
> > > 2. How much time (in minutes) does it take to switch from using
> existing
> > VS
> > > projects to CMake-generated ones?
> > >
> > >
> > >
> > > On Wed, Sep 15, 2021 at 12:37 PM Ivan Daschinsky <iv...@gmail.com>
> > > wrote:
> > >
> > > > >> Currently user
> > > > Sorry typo, I meant developer.
> > > >
> > > > ср, 15 сент. 2021 г. в 12:35, Ivan Daschinsky <iv...@gmail.com>:
> > > >
> > > > > > How?
> > > > > Currently user must add sources in 2 different places. One of this
> > > places
> > > > > is not specified and not intended to be edit outside VC.
> > > > > CMake can generate VS projects easily and without any problem. I've
> > > done
> > > > > this even in 2008 when I was C++/Qt developer.
> > > > >
> > > > > >> 1. Get all files in the directory
> > > > > >> 2. Filter by TestSuite suffix
> > > > > >> 3. Check if all of them are present in VS files
> > > > > First of all, BOOST_TEST is not NUnit :) Secondly, we can do that,
> > but
> > > it
> > > > > is not so easy as it is in .NET.
> > > > > Yes, we can use boost libraries in tests, but why we should do it?
> > Why
> > > we
> > > > > should invest our time in this activity?
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > ср, 15 сент. 2021 г. в 12:30, Pavel Tupitsyn <ptupitsyn@apache.org
> >:
> > > > >
> > > > >> > It makes development much more easier.
> > > > >>
> > > > >> How?
> > > > >>
> > > > >> > I can hardly imagine how it can be done
> > > > >>
> > > > >> 1. Get all files in the directory
> > > > >> 2. Filter by TestSuite suffix
> > > > >> 3. Check if all of them are present in VS files
> > > > >> Am I missing something? We have checks like this for Ignite.NET
> [1]
> > > > >>
> > > > >> [1]
> > > > >>
> > > > >>
> > > >
> > >
> >
> https://github.com/apache/ignite/blob/master/modules/platforms/dotnet/Apache.Ignite.Core.Tests/ProjectFilesTest.cs
> > > > >>
> > > > >>
> > > > >> On Wed, Sep 15, 2021 at 12:22 PM Ivan Daschinsky <
> > ivandasch@gmail.com
> > > >
> > > > >> wrote:
> > > > >>
> > > > >> > >> This may become an obstacle for some of the users and I'm not
> > > sure
> > > > >> how
> > > > >> > it improves anything.
> > > > >> > Please specify more correctly. What is an obstacle? Current VS
> > > > projects
> > > > >> > (odbc) cannot be build on VC 2015+
> > > > >> > without modification. CMake is an industry standard now.
> > > > >> > >> I'm not sure how it improves anything.
> > > > >> > It makes development much more easier.
> > > > >> >
> > > > >> > >> We can add an automatic check for this (in form of a test).
> > > > >> > I can hardly imagine how it can be done. And even if it is
> > possible,
> > > > >> this
> > > > >> > is a sisyphus job.
> > > > >> >
> > > > >> >
> > > > >> > ср, 15 сент. 2021 г. в 12:11, Petr Ivanov <mr.weider@gmail.com
> >:
> > > > >> >
> > > > >> > > +1
> > > > >> > >
> > > > >> > > Let's keep the project clean and on the verge of preferable
> tech
> > > > >> stack.
> > > > >> > >
> > > > >> > >
> > > > >> > > > On 15 Sep 2021, at 12:02, Ivan Pavlukhin <
> vololo100@gmail.com
> > >
> > > > >> wrote:
> > > > >> > > >
> > > > >> > > > +1 for removing VS project
> > > > >> > > >
> > > > >> > > > 2021-09-15 12:01 GMT+03:00, Nikolay Izhikov <
> > > nizhikov@apache.org
> > > > >:
> > > > >> > > >> +1
> > > > >> > > >>
> > > > >> > > >>> 15 сент. 2021 г., в 11:57, Pavel Tupitsyn <
> > > ptupitsyn@apache.org
> > > > >
> > > > >> > > >>> написал(а):
> > > > >> > > >>>
> > > > >> > > >>> -1
> > > > >> > > >>>
> > > > >> > > >>> This may become an obstacle for some of the users and I'm
> > not
> > > > sure
> > > > >> > how
> > > > >> > > it
> > > > >> > > >>> improves anything.
> > > > >> > > >>>
> > > > >> > > >>>> 3. Sometimes even maintainers forget to add test sources
> to
> > > VS
> > > > >> > > projects
> > > > >> > > >>> [1]
> > > > >> > > >>> We can add an automatic check for this (in form of a
> test).
> > > > >> > > >>>
> > > > >> > > >>> On Wed, Sep 15, 2021 at 10:28 AM Zhenya Stanilovsky
> > > > >> > > >>> <ar...@mail.ru.invalid> wrote:
> > > > >> > > >>>
> > > > >> > > >>>>
> > > > >> > > >>>>
> > > > >> > > >>>> completely support !
> > > > >> > > >>>>
> > > > >> > > >>>>> Igniters!
> > > > >> > > >>>>>
> > > > >> > > >>>>> Currently we have CMake build system, that works on
> > Windows,
> > > > >> Linux
> > > > >> > > and
> > > > >> > > >>>>> MacOs flawlessly
> > > > >> > > >>>>>
> > > > >> > > >>>>> 1. CMake is supported natively in VS 2019
> > > > >> > > >>>>> 2. CMake can generate VS projects for about 20 years
> > > > flawlessly.
> > > > >> > > >>>>> 3. Sometimes even maintainers forget to add test sources
> > to
> > > VS
> > > > >> > > projects
> > > > >> > > >>>> [1]
> > > > >> > > >>>>> 4. Currently on TC we build Ignite C++ on windows and
> > linux
> > > > >> > > flawlessly
> > > > >> > > >>>>> using CMake
> > > > >> > > >>>>> 5. VS projects are not backward compatible. We have to
> add
> > > > >> manually
> > > > >> > > (or
> > > > >> > > >>>>> by
> > > > >> > > >>>>> sed or patch) some dependencies in order to build
> current
> > VS
> > > > >> > projects
> > > > >> > > >>>>> on
> > > > >> > > >>>>> newer versions of VS.
> > > > >> > > >>>>>
> > > > >> > > >>>>> So I suggest simpy to remove VS projects because of
> > reasons
> > > > I've
> > > > >> > > >>>>> written
> > > > >> > > >>>>> above.
> > > > >> > > >>>>>
> > > > >> > > >>>>> WDYT?
> > > > >> > > >>>>>
> > > > >> > > >>>>>
> > > > >> > > >>>>>
> > > > >> > > >>>>> [1] --
> > https://issues.apache.org/jira/browse/IGNITE-15511
> > > > >> > > >>>>
> > > > >> > > >>>>
> > > > >> > > >>>>
> > > > >> > > >>>>
> > > > >> > > >>
> > > > >> > > >>
> > > > >> > > >
> > > > >> > > >
> > > > >> > > > --
> > > > >> > > >
> > > > >> > > > Best regards,
> > > > >> > > > Ivan Pavlukhin
> > > > >> > >
> > > > >> > >
> > > > >> >
> > > > >> > --
> > > > >> > Sincerely yours, Ivan Daschinskiy
> > > > >> >
> > > > >>
> > > > >
> > > > >
> > > > > --
> > > > > Sincerely yours, Ivan Daschinskiy
> > > > >
> > > >
> > > >
> > > > --
> > > > Sincerely yours, Ivan Daschinskiy
> > > >
> > >
> >
> >
> > --
> > Sincerely yours, Ivan Daschinskiy
> >
>


-- 
Sincerely yours, Ivan Daschinskiy