My vote would be to break the build. This can then force a “whitelisting” 
configuration in the maven plugin to be created as part of the review process ( 
along with a new JIRA ticket ). 

The concern would then be to ensure that the community works towards a 
resolution of the JIRA. Not breaking the build for me is tech debt slipping 
without anyones notice.  Fixing the JIRA is a hygiene process which I believe 
cannot take a back burner as compared contributor welfare and would need 
commitments from the contributor ( and/or others). 

On a related note, looking at apache spark, there seems to be CVE listings 
which the spark community has taken care of as the releases progressed. 
http://www.cvedetails.com/vulnerability-list/vendor_id-45/product_id-38954/Apache-Spark.html
 
<http://www.cvedetails.com/vulnerability-list/vendor_id-45/product_id-38954/Apache-Spark.html>
 . 

Regards,
Ananth


> On 3 Nov 2017, at 4:48 am, Sanjay Pujare <san...@datatorrent.com> wrote:
> 
> 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