Collection of RBS definitions for gems we use, meant to be incorporated with Steep through rbs collection. Similar to ruby/gem_rbs_collection, this contains generated type definitions for third party gems. This is meant to be used in conjuction with ruby/gem_rbs_collection, so it only adds additional definitions not already defined there.
Add the following to your rbs_collection configuration file:
sources:
# ... your other sources
- name: Shelf-Life/gem-rbs
remote: https://github.com/Shelf-Life/gem-rbs.git
revision: main
repo_dir: gems
Run rbs collection update and you should be good to go. If you haven't configured rbs collection, see the instructions here.
Fork/create a new branch. If adding a new gem (or definitions for a new version), create the appropriate folders in gems:
mkdir ./gems/gem-name && mkdir ./gems/gem-name/1.2Version folders should only use major/minor revisions.
Once you have created the folders, run rbs prototype for the library you wish to generate:
rbs prototype rb path/to/gem-source-location/gem-name-1.2/lib/**/*.rb > path/to/this/repo/gems/gem-name/1.2/gem-name-generated.rbsPush your changes to GitHub. Using another project relying on this for your gems, update the rbs_collection configuration to point to your fork/branch of this repo instead of main, and run rbs collection update. Iterate on your definitions until steep check passes (rbs prototype does not always generate completely correct definitions).
Once you are finished, create a pull request to merge your changes back to main.