{"id":15010892,"url":"https://github.com/haskell/network-uri","last_synced_at":"2025-04-04T07:09:03.149Z","repository":{"id":19763853,"uuid":"23021609","full_name":"haskell/network-uri","owner":"haskell","description":"URI manipulation facilities","archived":false,"fork":false,"pushed_at":"2025-02-20T06:53:05.000Z","size":189,"stargazers_count":25,"open_issues_count":14,"forks_count":33,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-03-28T06:11:07.376Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/haskell.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-08-16T16:04:14.000Z","updated_at":"2025-02-20T06:53:10.000Z","dependencies_parsed_at":"2024-11-05T23:02:59.028Z","dependency_job_id":"739c77be-1a54-4192-b3d6-7753375a375e","html_url":"https://github.com/haskell/network-uri","commit_stats":{"total_commits":134,"total_committers":21,"mean_commits":6.380952380952381,"dds":0.4328358208955224,"last_synced_commit":"56ba757ab1690f8116285822f339346dc19bd63d"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2Fnetwork-uri","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2Fnetwork-uri/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2Fnetwork-uri/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2Fnetwork-uri/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haskell","download_url":"https://codeload.github.com/haskell/network-uri/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246777834,"owners_count":20832032,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-09-24T19:37:03.765Z","updated_at":"2025-04-04T07:09:03.110Z","avatar_url":"https://github.com/haskell.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"The network-uri package\n=======================\n\nThis package provides facilities for parsing and unparsing URIs, and creating\nand resolving relative URI references, closely following the URI spec, IETF\nRFC 3986 [1].\n\nThe main module in this package, `Network.URI`, was split off from the\nnetwork package in the network-2.6 release.\n\n# Network.URI.Static\n\nNetwork.URI.Static that allows you to declare static URIs in type-safe manner.\n\nWith the base module, when you declare a static URI, you need to either use `Maybe URI` or use `URI` and give up type safety.\n\n```haskell\nsafeButWrappedInMaybeURI :: Maybe URI\nsafeButWrappedInMaybeURI = parseURI \"http://www.google.com/\"\n\ndirectButUnsafeURI :: URI\ndirectButUnsafeURI = fromJust $ parseURI \"http://www.google.com/\"\n```\n\nThis library allows you to write static URIs in type-safe manner by checking URIs at compile time using template haskell.\n\nNow, you can write the following.\n\n```haskell\ndirectAndSafeURI :: URI\ndirectAndSafeURI = $$(staticURI \"http://www.google.com\")\n```\n\nYou can even use a quasi quote if you'd like.\n\n```haskell\ndirectAndSafeURI :: URI\ndirectAndSafeURI = [uri|\"http://www.google.com\"|]\n```\n\nThese two expressions emit an error at compile time if a specified URI is malformed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaskell%2Fnetwork-uri","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaskell%2Fnetwork-uri","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaskell%2Fnetwork-uri/lists"}