Name | metapack JSON |
Version |
0.9.36
JSON |
| download |
home_page | https://pyscaffold.org/ |
Summary | Parse and manipulate structured data and metadata in a tabular format. |
upload_time | 2023-09-28 18:14:46 |
maintainer | |
docs_url | None |
author | Eric Busboom |
requires_python | |
license | mit |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
.. image:: https://travis-ci.org/Metatab/metapack.svg?branch=master
:target: https://travis-ci.org/Metatab/metapack
Metapack, Metatab Data Packaging
================================
Parse and manipulate structured data and metadata in a tabular format.
`Metatab <http://metatab.org>`_ is a data format that allows structured
metadata -- the sort you'd normally store in JSON, YAML or XML -- to be stored
and edited in tabular forms like CSV or Excel. Metatab files look exactly like
you'd expect, so they are very easy for non-technical users to read and edit,
using tools they already have. Metatab is an excellent format for creating,
storing and transmitting metadata. For more information about metatab, visit
http://metatab.org.
Metapack is a packaging system that uses Metatab to create Zip, Excel and
filesystem data packages.
This repository has a Python module and executable. For a Javascript version,
see the `metatab-js <https://github.com/CivicKnowledge/metatab-js>`_ repository.
See the `documentation for full details <http://docs.metatab.org/>`_
Install
-------
Metapack requires geographic libraries, most importantly gda, pyproj, shapely
and geopandas. These libraries can be difficult to install, often requiring
compilation. By far, the easiest way to install them properly is with Anaconda.
And, because, metapack has a lot of dependencies, you'll want to install it in
a virtual environment. Metapack only works with Python 3.5 or later:
.. code-block:: bash
$ conda create --name metapack python=3.7
$ conda activate metapack
$ conda install numpy pandas gdal geos pyproj=1.9.5.1 fiona shapely geopandas
$ pip install metapack
Verify that the install worked by running `` mp config``
Getting Started
---------------
See `Getting Started
<https://github.com/CivicKnowledge/metatab-py/blob/master/docs/GettingStarted.rst>`_ for an initial tutorial, or the other guides in the `docs directory on
Github <https://github.com/CivicKnowledge/metatab-py/tree/master/docs>`_
Development Notes
-----------------
Clearing the Cache
++++++++++++++++++
Some tests can pass despite errors if the file the test is looking for is
cached. The cache can be set with an evironmental variable and cleared before
the tests to solve this problem
.. code-block:: bash
$ cache_dir=/tmp/some/dir
$ rm -rf $cache_dir
$ mkdir -p $cache_dir
$ APPURL_CACHE=$cache_dir python setup.py test
Development Testing with Docker
+++++++++++++++++++++++++++++++
Testing during development for other versions of Python is a bit of a pain,
since you have to install the alternate version, and Tox will run all of the
tests, not just the one you want.
One way to deal with this is to install Docker locally, then run the docker
test container on the source directory. This is done automatically from the
Makefile in appurl/tests
.. code-block:: bash
$ cd metapack/metapack/test
$ make build # to create the container image
$ make shell # to run bash the container
You now have a docker container where the /code directory is the appurl source
dir. Since the Docker container is running code from your host machine, you can
edit it normally.
Now, run tox to build the tox virtual environments, then enter the specific
version you want to run tests for and activate the virtual environment.
To run one environment. for example, Python 3.4
.. code-block:: bash
# tox -e py34
To run one test in one environment environment. for example, Python 3.4
.. code-block:: bash
# tox -e py34 -- -s
Raw data
{
"_id": null,
"home_page": "https://pyscaffold.org/",
"name": "metapack",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "Eric Busboom",
"author_email": "eric@civicknowledge.com",
"download_url": "https://files.pythonhosted.org/packages/c1/16/046b73df28ddce945f058190d23fced602e20a6afa307550efe19930e54d/metapack-0.9.36.tar.gz",
"platform": "any",
"description": ".. image:: https://travis-ci.org/Metatab/metapack.svg?branch=master\n :target: https://travis-ci.org/Metatab/metapack\n\nMetapack, Metatab Data Packaging\n================================\n\nParse and manipulate structured data and metadata in a tabular format.\n\n`Metatab <http://metatab.org>`_ is a data format that allows structured\nmetadata -- the sort you'd normally store in JSON, YAML or XML -- to be stored\nand edited in tabular forms like CSV or Excel. Metatab files look exactly like\nyou'd expect, so they are very easy for non-technical users to read and edit,\nusing tools they already have. Metatab is an excellent format for creating,\nstoring and transmitting metadata. For more information about metatab, visit\nhttp://metatab.org.\n\nMetapack is a packaging system that uses Metatab to create Zip, Excel and\nfilesystem data packages.\n\nThis repository has a Python module and executable. For a Javascript version,\nsee the `metatab-js <https://github.com/CivicKnowledge/metatab-js>`_ repository.\n\nSee the `documentation for full details <http://docs.metatab.org/>`_\n\n\nInstall\n-------\n\nMetapack requires geographic libraries, most importantly gda, pyproj, shapely\nand geopandas. These libraries can be difficult to install, often requiring\ncompilation. By far, the easiest way to install them properly is with Anaconda.\nAnd, because, metapack has a lot of dependencies, you'll want to install it in\na virtual environment. Metapack only works with Python 3.5 or later:\n\n.. code-block:: bash\n\n $ conda create --name metapack python=3.7\n $ conda activate metapack\n $ conda install numpy pandas gdal geos pyproj=1.9.5.1 fiona shapely geopandas\n $ pip install metapack\n\n\nVerify that the install worked by running `` mp config``\n\n\nGetting Started\n---------------\n\nSee `Getting Started\n<https://github.com/CivicKnowledge/metatab-py/blob/master/docs/GettingStarted.rst>`_ for an initial tutorial, or the other guides in the `docs directory on\nGithub <https://github.com/CivicKnowledge/metatab-py/tree/master/docs>`_\n\nDevelopment Notes\n-----------------\n\nClearing the Cache\n++++++++++++++++++\n\nSome tests can pass despite errors if the file the test is looking for is\ncached. The cache can be set with an evironmental variable and cleared before\nthe tests to solve this problem\n\n\n.. code-block:: bash\n\n $ cache_dir=/tmp/some/dir\n $ rm -rf $cache_dir\n $ mkdir -p $cache_dir\n $ APPURL_CACHE=$cache_dir python setup.py test\n\n\nDevelopment Testing with Docker\n+++++++++++++++++++++++++++++++\n\nTesting during development for other versions of Python is a bit of a pain,\nsince you have to install the alternate version, and Tox will run all of the\ntests, not just the one you want.\n\nOne way to deal with this is to install Docker locally, then run the docker\ntest container on the source directory. This is done automatically from the\nMakefile in appurl/tests\n\n\n.. code-block:: bash\n\n $ cd metapack/metapack/test\n $ make build # to create the container image\n $ make shell # to run bash the container\n\nYou now have a docker container where the /code directory is the appurl source\ndir. Since the Docker container is running code from your host machine, you can\nedit it normally.\n\nNow, run tox to build the tox virtual environments, then enter the specific\nversion you want to run tests for and activate the virtual environment.\n\nTo run one environment. for example, Python 3.4\n\n.. code-block:: bash\n\n # tox -e py34\n\nTo run one test in one environment environment. for example, Python 3.4\n\n.. code-block:: bash\n\n # tox -e py34 -- -s\n",
"bugtrack_url": null,
"license": "mit",
"summary": "Parse and manipulate structured data and metadata in a tabular format.",
"version": "0.9.36",
"project_urls": {
"Homepage": "https://pyscaffold.org/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c116046b73df28ddce945f058190d23fced602e20a6afa307550efe19930e54d",
"md5": "461d80ef830ef5eab2ce28475945098f",
"sha256": "577f921aac0e0e746d3d6d026345f11f9f6b2db361a8daff4c9d535e4b0a969e"
},
"downloads": -1,
"filename": "metapack-0.9.36.tar.gz",
"has_sig": false,
"md5_digest": "461d80ef830ef5eab2ce28475945098f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 148336,
"upload_time": "2023-09-28T18:14:46",
"upload_time_iso_8601": "2023-09-28T18:14:46.713090Z",
"url": "https://files.pythonhosted.org/packages/c1/16/046b73df28ddce945f058190d23fced602e20a6afa307550efe19930e54d/metapack-0.9.36.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-09-28 18:14:46",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "metapack"
}