Skip to content

Experiment: remove "MrBean" dependency #9700

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 2 commits into from
Feb 19, 2020
Merged

Conversation

tlk
Copy link
Contributor

@tlk tlk commented Jan 31, 2020

This PR is an experiment to remove the Bean Materializer for Jackson library from the Arduino project, such that — ultimately — the Debian project can deliver a functional Arduino package.


Background: The Debian Arduino package appears to be unmaintained and the general advice is to avoid it. Quote from https://playground.arduino.cc/Linux/Debian/

WARNING!!! If you use sudo apt-get install arduino you will probably get an extremely outdated and possibly non-standard version of the Arduino IDE.

Efforts have been made to create an updated Debian package for the latest Arduino:

Progress appears to be blocked by a so-called "MrBean" dependency: HuayraLinux/pkg-arduino#4


All Submissions:

  • Have you followed the guidelines in our Contributing document?
  • Have you checked to ensure there aren't other open [Pull Requests]

New Feature Submissions:

  1. Does your submission pass tests?

Changes to Core Features:

  • Have you added an explanation of what your changes do and why you'd like us to include them?
  • Have you successfully ran tests with your changes

tlk added 2 commits January 31, 2020 17:06
Sacrifice abstract classes and interfaces to reduce the amount of magic
performed by MrBean.

Refs HuayraLinux/pkg-arduino#4
Improve Codacy PR quality requirements:
Fields should be declared at the top of the class, before any method
declarations, constructors, initializers or inner classes.
@tlk
Copy link
Contributor Author

tlk commented Feb 4, 2020

Cons:

  • abstract classes and interfaces are replaced with simple classes

Pros:

  • no longer generating byte code at runtime when json files are loaded and mapped to objects
  • potential performance gains due to the removal of byte code generation
  • one dependency less
  • maybe this can lead to a working Debian package?

@cmaglie
Copy link
Member

cmaglie commented Feb 6, 2020

@ArduinoBot build this please

@facchinm facchinm added this to the Release 1.8.13 milestone Feb 17, 2020
@cmaglie cmaglie merged commit b40f54a into arduino:master Feb 19, 2020
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.

4 participants