Commit Graph

157 Commits

Author SHA1 Message Date
Ian Stapleton Cordasco 5fb3fab7e8
Bump version to 1.1.0 2017-07-18 07:17:38 -05:00
Ian Stapleton Cordasco 3a7b6f2a46
Add release notes for v1.1.0 2017-07-18 07:15:52 -05:00
Ian Stapleton Cordasco fd19bd9064
Add deprecation notices to old URIReference methods 2017-07-18 06:37:06 -05:00
Ian Stapleton Cordasco 513f70b445
Add check_validity_of to vaildator docs
Document the ability to replace `URIReference.is_valid` without
mentioning that method at all.
2017-07-17 16:56:50 -05:00
Ian Stapleton Cordasco e5f8f83763 Merge pull request #27 from sigmavirus24/moar-validation
Expand our Validation efforts and documentation
2017-07-16 12:05:10 -05:00
Ian Stapleton Cordasco 2723538095
Exclude solitary line from coverage
It's silly, because Python 3.5 and onwards allows coverage.py to detect
this but otherwise our test coverage will fail.
2017-07-16 11:57:49 -05:00
Ian Stapleton Cordasco 2cdfd8ed33
Add validation to eliminate URIReference.is_valid
Even though URIReference.is_valid does the same thing (roughly), this
adds to our existing Validator framework the ability to check that a URI
is in fact compliant with the specification.
2017-07-16 11:49:02 -05:00
Ian Stapleton Cordasco a3bca13363
Note the version we added Validator in
Also add this to the methods for documentation purposes.
2017-07-12 20:44:43 -05:00
Ian Stapleton Cordasco 4d7a32699a Merge pull request #26 from KostyaEsmukov/userinfo_allowed_chars
Fix some chars (!, =, etc) being treated as not allowed in userinfo of authority
2017-07-08 10:45:58 -05:00
Kostya Esmukov c6b149207c
Add a separate testcase for special chars in userinfo and revert changes to other tests 2017-07-07 17:55:26 +03:00
Kostya Esmukov ae5fc8b0f5
Add some chars (!, =, etc) as allowed to the userinfo part of authority
As per https://tools.ietf.org/html/rfc3986#section-3.2.1
userinfo    = *( unreserved / pct-encoded / sub-delims / ":" )

Where, according to https://tools.ietf.org/html/rfc3986#section-2.2 ,
sub-delims  = "!" / "$" / "&" / "'" / "(" / ")"
                  / "*" / "+" / "," / ";" / "="

The sub-delims and pct-encoded sets were added in this commit
2017-07-02 21:13:11 +03:00
Kostya Esmukov 028d1db0b4
Make tests fail: add "%20!=" part to userinfo which is allowed as per RFC3986 2017-07-02 21:10:08 +03:00
Ian Cordasco 6b8e178e1e
Fix theme setting for documentation 2017-05-10 07:06:53 -05:00
Ian Cordasco d14f859712
Fix documentation builds on RTD 2017-05-10 07:04:52 -05:00
Ian Cordasco 482573d3f2 Merge pull request #25 from sigmavirus24/release/1.0
Create 1.0 Release
2017-05-10 06:58:20 -05:00
Ian Cordasco b075f2651e
Finalize 1.0.0 version string 2017-05-10 06:54:24 -05:00
Ian Cordasco d1fafcc2c1
Add release notes to our documentation 2017-05-10 06:53:28 -05:00
Ian Cordasco 21a1be2188
Add support for Zone Identifiers from RFC 6874
Refs #2
2017-05-08 07:04:27 -05:00
Ian Cordasco 432f66d1a5
Switch over parseresult to UseExisting
Document how to remove components
2017-05-07 07:45:42 -05:00
Ian Cordasco 18a689de0d
Document misc and abnf_regexp submodules
Add UseExisting and begin using it in the API. Also rename some now
public attributes in rfc3986.abnf_regexp.

Refs #24
2017-05-06 20:18:38 -05:00
Ian Cordasco 6b79edcb72
Tidy up docstrings for pydocstyle 2.0 2017-04-30 08:04:04 -05:00
Ian Cordasco cd453de7dd
Move regular expressions into separate module 2017-04-29 17:32:45 -05:00
Ian Cordasco ac06bd3159
Wrap up documentation of Validator 2017-04-22 08:06:06 -05:00
Ian Cordasco 82c21ae41f
Add more validator documentation 2017-04-22 08:06:04 -05:00
Ian Cordasco a848da6f32
Use a better method of concatenating
Using += on a str isn't as efficient as using str.format.
2017-04-22 08:06:02 -05:00
Ian Cordasco d99258fc01
Add stubs for validation documentation 2017-04-22 08:06:00 -05:00
Ian Cordasco fb7ac98cc3
Add documentation for the URIBuilder object 2017-04-22 08:05:58 -05:00
Ian Cordasco deb5637553
Provide an easy way to toy around with the library 2017-04-22 08:05:56 -05:00
Ian Cordasco d33f40afa5
Convert to using doctest directives
We use and enable sphinx.ext.doctest so let's actually run our example
code and ensure they work.
2017-04-22 08:05:53 -05:00
Ian Cordasco e882c5608e
Fix Validator example code 2017-04-22 08:05:51 -05:00
Ian Cordasco 259950d85e
Remove whitespace 2017-04-22 08:05:49 -05:00
Ian Cordasco 56f8bebc4b
Add narrative documentation around parsing 2017-04-22 08:05:47 -05:00
Ian Cordasco 4aa02a7243
Add basic API Reference documentation 2017-04-22 08:05:45 -05:00
Ian Cordasco fca3714e78
Improve the regular expression for schemes 2017-04-22 08:05:43 -05:00
Ian Cordasco 90e74f6a03
Start seriously working on documentation 2017-04-22 08:05:40 -05:00
Ian Cordasco 10529e2699
Begin documenting the module 2017-04-22 08:05:38 -05:00
Ian Cordasco cdd60e3c87
Add the ability to finalize a URI
This will return a URIReference to the user and allow them to unsplit
the object.
2017-04-22 08:05:36 -05:00
Ian Cordasco 673617a0c5
Add fragment handling and tests 2017-04-22 08:05:34 -05:00
Ian Cordasco 3f8cb0c4cc
Add path and query handling to URIBuilder 2017-04-22 08:05:32 -05:00
Ian Cordasco 3936f8a7fd
Add add_host implementation and testing to URIBuilder 2017-04-22 08:05:29 -05:00
Ian Cordasco 5aab5ae8b4
Start adding a URIBuilder object 2017-04-22 08:05:27 -05:00
Ian Cordasco 0035c8e53c
Rename require_components to require_presence_of
This (in my opinion) is a far more explicit API method as reading it
allowed sounds like English, e.g.,

     Validator().require_presence_of('host', 'port', 'path')

Or "Validator require(s) presence of host, port, and path".

This also adds a bunch more tests around validation and tacks some of
the validation error information onto the exception object for easier
introspection by users.
2017-04-22 08:05:22 -05:00
Ian Cordasco e6695d1052
Fix up .travis.yaml for new support matrix 2017-04-22 08:05:20 -05:00
Ian Cordasco 74966158aa
Add more tests around validation 2017-04-22 08:05:18 -05:00
Ian Cordasco 46ecb84683
Add more tests around existing validation 2017-04-22 08:05:16 -05:00
Ian Cordasco 259207214f
Start implementing validation via Validator 2017-04-22 08:05:13 -05:00
Ian Cordasco 06618935b3
Move validation logic to separate submodule
In preparation for the URIBuilder work, we will need our validators to
be separate from our URIReference class. They mostly do not rely on the
instance of URIRefence already so making them functions in a module
makes sense.
2017-04-22 08:05:11 -05:00
Ian Cordasco 08335d75b5
Fix up flake8 errors 2017-04-22 08:05:09 -05:00
Ian Cordasco 2c4e606b35
Start working towards 1.0 2017-04-22 08:05:06 -05:00
Ian Cordasco 8090c3da26
Add codecov
This will track coverage reports for Pull Requests and on everything
else I do.

(cherry picked from commit 76d6da6317)
2017-04-22 08:04:48 -05:00