Closed mweibel closed 9 years ago
The weird thing is that it still has timex 0.13.0 in the application list for the release 0.0.2 :S
Thanks @mweibel! I've run into this as well, at least one other issue is related to this. Still trying to sort out the correct solution. I'll keep you posted!
Ok thanks @bitwalker. I ran into some other issues as well, not sure if related. Will do a proper issue for them as well later.
Just to follow up here as well, I know what the cause of this is, so once I can build a test case to verify the fix, I'll push an update.
@mweibel Testing this locally and the scenario works correctly for me. Could you clone https://github.com/bitwalker/exrm-test, add the timex dependency, and run your test scenario again? I'm interested to see if you can reproduce this error with the latest exrm.
@bitwalker error is different now, but it doesn't work quite yet:
» mix release --verbosity=verbose
==> timex
Compiled lib/date/datetime.ex
Compiled lib/dateformat/format_error.ex
Compiled lib/dateformat/dateformat.ex
Compiled lib/dateformat/formats.ex
Compiled lib/parsers/dateformat/parser_state.ex
Compiled lib/parsers/dateformat/directive.ex
Compiled lib/dateformat/formatter.ex
Compiled lib/parsers/dateformat/parser.ex
Compiled lib/parsers/dateformat/tokenizers/default.ex
Compiled lib/dateformat/formatters/strftime.ex
Compiled lib/parsers/dateformat/tokenizers/strftime.ex
Compiled lib/parsers/dateformat/strftime.ex
Compiled lib/parsers/parse_error.ex
Compiled lib/dateformat/formatters/default.ex
Compiled lib/parsers/dateformat/default.ex
Compiled lib/timex.ex
Compiled lib/time/time_formatter.ex
Compiled lib/timezone/database.ex
Compiled lib/time/time.ex
Compiled lib/timezone/timezone_info.ex
Compiled lib/utils/utils.ex
Compiled lib/timezone/timezone_dst.ex
Compiled lib/timezone/timezone_local.ex
Compiled lib/date/date_convert.ex
Compiled lib/parsers/zoneinfo/zoneinfo.ex
Compiled lib/date/date.ex
Compiled lib/timezone/timezone.ex
Generated timex.app
==> test
Compiled lib/test/supervisor.ex
Compiled lib/test.ex
Compiled lib/test/server.ex
Generated test.app
==> Building release with MIX_ENV=dev.
Running dependency resolution
Dependency resolution completed successfully
All dependencies up to date
==> Generating relx configuration...
==> Generating sys.config...
==> Generating boot script...
==> Performing protocol consolidation...
Consolidated Timex.Date.Convert
Consolidated Access
Consolidated Collectable
Consolidated Enumerable
Consolidated Inspect
Consolidated List.Chars
Consolidated Range.Iterator
Consolidated String.Chars
Consolidated protocols written to _build/dev/consolidated
==> Conform: Loading schema...
==> Conform: Schema succesfully loaded!
==> Conform: Generating escript..
==> Conform: Adding overlays to relx.config...
==> Conform: Done!
==> Generating release...
==> Generated .appup for test 0.0.1 -> 0.0.2
===> Starting relx build process ...
===> state(command_line):
log: (3:debug),
config file: ~/exrm-test/rel/files/relx.config
goals:
output_dir: ~/exrm-test/_rel
lib_dirs:
providers:
tar,
relup,
release,
resolve_release,
overlay,
rel_discover,
app_discover,
provider config values:
{overlay_vars,[]},
{system_libs,undefined},
{default_libs,true},
===> Running provider app_discover
===> Resolving OTP Applications from directories:
~/exrm-test/_build/dev
/usr/local/homebrew/Cellar/elixir/1.0.3/lib
~/exrm-test/lib
~/exrm-test/deps
/usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib
~/exrm-test/rel
===> Resolved the following OTP Applications from the system:
conform-0.13.0: ~/exrm-test/_build/dev/lib/conform
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
exrm-0.15.2: ~/exrm-test/_build/dev/lib/exrm
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
test-0.0.2: ~/exrm-test/_build/dev/lib/test
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
logger,
timex,
Library Dependencies:
timex-0.13.2: ~/exrm-test/_build/dev/lib/timex
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
eex-1.0.3: /usr/local/homebrew/Cellar/elixir/1.0.3/lib/eex
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
elixir-1.0.3: /usr/local/homebrew/Cellar/elixir/1.0.3/lib/elixir
Symlink: false
Active Dependencies:
kernel,
stdlib,
crypto,
compiler,
syntax_tools,
Library Dependencies:
ex_unit-1.0.3: /usr/local/homebrew/Cellar/elixir/1.0.3/lib/ex_unit
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
iex-1.0.3: /usr/local/homebrew/Cellar/elixir/1.0.3/lib/iex
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
logger-1.0.3: /usr/local/homebrew/Cellar/elixir/1.0.3/lib/logger
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
mix-1.0.3: /usr/local/homebrew/Cellar/elixir/1.0.3/lib/mix
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
conform-0.13.0: ~/exrm-test/deps/conform/_build/dev/lib/conform
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
asn1-3.0.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/asn1-3.0.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
common_test-1.9: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/common_test-1.9
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
compiler-5.0.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/compiler-5.0.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
cosEvent-2.1.15: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/cosEvent-2.1.15
Symlink: false
Active Dependencies:
orber,
stdlib,
kernel,
Library Dependencies:
cosEventDomain-1.1.14: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/cosEventDomain-1.1.14
Symlink: false
Active Dependencies:
orber,
stdlib,
kernel,
Library Dependencies:
cosFileTransfer-1.1.16: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/cosFileTransfer-1.1.16
Symlink: false
Active Dependencies:
orber,
stdlib,
kernel,
Library Dependencies:
cosNotification-1.1.21: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/cosNotification-1.1.21
Symlink: false
Active Dependencies:
orber,
stdlib,
kernel,
Library Dependencies:
cosProperty-1.1.17: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/cosProperty-1.1.17
Symlink: false
Active Dependencies:
orber,
stdlib,
kernel,
Library Dependencies:
cosTime-1.1.14: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/cosTime-1.1.14
Symlink: false
Active Dependencies:
orber,
stdlib,
kernel,
Library Dependencies:
cosTransactions-1.2.14: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/cosTransactions-1.2.14
Symlink: false
Active Dependencies:
orber,
stdlib,
kernel,
Library Dependencies:
crypto-3.4.2: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/crypto-3.4.2
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
debugger-4.0.2: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/debugger-4.0.2
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
dialyzer-2.7.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/dialyzer-2.7.3
Symlink: false
Active Dependencies:
compiler,
gs,
hipe,
kernel,
stdlib,
wx,
Library Dependencies:
diameter-1.8: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/diameter-1.8
Symlink: false
Active Dependencies:
stdlib,
kernel,
Library Dependencies:
edoc-0.7.16: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/edoc-0.7.16
Symlink: false
Active Dependencies:
compiler,
kernel,
stdlib,
syntax_tools,
Library Dependencies:
eldap-1.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/eldap-1.1
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
erl_docgen-0.3.7: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/erl_docgen-0.3.7
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
erl_interface-3.7.20: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/erl_interface-3.7.20
Symlink: false
Active Dependencies:
Library Dependencies:
erts-6.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/erts-6.3
Symlink: false
Active Dependencies:
Library Dependencies:
et-1.5: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/et-1.5
Symlink: false
Active Dependencies:
stdlib,
kernel,
Library Dependencies:
eunit-2.2.9: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/eunit-2.2.9
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
gs-1.5.16: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/gs-1.5.16
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
hipe-3.11.2: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/hipe-3.11.2
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
ic-4.3.6: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/ic-4.3.6
Symlink: false
Active Dependencies:
stdlib,
kernel,
Library Dependencies:
inets-5.10.4: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/inets-5.10.4
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
jinterface-1.5.12: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/jinterface-1.5.12
Symlink: false
Active Dependencies:
Library Dependencies:
kernel-3.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/kernel-3.1
Symlink: false
Active Dependencies:
Library Dependencies:
megaco-3.17.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/megaco-3.17.3
Symlink: false
Active Dependencies:
stdlib,
kernel,
Library Dependencies:
mnesia-4.12.4: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/mnesia-4.12.4
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
observer-2.0.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/observer-2.0.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
odbc-2.10.22: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/odbc-2.10.22
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
orber-3.7.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/orber-3.7.1
Symlink: false
Active Dependencies:
stdlib,
kernel,
mnesia,
Library Dependencies:
os_mon-2.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/os_mon-2.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
sasl,
Library Dependencies:
ose-1.0.2: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/ose-1.0.2
Symlink: false
Active Dependencies:
stdlib,
kernel,
Library Dependencies:
otp_mibs-1.0.10: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/otp_mibs-1.0.10
Symlink: false
Active Dependencies:
kernel,
stdlib,
snmp,
Library Dependencies:
parsetools-2.0.12: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/parsetools-2.0.12
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
percept-0.8.10: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/percept-0.8.10
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
public_key-0.22.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/public_key-0.22.1
Symlink: false
Active Dependencies:
asn1,
crypto,
kernel,
stdlib,
Library Dependencies:
reltool-0.6.6: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/reltool-0.6.6
Symlink: false
Active Dependencies:
stdlib,
kernel,
Library Dependencies:
runtime_tools-1.8.15: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/runtime_tools-1.8.15
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
sasl-2.4.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/sasl-2.4.1
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
snmp-5.1.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/snmp-5.1.1
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
ssh-3.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/ssh-3.1
Symlink: false
Active Dependencies:
kernel,
stdlib,
crypto,
public_key,
Library Dependencies:
ssl-5.3.8: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/ssl-5.3.8
Symlink: false
Active Dependencies:
crypto,
public_key,
kernel,
stdlib,
Library Dependencies:
stdlib-2.3: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/stdlib-2.3
Symlink: false
Active Dependencies:
kernel,
Library Dependencies:
syntax_tools-1.6.17: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/syntax_tools-1.6.17
Symlink: false
Active Dependencies:
stdlib,
Library Dependencies:
test_server-3.7.2: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/test_server-3.7.2
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
tools-2.7.1: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/tools-2.7.1
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
typer-0.9.8: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/typer-0.9.8
Symlink: false
Active Dependencies:
compiler,
dialyzer,
hipe,
kernel,
stdlib,
Library Dependencies:
webtool-0.8.10: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/webtool-0.8.10
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
wx-1.3.2: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/wx-1.3.2
Symlink: false
Active Dependencies:
stdlib,
kernel,
Library Dependencies:
xmerl-1.3.7: /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang/lib/xmerl-1.3.7
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
compiler-5.0.3: ~/exrm-test/rel/test/lib/compiler-5.0.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
crypto-3.4.2: ~/exrm-test/rel/test/lib/crypto-3.4.2
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
elixir-1.0.3: ~/exrm-test/rel/test/lib/elixir-1.0.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
crypto,
compiler,
syntax_tools,
Library Dependencies:
iex-1.0.3: ~/exrm-test/rel/test/lib/iex-1.0.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
kernel-3.1: ~/exrm-test/rel/test/lib/kernel-3.1
Symlink: false
Active Dependencies:
Library Dependencies:
logger-1.0.3: ~/exrm-test/rel/test/lib/logger-1.0.3
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
sasl-2.4.1: ~/exrm-test/rel/test/lib/sasl-2.4.1
Symlink: false
Active Dependencies:
kernel,
stdlib,
Library Dependencies:
stdlib-2.3: ~/exrm-test/rel/test/lib/stdlib-2.3
Symlink: false
Active Dependencies:
kernel,
Library Dependencies:
syntax_tools-1.6.17: ~/exrm-test/rel/test/lib/syntax_tools-1.6.17
Symlink: false
Active Dependencies:
stdlib,
Library Dependencies:
test-0.0.1: ~/exrm-test/rel/test/lib/test-0.0.1
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
logger,
timex,
Library Dependencies:
timex-0.13.0: ~/exrm-test/rel/test/lib/timex-0.13.0
Symlink: false
Active Dependencies:
kernel,
stdlib,
elixir,
Library Dependencies:
===> Provider successfully run: app_discover
===> Running provider rel_discover
===> Resolving available OTP Releases from directories:
~/exrm-test/_build/dev
/usr/local/homebrew/Cellar/elixir/1.0.3/lib
~/exrm-test/rel
===> Resolved the following OTP Releases from the system:
release: test-0.0.1
erts-6.3, realized = false
goals:
===> Provider successfully run: rel_discover
===> Running provider resolve_release
===> Solving Release test-0.0.2
===> Resolved test-0.0.2
===> release: test-0.0.2
erts-6.3, realized = true
goals:
sasl,
iex,
elixir,
{"test",{{0,0,2},{[],[]}}},
applications:
{kernel,"3.1"},
{stdlib,"2.3"},
{crypto,"3.4.2"},
{compiler,"5.0.3"},
{syntax_tools,"1.6.17"},
{elixir,"1.0.3"},
{logger,"1.0.3"},
{timex,"0.13.2"},
{test,"0.0.2"},
{iex,"1.0.3"},
{sasl,"2.4.1"},
===> Provider successfully run: resolve_release
===> Running provider overlay
===> Provider successfully run: overlay
===> Running provider release
===> Including Erts from /usr/local/homebrew/Cellar/erlang/17.4/lib/erlang
===> release successfully created!
===> Provider successfully run: release
===> Running provider tar
===> tarball ~/exrm-test/rel/test/test-0.0.2.tar.gz successfully created!
===> Provider successfully run: tar
===> Running provider relup
===> systools:make_relup("~/exrm-test/rel/test/releases/0.0.2/test", "~/exrm-test/rel/test/releases/0.0.1/test", "~/exrm-test/rel/test/releases/0.0.1/test", [{outdir,
"~/exrm-test/rel/test"},
{path,
["~/exrm-test/rel/test/lib/kernel-3.1/ebin",
"~/exrm-test/rel/test/lib/stdlib-2.3/ebin",
"~/exrm-test/rel/test/lib/crypto-3.4.2/ebin",
"~/exrm-test/rel/test/lib/compiler-5.0.3/ebin",
"~/exrm-test/rel/test/lib/syntax_tools-1.6.17/ebin",
"~/exrm-test/rel/test/lib/elixir-1.0.3/ebin",
"~/exrm-test/rel/test/lib/logger-1.0.3/ebin",
"~/exrm-test/rel/test/lib/timex-0.13.2/ebin",
"~/exrm-test/rel/test/lib/test-0.0.2/ebin",
"~/exrm-test/rel/test/lib/iex-1.0.3/ebin",
"~/exrm-test/rel/test/lib/sasl-2.4.1/ebin",
"~/exrm-test/rel/test/lib/sasl-2.4.1/ebin",
"~/exrm-test/rel/test/lib/iex-1.0.3/ebin",
"~/exrm-test/rel/test/lib/test-0.0.1/ebin",
"~/exrm-test/rel/test/lib/timex-0.13.0/ebin",
"~/exrm-test/rel/test/lib/logger-1.0.3/ebin",
"~/exrm-test/rel/test/lib/elixir-1.0.3/ebin",
"~/exrm-test/rel/test/lib/syntax_tools-1.6.17/ebin",
"~/exrm-test/rel/test/lib/compiler-5.0.3/ebin",
"~/exrm-test/rel/test/lib/crypto-3.4.2/ebin",
"~/exrm-test/rel/test/lib/stdlib-2.3/ebin",
"~/exrm-test/rel/test/lib/kernel-3.1/ebin"]},
silent])===> Provider (relup) failed with: {error,
{rlx_prv_relup,
{relup_script_generation_error,
systools_relup,
{file_problem,
{"~/exrm-test/rel/test/lib/timex-0.13.2/ebin/timex.appup",
{error,
{open,
"~/exrm-test/rel/test/lib/timex-0.13.2/ebin/timex.appup",
enoent}}}}}}}
Errors generating relup
Could not open file ~/exrm-test/rel/test/lib/timex-0.13.2/ebin/timex.appup
==> Failed to build release. Please fix any errors and try again.
I updated to timex version 0.13.2 (as described in the steps to reproduce) should I upgrade to a more recent timex version? I'm using elixir version 1.0.3 atm.
This is now fixed in master, and soon to be on hex as 0.19.0.
:+1: thanks!
When you upgrade a dependency (one which is included within the list of applications) and want to generate a new release it fails because .. I don't know ;) Might be related to #66 though, I had also sometimes the error described there.
Erlang version 17.3, Elixir version 1.0.2
Steps to reproduce:
1) create a new elixir project
mix new test
2)cd test/
3) editmix.exs
and add a dependency (i chosetimex
because that's where it happened in my real project as well) so thatmix.exs
looks like this:5) run
mix deps.get
6) runmix release --verbosity=verbose
:7) edit
mix.exs
and update the version and the timex dependency so that it looks like this:8) run
mix deps.update timex
9) runmix release --verbosity=verbose
again