Skip to content

Commit cea49f3

Browse files
committed
Add changelog page
1 parent 6cdfd51 commit cea49f3

File tree

3 files changed

+136
-1
lines changed

3 files changed

+136
-1
lines changed

docs/docs/.vuepress/configs/pages.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ export default {
44
text: {'en': 'OwnLang', 'ru': 'OwnLang'},
55
pages: [
66
'README.md',
7-
'links.md'
7+
'links.md',
8+
'changelog.md',
89
]
910
},
1011

docs/docs/en/changelog.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Changelog
2+
3+
## 1.5.0
4+
5+
- Added modules `zip`, `gzip`, `okhttp`
6+
- Added functions `std::getBytes`, `std::stringFromBytes`, `std::stripMargin`
7+
- Added JProgressBar, JTextArea, JScrollPane to `forms`, methods for JButton, JTextField and WindowListener
8+
- Added function `joining` to `functional::stream`
9+
- Added array properties: `arr.length`, `arr.isEmpty()`, `arr.joinToString(...)`
10+
- Added null coalesce operator `??`
11+
- Added basic support for classes
12+
- Strict string to number conversion
13+
- `for` supports iterating strings and arrays with index:
14+
`for ch : "test"`
15+
`for ch, code : "test"`
16+
`for el : arr`
17+
`for el, index : arr`
18+
- Pretty-print for `jsonencode`:
19+
`jsonencode(obj)` — minified json
20+
`jsonencode(obj, 2)` — pretty-print json with 2 spaces indent
21+
- Ability to set options for yaml parser/dumper
22+
- Fixed mysql connection in `jdbc`
23+
- Fixed `str::range` for reversed ranges
24+
- Fixed files::readBytes with offset and length
25+
- Fixed matching class constructor in `java::new`. Ability to instantiate classes with `new` operator
26+
- Other minor changes
27+
28+
29+
## 1.4.0
30+
31+
- Added modules `downloader`, `regex`
32+
- Added functions `std::arraySplice`, `std::default`
33+
- Added constant `std::OwnLang` which stores language version and platform metadata
34+
- Added `peek`, `sorted` to StreamValue
35+
- An ability to import several modules `use ["std", "types", "math"]`
36+
- String internal fields support (length, lower, upper, chars, trim(), startsWith(s), endsWith(s), matches(s), contains(s), equalsIgnoreCase(s), isEmpty()). Also support for extensions: `"%d. %s".sprintf(1, "OwnLang")` -> `sprintf("%d. %s", 1, "OwnLang")`
37+
- Added kawaii-operator `^^`
38+
- Improved REPL mode. Now command history (up key) supported on all platforms. Added autocompletion by Tab key.
39+
- Improved error output
40+
- Updated examples
41+
42+
43+
## 1.3.0
44+
45+
- Function and function call chaining support (`func().func()` and `func()()`)
46+
- Added `takewhile`, `dropwhile`, `stream` functions to `functional` module
47+
- Added `parseInt`, `parseLong`, `toHexString` functions to `std` module
48+
- Added `copy` function to `files` module
49+
- Added `socket`, `base64`, `java`, `forms`, `jdbc` modules
50+
- Improved optimization
51+
- Updated examples
52+
- Minor fixes and improvements
53+
54+
## 1.2.0
55+
56+
- Added `canvasfx`, `date`, `yml`, `aimp` modules
57+
- Updated `std`, `math`, `files`, `functional` modules
58+
- Added `std::ARGS` constant for accessing command-line arguments
59+
- Added REPL mode, Beautifier, Linter, Optimizer
60+
- Fixed error recovering in parser and deadlock in lexer
61+
- Added merging objects operation `map1 + map2`
62+
- Fixed variables scope
63+
- Speed up files reading
64+
- Added NumberValue cache
65+
- Updated Netbeans plugin
66+
- Added examples and help

docs/docs/ru/changelog.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
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

Comments
 (0)