pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/rebar3 rebar3: Update to 3.18.0



details:   https://anonhg.NetBSD.org/pkgsrc/rev/76c68d004001
branches:  trunk
changeset: 377920:76c68d004001
user:      nikita <nikita%pkgsrc.org@localhost>
date:      Mon Apr 25 12:25:58 2022 +0000

description:
rebar3: Update to 3.18.0

Changelog taken from https://github.com/erlang/rebar3/releases


3.18.0 Latest

    add support for otp24 optional applications
    use git command in non interactive mode
    git_resource: ignore stderr in get_patch_count when calling git rev-list
    fix NIF compilation on Apple M1.
    fix issue for duplicates options of 'parserfile' in 'yrl_opts'
    support for --all argument in unlock
    support for --all argument in upgrade
    support for --all argument in upgrade plugin
    add --relnames option to allow selectively building of multiple releases
    bump bbmustache to support unicode attributes
    proper respect of GLOBAL_CACHE_DIR
    bump certifi to 2.8.0
    don't crash on printing non-ASCII characters
    upgrade providers to 1.9.0


3.17.0

This release is mostly bug fixes, and repairs prior broken builds of
elixir dependencies, but also includes a couple of useful features.

New Features:
    Add escript_incl_priv so escriptize priv dir inclusion works with
    _checkouts and profiles
    Added SSL cacert patch to support Corporate MITM Proxies

Bug fixes:
    rebar3 release to honour the ignore-xref attribute
    Bump relx to 4.5.0
        use copied erts dir when tar'ing even when the user sets the erts
        improve error message when a symlink creation fails
        State extended with a filter method to filter xref_warnings
        Do not require logger
        Add default time warp mode of multi
        optionally allow static node name prefixes
        use random:uniform instead of os:pid when constructing node name in nodetool
        Fix eval command to use ERL_DIST_PORT, consistency with rpc command
        Fix bin script arguments to erlexec
    Give compiler hints when handling run-time deps in parse_transforms
    Make rebar_file_utils:system_tmpdir/1 take TMPDIR env var into account on *nix
    Handle abstract code starting with a non-file attribute
    Prefer erlang app to mix project
    Drop bootstrap URI handling functions warnings
    Prevent crashes on recursive src_dir definitions in deps
    Fix ssl check hostname options for wildcard certificate
    {xref_ignores} now properly works on module,
    Normalize Dialyzer PLT paths
    Fix optimistic registry update of plugins being upgraded

3.13.3

Security release. See
https://ferd.ca/you-ve-got-to-upgrade-rebar3.html

3.16.1

Major security fix around TLS validation. See
https://ferd.ca/you-ve-got-to-upgrade-rebar3.html

Also:
    local upgrade: extract vsn of rebar3 from downloaded escript

3.15.2

Major security fix around TLS validation. See
https://ferd.ca/you-ve-got-to-upgrade-rebar3.html

3.16.0

This release drops multiple OTP versions as officially
supported. We're aligning rebar3 development with the OTP team's
compatibility guarantees, as some deprecations from OTP-21 were
removed in OTP-24 and we just could not maintain compatible code
bases. We're using the breakage opportunity to change just how much we
support to something more sustainable.

The release also contains extra fixes that should prove useful.

    Only support 3 newest OTP versions
    add support to configure application resource naming
    Support ERL_LIBS libraries in escript building
    Fix CLI arg order in makefile template
    Increase OTP 24 readiness + move to OTP 20 min.
    Bump erlware_commons and certifi
    Treat applications and included_applications the same way when builing Dialyzer PLTs
    Strip CLI args from provider hooks
    Fix plugins upgrade for non-tuple specification

3.15.1

    Fix bad compiler path nesting

3.15.0

    Make dialyzer output file format configurable
    Fix DAG resolving for recursive directories
    Add EUnit support for sys_config options
    Catch and report missing escript dependency
    Relay unexpected relx return values
    Bump Relx and cth_readable
        relx_resolve:to_app raise error with .app file pathname
        Concurrent Builds - xref interactions refinement
        Add richer return values for nodetool rpc
        add exports of RELEASE_NAME, RELEASE_VERSION and RELEASE_PROG to script
    add an option to select the application to build an escript for
    Do not discard parameters --system_libs and --include-erts
    Have "rebar3 plugins upgrade" work without specifying plugin name
    rebar3 shell: implement various modes to print "booted" message
    More path juggling fixes in the compiler
    Fix OTP24 complaining about underscored variables
    Handle OTP-24 function location in xref
    pass no_spawn_compiler_process to compile:file/2

diffstat:

 devel/rebar3/Makefile                |  55 ++++++++++++++++++++++++-----------
 devel/rebar3/distinfo                |  48 +++++++++++++++----------------
 devel/rebar3/patches/patch-bootstrap |  29 ++++++++++++++++++
 3 files changed, 89 insertions(+), 43 deletions(-)

diffs (188 lines):

diff -r ff91155208a2 -r 76c68d004001 devel/rebar3/Makefile
--- a/devel/rebar3/Makefile     Mon Apr 25 11:40:10 2022 +0000
+++ b/devel/rebar3/Makefile     Mon Apr 25 12:25:58 2022 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.5 2021/03/19 16:42:47 triaxx Exp $
+# $NetBSD: Makefile,v 1.6 2022/04/25 12:25:58 nikita Exp $
 
-DISTNAME=      rebar3-3.14.4
+DISTNAME=      rebar3-3.18.0
 CATEGORIES=    devel
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=erlang/}
 DIST_SUBDIR=   rebar3
@@ -12,20 +12,26 @@
 
 USE_TOOLS+=    tar
 
-REBAR_DEPS=    erlware_commons-1.3.1 \
-               ssl_verify_fun-1.1.6 \
-               certifi-2.5.2 \
-               parse_trans-3.3.0 \
-               providers-1.8.1 \
-               getopt-1.0.1 \
-               bbmustache-1.10.0 \
-               relx-4.2.0 \
-               cf-0.3.1 \
-               cth_readable-1.4.9 \
-               eunit_formatters-0.5.0
+REBAR_DEPS+=   bbmustache-1.12.2
+REBAR_DEPS+=   certifi-2.8.0
+REBAR_DEPS+=   cf-0.3.1
+REBAR_DEPS+=   cth_readable-1.5.1
+REBAR_DEPS+=   erlware_commons-1.5.0
+REBAR_DEPS+=   eunit_formatters-0.5.0
+REBAR_DEPS+=   getopt-1.0.1
+REBAR_DEPS+=   providers-1.9.0
+REBAR_DEPS+=   relx-4.6.0
+REBAR_DEPS+=   ssl_verify_fun-1.1.6
+
+MAKE_ENV+=     DEBUG=1
+MAKE_ENV+=     HOME=${WRKDIR}
+MAKE_ENV+=     REBAR_NO_VERIFY_REPO_ORIGIN=1
 
 DISTFILES=     ${DEFAULT_DISTFILES}
 
+# rebar3 bootstrap in offline mode
+# is an open ticket: https://github.com/erlang/rebar3/issues/1281
+# until then, we have to bootstrap it this way.
 .for dep in ${REBAR_DEPS}
 DISTFILES+=            ${dep}.tar
 SITES.${dep}.tar=      https://repo.hex.pm/tarballs/
@@ -41,15 +47,23 @@
 INSTALLATION_DIRS+=    bin ${PKGMANDIR}/man1 share/examples/rebar3
 
 post-extract:
-       ${MKDIR} -p ${WRKSRC}/_build/bootstrap/lib
 .for dep in ${REBAR_DEPS}
-       cd ${WRKSRC}/_build/default/lib/${dep:C/-.*//} && \
-               ${TAR} -xzf contents.tar.gz
-       ${LN} -sf ../../default/lib/${dep:C/-.*//} \
-               ${WRKSRC}/_build/bootstrap/lib/${dep:C/-.*//}
+       ${MKDIR} ${WRKSRC}/_build/default/lib/${dep:C/-.*//}
+       ${TAR} xOf ${DISTDIR}/${DIST_SUBDIR}/${dep}.tar contents.tar.gz | ${TAR} xfz - -C ${WRKSRC}/_build/default/lib/${dep:C/-.*//}
+       ${MKDIR} ${WRKSRC}/_checkouts/${dep:C/-.*//}
+       ${TAR} xOf ${DISTDIR}/${DIST_SUBDIR}/${dep}.tar contents.tar.gz | ${TAR} xfz - -C ${WRKSRC}/_checkouts/${dep:C/-.*//}
+.endfor
+       ${MKDIR} ${WRKSRC}/_build/bootstrap/lib
+       ${MKDIR} ${WRKSRC}/_build/bootstrap/plugins
+.for dep in ${REBAR_DEPS}
+       ${LN} -sf ${WRKSRC}/_build/default/lib/${dep:C/-.*//} ${WRKSRC}/_build/bootstrap/lib/
+.endfor
+.for dep in ${REBAR_DEPS}
+       ${LN} -sf ${WRKSRC}/_build/default/plugins/${dep:C/-.*//} ${WRKSRC}/_build/bootstrap/plugins/
 .endfor
 
 do-build:
+       ${RM} ${WRKSRC}/rebar.lock
        cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./bootstrap
 
 do-install:
@@ -58,5 +72,10 @@
        ${INSTALL_DATA} ${WRKSRC}/rebar.config.sample \
                ${DESTDIR}${PREFIX}/share/examples/rebar3
 
+do-test:
+       cd ${WRKSRC} && \
+               ${SETENV} ./rebar3 escriptize && \
+               ${SETENV} ./rebar3 ct
+
 .include "../../lang/erlang/buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"
diff -r ff91155208a2 -r 76c68d004001 devel/rebar3/distinfo
--- a/devel/rebar3/distinfo     Mon Apr 25 11:40:10 2022 +0000
+++ b/devel/rebar3/distinfo     Mon Apr 25 12:25:58 2022 +0000
@@ -1,38 +1,36 @@
-$NetBSD: distinfo,v 1.5 2021/10/26 10:19:21 nia Exp $
+$NetBSD: distinfo,v 1.6 2022/04/25 12:25:58 nikita Exp $
 
-BLAKE2s (rebar3/bbmustache-1.10.0.tar) = 1b1ec4c2fd2054c08d59771d00edbe2541cca6f7b2e1db06d3b997ca07673d72
-SHA512 (rebar3/bbmustache-1.10.0.tar) = 0916728d8a51a50704a34598103280e7bc0d02019f408d833343573966630228705d2de231c6544b03c33bb904f5a30799c12004320bb8ac2c4a73100aca1a06
-Size (rebar3/bbmustache-1.10.0.tar) = 17408 bytes
-BLAKE2s (rebar3/certifi-2.5.2.tar) = c57bbe38598d14146f3b7416cd03381e02dbfff687423f8a7d75b515877a34a0
-SHA512 (rebar3/certifi-2.5.2.tar) = 2b43d00de59422cec45f41025f853bd1cbd025ae516fbdc2977d989fd9d66dbbf81919f4c84018bffb4e2beadfd939da6e123198a6d1f2e61e726402ea42b06a
-Size (rebar3/certifi-2.5.2.tar) = 161280 bytes
+BLAKE2s (rebar3/bbmustache-1.12.2.tar) = 32ead8f53518aa6dc2d16f4136f6aa7dba0edcbc2d3066c59cd81bf033929812
+SHA512 (rebar3/bbmustache-1.12.2.tar) = aecba4e354bdd5e09756cf9cd8c1e55af832f0e121c4c8000b71bc9a46485a4cdd86d13aae4f1838588be228745003a324956fdd440fb4c48b987cc58a9e238c
+Size (rebar3/bbmustache-1.12.2.tar) = 17920 bytes
+BLAKE2s (rebar3/certifi-2.8.0.tar) = 71b7970ab6cf2ed86f02529a31d5056639a75eb7b65584a78f4c539e1058896c
+SHA512 (rebar3/certifi-2.8.0.tar) = 1c484afdf7664eb92df90251bb451208c08e76179e5654a2b069388a72889aac75e941ef626eaeec7fe0a74fdbacf359aeab5330eebd43e333ad513998e46e76
+Size (rebar3/certifi-2.8.0.tar) = 153088 bytes
 BLAKE2s (rebar3/cf-0.3.1.tar) = f001900e6df6a33021788f72e44656eefebd8a76b6b3281a53ff469aea4569c8
 SHA512 (rebar3/cf-0.3.1.tar) = 232fa9cd175e54599c035b087a6d44c9afb4135a5509b7498ebce8becec333cd670d0e06a3bf9e30d54c7c609ad2aecd42fc40e667cf95e68b7dc228e1fd85d8
 Size (rebar3/cf-0.3.1.tar) = 10240 bytes
-BLAKE2s (rebar3/cth_readable-1.4.9.tar) = 2d0478c6ff56c114766f23af1671e623b951ed4c7f525f522b25ba8104fdc1e0
-SHA512 (rebar3/cth_readable-1.4.9.tar) = 7d5c530df799ef83c7089f41e4a7180fc4ae28d0a66cdb56d2b84f1b190d51f6c13fd0213aad3d97ed2530535fa660871f8fa364d3af8edfcbbad96f6cbb4517
-Size (rebar3/cth_readable-1.4.9.tar) = 18944 bytes
-BLAKE2s (rebar3/erlware_commons-1.3.1.tar) = 5bb58df841ff63e48c24146d81ce1c24e7ba1906fd565c0efaffce34f65eb505
-SHA512 (rebar3/erlware_commons-1.3.1.tar) = 1f9e7617b88ec7cae6e83da1a60a2d22ce3325b6425cd284c3ec3dd0de49a26220b868ea60a937758dd65d7ea137819e314504a98ced99fc2617056ada4d2fa0
-Size (rebar3/erlware_commons-1.3.1.tar) = 53248 bytes
+BLAKE2s (rebar3/cth_readable-1.5.1.tar) = 6417eae68a7dbcaf43be90dd5c18d69f1e03fedcc55d4425f3890d8a79045b65
+SHA512 (rebar3/cth_readable-1.5.1.tar) = 8abd3f7255634e29584559e0d4b811e2af3ed047a10f32a7e2b899abd02f0ab3cef117d3ef6c9db38d34fed6285a1f47356b647350c9b636f011445d3914da7f
+Size (rebar3/cth_readable-1.5.1.tar) = 19968 bytes
+BLAKE2s (rebar3/erlware_commons-1.5.0.tar) = 856abbf4189bcc407927b6e8a021b972fb968e555695770547c95ffe0d98bdc0
+SHA512 (rebar3/erlware_commons-1.5.0.tar) = 215072e79da4edf51ac6889721c0d4cefbee60fd5e2a803b39acdd2735b5e91f2df690b94f14a9814f63a4cd3e4762e8d7f87f6debb3e659e542a6dda5159739
+Size (rebar3/erlware_commons-1.5.0.tar) = 53760 bytes
 BLAKE2s (rebar3/eunit_formatters-0.5.0.tar) = a950f935b72499a53aaccdc269ea91465c95e81b81e2fd90073eb401d1c1896a
 SHA512 (rebar3/eunit_formatters-0.5.0.tar) = e8692ff35f979dfaf99ccac58014429d300a71ff76f2ce945814a0d4d9431821f04f988dc0271271858a37e6903a73b4dd9ae3abf215333f3135fa883ec07022
 Size (rebar3/eunit_formatters-0.5.0.tar) = 14848 bytes
 BLAKE2s (rebar3/getopt-1.0.1.tar) = c569953af866ab03369962937ebcd66a79d3f5b7d29e8e7514e2f93e50e6dda5
 SHA512 (rebar3/getopt-1.0.1.tar) = 859642dc26c42414474fa8af8a32fed827b0773ac6d6eb51ec19c291672408e71619ad2bb0c7f08d84ff591b33a655a7e0b6241b94372e9cc816a648ee6cdaf6
 Size (rebar3/getopt-1.0.1.tar) = 19456 bytes
-BLAKE2s (rebar3/parse_trans-3.3.0.tar) = 7c87e5a2ce68a0c4ec0622c6904f7c5dce26349c476a2c7fcd02e8066f284c08
-SHA512 (rebar3/parse_trans-3.3.0.tar) = a633bc87458d9eeb335f95c4f23d4a7b70b4bef2b8a17d1fb9500f6dcf77dbed2d767b926453aa9082efd098b6ba83c06a76c839323eb54906956caf67a5ad4f
-Size (rebar3/parse_trans-3.3.0.tar) = 35840 bytes
-BLAKE2s (rebar3/providers-1.8.1.tar) = 18661c5685a10b530365abb2d684d7140be7c407dfe7f467222835d91bf9af19
-SHA512 (rebar3/providers-1.8.1.tar) = b1db18264c98717849ed521f8eb1ef0f112ea5e602bcd529fd97996120640c7567097174180673ba166d4c408496ce63c351ce70a3f385ed1ae7d1e444e2587a
-Size (rebar3/providers-1.8.1.tar) = 14336 bytes
-BLAKE2s (rebar3/rebar3-3.14.4.tar.gz) = 27d7822685558ebc3bff64df34df567e37cfe19e79523aea8d13f946816ed317
-SHA512 (rebar3/rebar3-3.14.4.tar.gz) = 8b46c9fee5bfde714f0ae1fa72c9faf5bf46cadcfa0bfe506344ab03505b0640941fd70e78fd07f23e955a2bcee465a4002e5fb34e6b9d49de01d49b140302a9
-Size (rebar3/rebar3-3.14.4.tar.gz) = 429167 bytes
-BLAKE2s (rebar3/relx-4.2.0.tar) = b597ef6ad7ba78d187b11a0841f7d211b62e10a85784513424b40aee3b1fcdd8
-SHA512 (rebar3/relx-4.2.0.tar) = 9470e53e819601cc6de9fc2f7d910fe143e301ae3dff3dfb234816603590f304266cbc4d386504b763f6dac5ddd557ab30bed68a08a70dda951c0c66839d1582
-Size (rebar3/relx-4.2.0.tar) = 73728 bytes
+BLAKE2s (rebar3/providers-1.9.0.tar) = 2e8cf8313cd61b9216a425bc6ae8992ece5bb7ef8f9eb66e935aee613b163785
+SHA512 (rebar3/providers-1.9.0.tar) = 7227855164124425b89996b0295a786e36bbc2fadee9949d0b3d9ad518b3be9204650e5fa9e027e72cc4c2d2e8b968bddfc2015ceaf4cc00d865a35132defe76
+Size (rebar3/providers-1.9.0.tar) = 14848 bytes
+BLAKE2s (rebar3/rebar3-3.18.0.tar.gz) = 33c4028a20f32cff85db69561cf11d7c0f1f3d258419e8af1c6a7d3cf14ec9fc
+SHA512 (rebar3/rebar3-3.18.0.tar.gz) = 4fcaa1867fba7462df0b9a64fa442f4a887e83530635fdcd19f4b5dcee14ace3e7403c27f35e5e6055fb6bf89c98a91a3ff1e2036ab6e67e3de028f91233e4ed
+Size (rebar3/rebar3-3.18.0.tar.gz) = 436403 bytes
+BLAKE2s (rebar3/relx-4.6.0.tar) = bd0f7939b6ee9a115b39d3086eaf84156cbdafd8a04ac14a2ad980850686c2f2
+SHA512 (rebar3/relx-4.6.0.tar) = a0ae0447815e78b7f296b721be1430897305bb21b8b183191ed1bb0cc33ee1060f5b1ee2452d86ff7a782f29450896e8b01e90f00847c7e4bad62f3c5a786678
+Size (rebar3/relx-4.6.0.tar) = 75776 bytes
 BLAKE2s (rebar3/ssl_verify_fun-1.1.6.tar) = 000cb4e6d18aa9d0695306cb6b5de24a2cb559d3a59b28445d25be22ee9a296e
 SHA512 (rebar3/ssl_verify_fun-1.1.6.tar) = 65980368629357ec16b37fd8ea1d42f7dbd7fa86318b329bec756e868b70eb4c93cf1bfe3dd34e1b6c011086ba32e11981d61e18fdad78564b77664e4d155a47
 Size (rebar3/ssl_verify_fun-1.1.6.tar) = 14848 bytes
+SHA1 (patch-bootstrap) = 6535627766985cfe5127afe1a0e668b096f372fc
diff -r ff91155208a2 -r 76c68d004001 devel/rebar3/patches/patch-bootstrap
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/rebar3/patches/patch-bootstrap      Mon Apr 25 12:25:58 2022 +0000
@@ -0,0 +1,29 @@
+$NetBSD: patch-bootstrap,v 1.1 2022/04/25 12:25:58 nikita Exp $
+
+patch bootstrap to work within pkgsrc context.
+
+--- bootstrap.orig     2022-04-05 20:03:11.466752120 +0200
++++ bootstrap  2022-04-05 20:03:53.175125878 +0200
+@@ -13,18 +13,18 @@
+ 
+     %% Clear directories for builds since bootstrapping may require
+     %% a changed structure from an older one
+-    rm_rf("_build/bootstrap"),
++    %% rm_rf("_build/bootstrap"),
+     %% When recompiling rebar3 itself, the path swaps and cleaning
+     %% removes the modules in _build/bootstrap, but the VM still
+     %% manages to discover those in _build/prod from previous builds and
+     %% cause weird failures when compilers get modified between releases.
+-    rm_rf("_build/prod"),
++    %% rm_rf("_build/prod"),
+     %% The same pattern happens with default/ as well, particularly when
+     %% developing new things.
+     %% Keep other deps in <profile>/lib for build environments like Nix
+     %% where internet access is disabled that deps are not downloadable.
+-    rm_rf("_build/default/lib/rebar"),
+-    rm_rf("_build/test/lib/rebar"),
++    %% rm_rf("_build/default/lib/rebar"),
++    %% rm_rf("_build/test/lib/rebar"),
+ 
+     filelib:ensure_dir("_build/bootstrap/lib/rebar/ebin/"),
+ 



Home | Main Index | Thread Index | Old Index