Arduino as a component adds lots of unnecessary dependencies

dizcza
Posts: 61
Joined: Tue Sep 07, 2021 6:59 pm

Arduino as a component adds lots of unnecessary dependencies

Postby dizcza » Thu Feb 20, 2025 4:56 pm

  • Create a new project
  • idf.py add-dependency "espressif/arduino-esp32^3.0.7"
Look at dependencies.lock:

Code: Select all

dependencies:
  chmorgan/esp-libhelix-mp3:
    component_hash: cbb76089dc2c5749f7b470e2e70aedc44c9da519e04eb9a67d4c7ec275229e53
    dependencies:
    - name: idf
      require: private
      version: '>=4.1.0'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.0.3
  espressif/arduino-esp32:
    component_hash: 911d25d4c8147544f5f37a1bfab2ceffe30e6260fbec824d63b591a7fad09ac3
    dependencies:
    - name: chmorgan/esp-libhelix-mp3
      registry_url: https://components.espressif.com
      require: private
      version: 1.0.3
    - name: espressif/qrcode
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target != esp32c2
      version: ^0.1.0~1
    - name: espressif/rmaker_common
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target != esp32c2
      version: ^1.4.6
    - name: idf
      require: private
      version: '>=5.1,<5.2'
    - name: espressif/esp-dsp
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target != esp32c2
      version: ^1.3.4
    - name: espressif/esp-modbus
      registry_url: https://components.espressif.com
      require: private
      version: ^1.0.15
    - name: espressif/esp-sr
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target in [esp32s3]
      version: ^1.4.2
    - name: espressif/esp-zboss-lib
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target != esp32c2
      version: ^1.0.1
    - name: espressif/esp-zigbee-lib
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target != esp32c2
      version: ^1.0.1
    - name: espressif/esp_insights
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target != esp32c2
      version: ^1.2.1
    - name: espressif/esp_modem
      registry_url: https://components.espressif.com
      require: private
      version: ^1.1.0
    - name: espressif/esp_rainmaker
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: target != esp32c2
      version: ^1.0.0
    - name: espressif/libsodium
      registry_url: https://components.espressif.com
      require: private
      version: ^1.0.20~1
    - name: espressif/mdns
      registry_url: https://components.espressif.com
      require: private
      version: ^1.2.3
    - name: espressif/network_provisioning
      registry_url: https://components.espressif.com
      require: private
      version: ~1.0.0
    - name: joltwallet/littlefs
      registry_url: https://components.espressif.com
      require: private
      version: ^1.10.2
    source:
      registry_url: https://components.espressif.com/
      type: service
    targets:
    - esp32
    - esp32s2
    - esp32s3
    - esp32c2
    - esp32c3
    - esp32c6
    - esp32h2
    version: 3.0.7
  espressif/cbor:
    component_hash: 440f4ee4504841cc9b4f3a8ef755776a612ac9dace355514c68b999868f990ff
    dependencies:
    - name: idf
      require: private
      version: '>=4.3'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 0.6.0~1
  espressif/esp-dsp:
    component_hash: fa7fe74305df6da25867437ebcd4213e047cbfc0556cf92067ab657fce537c6e
    dependencies:
    - name: idf
      require: private
      version: '>=4.2'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.5.2
  espressif/esp-modbus:
    component_hash: e42ebfdfc9d8e46821a915b4c1a5c6465c44dbd4e1bca10531e26f4adc7acc42
    dependencies:
    - name: idf
      require: private
      version: '>=4.3'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.0.17
  espressif/esp-serial-flasher:
    component_hash: dcc42a16712a1a636509cf0bf90e14032d7f2141784b533613b267b6aa318d52
    dependencies: []
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 0.0.11
  espressif/esp-zboss-lib:
    component_hash: 2a2256a8d20e5ade59a8e084760c84faa87dc9332523afcb6e245a744420839a
    dependencies:
    - name: idf
      require: private
      version: '>=5.0'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.6.3
  espressif/esp-zigbee-lib:
    component_hash: 73112d38839c7460bd713f9e3a5b2baeab351ee01a4b9091c7df8b50ce524947
    dependencies:
    - name: idf
      require: private
      version: '>=5.0'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.6.3
  espressif/esp_diag_data_store:
    component_hash: c1e5cf62f545d2b136db299f4df1b228b9840be5bc3410c9ad2d2a882b5c0d64
    dependencies:
    - name: idf
      require: private
      version: '>=4.1'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.0.2
  espressif/esp_diagnostics:
    component_hash: 5ea8e8da8217ed9ed778db3973139e726e17cd27ef5cf6429c787d19226c79f3
    dependencies:
    - name: idf
      require: private
      version: '>=4.1'
    - name: espressif/rmaker_common
      registry_url: https://components.espressif.com
      require: private
      version: ~1.4.0
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.2.1
  espressif/esp_insights:
    component_hash: ca75edf5441b8cd5a78deabf4c265738d01f21a6f2c39602d2868bfa18c0e187
    dependencies:
    - name: espressif/cbor
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: idf_version >=5.0
      version: ~0.6
    - name: espressif/esp_diag_data_store
      registry_url: https://components.espressif.com
      require: private
      version: 1.0.2
    - name: espressif/esp_diagnostics
      registry_url: https://components.espressif.com
      require: private
      version: 1.2.1
    - name: espressif/rmaker_common
      registry_url: https://components.espressif.com
      require: private
      version: ~1.4.0
    - name: idf
      require: private
      version: '>=4.1'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.2.3
  espressif/esp_modem:
    component_hash: 681d7c8417ce0f2a11a562c6998b7b379a4847be41d84673c11c0c7a6b00e918
    dependencies:
    - name: idf
      require: private
      version: '>=4.1'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.3.0
  espressif/esp_rainmaker:
    component_hash: 872983f70aa7fb56a39231ced0080a8476aaa277f2368e47ad8fe19ec182e9ba
    dependencies:
    - name: espressif/rmaker_common
      registry_url: https://components.espressif.com
      require: private
      version: ~1.4.6
    - name: espressif/network_provisioning
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: idf_version >= 5.1
      version: ~1.0.0
    - name: espressif/mdns
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: idf_version >=5.0
      version: ^1.2.0
    - name: espressif/json_parser
      registry_url: https://components.espressif.com
      require: private
      version: ~1.0.3
    - name: espressif/json_generator
      registry_url: https://components.espressif.com
      require: private
      version: ~1.1.1
    - name: espressif/esp_secure_cert_mgr
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: idf_version >=4.3
      version: ^2.2.1
    - name: espressif/esp_schedule
      registry_url: https://components.espressif.com
      require: private
      version: ~1.2.0
    - name: espressif/esp_rcp_update
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: idf_version >= 5.1
      version: ~1.2.0
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.5.1
  espressif/esp_rcp_update:
    component_hash: c10afbd54a17f27eed880e61262b161656e6d36ad63376c307f9273e99d0abcd
    dependencies:
    - name: idf
      require: private
      version: '>=5.0'
    - name: espressif/esp-serial-flasher
      registry_url: https://components.espressif.com
      require: private
      version: ~0.0.0
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.2.0
  espressif/esp_schedule:
    component_hash: e202a9c688f7f1ab601efb91d682e4bcfaebc508dcceee1a1e0a0d2d1ca75a26
    dependencies:
    - name: espressif/rmaker_common
      registry_url: https://components.espressif.com
      require: private
      version: ~1.4.2
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.2.0
  espressif/esp_secure_cert_mgr:
    component_hash: 5d9175b416f751ba6a7cb35bdf092f0af85658ce06c4a592c7c541d8017ebeb9
    dependencies:
    - name: idf
      require: private
      version: '>=4.3'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 2.5.0
  espressif/jsmn:
    component_hash: d80350c41bbaa827c98a25b6072df00884e72f54885996fab4a4f0aebce6b6c3
    dependencies:
    - name: idf
      require: private
      version: '>=4.3'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.1.0
  espressif/json_generator:
    component_hash: 45033e1c199b13f1c8c1b544fb7d4e2df6a8e3071ebdcb1b22582b61a7974ff2
    dependencies: []
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.1.2
  espressif/json_parser:
    component_hash: d74b81729ad06ec11ff5eb5b1b0d7df1d00e6027fc11471f4b139c70dcf1b1e4
    dependencies:
    - name: espressif/jsmn
      registry_url: https://components.espressif.com
      require: private
      rules:
      - if: idf_version >=5.0
      version: ~1.1
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.0.3
  espressif/libsodium:
    component_hash: 25b968723c584a2742ca36cebe5a7ef049c6767e059f7b1e1eec69946019025d
    dependencies:
    - name: idf
      require: private
      version: '>=4.2'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.0.20~2
  espressif/mdns:
    component_hash: fe546a92ee741cfabf2c2bb52c9024314e1d0ad32b44794f45323a0ecf1543d7
    dependencies:
    - name: idf
      require: private
      version: '>=5.0'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.7.0
  espressif/network_provisioning:
    component_hash: 1c0f76f4a37c3f2101ae9735e9da901ef4469a07af9cc075fc8f08fee43281e4
    dependencies:
    - name: idf
      require: private
      version: '>=5.1'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.0.3
  espressif/qrcode:
    component_hash: 3b493771bc5d6ad30cbf87c25bf784aada8a08c941504355b55d6b75518ed7bc
    dependencies: []
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 0.1.0~2
  espressif/rmaker_common:
    component_hash: a3a1df881278d0351fc850b77792fe8a196ddd6dcacbea203d606329cc6a0239
    dependencies: []
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.4.6
  idf:
    source:
      type: idf
    version: 5.1.5
  joltwallet/littlefs:
    component_hash: add3caf39a265868f70e55f17e8bfb401f200e45a601dc392832e7ac2c1487bc
    dependencies:
    - name: idf
      require: private
      version: '>=4.3'
    source:
      registry_url: https://components.espressif.com
      type: service
    version: 1.16.4
direct_dependencies:
- espressif/arduino-esp32
- idf
manifest_hash: 7a30fcf89610a5e9786f3e65e227e49b2a3c5476be1dfc5c58ee5d29967441dc
target: esp32
version: 2.0.0
Really? I don't need any of those save for arduino core! How to turn them off?

I also tried clonning arduino from github repo (zip archive v3.0.7), placed in the components folder. Still behavior. Very annoying. Especially because some official packages from the managed components do not obey the official documentation and requires "arduino" instead of "arduino-esp32" as suggested in the docs. And this causes conflicts because other folks require arduino-esp32.

Nightmare. They would require me having both "arduino" and "arduino-esp32" components.

That's why, apart from flooding, I want to disable all components and leave the arduino core only.

How can I do this?

Who is online

Users browsing this forum: Applebot, Baidu [Spider], PerplexityBot, Semrush [Bot] and 17 guests