anthonykirby / lora-packet

LoRa radio packet decoder
MIT License
258 stars 83 forks source link

Modify the project to utilize Buffer from globalThis instead of requiring it. #128

Closed felipefdl closed 4 months ago

felipefdl commented 4 months ago

This PR removes the requirement for Buffer, now supported on all Node.js versions. Here at TagoIO, we use a custom runtime to run unsafe code, and that library import made it impossible for us to upgrade the version of lora-packet, keeping us on an old version (0.8.15 - that version was using globalThis), because we use a bundle to polyfill buffer dependency.

This change is backward-compatible; all Node.js versions (10.x, 12.x, 14.x, 16.x, 18.x, 20.x, 22.x) are working fine, as you can see in the actions.

In this PR, I also added support for Node 20 and 22 in the CI pipeline.