Giter VIP home page Giter VIP logo

Comments (8)

vandersonmota avatar vandersonmota commented on July 2, 2024

This happens in the latest pypi version and unstable branch as well. Tested with python 2.7

from pykwalify.

Grokzen avatar Grokzen commented on July 2, 2024

Have you tried to use the schema; and include arguments instead of the built:in pyyaml links? https://github.com/Grokzen/pykwalify/blob/unstable/docs/Validation%20Rules.md#partial-schemas It might help you here because that implementation is lazy loaded and could avoid the problem with infinite recursion.

I am not sure if the docs state it but using built in yaml linking is not reccomended when partial schemas exists, maybe i should add it :]

from pykwalify.

vandersonmota avatar vandersonmota commented on July 2, 2024

Thanks for the quick response @Grokzen
i'll try it and post the results afterwards.

from pykwalify.

Grokzen avatar Grokzen commented on July 2, 2024

Please do.

I do not know really how to protect against this in a good way if partial schemas do not work =(

from pykwalify.

vandersonmota avatar vandersonmota commented on July 2, 2024

I bring good news, sire ;-)
It worked with partial schemas, with some changes:
I had to make the top level a sequence, because apparently, partials don't work with mappings:

schema.yml

schema;node_map:
  type: map
  mapping:
    name:
      type: str
    edges:
      type: seq
      sequence:
        - include: node_map

type: seq
sequence:
  - include: node_map

example.yml

-
  name: 'Top'
  edges:
    -
      name: '2nd'
      edges:
        -
          name: '3rd'

Thank you for your time and for the project.

Cheers!

from pykwalify.

Grokzen avatar Grokzen commented on July 2, 2024

Cool that it worked out :]

One question about the sequence problem, was it not possible to use a include at the top level or directly inside a sequence? Is it possible that you can post the schema you wanted to have using partial schemas? It might be some unintended behavior that should be fixed, or it could be a new feature that should be added.

from pykwalify.

vandersonmota avatar vandersonmota commented on July 2, 2024

I haven't tried yet.
the schema i needed is pretty much like the one i posted, with more noise.

from pykwalify.

Grokzen avatar Grokzen commented on July 2, 2024

Oki.

If you find some schema/usecase that you might need just open another issue and i can see if it can be worked into the spec but still keep the kwalify compatibility.

from pykwalify.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.