I like this suggestion. Blocking the PR is too drastic. I also second
Pramod's point (made elsewhere) that we should try to encourage
contribution instead of discouraging it by resorting to drastic measures.
If you institute drastic measures to achieve a desired effect (e.g. getting
contributors to look into CVEs and build infrastructure issues) it can have
the opposite effect of contributors losing interest.

Sanjay



On Wed, Nov 1, 2017 at 1:25 PM, Thomas Weise <t...@apache.org> wrote:

> Considering typical behavior, unless the CI build fails, very few will be
> interested fixing the issues.
>
> Perhaps if after a CI failure the issue can be identified as pre-existing,
> we can whitelist and create a JIRA that must be addressed prior to the next
> release?
>
>
> On Wed, Nov 1, 2017 at 7:51 PM, Pramod Immaneni <pra...@datatorrent.com>
> wrote:
>
> > I would like to hear what others think.. at this point I am -1 on merging
> > the change as is that would fail all PR builds when a matching CVE is
> > discovered regardless of whether the PR was the cause of the CVE or not.
> >
> > On Wed, Nov 1, 2017 at 12:07 PM, Vlad Rozov <vro...@apache.org> wrote:
> >
> > > On 11/1/17 11:39, Pramod Immaneni wrote:
> > >
> > >> On Wed, Nov 1, 2017 at 11:36 AM, Vlad Rozov <vro...@apache.org>
> wrote:
> > >>
> > >> There is no independent build and the check is still necessary to
> > prevent
> > >>> new dependencies with CVE being introduced.
> > >>>
> > >>> There isn't one today but one could be added. What kind of effort is
> > >> needed.
> > >>
> > > After it is added, we can discuss whether it will make sense to move
> the
> > > check to the newly created build. Even if one is added, the check needs
> > to
> > > be present in the CI builds that verify PR, so it is in the right place
> > > already, IMO.
> > >
> > >>
> > >>
> > >> Look at Malhar 3.8.0 thread. There are libraries from Category X
> > >>> introduced as a dependency, so now instead of dealing with the issue
> > when
> > >>> such dependencies were introduced, somebody else needs to deal with
> > >>> removing/fixing those dependencies.
> > >>>
> > >>> Those were directly introduced in PRs. I am not against adding
> > additional
> > >> checks that verify the PR better.
> > >>
> > > Right and it would be much better to catch the problem at the time it
> was
> > > introduced, but Category X list (as well as known CVE) is not static.
> > >
> > >
> > >>
> > >> Thank you,
> > >>>
> > >>> Vlad
> > >>>
> > >>>
> > >>> On 11/1/17 11:21, Pramod Immaneni wrote:
> > >>>
> > >>> My original concern still remains. I think what you have is valuable
> > but
> > >>>> would prefer that it be activated in an independent build that
> > notifies
> > >>>> the
> > >>>> interested parties.
> > >>>>
> > >>>> On Wed, Nov 1, 2017 at 11:13 AM, Vlad Rozov <vro...@apache.org>
> > wrote:
> > >>>>
> > >>>> Any other concerns regarding merging the PR? By looking at the
> active
> > >>>> PRs
> > >>>>
> > >>>>> on the apex core the entire conversation looks to be at the moot
> > point.
> > >>>>>
> > >>>>> Thank you,
> > >>>>>
> > >>>>> Vlad
> > >>>>>
> > >>>>>
> > >>>>> On 10/30/17 18:50, Vlad Rozov wrote:
> > >>>>>
> > >>>>> On 10/30/17 17:30, Pramod Immaneni wrote:
> > >>>>>
> > >>>>>> On Sat, Oct 28, 2017 at 7:47 AM, Vlad Rozov <vro...@apache.org>
> > >>>>>> wrote:
> > >>>>>>
> > >>>>>>> Don't we use unit test to make sure that PR does not break an
> > >>>>>>> existing
> > >>>>>>>
> > >>>>>>> functionality? For that we use CI environment that we do not
> > control
> > >>>>>>>> and do
> > >>>>>>>> not introduce any changes to, but for example Apache
> > infrastructure
> > >>>>>>>> team
> > >>>>>>>> may decide to upgrade Jenkins and that may impact Apex builds.
> The
> > >>>>>>>> same
> > >>>>>>>> applies to CVE. It is there to prevent dependencies with severe
> > >>>>>>>> vulnerabilities.
> > >>>>>>>>
> > >>>>>>>> Infrastructure changes are quite different, IMO, from this
> > proposal.
> > >>>>>>>>
> > >>>>>>>> While
> > >>>>>>> they are not in our control, in majority of the cases, the
> changes
> > >>>>>>> maintain
> > >>>>>>> compatibility so everything on top will continue to run the same.
> > In
> > >>>>>>> this
> > >>>>>>> case a CVE will always fail all PRs, the code changes have
> nothing
> > to
> > >>>>>>> do
> > >>>>>>> with introducing the CVE. I did make the exception that if a PR
> is
> > >>>>>>> bringing
> > >>>>>>> in the CVE yes do fail it.
> > >>>>>>>
> > >>>>>>> There were just two recent changes, one on Travis CI side and
> > another
> > >>>>>>>
> > >>>>>> on
> > >>>>>> Jenkins side that caused builds for all PRs to fail and none of
> them
> > >>>>>> was
> > >>>>>> caused by code changes in any of open PRs, so I don't see how it
> is
> > >>>>>> different.
> > >>>>>>
> > >>>>>> A code change may or may not have relation to CVE introduced. For
> > >>>>>> newly
> > >>>>>> introduced dependencies, there may be known CVEs. In any case I
> > don't
> > >>>>>> think
> > >>>>>> it is important to differentiate how CVE is introduced, it is
> > >>>>>> important
> > >>>>>> to
> > >>>>>> eliminate dependencies with known CVEs.
> > >>>>>>
> > >>>>>>
> > >>>>>> There is no "stick" in a failed build or keeping PR open until
> > >>>>>>> dependency
> > >>>>>>>
> > >>>>>>> issue is resolved or unit test failure is fixed. Unless an
> employer
> > >>>>>>>> punishes its employee for not delivering PR based on that vendor
> > >>>>>>>> priority,
> > >>>>>>>> there is no "stick". As we already discussed, the community does
> > not
> > >>>>>>>> have a
> > >>>>>>>> deadline for a PR merge or for a release to go out. In a case
> > there
> > >>>>>>>> is a
> > >>>>>>>> problematic dependency (with CVE or category X license) you as a
> > PMC
> > >>>>>>>> suppose to -1 a release (at least I will). Will you consider -1
> > as a
> > >>>>>>>> "stick"? For me, it is not about punishing an individual
> > >>>>>>>> contributor,
> > >>>>>>>> it is
> > >>>>>>>> a priority and focus shift for the entire community, not a
> "stick"
> > >>>>>>>> for
> > >>>>>>>> an
> > >>>>>>>> individual contributor.
> > >>>>>>>>
> > >>>>>>>> The stick I am referring to is failing all PRs hoping that will
> > make
> > >>>>>>>>
> > >>>>>>>> people
> > >>>>>>> address CVEs. It's got nothing to do with an employer, people
> > >>>>>>> contributing
> > >>>>>>> to open source can't expect they can control what the outcome
> will
> > be
> > >>>>>>> or
> > >>>>>>> what form it will take. You may be confusing this with some other
> > >>>>>>> issue.
> > >>>>>>> In
> > >>>>>>> some of the arguments, you are assuming this scenario is similar
> to
> > >>>>>>> build
> > >>>>>>> failures from failing unit tests and I am arguing that premise. I
> > >>>>>>> don't
> > >>>>>>> think we should bring regular development to a halt whenever a
> > >>>>>>> matching
> > >>>>>>> CVE
> > >>>>>>> is discovered, unless there is some other secondary reason like
> > >>>>>>> merging a
> > >>>>>>> PR will make it difficult for a CVE fix to be made. Have you
> given
> > a
> > >>>>>>> thought to what I said about having a separate build that will
> > notify
> > >>>>>>> about
> > >>>>>>> CVEs.
> > >>>>>>>
> > >>>>>>> As I mentioned, there is no stick, no deadlines and no issues
> > keeping
> > >>>>>>>
> > >>>>>> PRs
> > >>>>>> open until builds can be verified on CI environment. Fixing a
> failed
> > >>>>>> build
> > >>>>>> is a priority for the *community* not a stick for an individual
> > >>>>>> contributor.
> > >>>>>>
> > >>>>>> I don't see why keeping PRs open (for whatever reason) brings
> > regular
> > >>>>>> development to a halt. Nobody is going to put github repo offline.
> > >>>>>> Contributors may continue to open new PR, collaborate on existing
> > PRs
> > >>>>>> and
> > >>>>>> add more changes (and need to be patient for those changes to be
> > >>>>>> reviewed
> > >>>>>> and accepted). The regular development will continue with the only
> > >>>>>> exception that the next commit to be merged must address the build
> > >>>>>> issue
> > >>>>>> (whether it is a failed unit test or newly found CVE).
> > >>>>>>
> > >>>>>> I don't see much value in a separate build and do not plan to put
> > >>>>>> effort
> > >>>>>> in that direction. Additionally, will not a separate build that
> only
> > >>>>>> checks
> > >>>>>> for CVE will trigger your initial concern of disclosing CVE in
> > public?
> > >>>>>>
> > >>>>>> Thank you,
> > >>>>>>
> > >>>>>>> Vlad
> > >>>>>>>
> > >>>>>>>>
> > >>>>>>>> On 10/27/17 14:28, Pramod Immaneni wrote:
> > >>>>>>>>
> > >>>>>>>> On Fri, Oct 27, 2017 at 11:51 AM, Vlad Rozov <vro...@apache.org
> >
> > >>>>>>>> wrote:
> > >>>>>>>>
> > >>>>>>>> On 10/26/17 11:46, Pramod Immaneni wrote:
> > >>>>>>>>>
> > >>>>>>>>> On Thu, Oct 26, 2017 at 10:39 AM, Vlad Rozov <
> vro...@apache.org>
> > >>>>>>>>>
> > >>>>>>>>>> wrote:
> > >>>>>>>>>>
> > >>>>>>>>>> I guess you are mostly concerned regarding new CVE in an
> > existing
> > >>>>>>>>>>
> > >>>>>>>>>>> dependency. Once such CVE is added to a database, will it be
> > >>>>>>>>>>> better
> > >>>>>>>>>>>
> > >>>>>>>>>>> to
> > >>>>>>>>>>>> know
> > >>>>>>>>>>>> about it or postpone discovery till we cut release
> candidate?
> > In
> > >>>>>>>>>>>> case
> > >>>>>>>>>>>> it
> > >>>>>>>>>>>> is
> > >>>>>>>>>>>> reported only during release cycle, there is much less time
> > for
> > >>>>>>>>>>>> the
> > >>>>>>>>>>>> community to take an action and it still needs to be taken
> > (as a
> > >>>>>>>>>>>> PMC
> > >>>>>>>>>>>> member
> > >>>>>>>>>>>> you are responsible for preventing release with severe
> > security
> > >>>>>>>>>>>> issue
> > >>>>>>>>>>>> going
> > >>>>>>>>>>>> out). If it is reported once the information becomes
> > available,
> > >>>>>>>>>>>> there
> > >>>>>>>>>>>> is
> > >>>>>>>>>>>> more time to research and either upgrade the dependency with
> > >>>>>>>>>>>> newly
> > >>>>>>>>>>>> found
> > >>>>>>>>>>>> CVE, agree that it does not impact the project.
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> This would be the more commonly occurring scenario. We can
> > >>>>>>>>>>>> always
> > >>>>>>>>>>>> know
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> about the CVEs because of your changes. We don't need to
> fail
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> builds to
> > >>>>>>>>>>> do
> > >>>>>>>>>>> that. I am not asking you to remove the reporting. There is
> no
> > >>>>>>>>>>> set
> > >>>>>>>>>>> time
> > >>>>>>>>>>> for
> > >>>>>>>>>>> a release so having less time during release for addressing
> > >>>>>>>>>>> relevant
> > >>>>>>>>>>> CVEs
> > >>>>>>>>>>> does not come up. There is also nothing preventing anyone
> from
> > >>>>>>>>>>> looking
> > >>>>>>>>>>> at
> > >>>>>>>>>>> these reports and taking action earlier.
> > >>>>>>>>>>>
> > >>>>>>>>>>> I don't see why it will be more commonly occurring scenario,
> > but
> > >>>>>>>>>>> I
> > >>>>>>>>>>> think
> > >>>>>>>>>>>
> > >>>>>>>>>>> it is equally important to prevent new dependency with severe
> > >>>>>>>>>>>
> > >>>>>>>>>> vulnerabilities being introduced into the project and check
> > >>>>>>>>>> existing
> > >>>>>>>>>> dependencies for newly discovered severe vulnerabilities.
> > >>>>>>>>>>
> > >>>>>>>>>> How will we know about CVE if it is removed from CI build? Why
> > >>>>>>>>>> require
> > >>>>>>>>>> manual verification when it can be done during CI build and
> does
> > >>>>>>>>>> not
> > >>>>>>>>>> affect
> > >>>>>>>>>> builds done by individual contributors?
> > >>>>>>>>>>
> > >>>>>>>>>> While there is no set time for a release, there is no set time
> > >>>>>>>>>> for a
> > >>>>>>>>>> PR
> > >>>>>>>>>> merge as well.
> > >>>>>>>>>>
> > >>>>>>>>>> Yes, nothing prevents anyone from looking at the dependency
> > >>>>>>>>>> vulnerabilities, but there is a better chance that "anyone"
> does
> > >>>>>>>>>> not
> > >>>>>>>>>> mean
> > >>>>>>>>>> nobody if CI build fails.
> > >>>>>>>>>>
> > >>>>>>>>>>
> > >>>>>>>>>> I still do not understand why you value an individual
> > contributor
> > >>>>>>>>>> and
> > >>>>>>>>>>
> > >>>>>>>>>> PR
> > >>>>>>>>>>>
> > >>>>>>>>>>> over the community and the project itself. Once there is a
> > severe
> > >>>>>>>>>>>
> > >>>>>>>>>>> security
> > >>>>>>>>>>>> vulnerability, it affects everyone who cares about the
> > project,
> > >>>>>>>>>>>> including
> > >>>>>>>>>>>> all contributors. I don't see a problem with a PR being in a
> > >>>>>>>>>>>> pending
> > >>>>>>>>>>>> (not
> > >>>>>>>>>>>> merged) open state till a build issue is resolved.
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> That is a mischaracterization that you have stated before as
> > >>>>>>>>>>>> well. A
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> project cannot grow without contributions and without
> policies
> > >>>>>>>>>>>> that
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> create
> > >>>>>>>>>>> a supportive enviroment where that can happen, I don't see
> the
> > >>>>>>>>>>> need
> > >>>>>>>>>>> to
> > >>>>>>>>>>> put
> > >>>>>>>>>>> unnecessary obstacles for legitimate contributions that are
> not
> > >>>>>>>>>>> the
> > >>>>>>>>>>> cause
> > >>>>>>>>>>> of a problem. Everytime there is a matching CVE the PRs are
> > going
> > >>>>>>>>>>> to
> > >>>>>>>>>>> get
> > >>>>>>>>>>> blocked till that CVE is addressed and I am not confident we
> > have
> > >>>>>>>>>>> the
> > >>>>>>>>>>> bandwidth in the community to address this expediently. It is
> > >>>>>>>>>>> also
> > >>>>>>>>>>> inaccurate to equate this to PR not being merged till build
> > >>>>>>>>>>> issues
> > >>>>>>>>>>> are
> > >>>>>>>>>>> resolved as it derives from an assumption that CVE is same
> as a
> > >>>>>>>>>>> build
> > >>>>>>>>>>> failure.
> > >>>>>>>>>>>
> > >>>>>>>>>>> While project can't grow without individual contributions,
> > >>>>>>>>>>> project
> > >>>>>>>>>>> is a
> > >>>>>>>>>>>
> > >>>>>>>>>>> result of a large number of contributions from a number of
> > >>>>>>>>>>>
> > >>>>>>>>>> contributors.
> > >>>>>>>>>> Some of those contributors are not active anymore and will not
> > >>>>>>>>>> provide
> > >>>>>>>>>> any
> > >>>>>>>>>> fixes should a vulnerability be found in their contribution.
> It
> > >>>>>>>>>> becomes a
> > >>>>>>>>>> shared responsibility of all currently active community
> members
> > >>>>>>>>>> and
> > >>>>>>>>>> those
> > >>>>>>>>>> who submit PR are part of the community and share that
> > >>>>>>>>>> responsibility,
> > >>>>>>>>>> are
> > >>>>>>>>>> not they? If a contributor considers him/herself as part of a
> > >>>>>>>>>> community,
> > >>>>>>>>>> why he or she can't wait for the build issue to be resolved or
> > >>>>>>>>>> better
> > >>>>>>>>>> take
> > >>>>>>>>>> an action on resolving the issue? The only possible
> explanation
> > >>>>>>>>>> that I
> > >>>>>>>>>> see
> > >>>>>>>>>> is the one that I already mentioned on this thread.
> > >>>>>>>>>>
> > >>>>>>>>>> If you see this as unnecessary obstacles for legitimate
> > >>>>>>>>>> contributions,
> > >>>>>>>>>> why
> > >>>>>>>>>> to enforce code style, it is also unnecessary obstacle. Unit
> > test?
> > >>>>>>>>>> Should
> > >>>>>>>>>> it be considered to be optional for a PR to pass unit tests as
> > >>>>>>>>>> well?
> > >>>>>>>>>> What
> > >>>>>>>>>> if an environment change on CI side causes build to fail
> similar
> > >>>>>>>>>> to
> > >>>>>>>>>> what
> > >>>>>>>>>> happened recently? Should we disable CI builds too and rely
> on a
> > >>>>>>>>>> committer
> > >>>>>>>>>> or a release manager to run unit tests?  If CI build fails for
> > >>>>>>>>>> whatever
> > >>>>>>>>>> reason, how can you be sure that if it fails for another PR as
> > >>>>>>>>>> well,
> > >>>>>>>>>> that
> > >>>>>>>>>> they both fail for the same reason and there is no any other
> > >>>>>>>>>> reasons
> > >>>>>>>>>> that
> > >>>>>>>>>> will cause a problem with a PR?
> > >>>>>>>>>>
> > >>>>>>>>>> I don't know how failing PRs because of CVE, which we don't
> > >>>>>>>>>> introduce,
> > >>>>>>>>>>
> > >>>>>>>>>> don't control, no idea of and possibly unrelated would fall in
> > the
> > >>>>>>>>> same
> > >>>>>>>>> bucket as unit tests. I am at a loss of words for that. There
> is
> > no
> > >>>>>>>>> reason
> > >>>>>>>>> to block legitimate development for this. This can be handled
> > >>>>>>>>> separtely
> > >>>>>>>>> and
> > >>>>>>>>> in parallel. Maybe there is a way we can setup an independent
> job
> > >>>>>>>>> on
> > >>>>>>>>> a
> > >>>>>>>>> build server that runs nightly, fails if there are new CVEs
> > >>>>>>>>> discovered
> > >>>>>>>>> and
> > >>>>>>>>> sends an email out to the security or dev group. You could even
> > >>>>>>>>> reduce
> > >>>>>>>>> the
> > >>>>>>>>> CVE threshold for this. I don't believe in a stick approach
> > (carrot
> > >>>>>>>>> and
> > >>>>>>>>> stick metaphor) and believe in proportional measures.
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>>
> > >>>>>>>>> Thank you,
> > >>>>>>>>>
> > >>>>>>>>> Vlad
> > >>>>>>>>>>
> > >>>>>>>>>>> On 10/26/17 09:42, Pramod Immaneni wrote:
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> On Thu, Oct 26, 2017 at 12:08 AM, Vlad Rozov <
> > vro...@apache.org
> > >>>>>>>>>>>> >
> > >>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> There is a way to add an exception, but it needs to be
> > discussed
> > >>>>>>>>>>>> on
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> a
> > >>>>>>>>>>>>> case
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> by case basis. Note that CVEs are not published until a fix
> > is
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> available.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>> For severity 8 CVEs I expect patches to become available
> for
> > >>>>>>>>>>>>>> the
> > >>>>>>>>>>>>>> reported
> > >>>>>>>>>>>>>> version unless it is an obsolete version in which case,
> the
> > >>>>>>>>>>>>>> upgrade
> > >>>>>>>>>>>>>> to
> > >>>>>>>>>>>>>> a
> > >>>>>>>>>>>>>> supported version is already overdue.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> I think we should retain the ability to make that choice
> of
> > >>>>>>>>>>>>>> what
> > >>>>>>>>>>>>>> and
> > >>>>>>>>>>>>>> when
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> to upgrade rather than hard enforce it. Like I mentioned
> the
> > >>>>>>>>>>>>>> CVE
> > >>>>>>>>>>>>>> may
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> not
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>> apply to us (it has happened before), even though it may be
> > >>>>>>>>>>>>> beneficial
> > >>>>>>>>>>>>> upgrade generally when its not applicable, there may not be
> > the
> > >>>>>>>>>>>>> bandwidth
> > >>>>>>>>>>>>> in community to do the necessary changes to upgrade to a
> > newer
> > >>>>>>>>>>>>> version
> > >>>>>>>>>>>>> especially if those dependencies don't follow semver (has
> > >>>>>>>>>>>>> happened
> > >>>>>>>>>>>>> before
> > >>>>>>>>>>>>> as well, remember effort with ning). My caution comes from
> > >>>>>>>>>>>>> experiencing
> > >>>>>>>>>>>>> this situation before.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> I don't see how reporting helps. If a build succeeds, I
> don't
> > >>>>>>>>>>>>> expect
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> anyone to look into the report, it is only when CI build
> > fails,
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> committers
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>> and reviewers look into the details.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> We can add a mandatory step during release that we need to
> > >>>>>>>>>>>>>> assess
> > >>>>>>>>>>>>>> CVEs
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> matching this criteria before proceeding with the release.
> > >>>>>>>>>>>>>> This
> > >>>>>>>>>>>>>> could
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> end
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>> up requiring upgrade of some dependencies and in other
> cases
> > it
> > >>>>>>>>>>>>> may
> > >>>>>>>>>>>>> not
> > >>>>>>>>>>>>> be
> > >>>>>>>>>>>>> needed. This assessment can also happen more often in adhoc
> > >>>>>>>>>>>>> fashion
> > >>>>>>>>>>>>> offline
> > >>>>>>>>>>>>> before release based upon interest from community. I am
> also
> > >>>>>>>>>>>>> open
> > >>>>>>>>>>>>> to
> > >>>>>>>>>>>>> making
> > >>>>>>>>>>>>> it mandatory with every PR, in future, like you are
> > suggesting,
> > >>>>>>>>>>>>> if
> > >>>>>>>>>>>>> we
> > >>>>>>>>>>>>> see
> > >>>>>>>>>>>>> sufficient uptake in community on these issues. From
> > experience
> > >>>>>>>>>>>>> this
> > >>>>>>>>>>>>> is
> > >>>>>>>>>>>>> not
> > >>>>>>>>>>>>> there currently and hence I don't want to do this now.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> IMO, it does not matter how CVE is introduced. It may be a
> > new
> > >>>>>>>>>>>>> dependency
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> with an existing CVE or it can be a new CVE for an existing
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> dependency.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>> In
> > >>>>>>>>>>>>>> both cases, dependency with the CVE needs to be fixed.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> In one case the PR is not directly responsible for the
> issue
> > >>>>>>>>>>>>>> and
> > >>>>>>>>>>>>>> hence
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> we
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> should avoid penalizing them or block them.
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> Thank you,
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> Vlad
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> On 10/25/17 11:58, Pramod Immaneni wrote:
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> Thanks that sounds mostly fine except what happens if
> there
> > >>>>>>>>>>>>>> is a
> > >>>>>>>>>>>>>> cve
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> matching that severity in a dependency but it doesnt
> affect
> > us
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> because
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> let's say we don't exercise that part of functionality
> > *and*
> > >>>>>>>>>>>>>>> there
> > >>>>>>>>>>>>>>> isn't a
> > >>>>>>>>>>>>>>> fix available or there is a fix but the upgrade requires
> > >>>>>>>>>>>>>>> significant
> > >>>>>>>>>>>>>>> effort
> > >>>>>>>>>>>>>>> (for example if we need to move to a new major version of
> > the
> > >>>>>>>>>>>>>>> dependency
> > >>>>>>>>>>>>>>> or
> > >>>>>>>>>>>>>>> something like that). Is there a way to add an exception
> > like
> > >>>>>>>>>>>>>>> we
> > >>>>>>>>>>>>>>> did
> > >>>>>>>>>>>>>>> for
> > >>>>>>>>>>>>>>> checkstyle in the interim. How about reporting instead of
> > >>>>>>>>>>>>>>> failing
> > >>>>>>>>>>>>>>> the
> > >>>>>>>>>>>>>>> builds. One of the steps in release process could be to
> > >>>>>>>>>>>>>>> investigate
> > >>>>>>>>>>>>>>> these
> > >>>>>>>>>>>>>>> reports before proceeding with the release. If a PR
> > >>>>>>>>>>>>>>> introduces
> > >>>>>>>>>>>>>>> new
> > >>>>>>>>>>>>>>> cves
> > >>>>>>>>>>>>>>> by
> > >>>>>>>>>>>>>>> virtue of adding a new dependency or changing an existing
> > >>>>>>>>>>>>>>> version,
> > >>>>>>>>>>>>>>> that
> > >>>>>>>>>>>>>>> would be of interest and can be subject to failure. Is
> > there
> > >>>>>>>>>>>>>>> a
> > >>>>>>>>>>>>>>> way
> > >>>>>>>>>>>>>>> to
> > >>>>>>>>>>>>>>> distinguish that?
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> On Wed, Oct 25, 2017 at 8:52 AM Vlad Rozov <
> > >>>>>>>>>>>>>>> vro...@apache.org>
> > >>>>>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> A CVE (should there be a vulnerability in existing or a
> > newly
> > >>>>>>>>>>>>>>> introduced
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> dependency) will not be exposed during the CI build, but
> > the
> > >>>>>>>>>>>>>>> build
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> will
> > >>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>> fail if the CVE has severity 8 or above. To get the
> > details,
> > >>>>>>>>>>>>>>>> it
> > >>>>>>>>>>>>>>>> will
> > >>>>>>>>>>>>>>>> be
> > >>>>>>>>>>>>>>>> necessary to run dependency check manually.
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> Thank you,
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> Vlad
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> On 10/24/17 16:27, Pramod Immaneni wrote:
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> There was a lot of discussion on this but looks like
> there
> > >>>>>>>>>>>>>>>> was
> > >>>>>>>>>>>>>>>> no
> > >>>>>>>>>>>>>>>> final
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> agreement. Can you summarize what your PR does? Are we
> > >>>>>>>>>>>>>>>> disclosing
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> the
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> actual vulnerabilities as part of the automated build
> for
> > >>>>>>>>>>>>>>>>> every
> > >>>>>>>>>>>>>>>>> PR?
> > >>>>>>>>>>>>>>>>> That
> > >>>>>>>>>>>>>>>>> would be a no-no for me. If it is something that
> requires
> > >>>>>>>>>>>>>>>>> manual
> > >>>>>>>>>>>>>>>>> steps,
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> for
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> example as part of a release build, that would be fine.
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> On Mon, Oct 23, 2017 at 1:16 PM, Vlad Rozov <
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> vro...@apache.org>
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> Please see https://github.com/apache/
> apex-core/pull/585
> > >>>>>>>>>>>>>>>>> and
> > >>>>>>>>>>>>>>>>> APEXCORE-790.
> > >>>>>>>>>>>>>>>>> Thank you,
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> Vlad
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> On 9/14/17 09:35, Vlad Rozov wrote:
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> Do you expect anything else from the community to
> > recognize
> > >>>>>>>>>>>>>>>>>> a
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> contribution other than committing it to the code
> line?
> > >>>>>>>>>>>>>>>>>> Once
> > >>>>>>>>>>>>>>>>>> there
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> is
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> a
> > >>>>>>>>>>>>>>>>>>> steady flow of quality contributions, the
> community/PMC
> > >>>>>>>>>>>>>>>>>>> will
> > >>>>>>>>>>>>>>>>>>> recognize
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> a
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> contributor by making that contributor a committer.
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> Thank you,
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> Vlad
> > >>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>> On 9/12/17 13:05, Sanjay Pujare wrote:
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> For a vendor too, quality ought to be as important as
> > >>>>>>>>>>>>>>>>>>> security
> > >>>>>>>>>>>>>>>>>>> so
> > >>>>>>>>>>>>>>>>>>> I
> > >>>>>>>>>>>>>>>>>>> don't
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> think we disagree on the cost benefit analysis. But I
> > get
> > >>>>>>>>>>>>>>>>>>> your
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> drift.
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> By "creative incentive" I didn't imply any material
> > >>>>>>>>>>>>>>>>>> incentive
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> (although a
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> gift card would be nice :-)) but more along the lines
> of
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> what a
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> community
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> can do to recognize such contribution.
> > >>>>>>>>>>>>>>>>>> Sanjay
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> On Tue, Sep 12, 2017 at 8:10 AM, Vlad Rozov <
> > >>>>>>>>>>>>>>>>>> vro...@apache.org>
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> wrote:
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> I guess we have a different view on the benefit and
> > cost
> > >>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>> definition.
> > >>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> For
> > >>>>>>>>>>>>>>>>>> me the benefit of fixing CI build, flaky unit test,
> > severe
> > >>>>>>>>>>>>>>>>>> security
> > >>>>>>>>>>>>>>>>>> issue
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> is huge for the community and is possibly small
> (except
> > >>>>>>>>>>>>>>>>>> for
> > >>>>>>>>>>>>>>>>>> a
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> security
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> issues) for a vendor.
> > >>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>> By "creative" I hope you don't mean that other
> > >>>>>>>>>>>>>>>>>>>>> community
> > >>>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>> members,
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> users
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> and customers send a contributor a gift cards to
> > >>>>>>>>>>>>>>>>>> compensate
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> for
> > >>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>> the
> > >>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>> cost
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> :). For me PR that is blocked on a failed CI build is
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> sufficiently
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> incentive for a contributor to look into why it fails
> > and
> > >>>>>>>>>>>>>>>>>>> fixing
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> it.
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> Thank you,
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> Vlad
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>> On 9/11/17 23:58, Sanjay Pujare wrote:
> > >>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>> I don't want to speak for others and I don't want
> to
> > >>>>>>>>>>>>>>>>>>>>> generalize.
> > >>>>>>>>>>>>>>>>>>>>> But
> > >>>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>> an
> > >>>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>> obvious answer could be "cost-benefit analysis".
> > >>>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>> In any case we should come up with a creative way
> to
> > >>>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>> "incentivize"
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> members
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>> to do these tasks.
> > >>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>>>
> > >>>>>>>>>>>>>>>>>>>>>>
> > >
> >
>

Reply via email to