coffeescript kompilator napisany w czystym coffeescript, za pomocą małego DSL na górze generatora parsera Jison i jest dostępny jako narzędzie node.js.
Rdzeń kompilator jednak nie zależy od węzła, i mogą być stosowane w innych środowiskach server-side-JavaScript lub w przeglądarce.
Coffeescript używa Python stylu znaczący spacje, więc zakończenia linii są traktowane jako zakończeń kodu oraz
Co nowego w tym wydaniu:.
- Naprawiono błąd wprowadzony w tryb zegarka przy kompilacji wielu 1.9.1 pliki z tą samą nazwą.
- Bugfix dla wydajności całego wyrażeń zawierających tego.
- Dodano Ruby stylu -r opcję do rEPL, co pozwala wymagającym moduł przed wykonaniem z --eval lub --interactive.
- W & # x3c; script type = & quot; text / coffeescript & quot; & # x3e; znaczniki, aby uniknąć ewentualnych żądań przeglądarki dla zduplikowanych plików .coffee, można użyć atrybutu src danych zamiast src.
- Drobne poprawki do IE8, ścisłych wyrażeń regularnych ES5 i Browserify.
Co jest nowa w wersji 1.9.2:
- Poprawiono błąd wprowadzony w tryb zegarka 1.9.1 przy kompilacji wielu plików w tym samym pliku.
- Bugfix dla wydajności całego wyrażeń zawierających tego.
- Dodano Ruby stylu -r opcję do rEPL, co pozwala wymagającym moduł przed wykonaniem z --eval lub --interactive.
- W & # x3c; script type = & quot; text / coffeescript & quot; & # x3e; znaczniki, aby uniknąć ewentualnych żądań przeglądarki dla zduplikowanych plików .coffee, można użyć atrybutu src danych zamiast src.
- Drobne poprawki do IE8, ścisłych wyrażeń regularnych ES5 i Browserify.
Co nowego w wersji 1.9.1:
- coffeescript obsługuje teraz generatory ES6. Generator jest po prostu funkcją, która daje.
- Więcej solidna parsowanie i lepsze komunikaty o błędach na smyczki i regexes. - Szczególnie w odniesieniu do interpolacji
- Zmiana strategii generowania nazw zmiennych wewnętrznych kompilatora.
- Poprawiono kompatybilność z najnowszymi wersjami REPL z węzła i Io.js.
- Różne drobnych poprawek.
Co jest nowa w wersji 1.8.0:
- --join opcja jest teraz CLI przestarzałe.
- Źródło mapy teraz używać .js.map jako rozszerzenie pliku, a nie tylko .map.
- CLI teraz kończy pracę z kodem wyjścia 1, gdy nie udaje się zapisać plik na dysku.
- kompilator nie zawiesza się na niezakończony, pojedynczych cudzysłowów.
- Dane stałej lokalizacji dla interpolacji smyczkowych, które wykonane mapy źródłowe zsynchronizowane.
- marker błąd komunikatów o błędach jest teraz prawidłowo ustawione, jeśli kod jest wcięty z kartami.
- Poprawiono drobny błąd formatowania w źródłowych map-poprawione ślady stosu coffeescript w.
- Operator %% teraz wymusza jego prawy operand tylko raz.
- Teraz można wymagać plików coffeescript z Cakefiles bez konieczności rejestracji kompilator pierwszy.
- coffeescript REPL jest teraz eksportowane i może być wymagane przy użyciu wymagają "coffee-script / repl".
Co nowego w wersji 1.7.0:
- Ulepszone komunikaty o błędach, map źródłowych i stosu śladów. Źródło mapy teraz do aktualizacji użyć // # składnię.
- Główny. teraz zamyka wszystkie otwarte połączenia, co pozwala na prostszą składnię łańcuchowym.
- Można teraz końcowe wcięty, a zatem nie powoduje już nieoczekiwanego błędu.
- Dodane **, // i %% operatorzy i ... ekspansja na liście parametrów i wyrażeń destructuring.
- Formatowanie zebranych uwag bloku została poprawiona.
- Nie więcej -p folderów w systemie Windows.
- Opcje Obiekt przekazany do coffeescript nie jest już zmutowana.
nawiasy
Co nowego w wersji 1.6.3:
- coffeescript REPL pamięta teraz historię pomiędzy sesjami. Tak jak właściwy rEPL powinien.
- Może teraz używać wymagają w węźle, aby załadować pliki Literat coffeescript .coffee.md. W przeglądarce, tekst / literat-coffeescript tagi skryptu.
- Komenda stare kawy --lint została usunięta. To było przydatne podczas pracy nad pierwotnie kompilatora, ale został pobity przez JSHint. Możesz teraz użyć -l przekazać pliki w ciągu stdio posiadające wiedzę.
Co nowego w wersji 1.6.1:
- Poprawiono 1.5.0 regresji z wieloma ukrytych połączeń przeciwko wcięte ukrytego obiektu. Kombinacje ukrytych wywołań funkcji i ukrytych obiektów powinny być ogólnie przetwarzane lepiej -., Ale to nadal nie jest dobry styl zagnieździć je w zbyt dużym stopniu,
- .coffee.md jest teraz również obsługiwane jako rozszerzenie pliku Literat coffeescript, dla istniejących narzędzi. .litcoffee pozostaje kanoniczne jednym.
- Kilka drobnych poprawek okolicznych właściwości członkowskich, związanych metod i super w deklaracji klasy.
Co nowego w wersji 1.5.0:
- coffeescript REPL jest teraz oparte na węźle. js REPL i powinno działać lepiej i bardziej swojsko.
- Wracając jawne wartości od wykonawców jest teraz zabronione. Jeśli chcesz zwrócić dowolną wartość, należy użyć funkcji konstruktora, nie.
- Czy teraz pętli nad tablicy wstecz, bez konieczności ręcznego czynienia z indeksów: dla pozycji w liście przez -1
- lokalizacje źródłowe są obecnie przechowywany w coffeescript AST, choć mapy źródłowe nie są jeszcze emitowane.
Co nowego w wersji 1.4.0:
- coffeescript kompilator Microsoftu teraz paski UTF-8 BOM jeśli istnieje, co pozwala na kompilacji BOM-borked pliki źródłowe.
- Poprawiono węzeł / kompilator amortyzacyjne usuwając registerExtension, a przejście z path.exists do fs.exists.
- Małe poprawek do kompilacji ikona, backticks, krojenie, i błędu dla duplikatów kluczy w literałów obiektów.
Ostrzeżenia
Co nowego w wersji 1.3.2:
- Wewnątrz zagnieżdżonej funkcji wewnątrz metody instancji , to teraz można nazwać bardzo niezawodnie (spacery rekurencyjnie w górę).
- Nazwane zmienne pętlowe nie mają już różne heurystyki scopingu niż inne zmienne lokalne.
- Fix dla ikonami zagnieżdżone w LHS z destructuring zadanie.
- Korekty do naszego czasu kompilacji w trybie ścisłym zabraniające ósemkowe literałów.
Co nowego w wersji 1.3.1:
- REPL ma teraz pod ręką nowy multi-line Tryb wprowadzania dużych bloków kodu. Jest to przydatne, gdy przykłady kopiowania i wklejania do-rEPL. Wejście do trybu multi-liniowy z Ctrl-V. Możesz także teraz wejście bezpośrednio do rury rEPL.
- coffeescript teraz wypisuje Wygenerowane przez coffeescript WERSJI nagłówku na górze każdego skompilowanego pliku.
- warunkowa cesja wcześniej niezdefiniowanych zmiennych a = b lub jest obecnie uważane za błąd składni.
- uszczypnąć się semantyką zadań, które mogą być teraz używane łatwiej symulować nazw: do (x = 1, y = 2) - & # x3e; ...
- Indeksy Loop są teraz zmienne iteracji w pętli i niezmienne między nimi.
- Oba punkty końcowe plasterkiem mogą teraz zostać pominięte w przypadku konsystencji, skutecznie tworząc płytkie kopię listy.
- Dodatkowe poprawki i improvments do kawy --watch poniżej węzła & quot; nowej & quot; złożyć oglądania API. Oglądaj teraz sygnał dźwiękowy będzie domyślnie, jeśli wprowadzi błąd składni w skrypcie obserwowanym. My także teraz ignorować domyślnie ukryte katalogi podczas oglądania rekurencyjnie.
Co nowego w wersji 1.2.0:
- Wiele ulepszeń kawy --watch i - dołączyć. Możesz teraz używać zarówno razem, jak dodawanie i usuwanie plików i katalogów w folderze --watch'd.
- Ochrona rzut mogą być stosowane jako część wyrażenia.
- komentarze bloku na początku pliku pojawi się poza opakowaniu zamknięcia bezpieczeństwa.
- Poprawiono szereg drobnych 1.1.3 regresji, mających do czynienia z następującymi po nich operatorów i niedokończonych wierszy i bardziej poważnej 1.1.3 regresji, które spowodowały funkcje związany w związanych funkcji klasy mają to niewłaściwe.
Co nowego w wersji 1.1.3:
- coffeescript jest skompilowany JS teraz próbuje kosmicznych rzeczy i zachować czytelny, jak widać na przykładach z tej strony.
- Czy teraz wywołanie super w metodach klasy w organach poziomu klasy, i związał metod klasy teraz zachować ich właściwym kontekście.
- JavaScript zawsze obsługiwane numery ósemkowe 010 jest 8, a liczb szesnastkowych 0xf jest 15, ale coffeescript obsługuje również liczb binarnych. 0b10 jest 2
- Moduł coffeescript została zagnieżdżona w podkatalogu, aby ułatwić wymagają poszczególne składniki oddzielnie, bez konieczności korzystania z KMP. Na przykład, po dodaniu folder coffeescript do ścieżki: require ('coffee-skrypt / lexer')
- Jest nowy & quot; Link & quot; wyposażone w Spróbuj coffeescript na tej stronie. Użyj go, aby uzyskać shareable odnośnika do np skryptu.
- kawy --watch posiadają teraz działa tylko na node.js 0.6.0 i wyższe, ale teraz również działa poprawnie w systemie Windows.
Co nowego w wersji 1.1.2:
- coffeescript wykorzystuje natywne Function.prototype.bind dla związane w miarę dostępności literały funkcji.
- Poprawki dla: komentarz formatowania bloku = kompilacja, ukryte połączenia przeciwko struktur kontroli, niejawny wywołanie bloku try / catch, o zmiennej liczbie argumentów argumenty wycieka z zakresu lokalnej, numery linii w błędy składni następujące heregexes, dostęp do nieruchomości na nawiasach liczby literałów , związany metod klasy i super z nazwami zastrzeżonymi, a remontu REPL, kolejne średniki zebranych, komentarzy blokowych w domyśle zwanych obiektów i błędu Chrome.
Co nowego w wersji 1.1.1:.
- wydanie poprawkowe dla klas z zewnętrznych funkcji konstruktora
Co nowego w wersji 1.1.0:
- Po uruchomieniu pliku wykonywalnego, poprzez kawy i process.argv przyjaciele teraz zgłosić kawę zamiast węzła.
- Lepsza kompatybilność z node.js zmian moduł 0.4.x odnośników.
- Wyjście w rEPL jest teraz kolorowanie, jak węzeł jest.
- podając swoje imię konkatenowanych CoffeeScripts podczas korzystania --join jest obecnie obowiązkowe.
- Fix dla podziału związku Lexing / = jako regex przypadkowo.
- Wszystkie znaczniki text / coffeescript powinien wykonać w kolejności są one wliczone w cenę.
- Naprawiono problem z rozszerzonymi funkcjami zewnętrznych wykorzystujących podklasy konstruktora.
- Poprawiono krawędzi przypadku nieskończonej pętli w addImplicitParentheses.
- Poprawiono wykładnicza spowolnienie z długich łańcuchów wywołań funkcji.
- Globals nie przedostają się do coffeescript rEPL.
- splatted parametry deklarowane są lokalne dla funkcji.
Co nowego w wersji 1.0.1:.
- Naprawiono błąd, lexer z identyfikatorami Unicode
- Aktualizacja rEPL dla kompatybilności z node.js 0.3.7.
- Poprawiono wymagających ścieżek względnych w repl.
- doczepiany zwrot i powrót undefined teraz zoptymalizowany dalej.
- Zatrzymano wymagające podstawowej node.js & quot; util & quot; moduł kopii zgodności z node.js 0.2.5.
- Naprawiono przypadek, gdy warunkowa powrót spowodowałby fallthrough w instrukcji switch.
- Zoptymalizowane puste obiekty w cesją destructuring.
Co nowego w wersji 0.6.2:
- Komenda kawy będzie teraz zachować strukturę katalogów przy kompilacji Katalog pełen skryptów. Naprawiono dwa braki, które uniemożliwiają kompilator coffeescript od biegu na żywo w programie Internet Explorer. Jest teraz składnia komentarzy blokowych, w duchu podobnym do heredocs coffeescript jest. ECMA Harmony DRY stylu pasujące do wzorca jest teraz obsługiwana, w których nazwa obiektu jest taka sama jak nazwa wartości: {nazwa, długość}: funk. Pasujące do wzorca jest obecnie dozwolone w obrębie zmiennych zrozumieniem. chyba, że jest teraz dozwolone w blokach. aż pętle dodano jako odwrotność while. Oświadczenia przełączników mogą teraz bez klauzul obiektów przełącznik. Kompatybilny z node.js v0.1.95.
Wymagania :
- node.js 0.8.0 lub wyższej,
Komentarze nie znaleziono