Skip to content

Releases: einride/can-go

v0.17.0

27 Feb 10:23

Choose a tag to compare

0.17.0 (2026-02-27)

Feature

  • socketcan: export Frame for Marshal/Unmarshal (ec42219)

Build

  • deps: bump go.einride.tech/sage from 0.369.0 to 0.371.0 in /.sage (6286fea)

v0.16.1

22 Aug 07:40

Choose a tag to compare

0.16.1 (2025-08-22)

Bug Fixes

v0.16.0

22 Aug 05:52

Choose a tag to compare

0.16.0 (2025-08-22)

Feature

  • support vxcan with candevice (a56f063)

v0.15.0

07 Aug 10:06

Choose a tag to compare

0.15.0 (2025-08-07)

Breaking Changes

  • deps: bump golang.org/x/net to patched version (7324c6c)

This commit bumps golang.org/x/net to v0.38.0 to address two security
vulnerabilities (CVE-2025-22872 & CVE-2025-22870).

The code is not susceptible to the vulnerability because it relates to
HTML parsing (CVE-2025-22872) or address resolving (CVE-2025-22870).
In this repository we only use golang.org/x/net to emulate CAN using
multicast UDP sockets.

Because of this dependency update we also need to update the Go
version to 1.23, which is a breaking change and also "too early" with
regard to our [Go version support policy].

However, given that Go 1.25 is being released later in August and this
is to address security vulnerabilities we think it is performing the
breaking change now, rather than waiting for 1.25 to land.

BREAKING CHANGE: Update required Go version to 1.23.

[go version support policy]: https://einride.engineering/docs/tech-radar/backend#languages-go

Chores

  • specify tool versions in sage instead of tools.go (81e21e3)

Build

  • deps: bump go.einride.tech/sage from 0.362.0 to 0.369.0 in /.sage (7fed21f)

v0.14.0

03 Jun 08:55

Choose a tag to compare

0.14.0 (2025-06-03)

Feature

  • signal names capitalization (fca59e3)

v0.13.0

13 May 07:57

Choose a tag to compare

0.13.0 (2025-05-13)

Breaking Changes

  • bump Go version to 1.22 (ab1c5ca)

Go 1.22 is the oldest officially supported version of Go currently and
at Einride we aim to follow that guideline.

In order to get the project to build a number of other changes needed
to be done.

go.einride.tech/sage needed to be updated to get us a golangci-lint
version that can lint 1.22 and with that a whole swath of lints were
activated:
- most are on the form of copyloopvar (i.e. loop variables
  now work as most people expect and we don't need to copy them)
- we were also shadowing min/max builtins that were introduced in Go
  1.21, these are now renamed were applicable.

BREAKING CHANGE: The library requires Go 1.22 to build, no other user
visible changes introduced.

v0.12.2

24 Mar 15:40

Choose a tag to compare

0.12.2 (2025-03-24)

Bug Fixes

  • bump Golang version to go1.20 (f05338f)

Chores

Build

  • deps: bump golang.org/x/net from 0.25.0 to 0.33.0 (4ea2233)

v0.12.1

04 Nov 16:10

Choose a tag to compare

0.12.1 (2024-11-04)

Bug Fixes

  • generate: handle invalid signal name for metadata (5a220ab)

Documentation

  • security: add Security Policy (adfb763)

CI

  • pin Go version to 1.22 (7798b54)
  • remove deprecated goreview (65176c6)

v0.12.0

05 Jul 07:44

Choose a tag to compare

0.12.0 (2024-07-05)

Breaking Changes

  • cantool: CopyFrom accepts canrunner.Node Rx messages (56c0075)

When updating the signature for CopyFrom we accidentally broke a
workflow where receive messages in a `canrunner.Node` and then copy
the data from them using `CopyFrom`. This commit restores CopyFrom to
accept a "message reader" type, but extends that type to also require
that values implement `Frame() can.Frame`.

All messages generated by cantool already implements `Frame()
can.Frame` so only mocks should be affected.

BREAKING CHANGE: This restores old signature of CopyFrom to accept a
message reader instead of a message instance to copy from.

v0.11.0

24 Jun 12:22

Choose a tag to compare

0.11.0 (2024-06-24)

Feature

  • analyze: add unique message ID analyzer (36c7f19)