Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
io-ts-fuzzer
Advanced tools
io-ts-fuzzer
lets you generate examples of a given io-ts
type.
After yarn add io-ts io-ts-fuzzer
...
import * as t from 'io-ts';
import * as fuzz from 'io-ts-fuzzer';
function fuzz() {
// Fuzzers for common types
const r = fuzz.createCoreRegistry();
// Type to fuzz
const target = t.union([t.string, t.type({n:t.number, b:t.boolean})]);
// Builds a particular fuzzer from the registry.
const fuzzer = fuzz.exampleGenerator(r, target);
// Make examples. The input number fully determines
// the output example.
console.log(fuzzer.encode(0));
console.log(fuzzer.encode(1));
console.log(fuzzer.encode(2));
console.log(fuzzer.encode(493));
}
Currently supports:
t.number
t.string
t.boolean
t.union
t.type
(interface)t.partial
t.intersection
t.array
t.null
t.undefined
t.void
t.unknown
t.Int
Given a d = t.Decoder<I,A>
(aka a t.Type
), fuzz.exampleGenerator
will
build a t.Encoder<number,A>
that will give example instances of A
.
The example instances should all pass on d.decode
, which should return
an identical example. No exceptions should be thrown.
Read the LICENSE for details.
The entire NOTICE file serves as the NOTICE that must be included under
Section 4d of the License.
# io-ts-fuzzer
This product contains software originally developed by Holvonix LLC.
Original Repository: https://github.com/holvonix-open/io-ts-fuzzer
Copyright (c) 2019 Holvonix LLC. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this software except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Third-party dependencies may have their own licenses.
1.4.0 (2019-08-04)
Registry#register
function and a Registry#exampleGenerator
implementation (aa46fc6)FAQs
Fuzzing for io-ts codecs and types
The npm package io-ts-fuzzer receives a total of 1 weekly downloads. As such, io-ts-fuzzer popularity was classified as not popular.
We found that io-ts-fuzzer demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.