Skip to content

dev: lazy import live reload dependencies#13757

Open
simonrw wants to merge 1 commit intomainfrom
dev/live-reload-lazy-import
Open

dev: lazy import live reload dependencies#13757
simonrw wants to merge 1 commit intomainfrom
dev/live-reload-lazy-import

Conversation

@simonrw
Copy link
Contributor

@simonrw simonrw commented Feb 12, 2026

Motivation

In #13718 we added live reload support to the localstack.dev.run script, however the additional dependency added (watchdog) was added to the dev extras section.

This section is not installed with our Pro setup make targets, or at least not everyone installs this repo with the dev target, meaning that people who were using localstack.dev.run got an import error.

Changes

Defer import of the module that itself imports watchdog so it is only required for people who actually want to use the --live-reload flag. This at least means a fewer number of people will be directly affected, and it is clearer what the issue is in this case.

In addition, a PR to the Pro repo will correct the packaging process so localstack[dev] is installed with our test dependencies, which is a very common install target for developers.

# Motivation

In #13718 we added live reload support to the `localstack.dev.run` script, however the additional dependency added (`watchdog`) was added to the `dev` extras section.

This section is not installed with our Pro setup make targets, or at least not everyone installs _this_ repo with the `dev` target, meaning that people who were using `localstack.dev.run` got an import error.

# Changes

Defer import of the module that itself imports `watchdog` so it is only required for people who actually want to use the `--live-reload` flag. This at least means a fewer number of people will be directly affected, and it is clearer what the issue is in this case.

In addition, a PR to the Pro repo will correct the packaging process so `localstack[dev]` is installed with our `test` dependencies, which is a very common install target for developers.
@simonrw simonrw added semver: patch Non-breaking changes which can be included in patch releases docs: skip Pull request does not require documentation changes notes: skip Pull request does not have to be mentioned in the release notes labels Feb 12, 2026
@github-actions
Copy link

Test Results - Preflight, Unit

23 111 tests  ±0   21 249 ✅ ±0   6m 15s ⏱️ +5s
     1 suites ±0    1 862 💤 ±0 
     1 files   ±0        0 ❌ ±0 

Results for commit 086c1ab. ± Comparison against base commit 4708a82.

@github-actions
Copy link

Test Results (amd64) - Acceptance

7 tests  ±0   5 ✅ ±0   2m 59s ⏱️ +2s
1 suites ±0   2 💤 ±0 
1 files   ±0   0 ❌ ±0 

Results for commit 086c1ab. ± Comparison against base commit 4708a82.

@github-actions
Copy link

Test Results (amd64) - Integration, Bootstrap

    5 files      5 suites   2h 38m 10s ⏱️
5 619 tests 5 109 ✅ 508 💤 2 ❌
5 625 runs  5 109 ✅ 514 💤 2 ❌

For more details on these failures, see this check.

Results for commit 086c1ab.

@github-actions
Copy link

LocalStack Community integration with Pro

    2 files  ±0      2 suites  ±0   2h 1m 4s ⏱️ - 2m 36s
5 214 tests ±0  4 862 ✅ ±0  352 💤 ±0  0 ❌ ±0 
5 216 runs  ±0  4 862 ✅ ±0  354 💤 ±0  0 ❌ ±0 

Results for commit 086c1ab. ± Comparison against base commit 4708a82.

@simonrw
Copy link
Contributor Author

simonrw commented Feb 13, 2026

The test failure is unrelated

@simonrw simonrw marked this pull request as ready for review February 13, 2026 08:53
Copy link
Member

@alexrashed alexrashed left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch! And thanks for the detailed comment to help understanding why this is helpful! 💯

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs: skip Pull request does not require documentation changes notes: skip Pull request does not have to be mentioned in the release notes semver: patch Non-breaking changes which can be included in patch releases

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants