Skip to content
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

Switch to rebar3 and get compatible to erlang 20 #62

Merged
merged 17 commits into from
Apr 9, 2018

Conversation

GalaxyGorilla
Copy link
Contributor

Actually this PR should just have been about erlang 20 but for some reasons (probably local env problems) I couldn't handle the old relx binary. So I thought I just update to rebar3 too and spare me the bug searching.

I hope I did not break anything for esl's toolchains. Can you check?

@GalaxyGorilla GalaxyGorilla changed the title [WiP] Switch to rebar3 and get comparible to erlang 20 [WiP] Switch to rebar3 and get compatible to erlang 20 Apr 5, 2018
@GalaxyGorilla
Copy link
Contributor Author

I have to do some testing too today, so I set this as WiP.

@GalaxyGorilla GalaxyGorilla changed the title [WiP] Switch to rebar3 and get compatible to erlang 20 Switch to rebar3 and get compatible to erlang 20 Apr 6, 2018
@GalaxyGorilla
Copy link
Contributor Author

To get dialyzer running I set some ignore flags. Also dependencies are not dialyzed for now since gun has an issue which should be fixed upstream.

@GalaxyGorilla
Copy link
Contributor Author

As a sidenote: I don't know why dialyzer was integrated with CT here but this is the first thing I would revert in the future. There are already dialyzer targets in the Makefile.

@michalwski
Copy link
Contributor

Hi @GalaxyGorilla, thanks for the effort! We really appreciate your work.

I don't know why dialyzer was integrated with CT here but this is the first thing I would revert in the future. There are already dialyzer targets in the Makefile.

Dialyzer was integrated with CT in order to fail the travis job if there are any errors emitted. We did this to make sure that we keep type and function spec up to date.

rebar.config Outdated
@@ -1,25 +1,39 @@
{erl_opts, [debug_info,
warn_missing_spec,
%warn_missing_spec,
Copy link
Contributor

Choose a reason for hiding this comment

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

What is the root cause behind disabling this flag?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I guess I disabled this to prevent a wall of warnings every time i executed something. I will put it back in place.

@GalaxyGorilla
Copy link
Contributor Author

@michalwski Is that really something that is not possible with Makefile targets? I have no experience with travis-ci ... but gitlab-ci, go cd etc. have absolutely no problem with this. It should just care about return codes not equal to 0.

@michalwski
Copy link
Contributor

It is possible with travis as well. Currently there is no need to put dialyzer inside CT.

If you want to remove dialyzer form CT but still have it fail the job you can add make dialyzer or ./rebar3 dialyzer to scripts in .travis.yml. Like in the following example:

script:
    - make test
   - ./rebar3 dialyzer

@GalaxyGorilla
Copy link
Contributor Author

@michalwski Can we make that in another PR? I can also do this immediately after you merge this (if you are happy about the rest). This PR ist just intended to get amoc ready for erlang 20.

@michalwski
Copy link
Contributor

@GalaxyGorilla sure, this can done in a separate PR

@michalwski
Copy link
Contributor

@GalaxyGorilla did you see pr #50. It's also about switching to rebar3. There are some changes to ansible and docker files which I think would be worth to port to this PR

@GalaxyGorilla
Copy link
Contributor Author

@michalwski here you go :)

@michalwski
Copy link
Contributor

Thanks, it looks good to me. I'd like to wait for my colleagues using Amoc in our continuous load testing tool to see the chenges and comment if this will break existing workflows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants