`val gzip_open_file : string -> IO.input`

load a file in gzip format

- returns

  ExtLib.IO.input channel

`val bzip_open_file : string -> IO.input`

load a file in bzip format

- returns

  ExtLib.IO.input channel

`val std_open_file : string -> IO.input`

load a non compressed file

- returns

  ExtLib.IO.input channel

`exception File_empty`
`val open_file : string -> IO.input`

load a file either in gzip, bzip or not compressed format

- returns

  ExtLib.IO.input channel. Raise `File_empty` if the file is empty or fail if the file does not exist

`val open_ch : Stdlib.in_channel -> IO.input`
`val close_ch : IO.input -> unit`
`val parse_uri : string -> Url.filetypes * (string option * string option * string option * string option * string) * string option`

parse a uri. i.e. : deb://path/to/file rpm://path/to/file cudf://path/to/file

- returns

  a tuple representing the uri

`val guess_format : string list list -> Url.filetypes`

guess the input format from a list of list of uris and check * if the list is omogenueous w.r.t the guessed format. Fails otherwise