Skip to content

Filter 'relative' does not behave as expected #154

@saguinav

Description

@saguinav

According to the API documentation, the filter option allows us to specify what type of references we want to be resolved. In a previous version of this library (2.1.6), it was possible to do:

const options = {
        filter: 'relative',
        loaderOptions: {
          processContent: (res, cb) => {
            cb(null, yaml.safeLoad(res.text));
          },
        },
      };

resolveRefs(root, options)

Resulting in only relative references being resolved, meaning that any other references (like remote references) would remained unresolved.

However, in the latest version of this library this is no longer possible, given that all reference types that are considered "remote" (both relative and remote, see here) are forced to be fully resolved (see here).

It would be great if this filter option could be restored to allow developers decide which reference types should be resolved and which not.

Please let me know if this issue seems interesting to you. I would be happy to contribute with a fix. Cheers!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions