To paraphrase, I'm extremely negative on combining non-API related utility
headers with TS API headers. They're really quite different and that's
something users (such as me) writing plugins would care about.  I would
greatly appreciate them being distinct. Separating API from utility
mechanisms is quite a common pattern in open source as well. Beyond that, I
still think I'd like to have clear indicator about whether I have to put
extra link information in my makefile - linking to libtscpp doesn't happen
automatically and knowing that I need to do it is not a trivial point when
building a plugin.

I'll update the PR with the CPP API library rename after lunch.

On Thu, May 24, 2018 at 11:01 AM, Bryan Call <bc...@apache.org> wrote:

> It would be best to combine include/tscpp and include/tsutil into one
> directory (include/tscpp).  External users writing plugins really don’t
> care about the dependency distinction between them.
>
> This would mean that would would need to move the files from the lib/ts
> directory over to the lib/cppapi directory. Also, the cppapi library should
> be called libtscpp.so to be in sync with the include directory name.
>
> -Bryan
>
>
>
> > On May 24, 2018, at 6:45 AM, Alan Carroll <solidwallofc...@oath.com.INVALID>
> wrote:
> >
> > Based on feedback here, on IRC, and on the PR, the changes have been
> > updated.
> >
> > Exported headers have been moved to the top level 'include' directory.
> >
> > include/ts -> C API headers.
> > include/tscpp -> C++ API headers.
> > include/tsutil -> C++ utility headers.
> >
> > The same directories are used for the install. This reduces differences
> > between in core plugins and external plugins - both will now use the same
> > include paths for the same headers.
> >
> > Source changes -
> >
> > lib/ts -> lib/tsutil : this removes the problem where 'ts' as part of the
> > include path meant different things externally vs. internally. Now 'ts'
> is
> > always the C API headers and 'tsutil' are the utility headers. This also
> > means 'libtsutil.so' is built in 'lib/tsutil' which is nice. As part of
> > this 'apidefs.h.in' and 'apidefs.h' were moved to 'include/ts' because
> > those are C API headers. The include path for this file remains
> > 'ts/apidefs.h'.
> >
> > On Wed, May 23, 2018 at 4:31 PM, Jason Kenny <jke...@oath.com.invalid>
> > wrote:
> >
> >> I gave a talk on this my first summate. Honestly, most people I talk to
> are
> >> +1 on this.
> >>
> >> The only complaint about fixing our layout and refactoring broken code
> was
> >> that it makes it hard to cherry pick back to older drops. People
> complain
> >> and hack the build more and more. I want to:
> >>
> >> 1) simplify the build
> >> 2) make it easier for people to find the real source.
> >> 3) make it easier to change or add api without coming up with odd and
> >> overly clever names or tricks to avoid having a clean layout
> >>
> >> I believe in the end cleaner code will only make it easier for people to
> >> want to help out and join the ATS community. making complex as it scares
> >> people away to other projects
> >>
> >> Jason
> >>
> >> On Wed, May 23, 2018 at 4:25 PM, Leif Hedstrom <zw...@apache.org>
> wrote:
> >>
> >>>
> >>>
> >>>> On May 23, 2018, at 3:20 PM, Jason Kenny <jke...@oath.com.INVALID>
> >>> wrote:
> >>>>
> >>>>>> 1) I don’t like the “src” top level directory, that implies that all
> >>>> source is there (which is clearly not the case)
> >>>> We cannot move everything at once. We have to do stuff in small steps.
> >>>>
> >>>> I would really like to get all the source under an src/ dir to solve a
> >>>> number of stupid build problems we have. We have to start someplace,
> >> and
> >>>> honestly this is a good first step.
> >>>
> >>> Hugely -1 on this ninja move.
> >>>
> >>> This should be discussed / suggested in a separate discussion / PR, and
> >>> not snuck in like this into another PR. I.e. do not do this here, but
> if
> >> we
> >>> decide to change this later, make that change there.
> >>>
> >>> I’d be curious to hear about your build problems too, in the last 10+
> >>> years, no one has had any such issues because of the lack of a src/,
> >> that I
> >>> know of at least.
> >>>
> >>> Ciao,
> >>>
> >>> — leif
> >>>
> >>>
> >>
>
>

Reply via email to