mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
V 0.3.3
This commit is contained in:
parent
62f7e56a18
commit
d1f57ead71
26
CHANGELOG.md
26
CHANGELOG.md
@ -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
2
v.mod
@ -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: []
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
Module {
|
Module {
|
||||||
name: 'semver'
|
name: 'semver'
|
||||||
version: '0.3.2'
|
version: '0.3.3'
|
||||||
deps: []
|
deps: []
|
||||||
}
|
}
|
||||||
|
@ -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]
|
||||||
|
|
||||||
|
@ -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 {
|
||||||
|
@ -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 {
|
||||||
|
@ -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 == []
|
||||||
|
Loading…
Reference in New Issue
Block a user