Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Image group dict #10

Open
wants to merge 1,213 commits into
base: main
Choose a base branch
from
Open

Image group dict #10

wants to merge 1,213 commits into from

Conversation

ninsbl
Copy link
Owner

@ninsbl ninsbl commented May 31, 2024

PR to run tests in my fork...

echoix and others added 30 commits September 16, 2024 08:13
…#4325)

Fixes problems with loading environment variables and path on the newest GitHub Actions macOS 20240911.3 runner image, that makes all builds fail.

* CI(macOS): Use micromamba-shell for build and install

* CI(macOS): Use micromamba-shell for printing versions

* CI(macOS): Use micromamba-shell for pytest and gunittest
…SGeo#4326)

With the current GitHub Hosted runners, the build step time is reduced by about 2 minutes, down to about 8min30 instead of about 10min30, for the couple builds I observed
* CI(deps): Update ruff to v0.6.5

* style: Fix FURB188: Prefer `removeprefix` over conditionally replacing with slice.

Ruff rule: https://docs.astral.sh/ruff/rules/slice-to-remove-prefix-or-suffix/

This is a new rule introduced in ruff 0.6.5

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Edouard Choinière <[email protected]>
This change addresses an issue identified by Coverity Scan (CID : 1415709) [unchecked return value from library]. The checks are added for lseek usages using an error message already used in the library.

---------

Co-authored-by: Edouard Choinière <[email protected]>
* Handling Resource Leak

* Resource Leak
* r.viewshed: initialize struct member before using struct

This was reported by cppcheck tool. Technically, we are not using
the member in the struct variable in any of the subsequent
functions, but it's a good practice to initialize all the struct
members whenever possible.

Signed-off-by: Mohan Yelugoti <[email protected]>

* Use right literal while initializing angle

Signed-off-by: Mohan Yelugoti <[email protected]>

---------

Signed-off-by: Mohan Yelugoti <[email protected]>
…fy module (OSGeo#4299)

* Copy into fix size buffer issue

* removed variable Len

* Update imagery/i.rectify/main.c

Co-authored-by: Nicklas Larsson <[email protected]>

---------

Co-authored-by: Shubham Vasudeo Desai <[email protected]>
Co-authored-by: Shubham Vasudeo Desai <[email protected]>
Co-authored-by: Nicklas Larsson <[email protected]>
* remove unused variable

* Specify old ideas in the comment explicitly

---------

Co-authored-by: Vaclav Petras <[email protected]>
- various minor updates
- removal of GRASS Travis CI section
Several documents and files contain references to documents on https://trac.osgeo.org/grass/wiki/ while newer versions exist in GitHub. This PR updates a series of URLs and drops the outdated files `CHANGES` and `NEWS`.
Additionally, some minor markdown fixes.
…oad SQL template files (OSGeo#4335)

grass.temporal.abstract_space_time_dataset: Use Path.read_text() to load SQL template files

Fixes ResourceWarnings about unclosed files, fixing ruff SIM115 at the same time.

These 4 places were opening a file and reading it completely in the same line, but never closed explicitly the file, nor used a context manager that would kick in as much as possible on errors inside the calls.
…OSGeo#4332)

Make local implementations of strlcpy() and strlcat() optimizable by
using restrict type qualifier, while keeping public API for G_strlcat
and G_strlcpy available to C++ code and having identical prototype and
declaration.
…SGeo#4324)

* grass.gunittest: Ensure file list exists before processing exclusions

* grass.gunittest: Use pathlib.Path to handle test files across platforms

* grass.gunittest: Use pathlib.PurePath instead of concrete pathlib.Path

* grass.gunittest: Also use pathlib.PurePath for patterns

* grass.gunittest: Simplify pathlib filtering using a set comprehension

* grass.gunittest: Add typing to fnmatch_exclude_with_base signature

* style: Sort imports with isort

* Add Edouard Choinière (echoix) to the authors

* Fix typo in comment

* grass.gunittest: Filter file list respecting all three filter arguments if specified

* grass.gunittest: Change set comprehension variable name
…eo#4338)

* grass.gunittest: Use a context manager for opening htmldiff_file

* grass.gunittest: Specify encoding for writing htmldiff_file

* grass.gunittest: Write all lines of htmldiff_file at once

* grass.gunittest: Use Path.write_text() to write htmldiff_file

* grass.gunittest: Use a context manager for opening actual and reference files (SIM115)

* grass.gunittest: Use a context manager for output StringIO in case.py

* grass.gunittest: Use a context manager for opening files (SIM115)

In function replace_in_file of reporters.py

* grass.gunittest: Use a context manager for opening files (SIM115)

In function wrap_stdstream_to_html of reporters.py

* grass.gunittest: Use a context manager for opening files (SIM115)

In function report_for_dirs of reporters.py. Reordered so string creation ends up together outside the context manger where the file is written.

* grass.gunittest: Use a context manager for opening files (SIM115)

In function end_file_test of class GrassTestFilesHtmlReporter of reporters.py. Reordered so string creation ends up together outside the context manger where the strings are written to the file.

* grass.gunittest: Use a context manager for opening files (SIM115)

In function report_for_dir of class TestsuiteDirReporter of reporters.py

* grass.gunittest: Ignore remaining two SIM115 in reporters.py

* grass.gunittest: Use a context manager for opening files in multireport (SIM115)

* style: Enable checking of SIM115
…Geo#4339)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
v.in.dwg is linked to proprietary library 'OpenDWG toolkit'. One needs to become a member of OpenDWG Alliance to get the needed libraries and headers in order to compile this tool.

However, OpenDWG webpage went offline around 2011 and we have 'v.in.redwg' as replacement for it (available in grass-addons). Hence retire 'v.in.dwg' tool.

Besides the tool, this completely removes OpenDWG from configure.ac and platform.

Signed-off-by: Mohan Yelugoti <[email protected]>
Replace outdated direct use of Fortran libraries via g2c.h,  f2c.h
or private prototypes, with the C interface API and libraries
CBLAS and LAPACKE. This simplifies our own code and makes
it easier to maintain and expand.

Configure is simplified to use pkg-config to retrieve INC and
LIB info. `--with-blas` defaults to `--with-blas=cblas` where "cblas"
is the pkg-config package name; `---with-lapack` defaults to
`--with-lapack=lapacke`.

If the default fails the test a list of package names are tested:
- BLAS package names tested: cblas blas-netlib openblas blas-atlas
- LAPACKE package name tested: lapacke openblas

- CI(Linux): replace libopenblas-dev with liblapacke-dev dependency
- CI(macOS): replace blas and lapack with openblas dependency
- CI(Windows): replace lapack with openblas dependency
- move Programmer's manual creation from `doc/development/README.md` to `INSTALL.md`.

update `doc/development/README.md`
- add Python API; add subsections
- update URLs and wording
- list guides

- remove stray control chars (visible in vim) in `doc/development/style_guide.md`
In addition: improve handling of configuration with LAPACK
without BLAS
arohanajit and others added 30 commits October 25, 2024 13:32
)

* style: Fix if-else-block-instead-of-if-exp (SIM108) in scripts/

Ruff rule: https://docs.astral.sh/ruff/rules/if-else-block-instead-of-if-exp

* style: Fix if-else-block-instead-of-if-exp (SIM108) in python/

Ruff rule: https://docs.astral.sh/ruff/rules/if-else-block-instead-of-if-exp

* checks: Rename inner variable shadowing type to _type in python/grass/temporal/gui_support.py

* style: Manual fixes for if-else-block-instead-of-if-exp (SIM108) in python/

Ruff rule: https://docs.astral.sh/ruff/rules/if-else-block-instead-of-if-exp

* style: Fix if-else-block-instead-of-if-exp (SIM108) in gui/

Ruff rule: https://docs.astral.sh/ruff/rules/if-else-block-instead-of-if-exp

* checks: Rename inner variable shadowing list to _list in gui/wxpython/core/render.py

* style: Manual fixes for if-else-block-instead-of-if-exp (SIM108) in gui/

Ruff rule: https://docs.astral.sh/ruff/rules/if-else-block-instead-of-if-exp

* python: Add type annotations for grass.script.core.parser()

* python: Add type annotations for is_time_absolute() and is_time_relative() in grass.temporal.AbstractDataset

* style: Enable Checking for SIM108

* Update pyproject.toml to remove fixed issues

* Update base.py

Co-authored-by: Anna Petrasova <[email protected]>

---------

Co-authored-by: Anna Petrasova <[email protected]>
In C++20, repeating template parameter names with the name of the class is no longer allowed as it is redundant (https://cplusplus.github.io/CWG/issues/2237.html). The new code is valid also in C++17, but the old code is not accepted in C++20.
* temporal: Add precise typing overloads to dataset_factory

This enables type checkers like mypy or Pyright to understand the returned class from the string passed as the type argument

* temporal: Add typing overloads to dataset_factory

* temporal: Add dataset_factory implementation with str type for type argument

* temporal: Remove dataset_factory overload that listed all literal types

* temporal: Update dataset_factory file header

* temporal: Add dataset_factory overload with str type for type argument

* temporal: Accept None for id argument in dataset_factory overload as used in existing calls
* updated E722

* updated .flake8

* Update v.unpack.py
* updated E722

* updates

* updates

---------

Co-authored-by: Anna Petrasova <[email protected]>
For both active and inactive raster mask, show the name of the raster which is used (or would be used) for the mask. This will allow tools like r.mask or GUI to do lower-level operations with or around mask without a need to know about defaults or user mechanism to change the name.

I'm repurposing the existing 'name' (full_name) key which is now always set (as opposed to being null when no mask is present) as the 'present' boolean key already has the information on the mask presence. I'm renaming full_name to name because that creates a simpler interface (which is whole point of outputting full name as opposed to two keys to get name and mapset).
* document performance issue

* address code review

* Apply suggestions from code review

Co-authored-by: Markus Neteler <[email protected]>

* consistent recommendation

* remove leftover dot

---------

Co-authored-by: Markus Neteler <[email protected]>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.