longshotlabs / simpl-schema

A JavaScript schema validation package that supports direct validation of MongoDB update modifier objects
https://www.npmjs.com/package/simpl-schema
MIT License
560 stars 115 forks source link

Regression: "Keys" option not respected, upon performing validation for named validation context #477

Closed KrisjanisStrods closed 9 months ago

KrisjanisStrods commented 1 year ago

It seems to me, that the last version, where the keys option was respected, was in simpl-schema@1.12.2.

Created a unit test for v3.4.1, that showcases the problem:

import { expect } from 'expect'

import { SimpleSchema } from '../src/SimpleSchema.js'

describe.only('regression', function () {
  it('check if applied keys option array is respected', function () {
    const targetSchmea = new SimpleSchema({
      foo: {
        type: String
      },
      bar: {
        type: String
      }
    })

    targetSchmea
      .namedContext('testContext')
      .validate({ foo: 'bizz' }, { keys: ['foo'] })

    // If keys option would be respected, there should not be any validation errors
    expect(targetSchmea.namedContext('testContext').validationErrors().length).toBe(0)
  })
})
github-actions[bot] commented 1 year ago

Thank you for submitting an issue!

If this is a bug report, please be sure to include, at minimum, example code showing a small schema and any necessary calls with all their arguments, which will reproduce the issue. Even better, you can link to a saved online code editor example, where anyone can immediately run the code and see the issue.

If you are requesting a feature, include a code example of how you imagine it working if it were implemented.

If you need to edit your issue description, click the [...] and choose Edit.

Be patient. This is a free and freely licensed package that I maintain in my spare time. You may get a response in a day, but it could also take a month. If you benefit from this package and would like to see more of my time devoted to it, you can help by sponsoring.

kfritsch commented 1 year ago

@aldeed this seems to be a significant bug! If that new behavior is intended, there should be big migration warning in the Readme and the docs should obviously be updated.

github-actions[bot] commented 9 months ago

:tada: This issue has been resolved in version 3.4.4 :tada:

The release is available on:

If this makes you happy, please consider becoming a sponsor.

Your semantic-release bot :package::rocket: