Quellcode durchsuchen

migration to newest state of Amber

Herbert Vojčík vor 10 Jahren
Ursprung
Commit
a124549252
10 geänderte Dateien mit 58 neuen und 35 gelöschten Zeilen
  1. 31 23
      Gruntfile.js
  2. 3 3
      bower.json
  3. 7 0
      config-node.js
  4. 1 1
      devel.js
  5. 1 1
      package.json
  6. 3 3
      src/Trapped-Frontend.js
  7. 1 1
      src/Trapped-Frontend.st
  8. 2 2
      src/Trapped-Processors.js
  9. 1 1
      src/Trapped-Processors.st
  10. 8 0
      testing.js

+ 31 - 23
Gruntfile.js

@@ -1,7 +1,8 @@
 'use strict';
 'use strict';
 
 
 module.exports = function (grunt) {
 module.exports = function (grunt) {
-    var path = require('path');
+    var path = require('path'),
+        helpers = require('amber-dev/lib/helpers');
 
 
     // These plugins provide necessary tasks.
     // These plugins provide necessary tasks.
     grunt.loadNpmTasks('grunt-contrib-clean');
     grunt.loadNpmTasks('grunt-contrib-clean');
@@ -11,7 +12,7 @@ module.exports = function (grunt) {
 
 
     // Default task.
     // Default task.
     grunt.registerTask('default', ['amberc:all', 'amberc:counter', 'amberc:todo']);
     grunt.registerTask('default', ['amberc:all', 'amberc:counter', 'amberc:todo']);
-    grunt.registerTask('test', ['amberc:test_runner', 'execute:test_runner', 'clean:test_runner']);
+    grunt.registerTask('test', ['amdconfig:app', 'requirejs:test_runner', 'execute:test_runner', 'clean:test_runner']);
     grunt.registerTask('devel', ['amdconfig:app', 'requirejs:devel']);
     grunt.registerTask('devel', ['amdconfig:app', 'requirejs:devel']);
     grunt.registerTask('deploy', ['amdconfig:app', 'requirejs:deploy']);
     grunt.registerTask('deploy', ['amdconfig:app', 'requirejs:deploy']);
 
 
@@ -28,8 +29,7 @@ module.exports = function (grunt) {
         amberc: {
         amberc: {
             options: {
             options: {
                 amber_dir: path.join(__dirname, "bower_components", "amber"),
                 amber_dir: path.join(__dirname, "bower_components", "amber"),
-                library_dirs: ['src'],
-                closure_jar: ''
+                library_dirs: ['src']
             },
             },
             all: {
             all: {
                 src: [
                 src: [
@@ -52,17 +52,6 @@ module.exports = function (grunt) {
                 ],
                 ],
                 amd_namespace: 'trapped-todo',
                 amd_namespace: 'trapped-todo',
                 libraries: ['SUnit', 'Web', 'Trapped-Frontend', 'Trapped-Backend']
                 libraries: ['SUnit', 'Web', 'Trapped-Frontend', 'Trapped-Backend']
-            },
-            test_runner: {
-                src: ['node_modules/amber-dev/lib/Test.st'],
-                libraries: [
-                    /* add dependencies packages here */
-                    'Trapped', /* add other code-to-test packages here */
-                    'SUnit',
-                    'Trapped-Tests' /* add other test packages here */
-                ],
-                main_class: 'NodeTestRunner',
-                output_name: 'test_runner'
             }
             }
         },
         },
 
 
@@ -72,26 +61,45 @@ module.exports = function (grunt) {
             deploy: {
             deploy: {
                 options: {
                 options: {
                     mainConfigFile: "config.js",
                     mainConfigFile: "config.js",
-                    onBuildWrite: function (moduleName, path, contents) {
-                        return moduleName === "config" ? contents + "\nrequire.config({map:{'*':{app:'deploy'}}});" : contents;
-                    },
+                    rawText: {"app": 'define(["deploy"],function(x){return x});'},
                     pragmas: {
                     pragmas: {
                         excludeIdeData: true,
                         excludeIdeData: true,
                         excludeDebugContexts: true
                         excludeDebugContexts: true
                     },
                     },
-                    include: ['config', 'node_modules/requirejs/require', 'deploy'],
+                    include: ['config', 'node_modules/requirejs/require', 'app'],
                     out: "the.js"
                     out: "the.js"
                 }
                 }
             },
             },
             devel: {
             devel: {
                 options: {
                 options: {
                     mainConfigFile: "config.js",
                     mainConfigFile: "config.js",
-                    onBuildWrite: function (moduleName, path, contents) {
-                        return moduleName === "config" ? contents + "\nrequire.config({map:{'*':{app:'devel'}}});" : contents;
-                    },
-                    include: ['config', 'node_modules/requirejs/require'],
+                    rawText: {"app": 'define(["devel"],function(x){return x});'},
+                    include: ['config', 'node_modules/requirejs/require', 'app'],
+                    exclude: ['devel'],
                     out: "the.js"
                     out: "the.js"
                 }
                 }
+            },
+            test_runner: {
+                options: {
+                    mainConfigFile: "config.js",
+                    rawText: {
+                        "app": "(" + function () {
+                            define(["testing", "amber_devkit/NodeTestRunner"], function (amber) {
+                                amber.initialize();
+                                amber.globals.NodeTestRunner._main();
+                            });
+                        } + "());"
+                    },
+                    paths: {"amber_devkit": helpers.libPath},
+                    pragmas: {
+                        excludeIdeData: true
+                    },
+                    include: ['config-node', 'app'],
+                    insertRequire: ['app'],
+                    optimize: "none",
+                    wrap: helpers.nodeWrapperWithShebang,
+                    out: "test_runner.js"
+                }
             }
             }
         },
         },
 
 

+ 3 - 3
bower.json

@@ -24,13 +24,13 @@
     "tests"
     "tests"
   ],
   ],
   "dependencies": {
   "dependencies": {
-    "amber": ">=0.14.10",
+    "amber": ">=0.14.15",
     "xontent": "^0.1.0",
     "xontent": "^0.1.0",
     "lyst": "^0.1.0"
     "lyst": "^0.1.0"
   },
   },
   "devDependencies": {
   "devDependencies": {
     "amber-ide-starter-dialog": "^0.1.0",
     "amber-ide-starter-dialog": "^0.1.0",
-    "amber-attic": ">=0.1.5",
-    "helios": ">=0.4.0"
+    "amber-contrib-legacy": "^0.2.1",
+    "helios": ">=0.5.0"
   }
   }
 }
 }

+ 7 - 0
config-node.js

@@ -0,0 +1,7 @@
+// This file is used to make additional changes
+// when building an app to run in node.js.
+// Free to edit. You can break tests (cli test runner uses
+// this to build itself - it is a node executable).
+define("amber_core/Platform-Browser", ["amber_core/Platform-Node"], {});
+define("amber/browser-compatibility", {});
+define("jquery", {});

+ 1 - 1
devel.js

@@ -1,6 +1,6 @@
 define([
 define([
+    './testing',
     'amber/devel',
     'amber/devel',
-    './deploy',
     // --- packages used only during development begin here ---
     // --- packages used only during development begin here ---
     'trapped/Trapped-Tests',
     'trapped/Trapped-Tests',
     'amber-attic/IDE'
     'amber-attic/IDE'

+ 1 - 1
package.json

@@ -28,7 +28,7 @@
     "test": "grunt test"
     "test": "grunt test"
   },
   },
   "devDependencies": {
   "devDependencies": {
-    "amber-dev": "^0.4.0",
+    "amber-dev": "^0.6.0",
     "grunt": "^0.4.5",
     "grunt": "^0.4.5",
     "grunt-contrib-clean": "^0.6.0",
     "grunt-contrib-clean": "^0.6.0",
     "grunt-contrib-requirejs": "^0.4.4",
     "grunt-contrib-requirejs": "^0.4.4",

+ 3 - 3
src/Trapped-Frontend.js

@@ -1,8 +1,8 @@
 define("trapped/Trapped-Frontend", ["amber/boot"
 define("trapped/Trapped-Frontend", ["amber/boot"
 //>>excludeStart("imports", pragmas.excludeImports);
 //>>excludeStart("imports", pragmas.excludeImports);
-, "amber-contrib-jquery/Wrappers-JQuery", "amber-contrib-web/Web"
+, "amber/jquery/Wrappers-JQuery", "amber/web/Web"
 //>>excludeEnd("imports");
 //>>excludeEnd("imports");
-, "amber_core/Kernel-Objects", "amber_core/Kernel-Collections", "amber-contrib-web/Web"], function($boot
+, "amber_core/Kernel-Objects", "amber_core/Kernel-Collections", "amber/web/Web"], function($boot
 //>>excludeStart("imports", pragmas.excludeImports);
 //>>excludeStart("imports", pragmas.excludeImports);
 
 
 //>>excludeEnd("imports");
 //>>excludeEnd("imports");
@@ -10,7 +10,7 @@ define("trapped/Trapped-Frontend", ["amber/boot"
 var $core=$boot.api,nil=$boot.nil,$recv=$boot.asReceiver,$globals=$boot.globals;
 var $core=$boot.api,nil=$boot.nil,$recv=$boot.asReceiver,$globals=$boot.globals;
 $core.addPackage('Trapped-Frontend');
 $core.addPackage('Trapped-Frontend');
 $core.packages["Trapped-Frontend"].innerEval = function (expr) { return eval(expr); };
 $core.packages["Trapped-Frontend"].innerEval = function (expr) { return eval(expr); };
-$core.packages["Trapped-Frontend"].imports = ["amber-contrib-jquery/Wrappers-JQuery", "amber-contrib-web/Web"];
+$core.packages["Trapped-Frontend"].imports = ["amber/jquery/Wrappers-JQuery", "amber/web/Web"];
 $core.packages["Trapped-Frontend"].transport = {"type":"amd","amdNamespace":"trapped"};
 $core.packages["Trapped-Frontend"].transport = {"type":"amd","amdNamespace":"trapped"};
 
 
 $core.addClass('TrappedDataCarrier', $globals.Object, ['target', 'model', 'chain'], 'Trapped-Frontend');
 $core.addClass('TrappedDataCarrier', $globals.Object, ['target', 'model', 'chain'], 'Trapped-Frontend');

+ 1 - 1
src/Trapped-Frontend.st

@@ -1,5 +1,5 @@
 Smalltalk createPackage: 'Trapped-Frontend'!
 Smalltalk createPackage: 'Trapped-Frontend'!
-(Smalltalk packageAt: 'Trapped-Frontend') imports: {'amber-contrib-jquery/Wrappers-JQuery'. 'amber-contrib-web/Web'}!
+(Smalltalk packageAt: 'Trapped-Frontend') imports: {'amber/jquery/Wrappers-JQuery'. 'amber/web/Web'}!
 Object subclass: #TrappedDataCarrier
 Object subclass: #TrappedDataCarrier
 	instanceVariableNames: 'target model chain'
 	instanceVariableNames: 'target model chain'
 	package: 'Trapped-Frontend'!
 	package: 'Trapped-Frontend'!

+ 2 - 2
src/Trapped-Processors.js

@@ -1,6 +1,6 @@
 define("trapped/Trapped-Processors", ["amber/boot"
 define("trapped/Trapped-Processors", ["amber/boot"
 //>>excludeStart("imports", pragmas.excludeImports);
 //>>excludeStart("imports", pragmas.excludeImports);
-, "amber-contrib-jquery/Wrappers-JQuery", "jquery.xontent"
+, "amber/jquery/Wrappers-JQuery", "jquery.xontent"
 //>>excludeEnd("imports");
 //>>excludeEnd("imports");
 , "trapped/Trapped-Frontend"], function($boot
 , "trapped/Trapped-Frontend"], function($boot
 //>>excludeStart("imports", pragmas.excludeImports);
 //>>excludeStart("imports", pragmas.excludeImports);
@@ -10,7 +10,7 @@ define("trapped/Trapped-Processors", ["amber/boot"
 var $core=$boot.api,nil=$boot.nil,$recv=$boot.asReceiver,$globals=$boot.globals;
 var $core=$boot.api,nil=$boot.nil,$recv=$boot.asReceiver,$globals=$boot.globals;
 $core.addPackage('Trapped-Processors');
 $core.addPackage('Trapped-Processors');
 $core.packages["Trapped-Processors"].innerEval = function (expr) { return eval(expr); };
 $core.packages["Trapped-Processors"].innerEval = function (expr) { return eval(expr); };
-$core.packages["Trapped-Processors"].imports = ["amber-contrib-jquery/Wrappers-JQuery", "jquery.xontent"];
+$core.packages["Trapped-Processors"].imports = ["amber/jquery/Wrappers-JQuery", "jquery.xontent"];
 $core.packages["Trapped-Processors"].transport = {"type":"amd","amdNamespace":"trapped"};
 $core.packages["Trapped-Processors"].transport = {"type":"amd","amdNamespace":"trapped"};
 
 
 $core.addClass('TrappedProcessorAttribute', $globals.TrappedDataExpectingProcessor, ['attrName'], 'Trapped-Processors');
 $core.addClass('TrappedProcessorAttribute', $globals.TrappedDataExpectingProcessor, ['attrName'], 'Trapped-Processors');

+ 1 - 1
src/Trapped-Processors.st

@@ -1,5 +1,5 @@
 Smalltalk createPackage: 'Trapped-Processors'!
 Smalltalk createPackage: 'Trapped-Processors'!
-(Smalltalk packageAt: 'Trapped-Processors') imports: {'amber-contrib-jquery/Wrappers-JQuery'. 'jquery.xontent'}!
+(Smalltalk packageAt: 'Trapped-Processors') imports: {'amber/jquery/Wrappers-JQuery'. 'jquery.xontent'}!
 TrappedDataExpectingProcessor subclass: #TrappedProcessorAttribute
 TrappedDataExpectingProcessor subclass: #TrappedProcessorAttribute
 	instanceVariableNames: 'attrName'
 	instanceVariableNames: 'attrName'
 	package: 'Trapped-Processors'!
 	package: 'Trapped-Processors'!

+ 8 - 0
testing.js

@@ -0,0 +1,8 @@
+define([
+    './deploy',
+    'amber_core/SUnit',
+    // --- packages used only during automated testing begin here ---
+    // --- packages used only during automated testing end here ---
+], function (amber) {
+    return amber;
+});