| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
| |
See https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes
and
https://github.blog/2021-10-04-beta-github-releases-improving-release-experience/
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| | |
* commit 'cf886386cc0996df6743b425f74675a6d8a1a9ca':
Squashed 'json/' changes from 20c1bb1d9..54440eab4
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
54440eab4 Merge pull request #516 from ChALkeR/chalker/ipv6
e7b22e1c6 Fix the sanity check by pinning.
8891d8107 Merge pull request #519 from json-schema-org/ether/custom-dialect
5f5fccda3 test the format-assertion vocabulary with a custom metaschema
3fcee3868 Merge pull request #512 from json-schema-org/ether/formats-and-non-strings
b349b8797 test that format-assertions are valid with non-string types
8e5b2f10d fix needless inconsistencies in format tests between drafts
02d7cb59a Correct "ref with sibling id" tests
1649470ba More ipv6 tests to increase coverage
7334b4c7e Merge pull request #505 from ChALkeR/chalker/fix-unicode
0fb2d2787 Consolidate optional/unicode into optional/ecmascript-regex
4f8c6d7bf unevaluatedProperties: deep dynamic + refs
9103f3b6f $ref wit id does not test what it is indented to do
f300dd15f Add test "same $anchor with different base uri"
d128f9d7f Add test to check that $id resolved against nearest parent, not just immediate parent
72e31dd20 Merge pull request #515 from json-schema-org/ether/fix-mandatory-format-tests
0173a0835 Revert "by default, "format" only annotates, not validates"
66e813a90 Merge pull request #506 from json-schema-org/ether/formats-non-ascii
9430972bc fix unicode tests in accordance to pattern/patternProperties spec
git-subtree-dir: json
git-subtree-split: 54440eab4d50b80a62cc9f9c561e306cdbb19591
|
| |
| |
| |
| |
| |
| |
| | |
It seems to have stopped running, even though I don't believe
anything related to it has changed, but it'll require some
diagnosis that I don't have time for at the minute to figure
out what precisely.
|
| | |
|
|\ \
| | |
| | | |
Move python_requires to options for correct METADATA generation.
|
|/ / |
|
| |
| |
| |
| | |
Closes: #784
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
julian@Airm ●
We need a better public API for vocabularies, and this unfortunately
won't cut it.
For now this is dirty, but works to load all vocabularies (which
are just concatenated together).
The reason this is needed is because I don't see a PEP302-compliant
way to load a whole directory using the importlib.resources APIs
(which call directories 'packages') -- and doing so manually would
break importing jsonschema via a zip file, which is something
historically that users were doing.
|
| |
| |
| |
| |
| | |
Support for dynamicRef will come with a redesign of ref resolution,
but can't keep blocking the release.
|
|\ \
| | |
| | | |
Don't build universal wheels for Python 3-only
|
| | | |
|
|/ / |
|
|\ \
| | |
| | | |
[pre-commit.ci] pre-commit autoupdate
|
|/ /
| |
| |
| |
| |
| |
| | |
updates:
- [github.com/pre-commit/pre-commit-hooks: v3.4.0 → v4.0.1](https://github.com/pre-commit/pre-commit-hooks/compare/v3.4.0...v4.0.1)
- https://github.com/timothycrosley/isort → https://github.com/PyCQA/isort
- [github.com/PyCQA/isort: 5.7.0 → 5.9.3](https://github.com/PyCQA/isort/compare/5.7.0...5.9.3)
|
| |
| |
| |
| |
| |
| |
| |
| | |
Besides having confusing names, these expose mutable global state in
a way that makes maintenance hard.
Today, jsonschema.validators.validator_for(schema) can be used
to look up an appropriate Validator given an arbitrary schema.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
These indeed can be improved, as mentioned in
https://github.com/Julian/jsonschema/pull/817#issuecomment-881550313
but it's a bit less clear exactly how yet -- rather than putting $ref
in the schema path, instead using relative_schema_path to only refer
to the schema post-$ref lookup is a bit more consistent with the current
norms, wherein what's in schema_path should be lookup-able via indexing.
But for now, they're distinguishable via .schema, which shows only the
$ref'ed schema for the second error.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A Validator should be thought of as encapsulating validation with a
single fixed schema.
Previously, iter_errors and is_valid allowed passing a second argument,
which was a different schema to use for one method call.
This was mostly for convenience, since the second argument is often
used during sub-validation whilst say, recursing.
The correct way to do so now is to say:
validator.evolve(schema=new_schema).iter_errors(...)
validator.evolve(schema=new_schema).is_valid(...)
instead, which is essentially equally convenient.
Closes: #522
|
| |
| |
| |
| |
| | |
This will soon be deprecated, and these tests don't care
about specifically doing things this way.
|
| |
| |
| |
| | |
Removes some testing redundancy as well.
|
| |
| |
| |
| | |
Also switch to using attrs to instantiate / repr them.
|
| |
| |
| |
| |
| | |
It's an implementation detail that this is looking things up
in a dict.
|
| |
| |
| |
| |
| | |
_finditem will be removed (in favor of more robust finding
of scope changes), so this won't matter much, but it's tidier.
|
| |
| |
| |
| |
| |
| | |
This makes the (anyhow-not-yet-working) dynamicRef validators
access private state on ref resolvers, but that will be fixed
when aforementioned not-working is fixed.
|
| | |
|
| |
| |
| |
| |
| | |
It is unused in internal code and can be instead done via push/pop_scope
(at least until the entirety of RefResolver is deprecated).
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Also check that only one error is raised for maxContains,
which is the case right now due to short circuiting as
soon as we see too many matches.
|
| |
| |
| |
| |
| |
| |
| |
| | |
This prevents some nondeterminism (if there were multiple errors
that came out in different orders).
These tests don't really deal with multiple errors, so this
seems 'safe' from a convenience perspective to require.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It may seem like this isn't necessary, because:
datetime.date.fromisoformat('1963-06-1৪')
fails (properly! it's non-ASCII) on CPython, but that's only because the
datetime module swaps itself out for the C implementation, and the C
implementation blows up on the non-ASCII string.
The pure-python implementation (which in some situations may get used)
does no check itself for ASCII-ness.
There's a comment saying as much here:
https://github.com/python/cpython/blob/bb3e0c240bc60fe08d332ff5955d54197f79751c/Lib/datetime.py#L266-L267
So, let's check explicitly ourselves regardless of this working
occasionally.
Thanks PyPy for pointing out the bug.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
It passes all the new upstream (non-ASCII date/time) tests, whilst
strict-rfc3339 does not, plus it's maintained.
More props to @naimetti.
|