summaryrefslogtreecommitdiff
path: root/src/rebar_prv_dialyzer.erl
Commit message (Collapse)AuthorAgeFilesLines
* Some fixes after reviewViacheslav V. Kovalev2015-06-261-2/+1
|
* Fix dialyzer tests on windowsViacheslav V. Kovalev2015-06-261-1/+1
|
* Fix dialyzer tests on windowsViacheslav V. Kovalev2015-06-261-0/+9
|
* Use the same dialyzer rebar.config options as rebarJames Fish2015-06-061-35/+58
| | | | | | | | | | | | | | | | | | | | * All configuration is moved to `{dialyzer, PropList}` * `dialyzer_warnings` renamed `warnings` * `dialyzer_plt_warnings` renamed `get_warnings` * `dialyzer_plt_apps` renamed `plt_extra_apps` * `dialyzer_plt_dir` renamed `plt_location` * `{plt_location, local}` uses profile base directory * `dialyzer_plt` removed * `dialyzer_plt_prefix` sets prefix of PLT name (default "rebar3") * `dialyzer_base_plt_apps` renamed `base_plt_apps` * `dialyzer_base_plt_dir` renamed `base_plt_location` * `{base_plt_location, global}` uses rebar3's global cache directory * `dialyzer_base_plt` removed * `base_plt_prefix` sets prefix of PLT name (default "rebar3") PLT files are always named `<prefix>_<otp_version>_plt` to match rebar. `plt_prefix` and `base_plt_prefix` are not available in rebar, where the prefix is always set to the project's top level application.
* Include same files in PLT as rebar2James Fish2015-06-021-99/+39
| | | | | | | | * Only include direct dependencies + base plt * Error on missing direct dependency * Always use beams in ebin instead of reading .app file (copying rebar2) * Remove fake unknown warnings (will clash with unknown warning in 18.0) * Remove redundant search for .app file (code path includes deps)
* fix bareness issuesFred Hebert2015-05-311-1/+1
| | | | | | - Crashes in providers lib when no providers in a namespace are bare - Making sure bareness matches semantics; i.e. a bare provider is visible, a non-bare provider is hidden.
* print and format error message for bad .app files and all bad configsTristan Sloughter2015-05-221-2/+2
|
* Write dialyzer warnings to fileJames Fish2015-04-281-56/+95
|
* Error on dialyzer unknown warnings like rebar2James Fish2015-04-281-67/+86
|
* real bootstrappingTristan Sloughter2015-04-221-1/+1
|
* track and cleanup code paths for different contextsTristan Sloughter2015-04-211-0/+3
|
* use PRV_ERROR for formattable errorsFred Hebert2015-03-161-2/+3
| | | | Also expose it in rebar_api
* Store base PLT in ~/.cache/rebar3/James Fish2015-03-121-2/+2
|
* update all examples in providers to use rebar3Tristan Sloughter2015-03-071-1/+1
|
* Merge pull request #227 from fishcakez/dialyzer_pltTristan Sloughter2015-03-051-20/+3
|\ | | | | Change PLT name and directory
| * Shorten default PLT nameJames Fish2015-03-051-1/+1
| |
| * Fix dialyzer active otp release detectionJames Fish2015-03-051-18/+1
| |
| * Change default project PLT location to base directoryJames Fish2015-03-051-2/+2
| | | | | | | | | | | | Previously dialyzer stored the project PLT in ./build/, which meant the same PLT was used for all profiles. This could mean partial rebuilding of a PLT when switching between profiles.
* | Add debug statements to dialyzer providerJames Fish2015-03-051-1/+5
|/
* Do not automatically check pltJames Fish2015-03-031-2/+7
|
* follow xdg standard. fixes #122Tristan Sloughter2015-02-191-2/+1
|
* Remove extra default warningsJames Fish2015-02-161-7/+1
| | | | | | It is not convenient for everyone to handle unmatched_returns and underspecs warnings. Extra default warnings are removed to match dialyzer's behaviour.
* Fix dialyzer when only updating pltJames Fish2015-02-151-1/+1
| | | | Previously dialyzer would crash when not doing success typing analysis.
* Fix {dialyzer_plt_warnings, false} returning warningsJames Fish2015-02-141-6/+26
| | | | | | When dialyzer_plt_warnings is false no warnings should be returned when updating a PLT. Previously any callgraph warnings would be returned when updating a PLT regardless of the get_warnings option.
* Merge pull request #132 from fishcakez/dialyzer_failTristan Sloughter2015-02-081-28/+51
|\ | | | | Dialyzer fails if any warnings
| * Fix dialyzer plt checking typoJames Fish2015-02-071-1/+1
| |
| * Display full path in dialyzer warningssJames Fish2015-02-071-1/+1
| |
| * Fail if any dialyzer warnings aren't unknownsJames Fish2015-02-071-25/+48
| |
* | Fix dialyzer erts file lookup for releases prior to R16B02James Fish2015-02-081-0/+7
|/ | | | | erts.app was introduced in R16B02 so read all beam files from the erts ebin directory if erts.app file does not exist.
* Ensure dir for plt exists when copyingJames Fish2014-12-171-0/+1
|
* move dir functions from utils to new module rebar_dirTristan Sloughter2014-12-011-1/+1
|
* Fix printing of dialyzer warningsJames Fish2014-11-221-1/+1
| | | | | Fixes cases where dialyzer warning might include a `~` causing printing to console to fail with `badarg`.
* Fix dialyzer to work on rebarJames Fish2014-11-221-5/+28
| | | | | | | code:lib_dir/1,2 can return archive directory for rebar escript archive applications, rather than the application's directory in the project. Add dependencies not listed in `applications` to `dialyzer_plt_apps`.
* Add configuration to hide warnings when updating pltJames Fish2014-11-211-3/+8
|
* Cleanup dialyzer providerJames Fish2014-11-211-37/+38
|
* Add crypto to base plt by defaultJames Fish2014-11-211-0/+1
|
* Clarify how apps are selected for the plt filesJames Fish2014-11-211-4/+6
|
* Introduce dialyzer otp versioned plts and base pltsJames Fish2014-11-201-88/+120
| | | | | | | Adds a base plt per OTP version that is stored in $HOME/.rebar3/. The base plt is copied to new projects that don't have a plt for the active OTP version. Modules are added/removed to the project's copy based on the project's .app files.
* Prepare dialyzer command for public useJames Fish2014-11-201-11/+36
| | | | | | * Add description * Make configuration constitent (prefix with dialyzer_) * Make printed info consistent
* Add options to skip updating plt or success typingJames Fish2014-11-201-2/+21
| | | | | * --update-plt=true|false (false skips updating plt) * --succ-typings=true|false (false skips success typing analysis)
* Improve default dialyzer PLT by trying to guess dependenciesJames Fish2014-11-201-11/+51
| | | | | | | | | | Try to automatically detect all application dependencies when `plt_apps` is not included in `rebar.config`. Note that this will not follow `runtime_dependencies` in OTP applications. This can be resolved by adding any missing `runtime_dependencies` to `applications` in the .app.src file or including `plt_apps` in `rebar.config`.
* Improve formatting of dialyzer errorsJames Fish2014-11-201-1/+9
| | | | Strip ":0: " from unknown type/function/behaviour warnings
* Refactor dialyzer PLT useJames Fish2014-11-201-45/+164
| | | | | | * Only include `plt_apps` (defaults to deps) in a single PLT * Update PLT when `plt_apps` (or deps) are changed or updated * Print warnings for all dialyzer runs (not just `succ_typings`)
* Fix default dialyzer warningsJames Fish2014-11-201-9/+1
| | | | | | | * Nolonger supress standard warnings * Nolonger include race_conditions by default[1] [1] http://erlang.org/pipermail/erlang-bugs/2014-July/004518.html
* move back to using format_error/1Tristan Sloughter2014-11-091-6/+6
|
* add deps pltTristan Sloughter2014-11-091-6/+8
|
* strip newline from end of dialyzer format warningsTristan Sloughter2014-11-081-1/+2
|
* add dialyzer providerTristan Sloughter2014-11-081-0/+105