Skip to content

Commit f16296e

Browse files
committed
support coffeescript v1 on older node versions
1 parent 5cf1df1 commit f16296e

File tree

11 files changed

+45
-6
lines changed

11 files changed

+45
-6
lines changed

HISTORY.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
# History
22

33
## v2.7.0 2018 March 7
4-
- Now uses CoffeeScript v2 for compilation
4+
- Now uses CoffeeScript v2 for compilation for node versions which support it (at time of testing that is node v6 and above), otherwise uses CoffeeScript v1
55
- Now compiled with CoffeeScript v2
66
- Updated base files
7-
- Minimum node version is now Node v6, as that is the earliest node version that CoffeeScript v2 supports
87

98
## v2.6.0 2017 April 17
109
- Updated dependencies

package-lock.json

Lines changed: 6 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
"url": "https://github.com/docpad/docpad-plugin-coffeescript.git"
5757
},
5858
"engines": {
59-
"node": ">=6"
59+
"node": ">=0.8"
6060
},
6161
"editions": [
6262
{
@@ -91,6 +91,7 @@
9191
],
9292
"main": "index.js",
9393
"dependencies": {
94+
"coffee-script": "^1.12.7",
9495
"coffeescript": "^2.2.2",
9596
"editions": "^1.3.4"
9697
},

source/coffeescript.plugin.coffee

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
# Import
2-
coffee = require('coffeescript')
31

42
# Export Plugin
53
module.exports = (BasePlugin) ->
@@ -19,6 +17,12 @@ module.exports = (BasePlugin) ->
1917
{inExtension,outExtension,file} = opts
2018
literate = false
2119

20+
# Import
21+
try
22+
coffee = require('coffeescript')
23+
catch
24+
coffee = require('coffee-script')
25+
2226
# CoffeeScript to JavaScript
2327
if (inExtension in ['coffee','litcoffee'] and outExtension in ['js',null]) or (inExtension in ['md','markdown'] and outExtension is 'js' and literate = true)
2428
# Prepare

source/coffeescript.test.coffee

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
1+
# Determine CoffeeScript version
2+
try
3+
require('coffeescript')
4+
coffeescriptVersion = 2
5+
catch
6+
coffeescriptVersion = 1
7+
18
# Test our plugin using DocPad's Testers
29
require('docpad').require('testers').test({
310
pluginPath: __dirname+'/..'
411
testerClass: 'RendererTester'
12+
outExpectedPath: __dirname+"/../test/out-expected-v#{coffeescriptVersion}"
513
})
File renamed without changes.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
(function() {
2+
var a;
3+
4+
a = require('./helpers');
5+
6+
}).call(this);

test/out-expected-v1/md-to-js.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
(function() {
2+
var a;
3+
4+
a = require('./helpers');
5+
6+
}).call(this);
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
(function() {
2+
var greet;
3+
4+
greet = function(arg) {
5+
if (arg === 'Hello') {
6+
return console.log('Goodbye');
7+
}
8+
};
9+
10+
}).call(this);
File renamed without changes.

0 commit comments

Comments
 (0)