flow.schema.json

title: Catalog

description: Each catalog source defines a portion of a Flow Catalog, by defining collections, derivations, tests, and materializations of the Catalog. Catalog sources may reference and import other sources, in order to collections and other entities that source defines.

title: JSON-Schema against which the Catalog is validated.

title: Captures of this Catalog.

target: target/collection

$ref: #/definitions/CaptureDef

title: Collections of this Catalog.

$ref: #/definitions/CollectionDef

title: Import other Flow catalog sources.

description: By importing another Flow catalog source, its collections, schemas, and derivations are bundled into the publication context of this specification. Imports are relative or absolute URLs, relative to this specification's location.

$ref: #/definitions/RelativeUrl

title: Materializations of this Catalog.

source: source/collection

$ref: #/definitions/MaterializationDef

title: Tests of this Catalog.

collection: acmeCo/collection

description: Description of the ingestion.

[A] document

another: document

description: Description of the verification.

$ref: #/definitions/TestStep

description: Settings to determine how Flow should stay abreast of ongoing changes to collections and schemas.

description: Automatically add new bindings discovered from the source.

description: Whether to automatically evolve collections and/or materialization bindings to handle changes to collections that would otherwise be incompatible with the existing catalog.

description: Capture names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.

required: resource target

title: Whether to disable the binding

description: Disabled bindings are inactive, and not validated. They can be used to represent discovered resources that are intentionally not being captured.

title: Endpoint resource to capture from.

title: Name of the collection to capture into.

$ref: #/definitions/Collection

description: A Capture binds an external system and target (e.x., a SQL table or cloud storage bucket) from which data should be continuously captured, with a Flow collection into that captured data is ingested. Multiple Captures may be bound to a single collection, but only one capture may exist for a given endpoint and target.

required: bindings endpoint

title: Continuously keep the collection spec and schema up-to-date

$ref: #/definitions/AutoDiscover

title: Bound collections to capture from the endpoint.

$ref: #/definitions/CaptureBinding

title: Endpoint to capture from.

$ref: #/definitions/CaptureEndpoint

title: Interval of time between invocations of the capture.

description:
Configured intervals are applicable only to connectors which are unable to continuously tail their source, and which instead produce a current quantity of output and then exit. Flow will start the connector again after the given interval of time has passed.

Intervals are relative to the start of an invocation and not its completion. For example, if the interval is five minutes, and an invocation of the capture finishes after two minutes, then the next invocation will be started after three additional minutes.

title: Template for shards of this capture task.

$ref: #/definitions/ShardTemplate

description: An endpoint from which Flow will capture.

title: A Connector.

$ref: #/definitions/ConnectorConfig

description: Collection names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.

description: Collection describes a set of related documents, where each adheres to a common schema and grouping key. Collections are append-only: once a document is added to a collection, it is never removed. However, it may be replaced or updated (either in whole, or in part) by a future document sharing its key. Each new document of a given key is "reduced" into existing documents of the key. By default, this reduction is achieved by completely replacing the previous document, but much richer reduction behaviors can be specified through the use of annotated reduction strategies of the collection schema.

required: readSchema writeSchema

$ref: #/definitions/Derivation

title: Template for journals of this collection.

$ref: #/definitions/JournalTemplate

title: Composite key of this collection.

$ref: #/definitions/CompositeKey

title: Projections and logical partitions of this collection.

$ref: #/definitions/Projection

title: Schema against which collection documents are validated and reduced on read.

$ref: #/definitions/Schema

title: Schema against which collection documents are validated and reduced on write and read.

title: Schema against which collection documents are validated and reduced on write.

description: Ordered JSON-Pointers which define how a composite key may be extracted from a collection document.

$ref: #/definitions/JsonPointer

description: A CompressionCodec may be applied to compress journal fragments before they're persisted to cloud stoage. The compression applied to a journal fragment is included in its filename, such as ".gz" for GZIP. A collection's compression may be changed at any time, and will affect newly-written journal fragments.

enum: NONE GZIP ZSTANDARD SNAPPY GZIP_OFFLOAD_DECOMPRESSION

description: Connector image and configuration specification.

required: config image

title: Configuration of the connector.

title: Image of the connector.

description: Derive specifies how a collection is derived from other collections.

required: transforms using

title: Template for shards of this derivation task.

title: Key component types of the shuffle keys used by derivation lambdas.

description: Typically you omit this and Flow infers it from your transform shuffle keys. In some circumstances, Flow may require that you explicitly tell it of your shuffled key types.

$ref: #/definitions/ShuffleType

title: Transforms which make up this derivation.

$ref: #/definitions/TransformDef

title: The selected runtime for this derivation.

$ref: #/definitions/DeriveUsing

description: A derivation runtime implementation.

title: A Connector.

title: A SQLite derivation.

$ref: #/definitions/DeriveUsingSqlite

title: A TypeScript derivation.

$ref: #/definitions/DeriveUsingTypescript

title: Ordered migrations which are used to initialize the database.

description: Migrations may be provided as an inline string, or as a relative URL to a file containing the migration SQL.

description: A URL identifying a resource, which may be a relative local path with respect to the current resource (i.e, ../path/to/flow.yaml), or may be an external absolute URL (i.e., http://example/flow.yaml).

title: TypeScript module implementing this derivation.

description: Module is either a relative URL of a TypeScript module file, or is an inline representation of a Typescript module. The module must have a exported Derivation variable which is an instance implementing the corresponding Derivation interface.

description: Field names a projection of a document location. They may include '/', but cannot begin or end with one. Many Fields are automatically inferred by Flow from a collection JSON Schema, and are the JSON Pointer of the document location with the leading '/' removed. User-provided Fields which act as a logical partitions are restricted to Unicode letters, numbers, '-', '_', or '.'

description: A FragmentTemplate configures how journal fragment files are produced as part of a collection.

compressionCodec: ZSTANDARD

title: Codec used to compress Journal Fragments.

$ref: #/definitions/CompressionCodec

title: Maximum flush delay before in-progress fragments are closed and persisted

description: into cloud storage. Intervals are converted into uniform time segments: 24h will "roll" all fragments at midnight UTC every day, 1h at the top of every hour, 15m a :00, :15, :30, :45 past the hour, and so on. If not set, then fragments are not flushed on time-based intervals.

title: Desired content length of each fragment, in megabytes before compression.

description: When a collection journal fragment reaches this threshold, it will be closed off and pushed to cloud storage. If not set, a default of 512MB is used.

title: Duration for which historical fragments of a collection should be kept.

description: If not set, then fragments are retained indefinitely.

description: A source collection and details of how it's read.

title: Name of the collection to be read.

title: Upper bound date-time for documents which should be processed.

description: Source collection documents published after this date-time are filtered. `notAfter` is *only* a filter. Updating its value will not cause Flow to re-process documents that have already been read. Optional. Default is to process all documents.

format: date-time

title: Lower bound date-time for documents which should be processed.

description: Source collection documents published before this date-time are filtered. `notBefore` is *only* a filter. Updating its value will not cause Flow to re-process documents that have already been read. Optional. Default is to process all documents.

title: Selector over partition of the source collection to read.

a_partition: A B

$ref: #/definitions/PartitionSelector

description: A JournalTemplate configures the journals which make up the physical partitions of a collection.

title: Fragment configuration of collection journals.

$ref: #/definitions/FragmentTemplate

description: JSON Pointer which identifies a location in a document.

description: Materialization names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.

required: resource source

title: Whether to disable the binding

description: Disabled bindings are inactive, and not validated.

title: Selected projections for this materialization.

title: Priority applied to documents processed by this binding.

description:
When all bindings are of equal priority, Flow processes documents according to their associated publishing time, as encoded in the document UUID.

However, when one binding has a higher priority than others, then *all* ready documents are processed through the binding before *any* documents of other bindings are processed.

title: Endpoint resource to materialize into.

title: The collection to be materialized.

description: A Materialization binds a Flow collection with an external system & target (e.x, a SQL table) into which the collection is to be continuously materialized.

title: Bound collections to materialize into the endpoint.

title: Endpoint to materialize into.

title: Template for shards of this materialization task.

title: Automatically materialize new bindings from a named capture

description: An Endpoint connector used for Flow materializations.

title: A Connector.

description: MaterializationFields defines a selection of projections to materialize, as well as optional per-projection, driver-specific configuration.

title: Fields to exclude.

description: This removes from recommended projections, where enabled.

title: Fields to include.

description: This supplements any recommended fields, where enabled. Values are passed through to the driver, e.x. for customization of the driver's schema generation or runtime behavior with respect to the field.

title: Should recommended projections for the endpoint be used?

description: Partition selectors identify a desired subset of the available logical partitions of a collection.

description: Partition field names and values which are excluded from the source collection. Any documents matching *any one* of the partition values will be excluded.

description: Partition field names and corresponding values which must be matched from the Source collection. Only documents having one of the specified values across all specified partition names will be matched. For example, source: [App, Web] region: [APAC] would mean only documents of 'App' or 'Web' source and also occurring in the 'APAC' region will be processed.

description: Projections are named locations within a collection document which may be used for logical partitioning or directly exposed to databases into which collections are materialized.

title: Location of this projection.

title: Is this projection a logical partition?

description:
A schema is a draft 2020-12 JSON Schema which validates Flow documents. Schemas also provide annotations at document locations, such as reduction strategies for combining one document into another.

Schemas may be defined inline to the catalog, or given as a relative or absolute URI. URIs may optionally include a JSON fragment pointer that locates a specific sub-schema therein.

For example, "schemas/marketing.yaml#/$defs/campaign" would reference the schema at location {"$defs": {"campaign": ...}} within ./schemas/marketing.yaml.

description: A ShardTemplate configures how shards process a catalog task.

title: Disable processing of the task's shards.

title: Number of hot standbys to keep for each task shard.

description: Hot standbys of a shard actively replicate the shard's state to another machine, and are able to be quickly promoted to take over processing for the shard should its current primary fail. If not set, then no hot standbys are maintained. EXPERIMENTAL: this field MAY be removed.

title: Log level of this tasks's shards.

description: Log levels may currently be "error", "warn", "info", "debug", or "trace". If not set, the effective log level is "info".

title: Maximum duration of task transactions.

description: This duration upper-bounds the amount of time during which a transaction may process documents before it must flush and commit. It may run for less time if there aren't additional ready documents for it to process. If not set, the maximum duration defaults to five minutes for materializations, and one second for captures and derivations. EXPERIMENTAL: this field MAY be removed.

title: Minimum duration of task transactions.

description: This duration lower-bounds the amount of time during which a transaction must process documents before it must flush and commit. It may run for more time if additional documents are available. The default value is zero seconds. Larger values may result in more data reduction, at the cost of more latency. EXPERIMENTAL: this field MAY be removed.

title: Size of the reader channel used for decoded documents.

description: Larger values are recommended for tasks having more than one shard split and long, bursty transaction durations. If not set, a reasonable default (currently 4,096) is used. EXPERIMENTAL: this field is LIKELY to be removed.

title: Size of the ring buffer used to sequence documents for exactly-once semantics.

description: The ring buffer is a performance optimization only: catalog tasks will replay portions of journals as needed when messages aren't available in the buffer. It can remain small if upstream task transactions are small, but larger transactions will achieve better performance with a larger ring. If not set, a reasonable default (currently 65,536) is used. EXPERIMENTAL: this field is LIKELY to be removed.

description: A Shuffle specifies how a shuffling key is to be extracted from collection documents.

title: A Document may be shuffled to any task shard.

description: Use 'any' if your transformation does not rely on internal task state, or if your derivation is not intended to scale beyond a single shard.

title: Key which identifies fields of sourced documents to extract and shuffle upon.

title: Lambda which extracts a shuffle key from the sourced documents of this transform.

description: Lambdas may be provided inline, or as a relative URL to a file containing the lambda.

description: Type of a shuffled key component.

description: Test names are paths of Unicode letters, numbers, '-', '_', or '.'. Each path component is separated by a slash '/', and a name may not begin or end in a '/'.

description: A test step describes either an "ingest" of document fixtures into a collection, or a "verify" of expected document fixtures from a collection.

description: Description of the ingestion.

description: Description of the verification.

description: Ingest document fixtures into a collection.

description: Verify the contents of a collection match a set of document fixtures.

description: An ingestion test step ingests document fixtures into the named collection.

description: Description of the ingestion.

title: Name of the collection into which the test will ingest.

title: Description of this test ingestion.

title: Documents to ingest.

description: Each document must conform to the collection's schema.

description: A verification test step verifies that the contents of the named collection match the expected fixtures, after fully processing all preceding ingestion test steps.

description: Description of the verification.

title: Collection from which the test will verify.

title: Description of this test verification.

title: Documents to verify.

description: Each document may contain only a portion of the matched document's properties, and any properties present in the actual document but not in this document fixture are ignored. All other values must match or the test will fail.

description: Transform names are Unicode letters, numbers, '-', '_', or '.'.

description: A Transform reads and shuffles documents of a source collection, and processes each document through either one or both of a register "update" lambda and a derived document "publish" lambda.

title: Whether to disable this transform.

description: Disabled transforms are completely ignored at runtime and are not validated.

title: Lambda applied to the sourced documents of this transform.

title: Name of this transformation.

description: The names of transforms within a derivation must be unique and stable.

title: Priority applied to documents processed by this transform.

description:
When all transforms are of equal priority, Flow processes documents according to their associated publishing time, as encoded in the document UUID.

However, when one transform has a higher priority than others, then *all* ready documents are processed through the transform before *any* documents of other transforms are processed.

title: Delay applied to documents processed by this transform.

description: Delays are applied as an adjustment to the UUID clock encoded within each document, which is then used to impose a relative ordering of all documents read by this derivation. This means that read delays are applied in a consistent way, even when back-filling over historical documents. When caught up and tailing the source collection, delays also "gate" documents such that they aren't processed until the current wall-time reflects the delay.

title: Shuffle by which source documents are mapped to processing shards.

title: Source collection read by this transform.


bukkit-plugin.json

type: string

description: Optional command attributes.

type: object

description: A user-friendly description for a command.

description: Alternate command names a user may use instead.

type: string array

description: The permission required to use the command.

description: A no-permission message.

description: A short description of how to use this command.

description: Optional permission attributes.

description: A short description of what this permission allows.

description: The default state for the permission.

$ref: #/definitions/default-permission

description: Allows other permissions to be set as a relation to the parent permission.

type: array object

type: boolean object

type: boolean

$ref: #/definitions/permission

type: string boolean

default: op

description: The unique name of plugin.

$ref: #/definitions/plugin-name

description: The plugin's initial class file.

description: A plugin revision identifier.

type: string number

description: Human readable plugin summary.

description: The plugin author.

description: The plugin contributors.

type: array

title: Website

description: The URL to the plugin's site

format: uri

description: The token to prefix plugin log entries.

description: Set to true if this plugin uses a database.

description: The phase of server-startup this plugin will load during.

enum: STARTUP POSTWORLD

default: POSTWORLD

description: Other required plugins.

description: Other plugins that add functionality.

description: A list of plugins should be loaded after this plugin.

description: The commands the plugin will register

$ref: #/definitions/command

description: The permissions the plugin will register

description: Gives the default default state of permissions registered for the plugin.

description: The concepts that the plugin acknowledges.

description: Gives the API version which this plugin is designed to support.

description: A list of libraries the server should download and supply to the plugin when loading it.

description: A single server provided library. This library can be used during runtime without being shaded into the plugin jar.

required: name main version

title: JSON schema for Bukkit Plugin YAML


stripe-app-local.schema.json

title: Stripe App local development manifest

description: A manifest describing a Stripe App.

description: The base manifest that this local manifest will extend.

description: Configuration options for how to display the app in the Dashboard.

description: Configure the content security policy for your app.


description: The package unique identifier

description: The package version

description: The package meta-data locale

description: The distribution channel

title: Platform

description: The installer supported operating system

description: The installer minimum operating system version

enum: msix msi appx exe zip inno nullsoft wix burn pwa

description: Enumeration of supported installer types

enum: user machine

description: Scope indicates if the installer is per user or per machine

title: InstallModes

enum: interactive silent silentWithProgress

description: List of supported installer modes

description: Silent is the value that should be passed to the installer when user chooses a silent or quiet install

description: SilentWithProgress is the value that should be passed to the installer when user chooses a non-interactive install

description: Interactive is the value that should be passed to the installer when user chooses an interactive install

description: InstallLocation is the value passed to the installer for custom install location. <INSTALLPATH> token can be included in the switch value so that winget will replace the token with user provided path

description: Log is the value passed to the installer for custom log file path. <LOGPATH> token can be included in the switch value so that winget will replace the token with user provided path

description: Upgrade is the value that should be passed to the installer when user chooses an upgrade

description: Custom switches will be passed directly to the installer by winget

type: integer

description: List of additional non-zero installer success exit codes other than known default values by winget

enum: install uninstallPrevious

description: The upgrade method

description: List of commands or aliases to run the package

description: List of protocols the package provides a handler for

description: List of file extensions the package could support

description: List of Windows feature dependencies

description: List of Windows library dependencies

$ref: #/definitions/PackageIdentifier

$ref: #/definitions/PackageVersion

description: List of package dependencies from current source

description: List of external package dependencies

description: PackageFamilyName for appx or msix installer. Could be used for correlation of packages across sources

description: ProductCode could be used for correlation of packages across sources

description: List of appx or msix installer capabilities

description: List of appx or msix installer restricted capabilities

$ref: #/definitions/Locale

$ref: #/definitions/Platform

$ref: #/definitions/MinimumOSVersion

description: The installer target architecture

$ref: #/definitions/InstallerType

$ref: #/definitions/Scope

description: The installer Url

description: Sha256 is required. Sha256 of the installer

description: SignatureSha256 is recommended for appx or msix. It is the sha256 of signature file inside appx or msix. Could be used during streaming install if applicable

$ref: #/definitions/InstallModes

$ref: #/definitions/InstallerSwitches

$ref: #/definitions/InstallerSuccessCodes

$ref: #/definitions/UpgradeBehavior

$ref: #/definitions/Commands

$ref: #/definitions/Protocols

$ref: #/definitions/FileExtensions

$ref: #/definitions/Dependencies

$ref: #/definitions/PackageFamilyName

$ref: #/definitions/ProductCode

$ref: #/definitions/Capabilities

$ref: #/definitions/RestrictedCapabilities

description: A representation of a single-file manifest representing an app installers in the OWC. v1.0.0

$ref: #/definitions/Channel

$ref: #/definitions/Installer

default: installer

const: installer

description: The manifest type

description: The manifest syntax version

required: PackageIdentifier PackageVersion Installers ManifestType ManifestVersion


description: A JSON representation of a Deno configuration file.

title: Deno configuration file Schema

description: Instructs the TypeScript compiler how to compile .ts files.

markdownDescription:
Allow JavaScript files to be a part of your program. Use the `checkJS` option to get errors from these files.

See more: https://www.typescriptlang.org/tsconfig#allowJs

description: Disable error reporting for unreachable code.

markdownDescription:
Disable error reporting for unreachable code.

See more: https://www.typescriptlang.org/tsconfig#allowUnreachableCode

description: Disable error reporting for unused labels.

markdownDescription:
Disable error reporting for unused labels.

See more: https://www.typescriptlang.org/tsconfig#allowUnusedLabels

description: Enable error reporting in type-checked JavaScript files.

markdownDescription:
Enable error reporting in type-checked JavaScript files.

See more: https://www.typescriptlang.org/tsconfig#checkJs

markdownDescription:
Differentiate between undefined and not present when type checking

See more: https://www.typescriptlang.org/tsconfig#exactOptionalPropertyTypes

description: Enable experimental support for TC39 stage 2 draft decorators.

markdownDescription:
Enable experimental support for TC39 stage 2 draft decorators.

See more: https://www.typescriptlang.org/tsconfig#experimentalDecorators

description: Specify what JSX code is generated.

default: react

enum: preserve react react-jsx react-jsxdev react-native

markdownDescription:
Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'

See more: https://www.typescriptlang.org/tsconfig#jsxFactory

markdownDescription:
Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'.

See more: https://www.typescriptlang.org/tsconfig#jsxFragmentFactory

description: Specify module specifier used to import the JSX factory functions when using jsx: 'react-jsx*'.

markdownDescription:
Specify module specifier used to import the JSX factory functions when using jsx: `react-jsx*`.

See more: https://www.typescriptlang.org/tsconfig/#jsxImportSource

markdownDescription:
Make keyof only return strings instead of string, numbers or symbols. Legacy option.

See more: https://www.typescriptlang.org/tsconfig#keyofStringsOnly

markdownDescription:
Specify a set of bundled library declaration files that describe the target runtime environment.

See more: https://www.typescriptlang.org/tsconfig#lib

description: Do not truncate error messages.

markdownDescription:
Do not truncate error messages.

See more: https://www.typescriptlang.org/tsconfig#noErrorTruncation

markdownDescription:
Enable error reporting for fallthrough cases in switch statements.

See more: https://www.typescriptlang.org/tsconfig#noFallthroughCasesInSwitch

markdownDescription:
Enable error reporting for expressions and declarations with an implied `any` type..

See more: https://www.typescriptlang.org/tsconfig#noImplicitAny

markdownDescription:
Ensure overriding members in derived classes are marked with an override modifier.

See more: https://www.typescriptlang.org/tsconfig#noImplicitOverride

markdownDescription:
Enable error reporting for codepaths that do not explicitly return in a function.

See more: https://www.typescriptlang.org/tsconfig#noImplicitReturns

description: Enable error reporting when `this` is given the type `any`.

markdownDescription:
Enable error reporting when `this` is given the type `any`.

See more: https://www.typescriptlang.org/tsconfig#noImplicitThis

markdownDescription:
Disable adding 'use strict' directives in emitted JavaScript files.

See more: https://www.typescriptlang.org/tsconfig#noImplicitUseStrict

markdownDescription:
Disable strict checking of generic signatures in function types.

See more: https://www.typescriptlang.org/tsconfig#noStrictGenericChecks

description: Enable error reporting when a local variables aren't read.

markdownDescription:
Enable error reporting when a local variables aren't read.

See more: https://www.typescriptlang.org/tsconfig#noUnusedLocals

description: Raise an error when a function parameter isn't read

markdownDescription:
Raise an error when a function parameter isn't read

See more: https://www.typescriptlang.org/tsconfig#noUnusedParameters

description: Add `undefined` to a type when accessed using an index.

markdownDescription:
Add `undefined` to a type when accessed using an index.

See more: https://www.typescriptlang.org/tsconfig#noUncheckedIndexedAccess

description: Enable all strict type checking options.

markdownDescription:
Enable all strict type checking options.

See more: https://www.typescriptlang.org/tsconfig#strict

markdownDescription:
Check that the arguments for `bind`, `call`, and `apply` methods match the original function.

See more: https://www.typescriptlang.org/tsconfig#strictBindCallApply

markdownDescription:
When assigning functions, check to ensure parameters and the return values are subtype-compatible.

See more: https://www.typescriptlang.org/tsconfig#strictFunctionTypes

markdownDescription:
Check for class properties that are declared but not set in the constructor.

See more: https://www.typescriptlang.org/tsconfig#strictPropertyInitialization

description: When type checking, take into account `null` and `undefined`.

markdownDescription:
When type checking, take into account `null` and `undefined`.

See more: https://www.typescriptlang.org/tsconfig#strictNullChecks

markdownDescription:
Disable reporting of excess property errors during the creation of object literals.

See more: https://www.typescriptlang.org/tsconfig#suppressExcessPropertyErrors

markdownDescription:
Suppress `noImplicitAny` errors when indexing objects that lack index signatures.

See more: https://www.typescriptlang.org/tsconfig#suppressImplicitAnyIndexErrors

description: The location of an import map to be used when resolving modules. If an import map is specified as an `--importmap` flag or using "imports" and "scopes" properties, they will override this value.

description: A map of specifiers to their remapped specifiers.

description: The key is the specifier or partial specifier to match, with a value that represents the target specifier.

description: Define a scope which remaps a specifier in only a specified scope

description: A definition of a scoped remapping.

description: The key is the specifier or partial specifier to match within the referring scope, with a value that represents the target specifier.

description: List of files, directories or globs that will be ignored by all other configurations. Requires Deno 1.34 or later.

description: Configuration for linter

description: List of files, directories or globs that will be linted.

description: List of files, directories or globs that will not be linted.

description: List of tag names that will be run. Empty list disables all tags and will only use rules from `include`.

description: List of rule names that will be excluded from configured tag sets. If the same rule is in `include` it will be run.

description: List of rule names that will be run. Even if the same rule is in `exclude` it will be run.

default: pretty

enum: pretty json compact

description: The default report format to use when linting

description: Configuration for formatter

description: List of files, directories or globs that will be formatted.

description: List of files, directories or globs that will not be formatted.

description: Whether to use tabs (true) or spaces (false) for indentation.

description: The width of a line the printer will try to stay under. Note that the printer may exceed this width in certain cases.

type: number

description: The number of characters for an indent.

description: Whether to use single quote (true) or double quote (false) for quotation.

description: Define how prose should be wrapped in Markdown files.

default: always

enum: always never preserve

description: Whether to prefer using semicolons.

description: The number of characters for an indent.

description: Whether to prefer using semicolons.

description: Enables or disables the use of a local node_modules folder for npm packages. Alternatively, use the `--node-modules-dir` flag or override the config via `--node-modules-dir=false`. Requires Deno 1.34 or later.

description: UNSTABLE: Enables or disables the use of a local vendor folder as a local cache for remote modules and node_modules folder for npm packages. Alternatively, use the `--vendor` flag or override the config via `--vendor=false`. Requires Deno 1.36.1 or later.

description: Configuration for deno task

description: Command to execute for this task name.

description: Configuration for deno test

description: List of files, directories or globs that will be searched for tests.

description: List of files, directories or globs that will not be searched for tests.

description: Configuration for deno bench

description: List of files, directories or globs that will be searched for benchmarks.

description: List of files, directories or globs that will not be searched for benchmarks.

description: Whether to use a lock file or the path to use for the lock file. Can be overridden by CLI arguments.


vsix-manifestinjection.json

required: extension progId

description: Content type of the file with this extension.

description: The registry path to where this file association should be registered with default program.

description: The file extension.

description: Indicates whether this file association is used for display icons only.

description: Perceived type of the file with this extension.

description: The matching /progId/id that's associated with this file extension.

description: The registry path to where this url association should be registered with default program.

description: The name of the association.

description: Id for localization purpose only.

description: The matching /progId/id that's associated with this protocol.

description: The URL protocol to associate.

description: Indicates whether silent default takeover is allowed.

description: Indicates if extensions should always be shown in Windows Explorer.

description: App user model ID for taskbar and jump list grouping.

description: Arguments to pass to the executable.

description: CLSID for the progId

description: Indicates whether application needs to support DDE.

description: DDE application name.

description: DDE topic name.

description: Default icon resource DLL path.

description: Default icon position.

description: The name of progId.

description: Icon handler GUID.

description: The unique identifier.

description: Id for localization purpose only.

description: The path to the executable.

description: A list of file associations (protocol handlers).

$ref: #/definitions/fileAssociation

description: A list of URL associations (protocol handlers).

$ref: #/definitions/urlAssociation

$ref: #/definitions/progIds

title: JSON schema for Visual Studio manifest extensions


jdt.json

description: Use JSONPath syntax to navigate to the node where the transform should be applied.

description: The transformation value that should be applied.

description: Renames nodes

description: Renames nodes

description: Replaces the current node with the given value.

type: array boolean object string

description: Removes the node with the given name from the current level.

type: boolean integer null number object string

description: Merges the current node value with the given object.

type: object array

title: JSON schema for JSON Document Transforms


yarnrc.json

title: JSON Schema for Yarnrc files

description:
Yarnrc files (named this way because they must be called `.yarnrc.yml`) are the one place where you'll be able to configure Yarn's internal settings. While Yarn will automatically find them in the parent directories, they should usually be kept at the root of your project (often your repository). **Starting from the v2, they must be written in valid Yaml and have the right extension** (simply calling your file `.yarnrc` won't do).

Environment variables can be accessed from setting definitions by using the `${NAME}` syntax when defining the values. By default Yarn will require the variables to be present, but this can be turned off by using either `${NAME-fallback}` (which will return `fallback` if `NAME` isn't set) or `${NAME:-fallback}` (which will return `fallback` if `NAME` isn't set, or is an empty string).

Finally, note that most settings can also be defined through environment variables (at least for the simpler ones; arrays and objects aren't supported yet). To do this, just prefix the names and write them in snake case: `YARN_CACHE_FOLDER` will set the cache folder (such values will overwrite any that might have been defined in the RC files - use them sparingly).

__info: This file contains the JSON Schema for Yarnrc files and is:

__info: 1) Hosted on the Yarn Website at http://yarnpkg.com/configuration/yarnrc.json

__info: 2) Registered on the SchemaStore catalog so that editors can offer autocompletion and validation.

__info: 3) Used to generate the documentation page at http://yarnpkg.com/configuration/yarnrc

__info: Note: Properties prefixed with a single underscore (e.g. _exampleItems, _exampleKeys)

__info: are unique to our documentation generation interpreter. All others will be picked up

__info: 1) Don't set a default if it's null, dynamic, or an object.

__info: 2) Use `examples` for scalars, `_exampleItems` for arrays, and `_exampleKeys` for objects.

__info: 3) Always add a _package property to each configuration setting.

title: Path where the downloaded packages are stored on your system.

description: They'll be normalized, compressed, and saved under the form of zip archives with standardized names. The cache is deemed to be relatively safe to be shared by multiple projects, even when multiple Yarn instances run at the same time on different projects. For setting a global cache folder, you should use `enableGlobalCache` instead.

format: uri-reference

title: Behavior that Yarn should follow when it detects that a cache entry is outdated.

description:
Whether or not a cache entry is outdated depends on whether it has been built and checksumed by an earlier release of Yarn, or under a different compression settings. Possible behaviors are:

- If `required-only`, it'll keep using the file as-is, unless the version that generated it was decidedly too old.
- If `match-spec`, it'll also rebuild the file if the compression level has changed. If `always`, it'll always regenerate the cache files so they use the current cache version.
- If `auto` (the default), it'll act as either `required-only` or `always` depending on whether `enableGlobalCache` is enabled (with `always` being selected in that case).

enum: required-only match-spec always auto

default: auto

title: Path to a file containing one or multiple Certificate Authority signing certificates.

title: List of git refs against which Yarn will compare your branch when it needs to detect changes.

description: Supports git branches, tags, and commits. The default configuration will compare against master, origin/master, upstream/master, main, origin/main, and upstream/main.

default: master origin/master upstream/master main origin/main upstream/main

title: Array of file glob patterns that will be excluded from change detection.

description: Files matching the following patterns (in terms of relative paths compared to the root of the project) will be ignored by every command checking whether files changed compared to the base ref (this include both `yarn version check` and `yarn workspaces foreach --since`).

title: Behavior that Yarn should follow when it detects that a cache entry has a different checksum than expected.

description:
Possible behaviors are:

- If `throw` (the default), Yarn will throw an exception.
- If `update`, the lockfile will be updated to match the cached checksum.
- If `reset`, the cache entry will be purged and fetched anew.
- If `ignore`, nothing will happen, Yarn will skip the check.

enum: throw update ignore reset

default: throw

title: Amount of `git clone` operations that Yarn will run at the same time.

description: We by default limit it to 2 concurrent clone operations.

type: number string

title: Compression level employed for zip archives

description: Possible values go from 0 ("no compression, faster") to 9 ("heavy compression, slower"). The default is 'mixed', which is a variant of 9 where files may be stored uncompressed if the builtin libzip heuristic thinks it will lead to a more sensible result.

default: mixed

title: Path of the constraints file.

description: This only matters for Prolog constraints, which are being deprecated. JavaScript constraints will always be read from the `yarn.config.js` file.

title: Default language mode that should be used when a package doesn't offer any insight.

description: This is an internal configuration setting that shouldn't be touched unless you really know what you're doing.

default: node

title: Default protocol that should be used when a dependency range is a pure semver range.

default: npm:

title: Default prefix used in semver ranges created by `yarn add` and similar commands.

description: Possible values are `"^"` (the default), `"~"` or `""`.

title: Folder where the versioning files are stored.

title: Define whether colors are allowed on the standard output.

description: The default is to check the terminal capabilities, but you can manually override it to either `true` or `false`.

title: Define whether the cache should be shared between all local projects.

description: If true (the default), Yarn will store the cache files into a folder located within `globalFolder` instead of respecting `cacheFolder`.

title: Define whether hyperlinks are allowed on the standard output.

title: Define whether to allow adding/removing files from the cache or not.

description: If true, Yarn will refuse to change the cache in any way, whether it would add files or remove them, and will abort installs instead of letting that happen.

title: Define whether to allow adding/removing entries from the lockfile or not.

description: If true (the default on CI), Yarn will refuse to change the lockfile in any way, whether it would add new entries or remove them. Other files can be added to the checklist via the `immutablePatterns` setting.

title: Define whether to print the build output directly within the terminal or not.

description: If true (the default on CI environments), Yarn will print the build output directly within the terminal instead of buffering it in an external log file. Note that by default Yarn will attempt to use collapsible terminal sequences on supporting CI providers to make the output more legible.

title: Define whether to print patch hunks directly within the terminal or not.

description: If true, Yarn will print any patch sections (hunks) that could not be applied successfully to the terminal.

title: Define whether to prepend a message name before each printed line or not.

description: If true, Yarn will prefix most messages with codes suitable for search engines, with hyperlink support if your terminal allows it.

title: Define whether to mirror local cache entries into the global cache or not.

description: If true (the default), Yarn will use the global folder as indirection between the network and the actual cache. This is only useful if `enableGlobalCache` is explicitly set to `false`, as otherwise the cache entries are persisted to the global cache no matter what.

title: Define whether remote network requests are allowed or not.

description: If false, Yarn will never make any request to the network by itself, and will throw an exception rather than let it happen. It's a very useful setting for CI, which typically want to make sure they aren't loading their dependencies from the network by mistake.

title: Define whether animated progress bars should be shown or not.

description: If true (the default outside of CI environments), Yarn will show progress bars for long-running events.

titke: Define whether to run postinstall scripts or not.

description:
If false, Yarn will not execute the `postinstall` scripts from third-party packages when installing the project (workspaces will still see their postinstall scripts evaluated, as they're assumed to be safe if you're running an install within them).

Note that you also have the ability to disable scripts on a per-package basis using `dependenciesMeta`, or to re-enable a specific script by combining `enableScripts` and `dependenciesMeta`.

title: Define whether SSL errors should fail requests or not.

description: If false, SSL certificate errors will be ignored

title: Define whether anonymous telemetry data should be sent or not.

description:
If true (the default outside of CI environments), Yarn will periodically send anonymous data to our servers tracking some usage information such as the number of dependencies in your project, how many installs you ran, etc.

Consult the [Telemetry](/advanced/telemetry) page for more details about this process.

title: Define whether to print the time spent running each sub-step or not.

description: If false, Yarn will not print the time spent running each sub-step when running various commands. This is only needed for testing purposes, when you want each execution to have exactly the same output as the previous ones.

title: Define whether pure semver ranges should allow workspace resolution or not.

description:
If false, Yarn won't link workspaces just because their versions happen to match a semver range. Disabling this setting will require all workspaces to reference one another using the explicit `workspace:` protocol.

This setting is usually only needed when your project needs to use the published version in order to build the new one (that's for example what happens with Babel, which depends on the latest stable release to build the future ones).

title: Path where all files global to the system will be stored.

description: Various files we be stored there: global cache, metadata cache, ...

title: Proxy to use when making an HTTP request.

description: Only HTTP proxies are supported at the moment.

title: Amount of time to wait in seconds before retrying a failed HTTP request.

title: Amount of time to wait in milliseconds before cancelling pending HTTP requests.

title: Path to a file containing a certificate chain in PEM format.

title: Path to a file containing a private key in PEM format.

title: Define a proxy to use when making an HTTPS request.

title: Define whether `yarnPath` should be respected or not.

description: If true, whatever Yarn version is being executed will keep running rather than looking at the value of `yarnPath` to decide.

title: Array of file patterns whose content won't be allowed to change if `enableImmutableInstalls` is set.

title: Scope used when creating packages via the `init` command.

default: yarnpkg

title: Additional fields to set when creating packages via the `init` command.

type: string number boolean

description: All properties will be added verbatim to the generated package.json.

title: Path where the install state will be persisted.

description: The install state file contains a bunch of cached information about your project. It's only used for optimization purposes, and will be recreated if missing (you don't need to add it to Git).

title: Alter the log levels for emitted messages.

description: This can be used to hide specific messages, or instead make them more prominent. Rules defined there accept filtering messages by either name or raw content.

title: Match all messages with the given code.

title: Match messages whose content is strictly equal to the given text.

description: In case a message matches both `code`-based and `text`-based filters, the `text`-based ones will take precedence over the `code`-based ones.

examples: lorem-ipsum@npm:1.2.3 lists build scripts, but its build has been explicitly disabled through configuration

title: Match messages whose content match the given glob pattern.

description: In case a message matches both `pattern`-based and `code`-based filters, the `pattern`-based ones will take precedence over the other ones. Patterns can be overridden on a case-by-case basis by using the `text` filter, which has precedence over `pattern`.

examples: lorem-ipsum@* lists build scripts, but its build has been explicitly disabled through configuration

title: New log level to apply to the matching messages. Use `discard` if you wish to hide those messages altogether.

enum: info warning error discard

level: discard

level: error

title: Amount of HTTP requests that are allowed to run at the same time.

description: We default to 50 concurrent requests, but it may be required to limit it even more when working behind proxies that can't handle large amounts of traffic.

title: Additional network settings, per hostname

$ref: #/properties/httpsCaFilePath

$ref: #/properties/enableNetwork

$ref: #/properties/httpProxy

$ref: #/properties/httpsCertFilePath

$ref: #/properties/httpsKeyFilePath

$ref: #/properties/httpsProxy

title: Highest point where packages can be hoisted.

description:
Replacement of the former `nohoist` setting. Possible values are:

- If `none` (the default), packages are hoisted as per the usual rules.
- If `workspaces`, packages won't be hoisted past the workspace that depends on them.
- If `dependencies`, transitive dependencies also won't be hoisted past your direct dependencies.

This setting can be overridden on a per-workspace basis using the `installConfig.hoistingLimits` field.

enum: workspaces dependencies none

title: Define whether workspaces are allowed to require themselves.

description: If false, Yarn won't create self-referencing symlinks when using `nodeLinker: node-modules`. This setting can be overridden on a per-workspace basis using the `installConfig.selfReferences` field.

title: Define how to copy files to their target destination.

description:
Possible values are:

- If `classic`, regular copy or clone operations are performed.
- If `hardlinks-global`, hardlinks to a global content-addressable store will be used.
- If `hardlinks-local`, hardlinks will only be created between similar packages from the same project.

For compatibility with the ecosystem, the default is `classic`.

default: classic

title: Define how Node packages should be installed.

description:
Yarn supports three ways to install your project's dependencies, based on the `nodeLinker` setting. Possible values are:

- If `pnp`, a single Node.js loader file will be generated.
- If `pnpm`, a `node-modules` will be created using symlinks and hardlinks to a global content-addressable store.
- If `node-modules`, a regular `node_modules` folder just like in Yarn Classic or npm will be created.

enum: pnp pnpm node-modules

default: pnp

title: Define whether to use junctions or symlinks when creating links on Windows.

description:
Possible values are:

- If `junctions`, Yarn will use Windows junctions when linking workspaces into `node_modules` directories, which are always absolute paths.
- If `symlinks`, Yarn will use symlinks, which will use relative paths, and is consistent with Yarn's behavior on non-Windows platforms.

Symlinks are preferred, but they require the Windows user running Yarn to have the `create symbolic links` privilege. As a result, we default to using junctions instead.

enum: junctions symlinks

title: Define whether to always send authentication credentials when querying the npm registry.

description: If true, authentication credentials will always be sent when sending requests to the registries. This shouldn't be needed unless you configured the registry to reference a private npm mirror.

title: Define the registry to use when auditing dependencies.

description: If not explicitly set, the value of `npmRegistryServer` will be used.

title: Define the authentication credentials to use by default when accessing your registries.

description: Replacement of the former `_auth` setting. Because it requires storing unencrypted values in your configuration, `npmAuthToken` should be preferred when possible.

title: Define the authentication token to use by default when accessing your registries.

description: Replacement of the former `_authToken` settings. If you're using `npmScopes` to define multiple registries, the `npmRegistries` dictionary allows you to override these credentials on a per-registry basis.

title: Define the default access to use when publishing packages to the npm registry.

description: Valid values are `public` and `restricted`, but `restricted` usually requires to register for a paid plan (this is up to the registry you use). Can be overridden on a per-package basis using the `publishConfig.access` field.

title: Array of advisory ID glob patterns of packages to exclude from `yarn npm audit`.

title: Array of advisory ID glob patterns to ignore from `yarn npm audit` results.

title: Define the registry to use when pushing packages.

description: If not explicitly set, the value of `npmRegistryServer` will be used. Overridden by `publishConfig.registry`.

title: Per-registry configurations.

title: Define the registry to use when fetching packages.

description: Should you want to define different registries for different scopes, see `npmScopes`. To define the authentication scheme for your servers, see `npmAuthToken`. The url must use HTTPS by default, but this can be changed by adding it to the `unsafeHttpWhitelist`.

title: Per-scope registry configurations.

title: Extend the package definitions of your dependencies; useful to fix third-party issues.

description:
Some packages may have been specified incorrectly with regard to their dependencies - for example with one dependency being missing, causing Yarn to refuse it the access. The `packageExtensions` fields offer a way to extend the existing package definitions with additional information. If you use it, consider sending a PR upstream and contributing your extension to the [`plugin-compat` database](https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-extensions/sources/index.ts).

Note: This field is made to add dependencies; if you need to rewrite existing ones, prefer the `resolutions` field instead.

description: Each key is a descriptor covering a semver range. The extensions will be applied to any package whose version matches the specified range. This is true regardless of where the package comes from, so no distinction on whether they come from git or a registry, for example. Only the version matters.

title: Folder where patch files will be written to.

title: Define whether to generate a Node.js ESM loader or not.

description: If true, Yarn will generate an experimental ESM loader (`.pnp.loader.mjs`) on top of the CJS one.

title: Define whether to store the PnP data in the generated file or not.

description: If false, Yarn will generate an additional `.pnp.data.json` file.

title: Define whether to allow packages to rely on the builtin PnP fallback mechanism.

description:
Possible values are:

- If `all`, all packages can access dependencies made available in the fallback.
- If `dependencies-only` (the default), dependencies will have access to them but not your workspaces.
- If `none`, no packages will have access to them.

title: Array of file glob patterns that should be forced to use the default CommonJS resolution.

description: Files matching those locations will not be covered by PnP and will use the regular Node.js resolution algorithm. Typically only needed if you have subprojects that aren't yet part of your workspace tree.

title: Define whether to attempt to simulate traditional `node_modules` hoisting.

description:
Possible values are:

- If `strict` (the default), modules won't be allowed to require packages they don't explicitly list in their own dependencies.
- If `loose`, packages will be allowed to access any other package that would have been hoisted to the top-level under 1.x installs.

Note that, even in loose mode, hoisted require calls are unsafe and should be discouraged.

title: String prepended to the generated PnP loader.

title: Path where unplugged packages are stored.

description: While Yarn attempts to reference and load packages directly from their zip archives, it may not always be possible. In those cases, Yarn will extract the files to the unplugged folder.

title: Define whether to use deferred versioning by default or not.

description: If true, deferred versioning by default when running the `yarn version` family of commands.

title: Define whether to use interactive prompts by default or not.

description: If true, Yarn will ask for your guidance when some actions would be improved by being disambiguated. Enabling this setting also unlocks some features (for example the `yarn add` command will suggest to reuse the same dependencies as other workspaces if pertinent).

title: Define whether to reuse most common dependency ranges or not when adding dependencies to a package.

description: If true, `yarn add` will attempt to reuse the most common dependency range in other workspaces.

title: Define whether to truncate lines that would go beyond the size of the terminal or not.

description: If true, Yarn will truncate lines that would go beyond the size of the terminal. If progress bars are disabled, lines will never be truncated.

title: Style of progress bar to use.

title: Systems for which Yarn should install packages.

title: List of operating systems to cover.

title: List of CPU architectures to cover.

description: See https://nodejs.org/docs/latest/api/process.html#processarch for the architectures supported by Node.js

title: The list of standard C libraries to cover.

title: Define the minimal amount of time between two telemetry events, in days.

description: By default we only send one request per week, making it impossible for us to track your usage with a lower granularity.

title: User-defined unique ID to send along with telemetry events.

description:
The default settings never assign unique IDs to anyone, so we have no way to know which data originates from which project. This setting can be used to force a user ID to be sent to our telemetry server.

Frankly, it's only useful in some very specific use cases. For example, we use it on the Yarn repository in order to exclude our own usage from the public dashboards (since we run Yarn far more often here than anywhere else, the resulting data would be biased).

title: Define whether to automatically install @types dependencies.

description: If true, Yarn will automatically add `@types` dependencies when running `yarn add` with packages that don't provide their own typings (as reported by the Algolia npm database). This behavior is enabled by default if you have a tsconfig file at the root of your project.

title: Array of hostname glob patterns for which using the HTTP protocol is allowed.

title: Path where virtual packages will be stored.

description: Due to a particularity in how Yarn installs packages which list peer dependencies, some packages will be mapped to multiple virtual directories that don't actually exist on the filesystem. This settings tells Yarn where to put them. Note that the folder name *must* be `__virtual__`.

title: Path of a Yarn binary to use instead of the global one.

description:
This binary will be executed instead of any other (including the global one) for any command run within the directory covered by the rc file. If the file extension ends with `.js` it will be required, and will be spawned in any other case.

The `yarnPath` setting used to be the preferred way to install Yarn within a project, but we now recommend to use [Corepack](https://nodejs.org/api/corepack.html) in most cases.


pubspec.json

description: Version range of the package or SDK to use

description: Allows any version of the package. This is not recommended for performance reasons

$ref: #/definitions/version

$ref: #/definitions/versionConstraint

$comment: Syntax in yaml: `foo: ^1.2.3`

description: Default dependency, matches any version of the package

$comment: Syntax in yaml: `foo:` or `foo: null`

title: SDK dependency

description: The SDK which contains this package

title: Hosted dependency

description: URL of the package server hosting this package

description: The package server hosting this package

description: Git dependency

$comment: Can either be a string (uri) or an object with ref etc.

description: URI of the repository hosting this package

description: Path of this package relative to the Git repo's root

description: The branch, tag, or anything else Git allows to identify a commit.

description: Path dependency

$ref: #/definitions/dependency

description: Dart Pubspec file

description: The name of this package. The name is how other packages refer to yours, should you publish it.

$ref: #/definitions/dependencies

title: Pubspec


samtrc.json

enum: error warn info off

description: The name of the configuration file to extend from, used to determine the default rules to apply

enum: recommended strict

description: Configuration for linter rules for the current project

description: Configure whether model types (e.g. record and service) must be in a separate file from their providers and consumers

const: split-model-and-providers

description: Configure naming rules which apply to all types in the project

const: naming-conventions


completely.json

completely.json

contentType: file

.github

path: .github

contentType: directory

bin

path: bin

lib

path: lib

schemas

path: schemas

spec

path: spec

.gitattributes

path: .gitattributes

.gitignore

path: .gitignore

.rspec

path: .rspec

Dockerfile

path: Dockerfile

Gemfile

path: Gemfile

LICENSE

path: LICENSE

Runfile

path: Runfile

completely

defaultBranch: master

ownerLogin: DannyBen

master

refType: branch

rawLines: "description": "A completion of the current application\nhttps://github.com/DannyBen/completely#using-the-completely-command-line",

rawLines: "description": "Completions of the current command or sub-command\nhttps://github.com/DannyBen/completely#using-the-completely-command-line",

rawLines: "description": "A completion of the current command or sub-command\nhttps://github.com/DannyBen/completely#using-the-completely-command-line",

cssClass: pl-ent

cssClass: pl-s

cssClass: pl-pds

cssClass: pl-cce

deleteTooltip: You must be signed in to make or propose changes

post: Qr5-WigeJZYeHM6NikFUMbNV3dFWI3PzGSNC5XlhWd4y2vATt98QYXVM-H053DIt2DyGF0EIzq7fS9PgeD5mOQ

post: O8P5WWTn-euHNFzYYUKWsDQVEFEI3BJIBYNdqNU3P2aLxYTngCYtSLwL-wVwoo9eRPjAMm7zZSxzQI1nmRERPQ

title: completely/schemas/completely.json at master · DannyBen/completely