Library for simple inclusion of the file content
A library for manipulating IPv4 and IPv6 addresses in JavaScript.
Canvas and Image utilities.
string-argv parses a string into an argument array to mimic process.argv. This is useful when testing Command Line Utilities that you want to pass arguments to.
Lazy-evaluating list of files, based on globs or regex patterns
Base class for node which OpenTelemetry instrumentation modules extend
tiny modular DOM lib for ie9+
[](https://travis-ci.org/mulesoft-labs/yaml-ast-parser)
A Babel plugin to inject imports to core-js@3 polyfills
Public logs API for OpenTelemetry
Wrapper around miniglob / minimatch combo to allow multiple patterns matching and include-exclude ability
Fixes stack traces for files with source maps
[](https://travis-ci.org/mulesoft-labs/yaml-ast-parser)
Embedded JavaScript templates
Mock http requests made using fetch
ECMAScript 6 (Harmony) compatibility shims for legacy JavaScript engines
Detect Node.JS (as opposite to browser environment). ESM modification
Polyfill for the dialog element
Datadog middleware for Connect JS / Express
LiveReload server
Promise and RxJS wrappers around the Polkadot JS RPC
Mock 'http' objects for testing Express, Next.js and Koa routing functions
A per-spec XML serializer implementation
Crazy fast http radix based router
RubyTree is a Ruby implementation of the generic tree data structure. It provides simple APIs to store named nodes, and to access, modify, and traverse the tree. The data model is node-centric, where nodes in the tree are the primary structural elements. It supports all common tree-traversal methods (pre-order, post-order, and breadth first). RubyTree mixes in the Enumerable and Comparable modules and behaves like a standard Ruby collection (iteration, comparison, etc.). RubyTree also includes a binary tree implementation, which provides in-order node traversal besides the other methods. RubyTree can import from and export to JSON, and supports Ruby’s object marshaling.
This gem adds a `to_hash` method to Nokogiri XML nodes into a Ruby hash. In the resulting hash, all keys are constants. This gem also picks up attributes, processing instructions and doctype declarations. The resulting Hash is wordy, but complete. As an added bonus, we include line numbers where possible.
llm-graph is a Ruby gem that provides verioned llm conversation graphs. It supports both directed and undirected graphs, and includes methods for adding and removing nodes and edges, checking for the existence of nodes and edges, and other common graph operations.
Flay analyzes code for structural similarities. Differences in literal values, variable, class, method names, whitespace, programming style, braces vs do/end, etc are all ignored. Making this totally rad. == Features/Problems: * Reports differences at any level of code. * Adds a score multiplier to identical nodes. * Differences in literal values, variable, class, and method names are ignored. * Differences in whitespace, programming style, braces vs do/end, etc are ignored. * Works across files. * Add the flay-persistent plugin to work across large/many projects. * Run --diff to see an N-way diff of the code. * Provides conservative (default) and --liberal pruning options. * Provides --fuzzy duplication detection. * Language independent: Plugin system allows other languages to be flayed. * Ships with .rb and .erb. * javascript and others will be available separately. * Includes FlayTask for Rakefiles. * Uses path_expander, so you can use: * dir_arg -- expand a directory automatically * @file_of_args -- persist arguments in a file * -path_to_subtract -- ignore intersecting subsets of files/directories * Skips files matched via patterns in .flayignore (subset format of .gitignore). * Totally rad.
# Chef Data Region ## Description Chef Data Region extends the `Chef::DSL::DataQuery` module's `data_bag_item` method with the ability to dynamically expand the data bag name in a configurable, environment-specific manner. ## Motivation This gem exists to address the following scenario: An organization maintains data in Chef data bag items. The data is deployed to several data center environments and is stored in data bags whose names reference the environments. The organization wants to write environment-agnostic recipes that access the data bags without explicitly referencing the data bags by their environment names. As a concrete example, imagine the organization maintains encrypted data for three deployment environments: development, staging, and production. It maintains this data in three data bags, one for each environment, with data for services named `gadget` and `widget` in items: | Environment | Bag | Item | |-------------+----------------+--------| | Development | secure-dev | gadget | | Development | secure-dev | widget | | Production | secure-prod | gadget | | Production | secure-prod | widget | | Staging | secure-staging | gadget | | Staging | secure-staging | widget | The items are encrypted with a key unique to that environment to maximize security. Now consider how a recipe would access these bags. When then recipe is running, it needs to know the data center environment in order to construct the bag name. The organization would most likely assign the enviroment name to a node attribute. In a naive implementation, each recipe would include logic that examined the attribute's value to determine which bag to load. This would obviously duplicate code. Imagine instead that the organization wants to reference the bag by the name `secure` and rely on an _abstraction_ to translate `secure` into the environment-specific bag name. This gem provides that abstraction. ## Features This gem overrides the `data_bag_item` method with configurable logic that dynamically decides which bag to load. It retains API compatibility with `Chef::DSL::DataQuery#data_bag_item`, so existing recipes that call `data_bag_item` work without modification. The gem imposes no constraints on data bag item structure. ## Configuration Assign the region name to a node attribute that varies by environment: node.default['local'][region'] = 'staging' Add the following configuration to Chef Client's `client.rb` file. * Require the gem: require 'chef/data_region' * Configure the gem with a hash that maps a bag name to an expansion pattern: Chef::DataRegion.add( 'secure', { attribute: %w(local region), pattern: 'secure-%<attribute>s' } ) ## Bag name expansion The gem expands bag names using Ruby's `format` method. _More pending..._
Contentful API wrapper library exposing an ActiveRecord-like interface