summaryrefslogtreecommitdiff
path: root/lib/uri
AgeCommit message (Collapse)Author
2025-11-25[ruby/uri] [DOC] Fix result of sample code in `#user=`Yuji Yaginuma
A `password` is cleared when change a user now. https://github.com/ruby/uri/commit/af6714473c
2025-11-04[ruby/uri] v1.1.1Sorah Fukumori
https://github.com/ruby/uri/commit/f1b05c89ab
2025-11-04[ruby/uri] Re-allow consecutive, leading and trailing dots in EMAIL_REGEXPDaisuke Aritomo
Effectively reverts commit https://github.com/ruby/uri/commit/788274b180d6 and https://github.com/ruby/uri/commit/0abac721d8fe. EMAIL_REGEXP was mostly drawn from WHATWG HTML LS. This spec states that it intentionally violates RFC 5322 to provide a practical regex for validation. > This requirement is a willful violation of RFC 5322, which defines a > syntax for email addresses that is simultaneously too strict (before the > "@" character), too vague (after the "@" character), and too lax > (allowing comments, whitespace characters, and quoted strings in manners > unfamiliar to most users) to be of practical use here. The allowing of consecutive dot s(`a..a@`) and leading/trailing dots (`.a@`, `a.@`) is not the only derivation from RFC 5322. If a truly RFC 5322-compliant regexp is needed, tt should be organized under a different name, since too much departure from the original EMAIL_REGEXP must be introduced. https://github.com/ruby/uri/commit/c551d7020b
2025-10-31[ruby/uri] v1.1.0Hiroshi SHIBATA
https://github.com/ruby/uri/commit/c41903b3e4
2025-10-31[ruby/uri] improve error messagesodacris
https://github.com/ruby/uri/commit/1c6e81b721
2025-10-31[ruby/uri] Switch a parsing behavior completely when switching a parseryuuji.yaginuma
Currently, some methods' behavior(e.g. `URI.parse`) don't change when switching a parser. This is because some methods use `DEFAULT_PARSER`, but `parser=` doesn't change `DEFAULT_PARSER`. This PR introduces a constant to keep a parser's instance and change it when switching a parser. Also, change to use it in methods. https://github.com/ruby/uri/commit/aded210709
2025-10-31[ruby/uri] chore(docs): replace reference to the obsolete URI.escape with ↵vivshaw
URI::RFC2396_PARSER.escape https://github.com/ruby/uri/commit/72e7d6b364
2025-10-31[ruby/uri] Use generic version number to VERSION and generate VERSION_CODE ↵Hiroshi SHIBATA
from that https://github.com/ruby/uri/commit/1fc4f0496a
2025-10-07[ruby/uri] Bump up to v1.0.4Hiroshi SHIBATA
https://github.com/ruby/uri/commit/e5074739c3
2025-10-07[ruby/uri] Add authority accessorNobuyoshi Nakada
https://github.com/ruby/uri/commit/6c6449e15f
2025-10-07[ruby/uri] Clear user info totally at setting any of authority infoNobuyoshi Nakada
Fix CVE-2025-27221. https://hackerone.com/reports/3221142 https://github.com/ruby/uri/commit/5cec76b9e8
2025-07-14[ruby/uri] [DOC] Update old use of `URI::Parser`Nobuyoshi Nakada
https://github.com/ruby/uri/commit/d2a79c6343
2025-07-14[ruby/uri] [DOC] Document private visibility tooNobuyoshi Nakada
For the references to URI::RFC2396_Parser private methods. https://github.com/ruby/uri/commit/372fbb455d
2025-07-14[ruby/uri] [DOC] Fix referencesNobuyoshi Nakada
These are instance methods, not class methods. And `URI::Parser` was moved to URI::RFC2396_Parser at [r46491] [r46491]: https://github.com/ruby/ruby/commit/bb83f32dc3e0 https://github.com/ruby/uri/commit/452d74390c
2025-07-12[ruby/uri] Improve performance of `URI::MailTo::EMAIL_REGEXP`Nobuyoshi Nakada
Fix the performance regression at #172 for valid emails. ``` yml prelude: | require 'uri/mailto' n = 1000 re = URI::MailTo::EMAIL_REGEXP benchmark: n.t..t.: re.match?("n.t..t.@docomo.ne.jp") example: re.match?("example@example.info") ``` | |released| 788274b| c5974f0| this| |:--------|-------:|-------:|-------:|-------:| |n.t..t. | 3.795M| 4.864M| 4.993M| 8.739M| | | -| 1.28x| 1.32x| 2.30x| |example | 3.911M| 3.740M| 2.838M| 3.880M| | | 1.38x| 1.32x| -| 1.37x| https://github.com/ruby/uri/commit/7363a134ac
2025-07-12[ruby/uri] Do not allow empty host names, as they are not allowed by RFC 3986Jeremy Evans
Pointed out by John Hawthorn. Fixes [Bug #20686] https://github.com/ruby/uri/commit/c0cfa04a66
2025-07-12[ruby/uri] Prohibit successive dots in emailNobuyoshi Nakada
https://github.com/ruby/uri/commit/32335923bf
2025-07-12[ruby/uri] lib/uri/mailto.rb (EMAIL_REGEXP): use assertions surrounding the ↵Nikita Levchuk
local part instead of a character class https://github.com/ruby/uri/commit/2d7d2d9988
2025-07-12[ruby/uri] lib/uri/mailto.rb (EMAIL_REGEXP): the local part should not ↵Nikita Levchuk
contain leading or trailing dots https://github.com/ruby/uri/commit/618e2bb640
2025-07-12[ruby/uri] Make URI::regexp schemes case sensitiveNobuyoshi Nakada
(https://github.com/ruby/uri/pull/38) https://github.com/ruby/uri/commit/0c2b6468fa
2025-07-12[ruby/uri] Fix the message for unexpected argumentNobuyoshi Nakada
Use just `self` instead of `self.class`, in `URI::Generic.build`. Since this is a class method, `self.class` is always `Class` even in inherited sub classes, and does not have `#component` method. https://github.com/ruby/uri/commit/6f44d3d40e
2025-06-26[ruby/uri] [DOC] State that uri library is needed to call Kernel#URINobuyoshi Nakada
So that the example works as-is. https://github.com/ruby/uri/commit/30212d311e
2025-06-26[ruby/uri] Fix a typoNobuyoshi Nakada
https://github.com/ruby/uri/commit/b636e83d99 Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
2025-06-26[ruby/uri] Use Lo category chars as escaped charsNobuyoshi Nakada
TruffleRuby does not allow Symbol categories as identifiers. https://github.com/ruby/uri/commit/5531d42375
2025-06-26[ruby/uri] Escape reserved characters in scheme nameNobuyoshi Nakada
Fix https://github.com/ruby/uri/pull/89 https://github.com/ruby/uri/commit/d543c0dafa
2025-02-27[ruby/uri] Use a fully qualified name in warning messagesyuuji.yaginuma
Currently, some warning messages don't contain a `URI` like the following. ```ruby warning: URI::ABS_URI is obsolete. Use RFC2396_PARSER.regexp[:ABS_URI] explicitly. ``` But, without `URI` prefix, the suggested value doesn't work. So I think we should use a fully qualified name to avoid confusion. https://github.com/ruby/uri/commit/428eb10e44
2025-02-27[ruby/uri] Fix the mention to removed `URI.escape/URI::Escape`Yuji Yaginuma
This was removed by #9. https://github.com/ruby/uri/commit/fec924238f
2025-02-26[ruby/uri] Bump up v1.0.3Hiroshi SHIBATA
https://github.com/ruby/uri/commit/3213f4a0f8
2025-02-26[ruby/uri] Fix merger of URI with authority componentHiroshi SHIBATA
https://hackerone.com/reports/2957667 https://github.com/ruby/uri/commit/2789182478 Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2025-02-26[ruby/uri] Truncate userinfo with URI#join, URI#merge and URI#+Hiroshi SHIBATA
https://github.com/ruby/uri/commit/3675494839
2025-01-24[ruby/uri] [DOC] Make documentation 100%Nobuyoshi Nakada
https://github.com/ruby/uri/commit/fe7aa3dac2
2024-11-14[ruby/uri] Bump up v1.0.2Hiroshi SHIBATA
https://github.com/ruby/uri/commit/e46960a467
2024-11-14[ruby/uri] Check existence constants only URI moduleHiroshi SHIBATA
https://github.com/ruby/uri/commit/b6f583369a
2024-11-14[ruby/uri] Removed duplicated declare step for constants under the ↵Hiroshi SHIBATA
URI::RFC2396_REGEXP::PATTERN https://github.com/ruby/uri/commit/60a8bc1575
2024-11-14[ruby/uri] Restore constants like URI::REGEXP::PATTERN::IPV6ADDRHiroshi SHIBATA
https://github.com/ruby/uri/commit/ee9a38701a
2024-11-13[ruby/uri] Remove rakelib/ dir from gem alsoOrien Madgwick
https://github.com/ruby/uri/commit/a0dd612e90
2024-11-13[ruby/uri] Remove unused files from the gem packageOrien Madgwick
https://github.com/ruby/uri/commit/f0847c266c
2024-11-11[ruby/uri] Fix minor typo fromJoe Rafaniello
https://github.com/ruby/uri/commit/9997c1acee https://github.com/ruby/uri/commit/c191b627cb
2024-11-08[ruby/uri] Bump up v1.0.1Hiroshi SHIBATA
https://github.com/ruby/uri/commit/3011eb6f6e
2024-11-08[ruby/uri] Added more fallback constants like URI::PARTTERN and URI::REGEXPHiroshi SHIBATA
Fixed https://github.com/ruby/uri/issues/125 https://github.com/ruby/uri/commit/1f3d3df02a
2024-11-07[ruby/uri] Bump up v1.0.0Hiroshi SHIBATA
https://github.com/ruby/uri/commit/af8d9d6bb1
2024-09-17[ruby/uri] Fix spelling of "cannot"David Rodríguez
https://github.com/ruby/uri/commit/77241d6508
2024-08-31[ruby/uri] Bump up 0.13.1Hiroshi SHIBATA
https://github.com/ruby/uri/commit/31ec9cea66
2024-08-27[ruby/uri] Also warn URI::RFC3986_PARSER.extractHiroshi SHIBATA
https://github.com/ruby/uri/commit/0f6b945557
2024-08-21Reapply "[ruby/uri] Warn compatibility methods in RFC3986_PARSER"Hiroshi SHIBATA
This reverts commit 3da7e440e9fca835f5475a98f1c0afb4d2ac71db. Notes: Merged: https://github.com/ruby/ruby/pull/11416
2024-08-08Revert "[ruby/uri] Warn compatibility methods in RFC3986_PARSER"Hiroshi SHIBATA
This reverts commit c3becc3ba6c584fbeabd5182e304e61529235fe6. Notes: Merged: https://github.com/ruby/ruby/pull/11333
2024-08-08[ruby/uri] Use URI::RFC2396_PARSER explicitly in URIHiroshi SHIBATA
https://github.com/ruby/uri/commit/898b889811
2024-08-08[ruby/uri] Warn compatibility methods in RFC3986_PARSERHiroshi SHIBATA
https://github.com/ruby/uri/commit/9997c1acee
2024-08-06[ruby/uri] Fallback missing constants with RFC3986_PARSERHiroshi SHIBATA
(https://github.com/ruby/uri/pull/113) * Fallback missing constants with RFC3986_PARSER * raise missing constant * Update test/uri/test_common.rb Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> * Update lib/uri/common.rb Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> * Update lib/uri/common.rb Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> --------- https://github.com/ruby/uri/commit/c2fdec079a Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2024-08-05[ruby/uri] Add space after `bad URI`Josh Soref
https://github.com/ruby/uri/commit/9f2c7ed5f2