1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
This commit is contained in:
Alexander Medvednikov 2023-01-30 18:20:47 +01:00
parent 62f7e56a18
commit d1f57ead71
7 changed files with 31 additions and 9 deletions

View File

@ -1,11 +1,33 @@
## V 0.3.3 ## V 0.3.3
*Not yet released* *30 Jan 2023*
**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.
- `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. Useful for keeping your carefully arranged matrices intact. - vfmt now supports `// vfmt off` and `// vfmt on` for turning off the formatting locally for short snippets of code.
Useful for keeping your carefully arranged matrices intact.
- fast.vlang.io fixes & improvements, new server.
- String interpolation changed to just '${name}'.
- New official IntelliJ plugin: https://intellij-v.github.io.
- 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.
- Lots of new documentation, a nicer table of contents.
- 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`.
- `gg.Context` pipeile has more effects, including the `additive` effect.
- Hot code reloading via `[live]` is now supported in imported modules, not just the main module.
- VFS support in the builtin `sqlite` module; `sqlite.get_affected_rows_count()`.
- `make.bat` & `v up` improvements on Windows.
- Syntax sugar for map inits without needing explicit casts for interfaces: `all.children := { "abc": rect, "def": ui.rectangle()}`.
- `$embed_file()` fixes, including variable args support.
- `none` fixes: no longer allowed to be used as a separate type, `dump()` support, not allowed inside `unsafe`.
- 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'))`.
- Lots of work on `x.json2`, the pure V json encoder, soon to become official.
## V 0.3.2 ## V 0.3.2
*31 Oct 2022* *31 Oct 2022*

2
v.mod
View File

@ -1,7 +1,7 @@
Module { Module {
name: 'V' name: 'V'
description: 'The V programming language.' description: 'The V programming language.'
version: '0.3.2' version: '0.3.3'
license: 'MIT' license: 'MIT'
repo_url: 'https://github.com/vlang/v' repo_url: 'https://github.com/vlang/v'
dependencies: [] dependencies: []

View File

@ -1,5 +1,5 @@
Module { Module {
name: 'semver' name: 'semver'
version: '0.3.2' version: '0.3.3'
deps: [] deps: []
} }

View File

@ -25,7 +25,7 @@ The commandline tool is available in `vlib/v/pkgconfig/bin/pkgconfig.v`
``` ```
$ ./bin/pkgconfig -h $ ./bin/pkgconfig -h
pkgconfig 0.3.2 pkgconfig 0.3.3
----------------------------------------------- -----------------------------------------------
Usage: pkgconfig [options] [ARGS] Usage: pkgconfig [options] [ARGS]

View File

@ -18,7 +18,7 @@ const (
'/usr/local/libdata/pkgconfig', // FreeBSD '/usr/local/libdata/pkgconfig', // FreeBSD
'/usr/lib/i386-linux-gnu/pkgconfig', // Debian 32bit '/usr/lib/i386-linux-gnu/pkgconfig', // Debian 32bit
] ]
version = '0.3.2' version = '0.3.3'
) )
pub struct Options { pub struct Options {

View File

@ -2,7 +2,7 @@ module version
import os import os
pub const v_version = '0.3.2' pub const v_version = '0.3.3'
// vhash() returns the build string C.V_COMMIT_HASH . See cmd/tools/gen_vc.v . // vhash() returns the build string C.V_COMMIT_HASH . See cmd/tools/gen_vc.v .
pub fn vhash() string { pub fn vhash() string {

View File

@ -8,7 +8,7 @@ fn test_ok() {
ok_source := "Module { ok_source := "Module {
name: 'V' name: 'V'
description: 'The V programming language.' description: 'The V programming language.'
version: '0.3.2' version: '0.3.3'
license: 'MIT' license: 'MIT'
repo_url: 'https://github.com/vlang/v' repo_url: 'https://github.com/vlang/v'
dependencies: [] dependencies: []
@ -18,7 +18,7 @@ fn test_ok() {
content := vmod.decode(s)? content := vmod.decode(s)?
assert content.name == 'V' assert content.name == 'V'
assert content.description == 'The V programming language.' assert content.description == 'The V programming language.'
assert content.version == '0.3.2' assert content.version == '0.3.3'
assert content.license == 'MIT' assert content.license == 'MIT'
assert content.repo_url == 'https://github.com/vlang/v' assert content.repo_url == 'https://github.com/vlang/v'
assert content.dependencies == [] assert content.dependencies == []