Giter Site home page Giter Site logo

acha's Introduction

Rick Hickey achievements

Usage

If you have a docker use the following command to boot acha-acha on localhost:

docker run --rm -p 8080:8080 someteam/acha

After that open http://localhost:8080/ to see acha-acha in your browser

Custom private key

If you want to use acha-acha for private repositories or use ssh urls you need to provide the private key with read access:

docker run --rm -p 8080:8080 -v /path/to/private/id_rsa:/root/.ssh/id_rsa someteam/acha

Mount a custom storage

If you want to store acha-acha state outside the container, use the following command to mount external working directory:

docker run --rm -p 8080:8080 -v /path/to/working_dir:/app/.acha someteam/acha

Building from source

lein do clean, cljsbuild once prod, uberjar
java -jar target/acha-uber.jar --ip 0.0.0.0 --port 8080 --dir .acha --private-key ~/.ssh/custom_key

Development mode

lein cljsbuild auto dev &
lein run --reload &
open http://localhost:8080/index_dev.html

License

Copyright © Nikita Prokopov, Julie Prokopova, Renat Idrisov, Andrey Vasenin, Dmitry Ivanov

Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.

acha's People

Contributors

asv avatar avasenin avatar beevee avatar ethercrow avatar littleli avatar parsifal-47 avatar tonsky avatar vbauer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

acha's Issues

Slack notification support

Hi there! Thanks for a such funny tool. Also just thought, it would be awesome if acha-acha would be able to send slack notifications about recent achievements. What do you think?

Keeps going out of memory

When I tried to import a large-ish repo, I keep getting OutofMemoryErrors. The first time the message said java.lang.OutOfMemoryError: Java heap space so I ran the jar again using java -Xmx2048m -jar acha-uber-0.2.4.jar and this time the message said java.lang.OutOfMemoryError: GC overhead limit exceeded.

This always fails at the repository scanning stage so I don't get to see anything. Is there any way to fix this? I don't think the repo I'm trying to import is that large -- only 1800+ commits on the master branch (3000+ overall).

Error on import of repo break all application.

Successful import some rather big projects from gitlab, but from one of them get the error below.
With this bug i can`t even see others repos and achievements. After f5 only purple line and log message ->

Thu Oct 09 16:14:24 FET 2014 [worker-1] ERROR - GET /api/db/
java.lang.RuntimeException: java.lang.IllegalArgumentException: No matching ctor found for class java.util.Date
        at com.cognitect.transit.impl.WriterFactory$1.write(WriterFactory.java:120)
        at cognitect.transit$write.invoke(transit.clj:140)
        at acha.server$write_transit_bytes.invoke(server.clj:25)
        at acha.server$wrap_transit_response$fn__9136$fn__9137.invoke(server.clj:35)
        at clojure.lang.AFn.applyToHelper(AFn.java:154)
        at clojure.lang.AFn.applyTo(AFn.java:144)
        at clojure.core$apply.invoke(core.clj:628)
        at clojure.core$update_in.doInvoke(core.clj:5853)
        at clojure.lang.RestFn.invoke(RestFn.java:445)
        at acha.server$wrap_transit_response$fn__9136.invoke(server.clj:33)
        at ring.middleware.params$wrap_params$fn__7697.invoke(params.clj:64)
        at compojure.core$routing$fn__9057.invoke(core.clj:118)
        at clojure.core$some.invoke(core.clj:2560)
        at compojure.core$routing.doInvoke(core.clj:118)
        at clojure.lang.RestFn.invoke(RestFn.java:423)
        at acha.server$fn__9232.invoke(server.clj:91)
        at compojure.core$if_context$fn__9079.invoke(core.clj:189)
        at compojure.core$routing$fn__9057.invoke(core.clj:118)
        at clojure.core$some.invoke(core.clj:2560)
        at compojure.core$routing.doInvoke(core.clj:118)
        at clojure.lang.RestFn.applyTo(RestFn.java:139)
        at clojure.core$apply.invoke(core.clj:628)
        at compojure.core$routes$fn__9061.invoke(core.clj:123)
        at org.httpkit.server.HttpHandler.run(RingHandler.java:91)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: No matching ctor found for class java.util.Date
        at clojure.lang.Reflector.invokeConstructor(Reflector.java:183)
        at acha.db$ach__GT_entity.invoke(db.clj:170)
        at clojure.core$map$fn__4345.invoke(core.clj:2614)
        at clojure.lang.LazySeq.sval(LazySeq.java:40)
        at clojure.lang.LazySeq.seq(LazySeq.java:49)
        at clojure.lang.RT.seq(RT.java:484)
        at clojure.core$seq.invoke(core.clj:135)
        at clojure.core$concat$cat__4053$fn__4054.invoke(core.clj:696)
        at clojure.lang.LazySeq.sval(LazySeq.java:40)
        at clojure.lang.LazySeq.seq(LazySeq.java:49)
        at clojure.lang.Cons.next(Cons.java:39)
        at clojure.lang.LazySeq.count(LazySeq.java:65)
        at clojure.lang.LazySeq.size(LazySeq.java:167)
        at com.cognitect.transit.impl.Util.arraySize(Util.java:41)
        at com.cognitect.transit.impl.AbstractEmitter.emitArray(AbstractEmitter.java:134)
        at com.cognitect.transit.impl.AbstractEmitter.marshal(AbstractEmitter.java:221)
        at com.cognitect.transit.impl.AbstractEmitter.emitTagged(AbstractEmitter.java:91)
        at com.cognitect.transit.impl.AbstractEmitter.emitEncoded(AbstractEmitter.java:116)
        at com.cognitect.transit.impl.AbstractEmitter.marshal(AbstractEmitter.java:226)
        at com.cognitect.transit.impl.AbstractEmitter.marshalTop(AbstractEmitter.java:250)
        at com.cognitect.transit.impl.JsonEmitter.emit(JsonEmitter.java:29)
        at com.cognitect.transit.impl.WriterFactory$1.write(WriterFactory.java:117)
        ... 28 more

Support for .mailmap files

It would be cool if acha supported .mailmap files (i.e. to merge users who have more than one name/e-mail address).

Ability to remove user from a site

If some collaborative repository has been added, all the users were inside are added. It may happen accidentally, and someone may be had no wish to participate. Wimp guy he is.

Slow site speed

Browser logs:

read-transit /api/db/ (1109713 bytes): 73.624ms
acha.min.js:938 Pushed 28186 datoms
acha.min.js:986 DB initialization: 234.714ms

Hardware:

  • Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz 3.30 GHz
  • RAM: 8 GB
  • OS: Windows 7 Ultimate 64bit

Browser: Google Chrome, Version 40.0.2214.94 m

PS: Checked on http://acha-acha.co

Build failure

AFAIU, until you release a new version with changes from #5, I can only build acha from source. So I tried to do that, and here is what I got: full logs here

$ lein do clean, cljsbuild clean, cljsbuild once prod, uberjar
Deleting files generated by lein-cljsbuild.
Compiling ClojureScript.
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/google/javascript/jscomp/CompilerOptions : Unsupported major.minor version 51.0, compiling:(cljs/closure.clj:1:1)
    at clojure.lang.Compiler.load(Compiler.java:7196)
    at clojure.lang.RT.loadResourceScript(RT.java:370)
    ...
Caused by: java.lang.UnsupportedClassVersionError: com/google/javascript/jscomp/CompilerOptions : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
    ... 
Subprocess failed

My environment:
OS X Yosemite 10.10

$ lein --version
Leiningen 2.5.0 on Java 1.6.0_65 Java HotSpot(TM) 64-Bit Server VM
$ java -version
java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-466.1, mixed mode)

I tried to find any outdated clojure-related software, but all I have seems to be up-to-date. Can you please help me?

Rest API support

It will be nice to have a Rest API to add repo and get achievements list for user

Tomorrow is another day

but for todays tools this code doesn't compile. Unfortunately I don't know cojure. But My guess is that it probably is not too difficult to get this running again if you know what you're doing. So please anyone, Fix it...

Who knows it? The Class? Bueller...? Bueller...?

Can't run acha

$ java -jar acha-uber.jar  --port 8080 --dir .acha
Exception in thread "main" java.lang.ExceptionInInitializerError
    at acha.achievement__init.load(Unknown Source)
    at acha.achievement__init.<clinit>(Unknown Source)
        ...
Caused by: java.util.regex.PatternSyntaxException: Illegal character range near index 19
[\ud83c\udc00-\ud83d\udeff\udbb9\udce5-\udbb9\udcee]
                   ^
    at java.util.regex.Pattern.error(Pattern.java:1713)
    ... 33 more

more logs here

I just tried to follow README

curl -L -o acha-uber.jar https://github.com/someteam/acha/releases/download/0.2.1/acha-uber-0.2.1.jar
java -jar acha-uber.jar

My environment:
OS X 10.10 Yosemite

java version "1.6.0_65"
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716)
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-466.1, mixed mode)

Can't clone private repo from github

Acha doesn't want to scan my private repos.

I installed the app locally, tried to use https clone url from github and got "Not authorized" message, tried ssh clone url from github like [email protected]:Foo/foo.git and got "Cannot add [email protected]:Foo/foo.git: java.net.URISyntaxException: Illegal character in scheme name at index 3: [email protected]:Foo/foo.git". I am sure I have full access to the repos with my ssh keys. May be problems with private key pass phrase?

The only way it works for me is to clone repo manually and then give "file:/path-to-repo" as clone URL to Acha.

Don't lowercase file url

I found that acha supports file:// URL's, but I tried add some repos from home directory and got error — even /Users folder name was changed to /users so system failed to find it — my filesystem is case sensitive. After symlink in /tmp everything is fine

Cloning private repository doesn't seem to work

v0.2.5, running local version using Java 8.

The repo is not public, hosted on bitbucket.

Things that I tried:

  • default options
  • --private-key command line option with the path to ~/.ssh/id_rsa.pub
  • both git@ and https:// URIs
  • putting credentials (like username:password@uri) into repo URL
15:22:09.075 [ ERROR ] worker#3 : a.dispatcher - Repo analysis failed
org.eclipse.jgit.api.errors.TransportException: <some-private-repo-url>: USERAUTH fail
        at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:139) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:178) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:125) ~[acha-uber-0.2.5.jar:na]
        at acha.git_parser$clone.invoke(git_parser.clj:43) ~[acha-uber-0.2.5.jar:na]
        at acha.git_parser$load_repo.invoke(git_parser.clj:56) ~[acha-uber-0.2.5.jar:na]
        at acha.dispatcher$analyze.invoke(dispatcher.clj:115) ~[acha-uber-0.2.5.jar:na]
        at acha.dispatcher$worker$fn__7644$fn__7645.invoke(dispatcher.clj:130) ~[acha-uber-0.2.5.jar:na]
        at acha.dispatcher$worker$fn__7644.invoke(dispatcher.clj:128) [acha-uber-0.2.5.jar:na]
        at acha.dispatcher$worker.invoke(dispatcher.clj:126) [acha-uber-0.2.5.jar:na]
        at acha.dispatcher$run_workers$fn__7662.invoke(dispatcher.clj:143) [acha-uber-0.2.5.jar:na]
        at clojure.lang.AFn.run(AFn.java:22) [acha-uber-0.2.5.jar:na]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_20]
Caused by: org.eclipse.jgit.errors.TransportException: [email protected]:apstrktr/leblon.git: USERAUTH fail
        at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:159) ~[acha-uber-0.2.5.jar:na]
        at acha.git_parser.proxy$org.eclipse.jgit.transport.JschConfigSessionFactory$ff19274a.getSession(Unknown Source) ~[acha-uber-0.2.5.j$r:na]
        at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:136) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:262) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:161) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:136) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:122) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1115) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:130) ~[acha-uber-0.2.5.jar:na]
        ... 11 common frames omitted
Caused by: com.jcraft.jsch.JSchException: USERAUTH fail
        at com.jcraft.jsch.UserAuthPublicKey.start(UserAuthPublicKey.java:118) ~[acha-uber-0.2.5.jar:na]
        at com.jcraft.jsch.Session.connect(Session.java:463) ~[acha-uber-0.2.5.jar:na]
        at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:116) ~[acha-uber-0.2.5.jar:na]
        ... 19 common frames omitted

Privacy issue

Hi, today I found post about acha and a project I am working on. When clicking at my icon, I saw my registered GitHub / Gravatar email address ?!

This is from my perspective a NO GO. I have disallowed to show my email on GitHub.

Seems to need a fix on that.

Tom

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.