Frege / frege-lein-plugin

Support Frege compiler via leiningen
BSD 3-Clause "New" or "Revised" License
33 stars 3 forks source link

Run Frege REPL via Leiningen #3

Open tfausak opened 9 years ago

tfausak commented 9 years ago

I would like to be able to run the Frege REPL through Leiningen (with lein repl).

@seancorfield: You can't currently run the Frege REPL via Leiningen @seancorfield: Go open an issue and I'll see if I can figure it out for the next version.

Ingo60 commented 9 years ago

Just my 2 cents: It should be possible to run the compiler from the fregec.jar that comes with the repl when you can locate it. So this could perhaps save duplicate code loading.

seancorfield commented 9 years ago

@tfausak You won't be able to run it as lein repl since that bypasses the Frege plugin, but lein fregec :repl might be a reasonable invocation.

@Ingo60 Thank you. I don't believe @mmhelloworld has published the REPL JARs to Maven? I only see the compiler bundle and the Gradle plugin at the moment (I haven't published the Leiningen plugin there yet, but Leiningen automatically looks on Clojars, where it is published).

tfausak commented 9 years ago

I'm alright with lein fregec :repl.

yurrriq commented 9 years ago

lein fregec :repl sounds good to me too.

mmhelloworld commented 9 years ago

All the frege-repl artifacts are already here https://oss.sonatype.org/content/groups/public/org/frege-lang/ but they are not for the latest Frege. I am updating REPL and its dependencies right now and hoping to push everything by tomorrow.

seancorfield commented 9 years ago

Thanks @mmhelloworld -- will those get published to Maven Central or just stay on Sonatype?

mmhelloworld commented 9 years ago

Mark Perry set up a build to publish these to Sonatype. I have no idea how to publish to Maven Central. I will try to find out so for now the artifacts will be in Sonatype. Would that be an issue?

mperry commented 9 years ago

@mmhelloworld and @seancorfield I had a look at the Gradle build for frege-repl to double check how it is setup. Things get built in Travis using the root .travis.yml file. Travis finds the gradlew command in the root and runs gradlew check. The travis configuration file is setup so that after a build success it runs the deploy.sh script which runs gradlew uploadArchives with the sonatype username and password. If the version is a snapshot it uploads to the snapshot repo, otherwise it users the release repo. The sonatype repo syncs with MavenCentral in about 2 hours.

mperry commented 9 years ago

I created https://github.com/Frege/frege-repl/issues/27, should the repl be released as is as 1.1.1 and any changes be applied to a 1.2-SNAPSHOT?

mperry commented 9 years ago

I forgot to mention, with a proper release (i.e. not a snapshot) you need to setup keys to sign the archives and then login to Sonatype and promote the release. I can do the release if requested, or someone else can do this if they preferred.

seancorfield commented 9 years ago

Looking at http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.frege-lang%22 it's not entirely clear to me what dependencies I would need in order to start up the interpreter. Can someone clarify? @talios @mmhelloworld @mperry