3.54.0
Add payment_method_nonce field to LocalPaymentCompleted webhook
Add transaction field to LocalPaymentCompleted webhook
Add LocalPaymentDetails to transactions
Among the changes, support was removed for Qt 4.
Due to issues with my local setup, this could not be tested with Qt 5 enabled
(currently not the default).
2.27.0:
* Add support for the TaxRate resource and APIs
2.26.0:
* Add support for the TaxId resource and APIs
2.25.0:
* Add support for the CreditNote resource and APIs
2.24.1:
* Fix encoding of nested parameters in multipart requests
2.24.0:
* Add delete class method on deletable API resources
* Add class methods for all custom API requests (e.g. Charge.capture)
2.23.0:
* Add support for the PaymentMethod resource and APIs
* Add support for retrieving a Checkout Session
* Add support for deleting a Terminal Location and Reader
2.22.0:
* Add stripe.util.convert_to_dict method for converting StripeObject instances to regular dicts
2.21.0:
* Add support for subscription schedules
2.20.3:
* Fix client telemetry implementation
2.20.2:
* Fix session initialization for multi-threaded environments
2.20.1:
* Make RequestsClient thread-safe
2.20.0:
* Reuse the default HTTP client by default
2.19.0:
* Rename CheckoutSession to Session and move it under the checkout namespace. This is a breaking change, but we've reached out to affected merchants and all new merchants would use the new approach.
2.18.1:
* Properly serialize individual on Account objects
## 3.1.3 (2019-03-31)
- Properly reject postings with a comment right after the flag (bug #1753)
- Make sorting order of lot information deterministic (bug #1747)
- Fix bug in tag value parsing (bug #1702)
- Remove the `org` command, which was always a hack to begin with (bug #1706)
- Provide Docker information in README
- Various small documentation improvements
The following bugs have been fixed:
Bug 639049 - Asset Barchart Report includes also the first day of next month transactions
If the original date is an end-of-month date, we take it as an
indicator they always want monthdelta dates to be end-of-months.
This works for monthly/quarterly/halfyearly/annual.
Bug 748431 - Wrong average balance for transactions during DST
Replace average-splits with custom loop, cycling through the
balancelist and splitlist, creating interval summaries along the way.
Bug 787401 - Test for the report system - HTML Tests.
Bug 795729 - Advanced Portfolio Report - Percentage rates not displaying leading zeros.
Bug 796498 - Incorrect starting balance in TXF Report calculations.
Bug 796530 - TxnCsvImport - fix loading of saved preset with update of seperator selection. Previously this would cause all but the first column to lose its assigned types.
Bug 796687 - Tax Entity name and type for an account won't work under "Tax Reporting Options" in Gnucash 3.2
Bug 796826 - Report HTML - not possible to suppress the document header.
Bug 796827 - Report HTML - it is not possible to suppress the document title.
Bug 796829 - Report HTML - HTML table rows are prepended not as list elements
Bug 796831 - Report-HTML - append table column correctly.
Bug 796877 - test-stress-options fails.
Bug 796946 - Mortgage and Loan Repayment Setup tool crashes when exiting "Loan Repayment Options" page.
Because libstdc++ on Windows doesn't support any C++ locales besides "C" and throws an exception if you try.
Bug 796952 - Report formatting (justify) is broken.
Bug 796956 - Aqbanking 6 will drop DTAUS
Adds support for the upcoming AQBanking 6 and removes support for AQBanking earlier than 5.3.4.
Bug 796965 - Change the default to show unused accounts.
Bug 796989 - some date/time does not honor user locale.
Bug 797002 - Program crashes when exporting tax data in txf format.
Bug 797011 - GnuCash 3.4 Crashes When Printing Checks with Custom Format.
Bug 797013 - Import Customers & Vendors: error in CMakeLists.txt - causes incomplete project in Xcode.
Bug 797029 - Import Customer & Vendors: blank name and company in import data row crashes GnuCash
Bug 797030 - Import Customer & Vendors: several issues with the matching of data rows.
Bug 797031 - Import customer & Vendors: import can create customer and vendors without address data
Bug 797041 - enum confusion in qoflog.
Bug 797046 - Tools / Price Database / Currencies UI not working since 3.4.
Bug 797067 - Date displayed incorrectly in register.
Bug 797074 - Reports with averages are displaying fractions
Convert amounts to decimal prior to adding to html-table. Also adds tests to make sure averages are displayed in 2 decimal places.
Bug 797098 - Quitting Gnucash shortly after clicking Save may abort file save.
Bug 797105 - Incorrect local-symbol for SZL currency
Bug 797136 - Balance sheet report "Show Exchange rate" broken when foreign currency is sold completely
For cases where total(amount)/total(value) = 0/0, the price is reported as 0.
Other repairs or enhancements not marked as bugs:
API: Add dedicated api to query build-time, version related compile constants and use it in several location in the code for consistent behaviour.
Budget: Save and restore the Account filter settings.
Build: Fix deprecation warnings for g_type_class_add_private.
CSV Tokenizer: Add additional test to guard against quote parsing regressions.
GUI: Replace ambiguous mnemonic for File>Export>Export Active Register...
GUI: Rearrange menu accelerators for Actions>Online Actions menu items
GUI: Add mnemonic for File>Import>Import Bills...
GUI: Move Balance-Forecast report to Reports>Assets & Liabilities
GUI: Move Void Transactions item in Report Options from the Accounts tab to the Filter tab.
I18N: Fix erratic localization of dates on Windows.
Date format selection on Windows relies on Windows National Language functions and those are unaffected by the POSIX setlocale(). We have in the past relied upon gtk initialization to handle this but it has not been reliable since the move to Gtk3. Note that this applies only when the locale is set via a Unix-style environment variable (typically LANG) or in the environment file; it's unnecessary and ignored when using the localization settings in Region & Language.
I18N: Unify phrases to remove untranslated msgids.
I18N: Restore the global locale after Guile munges it.
There's no way to change the environment locale on Windows so calling setlocale(LC_ALL, ""), as guile does in its init routine, reads the user's Language and Region settings instead of the environment variables. We save the discovered environment locale and call setlocale with it again after Guile has initialized.
Importing: Remove old (non-SEPA) online transaction code, because now in 2019 the banks will only offer SEPA transactions and no others. This in turn means we don't need the old ktoblzcheck checking functions at all so also remove the dependency.
Importing: Usability improvements for Bayes editor window
Remove the "Are you sure" question as it is simply annoying but does not help. Fix some string wordings to be more understandable.
Online Banking: No longer force existence of local BIC code.
Online Banking: Entering of TAN must use normal visibility
The visibility of the entered content was set to FALSE (=invisible) always, which was wrong for certain types of input as indicated by the GUI_INPUT_FLAGS. This should now be honored and visibility set to TRUE (=visible) for the correct flags.
Online Banking: Fix reconcile timestamps when importing balances.
Used to be start-of-day, but needs to be day-neutral.
Performance: Provide a single static instance of C++ locale.
We can't use std::locale::global because all streams imbue it by default and if it's not 'C' (aka std::locale::classic) then we must imbue all the streams that we don't want localized, and that's most of them.
Performance: Add GncDateTime::timestamp().
To provide a C++ implementation of gnc_date_timestamp and to avoid using the expensive and localized GncDateTime::format().
Performance: Implement a faster date-time serialization function.
Has the side effect of recording all date-times in XML files in UTC instead of local time with a timezone. This will help users who like to keep their files under version control because the time strings won't shift every time Daylight time begins or ends.
Performance: >Fix XML load CPU hotspot: Scrub.c xaccTransScrubPostedDate
The refactoring provides roughly 10% reduction in user CPU use for XML file load by moving an expensive function to within an if-clause where the result is used.
Performance: Speed-up of txn match dialog: Suspend GUI refresh during deletion of selected lines.
Performance: Sorting speed-up: Cache the bool value of Transaction's is_closing property.
Register: Accept URLs or file paths for files associated with transactions. File paths can be relative or absolute. A preference is provided.
Reports: Speed up the budget and cash flow report calculation by iterating over accounts only once.
Reports: Heavy scrubbing for code readability and performance.
Reports: New Report by Ryan Turner: Balance Forecast Report
This report forecasts the combined balances of the selected accounts based on the scheduled transactions and plots them on a line graph. You can set a "reserve" amount, which will draw a red line on the graph, so you can easily see if your forecast dips below a given value. There is also a "future minimum" line which shows what the lowest future balance will be at a given point. I find this useful in conjunction with the "target" line for planning.
Reports: Fix crash when loading saved-report with unknown choices.
If a saved-report with e.g. relative date, multichoice option is unknown, the report would crash, and the Report-Options would segfault. This commit fixes both: report-date defaults to 'today', multichoice-options defaults to default-value. Following this commit, if a report loads a saved-report or .gcm from a future version, a gnc:warn will be emitted and the report will not crash; it will use relative-date today. Multichoice will remain the default value. Report Options will not segfault. The user will be notified via a gnc:gui-warn dialog
Reports: Date intervals at end-of-month:
Instead of recursing the date, we calculate the next month using an index-based multiplier, and apply modulo/remainder as appropriate to determine the next month/year. Then we attempt to create new mktime, and if the resulting mktime's month is not as expected, reduce the mday by 1 until resulting month is correct. This fixes monthly intervals for end-of-month days. Test via monthly/quarterly deltas, and also includes leapyear calculation.
Reports: Date-grouping must allow indenting.
Indenting checkbox was erroneously disabled when: sortkey = date, date-subtotal = not 'none.
Reports: Table display
It is intuitive that if the user wishes to show the subtotal-table, and hide the transactions, then both the main (hidden) transactions and subtotals must be hidden as well.
Reports: Update US Income Tax information for 2018.
Scheme Deprecations:
account-assoc
account-hash
account-hashtable-ref
account-hashtable-set!
account-in-alist
account-in-list-pred
account-in-list?
account-same?
gnc-commodity-collector-commodity-count
gnc-commodity-collector-contains-commodity?
gnc:commodity-collectorlist-get-merged
gnc:exchange-by-pricedb-helper
gnc:exhange-by-pricevalue-helper
gnc:get-commoditylist-inst-prices
gnc:hook-run-danglers
gnc:make-drcr-collector
gnc:make-stats-collector
gnc:report-template-menu-name/name
gnc:report-template-name-to-id
gnc:report-template-new-options/name
gnc:report-template-renderer/name
gnc:restore-report
gnc:save-options
split-assoc
split-hash
split-hashtable-ref
split-hashtable-set!
split-in-list?
split-same?
Scheme: Replace account and split utility functions with SRFI-1 functions.
Scheme: Testing (create-transaction) adds price trading commodities/currency this will modify a test which was calibrated to record purchase price only. fix transaction creation to add prices for both purchase and sales, and also fix test which was assuming no sale price was bring recorded.
Scheme: Testing (env-create-multisplit-transaction) This is the general case for any transaction creation. Rewrite other transaction creation routines to use it. All tests still work unchanged, which confirms this function works well. This will allow tests to create multisplit transactions, of an arbitrary number of splits. If the list-of-split's values are not balanced (i.e. total 0), the engine will create an Imbalance-CUR split.
The motivation is to allow creation of complex multisplit multicommodity transactions eg USD50 + GBP20 (USD25) = EUR66 (USD75) as well as their prices GBP/USD = 25/20 and EUR/USD = 75/66.
* USD -50
* USD -25 = GBP -20
* USD +75 = EUR +66
This will be useful in creating tests for stock-based reports, whereby stock sales need splits in STOCK/ASSET/INCOME accounts.
Scheme: Redesign gnc:account-get-balances-at-dates, replacing the ignore-closing? parameter with a split->amount function parameter having a default value of xaccSplitgetAmount. (split->amount split) should return the amount of the split or #f; in the latter case the split is skipped. This allows for a more general account balance list accumulator with novel balance strategies. For example a split->amount function could test void status and return xaccSplitVoidForerAmount on void splits; test description/memo for some content and vary the returned amount accoridingly; or test the split and return 1 or 0 creating a counter. To recreate the ignore-closing use case pass (lambda (s) (and not (xaccTransGetIsClosingTxn (xaccSplitGetParent s))) (xaccSplitGetAcmount s)))
Scheme: Replace some option names. Automatically convert usage of the old names and issue a warning.
Updated Translations: Arabic, Croatian (New!), Farsi, French, German, Spanis, Ukrainian
Updated Account Templates: Belgium (French) (New!), Frsnce, Croatia (New!), Germany. Switzerland (French)
3.52.0
Deprecate GrantedPaymentInstrumentUpdate and add GrantorUpdatedGrantedPaymentMethod and RecipientUpdatedGrantedPaymentMethod
Add account_type support for transaction sale, verification, and payment_method create/update
* 3.1.2 (2019-02-05)
- Increase maximum length for regex from 255 to 4095 (bug #981)
- Initialize periods from from/since clause rather than earliest
transaction date (bug #1159)
- Check balance assertions against the amount after the posting (bug #1147)
- Allow balance assertions with multiple posts to same account (bug #1187)
- Fix period duration of "every X days" and similar statements (bug #370)
- Make option --force-color not require --color anymore (bug #1109)
- Add quoted_rfc4180 to allow CVS output with RFC 4180 compliant quoting.
- Add support for --prepend-format in accounts command
- Fix handling of edge cases in trim function (bug #520)
- Fix auto xact posts not getting applied to account total during
journal parse (bug #552)
- Transfer null_post flags to generated postings
- Fix segfault when using --market with --group-by
- Use amount_width variable for budget report
- Keep pending items in budgets until the last day they apply
- Fix bug where .total used in value expressions breaks totals
- Make automated transactions work with assertions (bug #1127)
- Improve parsing of date tokens (bug #1626)
- Don't attempt to invert a value if it's already zero (bug #1703)
- Do not parse user-specified init-file twice
- Fix parsing issue of effective dates (bug #1722, TALOS-2017-0303,
CVE-2017-2807)
- Fix use-after-free issue with deferred postings (bug #1723, TALOS-2017-0304,
CVE-2017-2808)
- Fix possible stack overflow in option parsing routine (bug #1222,
CVE-2017-12481)
- Fix possible stack overflow in date parsing routine (bug #1224,
CVE-2017-12482)
- Fix use-after-free when using --gain (bug #541)
- Python: Removed double quotes from Unicode values.
- Python: Ensure that parse errors produce useful RuntimeErrors
- Python: Expose journal expand_aliases
- Python: Expose journal_t::register_account
- Improve bash completion
- Emacs Lisp files have been moved to https://github.com/ledger/ledger-mode
- Fix build under MSYS (32-bit).
- Fix build under Cygwin.
- Various documentation improvements
From the release notes for version 0.16.2:
Wallet
* #13622 c04a4a5 Remove mapRequest tracking that just effects Qt display. (TheBlueMatt)
* #12905 cfc6f74 [rpcwallet] Clamp walletpassphrase value at 100M seconds (sdaftuar)
* #13437 ed82e71 wallet: Erase wtxOrderd wtx pointer on removeprunedfunds (MarcoFalke)
RPC and other APIs
* #13451 cbd2f70 rpc: expose CBlockIndex::nTx in getblock(header) (instagibbs)
* #13507 f7401c8 RPC: Fix parameter count check for importpubkey (kristapsk)
* #13452 6b9dc8c rpc: have verifytxoutproof check the number of txns in proof structure (instagibbs)
* #12837 bf1f150 rpc: fix type mistmatch in listreceivedbyaddress (joemphilips)
* #12743 657dfc5 Fix csBestBlock/cvBlockChange waiting in rpc/mining (sipa)
GUI
* #12432 f78e7f6 [qt] send: Clear All also resets coin control options (Sjors)
* #12617 21dd512 gui: Show messages as text not html (laanwj)
* #12793 cf6feb7 qt: Avoid reseting on resetguisettigs=0 (MarcoFalke)
Build system
* #13544 9fd3e00 depends: Update Qt download url (fanquake)
* #12573 88d1a64 Fix compilation when compiler do not support __builtin_clz* (532479301)
Tests and QA
* #13061 170b309 Make tests pass after 2020 (bmwiedemann)
* #13192 79c4fff [tests] Fixed intermittent failure in p2p_sendheaders.py (lmanners)
* #13300 d9c5630 qa: Initialize lockstack to prevent null pointer deref (MarcoFalke)
* #13545 e15e3a9 tests: Fix test case streams_serializedata_xor Remove Boost dependency. (practicalswift)
* #13304 cbdabef qa: Fix wallet_listreceivedby race (MarcoFalke)
Miscellaneous
* #12887 2291774 Add newlines to end of log messages (jnewbery)
* #12859 18b0c69 Bugfix: Include for std::unique_ptr (luke-jr)
* #13131 ce8aa54 Add Windows shutdown handler (ken2812221)
* #13652 20461fc rpc: Fix that CWallet::AbandonTransaction would leave the grandchildren, etc. active (Empact)
From the release notes for version 0.16.3:
Consensus
* #14249 696b936 Fix crash bug with duplicate inputs within a transaction (TheBlueMatt, sdaftuar)
RPC and other APIs
* #13547 212ef1f Make signrawtransaction* give an error when amount is needed but missing (ajtowns)
Miscellaneous
* #13655 1cdbea7 bitcoinconsensus: invalid flags error should be set to bitcoinconsensus_err (afk11)
Documentation
* #1384411b9dbb correct the help output for -prune (hebasto)
This also fixes a denial-of-service vulnerability (CVE-2018-17144). It is
exploitable by miners and has been discovered in Bitcoin Core versions 0.14.0
up to 0.16.2. It is recommended to upgrade any of the vulnerable versions to
0.16.3 as soon as possible.
XXX pull-up (security fix)
3.51.0
Add Hiper card type support
Add Hipercard card type support
Add bin to PaymentMethodNonceDetails
Clarify support for Python versions 3.6.x and 3.7.x
Add Error indicating pdf uploads too long for dispute evidence.
Add GrantedPaymentMethodRevoked webhook response objects
2.18.0:
* Add configurable telemetry to gather information on client-side request latency
2.17.0:
* Add support for Checkout sessions
2.16.0:
* Add support for account links
2.15.0:
* Add support for providing custom CA certificate bundle
2.14.0:
* Add support for Review for Radar
2.13.0:
* Add support for ValueList and ValueListItem for Radar
2.12.1:
* Make StripeResponse a new-style class
2.12.0:
* Add new API endpoints for the Invoice resource.
2.11.1:
* Bump minimum requests version to 2.20.0 (for [CVE-2018-18074](https://nvd.nist.gov/vuln/detail/CVE-2018-18074))
2.11.0:
* Add support for the Person resource
* Add support for the WebhookEndpoint resource
2.10.1:
* Correct behavior of stripe.max_network_retries if it's reset after initial use
2.10.0:
* Add support for Stripe Terminal
2.9.0:
* Rename FileUpload to File
2.8.1:
* Don't URL-encode square brackets
* Integer-index encode all arrays
2.8.0:
* Add support for automatic network retries
2.7.0:
* Add support for reporting resources
2.6.0:
* Add support for usage record summaries
2.5.0:
* Remove unsupported Bitcoin endpoints (this is technically a breaking change, but we're releasing as a minor version because none of these APIs were usable anyway)
2.4.0:
* Add cancel support for topups
* Add support for file links
2.3.0:
* Add support for Sigma scheduled query run objects
2.2.0:
* Add support for Stripe Issuing
2.1.0:
* Add InvoiceLineItem class
2.0.3:
* Internal improvements to ApiResource.class_url
2.0.2:
* Avoid duplicate dependency on requests with Python 2.7
2.0.1:
* Fix setup.py
2.0.0:
Major version release. List of backwards incompatible changes to watch out for:
* The minimum Python versions are now 2.7 / 3.4. If you're using Python 2.6 or 3.3, consider upgrading to a more recent version.
* Stripe exception classes should now be accessed via stripe.error rather than just stripe
* Some older deprecated methods have been removed
* Trying to detach an unattached source will now raise a stripe.error.InvalidRequestError exception instead of a NotImplementedError exception
Pull requests included in this release:
* Drop support for Python 2.6 and 3.3
* Use py.test for tests
* Remove deprecated code
* Remove util.json and use json module directly everywhere
* Update setup.py and test flow
* Use pipenv
* Change exception when detaching unattached sources from NotImplementedError to stripe.error.InvalidRequestError
3.4 - 30 December 2018
o Convert help documents to use XInclude instead of SYSTEM entities
o Convert Guide and its translations to use XInclude instead of
SYSTEM entities
o Drop old DocBook xsl 1.75.2 stylesheet
o Base gnucash custom style sheet on DocBook xsl 1.79.2
o Add DocBook xsl v1.79.2
o Extract common entity declarations into a custom DTD
This custom DTD is based on the DocBook V4.5 DTD and is intended
to be used by all our documentation xml files.
o Update to DocBook XML spec 4.5
3.4 - 30 December 2018
The following bugs have been fixed:
Bug 498072 - GnuCash show taxes on invoice when individual taxes is
not checked
Bug 760825 - On duplicating a bill, the entry dates should be set to
the bill date, not to the current date - followup:
Use neutral time on entry post dates instead of canonical time
Bug 767772 - Associated file with transaction is lost when moving entry
between accounts
Bug 775580 - Inaccurate information provided for "Common Accounts" when
using "New Account Hierarchy Setup"
Bug 779565 - Treeview header combos do not work at first load
Bug 788332 - Last Reconcile Date column sorts by day of month not date
Bug 789674 - Close Book tool regression
Bug 793156 - Incorrect date sort order in Generic import matcher window
Bug 795080 - Some dates reset to 01/01/1970
Bug 795237 - Update of "wohnungsw" template
Bug 795425 - Version 2018 of german account template SKR49
Bug 796772 - Receivable Ageing Report invalid URL for Totals column
Bug 796806 - Crash after OFX import if line item dragged
Bug 796842 - Add new employee window may not fit on screen
Bug 796849 - Load another QIF file causes "that file already loaded" dialog
Bug 796875 - Unable to use arrow keys to advance past pre-filled text
in register
Bug 796878 - test-qofsession fails on x86_32.
Bug 796883 - Register text oddities
HOME and END need to be treated like right and left arrow
keys.
Bug 796886 - OFX Import does not show source account in the transaction
matching window
Bug 796887 - Remove account slot key color if there is no valid color
Bug 796893 - invoice.GetDatePosted() and other date related functions
returns strange values for uninitalised dates.
Bug 796896 - Button to complete an export not intuitively placed or
discoverable
Bug 796903 - Crash when searching invoice by Invoice Owner
Bug 796914 - Customer Summary is giving error
Bug 796915 - Update Account colour background
Bug 796940 - Invalid transaction date-posted KVP causes date-posted to
not be saved.
Bug 796944 - Tab navigation From Company Address field in New Book Options
Bug 796945 - Search Search Criteria window does not scroll when added
criteria exceed a certain amount
Bug 796948 - Scheduled Transactions Entered Since Last Run Are not Visible
Bug 796949 - Incorrect conversion of 0,01 USD to EUR
Bug 796960 - Incorrect amount sort order in Generic import matcher window
Bug 796961 - Can't overwrite existing MYSQL database, V3.3.
Bug 796967 - gnclock table not removed when using PostgreSQL.
Bug 796978 - Deleting a split of same account as register cancels the
transaction without warning
Bug 796981 - Gnucash crashes with critical error when selecting another
file
Bug 796982 - Import Bills & Invoices: change in un_escape() routine
causes description and notes fields to be mangled.
Bug 796988 - Untranslated string in CSV transaction importer
Bug 796989 - some date/time does not honor user locale
Bug 796994 - Unable to generate Tax Report because of pricedb error
Other repairs or enhancements not marked as bugs:
Set up filepath utils to determine the GNC_CONFIG_HOME in the same way
as GNC_DATA_HOME
Until now GNC_CONFIG_HOME was more or less hard-coded. Now it can be
set via environment variable GNC_CONFIG_HOME. In addition it will
automatically be created to avoid potential user confusion.
Redesign gnc-uri-utils
gnc_uri_get_components will now return NULL as protocol if the input
is a normal file system path instead of a uri (it used to
return 'file')
gnc_uri_get_protocol will now return NULL if the input is a normal
file system path instead of a uri (it used to return 'file')
gnc_uri_is_file_protocol now returns FALSE if protocol is NULL
(it used to return TRUE)
gnc_uri_is_file_uri now returns FALSE if input is a normal file
system path instead of a uri (it used to return TRUE)
a new function gnc_uri_targets_local_fs will return TRUE only if
its input is either a file uri or a normal file system path.
This function is now mostly used instead of
gnc_uri_is_file_uri in the current code base
a new function gnc_uri_is_uri is added to check whether its input
is a valid uri (has protocol, path and hostname for non-file
uris)
refer to 'scheme' instead of 'protocol' as that's the more formal
term used in uris
This involves renaming 3 functions:
gnc_uri_get_protocol -> gnc_uri_get_scheme
gnc_uri_is_known_protocol -> gnc_uri_is_known_scheme
gnc_uri_is_file_protocol -> gnc_uri_is_file_scheme
The *_protocol variants are marked as deprecated.
Additionally a number of local variables have been renamed from
protocol to scheme to support this change.
Show warnings for deprecated declarations
We're about to announce our own set of deprecated functions in
libgnucash. That would be pretty pointless if we also would silence
all deprecation warnings at the same time...
More report code-cleanup by Chris Lam, including deprecating the
following functions:
gnc:account-get-balance-at-date
gnc:account-get-total-flow
gnc-commodity-numeric-string
gnc-commodity-value->string
gnc:double-col
gnc:options-add-include-subaccounts
gnc:options-add-group-accounts
gnc:options-add-currency-selection
The following modules are deprecated:
report-system/collectors
report-system/report-collectors
Invoice: Remove H1 title and superflous option.
Printing the title twice is silly, so remove the option and the
H1 display of the title. Note that the remaining title is in a
div named "invoice-title" so it can be styled with CSS as the user
pleases from the Report Options Layout tab.
The preference, use formal accounting labels does not update the header
With a register open and you change preference 'use formal
accounting labels' it does not update the register header so add
a call back for the preference.
Make the grid lines of totals Budget tree view track the preferences
Make the grid lines of the totals tree view track the preferences
to match the account tree view above it.
Add routine to fix Account Color being set to "Not Set"
Previously the account color slot has been populated with
"Not Set" when any field for the account has been edited and
saved. This routine should run once and remove all such entries.
Performance fix in dom_chars_handler: use g_strndup instead of g_strdup
In the appdata/metadata file, rename the ID from org.gnucash.Gnucash
to org.gnucash.GnuCash to match flathub, and add a launchable ID
to link it to the desktop file.
Added double-click-on-file for the CSV transaction, price, and account
importers and exporters.
Cleaned up a variety of issues reported by the clang static analyzer.
Allow the text options widget to use all remaining space
The text option widget used for report options has only about 3
lines visible currently and will not use any available space in
the dialogue. Change the packing for this widget to expand and
fill the remaining dialogue space. If there are more than one text
option widget on a page then the available space will be shared
equally.
Add short_labels for a few toolbar buttons with long names. That should
fit a few more buttons on the toolbar.
Update iso-4217-currencies.xml, adddding VES - Bolivar Soberano, minor
updates of other VE currencies.
Python 3 bindings fixes and improvements from Christoph Holterman and
Sumit Bhardwaj.
3.50.0
Add fraud_service_provider field to risk_data
Add authorization_expires_at to Transaction
Remove invalid transaction tests
Allow PayPal payment ID and payer ID to be passed during transaction create
Add travel_flight support to industry-specific data
Add processor_response_type to Transaction, AuthorizationAdjustment, and CreditCardVerification.
Between 3.2 and 3.3, the following bugfixes were accomplished:
• Bug 771667 - Different warnings when changing reconciled splits vs. splits linked to reconciled splits.
• Bug 784420 - "Save changes on closing" window waits 2^32 seconds when "Time to wait for answer" is set 0.
• Bug 786708 - GnuCash won't load currency fractions larger than 1000000. Also create larger fractions for the account dialog.
• Bug 787439 - Segmentation Fault in Transfer dialog after clearing Date field and pressing escape.
• Bug 789594 - Unable to overwrite sqlite3 database file.
• Bug 792446 - Mixed languages in error dialog.
• Bug 794526 - Python bindings can't find loadable modules.
• Bug 794755 - Commodity Register displays fractional prices.
• Bug 794870 - If no book is opened, gnucash still asks if the user wants to save changes when opening a file.
• Bug 795821 - GnuCash could not obtain the lock for file://C:\Users\username\Documents\GnuCash\2.6.21\xxxx\xxxx.gnucash
• Bug 796054 - Unposting and reposting invoice doubles amounts.
• Bug 796137 - query.search_for outputs critical qof.object errors and prevents queries being run.
• Bug 796248 - Editing Scheduled Transaction.
• Bug 796474 - Segmentation fault while setting up online banking.
• Bug 796509 - Saved reports don't respect *some* 'Edit report options'.
• Bug 796579 - Cannot go forward with empty duplicates screen.
• Bug 796665 - Backspace Key Inoperable After Ctrl+V.
• Bug 796669 - Dark Theme Text Colors Hard to Read.
• Bug 796724 - Can't overwrite gnucash DB on MariaDB.
• Bug 796725 - 4 of 6 Date Posted options fail to return matching transactions.
• Bug 796734 - Auto-complete entry not highlighting to allow for incremental entry.
• Bug 796737 - Patch to restore gncmod-python.c.
• Bug 796739 - Toolbar buttons have no labels.
• Bug 796751 - reconcile window usability - R column should be next to Amount.
• Bug 796755 - buggy window handling at startup.
• Bug 796756 - OFX import fails to recognize associated income accounts.
• Bug 796759 - --add-price-quotes leaves a lock on the file.
• Bug 796762 - Scrollbar partially hides the delete button in the Saved Report Configurations window.
• Bug 796766 - Credit note creating 'imbalance' with wrong entries.
• Bug 796777 - CVE-2008-1391: Integer overflow in included strfmon function.
• Bug 796788 - Strange behaviour in options of multicolumn report.
• Bug 796792 - SaveAs Overwrite dialogue in background and not visible.
• Bug 796812 - gnc_date_cell_get_date and gnc_date_cell_get_date_gdate have different date validation behaviour.
• Bug 796813 - Date validation inconsistent.
• Bug 796814 - Changing a book's read-only threshold doesn't immediately affect open registers.
• Bug 796816 - Notes field in Duplicate Invoice dialogue is 'read-only'.
• Bug 796819 - Bad icon with Spanish localization.
• Bug 796820 - References to 'Gnome Bugzilla' should be changed to 'GnuCash Bugzilla'.
• Bug 796833 - Excel csv Format misprocessed.
• Bug 796839 - Find transaction won't filter on Date Posted.
• Bug 796858 - TypeError: in method 'qof_query_int32_predicate', argument 2 of type 'gint32' on gnucash.gnucash_core.QueryInt32Predicate.
3.48.0:
Add ID to Transaction in SubscriptionChargedSuccessfully test webhook
Fix dispute results in transactions not showing the correct status sometimes
Add Elo card type support
3.47.0
Add processor respone code and processor response text to authorization adjustments subfield in transaction response.
Add support for Samsung Pay
Each R package should include ../../math/R/Makefile.extension, which also
defines MASTER_SITES. Consequently, it is redundant for the individual
packages to do the same. Package-specific definitions also prevent
redefining MASTER_SITES in a single common place.
Bitcoin is a decentralized P2P electronic cash system without a central
server or trusted parties. Users hold the crypto keys to their own money
and transact directly with each other, with the help of the network to
check for double-spending.
pyfolio is a Python library for performance and risk analysis of
financial portfolios developed by Quantopian Inc. It works well with
the Zipline open source backtesting library. At the core of pyfolio is
a so-called tear sheet that consists of various individual plots that
provide a comprehensive image of the performance of a trading
algorithm.
New features since 0.2.1:
- Integration with Pyfolio. It is now possible to simulate a portfolio
using the input alpha factor and analyze the performance with
Pyfolio.
- Added new API utils.get_clean_factor to run Alphalens with returns
instead of prices
- Changed color palette to improve the visual experience for
colorblind users
- Standard deviation bars optional in
tears.create_event_returns_tear_sheet
- Alphalens now properly handles intraday factors
Performing substitutions during post-patch breaks tools such as mkpatches,
making it very difficult to regenerate correct patches after making changes,
and often leading to substituted string replacements being committed.
Documentation changes:
• Bug 796098 - V 3.1 Missing images in Tutorial and Concepts Guide in PDF and Online Help pages.
• Bug 795980 - Void Reason Has No Visible Purpose.
Between 3.0 and 3.2, the following bugfixes were accomplished:
• Bug 787401 - Test Report System - Report Definition.
• Bug 794617 - Can't compile with -DWITH_GNUCASH=NO due to scm-gnome-utils.
• Bug 795101 - Scroll Bar in Reconcile Window Floats in and covers the check boxes.
• Bug 795247 - datepicker broken in Persian. GnuCash passes dates as integer y/m/d without using locale-specific formats, so we need to strip out 'E' and 'O' from the format when scanning dates or determining separators in gnc-date. None of '-', 'E', or 'O' are supported by boost (and '-' causes errors), so strip them out from formatters in gnc-datetime as well.
• Bug 795253 - Have problems input Chinese.
• Bug 795272 - QIF importer causes application crash if action is invalid.
• Bug 795276 - Invalid date on price stops file from being parsed.
• Bug 795362 - Special variable "i" not parsed in function calls. Due to balance tests with insane random values.
• Bug 795471 - Impossible to Edit Budget Unless Maximized.
• Bug 795519 - Credit card payment after reconciliation.
• Bug 795666 - Backslash '\' in Description field spoils CSV Import without helpful error message.
• Bug 795831 - When read only threshold set, dates are silently changed. Display a message box informing the user of the change.
• Bug 795944 - Cannot store change to Business Suppliers data.
• Bug 796079 - Repeatable Crash in Tax Report Options.
• Bug 796081 - Tax Schedule Report - An error occurred while running the report.
• Bug 796083 - Reconcile Selection Doesn't Work Anymore.
• Bug 796117 - Connecting 3.1 to an existing mysql db drops all data. Provide a backup recovery function that instead of dropping primaries and restoring backups merges the primaries and backups. This should handle a worst-case safe-save failure where the backup tables don't have a complete set of rows for some reason.
• Bug 796256 - Main Window stays hidden when starting after closing main window while minimized.
• Bug 796369 - Notes lost or perhaps just not displaying when using SQLite backend. This bug caused data loss if you saved your SQLite3 database to a different file or database. The problem is that in SQLite3 (though not in MySQL or PgSQL) the subquery ((SELECT DISTINCT guid FROM transactions)) (note the double parentheses) returns only the first guid in the subquery's results. Some transactions are loaded by special queries and those queries are also used to retrieve the transaction's slots so they weren't affected.
• Bug 796398 - Restrict accelerator keys to valid date range.
• Bug 796409 - Incorrect Current Value for Stocks. Missed calculating the value in the register summary bar.
• Bug 796423 - Cannot Input Chinese, seems does not work with other IME too. Toggles not in view with all rows selected weren't being redrawn.
• Bug 796484 - csv import: iostream error. Unfortunately it turns out that we can't use filestreams because they can't take path arguments containing Unicode on Windows.
• Bug 796527 - invalid currency on scheduled transactions.
• Don't even check for price/exchange rate on template transactions, there's no point.
• Check all split commodities are valid, abort transaction creation if not.
• If the template transaction's currency isn't used by any of the splits set the new transaction's currency to the first-found currency if there is one, otherwise to the first-found commodity.
• Bug 796537 - Transaction Report cannot sort by "num".
• Bug 796586 - QIF import incorrectly converts unicode characters from UTF8 encoded file.
• Bug 796595 - QIF Import Select Account button to add a new account is labled gnc-account-new but should be New.
• Bug 796600 - stock split cash-in-lieu income/asset labels backwards.
• Bug 796614 - Reconciliation report contains incorrect transactions.
• Bug 796638 - configuration not properly saved for CSV transactions import form.
The Following fixes and improvemts were not associated with bug reports:
• Transaction report improvements:
• Performance: Do all filtering ops before sorting.
• Move the options summary before the subtotals table.
• New unit tests
• Enable computing averages in subtotal grid.
• Generate the subtotal grid only if the primary sort key enables subtotals.
• Fix subtotal grid to support multiple commodities.
• New filters.
• Much cleaning and refactoring of the internals.
• Cache the num-split-action book option to avoid thousands of KVP queries for the same value when loading a register.
• Create a static string for book option KVPs to save an extra malloc/free on old compilers without small-string optimization.
• Add tooltip support for register cells.
• New unit tests for the balance sheet report and invoices.
• Consolidate charting code into a single module.
• Removed an incomplete and abandoned C implementation of QIF import.
• Restored libsecret support that had been left out of CMake.
• Replace old-style html style attributes with css.
• Modify emitted html to be parseable by the Guile SXML module for testing.
• Remove support for long-gone gtkhtml renderer.
• Clean up code generating html tables.
• Ensure full precision of doubles is saved to SQL. std::iostream's operator<<(double) uses only 6 digits of precision by default.
• Make float database operations more consistent, working around dbd-sqlite3's failure to support doubles (dbd-sqlite3, not sqlite3 itself).
• Prevent crash in gnc-tree-view.c: When getting information from the state file, protect against the key not having a '_' which is used to split the string.
• Add the full account name to the saved register settings If you need to delete the layout for a register in the settings file, the only thing identifying it is the account guid. To make it easier for humans, add the full account name also.
• When register pages are restored it uses the full account name. When register pages are restored, the account is found from the full name so if the separator changes it will fail. Instead, also save the account guid and use that as default to find the account falling back to the full name.
• Fix misplaced try block that caused unhandled exception if year out of range.
• Fix permanent storage of vendor details: Since the data types did not match for the billterms and taxtable, those references/guids were not saved to the database.
• Update invoice reports to use totals calculate by gncInvoice. This should give a consistent representation of invoice data across the application.
• Ensure gncEntry rounding is consistent. Internally calculated values in the entry are never rounded. Consumers of gncEntry's calculated values can request them either rounded or not. Next use a pragmatical approach for calculating values on invoices based on the entry values: do the rounding such that we never create an unbalanced transaction while posting. That means:
• round each entry's net value before summing them in net total
• accumulate all tax totals on invoice level per tax account before rounding
and round before before summing them in a global tax total Hopefully this will catch a few more rounding issues in this area. A complete solution can only offered if we allow users to manually correct tax entries. This requires changes to user interface and data format so that's not going to happen in gnucash 3.x.
• Use Scheme SRFI-64 test framework for new Scheme unit tests.
• New compilers (gcc-8.0 and Xcode 9) bring new warnings, so several fixups to mollify them.
• Lowercase all cmake commands for better readability.
• Metadate migration (2.6.x->3.x) fixes for Windows.
• Ensure timezone is set correctly in FreeBSD.
The following translations are updated: Dutch
3.46.0:
Allow payee ID to be passed in options params for transaction create
Add merchant_id alias to ConnectedMerchantStatusTransitioned and ConnectedMerchantPayPalStatusChanged Auth webhooks
The QuantLib project is aimed at providing a comprehensive software
framework for quantitative finance. QuantLib is a free/open-source
library for modeling, trading, and risk management in real-life.
QuantLib is written in C++ with a clean object model, and is then
exported to different languages such as C#, Objective Caml, Java,
Perl, Python, GNU R, Ruby, and Scheme. An AAD-enabled version is also
available. The reposit project facilitates deployment of object
libraries to end user platforms and is used to generate QuantLibXL, an
Excel addin for QuantLib, and QuantLibAddin, QuantLib addins for other
platforms such as LibreOffice Calc. Bindings to other languages and
porting to Gnumeric, Matlab/Octave, S-PLUS/R, Mathematica,
COM/CORBA/SOAP architectures, FpML, are under consideration.
Backtrader is a feature-rich Python framework for backtesting and
trading. It allows you to focus on writing reusable trading
strategies, indicators and analyzers instead of having to spend time
building infrastructure.
3.1 - 29 April 2018
The second release of the 3.0 stable series.
The following bugs have been fixed:
Bug 118391 - Long currency names untranslated
Bug 769686 - Notes not imported when using update and reconcile in
import transactions from CSV
Bug 772776 - VERY large queries (over 11000 fields in IN clause) slow
down GnuCash
Bug 782144 - git-master - Save Corrupts Data File / Not Open Data File
Bug 792105 - Startup takes several minutes
Bug 793461 - Transaction matcher window blank when importing QFX
Bug 794767 - Dates default to 01/01/1970
Bug 794916 - Fails to find environment file at startup when installation
prefix is '/opt'
Bug 794936 - 3.0 does not open previously saved sqlite3 files properly
- corrupted business data
Bug 794941 - Both print icons export to pdf
Bug 794953 - Ellipsize on short tab labels
Correct error on when to ellipsize tab labels. Also as this
is used in two places separate out this to new function so
it is not duplicated.
Bug 794990 - Double click does not work on saved reports
When you double click on the saved report description nothing
happens. This was down to a conflict on a couple of call
backs and one of them was incorrectly setup.
Bug 794994 - Display Alphavantage key in full
Set the entry to expand so all the space is used to display.
Bug 795031 - 3.0 Crashes on loading when opening 2.6.19 file
Bug 795039 - Crash on startup using Technicolor Style sheet in report
Bug 795040 - GnuCash crashes when searching for a newly created bill
Bug 795049 - GnuCash 2.6.20-1 (Fedora Linux package) is unable to open
MariaDB.
Bug 795064 - Enable subtotal-only if either sortkeys are dates
This will allow 'show subtotals only' if sortkeys are
date-types. This allows, for example, prime-sortkey=date,
yearly. sec-sortkey=date, monthly.
Bug 795068 - src/optional/python-bindings missing several files
Bug 795080 - Some dates reset to 01/01/1970
An odd corner case: BST apparently came off of DST at 23:00
26 Oct 2014, so midnight that day was ambiguous about being
DST or not; that causes the local_date_time constructor to
throw in spite of the tm.is_dst element being 0 (meaning pick
standard time). Instead of just failing in that case, try
constructing a local_date_time three hours later then adjust
it back three hours. If *that* doesn't work then throw a
std::invalid argument.
Bug 795082 - CSV import crashes if a transaction's 'Account' field is
empty and no default Account set
Bug 795101 - Scrollbar floats and covers toggle buttons
When the scrollbar appears for the reconcile windows it can
float above the reconcile toggle button which make it
difficult to toggle. Move this column to the start which has
the advantage of aligning the amount column above the Total
value.
Bug 795142 - Unable to enter account codes in business sheets
In Bills, Invoices and Expense vouchers you can not enter an
account code in an account field like you can on a normal
register, enable this.
Bug 795155 - CSV import does not distinguish between deposit and withdrawal
Bug 795347 - Australian (GMT+10) OFX transactions imported have previous
days date
Bug 795377 - Reads and saves Gnucash 2.6.19 XML file, then can't reread
it, due to bad date in old file
Bug 795389 - Hard to see figures in the budget window
The budget view had hard coded black for normal values and
dark grey for other values. Changed this so normal values
are reset to default color and adjusted the grey based on
default color for theme.
Bug 795405 - All Dates in Price Database Off-By-One After 3.0 Upgrade
Bug 795446 - On Windows there is a blank tip of the day
When the tip_of_the_day.list is created a new line is
appended to the list file and on Windows this causes a blank
tip so remove the adding of the extra line.
Bug 795471 - Budget window scrolls edited cell out of site
When editing cells that have been revealed on the right by
scrolling the window snaps back to the left hiding the cell
being edited. This may be due to an underlying gtk issue
but these changes fix the issue visually.
Other repairs or enhancements not marked as bugs:
On Windows the tooltip for saved reports was incorrect
When the mouse was placed over a saved report description on Windows an
empty tooltip was displayed. Setup the query tooltip callback so it does
not display a tooltip for description column.
Fix crash when loading sql book with posted transactions
Add ability to recognize and use a pre-compiled libgmock.so.
html-font: add default font family
Windows ships with GTK2 in which the default font styles are named
"Sans" "Sans Bold" "Sans Normal" etc. There is no "Sans" font in
Windows; I vote to add a default "Sans-Serif" font-family which is
valid CSS. This ensures exported reports are shown as intended.
Several improvements to the Transaction and GST reports.
csv-impport - Allow empty amount fields
Treat empty amount fields as 0. This is necessary for example in
the case the csv import file has both a deposit and a withdrawal
column.
Remove the set transient parent setting for Reconcile window
The Reconcile option is already a window so it is not necessary to set
this value which allows the jump to transaction to work properly.
Date Format dialog flashes up when file/properties used
When you select the File/Properties dialog, in the construction of that
a 'Date Format' dialog flashes up while the date component is moved to
the properties dialog. Can mainly be seen on Windows so remove the
visible setting in glade file.
Prevent throw in gnc-pricedb.
If a price lookup is given an invalid time64/timespec (i.e. INT64_MAX)
then just return NULL instead of trying to find the nearest price.
Set GNC_VCS at build time instead of when making the tarball.
Because the tarball is always made from a VCS repo.
If there are no prices in the db, critical errors are flagged
When dialog transfer is used between two commodities and there are no
prices in the db a critical error is logged. Test for price object
being NULL before retrieving the price for the error message.
The following translations are updated: Slovak, Spanish
Known Problems:
It is not possible to overwrite SQL Databases from within GnuCash, even
though GnuCash will ask if you want to. Bug 789594
Several dates, including Accounting Period, are subject to change with
time zone and daylight-time changes. Bug 791825
Some HBCI information is not loaded correctly so the first transaction
download will re-retrieve transactions unless the beginning date is
set explicitly. Bug 792397.
The new CSV importer's Price of Shares column doesn't work. Bug 793306
The new CSV importer's numeric parser can't parse numbers of the form
x + y/z. Bug 793556.
Python bindings may not work in some installations because the bindings
are unable to find the backend modules (libgncmod-backend-dbi and
libgncmod-backend-xml). Bug 794526
Get Quotes can be slow if one has a large number of saved prices.
Bug 794644.
The Mac localization code can set the wrong encoding for strftime causing
the register's date picker to label months "Null" in some locales.
Bug 794807
On Mac, the File Open dialog will crash if one types anything.
(This is a Gtk+ bug). Bug 794809
An open register is not immediately updated when the Since Last Run
dialog creates transaction splits in the register's account. Bug 794854
GnuCash asks if one wants to save changes when quitting or opening a file
even if there's no book open. Bug 794870
Windows Defender falsly identifies the GnuCash installer as a Trojan.
Bug 794967
Some Windows users have trouble using Chinese input methods on the
Register; other controls work. Bug 795253
On Microsoft Windows the Tab key does not work in the register if the
caps-lock key is on. Bug 795294
GnuCash will crash if one attempts to import a CSV file with more than
1400 transactions. Bug 795383
Invalid input into a formula (Debit/Credit) field is inconsistent
depending on the input. Bug 795614.
Notable changes since 1.8.0:
* From version 1.9.0 onwards, the urllib was substituted by pythons
request library that is thread safe. If you have any error, post an
issue.
3.0 - 1 April 2018
o Correct field format in python-import-fields.
o German translation of Transactions chapter.
o Bug 122895 - general ledger should be named journal
o Bug 634181 - Inserting Part designations overall
o Bug 608098 - Document Transaction Rpt, including how to handle splits
o Clarify that creating a postponed SX will use the original date.
o Remove 'Remainder To' from loan assistant page 2.
o Bug 760407 - Note account separator isn't always a colon.
o Update partial date entry documentation based on new default behaviour
o Bug 762088 - Remove Section 9.4.3 From Guide
o New Russian translation o fthe guide.
o Fix chm mapfile target and cleanfiles.
The mapfile target would fail if the directory was already built,
apparently not recognizing that its target was complete.
Cleanfiles was missing several build targets.
o New Transaction Report section in Guide
o Replace some screenshots with new ones reflecting Gtk3.
The GnuCash development team announces GnuCash 2.6.21, the twenty-second and final, final maintenance release in the 2.6-stable series.
Between 2.6.19 and 2.6.21, the following bugfixes were accomplished:
* Bug 795049 - GnuCash 2.6.20-1 (Fedora Linux package) is unable to open MariaDB database.
* Bug 795068 - src/optional/python-bindings missing several files.
* Bug 795078 - missing _inflateValidate symbol has recurred in 2.6.20 on MacOS.
Between 2.6.19 and 2.6.20, the following bugfixes were accomplished:
* Bug 765846 - Expense Over Time for subaccounts: An error occurred while running the report: Fix crash if acc-depth too low.
* Bug 791848 - GC 2.6.x does not handle ISO dates introduced with GC 2.7 Enable reading ISO-formatted dates, recognize GNC_FEATURE_SQLITE3_ISO_DATES.
* Bug 792008 - gnucash 2.6.19 fails to build Replace g_assert_true with g_assert for now
* Bug 793278 - wrong data in charts with accumulated values (like "net-linechart", "net-barchart" and "liabilities barchart")
* Bug 794030 - relative date functions compute wrong day of month
* Bug 790526 - Mathematical bug This change will fix 'num-of-weeks-since-1/jan/1970' which formerly used quotient to remove the fractional part of the division. For negative values of num-of-weeks, the number is truncated in the wrong direction (i.e. towards 0). This change uses floor instead to ensure the num-of-weeks found is the nearest integer LESS than the fractional number.
Some other fixes not associated with reported bugs:
* Online HBCI actions: Remove outdated non-SEPA menu items.
* Add XML namespaces for all Account Hierarchy Templates.
* General cleanup of Account Hierarchy Templates.
* Fix auto-selection of splits in reconcile. Really use all splits of any given day. Up to now usually the splits of the given date were not or not all included, as the time comparison didn't correctly ignore any given time-of-day of the splits. Instead, all possible time-of-days should be included.
* Properly detect git in case of linked worktree.
* Account Hierarchy for India: Set LANGUAGE=hi and LANG=en_IN to access it.
* Improve Import menu entries Customer & vendors use same menu label as others, replace template by tooltip, add ellipsis to entry, add comments to distinguish "Import" as verb and substantive.
* Provide preference panel to set the Alpha Vantage API key needed for Finance::Quote.
* Correct the appstream definition to match the current spec.
* Fix collectors and min-date handling in reports.
The GnuCash development team proudly announces GnuCash 3.0, the
first release in our new 3.x stable series.
New Features for Users:
The headline item for this release is that GnuCash now uses
the Gtk+-3.0 Toolkit and the WebKit2Gtk API. This change was
forced on us by some major Linux distributions dropping support
for the WebKit1 API. Unfortunately the Webkit project doesn't
support Microsoft Windows so that platform will continue to
use the WebKit1 API, though with Gtk3. We've selected Gtk+-3.14.0
as the minimum version because it fully supports CSS theming.
New editors to remove outdated or incorrect match data from
the import maps, a new user interfacs for managing files
associated with transactions, an improved facility for removing
old prices from the price database, and a way to remove deleted
files from the history list in the file menu.
New Reports: A Reconciliation Report based on the Transaction
Report,a Income GST Report, and a Cashflow Barchart report.
A new CSV importer largely rewritten in C++, adding new features
including the ability to re-import CSV files exported from
GnuCash, along with a separate CSV price importer.
A new preference panel for the Alphavantage API key so that
Finance::Quote users need not edit /etc/gnucash/environment.
We've removed all references to the various Yahoo! quote sources
and made Alphavantage the default.
Data file directories are now located appropriately to the operating system's conventions by default:
Windows: CSIDL_APPDATA/Gnucash
MacOS: $HOME/Application Support/Gnucash
Linux: $XDG_CONFIG_HOME/gnucash (or the default $HOME/.config/gnucash)
It's still possible to overried with the environment variable GNC_DOC_PATH, which replaces GNC_DOT_DIR in earlier versions of GnuCash.
Accounts in the Bayes import map are now linked by GUID instead
of names so that the matcher won't have to be retrained if you
rename an account. The Bayesian import maps are also stored in
a flatter structure to allow faster access, especially in SQL.
These changes mean that if you have Bayesian mapping data, once
converted your database will be loadable only by GnuCash 2.6.20
and later.
MySQL and SQLite3 date storage has changed a bit. Once converted,
MySQL and SQLite3 database will be loadable only by GnuCash
2.6.19 and later.
Numerics are rewritten to allow for more significant digits.
The old 6-digit-maximum fraction is now 9-digits, and prices
may have up to 18 digit precision.
Chart Reports appearance is improved, including more modern
chart colours as suggested by http://clrs.cc/.
Transaction Report improvements, including regular expression
filtering and many more options and features including a
"Subtotal Summary Grid" The subtotal summary-grid will tabulate
subtotals - prime-sortkey vertically, sec-sortkey horizontally.
For example, with prime-sortkey = accounts, sec-sortkey = date,
sec-subtotal = monthly will produce a monthly time series table.
The About dialog box layout is improved and now includes the
detected Finance::Quote version.
GnuCash will always build the locale-specific tax modules. This
was optional when building with autotools and never enabled
when building with cmake. Note that the only supported tax
locales are en_US and de_DE.
On Macs the Reconcile Window's menu moved to the menubar.
GnuCash no longer supports Guile-1.8 and now does support Guile-2.2
From finance/gnucash, to make space for new major version 3.
GnuCash is a personal finance manager. A check-book like register
GUI allows you to enter and track bank accounts, stocks, income
and even currency trades. A full set of reports allow you to see
the state of your finances. The interface is designed to be simple
and easy to use, but is backed with double-entry accounting principles
to ensure balanced books. Features include:
- Scheduled Transactions
- Small Business Accounting Features
- OFX and Quicken File Import and HBCI Support
- Reconcile window with running reconciled and cleared balances
- Stock/Mutual Fund Portfolios
- Get Stock & Mutual Fund quotes from various web sites, update
portfolio automatically (more funds being added regularly).
- Reports
- Multiple Currencies & Currency Trading
- New Multi-Currency Transaction Handling
- Chart of Accounts
- Split Transactions
- Double Entry
- Income/Expense Account Types (Categories)
- General Ledger
- International date handling, many different translations.
This package contains the old major version 2 of gnucash.
3.43.0
Add oauth_access_revocation to WebhookNotifications
Add support for customer_id, disbursement_date and history_event_effective_date in DisputeSearch
Remove sepa_mandate_type and sepa_mandate_acceptance_location params from ClientToken
Add support for VCR compelling evidence dispute representment
This package provides a collection of functions to valuate basic
options. This includes the generalized Black-Scholes option, options
on futures and options on commodity futures.
This package provides a collection of functions to explore and to
investigate basic properties of financial returns and related
quantities. The covered fields include techniques of explorative data
analysis and the investigation of distributional properties, including
parameter estimation and hypothesis testing. Even more there are
several utility functions for data handling and management.
This package provides a class and various tools for financial time
series. This includes basic functions such as scaling and sorting,
subsetting, mathematical operations and statistical functions.
3.41.0
Deprecated LineItem/DiscountAmountMustBeGreaterThanZero error in favor of DiscountAmountCannotBeNegative
Deprecated LineItem/UnitTaxAmountMustBeGreaterThanZero error in favor of UnitTaxAmountCannotBeNegative
Add support for tax_amount field on transaction line_items
Add support for source_merchant_id on webhooks
Add find_all static method to TransactionLineItem class
New features since 0.1.0:
- Added event study analysis: an event study is a statistical method
to assess the impact of a particular event on the value of equities
and it is now possible to perform this analysis through the API
alphalens.tears.create_event_study_tear_sheet. Check out the
relative NoteBook in the example folder.
- Added support for group neutral factor analysis (group_neutral
argument): this affects the return analysis that is now able to
compute returns statistics for each group independently and
aggregate them together assuming a portfolio where each group has
equal weight.
- utils.get_clean_factor_and_forward_returns has a new parameter
max_loss that controls how much data the function is allowed to drop
due to not having enough price data or due to binning errors
(pandas.qcut). This gives the users more control on what is
happening and also avoid the function to raise an exception if the
binning doesn't go well on some values.
- Greatly improved API documentation