adafruit / Adafruit_CircuitPython_RFM9x

CircuitPython module for the RFM95/6/7/8 LoRa wireless 433/915mhz packet radios.
MIT License
68 stars 45 forks source link

Project dependencies may have API risk issues #82

Closed PyDeps closed 1 year ago

PyDeps commented 1 year ago

Hi, In Adafruit_CircuitPython_RFM9x, inappropriate dependency versioning constraints can cause risks.

Below are the dependencies and version constraints that the project is using

Adafruit-Blinka>=7.2.3
adafruit-circuitpython-busdevice

The version constraint == will introduce the risk of dependency conflicts because the scope of dependencies is too strict. The version constraint No Upper Bound and * will introduce the risk of the missing API Error because the latest version of the dependencies may remove some APIs.

After further analysis, in this project, The version constraint of dependency Adafruit-Blinka can be changed to >=0.1.5,<=8.0.2.

The above modification suggestions can reduce the dependency conflicts as much as possible, and introduce the latest version as much as possible without calling Error in the projects.

The invocation of the current project includes all the following methods.

The calling methods from the Adafruit-Blinka
micropython.const
The calling methods from the all methods
self._read_u8
obj._read_u8
device.readinto
bytes
self.listen
micropython.const
sphinx_rtd_theme.get_html_theme_path
random.random
self.rx_done
os.path.abspath
sys.path.insert
datetime.datetime.now
adafruit_ssd1306.SSD1306_I2C.show
self.transmit
self.crc_error
hasattr
format
RPi.GPIO.add_event_callback
self._write_from
RPi.GPIO.setmode
self.sleep
time.monotonic
self.send
self.idle
adafruit_rfm9x.RFM9x.receive
self._write_u8
obj._write_u8
busio.SPI
adafruit_bus_device.spi_device.SPIDevice
min
adafruit_rfm9x.RFM9x.send
adafruit_ssd1306.SSD1306_I2C.fill
busio.I2C
adafruit_rfm9x.RFM9x.send_with_ack
adafruit_ssd1306.SSD1306_I2C.text
range
adafruit_ssd1306.SSD1306_I2C
supervisor.ticks_ms
max
time.sleep
os.environ.get
RuntimeError
str
print
self.tx_done
hex
self._reset.switch_to_output
digitalio.DigitalInOut
len
self.reset
self._read_into
int
self.receive
ticks_diff
device.write
_RegisterBits
adafruit_rfm9x.RFM9x
RPi.GPIO.add_event_detect
bytearray
enumerate
RPi.GPIO.setup

@developer Could please help me check this issue? May I pull a request to fix it? Thank you very much.

tekktrik commented 1 year ago

I don't think a change like this makes sense for our project or needs. Thanks for offering though!