Permalink
Browse files

Merge branch 'develop'

Roll 4.1.0 from develop to master

# Conflicts:
#	box.json
#	framework/Application.cfc
  • Loading branch information...
seancorfield committed Jul 2, 2017
2 parents e25aa41 + 20c0932 commit fb5f029d13ce2a3f93d063f022fb820c9cf4c874
Showing with 813 additions and 1,940 deletions.
  1. +2 −8 .gitignore
  2. +29 −6 .travis.yml
  3. +2 −1 Application.cfc
  4. +1 −1 CONTRIBUTING.md
  5. +1 −1 LICENSE
  6. +11 −15 README.md
  7. +62 −28 box.json
  8. +0 −142 build.xml
  9. +0 −3 examples/Application.cfc
  10. +1 −1 examples/layouts/default.cfm
  11. +36 −0 examples/mustache/Application.cfc
  12. BIN examples/mustache/compiler-0.9.1.jar
  13. +12 −0 examples/mustache/controllers/main.cfc
  14. 0 examples/{subsystems/6helloclojure → mustache}/index.cfm
  15. +14 −0 examples/mustache/layouts/default.html
  16. +11 −0 examples/mustache/views/main/default.html
  17. +1 −0 examples/mustache/views/main/page/fragment.html
  18. +34 −0 examples/rest/Application.cfc
  19. +35 −0 examples/rest/controllers/main.cfc
  20. +1 −0 examples/rest/index.cfm
  21. +1 −0 examples/rest/views/main/default.cfm
  22. +0 −11 examples/subsystems/6helloclojure/.gitignore
  23. +0 −61 examples/subsystems/6helloclojure/Application.cfc
  24. +0 −214 examples/subsystems/6helloclojure/LICENSE
  25. +0 −8 examples/subsystems/6helloclojure/MyApplication.cfc
  26. +0 −14 examples/subsystems/6helloclojure/README.md
  27. +0 −6 examples/subsystems/6helloclojure/boot.properties
  28. +0 −9 examples/subsystems/6helloclojure/build.boot
  29. +0 −3 examples/subsystems/6helloclojure/doc/intro.md
  30. +0 −6 examples/subsystems/6helloclojure/project.clj
  31. +0 −14 examples/subsystems/6helloclojure/src/hello/controllers/main.clj
  32. +0 −3 examples/subsystems/6helloclojure/src/hello/services/greeter.clj
  33. +0 −9 examples/subsystems/6helloclojure/test/hello/controllers/main_test.clj
  34. +0 −6 examples/subsystems/6helloclojure/test/hello/services/greeter_test.clj
  35. +0 −15 examples/subsystems/6helloclojure/views/main/default.cfm
  36. +0 −19 examples/subsystems/6helloclojure/views/main/error.cfm
  37. +0 −5 examples/subsystems/6helloclojure/views/main/stopped.cfm
  38. +0 −9 examples/views/main/default.cfm
  39. +1 −1 framework/Application.cfc
  40. +1 −1 framework/MyApplication.cfc
  41. +2 −2 framework/WireBoxAdapter.cfc
  42. +3 −3 framework/aop.cfc
  43. +7 −7 framework/beanProxy.cfc
  44. +0 −406 framework/cfmljure.cfc
  45. +0 −103 framework/cljcontroller.cfc
  46. +2 −2 framework/facade.cfc
  47. +32 −28 framework/ioc.cfc
  48. +0 −246 framework/ioclj.cfc
  49. +30 −0 framework/methodProxy.cfc
  50. +153 −92 framework/one.cfc
  51. +13 −8 introduction/views/main/examples.cfm
  52. +2 −0 introduction/views/main/missingview.cfm
  53. +0 −15 run-tests-example.sh
  54. +11 −0 server.json
  55. +3 −3 tests/AddBeanTest.cfc
  56. +3 −3 tests/Application.cfc
  57. +6 −6 tests/BeanInfoTest.cfc
  58. +2 −2 tests/CircularTest.cfc
  59. +3 −3 tests/ConstantTest.cfc
  60. +7 −7 tests/DeclareBeanTest.cfc
  61. +1 −1 tests/DisableLayoutTest.cfc
  62. +2 −2 tests/EmptyTest.cfc
  63. +3 −3 tests/ExtraBeansTest.cfc
  64. +5 −5 tests/FactoryBeanTest.cfc
  65. +2 −2 tests/InitMethodWithConstantsTest.cfc
  66. +4 −4 tests/InjectPropertiesTest.cfc
  67. +1 −0 tests/InjectableTest.cfc
  68. +4 −4 tests/MappingTest.cfc
  69. +2 −2 tests/ModelServiceTest.cfc
  70. +4 −4 tests/ModelTest.cfc
  71. +0 −6 tests/OnLoadTest-cf10.cfm
  72. +13 −13 tests/OnLoadTest.cfc
  73. +7 −7 tests/ParentTest.cfc
  74. +69 −2 tests/TransientInjectionTest.cfc
  75. +5 −5 tests/TransientTest.cfc
  76. +0 −96 tests/ci/HttpAntRunner.cfc
  77. BIN tests/ci/mxunit-ant.jar
  78. BIN tests/ci/mxunit-output-ant.jar
  79. +0 −10 tests/ci/scripts/acf9-control.sh
  80. +0 −24 tests/ci/scripts/ci-helper-acf.sh
  81. +0 −25 tests/ci/scripts/ci-helper-acf9.sh
  82. +0 −112 tests/ci/scripts/ci-helper-base.sh
  83. +0 −35 tests/ci/scripts/ci-helper-railo.sh
  84. +1 −1 tests/defaultPropertyTest.cfc
  85. +6 −6 tests/defaultargTest.cfc
  86. +2 −1 tests/frameworkErrorTest.cfc
  87. +6 −0 tests/frameworkRouteTest.cfc
  88. +11 −0 tests/issue408/ConstructorDependancy.cfc
  89. +5 −0 tests/issue408/NoDependancies.cfc
  90. +13 −0 tests/issue408/SetterDependancy.cfc
  91. +3 −3 tests/onSessionStartBuildURLTest.cfc
  92. +73 −0 tests/rest/DecodeTest.cfc
  93. +13 −0 tests/runner.cfm
  94. +13 −7 tests/singletonPatternTest.cfc
  95. +10 −4 tests/transientPatternTest.cfc
View
@@ -1,18 +1,12 @@
WEB-INF/*
litepost/*
mxunit/*
wirebox/*
tests/ci/results
tests/ci/results/*
testbox/*
tests/results/
.project
settings.xml
.settings/org.eclipse.core.resources.prefs
# Intellij IDEA files
*.iml
*.ipr
*.idea
.ant-targets-build.xml
run-tests.sh
/examples/6helloclojure/target/stale/extract-native.dependencies
/taskmanager/
/server.json
View
@@ -1,9 +1,35 @@
language: java
sudo: required
env:
matrix:
- PLATFORM=acf10-linux64
- PLATFORM=railo42beta
- PLATFORM=railo41
- ENGINE=lucee@4.5
- ENGINE=lucee@5
- ENGINE=adobe@2016
- ENGINE=adobe@11
- ENGINE=adobe@10
cache:
directories:
- $HOME/.CommandBox
before_install:
- sudo apt-key adv --keyserver keys.gnupg.net --recv 6DA70622
- sudo echo "deb http://downloads.ortussolutions.com/debs/noarch /" | sudo tee -a
/etc/apt/sources.list.d/commandbox.list
install:
- sudo apt-get update && sudo apt-get --assume-yes install commandbox
- box install
before_script:
- box server start cfengine=$ENGINE port=8500 openbrowser=false
script: >
testResults="echo $(box testbox run reporter=mintext)";
echo "$testResults";
if grep -i "\[Failures: [1-9][0-9]\?[0-9]\?\]\|\[Errors: [1-9][0-9]\?[0-9]\?\]\|<t[^>]*>\|<b[^>]*>" <<< $testResults; then exit 1; fi
notifications:
webhooks:
@@ -12,6 +38,3 @@ notifications:
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: false # default: false
install: ant -Dsource=remote -Dwork.dir=$HOME/work -Dbuild.dir=$TRAVIS_BUILD_DIR -Dplatform=$PLATFORM install-ci-deps
script: ant -Dsource=remote -Dwork.dir=$HOME/work -Dbuild.dir=$TRAVIS_BUILD_DIR -Dplatform=$PLATFORM test-ci
View
@@ -18,7 +18,8 @@ component {
// create your FW/1 application:
request._framework_one = new framework.one( {
trace = true,
base = getDirectoryFromPath( CGI.SCRIPT_NAME )
missingview = 'main.missingview',
base = getDirectoryFromPath( CGI.SCRIPT_NAME )
.replaceFirst( getContextRoot(), '' ) & 'introduction'
} );
View
@@ -2,7 +2,7 @@ Contributing to Framework One (FW/1, DI/1, AOP/1)
==
Please note that in order to encourage more people to get involved with Framework One, we have adopted a [Code of Conduct](CODE_OF_CONDUCT.md) so that _everyone_ should feel welcome and safe when getting involved with any aspect of the Framework One community.
All development happens in the main [Framework One repository](https://github.com/framework-one/fw1) on the **develop** branch. Feel free to fork the repo and submit Pull Requests on the **develop** branch. You can also open issues there to discuss potential enhancements etc.
All development happens in the main [Framework One repository](https://github.com/framework-one/fw1) on the **develop** branch. Feel free to fork the repo and submit Pull Requests on the **develop** branch. You can also open issues there to discuss potential enhancements etc. You can also discuss bugs and enhancements on [Gitter](https://gitter.im/framework-one/fw1) or [Slack](https://cfml.slack.com/messages/fw1/). You can sign into Gitter directly using your GitHub credentials. For Slack, you'll need to [request an account](http://cfml-slack.herokuapp.com/).
Pull Requests that contain new/updated tests for the bug fix / enhancement will be looked on more favorably than those that do not contain fixes. Travis-CI automatically runs the test suite for Pull Requests which helps us be confident that the Pull Request is "good".
View
@@ -1,4 +1,4 @@
Copyright (c) 2009-2016 Sean Corfield (see individual files for any
Copyright (c) 2009-2017 Sean Corfield (see individual files for any
additional copyright holders)
Licensed under the Apache License, Version 2.0 (the "License");
View
@@ -23,28 +23,24 @@ Please read the [Framework One Code of Conduct](CODE_OF_CONDUCT.md) - we want FW
# Running the Tests
The Ant `build.xml` file is primarily designed to be used by Travis to run the tests automatically, but it is possible to run the tests locally, with some setup:
FW/1 is setup to run tests on [Travis CI](https://travis-ci.org/framework-one/fw1) using the `.travis.yml` file.
* This FW/1 directory needs to be a web root for some test domain on your local machine. I have `fw1.local` setup to resolve to this folder.
* You'll need MXUnit installed and accessible via `/mxunit` for the test domain you use for this project. You can install MXUnit into this FW/1 directory if you want - `mxunit/*` is on the `.gitignore` list.
To run tests manually, you'll need [CommandBox](https://www.ortussolutions.com/products/commandbox) installed.
You can run the build locally using a variant of this command (all on one line):
Then run `box install` once to install the dependencies (TestBox is the only one currently).
ant -Dplatform=railo41 -Dtest.path.root=/Developer/workspace/fw1 \
-Dcontext.root= -Dserver.name=fw1.local -Dserver.port=8080 \
run-tests-mxunit
Then start a server on port 8500 with your choice of CFML engine, e.g.,
See the `run-tests-example.sh` file for a template (for Mac/Linux).
box server start cfengine=lucee@5 port=8500
* `platform` needs to be set just to satisfy the build script it doesn't affect anything (so use `railo41` even if you're on ACF or a different version of Railo)
* `test.path.root` should be the filesystem path to this directory, i.e., the web root for the FW/1 project.
* `context.root` should probably be empty (unless you are using a named web application context)
* `server.name` should be the test domain you have configured
* `server.port` should be the port on which you access that test domain
* `run-tests-mxunit` is the actual Ant task that does the testing
This will open a browser, running the FW/1 "Introduction" app.
You can then run the tests:
box testbox run reporter=mintext
# Copyright and License
Copyright (c) 2009-2016 Sean Corfield (and others -- see individual files for additional copyright holders). All rights reserved.
Copyright (c) 2009-2017 Sean Corfield (and others -- see individual files for additional copyright holders). All rights reserved.
The use and distribution terms for this software are covered by the Apache Software License 2.0 (http://www.apache.org/licenses/LICENSE-2.0) which can also be found in the file LICENSE at the root of this distribution and in individual licensed files.
By using this software in any fashion, you are agreeing to be bound by the terms of this license. You must not remove this notice, or any other, from this software.
View
@@ -1,32 +1,66 @@
{
"name" : "Framework One",
"slug" : "fw1",
"version" : "4.0.0",
"author" : "Sean Corfield, Marcin Szczepanski, Ryan Cogswell",
"location" : "https://github.com/framework-one/fw1/archive/v4.0.0.zip",
"createPackageDirectory" : true,
"packageDirectory" : "framework",
"Homepage" : "http://framework-one.github.io/",
"Documentation" : "http://framework-one.github.io/documentation/",
"Repository" : {
"type" : "git", "URL" : "https://github.com/framework-one/fw1.git"
},
"Bugs" : "https://github.com/framework-one/fw1/issues",
"shortDescription" : "FW/1 - Framework One - is a family of small, lightweight, convention-over-configuration frameworks, primarily for CFML.",
"description" : "FW/1 - Framework One - is a family of small, lightweight, convention-over-configuration frameworks, primarily for CFML. FW/1 itself provides MVC, DI/1 provides dependency injection (a.k.a. inversion of control), and AOP/1 provides aspect-oriented programming features on top of DI/1.",
"instructions" : "http://framework-one.github.io/documentation/",
"changelog" : "https://github.com/framework-one/fw1/commits/master",
"type" : "mvc",
"keywords" : [ "fw1", "framework one", "mvc", "conventions" ],
"private" : "false",
"engines" : [
{ "type" : "railo", "version" : ">=4.1.x" },
{ "type" : "lucee", "version" : ">=4.5.x" },
{ "type" : "adobe", "version" : ">=10.0.x" }
"name":"Framework One",
"slug":"fw1",
"version":"4.1.0",
"author":"Sean Corfield, Marcin Szczepanski, Ryan Cogswell",
"location":"https://github.com/framework-one/fw1/archive/v4.1.0.zip",
"createPackageDirectory":true,
"packageDirectory":"framework",
"Homepage":"http://framework-one.github.io/",
"Documentation":"http://framework-one.github.io/documentation/",
"Repository":{
"type":"git",
"URL":"https://github.com/framework-one/fw1.git"
},
"Bugs":"https://github.com/framework-one/fw1/issues",
"shortDescription":"FW/1 - Framework One - is a family of small, lightweight, convention-over-configuration frameworks, primarily for CFML.",
"description":"FW/1 - Framework One - is a family of small, lightweight, convention-over-configuration frameworks, primarily for CFML. FW/1 itself provides MVC, DI/1 provides dependency injection (a.k.a. inversion of control), and AOP/1 provides aspect-oriented programming features on top of DI/1.",
"instructions":"http://framework-one.github.io/documentation/",
"changelog":"https://github.com/framework-one/fw1/commits/master",
"type":"mvc",
"keywords":[
"fw1",
"framework one",
"mvc",
"conventions"
],
"License" : [
{ "type" : "Apache 2.0", "URL" : "http://www.apache.org/licenses/LICENSE-2.0" }
"private":"false",
"engines":[
{
"type":"railo",
"version":">=4.1.x"
},
{
"type":"lucee",
"version":">=4.5.x"
},
{
"type":"adobe",
"version":">=10.0.x"
}
],
"Contributors" : [ {"name": "Contributors List", "url": "https://github.com/framework-one/fw1/graphs/contributors"} ],
"ignore" : [ ]
"License":[
{
"type":"Apache 2.0",
"URL":"http://www.apache.org/licenses/LICENSE-2.0"
}
],
"Contributors":[
{
"name":"Contributors List",
"url":"https://github.com/framework-one/fw1/graphs/contributors"
}
],
"ignore":[
],
"devDependencies":{
"testbox":"^2.3.0+00044"
},
"installPaths":{
"testbox":"testbox"
},
"testbox":{
"runner":"http://localhost:8500/tests/runner.cfm"
}
}
View
142 build.xml

This file was deleted.

Oops, something went wrong.
View
@@ -18,10 +18,7 @@ component {
// create your FW/1 application:
request._framework_one = new framework.one( {
SESOmitIndex = true,
diComponent = "framework.ioclj",
diLocations = [
// must provide path to project.clj in Clojure example:
getDirectoryFromPath( CGI.SCRIPT_NAME ) & "/subsystems/6helloclojure",
"model", "controllers", "beans", "services" // to account for the variety of D/I locations in our examples
// that allows all our subsystems to automatically have their own bean factory with the base factory as parent
],
@@ -12,7 +12,7 @@
<p><a href="<cfoutput>#buildURL( ':main.default' )#</cfoutput>">Examples Home</a></p>
</div>
<div class="footer">
<a href="https://github.com/framework-one/fw1">FW/1</a> is copyright (c) 2009-2016 Sean Corfield, Marcin Szczepanski, Ryan Cogswell -
<a href="https://github.com/framework-one/fw1">FW/1</a> is copyright (c) 2009-2017 Sean Corfield, Marcin Szczepanski, Ryan Cogswell -
<a href="http://www.apache.org/licenses/LICENSE-2.0">Licensed under the Apache License, Version 2.0</a><br />
Logo by Kevan Stannard - You are running FW/1 version <cfoutput>#variables.framework.version#</cfoutput>.
</div>
Oops, something went wrong.

0 comments on commit fb5f029

Please sign in to comment.