Update handling of MatTranspose() with MAT_REUSE_MATRIXAdd error checking for the use of the MAT_REUSE_MATRIX flag in MatTranspose()Add tests to MatTranspose_XXX to error if the nonzero pattern ch
Update handling of MatTranspose() with MAT_REUSE_MATRIXAdd error checking for the use of the MAT_REUSE_MATRIX flag in MatTranspose()Add tests to MatTranspose_XXX to error if the nonzero pattern changesAdd support for MAT_REUSE_MATRIX with changing nonzero pattern for MatTranspose_SeqAIJ()Remove use of updateAt in MatProductNumeric_AtB_SeqAIJ_SeqAIJ() since MatTranspose() automatically skips unneeded new transposeAdd MatTransposeSymbolic()Update to SLEPc that supports these changesCommit-type: feature, error-checking, documentation/spend 5h
show more ...
remove garbage from makefilesIncluding * unused FLAGS variables * All: lib that did not work * stray blank lines etcCommit-type: housekeeping/spend 1h
Merge branch 'psanan/docs-sphinx-man-pages' into 'main'Integrate Man Pages into Sphinx DocsCloses #1132 and #1015See merge request petsc/petsc!4989
MatNest: fix MatConvert() with exotic MatTypes
Docs: bulk add backticks to .seealso man page fields```pythonimport osimport reimport fileinputdef _process_word(word): comma = "," if word.endswith(",") else "" return "`%s`%s" % (wor
Docs: bulk add backticks to .seealso man page fields```pythonimport osimport reimport fileinputdef _process_word(word): comma = "," if word.endswith(",") else "" return "`%s`%s" % (word.rstrip(","), comma)def _process_stripped_line(line): return " ".join(map(_process_word, line.split()))start_pattern = re.compile(r"^( *\.seealso:? )(.*$)")def process_file(filename_full): with fileinput.FileInput(filename_full, inplace=True) as f: in_block = False for line in f: line_stripped = line.strip() # end ".seealso blocks" on a blank line or C-style comment close line_modified = None if not line_stripped: in_block = False elif line_stripped.endswith("*/"): in_block = False else: match = re.match(start_pattern, line) # not stripped line if match: indent = " " * len(match.group(1)) in_block = True line_modified = match.group( 1) + _process_stripped_line( match.group(2).strip()) elif in_block: line_modified = indent + _process_stripped_line( line_stripped) if line_modified: print(line_modified) # prints to the file else: print(line, end="") # prints to the fileBASE_DIRS = ["src", "include"]EXT = [".c", ".cxx", ".cpp", ".cu", ".h", ".hpp", ".hxx"]EXCLUDE_DIRS = ["tests", "tutorials", "ftn-auto", "ftn-custom", "benchmarks"]def main(): """ Process everything """ for base in BASE_DIRS: for root, dirs, files in os.walk(base): for filename in files: if os.path.splitext(filename)[1] in EXT: filename_full = os.path.join(root, filename) print("FILE ---", filename_full) process_file(filename_full) for exclude_dir in EXCLUDE_DIRS: if exclude_dir in dirs: dirs.remove(exclude_dir)if __name__ == "__main__": main()```
Remove the rest of the PetscCheckFalse() from the mat directoryCommit-type: housekeeping/spend 45m
Remove some PetscCheckFalse()
Do not wrap PetscTryMethod() PetscUseMethod() in PetscCallIt produces shadow declarations and also serves no purpose since these macros do the appropriate error checking alreadyThere may be addit
Do not wrap PetscTryMethod() PetscUseMethod() in PetscCallIt produces shadow declarations and also serves no purpose since these macros do the appropriate error checking alreadyThere may be additions needed for running with a static error checkerCommit-type: error-checking/spend 15mReported-by:Lisandro Dalcin <dalcinl@gmail.com>
The great renaming:- CHKERRQ() -> PetscCall()- CHKERRV() -> PetscCallVoid()- CHKERRMPI() -> PetscCallMPI()- CHKERRABORT() -> PetscCallAbort()- CHKERRCONTINUE() -> PetscCallContinue()- CHKERRXX
The great renaming:- CHKERRQ() -> PetscCall()- CHKERRV() -> PetscCallVoid()- CHKERRMPI() -> PetscCallMPI()- CHKERRABORT() -> PetscCallAbort()- CHKERRCONTINUE() -> PetscCallContinue()- CHKERRXX() -> PetscCallThrow()- CHKERRCXX() -> PetscCallCXX()- CHKERRCUDA() -> PetscCallCUDA()- CHKERRCUBLAS() -> PetscCallCUBLAS()- CHKERRCUSPARSE() -> PetscCallCUSPARSE()- CHKERRCUSOLVER() -> PetscCallCUSOLVER()- CHKERRCUFFT() -> PetscCallCUFFT()- CHKERRCURAND() -> PetscCallCURAND()- CHKERRHIP() -> PetscCallHIP()- CHKERRHIPBLAS() -> PetscCallHIPBLAS()- CHKERRHIPSOLVER() -> PetscCallHIPSOLVER()- CHKERRQ_CEED() -> PetscCallCEED()- CHKERR_FORTRAN_VOID_FUNCTION() -> PetscCallFortranVoidFunction()- CHKERRMKL() -> PetscCallMKL()- CHKERRMMG() -> PetscCallMMG()- CHKERRMMG_NONSTANDARD() -> PetscCallMMG_NONSTANDARD()- CHKERRCGNS() -> PetscCallCGNS()- CHKERRPTSCOTCH() -> PetscCallPTSCOTCH()- CHKERRSTR() -> PetscCallSTR()- CHKERRTC() -> PetscCallTC()
pluck ~1000 low hanging PetscCheckFalse() -> PetscCheck() fruit
chkerr and friends wrapped
rename PetscAssert() -> PetscCheck() and PetscAssertDebug() -> PetscAssert()
add PetscAssert() and PetscAssertFalse()
SETERRQ[1-9]+ begone
applied attribute format fixes to mat headers
MatNest: propagate vectype if the same in all blocks
Fix manpages: Input/Output Parameters --> Parameter
Fix manpages: Input/Output Parameter --> Parameters
Fix spelling errors in manpages and comments
Merge remote-tracking branch 'origin/release'
Some missing CHKERR[Q|MPI]
MATNEST: missing inplace conversion to MATAIJ
PetscStack : check for correct push/popEnforce checkstack for CI jobsFixes from testsuite
Update badsource rules- Zero or more spaces are not allowed for more returning types- zero spaces not allowed for for|if|while
Remove all double blank lines from sourceCommit-type: petsc-style/2h
12345678910>>...13