- Notifications
You must be signed in to change notification settings - Fork0
Go implementation for the iRacing Telemetry API
License
mpapenbr/goirsdk
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Start the iRacing simulator and wait until the simulation is up and running.
cd samplego run sample.go
Thesample connects to the iRacing telemetry data and prints out the iRacing session time every second.
Seevariables for an overview of available telemetry data
This section is intended to help developers and contributors get a working copy ofgoirsdk
on their end
Clone this repository
git clone https://github.com/mpapenbr/goirsdkcd goirsdk
This section will guide you to setup a fully-functional local copy ofgoirsdk
on your end and teach you how to use it! Make sure you have installedgolangci-lint before following this section!
Note: This section relies on the usage ofMakefile. If youcan't (or don't) use Makefile, you can follow along by running the internal commandsfromgoirsdk's
Makefile (most of which areOS-independent)!
To install all dependencies associated withgoirsdk
, run thecommand
make install
Code formatters format your code to match pre-decided conventions. To run automated codeformatters, use the Makefile command
make codestyle
Linters are tools that analyze source code for possible errors. This includes typos,code formatting, syntax errors, calls to deprecated functions, potential securityvulnerabilities, and more!
To run pre-configured linters, use the command
make lint
Tap for a list of Makefile commands
Command | Description | Prerequisites |
---|---|---|
help | Generate help dialog listing all Makefile commands with description | NA |
|install
| Fetch project dependencies | NA ||codestyle
| Run code-formatters | golangci-lint ||lint
| Check codestyle and run linters | golangci-lint |
Optionally, to see a list of all Makefile commands, and a short description of what theydo, you can simply run
make
Which is equivalent to;
makehelp
Both of which will list out all Makefile commands available, and a short descriptionof what they do!
You can check out a list of previous releases on theGithub Releasespage.
What is Semantic Versioning?
Semantic versioning is a versioning scheme aimed at making software management easier.Following semantic versioning, version identifiers are divided into three parts;
<major>.<minor>.<patch>
MAJOR version when you make incompatible API changes [breaking changes]
MINOR version when you add functionality in a backwards compatible manner [more features]
PATCH version when you make backwards compatible bug fixes [bug fixes and stuff]
For a more detailed description, head over tosemver.org
Release Drafter automatically updates the release version as pullrequests are merged.
Labels allowed;
major
: Affects the<major>
version number for semantic versioningminor
,enhancement
,update
,feature
: Affects the<minor>
version number for semantic versioning- all other labels affect the
<patch>
version number
Whenever a pull request with one of these labels is merged to themaster
branch,the corresponding version number will be bumped by one digit!
Pull requests once merged, will be classified into categories byrelease-drafter based on pull request labels
This is managed by therelease-drafter.yml
config file.
Label | Title in Releases |
---|---|
security | 🔒 Security |
enhancement ,feature ,update | 🚀 Updates |
bug ,bugfix ,fix | 🐛 Bug Fixes |
documentation ,docs | 📝 Documentation |
wip ,in-progress ,incomplete ,partial ,hotfix | 🚧 Work in Progress |
dependencies ,dependency | 📦 Dependencies |
refactoring ,refactor ,tests ,testing | 🧪 Tests and Refactor |
build ,ci ,pipeline | 🤖 CI/CD and Pipelines |
The labelsbug
,enhancement
, anddocumentation
are automatically created by Githubfor repositories.Dependabot will implicitly create thedependencies
label with the first pull request raised by it.
The remaining labels can be created as needed!
About
Go implementation for the iRacing Telemetry API