From 483710969f2f764830a5570841b477e05342c9e140dee11a046d8899432974fe Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 30 Mar 2023 08:26:53 +0000 Subject: [PATCH] osc copypac from project:devel:languages:haskell:ghc-9.4.x package:hledger-interest revision:6, using keep-link OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/hledger-interest?expand=0&rev=25 --- hledger-interest.cabal | 127 +++++++++++++++++++++++++++++++++++++++ hledger-interest.changes | 6 ++ hledger-interest.spec | 10 +++ 3 files changed, 143 insertions(+) create mode 100644 hledger-interest.cabal diff --git a/hledger-interest.cabal b/hledger-interest.cabal new file mode 100644 index 0000000..ee26ca9 --- /dev/null +++ b/hledger-interest.cabal @@ -0,0 +1,127 @@ +Name: hledger-interest +Version: 1.6.5 +x-revision: 1 +Synopsis: computes interest for a given account +License: BSD3 +License-file: LICENSE +Author: Peter Simons +Maintainer: Peter Simons +Homepage: https://github.com/peti/hledger-interest +Category: Finance +Build-type: Simple +Cabal-version: >= 1.10 +Extra-source-files: README.md +Stability: stable +tested-with: GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.4, GHC == 8.10.7, + GHC == 9.0.2, GHC == 9.2.5, GHC == 9.4.4 + +Description: + hledger-interest is a small command-line utility based on Simon + Michael's hleder library. Its purpose is to compute interest for a + given ledger account. Using command line flags, the program can be + configured to use various schemes for day-counting, such as act\/act, + 30\/360, 30E\/360, and 30\/360isda. Furthermore, it supports a (small) + number of interest schemes, i.e. annual interest with a fixed rate and + the scheme mandated by the German BGB288 (Basiszins fuer + Verbrauchergeschaefte). Extending support for other schemes is fairly + easy, but currently requires changes to the source code. + . + As an example, consider the following loan, stored in a file called + @test.ledger@: + . + > 2008/09/26 Loan + > Assets:Bank EUR 10000.00 + > Liabilities:Bank + > + > 2008/11/27 Payment + > Assets:Bank EUR -3771.12 + > Liabilities:Bank + > + > 2009/05/03 Payment + > Assets:Bank EUR -1200.00 + > Liabilities:Bank + > + > 2010/12/10 Payment + > Assets:Bank EUR -3700.00 + > Liabilities:Bank + . + Suppose that loan earns 5% interest per year, and payments amortize + interest before amortizing the principal claim, then the resulting + ledger would look like this: + . + > $ hledger-interest --file=test.ledger --source=Expenses:Interest --target=Liabilities:Bank --30-360 --annual=0.05 Liabilities:Bank + > 2008/09/26 Loan + > Assets:Bank EUR 10000.00 + > Liabilities:Bank + > + > 2008/11/27 Payment + > Assets:Bank EUR -3771.12 + > Liabilities:Bank + > + > 2008/11/27 5.00% interest for EUR -10000.00 over 61 days + > Liabilities:Bank EUR -84.72 + > Expenses:Interest + > + > 2008/12/31 5.00% interest for EUR -6313.60 over 34 days + > Liabilities:Bank EUR -29.81 + > Expenses:Interest + > + > 2009/05/03 Payment + > Assets:Bank EUR -1200.00 + > Liabilities:Bank + > + > 2009/05/03 5.00% interest for EUR -6343.42 over 123 days + > Liabilities:Bank EUR -108.37 + > Expenses:Interest + > + > 2009/12/31 5.00% interest for EUR -5251.78 over 238 days + > Liabilities:Bank EUR -173.60 + > Expenses:Interest + > + > 2010/12/10 Payment + > Assets:Bank EUR -3700.00 + > Liabilities:Bank + > + > 2010/12/10 5.00% interest for EUR -5425.38 over 340 days + > Liabilities:Bank EUR -256.20 + > Expenses:Interest + > + > 2010/12/31 5.00% interest for EUR -1981.58 over 21 days + > Liabilities:Bank EUR -5.78 + > Expenses:Interest + . + Running the utility with @--help@ gives a brief overview over the + available options: + . + > Usage: hledger-interest [OPTION...] ACCOUNT + > -h --help print this message and exit + > -V --version show version number and exit + > -v --verbose echo input ledger to stdout (default) + > -q --quiet don't echo input ledger to stdout + > --today compute interest up until today + > -f FILE --file=FILE input ledger file (pass '-' for stdin) + > -s ACCOUNT --source=ACCOUNT interest source account + > -t ACCOUNT --target=ACCOUNT interest target account + > -I --ignore-assertions ignore any failing balance assertions + > --act use 'act' day counting convention + > --30-360 use '30/360' day counting convention + > --30E-360 use '30E/360' day counting convention + > --30E-360isda use '30E/360isda' day counting convention + > --constant=RATE constant interest rate + > --annual-schedule=SCHEDULE schedule of annual interest rates. + > syntax: '[(Date1,Rate1),(Date2,Rate2),...]' + > --annual=RATE annual interest rate + > --bgb288 compute interest according to German BGB288 + +Source-Repository head + Type: git + Location: https://github.com/peti/hledger-interest.git + +Executable hledger-interest + default-language: Haskell2010 + Main-is: Main.hs + Build-depends: base >= 3 && < 5, hledger-lib >= 1.26 && < 1.30, time, mtl, Cabal, Decimal, text + other-modules: Hledger.Interest + Hledger.Interest.DayCountConvention + Hledger.Interest.Rate + Paths_hledger_interest diff --git a/hledger-interest.changes b/hledger-interest.changes index 1cd1fe8..2ffeacd 100644 --- a/hledger-interest.changes +++ b/hledger-interest.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Mar 14 07:36:02 UTC 2023 - Peter Simons + +- Update hledger-interest to version 1.6.5 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + ------------------------------------------------------------------- Mon Jan 16 11:44:38 UTC 2023 - Peter Simons diff --git a/hledger-interest.spec b/hledger-interest.spec index 202963b..6edd7a0 100644 --- a/hledger-interest.spec +++ b/hledger-interest.spec @@ -23,13 +23,22 @@ Summary: Computes interest for a given account License: BSD-3-Clause URL: https://hackage.haskell.org/package/%{name} Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.tar.gz +Source1: https://hackage.haskell.org/package/%{name}-%{version}/revision/1.cabal#/%{name}.cabal BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-Cabal-prof BuildRequires: ghc-Decimal-devel +BuildRequires: ghc-Decimal-prof +BuildRequires: ghc-base-devel +BuildRequires: ghc-base-prof BuildRequires: ghc-hledger-lib-devel +BuildRequires: ghc-hledger-lib-prof BuildRequires: ghc-mtl-devel +BuildRequires: ghc-mtl-prof BuildRequires: ghc-rpm-macros BuildRequires: ghc-text-devel +BuildRequires: ghc-text-prof BuildRequires: ghc-time-devel +BuildRequires: ghc-time-prof ExcludeArch: %{ix86} %description @@ -88,6 +97,7 @@ German BGB288. %prep %autosetup +cp -p %{SOURCE1} %{name}.cabal %build %ghc_bin_build