Gobenchdata is a tool for inspecting golang benchmark outputs. To install it, you must have Go installed: Then pipe your benchmark into the tool: You can create a sort of database of benchmarks by appending new benchmarks to an existing file: You can also merge results: Visualize the results: Compare results: Learn more in the repository README: https://github.com/bobheadxi/gobenchdata
Package strcase is a package for converting strings into various word cases (e.g. snake_case, camelCase) Example usage ## Why this package String strcase is pretty straight forward and there are a number of methods to do it. This package is fully featured, more customizable, better tested, and faster than other packages and what you would probably whip up yourself. ### Unicode support We work for with unicode strings and pay very little performance penalty for it as we optimized for the common use case of ASCII only strings. ### Customization You can create a custom caser that changes the behavior to what you want. This customization also reduces the pressure for us to change the default behavior which means that things are more stable for everyone involved. The goal is to make the common path easy and fast, while making the uncommon path possible. ### Initialism support By default, we use the golint intialisms list. You can customize and override the initialisms if you wish to add additional ones, such as "SSL" or "CMS" or domain specific ones to your industry. ### Test coverage We have a wide ranging test suite to make sure that we understand our behavior. Test coverage isn't everything, but we aim for 100% coverage. ### Fast Optimized to reduce memory allocations with Builder. Benchmarked and optimized around common cases. We're on par with the fastest packages (that have less features) and much faster than others. We also benchmarked against code snippets. Using string builders to reduce memory allocation and reordering boolean checks for the common cases have a large performance impact. Hopefully I was fair to each library and happy to rerun benchmarks differently or reword my commentary based on suggestions or updates. ### Zero dependencies That's right - zero. We only import the Go standard library. No hassles with dependencies, licensing, security alerts. ## Why not this package If every nanosecond matters and this is used in a tight loop, use segment.io's libraries (https://github.com/segmentio/go-snakecase and https://github.com/segmentio/go-camelcase). They lack features, but make up for it by being blazing fast. ## Migrating from other packages If you are migrating from from another package, you may find slight differences in output. To reduce the delta, you may find it helpful to use the following custom casers to mimic the behavior of the other package.
SurgeMQ is a high performance MQTT broker and client library that aims to be fully compliant with MQTT 3.1 and 3.1.1 specs. The primary package that's of interest is package service. It provides the MQTT Server and Client services in a library form. Current performance benchmark of SurgeMQ, running all publishers, subscribers and broker on a single 4-core (2.8Ghz i7) MacBook Pro, is able to achieve: In addition, SurgeMQ has been tested with the following client libraries and it _seems_ to work: A quick example of how to use SurgeMQ:
SurgeMQ is a high performance MQTT broker and client library that aims to be fully compliant with MQTT 3.1 and 3.1.1 specs. The primary package that's of interest is package service. It provides the MQTT Server and Client services in a library form. Current performance benchmark of SurgeMQ, running all publishers, subscribers and broker on a single 4-core (2.8Ghz i7) MacBook Pro, is able to achieve: In addition, SurgeMQ has been tested with the following client libraries and it _seems_ to work: A quick example of how to use SurgeMQ:
Package godoctricks is a tutorial on the features of GoDoc. It is meant to help eveyone make the most out of this feature of Go. Notice that this doc is written in godoc itself as package documentation. The defined types are just for making the table of contents at the head of the page; they have no meanings as actual types. If you have any suggestion or comment, please feel free to open an issue. By Amit Lavon. The new version introduces a few additions to what the godoc tool can recognize. You can see them below at Links, Headings and Lists. The official documentation is at: https://go.dev/doc/comment This function is named Example(), which is a package level test function. This function is named Example_other(), which is a package level test function and has the label "other". A whole file example is a file that ends in `_test.go` and contains exactly one example function, no test or benchmark functions, and at least one other package-level declaration.