-
-
Notifications
You must be signed in to change notification settings - Fork 82
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
Added version compatibility check #332
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
scohen
force-pushed
the
tagged_artifacts
branch
2 times, most recently
from
August 14, 2023 22:59
6586ce5
to
85a7aa7
Compare
Lexical now outputs the erlang and elixir versions of the VM that was used to create them. It now checks the build and packaging directories for these versioning files and emits an error message if the vm starts with beam files that won't work.
scohen
force-pushed
the
tagged_artifacts
branch
from
August 14, 2023 23:17
85a7aa7
to
1ee0c31
Compare
Another belt to wear with the suspenders. When we build a package that overwrites another package, if the version has changed, we delete the old compiled code and the old package and start compilation from scratch. This definitely prevents old beam files from ending up in the new package.
scohen
force-pushed
the
tagged_artifacts
branch
from
August 15, 2023 17:42
c3508ab
to
a14f066
Compare
After ~/Co/lexical tagged_artifacts *1 ❯ iex -S mix 46s 25.3.2.4 1.15.4-otp-25
Erlang/OTP 25 [erts-13.2.2.2] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [jit:ns]
** (Mix) Could not start application server: exited in: Lexical.Server.Application.start(:normal, [])
** (EXIT) an exception was raised:
** (MatchError) no match of right hand side value: :error
(server 0.1.0) lib/lexical/server/application.ex:33: Lexical.Server.Application.check_version/0
(server 0.1.0) lib/lexical/server/application.ex:16: Lexical.Server.Application.start/2
(kernel 8.5.4.1) application_master.erl:293: :application_master.start_it_old/4 |
@scottming you must be using an old version, there is no line 33 in I tried the following, and it worked for me: > mix clean
> mix package
> iex -S mix |
scottming
approved these changes
Aug 22, 2023
@scohen yeah, you're right, I tried |
scohen
added a commit
that referenced
this pull request
Aug 23, 2023
* Bumped versions to 0.3.0 * Added version compatibility check (#332) * Added version compatibility check Lexical now outputs the erlang and elixir versions of the VM that was used to create them. It now checks the build and packaging directories for these versioning files and emits an error message if the vm starts with beam files that won't work. * Detected version change on call to package Another belt to wear with the suspenders. When we build a package that overwrites another package, if the version has changed, we delete the old compiled code and the old package and start compilation from scratch. This definitely prevents old beam files from ending up in the new package. * Fixed dialyzer error halt/1 always raises which irritates dialyzer. Added an ignore to it. * Improved launcher script (#339) * Improved launcher script Seems ERL_LIBS wasn't picked up universally across versions, so I swapped that out for the -pa flag * silenced errors, used command -v to check for asdf / rtx * Evalled output from rtx env * fixed typo * Update bin/start_lexical.sh Co-authored-by: Étienne Lévesque <[email protected]> --------- Co-authored-by: Étienne Lévesque <[email protected]> * fix: update Nix derivation to use new build (#344) * fix: update Nix derivation to use new build --------- Co-authored-by: Steve Cohen <[email protected]> --------- Co-authored-by: Étienne Lévesque <[email protected]> Co-authored-by: Łukasz Jan Niemier <[email protected]>
scohen
added a commit
that referenced
this pull request
Aug 23, 2023
* Added version compatibility check Lexical now outputs the erlang and elixir versions of the VM that was used to create them. It now checks the build and packaging directories for these versioning files and emits an error message if the vm starts with beam files that won't work. * Detected version change on call to package Another belt to wear with the suspenders. When we build a package that overwrites another package, if the version has changed, we delete the old compiled code and the old package and start compilation from scratch. This definitely prevents old beam files from ending up in the new package.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Lexical now outputs the erlang and elixir versions of the VM that was used to create them. It now checks the build and packaging directories for these versioning files and emits an error message if the vm starts with beam files that won't work.
Fixes #328 and #324