diff --git a/HISTORY.rst b/HISTORY.rst
index 53636341926a1b1c63753625f28451aa9b1d3634..fe4096184f2c0b0fd75839175f134702c309f890 100644
--- a/HISTORY.rst
+++ b/HISTORY.rst
@@ -2,6 +2,13 @@
 History
 =======
 
+1.2.3 (2024-07-29)
+-------------------
+* Add logpath to default_config.json
+* Add default_config and data to package
+* remove non necessary dependencies
+* install dependencies via conda if possible
+
 1.2.2 (2024-07-23)
 -------------------
 * Add GitHub release pipeline to CI.
diff --git a/MANIFEST.in b/MANIFEST.in
index e8f37ad21e9fe20ff8638beaed9ca7aac472f631..f277787895260702eb6a8fb3c31a16b16808ee20 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -9,3 +9,4 @@ recursive-exclude * __pycache__
 recursive-exclude * *.py[co]
 
 recursive-include docs *.rst conf.py Makefile make.bat *.jpg *.png *.gif
+recursive-include data *.zip default_config.json
diff --git a/data/default_config.json b/data/default_config.json
index 13038c8d2d9dfb77bc2af8ec04ce40c851c2484f..c123af6d88fcea533c49c8d809ed9b7f27a8f534 100644
--- a/data/default_config.json
+++ b/data/default_config.json
@@ -29,7 +29,7 @@
                 13.073049,
                 52.383835
             ],
-            "apply_SCL_band_mask": true,
+            "apply_SCL_band_mask": false,
             "SCL_filter_values": [
                 3,
                 7,
@@ -52,7 +52,8 @@
             "download_data": true,
             "download_thumbnails": false,
             "download_overviews": false,
-            "logging_level": "INFO"
+            "logging_level": "INFO",
+            "path_to_logfile": "data/data_output/"
         }
     },
     "s2_settings": {
diff --git a/s2downloader/config.py b/s2downloader/config.py
index 5f38a154a1c985e1ef57cb15b0fcc0af23609b2b..4a13eb004191465c52b004ebee97a5dd1ae49650 100644
--- a/s2downloader/config.py
+++ b/s2downloader/config.py
@@ -287,6 +287,11 @@ class ResultsSettings(BaseModel, extra='forbid'):
         description="Logging level, it should be one of: DEBUG, INFO, WARN, or ERROR.",
         default="INFO"
     )
+    path_to_logfile: Optional[str] = Field(
+        title="Path to the logfile directory.",
+        description="Path to the directory, where the logfile should be stored. Logfile name is s2DataDownloader.log",
+        default=results_dir
+    )
 
     @field_validator('logging_level')
     def checkLogLevel(cls, v):
@@ -295,9 +300,9 @@ class ResultsSettings(BaseModel, extra='forbid'):
             raise ValueError("Logging level, it should be one of: DEBUG, INFO, WARN, or ERROR.")
         return v
 
-    @field_validator('results_dir')
+    @field_validator('results_dir', 'path_to_logfile')
     def checkFolder(cls, v):
-        """Check if output folder location is defined - string should not be empty."""
+        """Check if folder location is defined - string should not be empty."""
         if v == "":
             raise ValueError("Empty string is not allowed.")
         if os.path.isabs(v) is False:
diff --git a/s2downloader/s2downloader.py b/s2downloader/s2downloader.py
index c03b203cc5f93b822a7b5781c6b0960dd387fa97..9c463035d94a6d568ffe852a10d6e1aed6410379 100644
--- a/s2downloader/s2downloader.py
+++ b/s2downloader/s2downloader.py
@@ -176,12 +176,13 @@ def downloadMosaic(*, config_dict: dict):
     download_thumbnails = result_settings['download_thumbnails']
     download_overviews = result_settings['download_overviews']
     target_resolution = result_settings['target_resolution']
+    logging_dir = result_settings['path_to_logfile']
     logging_level = logging.getLevelName(result_settings['logging_level'])
 
     logFormatter = logging.Formatter("[%(levelname)-5.5s]  %(message)s")
     logger = logging.getLogger(__name__)
 
-    fileHandler = logging.FileHandler("{0}/{1}.log".format(result_dir, "s2DataDownloader"), mode='w')
+    fileHandler = logging.FileHandler("{0}/{1}.log".format(logging_dir, "s2DataDownloader"), mode='w')
     fileHandler.setFormatter(logFormatter)
     logger.addHandler(fileHandler)
 
diff --git a/s2downloader/version.py b/s2downloader/version.py
index 31af82653cd54e88faf8b7bd0efd7458f9045054..a6f1217ad15d509bcdf8f292ea5fc286a86d9e96 100644
--- a/s2downloader/version.py
+++ b/s2downloader/version.py
@@ -20,5 +20,5 @@
 # limitations under the License.
 """Version module for S2Downloader."""
 
-__version__ = '1.2.2'
-__versionalias__ = '2024-07-23_01'
+__version__ = '1.2.3'
+__versionalias__ = '2024-07-29_01'
diff --git a/setup.py b/setup.py
index 6a1da4d809c900e2924566b10a9fc8de34767940..56ae00966a3f1a84d1462b022ebb6f00069b5ceb 100644
--- a/setup.py
+++ b/setup.py
@@ -35,11 +35,10 @@ version = {}
 with open("s2downloader/version.py") as version_file:
     exec(version_file.read(), version)
 
-req = ['gdal', 'affine', 'pyproj', 'numpy', 'matplotlib', 'geojson', 'rasterio', 'geopy',
-       'pandas', 'geopandas>=0.11', 'shapely', 'rtree', 'python-dateutil', 'pystac',
-       'pystac-client', 'pydantic', 'geojson-pydantic']
+req = ['numpy', 'affine', 'pyproj', 'geojson', 'geojson-pydantic', 'rasterio', 'geopandas>=0.11',
+       'shapely', 'pystac', 'geopy', 'pystac-client', 'pydantic']
 
-req_setup = ['pytest-runner']
+req_setup = []
 
 req_test = ['pytest>=3', 'pytest-cov', 'pytest-reporter-html1', 'urlchecker']
 
@@ -58,7 +57,7 @@ req_dev = ['twine'] + req_setup + req_test + req_doc + req_lint
 setup(
     author="FernLab",
     author_email='fernlab@gfz-potsdam.de',
-    python_requires='>=3.7',
+    python_requires='>=3.10',
     classifiers=[
         'Development Status :: 5 - Production/Stable',
         'Intended Audience :: Science/Research',
@@ -84,7 +83,6 @@ setup(
     },
     install_requires=req,
     license="Apache Software License 2.0",
-    include_package_data=True,
     keywords=['s2downloader',
               'remote sensing',
               'sentinel-2',
@@ -103,6 +101,7 @@ setup(
     },
     name='s2downloader',
     packages=find_packages(include=['s2downloader', 's2downloader.*']),
+    include_package_data=True,
     setup_requires=req_setup,
     test_suite='tests',
     tests_require=req_test,
diff --git a/tests/CI_docker/context/environment_s2downloader.yml b/tests/CI_docker/context/environment_s2downloader.yml
index ac7234bd1e558040280bd465ad5f6594b773273b..0f783d190d43bee7bf55c53af373874290fd37dc 100644
--- a/tests/CI_docker/context/environment_s2downloader.yml
+++ b/tests/CI_docker/context/environment_s2downloader.yml
@@ -6,50 +6,38 @@ channels: &id1
 dependencies:
   - python=3.10.*
   - pip
-  - pyicu
-  - gdal
   - numpy
   - affine
   - pyproj
   - geojson
-  - matplotlib
+  - geojson-pydantic
   - rasterio
-  - pandas
   - geopandas>=0.11
   - shapely
-  - rtree
-  - python-dateutil
-  - pydantic
+  - pystac
   - geopy
-  - geojson-pydantic
-
-  - pip:
-    # setup requirements
-    - tox
-
-    # test requirements
-    - pytest
-    - pytest-cov
-    - pytest-runner
-    - pytest-reporter-html1
-    - urlchecker
-
-    # lint requirements
-    - flake8
-    - pycodestyle
-    - pydocstyle
-    - pylint
-
-    # doc requirements
-    - sphinx>=4.1.1
-    - sphinx-argparse
-    # - sphinx_autodoc_typehints
-    - sphinx_rtd_theme
-    - numpydoc
+  - pystac-client
+  - pydantic
+  # setup requirements
+  - tox
+  # test requirements
+  - pytest
+  - pytest-cov
+  - urlchecker
+  # lint requirements
+  - flake8
+  - pycodestyle
+  - pydocstyle
+  # doc requirements
+  - sphinx>=4.1.1
+  - sphinx-argparse
+  # - sphinx_autodoc_typehints
+  - sphinx_rtd_theme
+  - numpydoc
+  # deployment requirements
+  - twine
+ # code requirements
 
-    # deployment requirements
-    - twine
 
-    # code requirements
-    - pystac
-    - pystac-client
+  - pip:
+          - pytest-reporter-html1
diff --git a/tests/test_s2downloader.py b/tests/test_s2downloader.py
index 58ba93cf0bbe1210b994721fc2a21ddd1bf90dac..2f6390bd53f16d73be45b0c00e334962600a506b 100644
--- a/tests/test_s2downloader.py
+++ b/tests/test_s2downloader.py
@@ -76,6 +76,7 @@ class TestS2Downloader(unittest.TestCase):
             os.path.abspath(os.path.join(cls.root_path, "tests/temp_results")))
 
         cls.output_data_path = cls.configuration['user_settings']['result_settings']['results_dir']
+        cls.configuration['user_settings']['result_settings']['path_to_logfile'] = cls.output_data_path
         cls.configuration['user_settings']['aoi_settings']['SCL_filter_values'] = [3, 6]
         cls.configuration['user_settings']['aoi_settings']['date_range'] = ["2021-09-04", "2021-09-05"]