Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates #93

Open
wants to merge 168 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
168 commits
Select commit Hold shift + click to select a range
6f0940e
some refactoring to get a first try at file versioning in. Also moved…
cengebretson May 6, 2013
dc1653c
compiled javascript
cengebretson May 6, 2013
80acecf
removing some extra console logs
cengebretson May 6, 2013
b06b8a5
setting variables in compilers module
cengebretson May 6, 2013
03a5e65
read from relative directory
cengebretson May 6, 2013
fa65946
new compilers module, inspired by http://blog.divshot.com/post/313367…
cengebretson May 6, 2013
2ff3814
new javascript compile
cengebretson May 6, 2013
179a069
update to version number and updated dependencies
cengebretson May 6, 2013
6fba091
updated http-proxy module doesn't supply headers as a parameter to wr…
cengebretson May 9, 2013
d99717d
versioning tweaks
cengebretson May 9, 2013
3a6bd76
compiled javascript files
cengebretson May 9, 2013
cc6c9ae
updating to 0.3.6
cengebretson May 15, 2013
6e1f376
adding package.json version output to help command
cengebretson May 15, 2013
88721f9
Merge remote-tracking branch 'origin/master' into version0_3
cengebretson Jun 12, 2013
02f35d7
updated package information and dependencies
cengebretson May 30, 2013
3f4a628
default patchRedirect to true
cengebretson May 31, 2013
9327f2e
refactoring the server code out of the hem.coffee and into its own fi…
cengebretson Jun 3, 2013
a374c5a
some more major refactoring, but work still to be done
cengebretson Jun 5, 2013
2403124
fixing coffee typo
cengebretson Jun 13, 2013
002abc6
more refactoring
cengebretson Jun 17, 2013
2f01d8d
more refactoring fun, seems to be building correctly again
cengebretson Jun 18, 2013
d97da8b
server works again, yay!
cengebretson Jun 18, 2013
4a94999
some refactoring of server flow
cengebretson Jun 18, 2013
b69076d
versioning is working again, double yay
cengebretson Jun 18, 2013
5c4d06c
removing debug, just need info/verbose, also ability to turn off cons…
cengebretson Jun 18, 2013
095ebb7
only minify/compress by switch, faster execution during development i…
cengebretson Jun 18, 2013
03f0495
some minor changes to the way files are watched
cengebretson Jun 18, 2013
a0d6ba1
make sure to write builds to file system during watch
cengebretson Jun 18, 2013
ddc1d6f
make write to file system the default value for builds
cengebretson Jun 18, 2013
a6db04f
starting refactoring of testing options
cengebretson Jun 19, 2013
012132c
lots and lots and lots of changes, trying to get hem easier to config…
cengebretson Jun 25, 2013
bdb7c19
building and server seem to be functional again
cengebretson Jun 26, 2013
e7aa7af
handling the @after attribute a bit differently, allow array of strings
cengebretson Jun 26, 2013
8ca6ae3
need to improve compile libs so that it only looks at compilable files
cengebretson Jun 27, 2013
fc71565
updated readme
cengebretson Jun 27, 2013
9b3658b
updated readme
cengebretson Jun 27, 2013
f086c7c
updated readme
cengebretson Jun 27, 2013
a5ba353
updated readme
cengebretson Jun 27, 2013
821099d
updated readme
cengebretson Jun 27, 2013
812925e
trying to deal with window paths
cengebretson Jul 2, 2013
1a3fa11
some versioning refactoring, still not completely sold on approach ye…
cengebretson Jul 2, 2013
7d095db
platform is function call
cengebretson Jul 2, 2013
6c9f9d4
need compiled js file
cengebretson Jul 2, 2013
22d54e8
debuggin windows issues
cengebretson Jul 2, 2013
b57ed98
guess I can't do x.x.x.x versions
cengebretson Jul 2, 2013
6c3145d
I am starting to really dislike windows
cengebretson Jul 2, 2013
3e436f7
I think this should be the final windows change, famous last words..
cengebretson Jul 2, 2013
a22e429
sigh..
cengebretson Jul 2, 2013
3206100
I have a good feeling about this one
cengebretson Jul 2, 2013
744f385
get rid of debugging statements
cengebretson Jul 2, 2013
6438413
versioning can handle different paths inside file
cengebretson Jul 2, 2013
0539d85
fixed issue with directories not redirecting with /
cengebretson Jul 2, 2013
7f2ed46
make sure missing parent directories are created.
cengebretson Jul 3, 2013
bddd2eb
more colors
cengebretson Jul 10, 2013
21aa9b6
minor bug fixes and refactorings from master branch
cengebretson Jul 16, 2013
b41f61d
not sure how that stuff got committed, perhaps a sign of sleep depriv…
cengebretson Aug 8, 2013
7b941ba
fixing way the default port/host are handled
cengebretson Aug 8, 2013
6884818
compiled js and version bump
cengebretson Aug 8, 2013
53aedfa
leaving host blank as default so it will bind to both localhost and i…
cengebretson Aug 12, 2013
7e356e7
updated packages to latest/greatest
cengebretson Aug 21, 2013
4513810
removing compress option from stylus compiler, will compress at end o…
cengebretson Aug 21, 2013
1a64973
make sure we only watch directories
cengebretson Aug 21, 2013
0a85cbf
little bit cleaner error output
cengebretson Aug 21, 2013
a207130
user uglifycss to minify css
cengebretson Aug 21, 2013
b31d302
adding less to css compilers
cengebretson Aug 21, 2013
1eac148
used wrong function call for uglifycss
cengebretson Aug 21, 2013
dcc2132
needed to compile js
cengebretson Aug 21, 2013
59d9dd2
redoing the css compile to work with dirs and individual files
cengebretson Aug 21, 2013
e1400a9
bump version
cengebretson Aug 21, 2013
02ee8ea
make sure we only look at files we can actuall require/compile
cengebretson Aug 21, 2013
2eafae6
simplify code
cengebretson Aug 21, 2013
53f4c40
fixed some issues with the hem watch feature
cengebretson Aug 21, 2013
87443f2
additional tweaks to hem watch service
cengebretson Aug 21, 2013
c837105
first take at loading local modules for the compiling
cengebretson Aug 22, 2013
5bf0a9a
removing less
cengebretson Aug 22, 2013
4e5ba54
removing most precompilers from hem, install locally
cengebretson Aug 22, 2013
32e77a1
bump version
cengebretson Aug 22, 2013
9a89c3b
ok, still need eco for the time being but will remove it soon
cengebretson Aug 22, 2013
d35e052
some additional comments
cengebretson Aug 22, 2013
750113b
goodbye eco
cengebretson Aug 22, 2013
b7a9b7a
removing the stitch eco template file
cengebretson Aug 22, 2013
411c89c
only have jade debug during server mode
cengebretson Aug 22, 2013
18f31aa
fixed issue with minifyjs not being called correctly
cengebretson Aug 26, 2013
cff1f7e
updated with better compiler errors
cengebretson Aug 28, 2013
4da00e7
fixed issue with uglify, wasn't getting the minified string correctly.
cengebretson Aug 28, 2013
e232284
better compile error handling for eco/jeco templates
cengebretson Sep 25, 2013
49556a7
have hem look for local copy and then global.
cengebretson Oct 3, 2013
1afb050
move logging to its own module
cengebretson Oct 3, 2013
1729bbf
using logging module
cengebretson Oct 3, 2013
2867d27
updated package dependencies to latest versions
cengebretson Oct 3, 2013
521b275
learn to spall, I mean spell
cengebretson Oct 3, 2013
1435c18
using logs module
cengebretson Oct 3, 2013
75be79d
using log module
cengebretson Oct 3, 2013
4eabb48
lots of refactoring going on
cengebretson Oct 5, 2013
405ff9a
using 'src' instead of path, seems like a better name
cengebretson Oct 5, 2013
dffc7db
lots of refactoring on the server/hem/package classes, opening door f…
cengebretson Oct 7, 2013
db3facb
compiled js files
cengebretson Oct 7, 2013
9b9ff7b
updated version, everything should be working at this point. On to mo…
cengebretson Oct 7, 2013
0669be4
beginnings of event system, will expand at a later date.
cengebretson Oct 7, 2013
de7b85d
using commonjs as config value instead of identifier
cengebretson Oct 7, 2013
e552c09
using commonjs instead of identifier part 2
cengebretson Oct 7, 2013
8b3a6b3
adding micro template compiler so we can store html files in assets
cengebretson Oct 8, 2013
739aab5
adding jasmine files as assets that can be used to run tests
cengebretson Oct 8, 2013
4b9b094
using fs-extra for directory/file functions
cengebretson Oct 8, 2013
55474f8
moving stitch commonjs file to assets as a template to load
cengebretson Oct 9, 2013
4658afb
helper method to copy files
cengebretson Oct 9, 2013
8a843e2
updates to generate the test runner index.html file with correct paths
cengebretson Oct 9, 2013
279d53b
updates assets for jasmine, eventually will have a file that lists th…
cengebretson Oct 9, 2013
c7109ba
new compiled js files
cengebretson Oct 9, 2013
d8c39b2
incorporate phantom runner into hem project
cengebretson Oct 9, 2013
62e5a8c
use all apps when finding test dependencies as sometimes there may on…
cengebretson Oct 9, 2013
045e222
tweaks to phantom test runner to allow different reporting styles
cengebretson Oct 9, 2013
14d86ed
more tweaks to the phantom test runner, still need to get multiple te…
cengebretson Oct 10, 2013
6e211f7
handle timeout conditions with a little more grace
cengebretson Oct 10, 2013
1da10bc
making phantom an optionalDependency, if not present then open test f…
cengebretson Oct 10, 2013
2d04651
fix issue with log require in versioning module
cengebretson Oct 10, 2013
32fa489
setting up custom() method option for slug files that an instance of …
cengebretson Oct 10, 2013
a86e234
updated readme
cengebretson Oct 10, 2013
476cadd
ok, try this one more time, should hopefully fix the issues.
cengebretson Oct 10, 2013
fef7b2a
better error message
cengebretson Oct 10, 2013
ab1e804
setting incorrect home variable
cengebretson Oct 10, 2013
a2577fe
making events its own module and adding watch event
cengebretson Oct 11, 2013
ec9dbe4
adding event that returns the connect app used by the server
cengebretson Oct 11, 2013
01381e2
have hem work with both json and modules.export.config
cengebretson Oct 11, 2013
613bf4d
tweaks to testing configuration and some notes/comments on additional…
cengebretson Oct 11, 2013
982a614
updated js files and version bump
cengebretson Oct 11, 2013
a75dccc
making tests work in watch mode using events and async library
cengebretson Oct 14, 2013
4a65d5c
print error instead of throwing an exception
cengebretson Oct 14, 2013
7d75a39
adding some compile caching to hem in server/watch mode
cengebretson Oct 22, 2013
b64e2c3
getting karma close to working and tweaking some of the hem default c…
cengebretson Oct 24, 2013
16414a2
making it possible to bind to all ips
cengebretson Oct 29, 2013
df4cfe6
bid spolling
cengebretson Nov 5, 2013
a8b953c
fixing host command line option
cengebretson Nov 13, 2013
b881b24
updated package #
cengebretson Nov 13, 2013
60d3038
updating jade compiler to work with both old/new jade compile api
cengebretson Jan 8, 2014
ba29198
fix command line argument switch
cengebretson Jan 13, 2014
4c872db
compiled with latest coffeescript
cengebretson Apr 10, 2014
6e16cfa
new versioning based off environment variable.
cengebretson Apr 10, 2014
b7de477
updated package #
cengebretson Apr 10, 2014
10dea25
increase phantom timeout
cengebretson Apr 30, 2014
30db67e
refactoring of phantom/karma test runners, should be somewhat usable …
cengebretson Apr 30, 2014
7af9923
updated package version and compiled js files
cengebretson Apr 30, 2014
28f2c6d
added comments, updated modules
cengebretson Apr 30, 2014
427533f
test index file not being generated correctly for windows
cengebretson May 19, 2014
63b526c
don't overwrite test index file if it already exists
cengebretson May 19, 2014
0a3ad0b
allowing junit reporter options
cengebretson Jun 2, 2014
3c7b96b
added karma junit reporter
cengebretson Jun 3, 2014
6d8cf8f
include suite name in junit format
cengebretson Jun 3, 2014
a73ee7a
removing build as a step for running tests, use watch instead
cengebretson Jul 2, 2014
7215ca4
updated the way coffeescript is required
cengebretson Jan 28, 2015
a226820
need to match route on lower case to hit all cases
cengebretson Jan 28, 2015
879020a
latest karma tweeks
cengebretson Jan 28, 2015
1c90513
updated to latest coffeescript and karma, bumped version number
cengebretson Jan 28, 2015
6e5e52c
latest compiled js files
cengebretson Jan 28, 2015
46c3c97
forgot one
cengebretson Jan 28, 2015
6ea03e9
some minor output tweaks
cengebretson Feb 11, 2015
f24b844
more effecient html templates
cengebretson Feb 19, 2015
4355ffc
another attempt at html minify
cengebretson Feb 19, 2015
c952778
make sure templates have their own compiler, was causing errors durin…
cengebretson Feb 19, 2015
a8e5963
going back to simple html whitespace remover
cengebretson Feb 20, 2015
94d2fa9
ok maybe time to get eat some surgery stuff
cengebretson Feb 20, 2015
b765ff5
nom nom nom food
cengebretson Feb 20, 2015
ee3bbfb
I should probably stick to scuplty art
cengebretson Feb 20, 2015
6480bc5
updated coffeescript to 1.9.1
cengebretson Feb 20, 2015
e215214
make sure build is always run before testing and better checks for au…
cengebretson May 6, 2015
c0187ba
updated examples and readme
cengebretson Nov 30, 2015
7e48d49
updates to readme
cengebretson Dec 1, 2015
d012e00
additional package updates
cengebretson Dec 4, 2015
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
263 changes: 159 additions & 104 deletions README.md

Large diffs are not rendered by default.

53 changes: 53 additions & 0 deletions assets/defaults/spine.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
"root": "",
"route": "/",

"version": {
"type": "package",
"files": [ "public/index.html" ]
},

"css": {
"src": [
"css"
],
"target": "public/application.css"
},

"js": {
"commonjs": "require",
"libs": [
"lib"
],
"modules": [
"jqueryify",
"spine",
"spine/lib/local",
"spine/lib/list",
"spine/lib/ajax",
"spine/lib/route",
"spine/lib/manager",
"spine/lib/relation"
],
"src": [
"app"
],
"target": "public/application.js"
},

"static": {
"/": "public",
"/test": "test/public"
},

"test": {
"commonjs": "specs",
"libs": [],
"depends": [],
"src": [
"test/specs"
],
"target": "test/public/specs.js"
}
}

62 changes: 62 additions & 0 deletions assets/stitch.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
(function(/*! Stitch !*/) {
if (!this.<%=identifier%>) {
var modules = {}, cache = {}, require = function(name, root) {
var path = expand(root, name), indexPath = expand(path, './index'), module, fn;
module = cache[path] || cache[indexPath]
if (module) {
return module.exports;
} else if (fn = modules[path] || modules[path = indexPath]) {
module = {id: path, exports: {}};
try {
cache[path] = module;
fn(module.exports, function(name) {
return require(name, dirname(path));
}, module);
return module.exports;
} catch (err) {
delete cache[path];
throw err;
}
} else {
throw 'module ' + name + ' not found';
}
}, expand = function(root, name) {
var results = [], parts, part;
if (/^\.\.?(\\/|$)/.test(name)) {
parts = [root, name].join('/').split('/');
} else {
parts = name.split('/');
}
for (var i = 0, length = parts.length; i < length; i++) {
part = parts[i];
if (part == '..') {
results.pop();
} else if (part != '.' && part != '') {
results.push(part);
}
}
return results.join('/');
}, dirname = function(path) {
return path.split('/').slice(0, -1).join('/');
};
this.<%=identifier%> = function(name) {
return require(name, '');
}
this.<%=identifier%>.define = function(bundle) {
for (var key in bundle)
modules[key] = bundle[key];
};
this.<%=identifier%>.modules = modules;
this.<%=identifier%>.cache = cache;
}
return this.<%=identifier%>.define;
}).call(this)({
<%
var output = [];
for (var i = 0; i < modules.length; i++) {
output.push(JSON.stringify(modules[i].id) + ": function(exports, require, module) { " + modules[i].compile() + " }" );
}
%>
<%= output.join(',') %>
});

62 changes: 0 additions & 62 deletions assets/testacular.conf.js

This file was deleted.

101 changes: 101 additions & 0 deletions assets/testing/index.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf8" />
<title>Hem Test Runner</title>
</head>
<body>

<script type="text/javascript">
(function() {

function startTests() {

// create jasmine environment
var jasmineEnv = jasmine.getEnv();
jasmineEnv.updateInterval = 250;

/**
Create the `HTMLReporter`, which Jasmine calls to provide results of each spec
and each suite. The Reporter is responsible for presenting results to the user.
*/
var htmlReporter = new jasmine.HtmlReporter();
jasmineEnv.addReporter(htmlReporter);

/**
Delegate filtering of specs to the reporter. Allows for clicking on single suites
or specs in the results to only run a subset of the suite.
*/
jasmineEnv.specFilter = function(spec) {
return htmlReporter.specFilter(spec);
};

jasmineEnv.execute();
}

window.onload = function() {
var http = (location.protocol === "http:")
var urlsToLoad = []
var filesToLoad = []

// files to load
<% for (var i = 0; i < files.length; i++) { %>
urlsToLoad.push("<%= files[i].url %>")
filesToLoad.push("<%= files[i].path %>")
<% } %>

// determine if using http to load files
var files = http ? urlsToLoad : filesToLoad

// function to create elements to load css/js
var loadCssOrScript = function(position) {
// start tests if everything loaded
if (position >= files.length) {
startTests();
return;
}

// create document elements
var head = document.getElementsByTagName("HEAD").item(0);
var child;
var source = files[position];

// handle js
if (source.indexOf(".js") > -1) {

child = document.createElement("script");
child.type = "text/javascript";
child.src = source;

// handle css
} else {
// skip css files for phantomjs
if (navigator.userAgent.indexOf("PhantomJS") > -1) {
loadCssOrScript(++position);
return
}
child = document.createElement("link");
child.setAttribute("rel", "stylesheet")
child.type = "text/css";
child.href = source;
}

// handle next call
child.onload = function() {
loadCssOrScript(++position);
}

// add child to document to load
head.appendChild(child);

}

// dynamically load application and specs javascript files
loadCssOrScript(0)
};


})();
</script>
</body>
</html>
Loading