-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support next tag #716
Support next tag #716
Conversation
autoinstall without a version is handled a bit differnetly now, so I'm adding versions to ensure the tests use the repo
Still something wrong with the engine and @latest. Need to test that carefully tomorrow |
Oh my days it's passing!! I wonder if this is actually a reasonable fix - struggling to get my head back into this space. I'll self-review this afternoon |
The behaviour in CLI in production (validated through testing) is:
This is a problem because now and forever, So that's actually not very good! The behavior on this branch is:
Is this the same in CLI AND Worker? I think that when Lightning runs from @latest, it instantly version locks the number to whatever is latest now. That's the correct behaviour but I need to verify this. With @next, though, Lightning should literally use |
The PR adds support for the @next tag in the Worker and CLI.
Background
I am working on pr-release dist-tag for adaptors, making them available to the worker in particular but only if asked for.
Over in adaptors, I've added logic to build and publish prereleases with the
@next
tag.Implementation
Here in kit, I've had to add logic to the CLI, Runtime and Worker to better manage
@next
- and for that matter,@latest
.install
function - because@next
needs converting to a version number and passing to the compiler and runtimeThe change is small but deep, so I'm testing carefully before I'm ready to release.
Test Notes
The integration tests are destined to be a little bit fragile as they'll depend on specific adaptor versions being available on NPM.
I am trying to decide whether to skip these tests or do consolidate releases before merging.
QA
In the CLI:
openfnx repo clean
or pass a--repo-dir=/tmp/my-new-repo
(whatever path you like) each of these commands-a [email protected]
-a common
(no version number) and--log debug
. Logs should tell you it's using the latest installed version of common (1.7.7)-a common@latest
. The CLI should install the latest version of common (>1.14.0)-a common@latest
and the CLI should tell you its checking versions, choosing the latest, and not re-installing it-a test-tmp
(fn is available, alsoversion
which is fun for this). The CLI should install the latest version1.0.1-next.0
-a test-tmp@next
, which should install the latest, pre-release build of the adaptor-a test-tmp@next
and it should check the latest version, but do nothingPhew.
In Lightning there isn't much to test yet.
When you pick @latest from the drop-down menu, Lightning will send the actual version number, not
@latest
, to the worker. In other words lightning is in total control of the versions.I will later raise a PR against Lightning to enable @next, if it exists.