Commit graph

12 commits

Author SHA1 Message Date
Austin Valle
6428b2bdbc add provider source back to success tests 2026-04-30 16:07:32 -04:00
James Bardin
e480b016f8 remove the extra logic to detect prov funcs
We can't detect why a provider function is missing is all cases, so
get rid of the extra logic trying to do that.

We also admit here that we need to allow a provider function within a
variable validation condition, because that is not the only way these
could fail during init, and it's otherwise valid during the next phase.
2026-04-30 15:55:29 -04:00
James Bardin
c6b61bf731 simplify error messages for dynamic source
We can't fully detect why a module source or version might be unknown,
so instead use a simpler error that covers all possible reasons. If we
do find a way to get more specific in the future, we can extent it then,
but the current errors were trying to be specific when they couldn't.
2026-04-30 15:55:26 -04:00
Austin Valle
19972a4606 adjust tests 2026-04-30 15:32:30 -04:00
Austin Valle
1c88535ac0 add test for validation reference to non-const variable 2026-04-30 15:19:51 -04:00
Austin Valle
d2c9214081 prune validate nodes 2026-04-30 15:01:37 -04:00
Sarah French
b7a43b31b0 Comments and changes from pairing
Co-authored-by: Austin Valle <austinvalle@gmail.com>
2026-04-30 15:08:33 +01:00
Austin Valle
b0539318f1 remove duplicate test 2026-04-29 17:33:44 -04:00
Austin Valle
6c783ce1be add some tests + TODOs 2026-04-29 17:32:08 -04:00
Sarah French
650fd346aa
refactor: Separate concerns in mock provider sources logic, handle callbacks using t.Cleanup (#38446)
* refactor: Split temp file creation logic out of FakeInstallablePackageMeta & FakePackageMetaViaHTTP. Handle cleanup internally.

* refactor: Use 'Must' helpers in `newMockProviderSourceUsingTestHttpServer`

* refactor: Update tests using `newMockProviderSource` to not handle 'close' callback
2026-04-27 12:13:55 +01:00
Daniel Banck
45ba6796ba Add more dynamic module sources tests 2026-03-04 11:45:59 +01:00
Daniel Banck
4ef9684188 Rework most of the configuration loading
We previously used a loader -> BuildConfig flow to load configuration.
This commit changes most (but not all yet) flows to use the new
graph-based approach. Instead of simply recursively loading the modules,
we now need to take a stepped approach:

1. Load the root module
2. Collect the variables and their values
3. Build the configuration with the graph-based approach

Because this approach relies on different parts from different packages,
it can't easliy be done within the `configload` package. So, now we do
most of in the backend or command.
2026-03-04 11:45:59 +01:00