jeremyjh / dialyxir

Mix tasks to simplify use of Dialyzer in Elixir projects.
Apache License 2.0
1.7k stars 140 forks source link

New release candidate not working on sample project #274

Closed Fl4m3Ph03n1x closed 5 years ago

Fl4m3Ph03n1x commented 5 years ago

Environment

output of asdf current

elixir         1.7.3-otp-21(set by /home/fl4m3/Workspace/elixir_and_otp_guidebook/dialyxyr_playground/.tool-versions)
erlang         21.1    (set by /home/fl4m3/.tool-versions)

[{:dialyxir, "~> 1.0.0-rc.4", only: [:dev], runtime: false}]

Current behavior

Steps taken:

  1. mix new dialyxir_playground_v2
  2. cd dialyxir_playground_v2
  3. asdf local elixir 1.7.3-otp-21
  4. add dependency [{:dialyxir, "~> 1.0.0-rc.4", only: [:dev], runtime: false}]
  5. mix do deps.get, deps.compile

This is where I get the first issue. A ton of warnings, like with the 0.5 release, but more.

Resolving Hex dependencies...
Dependency resolution completed:
Unchanged:
  dialyxir 1.0.0-rc.4
  erlex 0.1.6
All dependencies up to date
==> erlex
Compiling 1 file (.yrl)
src/parser.yrl: Warning: conflicts: 23 shift/reduce, 0 reduce/reduce
Compiling 1 file (.xrl)
Compiling 2 files (.erl)
Compiling 1 file (.ex)
Generated erlex app
==> dialyxir
Compiling 56 files (.ex)
warning: redefining module Dialyxir.Warnings.FuncionApplicationArguments (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.FuncionApplicationArguments.beam)
  lib/dialyxir/warnings/function_application_arguments.ex:1

warning: redefining module Dialyxir.Warnings.UnknownType (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.UnknownType.beam)
  lib/dialyxir/warnings/unknown_type.ex:1

warning: redefining module Dialyxir.Warnings.CallWithoutOpaque (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallWithoutOpaque.beam)
  lib/dialyxir/warnings/call_without_opaque.ex:1

warning: redefining module Dialyxir.Warnings.CallbackTypeMismatch (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallbackTypeMismatch.beam)
  lib/dialyxir/warnings/callback_type_mismatch.ex:1

warning: redefining module Dialyxir.WarningHelpers (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.WarningHelpers.beam)
  lib/dialyxir/warning_helpers.ex:1

warning: redefining module Dialyxir.Warnings.RaceCondition (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.RaceCondition.beam)
  lib/dialyxir/warnings/race_condition.ex:1

warning: redefining module Dialyxir.Warnings.NegativeGuardFail (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.NegativeGuardFail.beam)
  lib/dialyxir/warnings/negative_guard_fail.ex:1

warning: redefining module Dialyxir.Warnings.BinaryConstruction (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.BinaryConstruction.beam)
  lib/dialyxir/warnings/binary_construction.ex:1

warning: redefining module Mix.Tasks.Dialyzer (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Mix.Tasks.Dialyzer.beam)
  lib/mix/tasks/dialyzer.ex:1

warning: redefining module Dialyxir.Warnings.RecordMatching (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.RecordMatching.beam)
  lib/dialyxir/warnings/record_matching.ex:1

warning: redefining module Dialyxir.Project (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Project.beam)
  lib/dialyxir/project.ex:1

warning: redefining module Dialyxir.Warnings.FunctionApplicationNoFunction (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.FunctionApplicationNoFunction.beam)
  lib/dialyxir/warnings/function_application_no_function.ex:1

warning: redefining module Dialyxir.Warnings.GuardFailPattern (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.GuardFailPattern.beam)
  lib/dialyxir/warnings/guard_fail_pattern.ex:1

warning: redefining module Mix.Tasks.Dialyzer.Build (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Mix.Tasks.Dialyzer.Build.beam)
  lib/mix/tasks/dialyzer.ex:94

warning: redefining module Dialyxir.Warnings.ContractRange (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ContractRange.beam)
  lib/dialyxir/warnings/contract_range.ex:1

warning: redefining module Mix.Tasks.Dialyzer.Clean (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Mix.Tasks.Dialyzer.Clean.beam)
  lib/mix/tasks/dialyzer.ex:112

warning: redefining module Dialyxir.Warnings.PatternMatch (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.PatternMatch.beam)
  lib/dialyxir/warnings/pattern_match.ex:1

warning: redefining module Dialyxir.Warnings.OverlappingContract (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.OverlappingContract.beam)
  lib/dialyxir/warnings/overlapping_contract.ex:1

warning: redefining module Dialyxir.Warnings.OpaqueGuard (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.OpaqueGuard.beam)
  lib/dialyxir/warnings/opaque_guard.ex:1

warning: redefining module Dialyxir.Warnings.AppCall (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.AppCall.beam)
  lib/dialyxir/warnings/app_call.ex:1

warning: redefining module Dialyxir.Warnings.Call (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.Call.beam)
  lib/dialyxir/warnings/call.ex:1

warning: redefining module Dialyxir.Warnings.ContractSupertype (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ContractSupertype.beam)
  lib/dialyxir/warnings/contract_supertype.ex:1

warning: redefining module Dialyxir.Output (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Output.beam)
  lib/dialyxir/output.ex:1

warning: redefining module Dialyxir.Warnings.Apply (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.Apply.beam)
  lib/dialyxir/warnings/apply.ex:1

warning: redefining module Dialyxir.Warnings.ContractWithOpaque (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ContractWithOpaque.beam)
  lib/dialyxir/warnings/contract_with_opaque.ex:1

warning: redefining module Dialyxir.Plt (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Plt.beam)
  lib/dialyxir/plt.ex:5

warning: redefining module Dialyxir.Warnings.UnknownBehaviour (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.UnknownBehaviour.beam)
  lib/dialyxir/warnings/unknown_behaviour.ex:1

warning: redefining module Dialyxir.Formatter (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Formatter.beam)
  lib/dialyxir/formatter.ex:1

warning: redefining module Dialyxir.Dialyzer (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Dialyzer.beam)
  lib/dialyxir/dialyzer.ex:1

warning: redefining module Dialyxir.Warnings.PatternMatchCovered (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.PatternMatchCovered.beam)
  lib/dialyxir/warnings/pattern_match_covered.ex:1

warning: redefining module Dialyxir.Dialyzer.Runner (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Dialyzer.Runner.beam)
  lib/dialyxir/dialyzer.ex:7

warning: redefining module Dialyxir.Warnings.OpaqueNonequality (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.OpaqueNonequality.beam)
  lib/dialyxir/warnings/opaque_nonequality.ex:1

warning: redefining module Dialyxir.Warnings.CallToMissingFunction (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallToMissingFunction.beam)
  lib/dialyxir/warnings/call_to_missing_function.ex:1

warning: redefining module Dialyxir.Warnings.RecordConstruction (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.RecordConstruction.beam)
  lib/dialyxir/warnings/record_construction.ex:1

warning: redefining module Dialyxir.Warnings.ContractDiff (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ContractDiff.beam)
  lib/dialyxir/warnings/contract_diff.ex:1

warning: redefining module Dialyxir.Warnings.OpaqueEquality (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.OpaqueEquality.beam)
  lib/dialyxir/warnings/opaque_equality.ex:1

warning: redefining module Dialyxir.Warnings.MissingRange (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.MissingRange.beam)
  lib/dialyxir/warnings/missing_range.ex:1

warning: redefining module Dialyxir.Warnings.OpaqueTypeTest (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.OpaqueTypeTest.beam)
  lib/dialyxir/warnings/opaque_type_test.ex:1

warning: redefining module Dialyxir.Warnings.CallWithOpaque (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallWithOpaque.beam)
  lib/dialyxir/warnings/call_with_opaque.ex:1

warning: redefining module Dialyxir.Warnings.InvalidContract (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.InvalidContract.beam)
  lib/dialyxir/warnings/invalid_contract.ex:1

warning: redefining module Dialyxir.Warnings.NoReturn (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.NoReturn.beam)
  lib/dialyxir/warnings/no_return.ex:1

warning: redefining module Dialyxir.Warning (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warning.beam)
  lib/dialyxir/warning.ex:1

warning: redefining module Dialyxir.Warnings.CallbackInfoMissing (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallbackInfoMissing.beam)
  lib/dialyxir/warnings/callback_info_missing.ex:1

warning: redefining module Dialyxir.Warnings.CallbackArgumentTypeMismatch (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallbackArgumentTypeMismatch.beam)
  lib/dialyxir/warnings/callback_argument_type_mismatch.ex:1

warning: redefining module Dialyxir.Warnings.ExactEquality (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ExactEquality.beam)
  lib/dialyxir/warnings/exact_equality.ex:1

warning: redefining module Dialyxir.Warnings.OpaqueMatch (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.OpaqueMatch.beam)
  lib/dialyxir/warnings/opaque_match.ex:1

warning: redefining module Dialyxir.Warnings.UnmatchedReturn (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.UnmatchedReturn.beam)
  lib/dialyxir/warnings/unmatched_return.ex:1

warning: redefining module Dialyxir.Warnings.CallbackSpecArgumentTypeMismatch (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallbackSpecArgumentTypeMismatch.beam)
  lib/dialyxir/warnings/callback_spec_argument_type_mismatch.ex:1

warning: redefining module Dialyxir.Warnings (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.beam)
  lib/dialyxir/warnings.ex:1

warning: redefining module Dialyxir.Warnings.UnknownFunction (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.UnknownFunction.beam)
  lib/dialyxir/warnings/unknown_function.ex:1

warning: redefining module Mix.Tasks.Dialyzer.Explain (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Mix.Tasks.Dialyzer.Explain.beam)
  lib/mix/tasks/dialyzer/explain.ex:1

warning: redefining module Dialyxir.Warnings.ImproperListConstruction (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ImproperListConstruction.beam)
  lib/dialyxir/warnings/improper_list_construction.ex:1

warning: redefining module Dialyxir (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.beam)
  lib/dialyxir.ex:1

warning: redefining module Dialyxir.Warnings.ContractSubtype (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ContractSubtype.beam)
  lib/dialyxir/warnings/contract_subtype.ex:1

warning: redefining module Dialyxir.Warnings.ExtraRange (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.ExtraRange.beam)
  lib/dialyxir/warnings/extra_range.ex:1

warning: redefining module Dialyxir.Warnings.CallbackSpecTypeMismatch (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallbackSpecTypeMismatch.beam)
  lib/dialyxir/warnings/callback_spec_type_mismatch.ex:1

warning: redefining module Dialyxir.Warnings.GuardFail (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.GuardFail.beam)
  lib/dialyxir/warnings/guard_fail.ex:1

warning: redefining module Dialyxir.Warnings.UnusedFunction (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.UnusedFunction.beam)
  lib/dialyxir/warnings/unused_function.ex:1

warning: redefining module Dialyxir.Warnings.CallbackMissing (current version loaded from /home/fl4m3/.asdf/installs/elixir/1.7.3-otp-21/.mix/archives/dialyxir-1.0.0-rc.4/dialyxir-1.0.0-rc.4/ebin/Elixir.Dialyxir.Warnings.CallbackMissing.beam)
  lib/dialyxir/warnings/callback_missing.ex:1

Generated dialyxir app

But it doesn't stop here, here are more steps:

  1. Add the bug test files into lib
  2. mix dialyzer

And it explodes:

Compiling 5 files (.ex)
Generated dialyxir_playground_v2 app
Finding suitable PLTs
Checking PLT...
[:compiler, :elixir, :kernel, :logger, :stdlib]
Looking up modules in dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt
Looking up modules in dialyxir_erlang-21.1_elixir-1.7.3.plt
Finding applications for dialyxir_erlang-21.1_elixir-1.7.3.plt
Finding modules for dialyxir_erlang-21.1_elixir-1.7.3.plt
Checking 415 modules in dialyxir_erlang-21.1_elixir-1.7.3.plt
Finding applications for dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt
Finding modules for dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt
Copying dialyxir_erlang-21.1_elixir-1.7.3.plt to dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt
Looking up modules in dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt
Checking 415 modules in dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt
Adding 59 modules to dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt
No :ignore_warnings opt specified in mix.exs and default does not exist.

Starting Dialyzer
[
  check_plt: false,
  init_plt: '/home/fl4m3/Workspace/elixir_and_otp_guidebook/dialyxir_playground_v2/_build/dev/dialyxir_erlang-21.1_elixir-1.7.3_deps-dev.plt',
  files_rec: ['/home/fl4m3/Workspace/elixir_and_otp_guidebook/dialyxir_playground_v2/_build/dev/lib/dialyxir_playground_v2/ebin'],
  warnings: [:unknown]
]
** (UndefinedFunctionError) function Dialyxir.Project.filter_warnings/1 is undefined or private. Did you mean one of:

      * filter_legacy_warnings/1
      * filter_legacy_warnings/2
      * filter_warning?/1

    Dialyxir.Project.filter_warnings(["lib/bug_1.ex:6: Function run/0 has no local return\n"])
    lib/dialyxir/formatter.ex:190: anonymous fn/2 in Dialyxir.Formatter.filter_legacy_warnings/2
    (elixir) lib/enum.ex:2985: Enum.reject_list/2
    lib/dialyxir/formatter.ex:26: Dialyxir.Formatter.format_and_filter/3
    lib/dialyxir/dialyzer.ex:42: Dialyxir.Dialyzer.Runner.run/2
    lib/dialyxir/dialyzer.ex:58: Dialyxir.Dialyzer.dialyze/3
    lib/mix/tasks/dialyzer.ex:254: Mix.Tasks.Dialyzer.run_dialyzer/2
    lib/mix/tasks/dialyzer.ex:188: Mix.Tasks.Dialyzer.run/1

Expected behavior

It should build the PLT tables without blowing up and then analyze the buggy files.

NobbZ commented 5 years ago

First you need to remove the global installation to make sure we have a clean instance to work with. I've told you in #273 how to do so.

After removing the global dialyxir, please remove deps and _build and check if you still get the redefinition warnings when compiling dialyxir. As soon as they are gone, and the other issue remains, we can continue looking into it.

Fl4m3Ph03n1x commented 5 years ago

Fixed on: https://github.com/jeremyjh/dialyxir/issues/273