purell doesn't normalize "opaque" URLs (see documentation for url.URL).
package main
import (
"fmt"
"net/url"
"github.com/PuerkitoBio/purell"
)
func main() {
u := &url.URL{Scheme: "http", Opaque: "//eXAMPLe.com/%3f"}
fmt.Println(purell.NormalizeURL(u, purell.FlagLowercaseHost|purell.FlagUppercaseEscapes))
}
Output: http://eXAMPLe.com/%3f
purell doesn't normalize "opaque"
URLs (see documentation for url.URL).Output:
http://eXAMPLe.com/%3f