{ "info": { "author": "Jefferson Campos", "author_email": "jefferson@jeffersoncampos.eti.br", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# GNUCash Magical Importer\n\n[![Build Status](https://travis-ci.org/foguinhoperuca/gnucash_magical_importer.svg?branch=master)](https://travis-ci.org/foguinhoperuca/gnucash_magical_importer)\n\nSet of scripts to manage my personal finance with gnucash. This project have many parsers to gnucash file. The intent is integrate diferents data sources into gnucash data file.\n\nThe gnucash's xml file will act as transaction database. All other reports will be born from Parsers.\n\n## Source of Information\n\n* Nubank credit card\n* Itau's checking account\n* CEF's savings\n* Gnucash mobile (untracked expenses: money in wallet, gifts, etc)\n* ~~Bradesco's savings~~\n\n# Requirements\n\n* Cronjob to run integrations\n* From any data source, all transactions must be integrate into one file\n* one file with git commits\n* Report of imported files\n* Save gnucash's xml file as regular file instead of binary (compressed) - it can be achived with option file-compression=false in [general section of gnucash configuration](test/fixtures/gnucash.conf \"Example configuration\")\n\n# Financial Management\n\n## Source of transactions\n\n* Itau Checking Account\n* CEF savings\n* Money in wallet\n* Nubank\n* ~~Bradesco savings~~\n\n# Classifier\n\n## Main goal\n\n* Single transaction\n\n## More Complex Operations\n\n* A transaction that's is part of another big transaction (a buy with stallments)\n* Monthly (recurrent) payment: HAVAN, RCHLO and utilities bill (gas, water, eletricity)\n\n# Enviroment\n\n## Virtualenv\n\nIt can't be used with virtualenv beacause of dependency on python3-gnucash deb package and gnucash itself.\nSo, you'll need install direct in OS with command:\n```\njefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ pip3 install -r requirements.txt\n```\n\n## Configuration File\n\nThis project have a [setup.cfg](../../setup.cfg) file ([ini format](https://docs.python.org/3/library/configparser.html \"Offical doc.\")) that must be installed to app run. The order of search is:\n\n1. /etc/gnucash-magical-importer/setup.cfg\n2. /usr/local/etc/gnucash-magical-importer/setup.cfg\n3. /usr/etc/gnucash-magical-importer/setup.cfg\n4. ~/.gnucash-magical-importer/setup.cfg\n\nYou can still with make target **setup-cfg** as:\n\n```shell\njefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ make setup-cfg\n```\n\nAlso, you can remove file with targt **remove-cfg** and view content of directories with target **show-cfg**.\n\n## Docker\n\nFor dev machine, you can use docker to development. Build docker with\n```\njefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ sudo docker build -t foguinhoperuca/gnucash_magical_importer . --build-arg USE_APT_PROXY=True --build-arg APT_PROXY=192.168.1.101:8000\n```\nor\n```\njefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ make docker_build\n```\n\nThen, run the tests with:\n\n```\njefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ docker run -ti foguinhoperuca/gnucash_magical_importer /bin/sh -c \"make test-check\"\n```\nor\n```\njefferson@nami.jeffersoncampos.eti.br: ~/universal/projects/gnucash/gnucash-magical-importer/ $ make docker_run\n```\n\n# Hacking with bdsit-wheel\n\n1. manually create egg-info bdsit (bdist_egg) and copy it with expected name as gnucash_magical_importer-0.1.0-py3.6.egg-info in directory build/bdsit.linux-x86_64/wheel;\n2. Comment lines in python3 source code: sudo vim /usr/lib/python3.6/email/message.py#558 and #559;\n3. Then, run python3 setup.py sdist bdist_wheel;\n4. finally, revert step 2;\n\nhttps://github.com/pypa/wheel/blob/master/wheel/bdist_wheel.py\n\n# Similar Projects\n\n* https://github.com/tdf/pygnclib\n* https://github.com/hjacobs/gnucash-fiximports\n* https://github.com/hjacobs/gnucash-qif-import\n* https://krzysztofzuraw.com/blog/2016/makefiles-in-python-projects.html\n* https://github.com/sdementen/gnucash-utilities\n* https://github.com/wesabe/fixofx (has a fakeofx.py to genarete fixtures)\n* https://gist.github.com/foguinhoperuca/ef11a07937e531b5d0e98271f1422de5 (css style for doc)", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/foguinhoperuca/gnucash_magical_importer", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "gnucash-magical-importer", "package_url": "https://pypi.org/project/gnucash-magical-importer/", "platform": "", "project_url": "https://pypi.org/project/gnucash-magical-importer/", "project_urls": { "Homepage": "https://github.com/foguinhoperuca/gnucash_magical_importer" }, "release_url": "https://pypi.org/project/gnucash-magical-importer/0.1.0/", "requires_dist": null, "requires_python": ">=3.6", "summary": "Parse data source (ofx, qif, csv, etc.) and import to Gnucash file.", "version": "0.1.0" }, "last_serial": 4636506, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "7b6b7b0087ff9d103d092b298fd7ea77", "sha256": "ba0ea88647b226becef7c39bd2883d0de18c609b53baad9116c92843f29c02fd" }, "downloads": -1, "filename": "gnucash_magical_importer-0.1.0-py3.6.egg", "has_sig": false, "md5_digest": "7b6b7b0087ff9d103d092b298fd7ea77", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.6", "size": 30871, "upload_time": "2018-12-27T01:31:16", "url": "https://files.pythonhosted.org/packages/25/5f/61e9378db9018fe2b71480bdf0971877480b9e5e108aca7b79533cd7d9b9/gnucash_magical_importer-0.1.0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "38954e4bb2503b9ff82a6f5472ab96b4", "sha256": "787738886dcff0c6321c4e5ec9050fa0a070db3f0f23b6dde625df45283b7fca" }, "downloads": -1, "filename": "gnucash_magical_importer-0.1.0.tar.gz", "has_sig": false, "md5_digest": "38954e4bb2503b9ff82a6f5472ab96b4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 12842, "upload_time": "2018-12-27T01:31:19", "url": "https://files.pythonhosted.org/packages/84/4e/dba46ac2fe26e1e1ea7be9d781cfe5779a1ad5eda71469372323c10da82b/gnucash_magical_importer-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7b6b7b0087ff9d103d092b298fd7ea77", "sha256": "ba0ea88647b226becef7c39bd2883d0de18c609b53baad9116c92843f29c02fd" }, "downloads": -1, "filename": "gnucash_magical_importer-0.1.0-py3.6.egg", "has_sig": false, "md5_digest": "7b6b7b0087ff9d103d092b298fd7ea77", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": ">=3.6", "size": 30871, "upload_time": "2018-12-27T01:31:16", "url": "https://files.pythonhosted.org/packages/25/5f/61e9378db9018fe2b71480bdf0971877480b9e5e108aca7b79533cd7d9b9/gnucash_magical_importer-0.1.0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "38954e4bb2503b9ff82a6f5472ab96b4", "sha256": "787738886dcff0c6321c4e5ec9050fa0a070db3f0f23b6dde625df45283b7fca" }, "downloads": -1, "filename": "gnucash_magical_importer-0.1.0.tar.gz", "has_sig": false, "md5_digest": "38954e4bb2503b9ff82a6f5472ab96b4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 12842, "upload_time": "2018-12-27T01:31:19", "url": "https://files.pythonhosted.org/packages/84/4e/dba46ac2fe26e1e1ea7be9d781cfe5779a1ad5eda71469372323c10da82b/gnucash_magical_importer-0.1.0.tar.gz" } ] }