From debbugs-submit-bounces@debbugs.gnu.org Mon Aug 02 14:15:16 2021 Received: (at submit) by debbugs.gnu.org; 2 Aug 2021 18:15:16 +0000 Received: from localhost ([127.0.0.1]:39241 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mAcT0-0000DS-Sp for submit@debbugs.gnu.org; Mon, 02 Aug 2021 14:15:16 -0400 Received: from lists.gnu.org ([209.51.188.17]:49998) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mAcSz-0000D9-3K for submit@debbugs.gnu.org; Mon, 02 Aug 2021 14:15:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:47264) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mAcSy-0005yO-TF for guix-patches@gnu.org; Mon, 02 Aug 2021 14:15:08 -0400 Received: from latitanza.investici.org ([82.94.249.234]:49901) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mAcSv-00076i-Vw for guix-patches@gnu.org; Mon, 02 Aug 2021 14:15:08 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GdmPW4sQ4zGp5p; Mon, 2 Aug 2021 18:14:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1627928095; bh=OHM9J0BT0qTyXYI5JxCPTBngwfB8ixPOizW0TuAj+fo=; h=From:To:Cc:Subject:Date:From; b=WhsbILntB54/o6Xk4/GOAlYVllrQh8sOee5tzNFmyfyGsImLe2U++vbJ9k5ChYkqf rqgBo6shCxLTMhGNA0NP5egd48CVGO6FhLkynf53ZKXt1J4Ed7ZUzA4XhpMevq0zng oVKlnW5LTBO6AXQuJBtbzqvDzGsO2sVFk1z1qXMU= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GdmPW43xCzGp4Q; Mon, 2 Aug 2021 18:14:55 +0000 (UTC) From: Giacomo Leidi To: guix-patches@gnu.org Subject: [PATCH 1/7] gnu: Add python-flake8-debugger. Date: Mon, 2 Aug 2021 20:13:53 +0200 Message-Id: <20210802181359.10695-1-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.32.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=82.94.249.234; envelope-from=goodoldpaul@autistici.org; helo=latitanza.investici.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.1 (/) * gnu/packages/python-xyz.scm (python-flake8-debugger): New variable. --- gnu/packages/python-xyz.scm | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 61db9febb8..fc7f08a720 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -64,7 +64,7 @@ ;;; Copyright © 2019, 2020 Alex Griffin ;;; Copyright © 2019, 2020 Pierre Langlois ;;; Copyright © 2019 Jacob MacDonald -;;; Copyright © 2019, 2020 Giacomo Leidi +;;; Copyright © 2019, 2020, 2021 Giacomo Leidi ;;; Copyright © 2019 Wiktor Żelazny ;;; Copyright © 2019, 2020, 2021 Tanguy Le Carrour ;;; Copyright © 2019, 2021 Mădălin Ionel Patrașcu @@ -9456,6 +9456,31 @@ These should be used in preference to using a backslash for line continuation. @end quotation") (license license:asl2.0))) +(define-public python-flake8-debugger + (package + (name "python-flake8-debugger") + (version "4.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "flake8-debugger" version)) + (sha256 + (base32 + "19pdfx0rb3k1i8hxfjdi8ndd6ayzq8g1041j8zdq256vyxvwfgg4")))) + (build-system python-build-system) + (propagated-inputs + `(("python-flake8" ,python-flake8) + ("python-pycodestyle" ,python-pycodestyle) + ("python-six" ,python-six))) + (home-page + "https://github.com/jbkahn/flake8-debugger") + (synopsis + "Ipdb/pdb statement checker plugin for flake8") + (description + "This package provides the @code{flake8-debugger} Python module, +an ipdb/pdb statement checker plugin for flake8.") + (license license:expat))) + (define-public python-flake8-implicit-str-concat (package (name "python-flake8-implicit-str-concat") base-commit: f12a35cfa22092a7e3157c94abfef8335f86ac1c -- 2.32.0 From debbugs-submit-bounces@debbugs.gnu.org Mon Aug 02 17:13:37 2021 Received: (at control) by debbugs.gnu.org; 2 Aug 2021 21:13:37 +0000 Received: from localhost ([127.0.0.1]:39377 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mAfFh-0004X4-IS for submit@debbugs.gnu.org; Mon, 02 Aug 2021 17:13:37 -0400 Received: from out2.migadu.com ([188.165.223.204]:60035) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mAfFe-0004Wt-1Z for control@debbugs.gnu.org; Mon, 02 Aug 2021 17:13:36 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mgsn.dev; s=key1; t=1627938812; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=GTuNxkZvpOytGCQVcYbHVl+AqIrojF0vMau1X2IB7JI=; b=LHAsz8V3kjTKRUtdRRG4XDuGfi4shg4p7eOiC8Fk6pKQD3Thl38QJrcsx/a7uHIcipU8PO ea9mGCuU4acTTnIL0v++dEuxVaYQWbiij2CUheuKsG/k2FA7rj4xpnzHVfyYgS41OQ6Geb WKEBy3GsSWsMe6cIFMsA3/VBzS4si/8= From: Sarah Morgensen To: control@debbugs.gnu.org Subject: control message for bug #49281 Date: Mon, 02 Aug 2021 14:13:29 -0700 Message-ID: <86pmuv4kjq.fsf@mgsn.dev> MIME-Version: 1.0 Content-Type: text/plain X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: iskarian@mgsn.dev X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) merge 49281 49835 49834 49833 49832 49831 49830 49829 thanks From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 04 14:26:26 2021 Received: (at 49834) by debbugs.gnu.org; 4 Aug 2021 18:26:27 +0000 Received: from localhost ([127.0.0.1]:45101 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBLax-0004cB-6e for submit@debbugs.gnu.org; Wed, 04 Aug 2021 14:26:26 -0400 Received: from out0.migadu.com ([94.23.1.103]:64293) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBLap-0004br-IN; Wed, 04 Aug 2021 14:26:16 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mgsn.dev; s=key1; t=1628101573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=iuFlzcF7D14Qz9cxk4r5LgCVOYfS22j/GrXSr3oEi98=; b=YxDxMt7bJcg5DZveesEX6lDYYBvsWXjCvhaP1MnOv/UISMnel8Hwk+/Z3uQ0delG5c/NyD AdZwyysg9ouVMQow9NM8Z6V5hjsOFbv9e6CNJKw/La91sk8x7l7s0c0iwdD8Kn7KTQuaQG EnXmDMar71C7+YLCu2W/y2nJTvo3OQ4= From: Sarah Morgensen To: Giacomo Leidi Subject: Re: bug#49281: Add dynaconf References: <20210802181359.10695-1-goodoldpaul@autistici.org> Date: Wed, 04 Aug 2021 11:26:11 -0700 In-Reply-To: <20210802181359.10695-1-goodoldpaul@autistici.org> (Giacomo Leidi's message of "Mon, 2 Aug 2021 20:13:53 +0200") Message-ID: <86im0l2hj0.fsf@mgsn.dev> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: iskarian@mgsn.dev X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 49834 Cc: 49834@debbugs.gnu.org, 49281@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hello again, Thanks for the revised patches. I was able to apply your patches and take a closer look, and found a few more things. (Sorry!) Giacomo Leidi writes: > * gnu/packages/python-xyz.scm (python-flake8-debugger): New variable. > --- > gnu/packages/python-xyz.scm | 27 ++++++++++++++++++++++++++- > 1 file changed, 26 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm > index 61db9febb8..fc7f08a720 100644 > --- a/gnu/packages/python-xyz.scm > +++ b/gnu/packages/python-xyz.scm > @@ -64,7 +64,7 @@ > ;;; Copyright =C2=A9 2019, 2020 Alex Griffin > ;;; Copyright =C2=A9 2019, 2020 Pierre Langlois > ;;; Copyright =C2=A9 2019 Jacob MacDonald > -;;; Copyright =C2=A9 2019, 2020 Giacomo Leidi > +;;; Copyright =C2=A9 2019, 2020, 2021 Giacomo Leidi > ;;; Copyright =C2=A9 2019 Wiktor =C5=BBelazny > ;;; Copyright =C2=A9 2019, 2020, 2021 Tanguy Le Carrour > ;;; Copyright =C2=A9 2019, 2021 M=C4=83d=C4=83lin Ionel Patra=C8=99cu > @@ -9456,6 +9456,31 @@ These should be used in preference to using a back= slash for line continuation. > @end quotation") > (license license:asl2.0))) >=20=20 > +(define-public python-flake8-debugger > + (package > + (name "python-flake8-debugger") > + (version "4.0.0") > + (source > + (origin > + (method url-fetch) > + (uri (pypi-uri "flake8-debugger" version)) > + (sha256 > + (base32 > + "19pdfx0rb3k1i8hxfjdi8ndd6ayzq8g1041j8zdq256vyxvwfgg4")))) > + (build-system python-build-system) > + (propagated-inputs > + `(("python-flake8" ,python-flake8) > + ("python-pycodestyle" ,python-pycodestyle) > + ("python-six" ,python-six))) > + (home-page > + "https://github.com/jbkahn/flake8-debugger") > + (synopsis > + "Ipdb/pdb statement checker plugin for flake8") > + (description > + "This package provides the @code{flake8-debugger} Python module, > +an ipdb/pdb statement checker plugin for flake8.") > + (license license:expat))) The pyproject.toml file does say this is "MIT" (=3D expat), but there's no actual license file in the project. I don't think this is sufficient as far as Guix is concerned (perhaps an actual maintainer/committer can comment?) > + > (define-public python-flake8-implicit-str-concat > (package > (name "python-flake8-implicit-str-concat") > > base-commit: f12a35cfa22092a7e3157c94abfef8335f86ac1c -- Sarah From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 07:51:10 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 11:51:11 +0000 Received: from localhost ([127.0.0.1]:53484 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwra-0006mQ-WC for submit@debbugs.gnu.org; Sat, 28 Aug 2021 07:51:10 -0400 Received: from latitanza.investici.org ([82.94.249.234]:34897) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwrV-0006lx-8R for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 07:51:05 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GxZfW5ByfzGp9t; Sat, 28 Aug 2021 11:50:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630151459; bh=9AKJJKXUDKuucGmMuf0tF44cDGDBb28kRjHV4GUDf+0=; h=From:To:Cc:References:Subject:Date:In-Reply-To:From; b=humkcC6i4AI0M4uWfdM5DdisDJNc+a77RbWoYkkvh9q0LoD/Whw13WtKfl7ALI4vk dA7OAkJ+BqRMZ4uao3PGOQImwmLLbEob0ia3YmHYy2hslYc7Pblb4vkD14NtXByM8N 2L9UVMA4cN9o19NTD1Gi32Yc7c2NRLi8FC7pY6CI= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GxZfW4XyGzGp9G; Sat, 28 Aug 2021 11:50:59 +0000 (UTC) From: paul To: Sarah Morgensen References: <20210802181359.10695-1-goodoldpaul@autistici.org> <86im0l2hj0.fsf@mgsn.dev> Subject: Re: bug#49834: Add dynaconf Message-ID: <6567b413-0db6-5d1e-e979-7807fa086a99@autistici.org> Date: Sat, 28 Aug 2021 13:50:58 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.12.0 MIME-Version: 1.0 In-Reply-To: <86im0l2hj0.fsf@mgsn.dev> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Content-Language: en-US X-Spam-Score: -0.1 (/) X-Debbugs-Envelope-To: 49834 Cc: 49834@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.1 (-) Dear Sarah, thank you for your review! On 8/4/21 8:26 PM, Sarah Morgensen wrote: > The pyproject.toml file does say this is "MIT" (=3D expat), but there's= no > actual license file in the project. I don't think this is sufficient as= > far as Guix is concerned (perhaps an actual maintainer/committer can > comment?) First of all I opened an upstream PR [0] to add an actual LICENSE file:=20 I hope that, given its simplicity, it will get merged soon. I'm no expert about this but I tried building dynaconf without=20 flake8-debugger and it seems to work flawlessly. The dependency was put=20 there by the python importer, probably the developers have it in some=20 dev-dependencies declaration needed to commit well-formatted code in the = repository. Since flake8-debugger doesn't appear to be required for the inclusion of = dynaconf maybe we can exclude it for this time and whenever the PR will=20 be merged I'll open another Guix issue to add it. What do you think about this approach? (I'm attaching an updated=20 patch-set without flake8-debugger and rebased on current master). Thank you for your time :) Giacomo [0]: https://github.com/JBKahn/flake8-debugger/pull/29/files From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 07:52:12 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 11:52:13 +0000 Received: from localhost ([127.0.0.1]:53493 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsb-0006oH-0d for submit@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:12 -0400 Received: from latitanza.investici.org ([82.94.249.234]:25095) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsV-0006ns-3M for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:07 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GxZgk4YjszGp9q; Sat, 28 Aug 2021 11:52:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630151522; bh=dXzEd4RerhhZGBUBwDDT2/O3yxj5HNwnBT+fexXKAz8=; h=From:To:Cc:Subject:Date:From; b=HaA9/pQ7S1SgL3yWifT4uL059IloNdr7Q5EKkQWSFYAb1fVw/kaDMRnzu9mt1PUSI 7NbPni3X+zUFXSolQwTPhYzIMb8JHpPhYgpUugWQmYT8uYOucTJC3YLy0yH4p7Hwji 3/6da/1k+qDuZVZAS7HAOeRlrDJXJvAeCOPFOa5k= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GxZgk3ZgLzGp9V; Sat, 28 Aug 2021 11:52:02 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 1/6] gnu: Add python-flake8-todo. Date: Sat, 28 Aug 2021 13:51:48 +0200 Message-Id: <20210828115153.5607-1-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-flake8-todo): New variable. --- gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 59eb473857..1e4f04337d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -9613,6 +9613,29 @@ lints.") (description "This package provides a Flake8 lint for quotes.") (license license:expat))) +(define-public python-flake8-todo + (package + (name "python-flake8-todo") + (version "0.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "flake8-todo" version)) + (sha256 + (base32 + "05arm0sch3r8248035kilmf01z0mxsahw6vpbbz0d343zy8m8k3f")))) + (build-system python-build-system) + (propagated-inputs + `(("python-pycodestyle" ,python-pycodestyle))) + (home-page + "https://github.com/schlamar/flake8-todo") + (synopsis + "TODO notes checker, plugin for flake8") + (description + "This package provides the @code{flake8-todo} Python module, a +TODO notes checker plugin for flake8.") + (license license:expat))) + (define-public python-autoflake (package (name "python-autoflake") base-commit: 75a3413b4e5c1f7443eb944a36ff364f4c4085f4 -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 07:52:16 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 11:52:16 +0000 Received: from localhost ([127.0.0.1]:53495 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwse-0006oc-U3 for submit@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:16 -0400 Received: from latitanza.investici.org ([82.94.249.234]:40215) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsV-0006nt-91 for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:07 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GxZgk5pyzzGp9t; Sat, 28 Aug 2021 11:52:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630151522; bh=vlirCSDLxK9k97zi0hp0GbOXsdTtoYJqGeWy6arUjrk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=AEpolrPloGSXrbwtlMwd64uGJrIDDyNmaDavnp8MQkKCR+ZLqGhzCK/oFUmmbjEeT gwdSXjxQ18td92ZyXJB2CgObkg5UyhND0PYGX1baCT4eJ9oDVZLmNifVWznULePrxp jow+B6BlejVdV2EzUzez4tBSMqNIP3pu2Up+hSDo= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GxZgk4tr6zGp9V; Sat, 28 Aug 2021 11:52:02 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 2/6] gnu: Add python-dotenv. Date: Sat, 28 Aug 2021 13:51:49 +0200 Message-Id: <20210828115153.5607-2-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210828115153.5607-1-goodoldpaul@autistici.org> References: <20210828115153.5607-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-dotenv): New variable. --- gnu/packages/python-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1e4f04337d..128ac9fd0c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26297,3 +26297,30 @@ a (rather superficial) static analysis, and constructs a directed graph of the objects in the combined source, and how they define or use each other. The graph can be output for rendering by GraphViz or yEd.") (license license:gpl2))) + +(define-public python-dotenv + (package + (name "python-dotenv") + (version "0.18.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0b90br3f48ykx5ddfpx2zmsh4vmdqw6s812drcy9pn2q3qyarypg")))) + (build-system python-build-system) + (propagated-inputs + `(("python-click" ,python-click-5))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("python-sh" ,python-sh))) + (home-page + "https://github.com/theskumar/python-dotenv") + (synopsis + "Setup environment variables according to .env files") + (description + "This package provides the @code{python-dotenv} Python module to +read key-value pairs from a .env file and set them as environment variables") + (license license:bsd-3))) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 07:52:20 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 11:52:20 +0000 Received: from localhost ([127.0.0.1]:53497 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsi-0006os-RL for submit@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:20 -0400 Received: from latitanza.investici.org ([82.94.249.234]:60967) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsV-0006nv-Es for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:11 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GxZgk72sVzGp9v; Sat, 28 Aug 2021 11:52:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630151522; bh=GNiHLvVp4I6i2Yi/t3W8vXD0epzzpCIYXbKTMbQ+wOM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Oy9N6YjSUfrXwm5xAYnPuuf1/7ptpw7Mx+NQLhBDPp4Jv03Kp2GY5MUODh7uE3xbk 5DgfR9V2bNXVu9B4op3Gw6nMK/k2lSL8+RiLLTUnR2Mqe5Q3JTZCWRZJSewcC/3HJX k1yyZu0GGAUQdU4q6OW0eBcCo5rq5fCC566+OtPw= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GxZgk69ClzGp9V; Sat, 28 Aug 2021 11:52:02 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 3/6] gnu: Add python-box. Date: Sat, 28 Aug 2021 13:51:50 +0200 Message-Id: <20210828115153.5607-3-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210828115153.5607-1-goodoldpaul@autistici.org> References: <20210828115153.5607-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-box): New variable. --- gnu/packages/python-xyz.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 128ac9fd0c..caff26e872 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26324,3 +26324,27 @@ graph can be output for rendering by GraphViz or yEd.") "This package provides the @code{python-dotenv} Python module to read key-value pairs from a .env file and set them as environment variables") (license license:bsd-3))) + +(define-public python-box + (package + (name "python-box") + (version "5.3.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-box" version)) + (sha256 + (base32 + "0jhrdif57khx2hsw1q6a9x42knwcvq8ijgqyq1jmll6y6ifyzm2f")))) + (build-system python-build-system) + (propagated-inputs + `(("python-msgpack" ,python-msgpack) + ("python-ruamel.yaml" ,python-ruamel.yaml) + ("python-toml" ,python-toml))) + (home-page "https://github.com/cdgriffith/Box") + (synopsis + "Advanced Python dictionaries with dot notation access") + (description + "This package provides the @code{python-box} Python module. +It implements advanced Python dictionaries with dot notation access.") + (license license:expat))) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 07:52:24 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 11:52:24 +0000 Received: from localhost ([127.0.0.1]:53499 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsm-0006p4-PG for submit@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:24 -0400 Received: from latitanza.investici.org ([82.94.249.234]:36139) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsV-0006nx-PS for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:11 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GxZgl2D6kzGpB8; Sat, 28 Aug 2021 11:52:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630151523; bh=0YoedlfjLGORfm/rQs3RCeHsR3wgjvRwmWPaPxBepYw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OJ6OtdKlFeX2N5uVD3OGTVVtjm/huNfqptjCcf3EQTo9xryVSc4mJlEaW7TPu100v AeTOegs6pmMXDL8VrCGroApAVT+6s9hFx0fS1b75Vdg37eMz7afx4bOqPt+OBMY/+/ fcZl05Oc7iinwNOgDo2a8XOqsjuVuee8Z4KiGqdU= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GxZgl1T0fzGp9V; Sat, 28 Aug 2021 11:52:03 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 5/6] gnu: Add python-pep8-naming. Date: Sat, 28 Aug 2021 13:51:52 +0200 Message-Id: <20210828115153.5607-5-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210828115153.5607-1-goodoldpaul@autistici.org> References: <20210828115153.5607-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-pep8-naming): New variable. --- gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index caff26e872..afece6381c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -9242,6 +9242,31 @@ PEP 8.") (define-public python2-pep8 (package-with-python2 python-pep8)) +(define-public python-pep8-naming + (package + (name "python-pep8-naming") + (version "0.12.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pep8-naming" version)) + (sha256 + (base32 + "04kyh9hkpyc8jzj16d1kkk29b5n8miqdvbs0zm035n1z5z5kx6hz")))) + (build-system python-build-system) + (propagated-inputs + `(("python-flake8" ,python-flake8) + ("python-flake8-polyfill" + ,python-flake8-polyfill))) + (home-page + "https://github.com/PyCQA/pep8-naming") + (synopsis + "Check PEP-8 naming conventions") + (description + "This package provides the @code{pep8-naming} Python module, a +plugin for flake8 to check PEP-8 naming conventions.") + (license license:expat))) + (define-public python-pep517 (package (inherit python-pep517-bootstrap) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 07:52:28 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 11:52:28 +0000 Received: from localhost ([127.0.0.1]:53501 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsq-0006pG-NH for submit@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:28 -0400 Received: from latitanza.investici.org ([82.94.249.234]:52569) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsV-0006nw-KX for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:11 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GxZgl16rbzGpB6; Sat, 28 Aug 2021 11:52:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630151523; bh=VGwZ7hB/HNJ9FFIDAaNkrF5kOtkkcq1pHopgoITWx3Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PT/iu5SITCwZieAeTkDN/e2Zugln+tGN5qr2yIV8kXp4xJ9Q482H+n9r8Ja2E25iE HCuVnXG3OgVDBeFmFFvLt4YQIK4GZL9TdzVy6fIZBCYP9uGmyl4x2Uh4W+kisEKGk7 2NqvPJgSDPNKTBsDYONTAsrek6Enq85NiDFoahRY= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GxZgl0HfZzGp9V; Sat, 28 Aug 2021 11:52:03 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 4/6] gnu: python-ruamel.yaml: Update to 0.17.10. Date: Sat, 28 Aug 2021 13:51:51 +0200 Message-Id: <20210828115153.5607-4-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210828115153.5607-1-goodoldpaul@autistici.org> References: <20210828115153.5607-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/serialization.scm (python-ruamel.yaml): Update to 0.17.10. --- gnu/packages/serialization.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 0e79b7c89c..b8f21f2375 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -532,14 +532,14 @@ it is comparable to protobuf.") (define-public python-ruamel.yaml (package (name "python-ruamel.yaml") - (version "0.15.83") + (version "0.17.10") (source (origin (method url-fetch) (uri (pypi-uri "ruamel.yaml" version)) (sha256 (base32 - "0p4i8ad28cbbbjja8b9274irkhnphhvhap3aym6yb8xfp1d72kpw")))) + "0rwywdbmy20qwssccydpaval2vq36825fiva374zf3vavkbchsqh")))) (build-system python-build-system) (native-inputs `(("python-pytest" ,python-pytest))) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 07:52:34 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 11:52:34 +0000 Received: from localhost ([127.0.0.1]:53503 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsu-0006pQ-Kc for submit@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:34 -0400 Received: from latitanza.investici.org ([82.94.249.234]:23579) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mJwsZ-0006o7-GL for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 07:52:14 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GxZgl3Lm5zGpB9; Sat, 28 Aug 2021 11:52:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630151523; bh=i94wboKQ3J7ERBlQAwjvVdp6MGLlpZRzYNqV+9cXlcQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=uU5cZXMbIMymuzz+lfsl+yaCGEDhWpCVjryAzXxxSMmTXMF8eNN4k6RpM8WCxFQn+ 5GPxA6Anz2rhyyshuKc3CNBne5rfvaeVuzTebSsYcpKI1x+3WEOzF958veOOhQh66N hujUVV2xoRdy7yUvUFfGPp8rsmaXb2jeKebW/ZBA= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GxZgl2ZnxzGp9V; Sat, 28 Aug 2021 11:52:03 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 6/6] gnu: Add dynaconf. Date: Sat, 28 Aug 2021 13:51:53 +0200 Message-Id: <20210828115153.5607-6-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210828115153.5607-1-goodoldpaul@autistici.org> References: <20210828115153.5607-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-colorama-0.4.1): New variable, (python-dotenv-0.13.0): New variable, (dynaconf): New variable. * gnu/packages/patches/dynaconf-Unvendor-dependencies.patch: New file. * local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + .../dynaconf-Unvendor-dependencies.patch | 161 ++++++++++++++++++ gnu/packages/python-xyz.scm | 94 ++++++++++ 3 files changed, 256 insertions(+) create mode 100644 gnu/packages/patches/dynaconf-Unvendor-dependencies.patch diff --git a/gnu/local.mk b/gnu/local.mk index 14cd1cc6ad..4e76b5a2b3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -977,6 +977,7 @@ dist_patch_DATA = \ %D%/packages/patches/dstat-skip-devices-without-io.patch \ %D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ + %D%/packages/patches/dynaconf-Unvendor-dependencies.patch \ %D%/packages/patches/ecl-16-format-directive-limit.patch \ %D%/packages/patches/ecl-16-ignore-stderr-write-error.patch \ %D%/packages/patches/ecl-16-libffi.patch \ diff --git a/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch b/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch new file mode 100644 index 0000000000..10b72d5013 --- /dev/null +++ b/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch @@ -0,0 +1,161 @@ +From 3558d30d5916ec6a91ce0d9c201ff9a11675d7c3 Mon Sep 17 00:00:00 2001 +From: Giacomo Leidi +Date: Mon, 2 Aug 2021 19:29:07 +0200 +Subject: [PATCH] Use system dependencies. + +Box was not unvendored because it appears to be heavily patched. +--- + dynaconf/cli.py | 4 ++-- + dynaconf/default_settings.py | 2 +- + dynaconf/loaders/env_loader.py | 2 +- + dynaconf/loaders/toml_loader.py | 2 +- + dynaconf/loaders/yaml_loader.py | 2 +- + dynaconf/utils/parse_conf.py | 2 +- + dynaconf/vendor/box/converters.py | 6 +++--- + dynaconf/vendor/box/from_file.py | 6 +++--- + tests/test_cli.py | 2 +- + 9 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/dynaconf/cli.py b/dynaconf/cli.py +index 2d45e52..7df767a 100644 +--- a/dynaconf/cli.py ++++ b/dynaconf/cli.py +@@ -20,8 +20,8 @@ from dynaconf.utils.functional import empty + from dynaconf.utils.parse_conf import parse_conf_data + from dynaconf.validator import ValidationError + from dynaconf.validator import Validator +-from dynaconf.vendor import click +-from dynaconf.vendor import toml ++import click ++import toml + + + CWD = Path.cwd() +diff --git a/dynaconf/default_settings.py b/dynaconf/default_settings.py +index 66601b0..9605fc5 100644 +--- a/dynaconf/default_settings.py ++++ b/dynaconf/default_settings.py +@@ -8,7 +8,7 @@ from dynaconf.utils import upperfy + from dynaconf.utils import warn_deprecations + from dynaconf.utils.files import find_file + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import load_dotenv ++from dotenv import load_dotenv + + + def try_renamed(key, value, older_key, current_key): +diff --git a/dynaconf/loaders/env_loader.py b/dynaconf/loaders/env_loader.py +index e7b13bd..b034c8a 100644 +--- a/dynaconf/loaders/env_loader.py ++++ b/dynaconf/loaders/env_loader.py +@@ -2,7 +2,7 @@ from os import environ + + from dynaconf.utils import upperfy + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import cli as dotenv_cli ++from dotenv import cli as dotenv_cli + + + IDENTIFIER = "env" +diff --git a/dynaconf/loaders/toml_loader.py b/dynaconf/loaders/toml_loader.py +index 07b973f..d81d675 100644 +--- a/dynaconf/loaders/toml_loader.py ++++ b/dynaconf/loaders/toml_loader.py +@@ -5,7 +5,7 @@ from dynaconf import default_settings + from dynaconf.constants import TOML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge +-from dynaconf.vendor import toml ++import toml + + + def load(obj, env=None, silent=True, key=None, filename=None): +diff --git a/dynaconf/loaders/yaml_loader.py b/dynaconf/loaders/yaml_loader.py +index 33c6532..3ef419a 100644 +--- a/dynaconf/loaders/yaml_loader.py ++++ b/dynaconf/loaders/yaml_loader.py +@@ -7,7 +7,7 @@ from dynaconf.constants import YAML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge + from dynaconf.utils.parse_conf import try_to_encode +-from dynaconf.vendor.ruamel import yaml ++from ruamel import yaml + + # Add support for Dynaconf Lazy values to YAML dumper + yaml.SafeDumper.yaml_representers[ +diff --git a/dynaconf/utils/parse_conf.py b/dynaconf/utils/parse_conf.py +index 5fc8234..6509c35 100644 +--- a/dynaconf/utils/parse_conf.py ++++ b/dynaconf/utils/parse_conf.py +@@ -8,7 +8,7 @@ from dynaconf.utils import extract_json_objects + from dynaconf.utils import multi_replace + from dynaconf.utils import recursively_evaluate_lazy_format + from dynaconf.utils.boxing import DynaBox +-from dynaconf.vendor import toml ++import toml + + try: + from jinja2 import Environment +diff --git a/dynaconf/vendor/box/converters.py b/dynaconf/vendor/box/converters.py +index 93cdcfb..c81877a 100644 +--- a/dynaconf/vendor/box/converters.py ++++ b/dynaconf/vendor/box/converters.py +@@ -7,9 +7,9 @@ _B='utf-8' + _A=None + import csv,json,sys,warnings + from pathlib import Path +-import dynaconf.vendor.ruamel.yaml as yaml ++import ruamel.yaml as yaml + from dynaconf.vendor.box.exceptions import BoxError,BoxWarning +-from dynaconf.vendor import toml ++import toml + BOX_PARAMETERS='default_box','default_box_attr','conversion_box','frozen_box','camel_killer_box','box_safe_prefix','box_duplicates','ordered_box','default_box_none_transform','box_dots','modify_tuples_box','box_intact_types','box_recast' + def _exists(filename,create=_E): + A=filename;B=Path(A) +@@ -75,4 +75,4 @@ def _to_csv(box_list,filename,encoding=_B,errors=_C): + for G in A:D.writerow(G) + def _from_csv(filename,encoding=_B,errors=_C): + A=filename;_exists(A) +- with open(A,_G,encoding=encoding,errors=errors,newline='')as B:C=csv.DictReader(B);return[A for A in C] +\ No newline at end of file ++ with open(A,_G,encoding=encoding,errors=errors,newline='')as B:C=csv.DictReader(B);return[A for A in C] +diff --git a/dynaconf/vendor/box/from_file.py b/dynaconf/vendor/box/from_file.py +index daa1137..4a2739d 100644 +--- a/dynaconf/vendor/box/from_file.py ++++ b/dynaconf/vendor/box/from_file.py +@@ -1,8 +1,8 @@ + from json import JSONDecodeError + from pathlib import Path + from typing import Union +-from dynaconf.vendor.toml import TomlDecodeError +-from dynaconf.vendor.ruamel.yaml import YAMLError ++from toml import TomlDecodeError ++from ruamel.yaml import YAMLError + from .exceptions import BoxError + from .box import Box + from .box_list import BoxList +@@ -31,4 +31,4 @@ def box_from_file(file,file_type=None,encoding='utf-8',errors='strict'): + if A.suffix in('.json','.jsn'):return _to_json(B) + if A.suffix in('.yaml','.yml'):return _to_yaml(B) + if A.suffix in('.tml','.toml'):return _to_toml(B) +- raise BoxError(f"Could not determine file type based off extension, please provide file_type") +\ No newline at end of file ++ raise BoxError(f"Could not determine file type based off extension, please provide file_type") +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 9338851..726b009 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -11,7 +11,7 @@ from dynaconf.cli import main + from dynaconf.cli import read_file_in_root_directory + from dynaconf.cli import WRITERS + from dynaconf.utils.files import read_file +-from dynaconf.vendor.click.testing import CliRunner ++from click.testing import CliRunner + + + runner = CliRunner() + +base-commit: 952e713353356ea701196ac5ad204c72fd097e58 +-- +2.32.0 + diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index afece6381c..e938d27444 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -137,6 +137,7 @@ #:use-module (gnu packages crypto) #:use-module (gnu packages databases) #:use-module (gnu packages dbm) + #:use-module (gnu packages django) #:use-module (gnu packages djvu) #:use-module (gnu packages docker) #:use-module (gnu packages enchant) @@ -12448,6 +12449,16 @@ text.") (home-page "https://pypi.org/project/colorama/") (license license:bsd-3))) +(define-public python-colorama-0.4.1 + (package (inherit python-colorama) + (version "0.4.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "colorama" version)) + (sha256 + (base32 "0ba247bx5pc60hcpbf3rjsqk0whilg241i9qdfnlcwij5qgdgvh5")))))) + (define-public python2-colorama (package-with-python2 python-colorama)) @@ -26350,6 +26361,18 @@ graph can be output for rendering by GraphViz or yEd.") read key-value pairs from a .env file and set them as environment variables") (license license:bsd-3))) +(define-public python-dotenv-0.13.0 + (package (inherit python-dotenv) + (name "python-dotenv") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0x5dagmfn31phrbxlwacw3s4w5vibv8fxqc62nqcdvdhjsy0k69v")))))) + (define-public python-box (package (name "python-box") @@ -26373,3 +26396,74 @@ read key-value pairs from a .env file and set them as environment variables") "This package provides the @code{python-box} Python module. It implements advanced Python dictionaries with dot notation access.") (license license:expat))) + +(define-public dynaconf + (package + (name "dynaconf") + (version "3.1.4") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/rochacbruno/dynaconf") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0dafd7hb691g6s3yjfvl5gph5md73n6g9j44kjpbnbbilr5pc85g")) + (patches (search-patches "dynaconf-Unvendor-dependencies.patch")) + (modules '((guix build utils))) + (snippet '(begin + ;; Remove vendored dependencies + (let ((unvendor '("click" "dotenv" "ruamel" "toml"))) + (with-directory-excursion "dynaconf/vendor" + (for-each delete-file-recursively unvendor)) + (with-directory-excursion "dynaconf/vendor_src" + (for-each delete-file-recursively unvendor))))))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? outputs #:allow-other-keys) + (when tests? + (setenv "PATH" + (string-append (assoc-ref outputs "out") "/bin:" + (getenv "PATH"))) + ;; These tests depend on hvac and a + ;; live Vault process. + (delete-file "tests/test_vault.py") + (invoke "make" "test_only")) + #t))))) + (propagated-inputs + `(("python-click" ,python-click) + ("python-dotenv" ,python-dotenv-0.13.0) + ("python-ruamel.yaml" ,python-ruamel.yaml) + ("python-toml" ,python-toml))) + (native-inputs + `(("make" ,gnu-make) + ("python-codecov" ,python-codecov) + ("python-configobj" ,python-configobj) + ("python-colorama" ,python-colorama-0.4.1) + ("python-django" ,python-django) + ("python-flake8" ,python-flake8) + ("python-flake8-print" ,python-flake8-print) + ("python-flake8-todo" ,python-flake8-todo) + ("python-flask" ,python-flask) + ("python-future" ,python-future) + ("python-pep8-naming" ,python-pep8-naming) + ("python-pytest" ,python-pytest-6) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-forked" ,python-pytest-forked) + ("python-pytest-mock" ,python-pytest-mock) + ("python-pytest-xdist" ,python-pytest-xdist) + ("python-radon" ,python-radon))) + (home-page + "https://github.com/rochacbruno/dynaconf") + (synopsis + "The dynamic configurator for your Python Project") + (description + "This package provides @code{dynaconf} the dynamic configurator for +your Python Project.") + (license license:expat))) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 28 18:46:28 2021 Received: (at 49834) by debbugs.gnu.org; 28 Aug 2021 22:46:28 +0000 Received: from localhost ([127.0.0.1]:55152 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mK75n-0002uV-Ph for submit@debbugs.gnu.org; Sat, 28 Aug 2021 18:46:28 -0400 Received: from out1.migadu.com ([91.121.223.63]:36181) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mK75f-0002uG-DK for 49834@debbugs.gnu.org; Sat, 28 Aug 2021 18:46:25 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mgsn.dev; s=key1; t=1630190777; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to; bh=zAOqYFvlK4Z4427FAqL84eIlV8jSbraId75Xvotbzdk=; b=K3bGTcEYENZFKjTQUZZ3Wm/vmwT52nau22FdXZCbxSKhys15OhSwosdoVMyBD3j3KUCK4b 6DeeZ0Wp0fmvA0ceZN2tFno52drMBQulN1f1O14JIVxxriA9BeiDtb4DgELoo4WZXJq/Nv JGDTSNP3D5YRB0+DB8gwAkPQWiiKiuo= From: Sarah Morgensen To: Giacomo Leidi Subject: Re: [bug#49834] Add dynaconf Date: Sat, 28 Aug 2021 15:46:14 -0700 In-Reply-To: paul's message of "Sat, 28 Aug 2021 13:50:58 +0200 (10 hours, 44 minutes, 1 second ago)" Message-ID: <86a6l12nnt.fsf@mgsn.dev> MIME-Version: 1.0 Content-Type: text/plain X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: iskarian@mgsn.dev X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: 49834@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hi Giacomo, Giacomo Leidi writes: > Dear Sarah, > > thank you for your review! Thank you for your continued work on this. I know it can be a long and sometimes discouraging process, and we often end up with abandoned patches because of it. > > On 8/4/21 8:26 PM, Sarah Morgensen wrote: >> The pyproject.toml file does say this is "MIT" (= expat), but there's no >> actual license file in the project. I don't think this is sufficient as >> far as Guix is concerned (perhaps an actual maintainer/committer can >> comment?) > > First of all I opened an upstream PR [0] to add an actual LICENSE file: I hope > that, given its simplicity, it will get merged soon. Fingers crossed! > > I'm no expert about this but I tried building dynaconf without flake8-debugger > and it seems to work flawlessly. The dependency was put there by the python > importer, probably the developers have it in some dev-dependencies declaration > needed to commit well-formatted code in the repository. > > Since flake8-debugger doesn't appear to be required for the inclusion of > dynaconf maybe we can exclude it for this time and whenever the PR will > be merged I'll open another Guix issue to add it. > > What do you think about this approach? (I'm attaching an updated patch-set > without flake8-debugger and rebased on current master). Did you receive my other email? I found that in fact none of the flake8 packages, as well as some others, are actually required. I apologise if merging these bugs caused it to get lost! I'll quote it below. Sarah Morgensen writes: > Hi, > > Thanks again for your work on packaging this! > > Giacomo Leidi writes: > >> * gnu/packages/python-xyz.scm (python-colorama-0.4.1): New variable, >> (python-dotenv-0.13.0): New variable, >> (dynaconf): New variable. > > Packages typically get one commit per package (so this would be three > commits). > >> * gnu/packages/patches/dynaconf-Unvendor-dependencies.patch: New file. > ^ an extra space slipped in here. > >> [...] >> + (arguments >> + `(#:phases >> + (modify-phases %standard-phases >> + (replace 'check >> + (lambda* (#:key tests? outputs #:allow-other-keys) >> + (when tests? >> + (setenv "PATH" >> + (string-append (assoc-ref outputs "out") "/bin:" >> + (getenv "PATH"))) >> + ;; These tests depend on hvac and a >> + ;; live Vault process. >> + (delete-file "tests/test_vault.py") >> + (invoke "make" "test_only")) >> + #t))))) > ^ Nitpick: phases no longer have to end in #t, though it > doesn't hurt. > >> + (propagated-inputs >> + `(("python-click" ,python-click) >> + ("python-dotenv" ,python-dotenv-0.13.0) >> + ("python-ruamel.yaml" ,python-ruamel.yaml) >> + ("python-toml" ,python-toml))) >> + (native-inputs >> + `(("make" ,gnu-make) >> + ("python-codecov" ,python-codecov) >> + ("python-configobj" ,python-configobj) >> + ("python-colorama" ,python-colorama-0.4.1) >> + ("python-django" ,python-django) >> + ("python-flake8" ,python-flake8) >> + ("python-flake8-debugger" ,python-flake8-debugger) >> + ("python-flake8-print" ,python-flake8-print) >> + ("python-flake8-todo" ,python-flake8-todo) >> + ("python-flask" ,python-flask) >> + ("python-future" ,python-future) >> + ("python-pep8-naming" ,python-pep8-naming) >> + ("python-pytest" ,python-pytest-6) >> + ("python-pytest-cov" ,python-pytest-cov) >> + ("python-pytest-forked" ,python-pytest-forked) >> + ("python-pytest-mock" ,python-pytest-mock) >> + ("python-pytest-xdist" ,python-pytest-xdist) >> + ("python-radon" ,python-radon))) > > With the test_only target, I think only a few of these are actually > required. Also, configobj should probably be a propagated input as > dynaconf uses it for ini files. I've attached a patch below. > > Notably, this seems to make python-flake8-debugger, python-flake8-todo, > python-pep8-naming and python-colorama-0.4.1 unneccessary (I think > because they are used for code linting, and the test_only target doesn't > do linting). WDYT? > > (Even if they aren't necessary for packaging dynaconf, you're still > welcome to send them as separate patches :) > >> + (home-page >> + "https://github.com/rochacbruno/dynaconf") > ^ Nitpick: this can go on one line > >> + (synopsis >> + "The dynamic configurator for your Python Project") > ^ Likewise > >> + (description >> + "This package provides @code{dynaconf} the dynamic configurator for >> +your Python Project.") > > Even as someone who has used python a lot before, this doesn't tell me > anything about what dynaconf actually does or why I might want to > install it. (Or, is it even an end-user package?) For examples, take a > look at pretty much any package which has more than two lines in its > description (like, say, python-seaborn). I know writing a good > description can be difficult, but they tend to stick around and read by > lots of people, so getting it right the first time is important! > > > > diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm > index f4f3b7fb3f..58defd9fcc 100644 > --- a/gnu/packages/python-xyz.scm > +++ b/gnu/packages/python-xyz.scm > @@ -26380,28 +26380,16 @@ It implements advanced Python dictionaries with dot notation access.") > #t))))) > (propagated-inputs > `(("python-click" ,python-click) > + ("python-configobj" ,python-configobj) > ("python-dotenv" ,python-dotenv-0.13.0) > ("python-ruamel.yaml" ,python-ruamel.yaml) > ("python-toml" ,python-toml))) > (native-inputs > - `(("make" ,gnu-make) > - ("python-codecov" ,python-codecov) > - ("python-configobj" ,python-configobj) > - ("python-colorama" ,python-colorama-0.4.1) > - ("python-django" ,python-django) > - ("python-flake8" ,python-flake8) > - ("python-flake8-debugger" ,python-flake8-debugger) > - ("python-flake8-print" ,python-flake8-print) > - ("python-flake8-todo" ,python-flake8-todo) > + `(("python-django" ,python-django) > ("python-flask" ,python-flask) > - ("python-future" ,python-future) > - ("python-pep8-naming" ,python-pep8-naming) > ("python-pytest" ,python-pytest-6) > ("python-pytest-cov" ,python-pytest-cov) > - ("python-pytest-forked" ,python-pytest-forked) > - ("python-pytest-mock" ,python-pytest-mock) > - ("python-pytest-xdist" ,python-pytest-xdist) > - ("python-radon" ,python-radon))) > + ("python-pytest-mock" ,python-pytest-mock))) > (home-page > "https://github.com/rochacbruno/dynaconf") > (synopsis > > > -- > Sarah From debbugs-submit-bounces@debbugs.gnu.org Sun Aug 29 18:52:51 2021 Received: (at 49834) by debbugs.gnu.org; 29 Aug 2021 22:52:51 +0000 Received: from localhost ([127.0.0.1]:57678 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTfW-000201-Mg for submit@debbugs.gnu.org; Sun, 29 Aug 2021 18:52:51 -0400 Received: from devianza.investici.org ([198.167.222.108]:27033) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTfT-0001zs-Nc for 49834@debbugs.gnu.org; Sun, 29 Aug 2021 18:52:49 -0400 Received: from mx2.investici.org (unknown [127.0.0.1]) by devianza.investici.org (Postfix) with ESMTP id 4GyTHf20DFz6xXp; Sun, 29 Aug 2021 22:52:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630277566; bh=I6Jn/rrt1r1m1ojVJOQNLkmJvj78R44uSV1yKV2T03Y=; h=To:Cc:References:From:Subject:Date:In-Reply-To:From; b=WLhhofk9m2hdtdJx9KJ1gEu60dcQ/ZoUo005k09h88w9mGRddrEEJEeANXMDHdth6 s2Tmk+LD8SgFmgykJmlfRhUdqTEuuEVIGb4Ga1lm+ZCnvmD7HSb7QasKdYPnnuyMib axHXxpQOgwonEr4NWJGUBCi8EPw9AuPlRwdCmfAk= Received: from [198.167.222.108] (mx2.investici.org [198.167.222.108]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GyTHf10YFz6xXh; Sun, 29 Aug 2021 22:52:46 +0000 (UTC) To: Sarah Morgensen References: <86a6l12nnt.fsf@mgsn.dev> From: paul Subject: Re: [bug#49834] Add dynaconf Message-ID: <81dc5a57-e02a-4701-eb52-37eb378d7fcc@autistici.org> Date: Mon, 30 Aug 2021 00:52:45 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.12.0 MIME-Version: 1.0 In-Reply-To: <86a6l12nnt.fsf@mgsn.dev> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Content-Language: en-US X-Spam-Score: -0.1 (/) X-Debbugs-Envelope-To: 49834 Cc: 49834@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.1 (-) Dear Sarah, On 8/29/21 12:46 AM, Sarah Morgensen wrote: > Did you receive my other email? I found that in fact none of the flake= 8 > packages, as well as some others, are actually required. I apologise i= f > merging these bugs caused it to get lost! I'll quote it below. No I did not :( . Also I'm sorry about the confusion with the multiple=20 bug reports, I forgot to send the patches directly to the ticket address.= > * gnu/packages/python-xyz.scm (python-colorama-0.4.1): New variable, > (python-dotenv-0.13.0): New variable, > (dynaconf): New variable. >> Packages typically get one commit per package (so this would be three >> commits). I wasn't sure about this because right now those exact versions are only = needed by dynaconf. Anyway I divided them in three commits. >>> * gnu/packages/patches/dynaconf-Unvendor-dependencies.patch: New fi= le. >> ^ an extra space slipped in here. >> >>> [...] >>> + (arguments >>> + `(#:phases >>> + (modify-phases %standard-phases >>> + (replace 'check >>> + (lambda* (#:key tests? outputs #:allow-other-keys) >>> + (when tests? >>> + (setenv "PATH" >>> + (string-append (assoc-ref outputs "out") "/bi= n:" >>> + (getenv "PATH"))) >>> + ;; These tests depend on hvac and a >>> + ;; live Vault process. >>> + (delete-file "tests/test_vault.py") >>> + (invoke "make" "test_only")) >>> + #t))))) >> ^ Nitpick: phases no longer have to end in #t, though= it >> doesn't hurt. Thank you I didn't know it, fixed! >> >>> + (propagated-inputs >>> + `(("python-click" ,python-click) >>> + ("python-dotenv" ,python-dotenv-0.13.0) >>> + ("python-ruamel.yaml" ,python-ruamel.yaml) >>> + ("python-toml" ,python-toml))) >>> + (native-inputs >>> + `(("make" ,gnu-make) >>> + ("python-codecov" ,python-codecov) >>> + ("python-configobj" ,python-configobj) >>> + ("python-colorama" ,python-colorama-0.4.1) >>> + ("python-django" ,python-django) >>> + ("python-flake8" ,python-flake8) >>> + ("python-flake8-debugger" ,python-flake8-debugger) >>> + ("python-flake8-print" ,python-flake8-print) >>> + ("python-flake8-todo" ,python-flake8-todo) >>> + ("python-flask" ,python-flask) >>> + ("python-future" ,python-future) >>> + ("python-pep8-naming" ,python-pep8-naming) >>> + ("python-pytest" ,python-pytest-6) >>> + ("python-pytest-cov" ,python-pytest-cov) >>> + ("python-pytest-forked" ,python-pytest-forked) >>> + ("python-pytest-mock" ,python-pytest-mock) >>> + ("python-pytest-xdist" ,python-pytest-xdist) >>> + ("python-radon" ,python-radon))) >> With the test_only target, I think only a few of these are actually >> required. Also, configobj should probably be a propagated input as >> dynaconf uses it for ini files. I've attached a patch below. >> >> Notably, this seems to make python-flake8-debugger, python-flake8-todo= , >> python-pep8-naming and python-colorama-0.4.1 unneccessary (I think >> because they are used for code linting, and the test_only target doesn= 't >> do linting). WDYT? >> >> (Even if they aren't necessary for packaging dynaconf, you're still >> welcome to send them as separate patches :) I definitely agree, I'll send them as separate patches. >> >>> + (home-page >>> + "https://github.com/rochacbruno/dynaconf") >> ^ Nitpick: this can go on one line >> =20 >>> + (synopsis >>> + "The dynamic configurator for your Python Project") >> ^ Likewise >> =20 >>> + (description >>> + "This package provides @code{dynaconf} the dynamic configurator= for >>> +your Python Project.") >> Even as someone who has used python a lot before, this doesn't tell me= >> anything about what dynaconf actually does or why I might want to >> install it. (Or, is it even an end-user package?) For examples, take a= >> look at pretty much any package which has more than two lines in its >> description (like, say, python-seaborn). I know writing a good >> description can be difficult, but they tend to stick around and read b= y >> lots of people, so getting it right the first time is important! I updated the description with the feature set provided on the main=20 website, it should be a little more clear now . I'm sending an updated patchset, thank you for your time :) Giacomo From debbugs-submit-bounces@debbugs.gnu.org Sun Aug 29 18:53:31 2021 Received: (at 49834) by debbugs.gnu.org; 29 Aug 2021 22:53:31 +0000 Received: from localhost ([127.0.0.1]:57686 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTgB-00021l-4V for submit@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:31 -0400 Received: from latitanza.investici.org ([82.94.249.234]:45193) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTg9-00021I-E6 for 49834@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:29 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GyTJS0cSWzGp6Z; Sun, 29 Aug 2021 22:53:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630277608; bh=VGwZ7hB/HNJ9FFIDAaNkrF5kOtkkcq1pHopgoITWx3Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=UUeDJ12whfZHvH8FXAnBQRzvQ7LZDzlm7n1XqQ9qPjA7spET899HQBbl4AzXC1Hi1 2Uqz1mTTjV0kEJzA+NjTxKY3apDJtax8qtriHyLyH0l2FOT+wFEMywKDzqPHocAbMF fAsqVCRGTwBQB82LjSJEiFxtj+zgn5IGttUnfQD0= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GyTJR6vyKzGp6T; Sun, 29 Aug 2021 22:53:27 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 2/4] gnu: python-ruamel.yaml: Update to 0.17.10. Date: Mon, 30 Aug 2021 00:53:15 +0200 Message-Id: <20210829225317.32435-2-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210829225317.32435-1-goodoldpaul@autistici.org> References: <20210829225317.32435-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/serialization.scm (python-ruamel.yaml): Update to 0.17.10. --- gnu/packages/serialization.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 0e79b7c89c..b8f21f2375 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -532,14 +532,14 @@ it is comparable to protobuf.") (define-public python-ruamel.yaml (package (name "python-ruamel.yaml") - (version "0.15.83") + (version "0.17.10") (source (origin (method url-fetch) (uri (pypi-uri "ruamel.yaml" version)) (sha256 (base32 - "0p4i8ad28cbbbjja8b9274irkhnphhvhap3aym6yb8xfp1d72kpw")))) + "0rwywdbmy20qwssccydpaval2vq36825fiva374zf3vavkbchsqh")))) (build-system python-build-system) (native-inputs `(("python-pytest" ,python-pytest))) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Aug 29 18:53:31 2021 Received: (at 49834) by debbugs.gnu.org; 29 Aug 2021 22:53:31 +0000 Received: from localhost ([127.0.0.1]:57688 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTgB-00021n-Aw for submit@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:31 -0400 Received: from latitanza.investici.org ([82.94.249.234]:41919) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTg9-00021H-E8 for 49834@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:30 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GyTJR6ZhVzGp6W; Sun, 29 Aug 2021 22:53:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630277607; bh=lbLepbDyax+c9OY6bvSrTlpP2st2NFK5qVCJ/BQs/j0=; h=From:To:Cc:Subject:Date:From; b=YblW/vtGwp//xJ2Odea5Yav8jPRL9KjjbzbADg7eFGm8CYFRqWlartluTN5woDGbR KBsNMkXyVaO7AiQSl/fgpSSfnuMxVgK8Zht9++1gSCKsHGshX4IKMOj47bVlTWYLYm gs03LRkjmyVjLMlERaCMhnVkqnzODs45eSbYiKlM= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GyTJR5hk8zGp6T; Sun, 29 Aug 2021 22:53:27 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 1/4] gnu: Add python-dotenv. Date: Mon, 30 Aug 2021 00:53:14 +0200 Message-Id: <20210829225317.32435-1-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-dotenv): New variable. --- gnu/packages/python-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1d1a679133..3addb3c46a 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26435,3 +26435,30 @@ a (rather superficial) static analysis, and constructs a directed graph of the objects in the combined source, and how they define or use each other. The graph can be output for rendering by GraphViz or yEd.") (license license:gpl2))) + +(define-public python-dotenv + (package + (name "python-dotenv") + (version "0.19.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0wk1kfzbpqk9swvmpa9z3q170ffqql2id4b2dxrkrq58r4mbq8gm")))) + (build-system python-build-system) + (propagated-inputs + `(("python-click" ,python-click))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("python-sh" ,python-sh))) + (home-page + "https://github.com/theskumar/python-dotenv") + (synopsis + "Setup environment variables according to .env files") + (description + "This package provides the @code{python-dotenv} Python module to +read key-value pairs from a .env file and set them as environment variables") + (license license:bsd-3))) base-commit: 994d8ce394e88b55985241b7b14f6a8459bcf9e8 -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Aug 29 18:53:31 2021 Received: (at 49834) by debbugs.gnu.org; 29 Aug 2021 22:53:31 +0000 Received: from localhost ([127.0.0.1]:57690 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTgB-00021u-It for submit@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:31 -0400 Received: from latitanza.investici.org ([82.94.249.234]:38601) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTg9-00021J-Er for 49834@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:30 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GyTJS1vkFzGp6b; Sun, 29 Aug 2021 22:53:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630277608; bh=MiGKvABcZek9qg8kL1qO9bHyOFH2wiVjob/EzN0TUAA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tjkiyURAiFl9lu96c2jbHN5gCVCvyujQwFfi9Q19oP822acT6Ze1ndTrC/TkdLOdM etcSKPLPbdhiSXEP2r5Qar3lRsOujRy6DvZQfmazeMKgXNkBV3WozA+Dt6in8cDaPx OCPE8Bl79ck5T/zc736/e2MLMnM0BuFndT21f/Nw= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GyTJS151PzGp6T; Sun, 29 Aug 2021 22:53:28 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 3/4] gnu: Add python-dotenv-0.13.0. Date: Mon, 30 Aug 2021 00:53:16 +0200 Message-Id: <20210829225317.32435-3-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210829225317.32435-1-goodoldpaul@autistici.org> References: <20210829225317.32435-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-dotenv-0.13.0): New variable. --- gnu/packages/python-xyz.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3addb3c46a..b98136d992 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26462,3 +26462,15 @@ graph can be output for rendering by GraphViz or yEd.") "This package provides the @code{python-dotenv} Python module to read key-value pairs from a .env file and set them as environment variables") (license license:bsd-3))) + +(define-public python-dotenv-0.13.0 + (package (inherit python-dotenv) + (name "python-dotenv") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0x5dagmfn31phrbxlwacw3s4w5vibv8fxqc62nqcdvdhjsy0k69v")))))) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Sun Aug 29 18:53:45 2021 Received: (at 49834) by debbugs.gnu.org; 29 Aug 2021 22:53:45 +0000 Received: from localhost ([127.0.0.1]:57692 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTgB-000221-Pb for submit@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:45 -0400 Received: from latitanza.investici.org ([82.94.249.234]:63663) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mKTg9-00021K-E7 for 49834@debbugs.gnu.org; Sun, 29 Aug 2021 18:53:30 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4GyTJS3M7szGp6c; Sun, 29 Aug 2021 22:53:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1630277608; bh=xUEKCPNPcnJjraXhZ8iYs1QgOq4yhlhjnBavnO5WEdg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Fd1phhHx3AT5AGqlcUY6jdvE7pBO6oaDA6gEi8Qd6MGpobGvUod7kJkvSX/zmYApv G4V6BWCblMPEGMZ58awvvoOZ8x+fGQe/fCBU19KfkHFUW+nYDzTotBWWmoJDAwZHp3 M/zwfmFVxfKFR3YE9XCYE2/mjg37xgqDoTA25D8Q= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4GyTJS2KYHzGp6T; Sun, 29 Aug 2021 22:53:28 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 4/4] gnu: Add dynaconf. Date: Mon, 30 Aug 2021 00:53:17 +0200 Message-Id: <20210829225317.32435-4-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210829225317.32435-1-goodoldpaul@autistici.org> References: <20210829225317.32435-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (dynaconf): New variable. * gnu/packages/patches/dynaconf-Unvendor-dependencies.patch: New file. * local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + .../dynaconf-Unvendor-dependencies.patch | 180 ++++++++++++++++++ gnu/packages/python-xyz.scm | 73 +++++++ 3 files changed, 254 insertions(+) create mode 100644 gnu/packages/patches/dynaconf-Unvendor-dependencies.patch diff --git a/gnu/local.mk b/gnu/local.mk index a0da1a96d8..63fc46c740 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -977,6 +977,7 @@ dist_patch_DATA = \ %D%/packages/patches/dstat-skip-devices-without-io.patch \ %D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ + %D%/packages/patches/dynaconf-Unvendor-dependencies.patch \ %D%/packages/patches/ecl-16-format-directive-limit.patch \ %D%/packages/patches/ecl-16-ignore-stderr-write-error.patch \ %D%/packages/patches/ecl-16-libffi.patch \ diff --git a/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch b/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch new file mode 100644 index 0000000000..a379b1f00c --- /dev/null +++ b/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch @@ -0,0 +1,180 @@ +From 3f7b48195500cbbbbecd3cac2f5308c64004479b Mon Sep 17 00:00:00 2001 +From: Giacomo Leidi +Date: Sun, 29 Aug 2021 23:39:27 +0200 +Subject: [PATCH] Use system site dependencies. + +Box was not unvendored because it appears to be heavily patched. +--- + dynaconf/cli.py | 4 ++-- + dynaconf/default_settings.py | 2 +- + dynaconf/loaders/env_loader.py | 2 +- + dynaconf/loaders/toml_loader.py | 2 +- + dynaconf/loaders/yaml_loader.py | 2 +- + dynaconf/utils/parse_conf.py | 2 +- + dynaconf/vendor/box/converters.py | 4 ++-- + dynaconf/vendor/box/from_file.py | 4 ++-- + dynaconf/vendor_src/box/converters.py | 4 ++-- + dynaconf/vendor_src/box/from_file.py | 4 ++-- + tests/test_cli.py | 2 +- + 11 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/dynaconf/cli.py b/dynaconf/cli.py +index 5bb8316..1341a95 100644 +--- a/dynaconf/cli.py ++++ b/dynaconf/cli.py +@@ -20,8 +20,8 @@ from dynaconf.utils.functional import empty + from dynaconf.utils.parse_conf import parse_conf_data + from dynaconf.validator import ValidationError + from dynaconf.validator import Validator +-from dynaconf.vendor import click +-from dynaconf.vendor import toml ++import click ++import toml + + + CWD = Path.cwd() +diff --git a/dynaconf/default_settings.py b/dynaconf/default_settings.py +index 66601b0..9605fc5 100644 +--- a/dynaconf/default_settings.py ++++ b/dynaconf/default_settings.py +@@ -8,7 +8,7 @@ from dynaconf.utils import upperfy + from dynaconf.utils import warn_deprecations + from dynaconf.utils.files import find_file + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import load_dotenv ++from dotenv import load_dotenv + + + def try_renamed(key, value, older_key, current_key): +diff --git a/dynaconf/loaders/env_loader.py b/dynaconf/loaders/env_loader.py +index e7b13bd..b034c8a 100644 +--- a/dynaconf/loaders/env_loader.py ++++ b/dynaconf/loaders/env_loader.py +@@ -2,7 +2,7 @@ from os import environ + + from dynaconf.utils import upperfy + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import cli as dotenv_cli ++from dotenv import cli as dotenv_cli + + + IDENTIFIER = "env" +diff --git a/dynaconf/loaders/toml_loader.py b/dynaconf/loaders/toml_loader.py +index 07b973f..d81d675 100644 +--- a/dynaconf/loaders/toml_loader.py ++++ b/dynaconf/loaders/toml_loader.py +@@ -5,7 +5,7 @@ from dynaconf import default_settings + from dynaconf.constants import TOML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge +-from dynaconf.vendor import toml ++import toml + + + def load(obj, env=None, silent=True, key=None, filename=None): +diff --git a/dynaconf/loaders/yaml_loader.py b/dynaconf/loaders/yaml_loader.py +index 33c6532..3ef419a 100644 +--- a/dynaconf/loaders/yaml_loader.py ++++ b/dynaconf/loaders/yaml_loader.py +@@ -7,7 +7,7 @@ from dynaconf.constants import YAML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge + from dynaconf.utils.parse_conf import try_to_encode +-from dynaconf.vendor.ruamel import yaml ++from ruamel import yaml + + # Add support for Dynaconf Lazy values to YAML dumper + yaml.SafeDumper.yaml_representers[ +diff --git a/dynaconf/utils/parse_conf.py b/dynaconf/utils/parse_conf.py +index c42b07a..01ccdae 100644 +--- a/dynaconf/utils/parse_conf.py ++++ b/dynaconf/utils/parse_conf.py +@@ -9,7 +9,7 @@ from dynaconf.utils import isnamedtupleinstance + from dynaconf.utils import multi_replace + from dynaconf.utils import recursively_evaluate_lazy_format + from dynaconf.utils.boxing import DynaBox +-from dynaconf.vendor import toml ++import toml + + try: + from jinja2 import Environment +diff --git a/dynaconf/vendor/box/converters.py b/dynaconf/vendor/box/converters.py +index 93cdcfb..e34c7dc 100644 +--- a/dynaconf/vendor/box/converters.py ++++ b/dynaconf/vendor/box/converters.py +@@ -7,9 +7,9 @@ _B='utf-8' + _A=None + import csv,json,sys,warnings + from pathlib import Path +-import dynaconf.vendor.ruamel.yaml as yaml ++import ruamel.yaml as yaml + from dynaconf.vendor.box.exceptions import BoxError,BoxWarning +-from dynaconf.vendor import toml ++import toml + BOX_PARAMETERS='default_box','default_box_attr','conversion_box','frozen_box','camel_killer_box','box_safe_prefix','box_duplicates','ordered_box','default_box_none_transform','box_dots','modify_tuples_box','box_intact_types','box_recast' + def _exists(filename,create=_E): + A=filename;B=Path(A) +diff --git a/dynaconf/vendor/box/from_file.py b/dynaconf/vendor/box/from_file.py +index daa1137..d75940b 100644 +--- a/dynaconf/vendor/box/from_file.py ++++ b/dynaconf/vendor/box/from_file.py +@@ -1,8 +1,8 @@ + from json import JSONDecodeError + from pathlib import Path + from typing import Union +-from dynaconf.vendor.toml import TomlDecodeError +-from dynaconf.vendor.ruamel.yaml import YAMLError ++from toml import TomlDecodeError ++from ruamel.yaml import YAMLError + from .exceptions import BoxError + from .box import Box + from .box_list import BoxList +diff --git a/dynaconf/vendor_src/box/converters.py b/dynaconf/vendor_src/box/converters.py +index c9a2293..ae42bf6 100644 +--- a/dynaconf/vendor_src/box/converters.py ++++ b/dynaconf/vendor_src/box/converters.py +@@ -9,9 +9,9 @@ import sys + import warnings + from pathlib import Path + +-import dynaconf.vendor.ruamel.yaml as yaml ++import ruamel.yaml as yaml + from dynaconf.vendor.box.exceptions import BoxError, BoxWarning +-from dynaconf.vendor import toml ++import toml + + + BOX_PARAMETERS = ('default_box', 'default_box_attr', 'conversion_box', +diff --git a/dynaconf/vendor_src/box/from_file.py b/dynaconf/vendor_src/box/from_file.py +index 2e2a6ad..3f76819 100644 +--- a/dynaconf/vendor_src/box/from_file.py ++++ b/dynaconf/vendor_src/box/from_file.py +@@ -3,8 +3,8 @@ + from json import JSONDecodeError + from pathlib import Path + from typing import Union +-from dynaconf.vendor.toml import TomlDecodeError +-from dynaconf.vendor.ruamel.yaml import YAMLError ++from toml import TomlDecodeError ++from ruamel.yaml import YAMLError + + + from .exceptions import BoxError +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 6693701..df44409 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -11,7 +11,7 @@ from dynaconf.cli import main + from dynaconf.cli import read_file_in_root_directory + from dynaconf.cli import WRITERS + from dynaconf.utils.files import read_file +-from dynaconf.vendor.click.testing import CliRunner ++from click.testing import CliRunner + + + runner = CliRunner() + +base-commit: ebf7b17cffd5e08b212948bd8036d580718d5bf8 +-- +2.32.0 + diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index b98136d992..c6cce0645c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -137,6 +137,7 @@ #:use-module (gnu packages crypto) #:use-module (gnu packages databases) #:use-module (gnu packages dbm) + #:use-module (gnu packages django) #:use-module (gnu packages djvu) #:use-module (gnu packages docker) #:use-module (gnu packages enchant) @@ -26474,3 +26475,75 @@ read key-value pairs from a .env file and set them as environment variables") (sha256 (base32 "0x5dagmfn31phrbxlwacw3s4w5vibv8fxqc62nqcdvdhjsy0k69v")))))) + +(define-public dynaconf + (package + (name "dynaconf") + (version "3.1.5") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/rochacbruno/dynaconf") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0hxp1iadwmva79l16frvc77jrisppb09z6k1asm0qfjjzwyaswg3")) + (patches (search-patches "dynaconf-Unvendor-dependencies.patch")) + (modules '((guix build utils))) + (snippet '(begin + ;; Remove vendored dependencies + (let ((unvendor '("click" "dotenv" "ruamel" "toml"))) + (with-directory-excursion "dynaconf/vendor" + (for-each delete-file-recursively unvendor)) + (with-directory-excursion "dynaconf/vendor_src" + (for-each delete-file-recursively unvendor))))))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? outputs #:allow-other-keys) + (when tests? + (setenv "PATH" + (string-append (assoc-ref outputs "out") "/bin:" + (getenv "PATH"))) + ;; These tests depend on hvac and a + ;; live Vault process. + (delete-file "tests/test_vault.py") + (invoke "make" "test_only"))))))) + (propagated-inputs + `(("python-click" ,python-click) + ("python-configobj" ,python-configobj) + ("python-dotenv" ,python-dotenv-0.13.0) + ("python-ruamel.yaml" ,python-ruamel.yaml) + ("python-toml" ,python-toml))) + (native-inputs + `(("python-django" ,python-django) + ("python-flask" ,python-flask) + ("python-pytest" ,python-pytest-6) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-mock" ,python-pytest-mock))) + (home-page "https://www.dynaconf.com/") + (synopsis "The dynamic configurator for your Python project") + (description + "This package provides @code{dynaconf} the dynamic configurator manager for +your Python project. It provides features such as: + +@itemize +@item Inspired by the @url{https://12factor.net/config, 12-factor application guide}; +@item Settings management (default values, validation, parsing, templating); +@item Protection of sensitive information (passwords/tokens); +@item Multiple file formats @code{toml|yaml|json|ini|py} and also customizable +loaders; +@item Full support for environment variables to override existing settings +(dotenv support included); +@item Optional layered system for multiple environments @code{[default, +development, testing, production]}; +@item Built-in support for Hashicorp Vault and Redis as settings and secrets storage; +@item Built-in extensions for Django and Flask web frameworks; +@item CLI for common operations such as @code{init, list, write, validate, export}. +@end itemize") + (license license:expat))) -- 2.33.0 From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 07 18:50:10 2021 Received: (at 49834) by debbugs.gnu.org; 7 Oct 2021 22:50:10 +0000 Received: from localhost ([127.0.0.1]:48713 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mYcD8-0002D8-Jc for submit@debbugs.gnu.org; Thu, 07 Oct 2021 18:50:10 -0400 Received: from latitanza.investici.org ([82.94.249.234]:56257) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mYcD3-0002Cx-Mf for 49834@debbugs.gnu.org; Thu, 07 Oct 2021 18:49:57 -0400 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4HQRNH1PQVzGp3B for <49834@debbugs.gnu.org>; Thu, 7 Oct 2021 22:49:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1633646991; bh=ObNvyAmLYw6+MI8iSrphy4rAmh6AE/KOju24G915NDE=; h=To:From:Subject:Date:From; b=clD6DPQ9dSp/11pAuMWrbUW5UpquzAm4Oblz7wP7LN6z0nKp0z0oMiCLWQ6ZWime0 pTdz7J6UE3t3yT2qXK8JuH2dRDPGwDz/2bClMErNgNU1ODLcfOPuB7TxCPTf+IX5BA 0IfZW3P/TZOXfbU9oNp5qo8ipPiVYC7BjxH/Wzmg= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4HQRNH0mk3zGp2l for <49834@debbugs.gnu.org>; Thu, 7 Oct 2021 22:49:51 +0000 (UTC) To: 49834@debbugs.gnu.org From: paul Subject: [PATCH 1/7] gnu: Add python-flake8-debugger. Message-ID: Date: Fri, 8 Oct 2021 00:49:49 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.13.0 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------BE1F5AB0007A6D954A8D221F" Content-Language: en-US X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) This is a multi-part message in MIME format. --------------BE1F5AB0007A6D954A8D221F Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Dear guixers, this is a friendly ping :) . I'm attaching the patch set rebased on=20 current master. Thank you for your time, paul --------------BE1F5AB0007A6D954A8D221F Content-Type: text/x-patch; charset=UTF-8; name="0001-gnu-Add-python-dotenv.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0001-gnu-Add-python-dotenv.patch" =46rom 4a85671eb566603b37a63b7c3c365d7474974df4 Mon Sep 17 00:00:00 2001 From: Giacomo Leidi Date: Mon, 30 Aug 2021 00:19:23 +0200 Subject: [PATCH 1/4] gnu: Add python-dotenv. * gnu/packages/python-xyz.scm (python-dotenv): New variable. --- gnu/packages/python-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index fa4b11511a..d4f4dc1a7c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26937,6 +26937,33 @@ objects in the combined source, and how they def= ine or use each other. The graph can be output for rendering by GraphViz or yEd.") (license license:gpl2))) =20 +(define-public python-dotenv + (package + (name "python-dotenv") + (version "0.19.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0wk1kfzbpqk9swvmpa9z3q170ffqql2id4b2dxrkrq58r4mbq8gm")))) + (build-system python-build-system) + (propagated-inputs + `(("python-click" ,python-click))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("python-sh" ,python-sh))) + (home-page + "https://github.com/theskumar/python-dotenv") + (synopsis + "Setup environment variables according to .env files") + (description + "This package provides the @code{python-dotenv} Python module to +read key-value pairs from a .env file and set them as environment variab= les") + (license license:bsd-3))) + (define-public date2name (let ((commit "6c8f37277e8ec82aa50f90b8921422be30c4e798") (revision "1")) base-commit: 34baab7a7b66610b592a1e5703470c75a1e06c7f --=20 2.33.0 --------------BE1F5AB0007A6D954A8D221F Content-Type: text/x-patch; charset=UTF-8; name="0002-gnu-python-ruamel.yaml-Update-to-0.17.10.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0002-gnu-python-ruamel.yaml-Update-to-0.17.10.patch" =46rom 2f4488be2881a5db9921f5d847ab088d4095886b Mon Sep 17 00:00:00 2001 From: Giacomo Leidi Date: Tue, 29 Jun 2021 22:29:43 +0200 Subject: [PATCH 2/4] gnu: python-ruamel.yaml: Update to 0.17.10. * gnu/packages/serialization.scm (python-ruamel.yaml): Update to 0.17.10.= --- gnu/packages/serialization.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.= scm index 196141ace8..e6b95ebf53 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -519,14 +519,14 @@ it is comparable to protobuf.") (define-public python-ruamel.yaml (package (name "python-ruamel.yaml") - (version "0.15.83") + (version "0.17.10") (source (origin (method url-fetch) (uri (pypi-uri "ruamel.yaml" version)) (sha256 (base32 - "0p4i8ad28cbbbjja8b9274irkhnphhvhap3aym6yb8xfp1d72kpw")))) + "0rwywdbmy20qwssccydpaval2vq36825fiva374zf3vavkbchsqh")))) (build-system python-build-system) (native-inputs `(("python-pytest" ,python-pytest))) --=20 2.33.0 --------------BE1F5AB0007A6D954A8D221F Content-Type: text/x-patch; charset=UTF-8; name="0003-gnu-Add-python-dotenv-0.13.0.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0003-gnu-Add-python-dotenv-0.13.0.patch" =46rom 736d84af3b33e76839919c7b66536fe80b34b3f0 Mon Sep 17 00:00:00 2001 From: Giacomo Leidi Date: Sun, 29 Aug 2021 23:05:27 +0200 Subject: [PATCH 3/4] gnu: Add python-dotenv-0.13.0. * gnu/packages/python-xyz.scm (python-dotenv-0.13.0): New variable. --- gnu/packages/python-xyz.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d4f4dc1a7c..6157913e09 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26964,6 +26964,18 @@ graph can be output for rendering by GraphViz or= yEd.") read key-value pairs from a .env file and set them as environment variab= les") (license license:bsd-3))) =20 +(define-public python-dotenv-0.13.0 + (package (inherit python-dotenv) + (name "python-dotenv") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0x5dagmfn31phrbxlwacw3s4w5vibv8fxqc62nqcdvdhjsy0k69v")))))) + (define-public date2name (let ((commit "6c8f37277e8ec82aa50f90b8921422be30c4e798") (revision "1")) --=20 2.33.0 --------------BE1F5AB0007A6D954A8D221F Content-Type: text/x-patch; charset=UTF-8; name="0004-gnu-Add-dynaconf.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0004-gnu-Add-dynaconf.patch" =46rom b52c89dd7599e19b8e6830f9bad313cfad07ac7f Mon Sep 17 00:00:00 2001 From: Giacomo Leidi Date: Mon, 30 Aug 2021 00:23:27 +0200 Subject: [PATCH 4/4] gnu: Add dynaconf. * gnu/packages/python-xyz.scm (dynaconf): New variable. * gnu/packages/patches/dynaconf-Unvendor-dependencies.patch: New file. * local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + .../dynaconf-Unvendor-dependencies.patch | 180 ++++++++++++++++++ gnu/packages/python-xyz.scm | 75 +++++++- 3 files changed, 255 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/dynaconf-Unvendor-dependencies.p= atch diff --git a/gnu/local.mk b/gnu/local.mk index 91915e780b..f85435600f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -990,6 +990,7 @@ dist_patch_DATA =3D \ %D%/packages/patches/dstat-skip-devices-without-io.patch \ %D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ + %D%/packages/patches/dynaconf-Unvendor-dependencies.patch \ %D%/packages/patches/ecl-16-format-directive-limit.patch \ %D%/packages/patches/ecl-16-ignore-stderr-write-error.patch \ %D%/packages/patches/ecl-16-libffi.patch \ diff --git a/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch b/= gnu/packages/patches/dynaconf-Unvendor-dependencies.patch new file mode 100644 index 0000000000..a379b1f00c --- /dev/null +++ b/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch @@ -0,0 +1,180 @@ +From 3f7b48195500cbbbbecd3cac2f5308c64004479b Mon Sep 17 00:00:00 2001 +From: Giacomo Leidi +Date: Sun, 29 Aug 2021 23:39:27 +0200 +Subject: [PATCH] Use system site dependencies. + +Box was not unvendored because it appears to be heavily patched. +--- + dynaconf/cli.py | 4 ++-- + dynaconf/default_settings.py | 2 +- + dynaconf/loaders/env_loader.py | 2 +- + dynaconf/loaders/toml_loader.py | 2 +- + dynaconf/loaders/yaml_loader.py | 2 +- + dynaconf/utils/parse_conf.py | 2 +- + dynaconf/vendor/box/converters.py | 4 ++-- + dynaconf/vendor/box/from_file.py | 4 ++-- + dynaconf/vendor_src/box/converters.py | 4 ++-- + dynaconf/vendor_src/box/from_file.py | 4 ++-- + tests/test_cli.py | 2 +- + 11 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/dynaconf/cli.py b/dynaconf/cli.py +index 5bb8316..1341a95 100644 +--- a/dynaconf/cli.py ++++ b/dynaconf/cli.py +@@ -20,8 +20,8 @@ from dynaconf.utils.functional import empty + from dynaconf.utils.parse_conf import parse_conf_data + from dynaconf.validator import ValidationError + from dynaconf.validator import Validator +-from dynaconf.vendor import click +-from dynaconf.vendor import toml ++import click ++import toml +=20 +=20 + CWD =3D Path.cwd() +diff --git a/dynaconf/default_settings.py b/dynaconf/default_settings.py= +index 66601b0..9605fc5 100644 +--- a/dynaconf/default_settings.py ++++ b/dynaconf/default_settings.py +@@ -8,7 +8,7 @@ from dynaconf.utils import upperfy + from dynaconf.utils import warn_deprecations + from dynaconf.utils.files import find_file + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import load_dotenv ++from dotenv import load_dotenv +=20 +=20 + def try_renamed(key, value, older_key, current_key): +diff --git a/dynaconf/loaders/env_loader.py b/dynaconf/loaders/env_loade= r.py +index e7b13bd..b034c8a 100644 +--- a/dynaconf/loaders/env_loader.py ++++ b/dynaconf/loaders/env_loader.py +@@ -2,7 +2,7 @@ from os import environ +=20 + from dynaconf.utils import upperfy + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import cli as dotenv_cli ++from dotenv import cli as dotenv_cli +=20 +=20 + IDENTIFIER =3D "env" +diff --git a/dynaconf/loaders/toml_loader.py b/dynaconf/loaders/toml_loa= der.py +index 07b973f..d81d675 100644 +--- a/dynaconf/loaders/toml_loader.py ++++ b/dynaconf/loaders/toml_loader.py +@@ -5,7 +5,7 @@ from dynaconf import default_settings + from dynaconf.constants import TOML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge +-from dynaconf.vendor import toml ++import toml +=20 +=20 + def load(obj, env=3DNone, silent=3DTrue, key=3DNone, filename=3DNone): +diff --git a/dynaconf/loaders/yaml_loader.py b/dynaconf/loaders/yaml_loa= der.py +index 33c6532..3ef419a 100644 +--- a/dynaconf/loaders/yaml_loader.py ++++ b/dynaconf/loaders/yaml_loader.py +@@ -7,7 +7,7 @@ from dynaconf.constants import YAML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge + from dynaconf.utils.parse_conf import try_to_encode +-from dynaconf.vendor.ruamel import yaml ++from ruamel import yaml +=20 + # Add support for Dynaconf Lazy values to YAML dumper + yaml.SafeDumper.yaml_representers[ +diff --git a/dynaconf/utils/parse_conf.py b/dynaconf/utils/parse_conf.py= +index c42b07a..01ccdae 100644 +--- a/dynaconf/utils/parse_conf.py ++++ b/dynaconf/utils/parse_conf.py +@@ -9,7 +9,7 @@ from dynaconf.utils import isnamedtupleinstance + from dynaconf.utils import multi_replace + from dynaconf.utils import recursively_evaluate_lazy_format + from dynaconf.utils.boxing import DynaBox +-from dynaconf.vendor import toml ++import toml +=20 + try: + from jinja2 import Environment +diff --git a/dynaconf/vendor/box/converters.py b/dynaconf/vendor/box/con= verters.py +index 93cdcfb..e34c7dc 100644 +--- a/dynaconf/vendor/box/converters.py ++++ b/dynaconf/vendor/box/converters.py +@@ -7,9 +7,9 @@ _B=3D'utf-8' + _A=3DNone + import csv,json,sys,warnings + from pathlib import Path +-import dynaconf.vendor.ruamel.yaml as yaml ++import ruamel.yaml as yaml + from dynaconf.vendor.box.exceptions import BoxError,BoxWarning +-from dynaconf.vendor import toml ++import toml + BOX_PARAMETERS=3D'default_box','default_box_attr','conversion_box','fro= zen_box','camel_killer_box','box_safe_prefix','box_duplicates','ordered_b= ox','default_box_none_transform','box_dots','modify_tuples_box','box_inta= ct_types','box_recast' + def _exists(filename,create=3D_E): + A=3Dfilename;B=3DPath(A) +diff --git a/dynaconf/vendor/box/from_file.py b/dynaconf/vendor/box/from= _file.py +index daa1137..d75940b 100644 +--- a/dynaconf/vendor/box/from_file.py ++++ b/dynaconf/vendor/box/from_file.py +@@ -1,8 +1,8 @@ + from json import JSONDecodeError + from pathlib import Path + from typing import Union +-from dynaconf.vendor.toml import TomlDecodeError +-from dynaconf.vendor.ruamel.yaml import YAMLError ++from toml import TomlDecodeError ++from ruamel.yaml import YAMLError + from .exceptions import BoxError + from .box import Box + from .box_list import BoxList +diff --git a/dynaconf/vendor_src/box/converters.py b/dynaconf/vendor_src= /box/converters.py +index c9a2293..ae42bf6 100644 +--- a/dynaconf/vendor_src/box/converters.py ++++ b/dynaconf/vendor_src/box/converters.py +@@ -9,9 +9,9 @@ import sys + import warnings + from pathlib import Path +=20 +-import dynaconf.vendor.ruamel.yaml as yaml ++import ruamel.yaml as yaml + from dynaconf.vendor.box.exceptions import BoxError, BoxWarning +-from dynaconf.vendor import toml ++import toml +=20 +=20 + BOX_PARAMETERS =3D ('default_box', 'default_box_attr', 'conversion_box'= , +diff --git a/dynaconf/vendor_src/box/from_file.py b/dynaconf/vendor_src/= box/from_file.py +index 2e2a6ad..3f76819 100644 +--- a/dynaconf/vendor_src/box/from_file.py ++++ b/dynaconf/vendor_src/box/from_file.py +@@ -3,8 +3,8 @@ + from json import JSONDecodeError + from pathlib import Path + from typing import Union +-from dynaconf.vendor.toml import TomlDecodeError +-from dynaconf.vendor.ruamel.yaml import YAMLError ++from toml import TomlDecodeError ++from ruamel.yaml import YAMLError +=20 +=20 + from .exceptions import BoxError +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 6693701..df44409 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -11,7 +11,7 @@ from dynaconf.cli import main + from dynaconf.cli import read_file_in_root_directory + from dynaconf.cli import WRITERS + from dynaconf.utils.files import read_file +-from dynaconf.vendor.click.testing import CliRunner ++from click.testing import CliRunner +=20 +=20 + runner =3D CliRunner() + +base-commit: ebf7b17cffd5e08b212948bd8036d580718d5bf8 +--=20 +2.32.0 + diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 6157913e09..5e48543f3d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -63,7 +63,7 @@ ;;; Copyright =C2=A9 2019, 2020 Alex Griffin ;;; Copyright =C2=A9 2019, 2020, 2021 Pierre Langlois ;;; Copyright =C2=A9 2019 Jacob MacDonald -;;; Copyright =C2=A9 2019, 2020 Giacomo Leidi +;;; Copyright =C2=A9 2019, 2020, 2021 Giacomo Leidi ;;; Copyright =C2=A9 2019 Wiktor =C5=BBelazny ;;; Copyright =C2=A9 2019, 2020, 2021 Tanguy Le Carrour ;;; Copyright =C2=A9 2019, 2021 M=C4=83d=C4=83lin Ionel Patra=C8=99cu @@ -138,6 +138,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages crypto) #:use-module (gnu packages databases) + #:use-module (gnu packages django) #:use-module (gnu packages dbm) #:use-module (gnu packages djvu) #:use-module (gnu packages docker) @@ -27327,3 +27328,75 @@ and powerful way to handle real-world data, feat= uring: "This package provides the @code{python-box} Python module. It implements advanced Python dictionaries with dot notation access.") (license license:expat))) + +(define-public dynaconf + (package + (name "dynaconf") + (version "3.1.5") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/rochacbruno/dynaconf") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0hxp1iadwmva79l16frvc77jrisppb09z6k1asm0qfjjzwyaswg3")) + (patches (search-patches "dynaconf-Unvendor-dependencies.patch"))= + (modules '((guix build utils))) + (snippet '(begin + ;; Remove vendored dependencies + (let ((unvendor '("click" "dotenv" "ruamel" "toml")))= + (with-directory-excursion "dynaconf/vendor" + (for-each delete-file-recursively unvendor)) + (with-directory-excursion "dynaconf/vendor_src" + (for-each delete-file-recursively unvendor)))))))= + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? outputs #:allow-other-keys) + (when tests? + (setenv "PATH" + (string-append (assoc-ref outputs "out") "/bin:" + (getenv "PATH"))) + ;; These tests depend on hvac and a + ;; live Vault process. + (delete-file "tests/test_vault.py") + (invoke "make" "test_only"))))))) + (propagated-inputs + `(("python-click" ,python-click) + ("python-configobj" ,python-configobj) + ("python-dotenv" ,python-dotenv-0.13.0) + ("python-ruamel.yaml" ,python-ruamel.yaml) + ("python-toml" ,python-toml))) + (native-inputs + `(("python-django" ,python-django) + ("python-flask" ,python-flask) + ("python-pytest" ,python-pytest-6) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-mock" ,python-pytest-mock))) + (home-page "https://www.dynaconf.com/") + (synopsis "The dynamic configurator for your Python project") + (description + "This package provides @code{dynaconf} the dynamic configurator man= ager for +your Python project. It provides features such as: + +@itemize +@item Inspired by the @url{https://12factor.net/config, 12-factor applic= ation guide}; +@item Settings management (default values, validation, parsing, templati= ng); +@item Protection of sensitive information (passwords/tokens); +@item Multiple file formats @code{toml|yaml|json|ini|py} and also custom= izable +loaders; +@item Full support for environment variables to override existing settin= gs +(dotenv support included); +@item Optional layered system for multiple environments @code{[default, +development, testing, production]}; +@item Built-in support for Hashicorp Vault and Redis as settings and sec= rets storage; +@item Built-in extensions for Django and Flask web frameworks; +@item CLI for common operations such as @code{init, list, write, validat= e, export}. +@end itemize") + (license license:expat))) --=20 2.33.0 --------------BE1F5AB0007A6D954A8D221F-- From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 19 18:40:41 2021 Received: (at 49834) by debbugs.gnu.org; 19 Nov 2021 23:40:41 +0000 Received: from localhost ([127.0.0.1]:40845 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDUm-0007vz-W1 for submit@debbugs.gnu.org; Fri, 19 Nov 2021 18:40:41 -0500 Received: from latitanza.investici.org ([82.94.249.234]:42265) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDUk-0007vq-Nv for 49834@debbugs.gnu.org; Fri, 19 Nov 2021 18:40:39 -0500 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4HwtT11dLyzGp5H for <49834@debbugs.gnu.org>; Fri, 19 Nov 2021 23:40:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1637365237; bh=smBHEb6sdMQAHkwniQFjd5cUZpQS7nHcpf0IgIXpNEs=; h=To:From:Subject:Date:From; b=qOrYnzJTLUypzHPAUbNAjJwnXdlCg+8X3BUzV09mWLDviHMzPy0NMSoGjoRYLHMMK 9HCO0Nv3huOQcyNCD80sL0vIUmMxBrNlZCmYStL0a6QgBDnm6WxoYPXose2cXPqdIM fpzxlIHx2e+rQReK5lmfXCXxYsmG0wjH+6Y9Cm40= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4HwtT11D02zGp59 for <49834@debbugs.gnu.org>; Fri, 19 Nov 2021 23:40:37 +0000 (UTC) To: 49834@debbugs.gnu.org From: paul Subject: gnu: Add dynaconf. Message-ID: <8f60fb97-d7d9-e72f-4b5c-ec9df20f77e4@autistici.org> Date: Sat, 20 Nov 2021 00:40:36 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.15.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Dear guixers,  I'm sending a new patch set rebased on current master where I updated dynaconf to version 3.1.7. Thank you for your time, paul From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 19 18:41:44 2021 Received: (at 49834) by debbugs.gnu.org; 19 Nov 2021 23:41:44 +0000 Received: from localhost ([127.0.0.1]:40858 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVn-0007yc-R5 for submit@debbugs.gnu.org; Fri, 19 Nov 2021 18:41:44 -0500 Received: from latitanza.investici.org ([82.94.249.234]:57439) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVm-0007yF-As for 49834@debbugs.gnu.org; Fri, 19 Nov 2021 18:41:42 -0500 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4HwtVF6JP5zGp5H; Fri, 19 Nov 2021 23:41:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1637365301; bh=KILsP5b7gyRKIMgotJdRoUuRdqPN0UtNhNa5oLkty7A=; h=From:To:Cc:Subject:Date:From; b=mXkl/aLZkYK4Jz5CYMpXtVe29yStc6YhmQOYOKU74n3ALz2m+DRb+gBAIYWen0BOO Hvc+SdlbpJVhmCn9pR/a/OIYM/eRFSKncS6O8IHYPYfQxvXauQKVtb5iki9kdaszYB Y1bYuoJ3OoUWbYw9Lg90PIhlO39n/r+By91xYAYg= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4HwtVF5VK9zGp59; Fri, 19 Nov 2021 23:41:41 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 1/4] gnu: Add python-dotenv. Date: Sat, 20 Nov 2021 00:41:22 +0100 Message-Id: <20211119234125.2344-1-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.34.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-dotenv): New variable. --- gnu/packages/python-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index a6f8b10bf7..0ec800b9ee 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -27558,6 +27558,32 @@ (define-public python-minikanren systems in Python.") (license license:bsd-3))) +(define-public python-dotenv + (package + (name "python-dotenv") + (version "0.19.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0wk1kfzbpqk9swvmpa9z3q170ffqql2id4b2dxrkrq58r4mbq8gm")))) + (build-system python-build-system) + (propagated-inputs + `(("python-click" ,python-click))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("python-sh" ,python-sh))) + (home-page + "https://github.com/theskumar/python-dotenv") + (synopsis + "Setup environment variables according to .env files") + (description + "This package provides the @code{python-dotenv} Python module to +read key-value pairs from a .env file and set them as environment variables") + (license license:bsd-3))) (define-public date2name (let ((commit "6c8f37277e8ec82aa50f90b8921422be30c4e798") base-commit: 7cad4466533f14ec7e9d8744b26a8d5211ff39d4 -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 19 18:41:47 2021 Received: (at 49834) by debbugs.gnu.org; 19 Nov 2021 23:41:47 +0000 Received: from localhost ([127.0.0.1]:40860 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVr-0007yu-7y for submit@debbugs.gnu.org; Fri, 19 Nov 2021 18:41:47 -0500 Received: from latitanza.investici.org ([82.94.249.234]:43979) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVm-0007yJ-Lk for 49834@debbugs.gnu.org; Fri, 19 Nov 2021 18:41:42 -0500 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4HwtVG1br6zGp5d; Fri, 19 Nov 2021 23:41:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1637365302; bh=9iGPn7++n8tYXrJCm2vPy7M7KUZI+/xiZo1Sdx8dsLI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=coGus7p0LZ9TGe5Z/lDP577sSMvwpFMX3BM6FmEx7l0pH/2Shp3jsd2wYqnT+YHVy RMLUVvjRuP5bG7Nqg1EB9L76dyLnfNT6qrt1WG45s3JuTbhcAZpPCfty7erAIUoav3 /gF2D9d8yMs4ps8lR6O5269zYm3v6OpzQPGZKZvA= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4HwtVG0mp8zGp59; Fri, 19 Nov 2021 23:41:42 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 3/4] gnu: Add python-dotenv-0.13.0. Date: Sat, 20 Nov 2021 00:41:24 +0100 Message-Id: <20211119234125.2344-3-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20211119234125.2344-1-goodoldpaul@autistici.org> References: <20211119234125.2344-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (python-dotenv-0.13.0): New variable. --- gnu/packages/python-xyz.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0ec800b9ee..4181b47d10 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -27585,6 +27585,18 @@ (define-public python-dotenv read key-value pairs from a .env file and set them as environment variables") (license license:bsd-3))) +(define-public python-dotenv-0.13.0 + (package (inherit python-dotenv) + (name "python-dotenv") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-dotenv" version)) + (sha256 + (base32 + "0x5dagmfn31phrbxlwacw3s4w5vibv8fxqc62nqcdvdhjsy0k69v")))))) + (define-public date2name (let ((commit "6c8f37277e8ec82aa50f90b8921422be30c4e798") (revision "1")) -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 19 18:41:47 2021 Received: (at 49834) by debbugs.gnu.org; 19 Nov 2021 23:41:47 +0000 Received: from localhost ([127.0.0.1]:40862 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVr-0007yw-Fr for submit@debbugs.gnu.org; Fri, 19 Nov 2021 18:41:47 -0500 Received: from latitanza.investici.org ([82.94.249.234]:41237) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVm-0007yI-GM for 49834@debbugs.gnu.org; Fri, 19 Nov 2021 18:41:43 -0500 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4HwtVG0NnbzGp5P; Fri, 19 Nov 2021 23:41:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1637365302; bh=fc1hOjnu3Tb6MvtjuJRPQumcmbTDvJOTT+3qQ4OyCUI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DUilZ4eXMEcKNCzTPxUGYZdfpJCF+pcKg3S5d6LIzwm19iDEuqK+UHUx3rGVvYQX3 xNunvzaQzvW2+034WwLaw3OhX5Ppgd6Nmo/5+J6datVwWIOD4TpWDAObGIPw+dvY3k Jxu99rkfUuLmgTNkcA2Ew3BLjrZdC3JMDdR3VEyY= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4HwtVF6gFpzGp59; Fri, 19 Nov 2021 23:41:41 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 2/4] gnu: python-ruamel.yaml: Update to 0.17.10. Date: Sat, 20 Nov 2021 00:41:23 +0100 Message-Id: <20211119234125.2344-2-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20211119234125.2344-1-goodoldpaul@autistici.org> References: <20211119234125.2344-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/serialization.scm (python-ruamel.yaml): Update to 0.17.10. --- gnu/packages/serialization.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index e24ef973b5..a5a1dc960e 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -569,14 +569,14 @@ (define-public libbson (define-public python-ruamel.yaml (package (name "python-ruamel.yaml") - (version "0.15.83") + (version "0.17.10") (source (origin (method url-fetch) (uri (pypi-uri "ruamel.yaml" version)) (sha256 (base32 - "0p4i8ad28cbbbjja8b9274irkhnphhvhap3aym6yb8xfp1d72kpw")))) + "0rwywdbmy20qwssccydpaval2vq36825fiva374zf3vavkbchsqh")))) (build-system python-build-system) (native-inputs `(("python-pytest" ,python-pytest))) -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Fri Nov 19 18:42:00 2021 Received: (at 49834) by debbugs.gnu.org; 19 Nov 2021 23:42:00 +0000 Received: from localhost ([127.0.0.1]:40864 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVr-0007z4-Oh for submit@debbugs.gnu.org; Fri, 19 Nov 2021 18:42:00 -0500 Received: from latitanza.investici.org ([82.94.249.234]:42475) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1moDVm-0007yK-Rw for 49834@debbugs.gnu.org; Fri, 19 Nov 2021 18:41:44 -0500 Received: from mx3.investici.org (unknown [127.0.0.1]) by latitanza.investici.org (Postfix) with ESMTP id 4HwtVG2rQzzGp5s; Fri, 19 Nov 2021 23:41:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=autistici.org; s=stigmate; t=1637365302; bh=lk6EOISBAtl23Yz8ZQ7AbV97XqpZIdVf5qRzElEzm20=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lbvH4idP8nRTAiHYEnJSyNbgGy6uGAiTGWC6DdMc/0QhxnDp8vkhQjVJl5POVJM+u fwcQXAt9Bj2/+rkDRdCNwgDu4gvaLzzskR8H+EtxRAR8PIxSZFFKXZznF0fBV7MvIX ATuPX6JbclVF3uMW/hVabTnYI0UkC8716Gocafh4= Received: from [82.94.249.234] (mx3.investici.org [82.94.249.234]) (Authenticated sender: goodoldpaul@autistici.org) by localhost (Postfix) with ESMTPSA id 4HwtVG1zh7zGp59; Fri, 19 Nov 2021 23:41:42 +0000 (UTC) From: Giacomo Leidi To: 49834@debbugs.gnu.org Subject: [PATCH 4/4] gnu: Add dynaconf. Date: Sat, 20 Nov 2021 00:41:25 +0100 Message-Id: <20211119234125.2344-4-goodoldpaul@autistici.org> X-Mailer: git-send-email 2.34.0 In-Reply-To: <20211119234125.2344-1-goodoldpaul@autistici.org> References: <20211119234125.2344-1-goodoldpaul@autistici.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834 Cc: Giacomo Leidi X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) * gnu/packages/python-xyz.scm (dynaconf): New variable. * gnu/packages/patches/dynaconf-Unvendor-dependencies.patch: New file. * local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + .../dynaconf-Unvendor-dependencies.patch | 180 ++++++++++++++++++ gnu/packages/python-xyz.scm | 75 +++++++- 3 files changed, 255 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/dynaconf-Unvendor-dependencies.patch diff --git a/gnu/local.mk b/gnu/local.mk index 7cc06c8212..ab05667bc0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -994,6 +994,7 @@ dist_patch_DATA = \ %D%/packages/patches/dstat-skip-devices-without-io.patch \ %D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ + %D%/packages/patches/dynaconf-Unvendor-dependencies.patch \ %D%/packages/patches/ecl-16-format-directive-limit.patch \ %D%/packages/patches/ecl-16-ignore-stderr-write-error.patch \ %D%/packages/patches/ecl-16-libffi.patch \ diff --git a/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch b/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch new file mode 100644 index 0000000000..a379b1f00c --- /dev/null +++ b/gnu/packages/patches/dynaconf-Unvendor-dependencies.patch @@ -0,0 +1,180 @@ +From 3f7b48195500cbbbbecd3cac2f5308c64004479b Mon Sep 17 00:00:00 2001 +From: Giacomo Leidi +Date: Sun, 29 Aug 2021 23:39:27 +0200 +Subject: [PATCH] Use system site dependencies. + +Box was not unvendored because it appears to be heavily patched. +--- + dynaconf/cli.py | 4 ++-- + dynaconf/default_settings.py | 2 +- + dynaconf/loaders/env_loader.py | 2 +- + dynaconf/loaders/toml_loader.py | 2 +- + dynaconf/loaders/yaml_loader.py | 2 +- + dynaconf/utils/parse_conf.py | 2 +- + dynaconf/vendor/box/converters.py | 4 ++-- + dynaconf/vendor/box/from_file.py | 4 ++-- + dynaconf/vendor_src/box/converters.py | 4 ++-- + dynaconf/vendor_src/box/from_file.py | 4 ++-- + tests/test_cli.py | 2 +- + 11 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/dynaconf/cli.py b/dynaconf/cli.py +index 5bb8316..1341a95 100644 +--- a/dynaconf/cli.py ++++ b/dynaconf/cli.py +@@ -20,8 +20,8 @@ from dynaconf.utils.functional import empty + from dynaconf.utils.parse_conf import parse_conf_data + from dynaconf.validator import ValidationError + from dynaconf.validator import Validator +-from dynaconf.vendor import click +-from dynaconf.vendor import toml ++import click ++import toml + + + CWD = Path.cwd() +diff --git a/dynaconf/default_settings.py b/dynaconf/default_settings.py +index 66601b0..9605fc5 100644 +--- a/dynaconf/default_settings.py ++++ b/dynaconf/default_settings.py +@@ -8,7 +8,7 @@ from dynaconf.utils import upperfy + from dynaconf.utils import warn_deprecations + from dynaconf.utils.files import find_file + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import load_dotenv ++from dotenv import load_dotenv + + + def try_renamed(key, value, older_key, current_key): +diff --git a/dynaconf/loaders/env_loader.py b/dynaconf/loaders/env_loader.py +index e7b13bd..b034c8a 100644 +--- a/dynaconf/loaders/env_loader.py ++++ b/dynaconf/loaders/env_loader.py +@@ -2,7 +2,7 @@ from os import environ + + from dynaconf.utils import upperfy + from dynaconf.utils.parse_conf import parse_conf_data +-from dynaconf.vendor.dotenv import cli as dotenv_cli ++from dotenv import cli as dotenv_cli + + + IDENTIFIER = "env" +diff --git a/dynaconf/loaders/toml_loader.py b/dynaconf/loaders/toml_loader.py +index 07b973f..d81d675 100644 +--- a/dynaconf/loaders/toml_loader.py ++++ b/dynaconf/loaders/toml_loader.py +@@ -5,7 +5,7 @@ from dynaconf import default_settings + from dynaconf.constants import TOML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge +-from dynaconf.vendor import toml ++import toml + + + def load(obj, env=None, silent=True, key=None, filename=None): +diff --git a/dynaconf/loaders/yaml_loader.py b/dynaconf/loaders/yaml_loader.py +index 33c6532..3ef419a 100644 +--- a/dynaconf/loaders/yaml_loader.py ++++ b/dynaconf/loaders/yaml_loader.py +@@ -7,7 +7,7 @@ from dynaconf.constants import YAML_EXTENSIONS + from dynaconf.loaders.base import BaseLoader + from dynaconf.utils import object_merge + from dynaconf.utils.parse_conf import try_to_encode +-from dynaconf.vendor.ruamel import yaml ++from ruamel import yaml + + # Add support for Dynaconf Lazy values to YAML dumper + yaml.SafeDumper.yaml_representers[ +diff --git a/dynaconf/utils/parse_conf.py b/dynaconf/utils/parse_conf.py +index c42b07a..01ccdae 100644 +--- a/dynaconf/utils/parse_conf.py ++++ b/dynaconf/utils/parse_conf.py +@@ -9,7 +9,7 @@ from dynaconf.utils import isnamedtupleinstance + from dynaconf.utils import multi_replace + from dynaconf.utils import recursively_evaluate_lazy_format + from dynaconf.utils.boxing import DynaBox +-from dynaconf.vendor import toml ++import toml + + try: + from jinja2 import Environment +diff --git a/dynaconf/vendor/box/converters.py b/dynaconf/vendor/box/converters.py +index 93cdcfb..e34c7dc 100644 +--- a/dynaconf/vendor/box/converters.py ++++ b/dynaconf/vendor/box/converters.py +@@ -7,9 +7,9 @@ _B='utf-8' + _A=None + import csv,json,sys,warnings + from pathlib import Path +-import dynaconf.vendor.ruamel.yaml as yaml ++import ruamel.yaml as yaml + from dynaconf.vendor.box.exceptions import BoxError,BoxWarning +-from dynaconf.vendor import toml ++import toml + BOX_PARAMETERS='default_box','default_box_attr','conversion_box','frozen_box','camel_killer_box','box_safe_prefix','box_duplicates','ordered_box','default_box_none_transform','box_dots','modify_tuples_box','box_intact_types','box_recast' + def _exists(filename,create=_E): + A=filename;B=Path(A) +diff --git a/dynaconf/vendor/box/from_file.py b/dynaconf/vendor/box/from_file.py +index daa1137..d75940b 100644 +--- a/dynaconf/vendor/box/from_file.py ++++ b/dynaconf/vendor/box/from_file.py +@@ -1,8 +1,8 @@ + from json import JSONDecodeError + from pathlib import Path + from typing import Union +-from dynaconf.vendor.toml import TomlDecodeError +-from dynaconf.vendor.ruamel.yaml import YAMLError ++from toml import TomlDecodeError ++from ruamel.yaml import YAMLError + from .exceptions import BoxError + from .box import Box + from .box_list import BoxList +diff --git a/dynaconf/vendor_src/box/converters.py b/dynaconf/vendor_src/box/converters.py +index c9a2293..ae42bf6 100644 +--- a/dynaconf/vendor_src/box/converters.py ++++ b/dynaconf/vendor_src/box/converters.py +@@ -9,9 +9,9 @@ import sys + import warnings + from pathlib import Path + +-import dynaconf.vendor.ruamel.yaml as yaml ++import ruamel.yaml as yaml + from dynaconf.vendor.box.exceptions import BoxError, BoxWarning +-from dynaconf.vendor import toml ++import toml + + + BOX_PARAMETERS = ('default_box', 'default_box_attr', 'conversion_box', +diff --git a/dynaconf/vendor_src/box/from_file.py b/dynaconf/vendor_src/box/from_file.py +index 2e2a6ad..3f76819 100644 +--- a/dynaconf/vendor_src/box/from_file.py ++++ b/dynaconf/vendor_src/box/from_file.py +@@ -3,8 +3,8 @@ + from json import JSONDecodeError + from pathlib import Path + from typing import Union +-from dynaconf.vendor.toml import TomlDecodeError +-from dynaconf.vendor.ruamel.yaml import YAMLError ++from toml import TomlDecodeError ++from ruamel.yaml import YAMLError + + + from .exceptions import BoxError +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 6693701..df44409 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -11,7 +11,7 @@ from dynaconf.cli import main + from dynaconf.cli import read_file_in_root_directory + from dynaconf.cli import WRITERS + from dynaconf.utils.files import read_file +-from dynaconf.vendor.click.testing import CliRunner ++from click.testing import CliRunner + + + runner = CliRunner() + +base-commit: ebf7b17cffd5e08b212948bd8036d580718d5bf8 +-- +2.32.0 + diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 4181b47d10..dfd5668827 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -63,7 +63,7 @@ ;;; Copyright © 2019, 2020 Alex Griffin ;;; Copyright © 2019, 2020, 2021 Pierre Langlois ;;; Copyright © 2019 Jacob MacDonald -;;; Copyright © 2019, 2020 Giacomo Leidi +;;; Copyright © 2019, 2020, 2021 Giacomo Leidi ;;; Copyright © 2019 Wiktor Żelazny ;;; Copyright © 2019, 2020, 2021 Tanguy Le Carrour ;;; Copyright © 2019, 2021 Mădălin Ionel Patrașcu @@ -141,6 +141,7 @@ (define-module (gnu packages python-xyz) #:use-module (gnu packages compression) #:use-module (gnu packages crypto) #:use-module (gnu packages databases) + #:use-module (gnu packages django) #:use-module (gnu packages dbm) #:use-module (gnu packages djvu) #:use-module (gnu packages docker) @@ -28074,3 +28075,75 @@ (define-public python-sgmllib3k It is used to parse text files formatted in @acronym{SGML,Standard Generalized Mark-up Language}.") (license license:bsd-3))) + +(define-public dynaconf + (package + (name "dynaconf") + (version "3.1.7") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/rochacbruno/dynaconf") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0pjyjsdzairpn5vq8nzddhxwxmr18grn272nj31wcy2ipwdl3c3h")) + (patches (search-patches "dynaconf-Unvendor-dependencies.patch")) + (modules '((guix build utils))) + (snippet '(begin + ;; Remove vendored dependencies + (let ((unvendor '("click" "dotenv" "ruamel" "toml"))) + (with-directory-excursion "dynaconf/vendor" + (for-each delete-file-recursively unvendor)) + (with-directory-excursion "dynaconf/vendor_src" + (for-each delete-file-recursively unvendor))))))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? outputs #:allow-other-keys) + (when tests? + (setenv "PATH" + (string-append (assoc-ref outputs "out") "/bin:" + (getenv "PATH"))) + ;; These tests depend on hvac and a + ;; live Vault process. + (delete-file "tests/test_vault.py") + (invoke "make" "test_only"))))))) + (propagated-inputs + `(("python-click" ,python-click) + ("python-configobj" ,python-configobj) + ("python-dotenv" ,python-dotenv-0.13.0) + ("python-ruamel.yaml" ,python-ruamel.yaml) + ("python-toml" ,python-toml))) + (native-inputs + `(("python-django" ,python-django) + ("python-flask" ,python-flask) + ("python-pytest" ,python-pytest-6) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-mock" ,python-pytest-mock))) + (home-page "https://www.dynaconf.com/") + (synopsis "The dynamic configurator for your Python project") + (description + "This package provides @code{dynaconf} the dynamic configurator manager for +your Python project. It provides features such as: + +@itemize +@item Inspired by the @url{https://12factor.net/config, 12-factor application guide}; +@item Settings management (default values, validation, parsing, templating); +@item Protection of sensitive information (passwords/tokens); +@item Multiple file formats @code{toml|yaml|json|ini|py} and also customizable +loaders; +@item Full support for environment variables to override existing settings +(dotenv support included); +@item Optional layered system for multiple environments @code{[default, +development, testing, production]}; +@item Built-in support for Hashicorp Vault and Redis as settings and secrets storage; +@item Built-in extensions for Django and Flask web frameworks; +@item CLI for common operations such as @code{init, list, write, validate, export}. +@end itemize") + (license license:expat))) -- 2.34.0 From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 01 07:00:21 2021 Received: (at 49834-done) by debbugs.gnu.org; 1 Dec 2021 12:00:21 +0000 Received: from localhost ([127.0.0.1]:43351 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1msOHd-0004vc-0V for submit@debbugs.gnu.org; Wed, 01 Dec 2021 07:00:21 -0500 Received: from flashner.co.il ([178.62.234.194]:49404) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1msOHa-0004vO-Kh for 49834-done@debbugs.gnu.org; Wed, 01 Dec 2021 07:00:19 -0500 Received: from localhost (unknown [94.230.83.253]) by flashner.co.il (Postfix) with ESMTPSA id 91B6140417; Wed, 1 Dec 2021 12:00:12 +0000 (UTC) Date: Wed, 1 Dec 2021 13:59:31 +0200 From: Efraim Flashner To: paul Subject: Re: [bug#49834] gnu: Add dynaconf. Message-ID: Mail-Followup-To: Efraim Flashner , paul , 49834-done@debbugs.gnu.org References: <20210802181359.10695-1-goodoldpaul@autistici.org> <8f60fb97-d7d9-e72f-4b5c-ec9df20f77e4@autistici.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="gRCYOU0HnN9INmzo" Content-Disposition: inline In-Reply-To: <8f60fb97-d7d9-e72f-4b5c-ec9df20f77e4@autistici.org> X-PGP-Key-ID: 0x41AAE7DCCA3D8351 X-PGP-Key: https://flashner.co.il/~efraim/efraim_flashner.asc X-PGP-Fingerprint: A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49834-done Cc: 49834-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --gRCYOU0HnN9INmzo Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Nov 20, 2021 at 12:40:36AM +0100, paul via Guix-patches via wrote: > Dear guixers, >=20 > =C2=A0I'm sending a new patch set rebased on current master where I updat= ed > dynaconf to version 3.1.7. >=20 > Thank you for your time, Thank you for keeping up with this patch set for so long! I ended up not applying the ruamel.yaml patch since it broke some other packages, but the other 3 were no problem. Patches pushed! Thanks. --=20 Efraim Flashner =D7=A8=D7=A0=D7=A9=D7=9C=D7=A4 = =D7=9D=D7=99=D7=A8=D7=A4=D7=90 GPG key =3D A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted --gRCYOU0HnN9INmzo Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAmGnY6MACgkQQarn3Mo9 g1EqnhAAnDwfBXqzf0/dYYzpHzwIHcCYtsVR2xwA5EEN4twOLxXxDlyM1JSLSUB5 CyszSxMG50aaVWDe1ENoKUkemRyM7ChAAh9V+A7RgcXhRNyb7ZpVo1oFH0DOdpnf oUGy8cbONnnZixgJFbBETUPGRIQYyDf4AvOyJIy/kb/3IF4NzXQeURdsvLrhz0jU jrKcxXMBjfguU0OR6SK1/dIeEYw/f12GeqWQ0XU9PLbrri9+fWC+gpev9VvujqLI xvh0v2TMygGUg1Uvi6QfHo4ea1jXef3AebrBQ8F5nih6iirPBV7JRRP34HXkJ/RQ fU72NB5Kxys9zoMskNdJnimqDc2c8H9kLHm3skEx/N5pG9oLT0wa3mxKrp7oijix YmwIoWkg68a5dxVnWhnbZaFxGUH0PnYN14HKSOzhjfCu2SIcYPoCzh3lm10Ls9uA b1Uk/NxdgLfCWZryFJF+eleat/jKJQdRyeoIS+ofOu0AEPgXjCqEIN9xmN/U91qZ 9C6Z7bgg1oqdLtSaw0jcn0yiWBDuLtunwPGeTlgU3hcXLgpf9W9cv/fVrCaQJzSU cr3AGFbqpVoY6vOt2LraUTcht6FZdXQPemq9UQzyGS0745ToC84mG57CEYmzegJt UIsFwwyx5iRlFrLkiHbBzJq4hMgXVYUitbCaLc1qoqbL+5UEJIw= =BHca -----END PGP SIGNATURE----- --gRCYOU0HnN9INmzo-- From unknown Sat Jun 21 03:22:02 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 29 Dec 2021 12:24:06 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator