diff --git a/.gitignore b/.gitignore index 6b1aec6..2a4504c 100644 --- a/.gitignore +++ b/.gitignore @@ -48,6 +48,8 @@ MANIFEST # Per-project virtualenvs .venv*/ +# user scripts +.scripts + # testdata -/tests/testdata/ /tests/data/ \ No newline at end of file diff --git a/README.md b/README.md index 34c0f1d..27f656d 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,6 @@ *Earth Observation (EO) data, I must read.* ## Description - *yeoda* stands for **y**our **e**arth **o**bservation **d**ata **a**ccess and provides lower and higher-level data cube classes to work with well-defined and structured earth observation data. These data cubes allow to filter, split and load data independently from the way the data is structured on the hard disk. Once the data structure is known to *yeoda*, it offers a user-friendly interface to access the data with the aforementioned operations. @@ -22,18 +21,21 @@ These grid packages can simplify and speed up spatial operations to identify til ## Limitations and Outlook At the moment the functionality of *yeoda* is limited in terms of flexibility with different file types, bands and -tiles, e.g. you can only load data from one tile and one band. This will change in the future by allowing to load data also independent from tile boundaries, bands and file types. +tiles, e.g. you can only load data from one tile and one band. This will change in the future by allowing to load data also independently from tile boundaries, bands and file types. Most changes will take place in *veranda* and *geospade*, so the actual interface to the data given by *yeoda* should stay approximately the same. + ## Installation The package can be either installed via pip or if you solely want to work with *yeoda* or contribute, we recommend to -install it as a conda environment. +install it as a conda environment. If you work already with your own environment, please have look at ``requirements.txt``. + ### pip -To install *yeoda* via pip in you own environment, use: +To install *yeoda* via pip in your own environment, use: ``` pip install yeoda ``` + ### conda -The packages also comes along with an own conda environment (``conda_env.yml``). +The packages also comes along with two conda environments, one for Linux (``conda_env_linux.yml``) and one for Windows (``conda_env_windows.yml``). This is especially recommended if you want to contribute to the project. The following script will install miniconda and setup the environment on a UNIX like system. Miniconda will be installed into ``$HOME/miniconda``. @@ -41,7 +43,7 @@ like system. Miniconda will be installed into ``$HOME/miniconda``. wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh bash miniconda.sh -b -p $HOME/miniconda export PATH="$HOME/miniconda/bin:$PATH" -conda env create -f conda_env.yml +conda env create -f conda_env_linux.yml source activate yeoda ``` This script adds ``$HOME/miniconda/bin`` temporarily to the ``PATH`` to do this @@ -55,7 +57,7 @@ For Windows, use the following setup: You can find the ``condabin`` folder usually under: ``C:\Users\username\AppData\Local\Continuum\miniconda3\condabin`` * Finally, you can set up the conda environment via: ``` - conda env create -f conda_env.yml + conda env create -f conda_env_windows.yml source activate yeoda ``` diff --git a/conda_env_linux.yml b/conda_env_linux.yml index 124523e..77818a4 100644 --- a/conda_env_linux.yml +++ b/conda_env_linux.yml @@ -8,6 +8,7 @@ dependencies: - netCDF4 - xarray - dask + - pip - pip: - geopandas>=0.6.1 - pytileproj==0.0.12 diff --git a/conda_env_win.yml b/conda_env_windows.yml similarity index 100% rename from conda_env_win.yml rename to conda_env_windows.yml diff --git a/docs/install.rst b/docs/install.rst index 9fd5177..0ec6ce4 100644 --- a/docs/install.rst +++ b/docs/install.rst @@ -3,12 +3,12 @@ Installation ============ The package can be either installed via pip or if you solely want to work with *yeoda* or contribute, we recommend to -install it as a conda environment. +install it as a conda environment. If you work already with your own environment, please have look at ``requirements.txt``. pip === -To install *yeoda* via pip in you own environment, use: +To install *yeoda* via pip in your own environment, use: .. code-block:: console @@ -16,7 +16,7 @@ To install *yeoda* via pip in you own environment, use: conda ===== -The packages also comes along with an own conda environment (``conda_env.yml``). +The packages also comes along with two conda environments, one for Linux (``conda_env_linux.yml``) and one for Windows (``conda_env_windows.yml``). This is especially recommended if you want to contribute to the project. The following script will install miniconda and setup the environment on a UNIX like system. Miniconda will be installed into ``$HOME/miniconda``. @@ -26,7 +26,7 @@ like system. Miniconda will be installed into ``$HOME/miniconda``. wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh bash miniconda.sh -b -p $HOME/miniconda export PATH="$HOME/miniconda/bin:$PATH" - conda env create -f conda_env.yml + conda env create -f conda_env_linux.yml source activate yeoda This script adds ``$HOME/miniconda/bin`` temporarily to the ``PATH`` to do this @@ -45,7 +45,7 @@ For Windows, use the following setup: .. code-block:: console - conda env create -f conda_env.yml + conda env create -f conda_env_windows.yml source activate yeoda diff --git a/requirements.txt b/requirements.txt index d251ca8..d320358 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,16 @@ -# remaining and currently not officially released requirements +# Required packages needed to be installed with conda (preferably from the conda-forge channel): +# python=3.6 +# gdal=2.4.3 +# geopandas>=0.6.1 # Note that at the moment geopandas needs to be installed with pip under Linux +# regex +# netCDF4 +# xarray +# dask +# pip + +# remaining and currently not officially released requirements: +pytileproj==0.0.12 +Equi7Grid==0.0.10 git+https://github.com/TUW-GEO/veranda.git@master git+https://github.com/TUW-GEO/geopathfinder.git@master diff --git a/setup.cfg b/setup.cfg index c5b6c70..6bb6f19 100644 --- a/setup.cfg +++ b/setup.cfg @@ -33,16 +33,6 @@ package_dir = =src # DON'T CHANGE THE FOLLOWING LINE! IT WILL BE UPDATED BY PYSCAFFOLD! setup_requires = pyscaffold>=3.1a0,<3.2a0 -# Add here dependencies of your project (semicolon/line-separated), e.g. - -install_requires = - regex - netCDF4 - geopandas>=0.6.1 - xarray - dask - pytileproj==0.0.12 - Equi7Grid==0.0.10 # The usage of test_requires is discouraged, see `Dependency Management` docs # tests_require = pytest; pytest-cov