|
| 1 | +# История изменений |
| 2 | + |
| 3 | +## 1.5.0 |
| 4 | + |
| 5 | +- Добавлены модули `zip`, `gzip`, `okhttp` |
| 6 | +- Добавлены функции `std::getBytes`, `std::stringFromBytes`, `std::stripMargin` |
| 7 | +- В `forms` добавлены JProgressBar, JTextArea, JScrollPane, методы для JButton, JTextField и WindowListener |
| 8 | +- В `functional::stream` добавлена функция `joining` |
| 9 | +- Добавлены свойства и функции для массивов: `arr.length`, `arr.isEmpty()`, `arr.joinToString(...)` |
| 10 | +- Добавлен оператор объединения с null `??` (null coalesce) |
| 11 | +- Добавлены классы (пока без наследования, как структура) |
| 12 | +- Строгое преобразование строк в числа (раньше int("test") выдавало 0, а теперь ошибку) |
| 13 | +- В `for` теперь можно итерировать строки и массивы с индексом: |
| 14 | + `for ch : "test"` |
| 15 | + `for ch, code : "test"` |
| 16 | + `for el : arr` |
| 17 | + `for el, index : arr` |
| 18 | +- В jsonencode можно задать отступ для читабельного форматирования: |
| 19 | + `jsonencode(obj)` — минифицированный json |
| 20 | + `jsonencode(obj, 2)` — pretty-print с отступом в 2 пробела |
| 21 | +- Возможность задать параметры парсера/дампера yaml |
| 22 | +- Исправлено подключение к mysql в модуле `jdbc` |
| 23 | +- Исправлен `str::range` для реверсивных промежутков |
| 24 | +- Исправлена функция files::readBytes с заданными offset и length |
| 25 | +- Исправлен поиск подходящего конструктора класса в `java::new`, так же можно инстанцировать класс через оператор new |
| 26 | +- Другие мелкие изменения |
| 27 | + |
| 28 | + |
| 29 | +## 1.4.0 |
| 30 | + |
| 31 | +- Добавлены модули `downloader`, `regex` |
| 32 | +- Добавлены функции `std::arraySplice`, `std::default` |
| 33 | +- Добавлена константа `OwnLang` в модуль `std`, содержащая метаинформацию о версии языка и платформы |
| 34 | +- В StreamValue добавлены функции `peek`, `sorted` |
| 35 | +- Возможность импортировать сразу несколько модулей `use ["std", "types", "math"]` |
| 36 | +- Поддержка внутренних полей и функций у строк (length, lower, upper, chars, trim(), startsWith(s), endsWith(s), matches(s), contains(s), equalsIgnoreCase(s), isEmpty()). Также доступны автоматические функции расширения: `"%d. %s".sprintf(1, "OwnLang")` -> `sprintf("%d. %s", 1, "OwnLang")` |
| 37 | +- Добавлен kawaii-оператор `^^` для возможного переопределения |
| 38 | +- Улучшен режим REPL, теперь история команд (клавиша вверх) поддерживается на всех платформах, а по табу теперь всплывают подсказки автодополнения |
| 39 | +- Немного улучшен вывод ошибок |
| 40 | +- Обновлены примеры |
| 41 | + |
| 42 | + |
| 43 | +## 1.3.0 |
| 44 | + |
| 45 | +- Поддержка цепочек функций и функциональных вызовов (`func().func()` и `func()()`) |
| 46 | +- Добавлены функции `takewhile`, `dropwhile`, `stream` в модуль `functional` |
| 47 | +- Добавлены функции `parseInt`, `parseLong`, `toHexString` в модуль `std` |
| 48 | +- Добавлена функция `copy` в модуль `files` |
| 49 | +- Добавлены модули `socket`, `base64`, `java`, `forms`, `jdbc` |
| 50 | +- Улучшена оптимизация |
| 51 | +- Обновлены примеры |
| 52 | +- Мелкие исправления и улучшения |
| 53 | + |
| 54 | + |
| 55 | +## 1.2.0 |
| 56 | + |
| 57 | +- Добавлены модули `canvasfx`, `date`, `yml`, `aimp` |
| 58 | +- Обновлены модули `std`, `math`, `files`, `functional` |
| 59 | +- Добавлена константа `std::ARGS` для доступа к аргументам командной строки |
| 60 | +- Добавлен режим REPL, Beautifier, линтер, оптимизатор |
| 61 | +- Добавлена операция слияния объектов `map1 + map2` |
| 62 | +- Исправлено восстановление при ошибках парсинга и зависание в лексере |
| 63 | +- Исправлена область видимости переменных |
| 64 | +- Ускорено чтение файлов |
| 65 | +- Добавлен кэш числовых значений |
| 66 | +- Обновлён плагин для Netbeans |
| 67 | +- Добавлены примеры и помощь |
| 68 | + |
0 commit comments