diff --git a/CMakeLists.txt b/CMakeLists.txt
index adf71b6ae0fceec6a61732cdcf0399a9e7237c27..a9c29101123d2e3ab3f0a305dc53547e3fa159d7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1070,7 +1070,7 @@ if(MSVC)
   add_definitions(-D__LITTLE_ENDIAN__)
 
   # OSX-Note: as we do cross-compiling with specific set architecture,
-  # endianess-detection and auto-setting is counterproductive
+  # endianness-detection and auto-setting is counterproductive
   # so we just set endianness according CMAKE_OSX_ARCHITECTURES
 
 elseif(CMAKE_OSX_ARCHITECTURES MATCHES i386 OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64 OR CMAKE_OSX_ARCHITECTURES MATCHES arm64)
@@ -1760,7 +1760,7 @@ endif()
 set(CMAKE_CXX_STANDARD 17)
 # If C++17 is not available, downgrading to an earlier standard is NOT OK.
 set(CMAKE_CXX_STANDARD_REQUIRED ON)
-# Do not enable compiler specific language extentions.
+# Do not enable compiler specific language extensions.
 set(CMAKE_CXX_EXTENSIONS OFF)
 
 # Make MSVC properly report the value of the __cplusplus preprocessor macro
diff --git a/GNUmakefile b/GNUmakefile
index 57892959d2ac857d0480ace93afdcfcdc3c3fee9..e4703973384afa848ed5517cd57c5cb3a4744608 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -51,7 +51,7 @@ Other Convenience Targets
    * config:        Run cmake configuration tool to set build options.
    * deps:          Build library dependencies (intended only for platform maintainers).
 
-                    The existance of locally build dependancies overrides the pre-built dependencies from subversion.
+                    The existance of locally build dependencies overrides the pre-built dependencies from subversion.
                     These must be manually removed from '../lib/' to go back to using the pre-compiled libraries.
 
 Project Files
diff --git a/build_files/build_environment/cmake/harvest.cmake b/build_files/build_environment/cmake/harvest.cmake
index a3740559adcbdac61cc3536187d249046e85feb9..4d06430ea495d6a4501d66a4da782052cd097992 100644
--- a/build_files/build_environment/cmake/harvest.cmake
+++ b/build_files/build_environment/cmake/harvest.cmake
@@ -17,7 +17,7 @@
 # ***** END GPL LICENSE BLOCK *****
 
 ########################################################################
-# Copy all generated files to the proper strucure as blender prefers
+# Copy all generated files to the proper structure as blender prefers
 ########################################################################
 
 if(NOT DEFINED HARVEST_TARGET)
diff --git a/build_files/build_environment/cmake/options.cmake b/build_files/build_environment/cmake/options.cmake
index 8930bd70fabb3d044e5ca5fe3784c8549439eacf..b37971be2a6dfcdb3b4cc3d273244ab79ddfa04c 100644
--- a/build_files/build_environment/cmake/options.cmake
+++ b/build_files/build_environment/cmake/options.cmake
@@ -39,7 +39,7 @@ endif()
 set(DOWNLOAD_DIR "${CMAKE_CURRENT_BINARY_DIR}/downloads" CACHE STRING "Path for downloaded files")
 # This path must be hard-coded like this, so that the GNUmakefile knows where it is and can pass it to make_source_archive.py:
 set(PACKAGE_DIR "${CMAKE_CURRENT_BINARY_DIR}/packages")
-option(PACKAGE_USE_UPSTREAM_SOURCES "Use soures upstream to download the package sources, when OFF the blender mirror will be used" ON)
+option(PACKAGE_USE_UPSTREAM_SOURCES "Use sources upstream to download the package sources, when OFF the blender mirror will be used" ON)
 
 file(TO_CMAKE_PATH ${DOWNLOAD_DIR} DOWNLOAD_DIR)
 file(TO_CMAKE_PATH ${PACKAGE_DIR} PACKAGE_DIR)
diff --git a/build_files/build_environment/cmake/package_python.cmake b/build_files/build_environment/cmake/package_python.cmake
index 03184c783df522d3058d244f523d45a8be0f62e3..f5bf05dc024d840452b8870505a8764b9dedfffe 100644
--- a/build_files/build_environment/cmake/package_python.cmake
+++ b/build_files/build_environment/cmake/package_python.cmake
@@ -24,7 +24,7 @@ if(MSVC)
     add_custom_command(
       OUTPUT ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
       COMMAND echo packaging python
-      COMMAND echo this should ouput at ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
+      COMMAND echo this should output at ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
       COMMAND ${CMAKE_COMMAND} -E make_directory ${PYTARGET}/libs
       COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}.lib
       COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python.exe ${PYTARGET}/bin/python.exe
@@ -43,7 +43,7 @@ if(MSVC)
     add_custom_command(
       OUTPUT ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
       COMMAND echo packaging python
-      COMMAND echo this should ouput at ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
+      COMMAND echo this should output at ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
       COMMAND ${CMAKE_COMMAND} -E make_directory ${PYTARGET}/libs
       COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib ${PYTARGET}/libs/python${PYTHON_SHORT_VERSION_NO_DOTS}${PYTHON_POSTFIX}.lib
       COMMAND ${CMAKE_COMMAND} -E copy ${PYSRC}/python${PYTHON_POSTFIX}.exe ${PYTARGET}/bin/python${PYTHON_POSTFIX}.exe
diff --git a/build_files/build_environment/install_deps.sh b/build_files/build_environment/install_deps.sh
index 2bb7175da0009e22646f1e7f1550a30faec727ef..24294df14ed01b5112c710867d1aa7eea5e2c617 100755
--- a/build_files/build_environment/install_deps.sh
+++ b/build_files/build_environment/install_deps.sh
@@ -1826,7 +1826,7 @@ compile_OCIO() {
     # Force linking against static libs
     #rm -f $_inst/lib/*.so*
 
-    # Additional depencencies
+    # Additional dependencies
     #cp ext/dist/lib/libtinyxml.a $_inst/lib
     #cp ext/dist/lib/libyaml-cpp.a $_inst/lib
 
diff --git a/build_files/cmake/cmake_netbeans_project.py b/build_files/cmake/cmake_netbeans_project.py
index a16fc42c9b74d687c873dfe25ad211eed7f26d94..162fe1e2c06fa1904285d183c3a51a05ebdb7aa9 100755
--- a/build_files/cmake/cmake_netbeans_project.py
+++ b/build_files/cmake/cmake_netbeans_project.py
@@ -180,7 +180,7 @@ def create_nb_project_main():
         f.write('    </logicalFolder>\n')
 
         f.write('  </logicalFolder>\n')
-        # default, but this dir is infact not in blender dir so we can ignore it
+        # default, but this dir is in fact not in blender dir so we can ignore it
         # f.write('  <sourceFolderFilter>^(nbproject)$</sourceFolderFilter>\n')
         f.write(r'  <sourceFolderFilter>^(nbproject|__pycache__|.*\.py|.*\.html|.*\.blend)$</sourceFolderFilter>\n')
 
diff --git a/source/blender/blenfont/intern/blf_font.c b/source/blender/blenfont/intern/blf_font.c
index 959faca2f460bf45acec86fe5836f0d6970d2ba0..c81d18ba7de7102924f5150f00c0f07fc60316f0 100644
--- a/source/blender/blenfont/intern/blf_font.c
+++ b/source/blender/blenfont/intern/blf_font.c
@@ -582,7 +582,7 @@ void blf_font_draw_buffer(FontBLF *font,
 /** \} */
 
 /* -------------------------------------------------------------------- */
-/** \name Text Evaluation: Width to Sting Length
+/** \name Text Evaluation: Width to String Length
  *
  * Use to implement exported functions:
  * - #BLF_width_to_strlen
diff --git a/source/blender/blenkernel/BKE_global.h b/source/blender/blenkernel/BKE_global.h
index 4f1da0a972f10f5e56ea178a29dc25d3ccf0d644..d6cabbc1236e2ff1e200edf8a26441c0c1ffbff0 100644
--- a/source/blender/blenkernel/BKE_global.h
+++ b/source/blender/blenkernel/BKE_global.h
@@ -213,7 +213,7 @@ enum {
   /**
    * Set when transforming the cursor itself.
    * Used as a hint to draw the cursor (even when hidden).
-   * Otherwise it's not possible to see whats being transformed.
+   * Otherwise it's not possible to see what's being transformed.
    */
   G_TRANSFORM_CURSOR = (1 << 5),
 };
diff --git a/source/blender/blenkernel/intern/constraint.c b/source/blender/blenkernel/intern/constraint.c
index b2b03d28483c035d29c1d3f5ab035938183bc8e2..beaf2f2be9aa9b92aea6754515bef12db437d4bc 100644
--- a/source/blender/blenkernel/intern/constraint.c
+++ b/source/blender/blenkernel/intern/constraint.c
@@ -2010,7 +2010,7 @@ static void rotlike_evaluate(bConstraint *con, bConstraintOb *cob, ListBase *tar
     /* We must get compatible eulers from the beginning because
      * some of them can be modified below (see bug T21875).
      * Additionally, since this constraint is based on euler rotation math, it doesn't work well
-     * with shear. The Y axis is chosen as the main axis when we orthoganalize the matrix because
+     * with shear. The Y axis is chosen as the main axis when we orthogonalize the matrix because
      * constraints are used most commonly on bones. */
     float mat[4][4];
     copy_m4_m4(mat, ct->matrix);
diff --git a/source/blender/blenkernel/intern/dynamicpaint.c b/source/blender/blenkernel/intern/dynamicpaint.c
index 2ef7ef91160efae582ed4a7c26f8759d17db5050..05f1e9b286f8f754291eb6d07dd833cb3f667a42 100644
--- a/source/blender/blenkernel/intern/dynamicpaint.c
+++ b/source/blender/blenkernel/intern/dynamicpaint.c
@@ -763,7 +763,7 @@ static void surfaceGenerateGrid(struct DynamicPaintSurface *surface)
     copy_v3_v3(bData->dim, dim);
     min_dim = max_fff(td[0], td[1], td[2]) / 1000.0f;
 
-    /* deactivate zero axises */
+    /* deactivate zero axes */
     for (i = 0; i < 3; i++) {
       if (td[i] < min_dim) {
         td[i] = 1.0f;
@@ -784,7 +784,7 @@ static void surfaceGenerateGrid(struct DynamicPaintSurface *surface)
     dim_factor = (float)pow((double)volume / ((double)sData->total_points / 10000.0),
                             1.0 / (double)axis);
 
-    /* define final grid size using dim_factor, use min 3 for active axises */
+    /* define final grid size using dim_factor, use min 3 for active axes */
     for (i = 0; i < 3; i++) {
       grid->dim[i] = (int)floor(td[i] / dim_factor);
       CLAMP(grid->dim[i], (dim[i] >= min_dim) ? 3 : 1, 100);
diff --git a/source/blender/blenkernel/intern/fluid.c b/source/blender/blenkernel/intern/fluid.c
index 6b7594dcf3687c9a4cf9c71b2271c9720e9d099c..9d26a1528f39d2e94e5559ea3e8503ec08407dbe 100644
--- a/source/blender/blenkernel/intern/fluid.c
+++ b/source/blender/blenkernel/intern/fluid.c
@@ -5090,7 +5090,7 @@ void BKE_fluid_modifier_copy(const struct FluidModifierData *fmd,
     copy_v4_v4(tfds->gridlines_range_color, fds->gridlines_range_color);
     tfds->gridlines_cell_filter = fds->gridlines_cell_filter;
 
-    /* -- Deprecated / unsed options (below)-- */
+    /* -- Deprecated / unused options (below)-- */
 
     /* pointcache options */
     BKE_ptcache_free_list(&(tfds->ptcaches[0]));
diff --git a/source/blender/blenkernel/intern/lib_override.c b/source/blender/blenkernel/intern/lib_override.c
index 5117c8bd64c15b3c46eb7c6b01cc819ca43d973c..dcdcaf0793a235fb9729c32fffd58824317a77ea 100644
--- a/source/blender/blenkernel/intern/lib_override.c
+++ b/source/blender/blenkernel/intern/lib_override.c
@@ -1028,7 +1028,7 @@ static void lib_override_library_proxy_convert_do(Main *bmain,
   if (success) {
     CLOG_INFO(&LOG,
               4,
-              "Proxy object '%s' successfuly converted to library overrides",
+              "Proxy object '%s' successfully converted to library overrides",
               ob_proxy->id.name);
     /* Remove the instance empty from this scene, the items now have an overridden collection
      * instead. */
diff --git a/source/blender/blenkernel/intern/material.c b/source/blender/blenkernel/intern/material.c
index 3a4e39812abedacd5b46a1951d936cc0999329e7..1fac83c56653daa3ec1d078703625ac8d809fbe5 100644
--- a/source/blender/blenkernel/intern/material.c
+++ b/source/blender/blenkernel/intern/material.c
@@ -902,7 +902,7 @@ void BKE_object_materials_test(Main *bmain, Object *ob, ID *id)
   if ((ob->id.tag & LIB_TAG_MISSING) == 0 && (id->tag & LIB_TAG_MISSING) != 0) {
     /* Exception: In case the object is a valid data, but its obdata is an empty place-holder,
      * use object's material slots amount as reference.
-     * This avoids loosing materials in a local object when its linked obdata gets missing.
+     * This avoids losing materials in a local object when its linked obdata goes missing.
      * See T92780. */
     BKE_id_material_resize(bmain, id, (short)ob->totcol, false);
   }
diff --git a/source/blender/blenkernel/intern/softbody.c b/source/blender/blenkernel/intern/softbody.c
index b7eb9d31b238707e9f8df11d67aa67a666368d49..a008edd038a0fceeecb40bd6010648d74db6a732 100644
--- a/source/blender/blenkernel/intern/softbody.c
+++ b/source/blender/blenkernel/intern/softbody.c
@@ -2633,7 +2633,7 @@ static void interpolate_exciter(Object *ob, int timescale, int time)
   }
 }
 
-/* ************ convertors ********** */
+/* ************ converters ********** */
 
 /* for each object type we need;
  * - xxxx_to_softbody(Object *ob)      : a full (new) copy, creates SB geometry
diff --git a/source/blender/blenkernel/intern/text.c b/source/blender/blenkernel/intern/text.c
index 0cb2218e7e004a7edabf5693c154720ae085213f..7ac9e20d1a7953272ad8dd00b7c8cee7a51587d8 100644
--- a/source/blender/blenkernel/intern/text.c
+++ b/source/blender/blenkernel/intern/text.c
@@ -1977,7 +1977,7 @@ static char tab_to_spaces[] = "    ";
 static void txt_convert_tab_to_spaces(Text *text)
 {
   /* sb aims to pad adjust the tab-width needed so that the right number of spaces
-   * is added so that the indention of the line is the right width (i.e. aligned
+   * is added so that the indentation of the line is the right width (i.e. aligned
    * to multiples of TXT_TABSIZE)
    */
   const char *sb = &tab_to_spaces[text->curc % TXT_TABSIZE];
diff --git a/source/blender/blenlib/intern/BLI_mempool.c b/source/blender/blenlib/intern/BLI_mempool.c
index f968799326ad2254cf782077a2deb953d4a81f85..bd6a124c7cb53159aacba2522b4b7e8e31d387e1 100644
--- a/source/blender/blenlib/intern/BLI_mempool.c
+++ b/source/blender/blenlib/intern/BLI_mempool.c
@@ -126,7 +126,7 @@ struct BLI_mempool {
   uint flag;
   /* keeps aligned to 16 bits */
 
-  /** Free element list. Interleaved into chunk datas. */
+  /** Free element list. Interleaved into chunk data. */
   BLI_freenode *free;
   /** Use to know how many chunks to keep for #BLI_mempool_clear. */
   uint maxchunks;
diff --git a/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl b/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl
index 93641443cac83c6da8c45c2cd09cc7f4a373e69f..41d6db7f726e4bb376ac8e688cf721b5a3b79700 100644
--- a/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl
@@ -56,7 +56,7 @@ vec2 get_ao_noise(void)
 {
   vec2 noise = texelfetch_noise_tex(gl_FragCoord.xy).xy;
   /* Decorrelate noise from AA. */
-  /* TODO(fclem) we should use a more general approach for more random number dimentions. */
+  /* TODO(fclem) we should use a more general approach for more random number dimensions. */
   noise = fract(noise * 6.1803402007);
   return noise;
 }
@@ -399,7 +399,7 @@ float specular_occlusion(
 /* Use the right occlusion. */
 OcclusionData occlusion_load(vec3 vP, float custom_occlusion)
 {
-  /* Default to fully openned cone. */
+  /* Default to fully opened cone. */
   OcclusionData data = NO_OCCLUSION_DATA;
 
 #ifdef ENABLE_DEFERED_AO
diff --git a/source/blender/draw/engines/eevee/shaders/closure_eval_lib.glsl b/source/blender/draw/engines/eevee/shaders/closure_eval_lib.glsl
index e5cbc487e930f01d3a4808c711a87edb01ae224c..311887cf2f51008f0a82ecb537e6e8fdb3ed442c 100644
--- a/source/blender/draw/engines/eevee/shaders/closure_eval_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/closure_eval_lib.glsl
@@ -172,7 +172,7 @@
 /* -------------------------------------------------------------------- */
 /** \name Common cl_eval data
  *
- * Eval data not dependant on input parameters. All might not be used but unused ones
+ * Eval data not dependent on input parameters. All might not be used but unused ones
  * will be optimized out.
  * \{ */
 
@@ -240,7 +240,7 @@ ClosureEvalCommon closure_Common_eval_init(ClosureInputCommon cl_in)
 /* -------------------------------------------------------------------- */
 /** \name Loop data
  *
- * Loop datas are conveniently packed into struct to make it future proof.
+ * Loop data is conveniently packed into struct to make it future proof.
  * \{ */
 
 struct ClosureLightData {
diff --git a/source/blender/draw/engines/eevee/shaders/common_utiltex_lib.glsl b/source/blender/draw/engines/eevee/shaders/common_utiltex_lib.glsl
index c3325ec42862246547a13f34ed66e94d14e9ba32..77a1560f3a76440a40156c139bcab405a73d66f8 100644
--- a/source/blender/draw/engines/eevee/shaders/common_utiltex_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/common_utiltex_lib.glsl
@@ -79,7 +79,7 @@ vec2 btdf_lut(float cos_theta, float roughness, float ior)
     /* Baked IOR for GGX BRDF. */
     const float specular = 1.0;
     const float eta_brdf = (2.0 / (1.0 - sqrt(0.08 * specular))) - 1.0;
-    /* Avoid harsh transition comming from ior == 1. */
+    /* Avoid harsh transition coming from ior == 1. */
     float f90 = fast_sqrt(saturate(f0 / (f0_from_ior(eta_brdf) * 0.25)));
     float fresnel = F_brdf_single_scatter(vec3(f0), vec3(f90), split_sum).r;
     /* Setting the BTDF to one is not really important since it is only used for multiscatter
diff --git a/source/blender/draw/engines/eevee/shaders/effect_dof_gather_frag.glsl b/source/blender/draw/engines/eevee/shaders/effect_dof_gather_frag.glsl
index 39a7e8fb93173b22596cee5b8b4af5ccf083f20a..c09365cdcb407104b7249b14c672276764e5ea7b 100644
--- a/source/blender/draw/engines/eevee/shaders/effect_dof_gather_frag.glsl
+++ b/source/blender/draw/engines/eevee/shaders/effect_dof_gather_frag.glsl
@@ -2,7 +2,7 @@
 /**
  * Gather pass: Convolve foreground and background parts in separate passes.
  *
- * Using the min&max CoC tile buffer, we select the best apropriate method to blur the scene color.
+ * Using the min&max CoC tile buffer, we select the best appropriate method to blur the scene color.
  * A fast gather path is taken if there is not many CoC variation inside the tile.
  *
  * We sample using an octaweb sampling pattern. We randomize the kernel center and each ring
diff --git a/source/blender/draw/engines/eevee/shaders/effect_dof_reduce_frag.glsl b/source/blender/draw/engines/eevee/shaders/effect_dof_reduce_frag.glsl
index 1b5b305dfc1994ffffc5e1d0c5653ede9b621a09..d21254003f98f0e7a96e225fa8f2df451dd81fc0 100644
--- a/source/blender/draw/engines/eevee/shaders/effect_dof_reduce_frag.glsl
+++ b/source/blender/draw/engines/eevee/shaders/effect_dof_reduce_frag.glsl
@@ -140,7 +140,7 @@ void main()
   do_scatter *= dof_scatter_screen_border_rejection(outCoc, uv, halfres);
   /* Only scatter if neighborhood is different enough. */
   do_scatter *= dof_scatter_neighborhood_rejection(outColor.rgb);
-  /* For debuging. */
+  /* For debugging. */
   do_scatter *= float(!no_scatter_pass);
 
   outScatterColor = mix(vec3(0.0), outColor.rgb, do_scatter);
diff --git a/source/blender/draw/engines/eevee/shaders/effect_reflection_resolve_frag.glsl b/source/blender/draw/engines/eevee/shaders/effect_reflection_resolve_frag.glsl
index 7689e730bf3863cfd680527c7ae2da6567c0c297..7568d70bd14218865a5bfb3464f324ed44dd670f 100644
--- a/source/blender/draw/engines/eevee/shaders/effect_reflection_resolve_frag.glsl
+++ b/source/blender/draw/engines/eevee/shaders/effect_reflection_resolve_frag.glsl
@@ -134,7 +134,7 @@ void raytrace_resolve(ClosureInputGlossy cl_in,
     vec3 V, P, N;
     if (planar_index != -1) {
       PlanarData pd = planars_data[planar_index];
-      /* Evaluate everything in refected space. */
+      /* Evaluate everything in reflected space. */
       P = line_plane_intersect(cl_common.P, cl_common.V, pd.pl_plane_eq);
       V = reflect(cl_common.V, pd.pl_normal);
       N = reflect(cl_in.N, pd.pl_normal);
diff --git a/source/blender/draw/engines/eevee/shaders/random_lib.glsl b/source/blender/draw/engines/eevee/shaders/random_lib.glsl
index 3a4ae257bbeb82969435f1c52b18c00244e00321..c2388f6134657f89ddb5746bdabe7bbe0e56fd64 100644
--- a/source/blender/draw/engines/eevee/shaders/random_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/random_lib.glsl
@@ -1,6 +1,6 @@
 
 /**
- * Random numbers and low discrepency sequences utilities.
+ * Random numbers and low discrepancy sequences utilities.
  */
 
 #pragma BLENDER_REQUIRE(common_math_lib.glsl)
diff --git a/source/blender/draw/engines/eevee/shaders/surface_lib.glsl b/source/blender/draw/engines/eevee/shaders/surface_lib.glsl
index 0efa7b80b0b686e7ab926271d95ca206c543b10a..7d016d57c4697cdf4dbf8fe8f5b8090b8e8173e2 100644
--- a/source/blender/draw/engines/eevee/shaders/surface_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/surface_lib.glsl
@@ -8,7 +8,7 @@
 
 #if defined(STEP_RESOLVE) || defined(STEP_RAYTRACE)
 /* SSR will set these global variables itself.
- * Also make false positive compiler warnings disapear by setting values. */
+ * Also make false positive compiler warnings disappear by setting values. */
 vec3 worldPosition = vec3(0);
 vec3 viewPosition = vec3(0);
 vec3 worldNormal = vec3(0);
diff --git a/source/blender/draw/engines/eevee/shaders/volumetric_lib.glsl b/source/blender/draw/engines/eevee/shaders/volumetric_lib.glsl
index c48c3bffaefc045ebb6e1354e011304e39cb985a..777e48fde34795e7faee627704f5f0341e3c8625 100644
--- a/source/blender/draw/engines/eevee/shaders/volumetric_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/volumetric_lib.glsl
@@ -74,7 +74,7 @@ vec3 light_volume(LightData ld, vec4 l_vector)
     float d = l_vector.w;
     float d_sqr = sqr(d);
     float r_sqr = ld.l_volume_radius;
-    /* Using reformulation that has better numerical percision. */
+    /* Using reformulation that has better numerical precision. */
     power = 2.0 / (d_sqr + r_sqr + d * sqrt(d_sqr + r_sqr));
 
     if (ld.l_type == AREA_RECT || ld.l_type == AREA_ELLIPSE) {
diff --git a/source/blender/draw/engines/gpencil/gpencil_engine.h b/source/blender/draw/engines/gpencil/gpencil_engine.h
index 674aca29662bda39fc8b10f80266489235c43c2f..328e60cf60b83ee64b6968b19f646187d363c839 100644
--- a/source/blender/draw/engines/gpencil/gpencil_engine.h
+++ b/source/blender/draw/engines/gpencil/gpencil_engine.h
@@ -106,7 +106,7 @@ typedef struct gpLight {
 BLI_STATIC_ASSERT_ALIGN(gpMaterial, 16)
 BLI_STATIC_ASSERT_ALIGN(gpLight, 16)
 
-/* *********** Draw Datas *********** */
+/* *********** Draw Data *********** */
 typedef struct GPENCIL_MaterialPool {
   /* Linklist. */
   struct GPENCIL_MaterialPool *next;
diff --git a/source/blender/draw/engines/workbench/shaders/workbench_effect_dof_frag.glsl b/source/blender/draw/engines/workbench/shaders/workbench_effect_dof_frag.glsl
index 92d5df1a13a98addab5415ab2e46c2ff92fe41fc..c4580e6ffc32d79e14a4f02d3cb9cdd110a4b473 100644
--- a/source/blender/draw/engines/workbench/shaders/workbench_effect_dof_frag.glsl
+++ b/source/blender/draw/engines/workbench/shaders/workbench_effect_dof_frag.glsl
@@ -95,7 +95,7 @@ void main()
 
 /**
  * ----------------- STEP 0.5 ------------------
- * Custom Coc aware downsampling. Quater res pass.
+ * Custom Coc aware downsampling. Quarter res pass.
  */
 #ifdef DOWNSAMPLE
 
diff --git a/source/blender/editors/animation/anim_channels_defines.c b/source/blender/editors/animation/anim_channels_defines.c
index e5dc9a83ebb83c8ae3895570bd86f8a9acf2f779..9f2681fbf7a238988b4dfb13c0d68620c9ef0cf6 100644
--- a/source/blender/editors/animation/anim_channels_defines.c
+++ b/source/blender/editors/animation/anim_channels_defines.c
@@ -199,7 +199,7 @@ static void acf_generic_channel_color(bAnimContext *ac, bAnimListElem *ale, floa
   }
 
   /* set color for normal channels
-   * - use 3 shades of color group/standard color for 3 indention level
+   * - use 3 shades of color group/standard color for 3 indentation level
    * - only use group colors if allowed to, and if actually feasible
    */
   if (showGroupColors && (grp) && (grp->customCol)) {
diff --git a/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp b/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
index 9bf00ed7092322847891323c44003eebd98a8746..de7fcb7a728be1f5e9a29f2668f85131bf78aaee 100644
--- a/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
+++ b/source/blender/freestyle/intern/view_map/FEdgeXDetector.cpp
@@ -190,7 +190,7 @@ void FEdgeXDetector::computeCurvatures(WXVertex *vertex)
   }
 
   // CURVATURE LAYER
-  // store all the curvature datas for each vertex
+  // store all the curvature data for each vertex
 
   // soc unused - real K1, K2
   real cos2theta, sin2theta;
diff --git a/source/blender/imbuf/intern/indexer.c b/source/blender/imbuf/intern/indexer.c
index bbb0f3b5b2212ccdbfe0b1b1bee92f4627910f4e..6cd87e29c9dad8f0d6b8f4c0ae34335b7401cdf1 100644
--- a/source/blender/imbuf/intern/indexer.c
+++ b/source/blender/imbuf/intern/indexer.c
@@ -183,13 +183,13 @@ struct anim_index *IMB_indexer_open(const char *name)
   header[12] = 0;
 
   if (memcmp(header, binary_header_str, 8) != 0) {
-    fprintf(stderr, "Error reading %s: Binary file type string missmatch\n", name);
+    fprintf(stderr, "Error reading %s: Binary file type string mismatch\n", name);
     fclose(fp);
     return NULL;
   }
 
   if (atoi(header + 9) != INDEX_FILE_VERSION) {
-    fprintf(stderr, "Error reading %s: File version missmatch\n", name);
+    fprintf(stderr, "Error reading %s: File version mismatch\n", name);
     fclose(fp);
     return NULL;
   }
@@ -222,7 +222,7 @@ struct anim_index *IMB_indexer_open(const char *name)
   }
 
   if (UNLIKELY(items_read != idx->num_entries * 5)) {
-    fprintf(stderr, "Error: Element data size missmatch in: %s\n", name);
+    fprintf(stderr, "Error: Element data size mismatch in: %s\n", name);
     MEM_freeN(idx->entries);
     MEM_freeN(idx);
     fclose(fp);
diff --git a/source/blender/io/avi/intern/avi.c b/source/blender/io/avi/intern/avi.c
index 87058693378252e633b36837567489a693ce10c5..221e56ac793ac1bdcacf0e588c6b22bd093ec613 100644
--- a/source/blender/io/avi/intern/avi.c
+++ b/source/blender/io/avi/intern/avi.c
@@ -591,7 +591,7 @@ AviError AVI_open_movie(const char *name, AviMovie *movie)
     BLI_fseek(movie->fp, size - 4, SEEK_CUR);
 
     if (GET_FCC(movie->fp) != FCC("idx1")) {
-      DEBUG_PRINT("bad index informatio\n");
+      DEBUG_PRINT("bad index information\n");
       return AVI_ERROR_FORMAT;
     }
 
diff --git a/source/blender/io/collada/AnimationExporter.cpp b/source/blender/io/collada/AnimationExporter.cpp
index 9ba59c0414d52c96c2aeccbc56585de11245b572..56274e7e6ca5f659d178671fac89419fcae49e83 100644
--- a/source/blender/io/collada/AnimationExporter.cpp
+++ b/source/blender/io/collada/AnimationExporter.cpp
@@ -549,7 +549,7 @@ void AnimationExporter::add_source_parameters(COLLADASW::SourceBase::ParameterNa
           param.push_back("TRANSFORM");
         }
         else {
-          /* assumes if axis isn't specified all axises are added */
+          /* assumes if axis isn't specified all axes are added */
           param.push_back("X");
           param.push_back("Y");
           param.push_back("Z");
diff --git a/source/blender/makesdna/DNA_fluid_types.h b/source/blender/makesdna/DNA_fluid_types.h
index 0cbef540306c08b4053190a674dc73f8da807c9d..d8065410f2bc9e7af2774c0abd3fcef920e46227 100644
--- a/source/blender/makesdna/DNA_fluid_types.h
+++ b/source/blender/makesdna/DNA_fluid_types.h
@@ -513,7 +513,7 @@ typedef struct FluidDomainSettings {
   float p1[3];          /* End point of BB in local space. */
   float dp0[3];         /* Difference from object center to grid start point. */
   float cell_size[3];   /* Size of simulation cell in local space. */
-  float global_size[3]; /* Global size of domain axises. */
+  float global_size[3]; /* Global size of domain axes. */
   float prev_loc[3];
   int shift[3];         /* Current domain shift in simulation cells. */
   float shift_f[3];     /* Exact domain shift. */
@@ -694,7 +694,7 @@ typedef struct FluidDomainSettings {
   char openvdb_data_depth;
   char _pad11[7]; /* Unused. */
 
-  /* -- Deprecated / unsed options (below). -- */
+  /* -- Deprecated / unused options (below). -- */
 
   /* View options. */
   int viewsettings;
diff --git a/source/blender/makesdna/DNA_lightprobe_types.h b/source/blender/makesdna/DNA_lightprobe_types.h
index 038de8e49cc25c9c48bc3068e1dc82209e1712b6..1a3bda34a8441ddb609fc8172c323eb4adaaa01f 100644
--- a/source/blender/makesdna/DNA_lightprobe_types.h
+++ b/source/blender/makesdna/DNA_lightprobe_types.h
@@ -149,7 +149,7 @@ BLI_STATIC_ASSERT_ALIGN(LightGridCache, 16)
 
 typedef struct LightCacheTexture {
   struct GPUTexture *tex;
-  /** Copy of GPU datas to create GPUTextures on file read. */
+  /** Copy of GPU data to create GPUTextures on file read. */
   char *data;
   int tex_size[3];
   char data_type;
diff --git a/source/blender/makesrna/intern/rna_object_api.c b/source/blender/makesrna/intern/rna_object_api.c
index 10094ade711477ea43293d8b5749d6410ec5bb4a..63c4774d0e5e51abd33485db61b7c979b73b03f4 100644
--- a/source/blender/makesrna/intern/rna_object_api.c
+++ b/source/blender/makesrna/intern/rna_object_api.c
@@ -530,7 +530,7 @@ static int mesh_looptri_to_poly_index(Mesh *me_eval, const MLoopTri *lt)
   return index_mp_to_orig ? index_mp_to_orig[lt->poly] : lt->poly;
 }
 
-/* TOOD(sergey): Make the Python API more clear that evaluation might happen, or requite
+/* TODO(sergey): Make the Python API more clear that evaluation might happen, or require
  * passing fully evaluated depsgraph. */
 static Object *eval_object_ensure(Object *ob,
                                   bContext *C,
diff --git a/source/blender/nodes/geometry/nodes/node_geo_image_texture.cc b/source/blender/nodes/geometry/nodes/node_geo_image_texture.cc
index e1c72fbd438027b0acc61e7de03dfb7b6dd13885..7bbe0716f780b1438557c804a5610621b19497de 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_image_texture.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_image_texture.cc
@@ -82,7 +82,7 @@ class ImageFieldsFunction : public fn::MultiFunction {
 
     image_buffer_ = BKE_image_acquire_ibuf(&image_, &image_user_, &image_lock_);
     if (image_buffer_ == nullptr) {
-      throw std::runtime_error("cannot aquire image buffer");
+      throw std::runtime_error("cannot acquire image buffer");
     }
 
     if (image_buffer_->rect_float == nullptr) {
diff --git a/tests/performance/api/graph.py b/tests/performance/api/graph.py
index b04cd36744906574ef0d14833bd2f3c8d4dd07b6..f4d45fa858c13d36f0e31e91599f70740cc0a0ef 100644
--- a/tests/performance/api/graph.py
+++ b/tests/performance/api/graph.py
@@ -75,7 +75,7 @@ class TestGraph:
                 revision_dates[revision] = int(entry.date)
 
         # Google Charts JSON data layout is like a spreadsheat table, with
-        # colums, rows and cells. We create one column for revision labels,
+        # columns, rows, and cells. We create one column for revision labels,
         # and one column for each test.
         cols = []
         if chart_type == 'line':
diff --git a/tests/python/bl_blendfile_liblink.py b/tests/python/bl_blendfile_liblink.py
index f7bd23080613ff2cb2d2292de154fc3d0e991e45..4cf81c9beaebbddf0a4e0f3668acc80959965d89 100644
--- a/tests/python/bl_blendfile_liblink.py
+++ b/tests/python/bl_blendfile_liblink.py
@@ -109,7 +109,7 @@ class TestBlendLibLinkSaveLoadBasic(TestBlendLibLinkHelper):
         assert(len(bpy.data.meshes) == 0)
         assert(orig_data != read_data)
 
-        # Simple link of a single ObData with obdata instanciation.
+        # Simple link of a single ObData with obdata instantiation.
         self.reset_blender()
 
         link_dir = os.path.join(output_lib_path, "Mesh")
@@ -147,7 +147,7 @@ class TestBlendLibLinkSaveLoadBasic(TestBlendLibLinkHelper):
 
         assert(orig_data == read_data)
 
-        # Simple link of a single Collection, with Empty-instanciation.
+        # Simple link of a single Collection, with Empty-instantiation.
         self.reset_blender()
 
         link_dir = os.path.join(output_lib_path, "Collection")
@@ -166,7 +166,7 @@ class TestBlendLibLinkSaveLoadBasic(TestBlendLibLinkHelper):
 
         assert(orig_data == read_data)
 
-        # Simple link of a single Collection, with ViewLayer-instanciation.
+        # Simple link of a single Collection, with ViewLayer-instantiation.
         self.reset_blender()
 
         link_dir = os.path.join(output_lib_path, "Collection")
@@ -216,7 +216,7 @@ class TestBlendLibAppendBasic(TestBlendLibLinkHelper):
         assert(len(bpy.data.objects) == 0)
         assert(len(bpy.data.collections) == 0)  # Scene's master collection is not listed here
 
-        # Simple append of a single ObData with obdata instanciation.
+        # Simple append of a single ObData with obdata instantiation.
         self.reset_blender()
 
         link_dir = os.path.join(output_lib_path, "Mesh")
diff --git a/tests/python/bl_blendfile_library_overrides.py b/tests/python/bl_blendfile_library_overrides.py
index 3c7c77ce339fa2cae0a81b65fe589eb6a342a08d..e0da1082ee03c4466d320bfe44d9c5406d3ba400 100644
--- a/tests/python/bl_blendfile_library_overrides.py
+++ b/tests/python/bl_blendfile_library_overrides.py
@@ -59,7 +59,7 @@ class TestLibraryOverrides(TestHelper, unittest.TestCase):
         self.assertIsNone(local_id.data.override_library)
         assert(len(local_id.override_library.properties) == 0)
 
-        ##### Generate an override property & operation automaticaly by editing the local override data.
+        ##### Generate an override property & operation automatically by editing the local override data.
         local_id.location.y = 1.0
         local_id.override_library.operations_update()
         assert(len(local_id.override_library.properties) == 1)
@@ -68,7 +68,7 @@ class TestLibraryOverrides(TestHelper, unittest.TestCase):
         assert(len(override_prop.operations) == 1)
         override_operation = override_prop.operations[0]
         assert(override_operation.operation == 'REPLACE')
-        # Setting location.y overridded all elements in the location array. -1 is a wildcard.
+        # Setting location.y overrode all elements in the location array. -1 is a wildcard.
         assert(override_operation.subitem_local_index == -1)
 
         ##### Reset the override to its linked reference data.
@@ -86,7 +86,7 @@ class TestLibraryOverrides(TestHelper, unittest.TestCase):
         assert(len(override_prop.operations) == 1)
         override_operation = override_prop.operations[0]
         assert(override_operation.operation == 'REPLACE')
-        # Setting location.y overridded all elements in the location array. -1 is a wildcard.
+        # Setting location.y overrode all elements in the location array. -1 is a wildcard.
         assert(override_operation.subitem_local_index == -1)
 
         override_property = local_id.override_library.properties[0]
diff --git a/tests/python/bl_keymap_validate.py b/tests/python/bl_keymap_validate.py
index 88c61df6125c30f142bf3cc3f399551bf5fd1308..ebc35c1178ce9cebcfc3a80bc4826f34dd82f5a4 100644
--- a/tests/python/bl_keymap_validate.py
+++ b/tests/python/bl_keymap_validate.py
@@ -34,7 +34,7 @@ This catches the following kinds of issues:
   An escape key could have the value "NORTH" instead of "PRESS".
 
 This works by taking the keymap data (before it's loaded into Blender),
-then comparing it with that same keymap after exporting and imporing.
+then comparing it with that same keymap after exporting and importing.
 
 NOTE: