diff --git a/extra/assocs/lib/lib-tests.factor b/extra/assocs/lib/lib-tests.factor new file mode 100644 index 0000000000..0bf8270088 --- /dev/null +++ b/extra/assocs/lib/lib-tests.factor @@ -0,0 +1,4 @@ +IN: assocs.lib.tests +USING: assocs.lib tools.test vectors ; + +{ 1 1 } [ [ ?push ] histogram ] must-infer-as diff --git a/extra/assocs/lib/lib.factor b/extra/assocs/lib/lib.factor index 1c89c1eb16..14632df771 100755 --- a/extra/assocs/lib/lib.factor +++ b/extra/assocs/lib/lib.factor @@ -41,4 +41,4 @@ IN: assocs.lib : histogram ( assoc quot -- assoc' ) H{ } clone [ swap [ change-at ] 2curry assoc-each - ] keep ; + ] keep ; inline diff --git a/extra/builder/release/archive/archive.factor b/extra/builder/release/archive/archive.factor index 9b239da586..25153436e6 100644 --- a/extra/builder/release/archive/archive.factor +++ b/extra/builder/release/archive/archive.factor @@ -24,12 +24,23 @@ IN: builder.release.archive : windows-archive-cmd ( -- cmd ) { "zip" "-r" archive-name "factor" } ; +! : macosx-archive-cmd ( -- cmd ) +! { "hdiutil" "create" +! "-srcfolder" "factor" +! "-fs" "HFS+" +! "-volname" "factor" +! archive-name } ; + : macosx-archive-cmd ( -- cmd ) + { "mkdir" "dmg-root" } try-process + { "cp" "-r" "factor" "dmg-root" } try-process { "hdiutil" "create" - "-srcfolder" "factor" + "-srcfolder" "dmg-root" "-fs" "HFS+" "-volname" "factor" - archive-name } ; + archive-name } to-strings try-process + { "rm" "-rf" "dmg-root" } try-process + { "true" } ; : unix-archive-cmd ( -- cmd ) { "tar" "-cvzf" archive-name "factor" } ; diff --git a/extra/websites/concatenative/concatenative.factor b/extra/websites/concatenative/concatenative.factor index a4f826d7f6..6d65f10783 100644 --- a/extra/websites/concatenative/concatenative.factor +++ b/extra/websites/concatenative/concatenative.factor @@ -63,19 +63,33 @@ TUPLE: factor-website < dispatcher ; { factor-website "page" } >>template test-db <alloy> ; -: init-factor-website ( -- ) - "factorcode.org" 25 <inet> smtp-server set-global +SYMBOL: key-password +SYMBOL: key-file +SYMBOL: dh-file + +: common-configuration ( -- ) + "concatenative.org" 25 <inet> smtp-server set-global "noreply@concatenative.org" lost-password-from set-global "website@concatenative.org" insomniac-sender set-global "slava@factorcode.org" insomniac-recipients set-global - init-factor-db - <factor-website> main-responder set-global ; + <factor-website> main-responder set-global + init-factor-db ; + +: init-testing ( -- ) + "resource:extra/openssl/test/dh1024.pem" dh-file set-global + "resource:extra/openssl/test/server.pem" key-file set-global + "password" key-password set-global + common-configuration ; + +: init-production ( -- ) + "/home/slava/cert/host.pem" key-file set-global + common-configuration ; : <factor-secure-config> ( -- config ) <secure-config> - "resource:extra/openssl/test/server.pem" >>key-file - "resource:extra/openssl/test/dh1024.pem" >>dh-file - "password" >>password ; + key-file get >>key-file + dh-file get >>dh-file + key-password get >>password ; : <factor-website-server> ( -- threaded-server ) <http-server> @@ -83,7 +97,7 @@ TUPLE: factor-website < dispatcher ; 8080 >>insecure 8431 >>secure ; -: start-factor-website ( -- ) +: start-website ( -- ) test-db start-expiring test-db start-update-task http-insomniac