Find and load first instance of js/json in parent directories.
Find import paths in a string of JavaScript
Find a file or directory by walking up parent directories
High-performance JSON Pointer implementation
GitHub API token authentication for browsers and Node.js
Replace or remove multiple items in an array.
A set of small and fast Node.js utilities to understand your pathing needs.
Find semver versions in a string: `unicorn v1.2.3` → `1.2.3`
Find a file or directory by walking up parent directories — Zero dependencies
> Find the root of a monorepo with Yarn workspaces, npm, Lerna, pnpm, Bun or Rush
mdast utility to find and replace text in a tree
Get the first fulfilled promise that satisfies the provided testing function
Find the position of grapheme cluster breaks in a string
unist utility to find a node after another node
Find 'import' and 're-export' statements using babel parser.
find the closest package.json
Find a file fast, by starting at the given cwd and recursing up one directory until the file is found or we run out of directories.
find process info by port/pid/name etc.
Crazy fast http radix based router
Find all the workspaces of a monorepo.
Base64 encoding and decoding helping util. Created for React Native but can be used anywhere
Find 'import' and 're-export' statements in typescript using babel parser.
Shared find and replace services and UI infrastructure for Univer.
Count how often a character (or substring) is used in a string
Find unused Objective-C imports.
Descriptions are provided in doc and at fidius.me
A Github issues importing tool
A primitive in-memory collection of key-value records known as "facts," with an ability to insert facts, add properties to facts, and delete facts. There is no ability to modify facts. It is also possible to find facts using Lisp-alike query predicates. An entire factbase may be exported to a binary file and imported back.
Capistrano exts is a set of helper tasks to help with the initial server configuration and application provisioning. Things like creating the directory structure, setting up that database, and other one-off you might find yourself doing by hand far too often. It provides many helpful post-deployment tasks to help you import/export database and contents as well as sync one stage with another.
Code coverage details for your native extensions are at least as important as for ruby. This gem will help you get code coverage details for our native C code in your ruby gems, to find blindspots and prevent bugs from creeping in.
To support Black Lives Matter and create safer spaces, I wanted to rename all of the default branches in my Gitlab account. I wasn't able to find any tools to do that, so I wrote this one. If you're unsure why this is important or want to better understand why I wanted to make these changes, see this great {Twitter thread}[https://twitter.com/mislav/status/1270388510684598272].
DbValidator helps identify invalid records in your Rails application that don't meet model validation requirements. It finds records that became invalid after validation rule changes, and validates imported or manually edited data. You can use it to audit records before deploying new validations and catch any data that bypassed validation checks.
HAST stands for 'Hosting Account Status Tool'. HAST is a tool for fetching domains from Apache configuration files and from Postfix on a hosting server environment. It will then run a report, checking the DNS records for each domain to see if they match your server. This is important for finding "dead" domains where the domain either doesn't exist anymore or where the owner have moved it to another hosting provider. Before you can use HAST, you need to setup a config.yml file. Run 'hast --generate-config > config.yml' to create a sample config file that you can modify.
Guess gender by a first name using more detailed, better sourced data from Open Gender Tracker's Global Name Data.<br /> Beauvoir lets you set avg and lower bounds and choose countries from which to draw data. It's important to note that many people identify as neither a men nor a women. It's important, too, to note that many people who do identify as male or female have names that<br /> are held by far more people who identify as another gender. All of these people deserve not to be misgendered in public (or in private). Nevertheless, automatically classifying people by apparent gender can be a very useful tool to perform censuses of communities or publications to detect and quantify perhaps-invisible bias. VIDA is a pioneer in this field, but their "Count" is limited by a manual methodology that depends hundreds of person-hours of labor. There is a place for more automated counts and Beauvoir can help, but if you do a count like this, you should be careful in how you word your findings not to misgender anyone in particular and be responsive to the possibility of errors.
This gem is designed to provide a modular, complete, open-source, crowd-sourced mapping of the 650+ IANA/OLSON timezones of the world into Rails' 146 'important' timezones. A search for an existing solution showed that this has been an issue since the inception of ActiveSupport::Timezone as far back as 2012. Approaches which have been suggested included such ideas as: Making your own RTree in a spatially aware database and searching on boundaries, just don't use those timezones (yeah, that makes sense), rely on your users to set their own timezone (doesn't help if you do automated onboarding), find a better sourcing API for timezones based on GeoLookup (they almost all use OLSON/IANA). Rather than doing any of those things, it made more sense to simply complete the mapping that ActiveSupport::Timezone started on and then seemingly abandoned.
Have you ever wanted to call <code>exit()</code> with an error condition, but weren't sure what exit status to use? No? Maybe it's just me, then. Anyway, I was reading manpages late one evening before retiring to bed in my palatial estate in rural Oregon, and I stumbled across <code>sysexits(3)</code>. Much to my chagrin, I couldn't find a +sysexits+ for Ruby! Well, for the other 2 people that actually care about <code>style(9)</code> as it applies to Ruby code, now there is one! Sysexits is a *completely* *awesome* collection of human-readable constants for the standard (BSDish) exit codes, used as arguments to +exit+ to indicate a specific error condition to the parent process. It's so fantastically fabulous that you'll want to fork it right away to avoid being thought of as that guy that's still using Webrick for his blog. I mean, <code>exit(1)</code> is so passé! This is like the 14-point font of Systems Programming. Like the C header file from which this was derived (I mean forked, naturally), error numbers begin at <code>Sysexits::EX__BASE</code> (which is way more cool than plain old +64+) to reduce the possibility of clashing with other exit statuses that other programs may already return. The codes are available in two forms: as constants which can be imported into your own namespace via <code>include Sysexits</code>, or as <code>Sysexits::STATUS_CODES</code>, a Hash keyed by Symbols derived from the constant names. Allow me to demonstrate. First, the old way: exit( 69 ) Whaaa...? Is that a euphemism? What's going on? See how unattractive and... well, 1970 that is? We're not changing vaccuum tubes here, people, we're <em>building a totally-awesome future in the Cloud™!</em> include Sysexits exit EX_UNAVAILABLE Okay, at least this is readable to people who have used <code>fork()</code> more than twice, but you could do so much better! include Sysexits exit :unavailable Holy Toledo! It's like we're writing Ruby, but our own made-up dialect in which variable++ is possible! Well, okay, it's not quite that cool. But it does look more Rubyish. And no monkeys were patched in the filming of this episode! All the simpletons still exiting with icky _numbers_ can still continue blithely along, none the wiser.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.