Coder Social home page Coder Social logo

puzzlerbot's People

Contributors

dependabot-preview[bot] avatar paulodamaso avatar sebast26 avatar skapral avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

puzzlerbot's Issues

package-info.java:46: Implement three-paragraphs approach...

The puzzle 1-f350542a from #1 has to be resolved:

* @todo #1 Implement three-paragraphs approach according the provided documentation.

The puzzle was created by Kapralov Sergey on 24-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Introduce puzzler-github module

Description of issue/proposal

Having all classes in puzzler-web module is not convenient when it comes to supporting more tools (#58). puzzler-github must be forked from puzzler-web, containing all classes related to GitHub integration support.

Steps to reproduce

N/A

Expected result

N/A

Actual result

N/A

Response from web hook

N/A

Refactor pom files

Description of issue/proposal

Currently, the versions of dependencies and plugins are stored in submodule pom files. The task is to move them to parent pom in management sections.

Steps to reproduce

N/A

Expected result

N/A

Actual result

N/A

Response from web hook

N/A

README.md:5: to add some badge which will show the...

The puzzle 31-c7cfd7be from #31 has to be resolved:

@todo #31 to add some badge which will show the `@puzzlerbot`'s status.

The puzzle was created by Kapralov Sergey on 28-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

GithubMockServer.java:34-35: Implement {@link...

The puzzle 18-99bd3ed6 from #18 has to be resolved:

* @todo #18 Implement {@link GithubMockServer} and cover
* objects which access Github API with tests.

The puzzle was created by Kapralov Sergey on 25-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

GithubAPI.java:32-33: refactor all objects, which work...

The puzzle 2-8b88148b from #2 has to be resolved:

* @todo #2 refactor all objects, which work with Github API, to encapsulate and use
* {@link GithubAPI}.

The puzzle was created by Kapralov Sergey on 25-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Support gitlab pagination when scanning for puzzles in notes

Description of issue/proposal

Puzzlerbot doesn't scan long feed of notes. Only first 20 comments.

Steps to reproduce

  1. Create an issue.
  2. Make at least 20 random comments, without mentioning puzzlerbot
  3. Make at least one comment with puzzlerbot puzzle.
  4. Close the issue

Expected result

Puzzle(s) are created.

Actual result

Puzzles are ignored

Response from web hook

200 OK
{}

Fix javadoc generation

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.10.4:jar (attach-javadoc) on project puzzler-core: MavenReportException: Error while generating Javadoc:
[ERROR] Exit code: 1 - /home/skapral/GitHub/puzzlerbot/puzzler-core/src/main/java/com/github/skapral/puzzler/core/text/threepars/TxtStandard.java:42: error: unknown tag: todo
[ERROR] * @todo #7 Split this object to two: one for splitting text to paragraphs,

...during mvn clean install -Pextras

PsrcFromGithubIssueEvent.java:36: Unstub...

The puzzle 8-e08839fd from #8 has to be resolved:

The puzzle was created by Kapralov Sergey on 24-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

PsrcFromGithubPullRequestEvent.java:36: Unstub...

The puzzle 8-79a8e3d7 from #8 has to be resolved:

The puzzle was created by Kapralov Sergey on 25-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Introduce `PsrcFromComments` - common puzzle source from a list of strings

Description of issue/proposal

There is PsrcFromGithubComments, which:

  1. parses a JSON with comments array, obtained from GitHub API, extracting the bodies from them and
  2. applying three-pars on it.

The last step may be generalized for all types of comments. It is useful to have this functionality separated for supporting other services, like GitLab or BitBucket.

Steps to reproduce

N/A

Expected result

N/A

Actual result

N/A

Response from web hook

N/A

ItGithubIssues.java:44: Improve test coverage for {@link...

The puzzle 20-c1aa8a54 from #20 has to be resolved:

* @todo #20 Improve test coverage for {@link ItGithubIssues}.

The puzzle was created by Kapralov Sergey on 26-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Corrections made in PR #50:

  • Code base is volatile. Puzzles in the code are rarely stay in one line. - removed are
  • Some code is added, some code is removed, some codebase is changing intentionally - "changing" -> "changed"

Misprints in README.md

  • Puzzle Driven Development instead of Puzzle Driver Development
  • Once the issue of pull request is closed, - "of" -> "or"

PsrcFromGithubEvent.java:66: refactor this class by...

The puzzle 27-7995c0a8 from #27 has to be resolved:

* @todo #27 refactor this class by splitting it to smaller composable components

The puzzle was created by Kapralov Sergey on 28-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

MockSrvImplementation.java:44-45: Mockserver classes must...

The puzzle 69-9dd0b135 from #69 has to be resolved:

* @todo #69 Mockserver classes must be fully encapsulated. `RequestFunction` and `ResponseFunction`
* should not expose `HttpRequest` and `HttpResponse` to public.

The puzzle was created by Kapralov Sergey on 06-Jun-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

TxtStandard.java:42-43: Split this object to two: one for...

The puzzle 7-788393cd from #7 has to be resolved:

* @todo #7 Split this object to two: one for splitting text to paragraphs,
* another for trimming empty paragraphs in the beginning and end.

The puzzle was created by Kapralov Sergey on 25-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Generalize GithubMockServer

Description of issue/proposal

GithubMockServer actually is just a mock server. It may be used for mocking any kind of HTTP API. So, it must be generalized.

Steps to reproduce

N/A

Expected result

N/A

Actual result

N/A

Response from web hook

N/A

Describe GitLab support in the documentation

Description of issue/proposal

Puzzlerbot is able to manage puzzles in GitLab (#58), but documentation mentions nothing about it.

Steps to reproduce

N/A

Expected result

N/A

Actual result

N/A

Response from web hook

N/A

GithubHookEndpoint.java:52: Replace {@link...

The puzzle 2-56968fea from #2 has to be resolved:

* @todo #2 Replace {@link PsrcStubbedFromGithubEvent} with {@link com.github.skapral.puzzler.github.source.PsrcFromGithubEvent}.

The puzzle was created by Kapralov Sergey on 25-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

README.md:38: Describe how to properly place puzzles so...

The puzzle 8-ffa307e5 from #8 has to be resolved:

@todo #8 Describe how to properly place puzzles so that puzzler bot discovers them.

The puzzle was created by Kapralov Sergey on 24-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Get rid of deprecated method calls

Check OpIgnoringUnprivildgedEventSenderTest and OpValidatingEventSignatureTest classes which use IOUtils.toString method, marked as deprecated.

Puzzlerbot fails on Github "ping" request

Attempt to handle Github event with X-GitHub-Event: ping header fails with exception:

2018-05-27T21:07:51.976679511Z app[web.1]: org.json.JSONException: JSONObject["comments_url"] not found.
2018-05-27T21:07:51.987010830Z app[web.1]: 	at org.json.JSONObject.get(JSONObject.java:520)
2018-05-27T21:07:52.022916382Z app[web.1]: 	at org.json.JSONObject.getString(JSONObject.java:806)
2018-05-27T21:07:52.023087711Z app[web.1]: 	at com.github.skapral.puzzler.github.source.PsrcFromGithubEvent$Inference.lambda$puzzleSource$1(PsrcFromGithubEvent.java:96)
2018-05-27T21:07:52.023119569Z app[web.1]: 	at io.vavr.control.Option.map(Option.java:360)
2018-05-27T21:07:52.023133006Z app[web.1]: 	at com.github.skapral.puzzler.github.source.PsrcFromGithubEvent$Inference.puzzleSource(PsrcFromGithubEvent.java:95)
2018-05-27T21:07:52.023146465Z app[web.1]: 	at com.github.skapral.puzzler.core.source.PsrcInferred.puzzles(PsrcInferred.java:51)
2018-05-27T21:07:52.023158606Z app[web.1]: 	at com.github.skapral.puzzler.core.operation.OpPersistAllPuzzles.execute(OpPersistAllPuzzles.java:54)
2018-05-27T21:07:52.023170310Z app[web.1]: 	at com.github.skapral.puzzler.web.jersey.GithubHookEndpoint.githubHook(GithubHookEndpoint.java:72)
2018-05-27T21:07:52.023183775Z app[web.1]: 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2018-05-27T21:07:52.023195131Z app[web.1]: 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
2018-05-27T21:07:52.023205006Z app[web.1]: 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2018-05-27T21:07:52.023216378Z app[web.1]: 	at java.lang.reflect.Method.invoke(Method.java:498)
2018-05-27T21:07:52.023229012Z app[web.1]: 	at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:76)
2018-05-27T21:07:52.023306737Z app[web.1]: 	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:148)
2018-05-27T21:07:52.023336290Z app[web.1]: 	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:191)
2018-05-27T21:07:52.023350737Z app[web.1]: 	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:200)
2018-05-27T21:07:52.023362142Z app[web.1]: 	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:103)
2018-05-27T21:07:52.023371323Z app[web.1]: 	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:493)
2018-05-27T21:07:52.023381335Z app[web.1]: 	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:415)
2018-05-27T21:07:52.023391778Z app[web.1]: 	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:104)
2018-05-27T21:07:52.023400679Z app[web.1]: 	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:277)
2018-05-27T21:07:52.023409177Z app[web.1]: 	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:272)
2018-05-27T21:07:52.023419126Z app[web.1]: 	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:268)
2018-05-27T21:07:52.023427695Z app[web.1]: 	at org.glassfish.jersey.internal.Errors.process(Errors.java:316)
2018-05-27T21:07:52.023436425Z app[web.1]: 	at org.glassfish.jersey.internal.Errors.process(Errors.java:298)
2018-05-27T21:07:52.023448191Z app[web.1]: 	at org.glassfish.jersey.internal.Errors.process(Errors.java:268)
2018-05-27T21:07:52.023458735Z app[web.1]: 	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:289)
2018-05-27T21:07:52.023471201Z app[web.1]: 	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:256)
2018-05-27T21:07:52.023480791Z app[web.1]: 	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:703)
2018-05-27T21:07:52.023490586Z app[web.1]: 	at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:377)
2018-05-27T21:07:52.023500866Z app[web.1]: 	at org.glassfish.grizzly.http.server.HttpHandler$1.run(HttpHandler.java:224)
2018-05-27T21:07:52.023510822Z app[web.1]: 	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:593)
2018-05-27T21:07:52.023520946Z app[web.1]: 	at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:573)
2018-05-27T21:07:52.023529535Z app[web.1]: 	at java.lang.Thread.run(Thread.java:748)

PsrcFromGithubComments.java:37-40: Unstab the {@link...

The puzzle 1-4e85bc48 from #1 has to be resolved:

* @todo #1 Unstab the {@link PsrcFromGithubComments#puzzles()} method.
* It must go through the comment's list, parse them using threepars
* approach (see {@link com.github.skapral.puzzler.core.text.threepars}),
* extract puzzles from there and return to the client.

The puzzle was created by Kapralov Sergey on 24-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Fix wrong version of org.mock-server in pom file

Version 5.3.1-SNAPSHOT was used by mistake. Must be this:

        <dependency>
            <groupId>org.mock-server</groupId>
            <artifactId>mockserver-netty</artifactId>
            <version>5.3.0</version>
            <scope>provided</scope>
        </dependency>

Make puzzlerbot Github user a configurable property

Subj. Currently, puzzlerbot searches for [at]puzzerbot mentioning in the comments. For custom deployments it would be necessary to support an option of changing the user it is triggered on, since only the user's owner is able to generate auth token for the Github API access.

README.md:51: Define how to quickly set up the puzzler...

The puzzle 31-5122b7e8 from #31 has to be resolved:

@todo #31 Define how to quickly set up the puzzler bot on the GitHub project.

The puzzle was created by Kapralov Sergey on 28-May-18.

Estimate: 0 minutes,

If you have any technical questions, don't ask me, submit new tickets instead. The task will be "done" when the problem is fixed and the text of the puzzle is removed from the source code. Here is more about PDD and about me.

Puzzlerbot must ignore its name in `text included to back quotes`

Steps to reproduce:

  1. Try creating a puzzle from the following comment:
@puzzlerbot FYI

The list of priviledged users, who can manage the `@puzzlerbot`, must be a configurable option.

Subj.

Expected result:

  • A puzzle created with title "The list of priviledged users, who can manage the @puzzlerbot, must be a configurable option." and body "Subj."

Actual result:

  • A puzzle created with title "Subj." and empty description

Explanation: since the puzzlerbot is mentioned in the first and second line, they both were classified as controlling paragraphs. "Subj." line became a title then.

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.