On Fri, 2 Nov 2018 15:14:01 +0100 Xavi Artigas <xavierarti...@gmail.com> said:

> I am afraid in the middle of this discussion Mike's message has gone
> unnoticed. He already did this move 2 months ago:
> https://phab.enlightenment.org/D6880
> His patch removed the examples from the efl tree, including makefiles and
> CI.
> The examples in their new location already have makefiles.
> The task is still pending review.

ok - you mean more specifically he submitted a patch for review to do it.. .it
hasn't actually been done and made it to master :) right?

> Marcel, can any of that work still be used?
> 
> Xavi
> 
> On Fri, 2 Nov 2018 at 14:35, Carsten Haitzler <ras...@rasterman.com> wrote:
> 
> > On Thu, 1 Nov 2018 10:45:15 +0100 Marcel Hollerbach <m...@bu5hm4n.de>
> > said:
> >
> > >
> > >
> > > On 11/1/18 9:37 AM, Carsten Haitzler (The Rasterman) wrote:
> > > > On Wed, 31 Oct 2018 14:59:51 +0100 Marcel Hollerbach <m...@bu5hm4n.de>
> > said:
> > > >
> > > >>
> > > >>
> > > >> On 10/31/18 10:35 AM, Carsten Haitzler (The Rasterman) wrote:
> > > >>> On Tue, 30 Oct 2018 12:45:34 +0100 Marcel Hollerbach <
> > m...@bu5hm4n.de>
> > > >>> said:
> > > >>>
> > > >>>>
> > > >>>>
> > > >>>> On 10/30/18 10:11 AM, Xavi Artigas wrote:
> > > >>>>> I don't know what I'm talking about now, but I think Mike
> > suggested that
> > > >>>>> the examples repo could be a submodule of the efl repo, which
> > could be
> > > >>>>> checked out and built when "make examples" was called? Is that an
> > > >>>>> option?
> > > >>>>>
> > > >>>>> In this way we have the trees separated, with a much lighter efl,
> > while
> > > >>>>> still having the convenience of "make examples".
> > > >>>>>
> > > >>>>
> > > >>>> That is possible. (With meson :))
> > > >>>
> > > >>> possible with autofoo too - it's not just meson :)... but why does a
> > > >>> lighter tree matter? when you have the git tree you get the whole
> > history
> > > >>> so if it ever WAS in the tree... you still clone it (unless its a
> > shallow
> > > >>> clone - another story). if building of examples isn't the default
> > then
> > > >>> it's not going to be tested as much as people are not aware of it
> > being
> > > >>> an option etc. etc. - yes. it adds to the build time, but with
> > benefit.
> > > >>> unlike making -Werror default which can lead to build failure due to
> > > >>> causes outside of tree (like system/dependency headers causing
> > warnings
> > > >>> thus build errors), this would have build errors that are a result of
> > > >>> efl's breaking something... :)
> > > >>>
> > > >>
> > > >> I actually don't really know where to start right now why a lighter
> > tree
> > > >> is better, from efl.git POV:
> > > >>
> > > >> 1) The API is probebly more used in tests then in the examples (if not
> > > >> then we are in much bigger trouble)
> > > >
> > > > more tests == better. :) examples will almost definitely use api in
> > > > different ways. we don't have a full complete test suite of every
> > api... so
> > > > examples out of tree removes a build test at least.
> > >
> > > Now you switched from API testing to behaviour testing ... Which implies
> > > that you will need to run every single examples that we have every time
> >
> > no - i still mean api. they would pass different enums, use differing
> > api's to
> > the tests we have as tests we have do not cover 100% of api - not even
> > close.
> > they cover a small fraction of efl's api.
> >
> > > you patch something, while remembering every single way of working. That
> > > are about 650 executables ... :). Don't get me wrong, but assuming that
> >
> > nope. didn't mean to run them all. :) just compile them.
> >
> > > this is *done* by someone is just plainly wrong. Noone does that, and
> > > the number of executables that are not doing anything but spitting out
> > > errors is probebly proving this point. (Examples: everything in regards
> > > of evas-3d, evas-object-manipulation, evas-textblock-obstacles renders
> > > text over and over again)
> > >
> > > >> 2) The API is checked anyways in the tests, thus this is just useless
> > > >> wasted compile time
> > > >
> > > > certainly only a percentage of our api is tested in tests... a
> > smallish one.
> > >
> > > Mhmm quickly checking API coverage with and without examples build is
> > > proving that you are wrong with this, the only APIs that are not used in
> > > tests is the evas-3d stuff.
> >
> > at least as far as our test are concerned (test suites) ethumb has no
> > tests - it
> > only has examples. same with ephysics. the elementary examples arfe
> > definitely
> > more plentiful than tests. elm_win_activate(), elm_win_lower(),
> > elm_win_borderless_get(), elm_win_borderless_set(),
> > elm_win_shaped_get()... in
> > fact the elm win test uses an incredibly small number of api's vs the
> > example.
> > yes - sure. we have elementary_test testing almost all of these though, but
> > relying on the test suites to cover all of our api i don't think flies
> > right
> > now. that is my point. removing examples removes
> >
> > > >> 3) Our examples simply don't build. check out the ephysics stuff :)
> > > >
> > > > that's bad - so moving things that don't build somewhere else will fix
> > > > that? :)
> > >
> > > No - but it proves my point that having them in tree is pointless
> > > because noone tests them :)
> >
> > true - so maybe they should build by default... :)
> >
> > > >> 4) We are talking about the efl.git repository, i would try to keep
> > > >> software in there that works. Everything else looks dubious.
> > > >
> > > > that is true, but perhaps the examples should be fixed, not removed? :)
> > >
> > > They should be fixed since a long time - and it does not happen, if it
> > > happens now then they are located alongside our other examples (and as
> > > shown below, more usefull to the user)
> > >
> > > >
> > > >> from the examples.git POV:
> > > >>
> > > >> 1) someone searching for examples of efl probely does not want to
> > fight
> > > >> trough the jungle that we call our efl.git repository
> > > >
> > > > they have to now fight to FIND another repo too. maybe if you wanted it
> > > > easier move examples out of src into the top level? so you lone and
> > there
> > > > is an examples dir right in front of you when you run ls.... i'm pretty
> > > > sure making it another repo is harder to find examples than this... :)
> > >
> > > ANOTHER repository, that is called examples.git, thats unpossible to
> > > find, and noone will ever imagen that there are examples in the
> > > examples.git repository ... :) Are you serious ? (And your point with
> >
> > no - i'm saying that someone who is looking for efl examples probably is
> > looking for the examples in a split out package or in the efl package
> > installed, or they go grab the efl src and look at the tree - they are less
> > likely to find the examples git repo vs the efl one or whats packaged as
> > part
> > of the efl build (as simotek just said). :)
> >
> > > having them in the root directory - yes, take a look at
> > >
> > https://git.enlightenment.org/tools/examples.git/tree/?h=devs/bu5hm4n/examples
> > )
> > >
> > > >> 2) its way easier to get your own software out of the example if you
> > can
> > > >> have a look at the buildtool and cnp solutions out there. The efl
> > > >> build-system is giant, you will likely never find any usefull
> > > >> information there without wasting a lot of time
> > > >
> > > > every example could be an autofoo style subproject with its own
> > configure.ac
> > > > -or same kind of thing with meson so an example can be taken as a
> > project
> > > > skeleton. when it';s in our out of tree/repo doesn't make a difference
> > > > here. if its an out of tree examples repo with a single big build then
> > it's
> > > > the same - a big set of build files to wade through for a small single
> > > > "app" you want. it's just how you structure the build rather than what
> > > > trees things are in. :)
> > > >
> > >
> > > Could be - but it is not, and as long as this is the case 3) hits.
> > >
> > > >> 3) Compiling against the installed version of efl is different from
> > > >> compiling against something in-tree. Header wise, and dependency wise.
> > > >
> > > > indeed that is true. it's also a problem for us with running things
> > like
> > > > edje_cc, eolian_gen etc. from within our tree when we build. we have
> > special
> > > > casing of module handling just for when running in the tree. if our
> > tree
> > > > resembled the installation pretty much exactly... then life would be
> > far
> > > > simpler. :)
> > > >
> > > >> 4) Take a look at the ecore-con examples, they partly have used stuff
> > > >> from config.h that is generated from efl.git, there is no logical
> > > >> seperation between the configuration of the examples and the
> > > >> configuration of efl, that makes understanding a single example super
> > hard.
> > > >
> > > > this is true and they should not do that. but that is orthogonal to
> > being
> > > > in or out of tree. :)
> > >
> > > No its not - having it intree gives you the possibility of doing that,
> > > having it out of tree simply does not.
> >
> > they could happily use some local duplicate of the autoconf checks and
> > config.h
> > in examples when they don't need to at all. moving the examples over means
> > removing the ifdefs anyway and that work can be done without moving them
> > over
> > to achieve the same goal. that's why i call is orthogonal. the ifdefs are
> > not
> > needed to live in-tree. most should never have been there. some are just
> > ifdefs
> > to show examples specific things if efl compiled them.
> >
> > > >> TLDR;:
> > > >> So all in all. Can we stop adding replies to this thread that impose
> > no
> > > >> objection nor agreement, but rather just continue... ? :)
> > > >
> > > > maybe you didn't see that i'm saying there are downsides to moving the
> > > > examples out of tree and i highly suspect they will just bitrot in the
> > > > examples tree and now provide less value in checking if we break stuff.
> > > > especially anything that touched so/interfaces will rot fast.
> > > >
> > >
> > > I saw that you are saying that there are downsides, but I also see that
> > > every argument for a downside is basically invalid :)
> >
> > i would disagree. but ok - move them out and in 2 years form now let's see
> > if
> > they still compile. they shall have bitrotted i bet by then.
> >
> > > We can easily counter the bitrotting with having them in CI ... so we
> > > always know its state, and can revert neccessary commits :)
> >
> > good luck with that.
> >
> > > > if they are just moved out as-is then broken examples that don't build
> > are
> > > > still broken. they need fixing anyway. i agree that having broken
> > stuff is
> > > > bad
> > > > - isn't fixing that a better idea? :) yes - compiling a bunch of
> > examples
> > > > takes more time. as does running test suites and compiling those. QA
> > takes
> > > > time. that can be handled via build options to have a fast path build
> > or a
> > > > "add all the QA bits" option etc. ... :)
> > >
> > > Yeah - see
> > >
> > https://git.enlightenment.org/tools/examples.git/tree/?h=devs/bu5hm4n/examples
> > >
> > > Its basically sorting and fixing what is there - and searching for
> > > resources that are missing for some time. I see absolutly no value in
> > > fixing those things in-tree, where its not understandable how the
> > > examples are assembled.
> > > Those things should be usefull and obvious to new users ... which is IMO
> > > better in the form you can see them there.
> >
> > build system specifics honestly are not something a scope that an example
> > is
> > showing off. it's a necessary evil. there are already docs on the autofoo
> > setup
> > needed to use efl and it's the same regardless of what you write. drop in
> > whatever example file u like as the src file and it would work (except some
> > that do edje_cc etc. - just need templates/samples for that too).
> >
> > but ok- remove them... let the bitrot come.
> >
> > > >
> > > >> Greetings,
> > > >>      bu5hm4n
> > > >>
> > > >>>>> Xavi
> > > >>>>>
> > > >>>>> On Tue, 30 Oct 2018 at 02:02, Carsten Haitzler <
> > ras...@rasterman.com>
> > > >>>>> wrote:
> > > >>>>>
> > > >>>>>> On Mon, 29 Oct 2018 19:18:06 +0100 Marcel Hollerbach <
> > m...@bu5hm4n.de>
> > > >>>>>> said:
> > > >>>>>>
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>>>> On 10/29/18 7:08 PM, Carsten Haitzler (The Rasterman) wrote:
> > > >>>>>>>> On Mon, 29 Oct 2018 18:02:58 +0100 Marcel Hollerbach
> > > >>>>>>>> <m...@bu5hm4n.de>
> > > >>>>>> said:
> > > >>>>>>>>
> > > >>>>>>>>> Hello,
> > > >>>>>>>>>
> > > >>>>>>>>> A while ago the examples from the efl.git repository were
> > migrated
> > > >>>>>>>>> to examples.git [1]. However - right now the examples in the
> > > >>>>>>>>> efl.git are still there. Is it okay for everyone that we will
> > > >>>>>>>>> remove those
> > > >>>>>> examples
> > > >>>>>>>>> from the main efl.git repository but have them in the
> > examples.git ?
> > > >>>>>>>>>
> > > >>>>>>>>> Greetings,
> > > >>>>>>>>>         bu5hm4n
> > > >>>>>>>>>
> > > >>>>>>>>> [1]:https://git.enlightenment.org/tools/examples.git/
> > > >>>>>>>>
> > > >>>>>>>> hmmm - these acted as nice build checks. having them out of the
> > efl
> > > >>>>>> tree
> > > >>>>>>>> makes that no longer be in sync... :/
> > > >>>>>>>
> > > >>>>>>> This is true. However, those examples have been broken before,
> > even if
> > > >>>>>>> in-tree, they don't build per default. Also they only check for
> > API
> > > >>>>>>> breaks, no behaviour changes etc, those API breaks will(at
> > least) be
> > > >>>>>>> found by the ABI-checker. And last but not least, the
> > examples.git
> > > >>>>>>> repository can still be build on CI.
> > > >>>>>>
> > > >>>>>> catching api/abi breaks via compilation when they happen as you
> > build
> > > >>>>>> is nicer
> > > >>>>>> than the abi checker at release time though... :)
> > > >>>>>>
> > > >>>>
> > > >>>> You don't catch them right now via compilation either, as those are
> > not
> > > >>>> compiled per default. So what i am suggesting is that we simply
> > hook up
> > > >>>> the examples in the CI and build them there. This will additionally
> > also
> > > >>>> catch installtion errors.
> > > >>>>
> > > >>>>>>> Greetings,
> > > >>>>>>>        bu5hm4n
> > > >>>>>>>
> > > >>>>>>>
> > > >>>>>>> _______________________________________________
> > > >>>>>>> enlightenment-devel mailing list
> > > >>>>>>> enlightenment-devel@lists.sourceforge.net
> > > >>>>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > >>>>>>>
> > > >>>>>>
> > > >>>>>>
> > > >>>>>> --
> > > >>>>>> ------------- Codito, ergo sum - "I code, therefore I am"
> > > >>>>>> -------------- Carsten Haitzler - ras...@rasterman.com
> > > >>>>>>
> > > >>>>>>
> > > >>>>>>
> > > >>>>>> _______________________________________________
> > > >>>>>> enlightenment-devel mailing list
> > > >>>>>> enlightenment-devel@lists.sourceforge.net
> > > >>>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > >>>>>>
> > > >>>>>
> > > >>>>> _______________________________________________
> > > >>>>> enlightenment-devel mailing list
> > > >>>>> enlightenment-devel@lists.sourceforge.net
> > > >>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > >>>>>
> > > >>>>
> > > >>>>
> > > >>>> _______________________________________________
> > > >>>> enlightenment-devel mailing list
> > > >>>> enlightenment-devel@lists.sourceforge.net
> > > >>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > >>>>
> > > >>>
> > > >>>
> > > >>
> > > >>
> > > >> _______________________________________________
> > > >> enlightenment-devel mailing list
> > > >> enlightenment-devel@lists.sourceforge.net
> > > >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > > >>
> > > >
> > > >
> > >
> > >
> > > _______________________________________________
> > > enlightenment-devel mailing list
> > > enlightenment-devel@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > >
> >
> >
> > --
> > ------------- Codito, ergo sum - "I code, therefore I am" --------------
> > Carsten Haitzler - ras...@rasterman.com
> >
> >
> >
> > _______________________________________________
> > enlightenment-devel mailing list
> > enlightenment-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >
> 
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
Carsten Haitzler - ras...@rasterman.com



_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to