Skip to content

Option for RAM Caching dependencies #2210

Open
@marcusobrien

Description

@marcusobrien

Describe the request

Compile times take too long.
IDe designers dont want to stop the auto dependency discovery that the IDE currently does, to keeps things easy for novice users.
Users want fasterer compile times.

Reading posts on here,

#1996

sounds like long build times is the scanning of libs for dependencies - and this involves disk access.
Can we have a mode called auto cache - that simply caches in RAM (so only for this session) on first compile, all the dependencies for the sketch - then no disk access needed for subsequent compiles/links.

Or what about a GreedyCacheMode, that when enabled reads into memory ALL arduino libs in paths, and use those to resolve/compile/link the binary. This would be much faster than scanning folders and files etc. Most people have a lot of RAM nowdays, so let the user choose how to make use of their own ram.

Describe the current behavior

Build scans for libraries and dependencies as their are no linker arguments provided by the user. This results in slow compile times for large projects with many headers, and external symbols etc (linker)

Arduino CLI version

2.1.0

Operating system

Windows

Operating system version

10

Additional context

No response

Issue checklist

  • I searched for previous requests in the issue tracker
  • I verified the feature was still missing when using the nightly build
  • My request contains all necessary details

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions