Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ doc/*.css
doc/*.html
doc/*.png
doc/edoc-info
.directory
.eunit
.rebar
rebar3
rebar.lock
Copy link
Contributor

Choose a reason for hiding this comment

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

This file is typically checked in.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Why should it be? PropEr does not have any dependencies, let alone locked ones, and it seems that rebar3 automatically generates this rebar.lock file when run. What I am missing?

.eunit/
.rebar/
_build/
9 changes: 7 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,19 @@ endif

PROPER_REBAR := .$(SEP)rebar

REBAR3_URL := https://s3.amazonaws.com/rebar3/rebar3
REBAR3 ?= $(shell which rebar3 || which .$(SEP)rebar3 || \
(wget $(REBAR3_URL) && chmod +x rebar3 && echo .$(SEP)rebar3))

default: compile

all: compile dialyzer doc test

compile:
$(PROPER_REBAR) compile
$(REBAR3) compile

dialyzer: .plt/proper_plt compile
dialyzer -n -nn --plt $< -Wunmatched_returns ebin
dialyzer -n -nn --plt $< -Wunmatched_returns _build/default/lib/proper/ebin
Copy link
Contributor

Choose a reason for hiding this comment

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

rebar3 has a dialyzer command that should take care of building the plt and including the correct beams

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I know about the rebar3 dialyzer command but I do not like it. It requires having an installed Erlang/OTP system (which I do not have) in order to find erts as an application to include in the PLT. I prefer calling dialyzer directly, and I do not see the point in not using make for these things. Note that calling Dialyzer and running the tests is for PropEr developers only, not for regular users.


.plt/proper_plt: .plt
dialyzer --build_plt --output_plt $@ --apps erts kernel stdlib compiler crypto syntax_tools eunit
Expand All @@ -58,6 +62,7 @@ clean:
distclean: clean
$(RM) -r .eunit .rebar
$(RM) .plt/proper_plt
$(RM) -r _build rebar3 rebar.lock
$(PROPER_REBAR) clean

rebuild: distclean compile
Expand Down
33 changes: 0 additions & 33 deletions mix.exs

This file was deleted.

11 changes: 7 additions & 4 deletions src/proper.app.src
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
%%% -*- coding: utf-8 -*-
%%% -*- erlang-indent-level: 2 -*-
%%% -------------------------------------------------------------------
%%% Copyright 2010-2018 Manolis Papadakis <manopapad@gmail.com>,
%%% Copyright 2010-2019 Manolis Papadakis <manopapad@gmail.com>,
%%% Eirini Arvaniti <eirinibob@gmail.com>
%%% and Kostis Sagonas <kostis@cs.ntua.gr>
%%%
Expand All @@ -20,14 +20,17 @@
%%% You should have received a copy of the GNU General Public License
%%% along with PropEr. If not, see <http://www.gnu.org/licenses/>.

%%% @copyright 2010-2018 Manolis Papadakis, Eirini Arvaniti and Kostis Sagonas
%%% @copyright 2010-2019 Manolis Papadakis, Eirini Arvaniti and Kostis Sagonas
%%% @version {@version}
%%% @author Manolis Papadakis
%%% @doc This is the source for the proper.app file.

{application, proper,
[{description, "A QuickCheck-inspired property-based testing tool for Erlang"},
{vsn, "1.3.0"},
{maintainers, ["Manolis Papadakis", "Eirini Arvaniti", "Kostis Sagonas"]},
{licenses, ["GPL3"]},
{link, [{"GitHub", "https://github.com/proper-testing/proper"}]},
{vsn, "1.4.0"},
{registered, []},
{applications, [compiler,kernel,stdlib]},
{applications, [compiler, kernel, stdlib]},
{env, []}]}.