summaryrefslogtreecommitdiff
path: root/src/rebar_prv_app_discovery.erl
Commit message (Collapse)AuthorAgeFilesLines
* OTP-21 readiness, Full Unicode supportFred Hebert2017-11-161-1/+1
| | | | | | | | | | | | This replaces all deprecated function usage by alternative ones based on a version switch enacted at compile time, preventing all warnings. This will likely introduce some possible runtime errors in using a Rebar3 compiled on OTP-20 or OTP-21 back in versions 19 and earlier, but we can't really work around that. A bunch of dependencies have been updated to support OTP-21 without warnings as well.
* Unicode support in all the placesFred Hebert2017-08-061-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* install project app plugins after discovering them not beforeTristan Sloughter2016-01-101-1/+2
|
* improve error messages for packages by checking its existance before fetchingTristan Sloughter2015-08-231-0/+4
|
* 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-3/+8
|
* Manage syntax error in app.src files.Umberto Corponi2015-05-061-0/+8
| | | | | - Solve "Uncaught error" failure in case of syntax error in app.src file. - Print helpful information on the location of the syntax error.
* use PRV_ERROR for formattable errorsFred Hebert2015-03-161-1/+2
| | | | Also expose it in rebar_api
* change name of config for where project apps lib to project_apps_dirTristan Sloughter2014-12-041-1/+1
|
* catch error on multiplpe app files in an app dirTristan Sloughter2014-11-161-4/+11
|
* move back to using format_error/1Tristan Sloughter2014-11-091-4/+4
|
* add format_error/2 provider callback to providersTristan Sloughter2014-10-221-1/+6
|
* move providers to separate appTristan Sloughter2014-10-031-9/+9
|
* return error messages from providersTristan Sloughter2014-09-271-1/+1
|
* reworking of help display and parse of commandsTristan Sloughter2014-09-171-1/+1
|
* only build unbuilt depsTristan Sloughter2014-08-181-1/+1
|
* start of moving to splitting state from config parsingTristan Sloughter2014-08-171-0/+36