| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\ \ \ \
| | | | |
| | | | | |
Unicode support in all the places
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is done through 3 main change groups:
- replacing `~s` by `~ts` in format strings, so that strings that
contain unicode are properly printed rather than crashing
- adding the `unicode` argument to all function of the `re` module to
ensure transformations on strings containing unicode data are valid
instead of crashing (see issue #1302)
- replacing `ec_cnv:to_binary/1` and `ec_cnv:to_list/1` with matching
functions in `rebar_utils`.
The last point has been done, rather than modifying and updating erlware
commons, because binary and list conversions can be a contentious
subject. For example, if what is being handled is actually bytes from a
given binary stream, then forcing a byte-oriented interpretation of the
data can corrupt it. As such, it does not appear safe to modify erlware
commons' conversion functions since it may not be safe for all its
users.
Instead, rebar3 reimplements a subset of them (only converting
atoms and chardata, ignoring numbers) with the explicit purpose of
handling unicode string data.
Tests were left as unchanged as possible. This may impact the ability to
run rebar3's own suites in a unicode path, but respects a principle of
least change for such a large patch.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Upgrade certifi & ssl_verify_fun dependencies
|
| | | | | | |
|
| | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Get more up-to-date root certs. This was blocked for a while because
certifi wouldn't build on windows, but this is now fixed, with minimal
changes to the use case -- only a small change in the bootstrap script
is required.
The new certifi lib is also a few megabytes lighter than before, which
is good for rebar3.
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
Ignore IntelliJ IDEA file
|
| | | | | |
|
|\ \ \ \ \
| |_|/ / /
|/| | | |
| | | | |
| | | | | |
g-andrade/fix/avoid_crashing_xref_upon_stripped_modules
Avoid xref crash upon undefined functions in modules without debug_info
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
modules
This can be reproduced by running xref analysis against a rebar3
plugin project which doesn't list rebar3 as an explicit dependency
-- calls to certain bundled modules ('rebar_state', 'rebar_api',
'ec_cnv', ...) will result in a failed pattern match as these modules
appear to have had their abstract code stripped.
|
|\ \ \ \
| | | | |
| | | | | |
Fix cleanup_code_path for xref compile hook
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Edoc config error
|
| | | | | |
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | | |
be a little smarter when generating edocs; loof for some
sort of doc path and then replace w/e was there with the
updated doc paths
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
upgrade relx
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
add compile_only option to ct provider
|
| | | | | |
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
recompile only if new option effects code generation
|
| | | | | |
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
drop warnings for `export_all` in test profile
|
|/ / / / |
|
|\ \ \ \
| |/ / /
|/| | | |
update meck for otp20
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Bare compiler: support multiple paths wildcards.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Similarly to PATH env variable, this allows to pass paths to bare
compiler which do not fit nicely into a single wildcard structure.
Colon (":") is used as separator.
This provides more flexibility when rebar is run in offline/hermetic
environment, e.g. #958 and #1281.
|
|\ \ \
| | | |
| | | | |
Rebar3 shell supports booting applications with type 'none'
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
I noticed this when trying to include entop in a release. Entop uses
cecho which takes over the terminal, so you do not want it loaded or
started. According to http://erlang.org/doc/man/rel.html, when you
specify a Type of none it should not load or start, but the code for
it's modules should be loaded. This patch ensures the code is not
loaded or started, but doesn't do anything with the code paths.
At the very least this allows me to start a shell in the case where
I have an application of type none, and the application is neither
loaded nor started.
|
|\ \ \
| | | |
| | | | |
Prevent xref crashes with undef behaviours
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a given behaviour module does not exist, rebar3 brutally crashes.
This patch makes it so instead, there is a warning output menitoning the
missing behaviour, and this one is omitted from the unused function
calls check. This means that unused calls will instead be shown for the
module implementing a non-existing behaviour, as if no behaviour were
declared in the first place.
|
|\ \ \
| |/ /
|/| | |
the new added PATH value should be in the first position, in case the…
|
|/ /
| |
| |
| | |
other same name cmd
|
|\ \
| | |
| | | |
Fix xref compile hook on deps
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If xref analysis is being run by a dependency during its compilation
phase, the xref provider will try to add that deps' parents to the check
job while the ebin/ directories for them do not exist. This causes a
crash.
This patch makes it so directories are only added if they are existing,
preventing failure on any compile hook for dependencies and allowing
successful compilation as a best effort.
|
|\ \
| | |
| | | |
reset hooks under profiles for application opts
|
| | | |
|
|\ \ \
| |/ /
|/| | |
Avoid reversing relx overlays.
|
|/ /
| |
| |
| |
| | |
This mostly moves a lists:reverse/1 which ensures that profile overlays
are run first but keeps the order of overlays otherwise.
|
| | |
|
| |
| |
| |
| |
| |
| | |
Includes Relx fixes
Signed-off-by: Fred Hebert <mononcqc@ferd.ca>
|
|\ \
| | |
| | | |
upgrade relx to 3.23.0
|
|/ / |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Patches:
- Try to start epmd when distribution fails
- Allow non-default profile deps upgrade
- Switch default license in templates to Apache 2.0, and hook it up in
the .app file
- Fix git SHA comparisons for dep update
- Let relx know about rebar-specified erl_opts
- Use rm_rf instead of ec_file:delete, fixing some deps-related issues
on Windows
- Handle internal CT failures
- Fix profile merging of erl_first_files options
- Fix CT output in skipped test cases and failing end of function
hooks
- Officially drop R15 support, since its SSL libs can no longer talk
to hex.pm
- REBAR_COLOR supports all ec_cmd_log intensity options, allowing the
none value to disable all colors without dropping termcap support
- Bump relx to 3.22.4
The one new feature supported here is for the interactive shell:
- Support commands in the shell such as r3:Command(),
r3:Command("--args=as a string"), or r3:Command(Namespace, "--args=as a
string"), instead of just r3:do(Command).
|
|\ \
| | |
| | | |
Try to start epmd when distribution fails
|
|/ /
| |
| |
| |
| | |
We do it by calling os:cmd on a named shell so that the automated daemon
rules work for rebar3 as well.
|
|\ \
| | |
| | | |
Allow profile deps upgrade
|