Browse files

Release 1.6.1.1.

  • Loading branch information...
1 parent bd466d7 commit 0e43e4d3234d96852c41d2e89587d82ebaf2941d @technomancy technomancy committed Sep 7, 2011
Showing with 78 additions and 21 deletions.
  1. +5 −0 NEWS
  2. +1 −1 bin/lein
  3. +62 −11 bin/lein.bat
  4. +3 −3 pom.xml
  5. +1 −1 project.clj
  6. +3 −2 src/leiningen/compile.clj
  7. +3 −3 src/leiningen/deps.clj
View
5 NEWS
@@ -1,5 +1,10 @@
Leiningen NEWS -- history of user-visible changes
+= 1.6.1.1 / 2011-09-06
+
+* Turn off workaround for Clojure's agent thread pool keeping the JVM alive
+ by default. Use :shutdown-agents in project.clj to enable it.
+
= 1.6.1 / 2011-07-06
* Allow alternate main namespace to be used during uberjar creation.
View
2 bin/lein
@@ -1,6 +1,6 @@
#!/bin/sh
-LEIN_VERSION="1.6.1"
+LEIN_VERSION="1.6.1.1"
export LEIN_VERSION
case $LEIN_VERSION in
View
73 bin/lein.bat
@@ -1,6 +1,6 @@
@echo off
-set LEIN_VERSION=1.6.0
+set LEIN_VERSION=1.6.1.1
setLocal EnableExtensions EnableDelayedExpansion
@@ -26,19 +26,15 @@ if "%ORIGINAL_PWD:~-1%x" == "\x" set "ORIGINAL_PWD=%ORIGINAL_PWD%\"
call :FIND_DIR_CONTAINING_UPWARDS project.clj
if "%DIR_CONTAINING%" neq "" cd "%DIR_CONTAINING%"
-set LEIN_PLUGINS="
-for %%j in (".\lib\dev\*.jar") do (
- set LEIN_PLUGINS=!LEIN_PLUGINS!;%%~fj
-)
-set LEIN_PLUGINS=!LEIN_PLUGINS!"
-set LEIN_USER_PLUGINS="
-for %%j in ("%LEIN_HOME%\plugins\*.jar") do (
- set LEIN_USER_PLUGINS=!LEIN_USER_PLUGINS!;%%~fj
+set DEV_PLUGINS="
+for %%j in (".\lib\dev\*.jar") do (
+ set DEV_PLUGINS=!DEV_PLUGINS!;%%~fj
)
-set LEIN_USER_PLUGINS=!LEIN_USER_PLUGINS!"
+set DEV_PLUGINS=!DEV_PLUGINS!"
-set CLASSPATH="%CLASSPATH%";%LEIN_USER_PLUGINS%;%LEIN_PLUGINS%;test;src
+call :BUILD_UNIQUE_USER_PLUGINS
+set CLASSPATH="%CLASSPATH%";%DEV_PLUGINS%;%UNIQUE_USER_PLUGINS%;test;src
rem Apply context specific CLASSPATH entries
set CONTEXT_CP=""
@@ -81,6 +77,61 @@ set CLOJURE_JAR=%USERPROFILE%\.m2\repository\org\clojure\clojure\1.2.1\clojure-1
goto RUN
+rem Builds a classpath fragment consisting of user plugins
+rem which aren't already present as a dev dependency.
+:BUILD_UNIQUE_USER_PLUGINS
+call :BUILD_PLUGIN_SEARCH_STRING %DEV_PLUGINS%
+set UNIQUE_USER_PLUGINS="
+for %%j in ("%LEIN_HOME%\plugins\*.jar") do (
+ call :MAKE_SEARCH_TOKEN %%~nj
+ echo %PLUGIN_SEARCH_STRING%|findstr ;!SEARCH_TOKEN!; > NUL
+ if !ERRORLEVEL! == 1 (
+ set UNIQUE_USER_PLUGINS=!UNIQUE_USER_PLUGINS!;%%~fj
+ )
+)
+set UNIQUE_USER_PLUGINS=!UNIQUE_USER_PLUGINS!"
+goto :EOF
+
+rem Builds a search string to match against when ensuring
+rem plugin uniqueness.
+:BUILD_PLUGIN_SEARCH_STRING
+for %%j in (".\lib\dev\*.jar") do (
+ call :MAKE_SEARCH_TOKEN %%~nj
+ set PLUGIN_SEARCH_STRING=!PLUGIN_SEARCH_STRING!;!SEARCH_TOKEN!
+)
+set PLUGIN_SEARCH_STRING=%PLUGIN_SEARCH_STRING%;
+goto :EOF
+
+rem Takes a jar filename and returns a reversed jar name without version.
+rem Example: lein-multi-0.1.1.jar -> itlum-niel
+:MAKE_SEARCH_TOKEN
+call :REVERSE_STRING %1
+call :STRIP_VERSION !RSTRING!
+set SEARCH_TOKEN=!VERSIONLESS!
+goto :EOF
+
+rem Reverses a string.
+:REVERSE_STRING
+set NUM=0
+set INPUTSTR=%1
+set RSTRING=
+:REVERSE_STRING_LOOP
+call set TMPCHR=%%INPUTSTR:~%NUM%,1%%%
+set /A NUM+=1
+if not "x%TMPCHR%" == "x" (
+ set RSTRING=%TMPCHR%%RSTRING%
+ goto REVERSE_STRING_LOOP
+)
+goto :EOF
+
+rem Takes a string and removes everything from the beginning up to
+rem and including the first dash character.
+:STRIP_VERSION
+set INPUT=%1
+for /F "delims=- tokens=1*" %%a in ("%INPUT%") do set VERSIONLESS=%%b
+goto :EOF
+
+
:NO_LEIN_JAR
echo.
echo %LEIN_JAR% can not be found.
View
6 pom.xml
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>leiningen</groupId>
<artifactId>leiningen</artifactId>
- <version>1.6.1</version>
+ <version>1.6.1.1</version>
<name>leiningen</name>
<description>Automate Clojure projects without setting your hair on fire.</description>
<url>https://github.com/technomancy/leiningen</url>
@@ -15,7 +15,7 @@
<scm>
<connection>scm:git:git://github.com/technomancy/leiningen.git</connection>
<developerConnection>scm:git:ssh://git@github.com/technomancy/leiningen.git</developerConnection>
- <tag>2cb7ec9af48b1a094848a5e9963ea201015a5645</tag>
+ <tag>bd466d751a156be1952dbea7abf510ba1e55b72e</tag>
<url>https://github.com/technomancy/leiningen</url>
</scm>
<build>
@@ -56,7 +56,7 @@
<dependency>
<groupId>clucy</groupId>
<artifactId>clucy</artifactId>
- <version>0.2.1</version>
+ <version>0.2.2</version>
</dependency>
<dependency>
<groupId>lancet</groupId>
View
2 project.clj
@@ -2,7 +2,7 @@
;; defproject form. It can have other code in it as well, including
;; loading other task definitions.
-(defproject leiningen "1.6.1"
+(defproject leiningen "1.6.1.1"
:description "Automate Clojure projects without setting your hair on fire."
:url "https://github.com/technomancy/leiningen"
:license {:name "Eclipse Public License"}
View
5 src/leiningen/compile.clj
@@ -120,9 +120,10 @@
;; non-daemon threads will prevent process from exiting;
;; see http://tinyurl.com/2ueqjkl
(finally
- (when-not (or (= "1.5" (System/getProperty
+ (when (and ~(:shutdown-agents project false)
+ (not= "1.5" (System/getProperty
"java.specification.version"))
- ~*interactive?*)
+ ~(not *interactive?*))
(shutdown-agents)))))]
;; work around java's command line handling on windows
;; http://bit.ly/9c6biv This isn't perfect, but works for what's
View
6 src/leiningen/deps.clj
@@ -184,16 +184,16 @@
(defn deps
"Download :dependencies and put them in :library-path."
- [project & _]
- (when (seq _)
+ [project & [skip-dev]]
+ (when skip-dev
(println "WARNING: passing an argument to deps is deprecated."))
(when (fetch-deps? project)
(when-not (or (:disable-deps-clean project)
(:disable-implicit-clean project))
(delete-file-recursively (:library-path project) :silently)
(delete-file-recursively (File. (:root project) "native") :silently))
(let [fileset (do-deps project :dependencies)]
- (when-not (no-dev?)
+ (when-not (or skip-dev (no-dev?))
(do-deps project :dev-dependencies))
(extract-native-deps project)
(when (:checksum-deps project)

0 comments on commit 0e43e4d

Please sign in to comment.