-
-
Notifications
You must be signed in to change notification settings - Fork 10
Open
Description
Errors with current v:
~/vpkg$ v -version
V 0.4.7 01fd719
~/vpkg$ v -prod .
api/instance.v:28:1: error: const () groups will be an error after 2025-01-01 (`v fmt -w source.v` will fix that for you)
26 | import os
27 |
28 | const (
| ~~~~~
29 | version = '0.7.1'
30 | global_modules_dir = os.home_dir() + '.vmodules'
api/instance.v:66:64: error: Option and Result types have been split, use `!Foo` to return errors
64 |
65 | match vpkg.command {
66 | 'get' { vpkg.get_packages(vpkg.unknown, true) or { return error("Failed to `get` packages")} }
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
67 | 'help' { vpkg.show_help() }
68 | 'info' { vpkg.show_package_information() }
api/instance.v:69:54: error: Option and Result types have been split, use `!Foo` to return errors
67 | 'help' { vpkg.show_help() }
68 | 'info' { vpkg.show_package_information() }
69 | 'init' { vpkg.create_manifest_file() or { return error("Failed to create manifest file (`init`)")} }
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
70 | 'link' { vpkg.link(vpkg.dir) }
71 | 'install' { vpkg.install_packages(vpkg.dir) or { return error("Failed to `install` packages")} }
api/instance.v:71:58: error: Option and Result types have been split, use `!Foo` to return errors
69 | 'init' { vpkg.create_manifest_file() or { return error("Failed to create manifest file (`init`)")} }
70 | 'link' { vpkg.link(vpkg.dir) }
71 | 'install' { vpkg.install_packages(vpkg.dir) or { return error("Failed to `install` packages")} }
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
72 | 'remove' { vpkg.remove_packages(vpkg.unknown) }
73 | 'migrate' { if vpkg.unknown[0] == 'manifest' { vpkg.migrate_manifest() or { return error("Failed to `migrate` manifest")} } else {vpkg.show_help()} }
api/instance.v:73:85: error: Option and Result types have been split, use `!Foo` to return errors
71 | 'install' { vpkg.install_packages(vpkg.dir) or { return error("Failed to `install` packages")} }
72 | 'remove' { vpkg.remove_packages(vpkg.unknown) }
73 | 'migrate' { if vpkg.unknown[0] == 'manifest' { vpkg.migrate_manifest() or { return error("Failed to `migrate` manifest")} } else {vpkg.show_help()} }
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
74 | 'update' { vpkg.update_packages() }
75 | 'unlink' { vpkg.unlink(vpkg.dir) }
api/instance.v:78:55: error: Option and Result types have been split, use `!Foo` to return errors
76 | 'version' { vpkg.show_version() }
77 | 'test' { vpkg.test_package() }
78 | 'release' { vpkg.release_module_to_git() or { return error("Failed to `release` module")} }
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
79 | else { vpkg.show_help() }
80 | }
api/lockfile.v:44:13: error: Option and Result types have been split, use `!Foo` to return errors
42 | if os.exists(lockfile_path) {
43 | contents := os.read_file(lockfile_path) or {
44 | return error('Cannot read ${dir}')
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
45 | }
46 |
api/lockfile.v:48:13: error: Option and Result types have been split, use `!Foo` to return errors
46 |
47 | decoded := json.decode(Lockfile, contents) or {
48 | return error('Unable to decode lockfile.')
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
49 | }
50 |
api/manifest.v:85:24: error: cannot use `!int` as type `?int` in return argument
83 |
84 | fn (mut mw ManifestWriter) close() ?int {
85 | return mw.contents.write(('\n' + mw.closing).bytes())
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
86 | }
87 |
api/manifest.v:107:43: error: propagating a Result like an Option is deprecated, use `foo()!` instead of `foo()?`
105 | mw.contents.writeln(message)
106 | } else {
107 | mw.contents.write(message.bytes())?
| ^
108 | }
109 | }
api/manifest.v:125:105: error: propagating a Result like an Option is deprecated, use `foo()!` instead of `foo()?`
123 | if mw.contents.len == 0 { mw.init_write() }
124 |
125 | mw.contents.write((strings.repeat(` `, mw.spaces_count) + key_with_quotes + '${mw.colon} ').bytes())?
| ^
126 |
127 | message := '['
api/manifest.v:131:43: error: propagating a Result like an Option is deprecated, use `foo()!` instead of `foo()?`
129 | mw.contents.writeln(message)
130 | } else {
131 | mw.contents.write(message.bytes())?
| ^
132 | }
133 |
api/manifest.v:142:87: error: propagating a Result like an Option is deprecated, use `foo()!` instead of `foo()?`
140 |
141 | if newline {
142 | mw.contents.write((strings.repeat(` `, mw.spaces_count*2) + text).bytes())?
| ^
143 | } else {
144 | mw.contents.write(text.bytes())?
api/manifest.v:144:44: error: propagating a Result like an Option is deprecated, use `foo()!` instead of `foo()?`
142 | mw.contents.write((strings.repeat(` `, mw.spaces_count*2) + text).bytes())?
143 | } else {
144 | mw.contents.write(text.bytes())?
| ^
145 | }
146 | }
api/manifest.v:149:87: error: propagating a Result like an Option is deprecated, use `foo()!` instead of `foo()?`
147 |
148 | if newline {
149 | mw.contents.write(('\n' + strings.repeat(` `, mw.spaces_count) + ']').bytes())?
| ^
150 | } else {
151 | mw.contents.write(']'.bytes())?
api/manifest.v:151:39: error: propagating a Result like an Option is deprecated, use `foo()!` instead of `foo()?`
149 | mw.contents.write(('\n' + strings.repeat(` `, mw.spaces_count) + ']').bytes())?
150 | } else {
151 | mw.contents.write(']'.bytes())?
| ^
152 | }
153 | }
api/sources.v:54:44: error: type `net.http.Response` has no field named `text`.
5 possibilities: `body`, `header`, `http_version`, `status_code`, `status_msg`.
52 | }
53 |
54 | repo := json.decode(RegistryRepo, resp.text) or {
| ~~~~
55 | eprintln('Failed to read repo.json')
56 | return current_pkg
api/sources.v:54:18: error: json.decode: second argument needs to be a string
52 | }
53 |
54 | repo := json.decode(RegistryRepo, resp.text) or {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55 | eprintln('Failed to read repo.json')
56 | return current_pkg
api/sources.v:90:42: error: type `net.http.Response` has no field named `text`.
5 possibilities: `body`, `header`, `http_version`, `status_code`, `status_msg`.
88 | }
89 |
90 | repo := json.decode(VpmPackage, resp.text) or {
| ~~~~
91 | eprintln('Failed to parse package information from VPM')
92 | return Package{}
api/sources.v:90:18: error: json.decode: second argument needs to be a string
88 | }
89 |
90 | repo := json.decode(VpmPackage, resp.text) or {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
91 | eprintln('Failed to parse package information from VPM')
92 | return Package{}
api/vmod.v:83:17: error: byte is deprecated, use u8 instead
81 | }
82 |
83 | fn is_newline(c byte) bool {
| ~~~~
84 | return c == `\r` || c == `\n`
85 | }
api/vmod.v:87:22: error: byte is deprecated, use u8 instead
85 | }
86 |
87 | fn is_name_alpha(chr byte) bool {
| ~~~~
88 | return chr.is_letter() || chr == `_`
89 | }
Metadata
Metadata
Assignees
Labels
No labels