Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: jashkenas/coffeescript
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2.0.0-beta2
Choose a base ref
...
head repository: jashkenas/coffeescript
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2.0.0-beta3
Choose a head ref
  • 17 commits
  • 70 files changed
  • 6 contributors

Commits on May 17, 2017

  1. 2.0.0-beta2 docs

    GeoffreyBooth committed May 17, 2017
    Configuration menu
    Copy the full SHA
    cd6daf0 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2017

  1. Fix #4544: postfix conditional on first line of implicit object (#4554)

    * support postfix conditional on first line of implicit object
    
    * cleanup cleanup
    
    * also fixes #2051, added test
    Julian Rosse authored and GeoffreyBooth committed May 30, 2017
    Configuration menu
    Copy the full SHA
    63b109a View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2017

  1. [CS2] Support for CSX - equivalent of JSX (#4551)

    * CSX implementation
    
    * fixed comment, used toJS, added error tests, fixed error in identifier regex, fixed interpolation inside attributes value and added test
    
    * added missing test for bare attributes, split attribute and indentifier regex, fixed checking for closing tags closing angle bracket
    
    * Refactor tests that compare expected generated JavaScript with actual generated JavaScript to use common helper; add colors to error message to make differences easier to read
    
    * Better match the style of the rest of the codebase
    
    * Remove unused function
    
    * More style fixes
    
    * Allow unspaced less-than operator when not using CSX
    
    * Replace includesCSX with a counter and simplify the unspaced operator logic
    
    * Fixed indexing and realized that I completely enabled the tight spacing, added a test for it too
    
    * Style fixes
    xixixao authored and GeoffreyBooth committed Jun 7, 2017
    Configuration menu
    Copy the full SHA
    dc0fb85 View commit details
    Browse the repository at this point in the history
  2. Fix REPL assignment (#4559)

    xixixao authored and GeoffreyBooth committed Jun 7, 2017
    Configuration menu
    Copy the full SHA
    48c7deb View commit details
    Browse the repository at this point in the history

Commits on Jun 9, 2017

  1. Configuration menu
    Copy the full SHA
    5b7a777 View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2017

  1. Fix immediately invoked named classes (#4569)

    Fixes #4436.
    connec authored and GeoffreyBooth committed Jun 13, 2017
    Configuration menu
    Copy the full SHA
    76e70a6 View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2017

  1. [CS2] Restore bound class methods via runtime check to avoid prematur…

    …e calling of bound method before binding (#4561)
    
    * bound method runtime check
    
    * restore bound method tests
    
    * bound method tests
    
    * test bound method in prop-named class
    
    * run check against parent class
    
    * dummy commit
    
    * remove comment
    
    * rename to boundMethodCheck
    
    * fixes from code review
    
    * use ref to own class for check
    
    * fixes from code review
    
    * remove unneeded param
    Julian Rosse authored and GeoffreyBooth committed Jun 14, 2017
    Configuration menu
    Copy the full SHA
    9a48566 View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2017

  1. Fix #4564: indent closes implicit object (#4570)

    * indent closes implicit object [Fixes #4564]
    
    * add test for just implicit object
    
    * remove stray lib file
    Julian Rosse authored and GeoffreyBooth committed Jun 15, 2017
    Configuration menu
    Copy the full SHA
    5e90b22 View commit details
    Browse the repository at this point in the history
  2. [CS2] CLI: Test option parsing for current CLI (#4565)

    * intermediate save
    
    * add note saying where OptionParser is used in coffee command
    
    * add some more work
    
    * fix flatten functions
    
    * refactor tests
    
    * add basic test
    
    * remove unused file
    
    * compilation now hangs
    
    * remove unnecessary changes
    
    * add tests!!!
    
    * clarify a test
    Danny McClanahan authored and GeoffreyBooth committed Jun 15, 2017
    Configuration menu
    Copy the full SHA
    31cd782 View commit details
    Browse the repository at this point in the history

Commits on Jun 21, 2017

  1. Fix #4579: postfix for in object literals (#4581)

    * postfix for on first line of implicit object
    
    * issue numbers
    
    * handle until and while similarly
    Julian Rosse authored and GeoffreyBooth committed Jun 21, 2017
    Configuration menu
    Copy the full SHA
    0619a7a View commit details
    Browse the repository at this point in the history
  2. [CS2] destructured nested defaults [fixes #4566] (#4574)

    * destructured nested defaults [fixes #4566]
    
    * don't parenthesize nested assigns
    Julian Rosse authored and GeoffreyBooth committed Jun 21, 2017
    Configuration menu
    Copy the full SHA
    26f6fa6 View commit details
    Browse the repository at this point in the history

Commits on Jun 26, 2017

  1. [CS2] Fix for comma after function glyph [#1043] (#4588)

    * comma after function glyph [#1043]
    
    * test fat arrow
    
    * chain after function glyph [#3446] [#3845]
    Julian Rosse authored and GeoffreyBooth committed Jun 26, 2017
    Configuration menu
    Copy the full SHA
    a3a1fb0 View commit details
    Browse the repository at this point in the history
  2. [CS2] JSX documentation, Try CoffeeScript improvements (#4583)

    * Update browser compiler
    
    * Argument parsing tests require CommonJS environment
    
    * JSX section in the docs
    
    * Breaking change note for < and > operators
    
    * Fix JSX example
    
    * Try CoffeeScript improvements: set the hash automatically, remove ‘link’ button, automatically save code in localStorage
    
    * Fix the code editors’ handling of tab-indented code
    
    * Fix JSX example to work with React
    
    * Compiled, not rendered
    GeoffreyBooth authored Jun 26, 2017
    Configuration menu
    Copy the full SHA
    1f31073 View commit details
    Browse the repository at this point in the history

Commits on Jun 30, 2017

  1. [CS2] Fix #3906: handle indentation inside indented chain (#4587)

    * safe missing end token error [Fixes #3906]
    
    * handle indentation inside indented chain [Fixes #3906]
    Julian Rosse authored and GeoffreyBooth committed Jun 30, 2017
    Configuration menu
    Copy the full SHA
    b1d2061 View commit details
    Browse the repository at this point in the history
  2. disallow inline chained call after func glyph (#4590)

    Julian Rosse authored and GeoffreyBooth committed Jun 30, 2017
    Configuration menu
    Copy the full SHA
    58c6086 View commit details
    Browse the repository at this point in the history
  3. [CS2] Destructuring object spreads (#4493)

    * Don’t confuse the syntax highlighter
    
    * Comment Assign::compilePatternMatch a bit
    
    * Assignment expressions in conditionals are a bad practice
    
    * Rename `wrapInBraces` to `wrapInParentheses`, to set the stage for future `wrapInBraces` that uses `{` and `wrapInBrackets` that uses `[`
    
    * Correct comment
    
    * object destructuring
    
    * Allow custom position of the rest element.
    
    * Output simple array destructuring assignments to ES2015
    
    * Output simple object destructured assignments to ES2015
    
    * Compile shorthand object properties to ES2015 shorthand properties
    
    This dramatically improves the appearance of destructured imports.
    
    * Don’t confuse the syntax highlighter
    
    * Comment Assign::compilePatternMatch a bit
    
    * Assignment expressions in conditionals are a bad practice
    
    * Rename `wrapInBraces` to `wrapInParentheses`, to set the stage for future `wrapInBraces` that uses `{` and `wrapInBrackets` that uses `[`
    
    * object destructuring
    
    * Allow custom position of the rest element.
    
    * rest element in object destructuring
    
    * rest element in object destructuring
    
    * fix string interpolation
    
    * merging
    
    * fixing splats in object literal
    
    * Rest element in parameter destructuring
    
    * merging with CS2
    
    * merged with CS2
    
    * Add support for the object spread initializer. https://github.com/tc39/proposal-object-rest-spread/blob/master/Spread.md
    
    * Fix misspellings, trailing whitespace, other minor details
    
    * merging with beta2
    
    * refactor object spread properties
    
    * small fix
    
    * - Fixed object spread function parameters.
    - Clean up "Assign" and moved all logic for object rest properties in single method (compileObjectDestruct).
    - Add helper function "objectWithoutKeys" to the "UTILITIES" for use with object rest properties,
      e.g. {a, b, r...} = obj => {a, b} = obj, r = objectWithoutKeys(...)
    - Clean up "Obj" and moved all logic for object spread properties in single method (compileSpread).
    - Clean up "Code".
    - Add method "hasSplat" to "Obj" and "Value" for checking if Obj contains the splat.
    - Enable placing spread syntax triple dots on either right or left, per #85 (coffeescript6/discuss#85)
    
    * Fixed typos
    
    * Remove unused code
    
    * Removed dots (e.g. splat) on the left side from the grammar
    
    * Initial release for deep spread properties, e.g. obj2 = {obj.b..., a: 1} or {obj[b][c]..., d: 7}
    Tests need to be prepared!
    
    * 1. Object literal spread properties
    
    Object literals:
    - obj = { {b:{c:{d:1}}}..., a:1 }
    
    Parenthetical:
    - obj = { ( body ), a:1 }
    - obj = { ( body )..., a:1 }
    
    Invocation:
    - obj = { ( (args) -> ... )(params), a:1 }
    - obj = { ( (args) -> ... )(params)..., a:1 }
    - obj = { foo(), a:1 }
    - obj = { foo()..., a:1 }
    
    2. Refactor, cleanup & other optimizations.
    
    * Merged with 2.0
    
    * Cleanup
    
    * Some more cleanup.
    
    * Fixed error with freeVariable and object destructuring.
    
    * Fixed errors with object spread properties.
    
    * Improvements, fixed errors.
    
    * Minor improvement.
    
    * Minor improvements.
    
    * Typo.
    
    * Remove unnecessary whitespace.
    
    * Remove unnecessary whitespace.
    
    * Changed few "assertErrorFormat" tests since parentheses are now allowed in the Obj.
    
    * Whitespace cleanup
    
    * Comments cleanup
    
    * fix destructured obj param declarations
    
    * refine fix; add test
    
    * Refactor function args ({a, b...})
    
    * Additional tests for object destructuring in function argument.
    
    * Minor improvement for object destructuring variable declaration.
    
    * refactor function args ({a, b...}) and ({a, b...} = {}); Obj And Param cleanup
    
    * fix comment
    
    * Fix object destructuring variable declaration.
    
    * more tests with default values
    
    * fix typo
    
    * Fixed default values in object destructuring.
    
    * small fix
    
    * Babel’s tests for object rest spread
    
    * Style: spaces after colons in object declarations
    
    * Cleanup comments
    
    * Simplify Babel tests
    
    * Fix comments
    
    * Fix destructuring with splats in multiple objects
    
    * Add test for default values in detsructuring assignment with splats
    
    * Handle default values when assigning to object splats
    
    * Rewrite traverseRest to fix handling of dynamic keys
    
    * Fix double parens around destructuring with splats
    
    * Update compileObjectDestruct comments
    
    * Improve formatting of top-level destructures with splats and tidy parens
    
    * Added a bigger destructuring-with-defaults test and fixed a bug
    
    * Refactor destructuring grammar to allow additional forms
    
    * Add a missing case to ObjSpreadExpr
    
    * These tests shouldn’t run in the browser
    
    * Fix test.html
    GeoffreyBooth authored Jun 30, 2017
    Configuration menu
    Copy the full SHA
    a7a6006 View commit details
    Browse the repository at this point in the history
  4. 2.0.0-beta3 (#4594)

    * Don’t confuse the syntax highlighter
    
    * Comment Assign::compilePatternMatch a bit
    
    * Assignment expressions in conditionals are a bad practice
    
    * Rename `wrapInBraces` to `wrapInParentheses`, to set the stage for future `wrapInBraces` that uses `{` and `wrapInBrackets` that uses `[`
    
    * Correct comment
    
    * object destructuring
    
    * Allow custom position of the rest element.
    
    * Output simple array destructuring assignments to ES2015
    
    * Output simple object destructured assignments to ES2015
    
    * Compile shorthand object properties to ES2015 shorthand properties
    
    This dramatically improves the appearance of destructured imports.
    
    * Don’t confuse the syntax highlighter
    
    * Comment Assign::compilePatternMatch a bit
    
    * Assignment expressions in conditionals are a bad practice
    
    * Rename `wrapInBraces` to `wrapInParentheses`, to set the stage for future `wrapInBraces` that uses `{` and `wrapInBrackets` that uses `[`
    
    * object destructuring
    
    * Allow custom position of the rest element.
    
    * rest element in object destructuring
    
    * rest element in object destructuring
    
    * fix string interpolation
    
    * merging
    
    * fixing splats in object literal
    
    * Rest element in parameter destructuring
    
    * merging with CS2
    
    * merged with CS2
    
    * Add support for the object spread initializer. https://github.com/tc39/proposal-object-rest-spread/blob/master/Spread.md
    
    * Fix misspellings, trailing whitespace, other minor details
    
    * merging with beta2
    
    * refactor object spread properties
    
    * small fix
    
    * - Fixed object spread function parameters.
    - Clean up "Assign" and moved all logic for object rest properties in single method (compileObjectDestruct).
    - Add helper function "objectWithoutKeys" to the "UTILITIES" for use with object rest properties,
      e.g. {a, b, r...} = obj => {a, b} = obj, r = objectWithoutKeys(...)
    - Clean up "Obj" and moved all logic for object spread properties in single method (compileSpread).
    - Clean up "Code".
    - Add method "hasSplat" to "Obj" and "Value" for checking if Obj contains the splat.
    - Enable placing spread syntax triple dots on either right or left, per #85 (coffeescript6/discuss#85)
    
    * Fixed typos
    
    * Remove unused code
    
    * Removed dots (e.g. splat) on the left side from the grammar
    
    * Initial release for deep spread properties, e.g. obj2 = {obj.b..., a: 1} or {obj[b][c]..., d: 7}
    Tests need to be prepared!
    
    * 1. Object literal spread properties
    
    Object literals:
    - obj = { {b:{c:{d:1}}}..., a:1 }
    
    Parenthetical:
    - obj = { ( body ), a:1 }
    - obj = { ( body )..., a:1 }
    
    Invocation:
    - obj = { ( (args) -> ... )(params), a:1 }
    - obj = { ( (args) -> ... )(params)..., a:1 }
    - obj = { foo(), a:1 }
    - obj = { foo()..., a:1 }
    
    2. Refactor, cleanup & other optimizations.
    
    * Merged with 2.0
    
    * Cleanup
    
    * Some more cleanup.
    
    * Fixed error with freeVariable and object destructuring.
    
    * Fixed errors with object spread properties.
    
    * Improvements, fixed errors.
    
    * Minor improvement.
    
    * Minor improvements.
    
    * Typo.
    
    * Remove unnecessary whitespace.
    
    * Remove unnecessary whitespace.
    
    * Changed few "assertErrorFormat" tests since parentheses are now allowed in the Obj.
    
    * Whitespace cleanup
    
    * Comments cleanup
    
    * fix destructured obj param declarations
    
    * refine fix; add test
    
    * Refactor function args ({a, b...})
    
    * Additional tests for object destructuring in function argument.
    
    * Minor improvement for object destructuring variable declaration.
    
    * refactor function args ({a, b...}) and ({a, b...} = {}); Obj And Param cleanup
    
    * fix comment
    
    * Fix object destructuring variable declaration.
    
    * more tests with default values
    
    * fix typo
    
    * Fixed default values in object destructuring.
    
    * small fix
    
    * Babel’s tests for object rest spread
    
    * Style: spaces after colons in object declarations
    
    * Cleanup comments
    
    * Simplify Babel tests
    
    * Fix comments
    
    * Fix destructuring with splats in multiple objects
    
    * Add test for default values in detsructuring assignment with splats
    
    * Handle default values when assigning to object splats
    
    * Rewrite traverseRest to fix handling of dynamic keys
    
    * Fix double parens around destructuring with splats
    
    * Update compileObjectDestruct comments
    
    * Improve formatting of top-level destructures with splats and tidy parens
    
    * Added a bigger destructuring-with-defaults test and fixed a bug
    
    * Refactor destructuring grammar to allow additional forms
    
    * Add a missing case to ObjSpreadExpr
    
    * These tests shouldn’t run in the browser
    
    * Fix test.html
    
    * Fix docs scroll position getting screwed up by CodeMirror initialization
    
    * Breaking change documentation about => (fixes #4593)
    
    * Spread/rest syntax documentation
    
    * Documentation about bound class methods
    
    * 2.0.0-beta3 changelog
    
    * Add note about ‘lib’
    
    * Fix accidentally converting this to tabs
    
    * Bump version to 2.0.0-beta3
    
    * Update annotated source and test.html
    GeoffreyBooth authored Jun 30, 2017
    Configuration menu
    Copy the full SHA
    704924c View commit details
    Browse the repository at this point in the history
Loading