1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

changelog: more 0.3.3 features

This commit is contained in:
Alexander Medvednikov 2023-01-30 21:44:18 +01:00
parent 6b20c57246
commit 2d51379f00

View File

@ -2,7 +2,7 @@
*30 Jan 2023* *30 Jan 2023*
**wip** **wip**
- Accessing a pointer map value requires an `or {}` block outside `unsafe`. - Accessing a pointer map value requires an `or {}` block outside `unsafe`.
- `math.vec` module for generic vector math. - `math.vec` module for generic vector math including 2D, 3D, and 4D vector operations.
- `go foo()` has been replaced with `spawn foo()` (launches an OS thread, `go` will be used for - `go foo()` has been replaced with `spawn foo()` (launches an OS thread, `go` will be used for
upcoming coroutines instead). upcoming coroutines instead).
- vfmt now supports `// vfmt off` and `// vfmt on` for turning off the formatting locally for short snippets of code. - vfmt now supports `// vfmt off` and `// vfmt on` for turning off the formatting locally for short snippets of code.
@ -13,7 +13,8 @@
- Lots of fixes in the type checker. - Lots of fixes in the type checker.
- Match branch range expressions with consts: `match x { const1...const2 {} }` - Match branch range expressions with consts: `match x { const1...const2 {} }`
- Builtin stb_image.h used by gg has been updated to the latest v2.28. - Builtin stb_image.h used by gg has been updated to the latest v2.28.
- Lots of new documentation, a nicer table of contents. - Lots of new language documentation, a nicer table of contents.
- Improved documentation for most of the vlib modules
- All of vlib has been updated to use separate Option/Result types. - All of vlib has been updated to use separate Option/Result types.
- To avoid confusion, all references in the code and documentation to `Optional` have been replaced with `Option`. - To avoid confusion, all references in the code and documentation to `Optional` have been replaced with `Option`.
- `gg.Context` pipeile has more effects, including the `additive` effect. - `gg.Context` pipeile has more effects, including the `additive` effect.
@ -26,6 +27,17 @@
- Much cleaner eof checks in `os`: refactor `err == IError(os.Eof{})` to `err is os.Eof`. - Much cleaner eof checks in `os`: refactor `err == IError(os.Eof{})` to `err is os.Eof`.
- Const functions: `const y = term.yellow`, then `println(y('abc'))`. - Const functions: `const y = term.yellow`, then `println(y('abc'))`.
- Lots of work on `x.json2`, the pure V json encoder, soon to become official. - Lots of work on `x.json2`, the pure V json encoder, soon to become official.
- Improved compile time checks, like `$if x is Type {`; `$if T in [$Array, $Struct] {`.
- New `v.reflection` module for runtime reflection.
- Improved `os.mv()`, which now works consistently even across different windows drives/mount points
- `string.trim_indent()`, useful with multi line strings, that start/end with new lines and indentation
- Reduced memory consumption in the `crypto` modules.
- Installation instructions for using V on NixOS.
- TeamCity test runner support via `v -test-runner teamcity foo_test.v`.
- Better `make` support for OpenBSD.
- Much improved experience for `v install pcre` on Windows (it now bundles its own .c files, so it compiles cleanly, even if the platform does not have another pcre package installed)
- Improved vweb stability under load.
- Improved `pg` compatibility with older PostgreSQL versions before 2014.