3 releases

new 0.0.3 Apr 7, 2024
0.0.2 Jan 21, 2024
0.0.1 Jan 17, 2024

#619 in Encoding

Download history 3/week @ 2024-01-15 72/week @ 2024-01-22 96/week @ 2024-01-29 105/week @ 2024-02-05 13/week @ 2024-02-12 35/week @ 2024-02-19 21/week @ 2024-02-26 27/week @ 2024-03-04 38/week @ 2024-03-11 13/week @ 2024-03-18 24/week @ 2024-03-25 175/week @ 2024-04-01

253 downloads per month

Apache-2.0

19KB
379 lines

gomod-parser

Build Status Crate MSRV

A simple go.mod file parser based on winnow.

Example

use gomod_parser::{GoMod, Module, ModuleDependency};
use std::str::FromStr;

let input = r#"
module github.com/example

go 1.21

require golang.org/x/net v0.20.0
"#;

let go_mod = GoMod::from_str(input).unwrap();

assert_eq!(go_mod.module, "github.com/example".to_string());
assert_eq!(go_mod.go, Some("1.21".to_string()));
assert_eq!(
    go_mod.require,
    vec![ModuleDependency {
        module: Module {
            module_path: "golang.org/x/net".to_string(),
            version: "v0.20.0".to_string()
        },
        indirect: false
    }]
);

Dependencies

~795KB
~16K SLoC