Code Monkey home page Code Monkey logo

bug-clerk's People

Contributors

baranowb avatar dependabot[bot] avatar mmarus avatar petrberan avatar rpelisse avatar rstancel avatar rsvoboda avatar soul2zimate avatar spyrkob avatar tomashofman avatar wolfc avatar yersan avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bug-clerk's Issues

AddComment feature broken with 0.8.0 and 0.8.1

If using Bugclerk, 0.8.0 and 0.8.1, with the "add comment" feature (-c), BugCLerk will crash, due to the misplaced close() statement, disconfiguring Aphrodite before calling the addComment method. This will be fixe in 0.8.2.

False+ on [Bug 1209192]

There is a file attached with a commit.
Not allowed to make PR in the repo.
Bug-Clerk detects it as an error.

Fix Version white list

Provide white list for users that "CAN" alter fix version without being annoyed. This is kind of a feature to gently phase out folks from abuse of "Fix Version" field. Basically, if UID is not on the white list, bugclerk should add comment to issue and send warning to jboss-set ?

Allow BZ to be ignored for certain checks

For instance, if there is no PR to be associated to a BZ, it would nice to be able to simply add a specific comment (ex: BugClerk#NoPR) to give a hint to BugClerk that it should not report the issue.

Check Request #19 - Payload upgrade issue should be linked to component fix

payload -> upgrade -> component fix

  • relational constraint, if fix is in payload, upgrade must be there and be in payload. If upgrade is in payload, fix must be as well.

This will be implemented in two checks:

  1. Any fixes belonging to a payload tracker will be analysed to check for a component upgrade in the depends list
  2. Any Component Upgrades, belonging to Payload Tracker, will be analysed to check they are tied to a bug fix.

Check Request #25 - Detect Fix version change once Sprint is set up.

When sprint is up for CP, no version changes should be allowed, unless RC or GSS perform them.
ie. if Sprint 7.0.6 ( payload freeze) is up, any change of fix version in range [7.0.6 CR1,...) can't be performed by any other party than RC or GSS(?) ? If it happens, alarm should sound.

BZDepsShouldAlsoHaveFlags error message is buggy

There is comment from BugClerk on https://issues.jboss.org/browse/JBEAP-821, that says

"[BZDepsShouldAlsoHaveFlags] This issue is referenced by JBEAP-2770, which has all qa+,pm+ and dev flag+ - but not this issue."

Which is not true. For JBEAP-2770, the correct message should be :

"[BZDepsShouldAlsoHaveFlags] This issue is referenced by JBEAP-821, which has all qa+,pm+ and dev flag+ - but not this issue."

Indeed, JBEAP-2770 with insufficient flags blocks JBEAP-821 with sufficient flags.

Hang due to JSONException until Jenkins job timeout.

Recent bugclerk runs for jira failed due to JSONException, it seems that Jira sometimes can not return good formatted JSONObject in its response as builds in yesterday are good.

Jenkins job log https://thunder.sin2.redhat.com/jenkins/job/bugclerk-reports-jira-eap70z-unresolved/7512/console

The job is aborted until it's timeout set in Jenkins, But I think it should have some timeout value in BugClerk, so it can actively cancel it in such case.

Low priority. As Jenkins can kill it at 10 mins timeout.

Check Request #20 - Milestone Sanity Checks

Target release and milestone sanity checks:

  • milestone must be present once Issue is in "MODIFIED"
  • with exception of component upgrades, milestone pours down once upgrade BZ is in MODIFIED

Support more levels of severity

When reporting a violation, Bugclerk should have a more fine grained levels of Severity:

  • GREEN, // Severity Level 1, Everything is fine. CP Process is moving forward as planned with no visible obstacles.
  • Yellow_GREEN, // Severity Level 2, attention is needed, forward progress can be made.
  • YELLOW, // Severity Level 3, A pending condition to Triage.
  • ORANGE // Severity Level 4, attention is needed until progress can no longer be made.
  • RED; // Severity Level 5, An immediate call to Triage.

NullPointerException when no flags can be found

JBEAP-7531 [Error: null pointer: bug.stage.getStateMap.get(Flag.DEV).toString]
Exception in thread "main" [Error: null pointer: bug.stage.getStateMap.get(Flag.DEV).toString]
[Near : {... bug.stage.getStateMap.get(Flag ....}]
[Near : {... bug.stage.getStateMap.get(Flag ....}]
             ^
             ^
In [Rule "BZShouldHaveTimeEstimate_DevAcked" in org/jboss/jbossset/bugclerk/BZShouldHaveTimeEstimate.drl]
In [Rule "BZShouldHaveTimeEstimate_DevAcked" in org/jboss/jbossset/bugclerk/BZShouldHaveTimeEstimate.drl]
	at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:450)
	at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:163)
	at org.mvel2.ast.ASTNode.optimize(ASTNode.java:159)
	at org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:115)
	at org.mvel2.ast.BinaryOperation.getReducedValueAccelerated(BinaryOperation.java:117)
	at org.mvel2.ast.Or.getReducedValueAccelerated(Or.java:34)
	at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
	at org.mvel2.compiler.CompiledExpression.getDirectValue(CompiledExpression.java:123)
	at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:119)
	at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:113)
	at org.mvel2.MVEL.executeExpression(MVEL.java:929)
	at org.drools.core.util.MVELSafeHelper$RawMVELEvaluator.executeExpression(MVELSafeHelper.java:496)
	at org.drools.core.rule.constraint.MvelConditionEvaluator.evaluate(MvelConditionEvaluator.java:114)
	at org.drools.core.rule.constraint.MvelConditionEvaluator.evaluate(MvelConditionEvaluator.java:89)
	at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:258)
	at org.drools.core.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:214)
	at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:131)
	at org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
	at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
	at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:134)
	at org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
	at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
	at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:300)
	at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
	at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:78)
	at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:73)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2017)
	at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1334)
	at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
	at org.jboss.jbossset.bugclerk.RuleEngine.processBugEntry(RuleEngine.java:67)
	at org.jboss.set.payload.report.ViolationHome.findByIssue(ViolationHome.java:55)
	at org.jboss.set.payload.report.Issue.getViolations(Issue.java:66)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.jboss.invocation.InvokingInterceptor.processInvocation(InvokingInterceptor.java:51)
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	at org.jboss.set.payload.report.entity.InstanceLoadInterceptor.processInvocation(InstanceLoadInterceptor.java:66)
	at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)
	at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
	at org.jboss.invocation.InterceptorInvocationHandler.invoke(InterceptorInvocationHandler.java:68)
	at org.jboss.set.payload.report.Issue$Proxy2.getViolations(Unknown Source)
	at org.jboss.set.payload.report.Main.lambda$main$3(Main.java:46)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:352)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
	at org.jboss.set.payload.report.Main.main(Main.java:42)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Caused by: java.lang.NullPointerException
	at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:416)
	... 60 more

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.