Debug Support and Hot Reload for Faster OCI Functions Local Development - Oracle Blogs
π OCI Functions local development is improved with two new capabilities that address the slowest parts of the workflow.
βοΈ Local debug support allows developers to attach their preferred debugger while running functions via Fn Server.
π The function waits for a debugger attachment on invocation, enabling code stepping and variable inspection.
π οΈ Support covers multiple runtimes including Go/Delve, Python/debugpy, Java/JDWP, and custom Dockerfiles.
π The new `fn watch` command eliminates repetitive manual deployment steps during local development.
β±οΈ Default debounce timing for the watch command is 500ms but can be customized via CLI flags.
π Fn watch includes default ignore patterns for directories like .git, node_modules, and target to reduce noise.
π§ Users can further customize ignore lists using `--ignore` flags or a `.fnignore` file.
π These features help transition developers from an "edit-build-invoke-repeat" cycle to an efficient "edit-and-iterate" loop.
π The updates are designed specifically for users already utilizing Fn Server for their local OCI Functions development environment.
π‘ Developers gain less repetitive command churn and deeper troubleshooting visibility with these new integrations.
π Detailed tutorials and screenshots for both features are available on the Fn Project documentation website.
- Oracle has released new debug support and hot reload capabilities for OCI Functions local development, significantly improving the workflow speed.
- The new fn start --local-debug feature allows developers to attach their preferred debugger (Go/Delve, Python/debugpy, Java/JDWP) directly while running functions with Fn Server.
- The updated fn watch command automates deployment during local development by detecting file changes and deploying only the affected parts, reducing repetitive manual steps.
- Developers can customize the hot reload behavior with default ignore lists for common directories like .git and node_modules, or set specific debounce timings such as 500ms to control responsiveness.
- This upgrade transforms the local development loop from a slow 'edit-build-invoke-repeat' cycle to a much smoother 'edit-and-iterate' experience.
- The features reduce command churn and provide deeper troubleshooting visibility, allowing teams to get ideas to validated function behavior faster.
- The article is exclusively a promotional blog post announcing new product features without acknowledging any potential risks, financial impacts, or negative developments.
- There are no negative metrics, regulatory concerns, competitive threats, or downside catalysts present in the text to summarize as per the user's request for negative aspects.