Skip to content

Implement lzss encoder #95

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 11 commits into from
Jan 11, 2022
Merged

Implement lzss encoder #95

merged 11 commits into from
Jan 11, 2022

Conversation

polldo
Copy link
Contributor

@polldo polldo commented Jan 5, 2022

Motivation

we want to avoid cgo, so we need a pure go implementation of the lzss encoding algorithm used by iot cloud

Change description

Additional Notes

Reviewer checklist

  • PR address a single concern.
  • PR title and description are properly filled.
  • Changes will be merged in main.
  • Changes are covered by tests.
  • Logging is meaningful in case of troubleshooting.
  • History is clean, commit messages are meaningful (see CONTRIBUTING.md) and are well formatted.

@polldo polldo requested review from zmoog and eclipse1985 January 5, 2022 17:01
@zmoog
Copy link
Contributor

zmoog commented Jan 5, 2022

@polldo did you create the .lzss files using Alex's implementation?

@polldo
Copy link
Contributor Author

polldo commented Jan 5, 2022

@zmoog I generated them directly using the C implementation

@zmoog
Copy link
Contributor

zmoog commented Jan 5, 2022

Great. This is the way.

Copy link
Contributor

@zmoog zmoog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@eclipse1985 eclipse1985 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM @polldo can you please perform an OTA test?

@polldo
Copy link
Contributor Author

polldo commented Jan 11, 2022

@eclipse1985 I've already tested it on linux, are you able to test it on macos?

@eclipse1985
Copy link
Contributor

@eclipse1985 I've already tested it on linux, are you able to test it on macos?

Tested, works for me 🚀

@polldo polldo merged commit a9c69ad into main Jan 11, 2022
@polldo polldo deleted the polldo/lzss branch January 11, 2022 15:39
polldo pushed a commit that referenced this pull request Sep 2, 2022
Added a pure go implementation of the lzss encoding algorithm used by iot cloud to compress ota files. This allows to get rid of cgo.
polldo pushed a commit that referenced this pull request Sep 2, 2022
Added a pure go implementation of the lzss encoding algorithm used by iot cloud to compress ota files. This allows to get rid of cgo.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants