Weekly Project News

Archives
Subscribe

Weekly GitHub Report for Tensorflow: August 24, 2026 - August 31, 2026 (21:13:39)

Weekly GitHub Report for Tensorflow

Thank you for subscribing to our weekly newsletter! Each week, we deliver a comprehensive summary of your GitHub project's latest activity right to your inbox, including an overview of your project's issues, pull requests, contributors, and commit activity.


Table of Contents

  • I. News
    • 1.1. Recent Version Releases
    • 1.2. Other Noteworthy Updates
  • II. Issues
    • 2.1. Top 5 Active Issues
    • 2.2. Top 5 Stale Issues
    • 2.3. Open Issues
    • 2.4. Closed Issues
    • 2.5. Issue Discussion Insights
  • III. Pull Requests
    • 3.1. Open Pull Requests
    • 3.2. Closed Pull Requests
    • 3.3. Pull Request Discussion Insights
  • IV. Contributors
    • 4.1. Contributors

I. News

1.1 Recent Version Releases:

The current version of this repository is v2.19.0

1.2 Version Information:

Released on March 5, 2025, TensorFlow version 2.19.0 introduces breaking changes to the LiteRT (tf.lite) API, including making certain C++ constants const references for better compatibility and deprecating the Python tf.lite.Interpreter in favor of ai_edge_litert.interpreter ahead of its removal in version 2.20. Key improvements include runtime support for the bfloat16 data type in the tfl.Cast operation, alongside the discontinuation of separate libtensorflow package publishing, with the package still accessible via PyPI.

II. Issues

2.1 Top 5 Active Issues:

We consider active issues to be issues that that have been commented on most frequently within the last week. Bot comments are omitted.

  1. [STAT:CONTRIBUTION WELCOME] [TYPE:BUG] [COMP:OPS] [2.17] tf.nn.batch_normalization returns incorrect gradients for scale (gamma): violates linearity w.r.t. upstream gradients (output_gradients) on TF 2.3.0 and 2.17.0 (silent correctness bug): This issue reports a silent correctness bug in TensorFlow versions 2.3.0 and 2.17.0 where the gradients computed by tf.nn.batch_normalization with respect to the scale parameter (gamma) violate linearity with upstream gradients, potentially corrupting training updates and harming model quality. The problem manifests as zero gradients for a given upstream gradient but significantly non-zero gradients when the upstream gradient is scaled, indicating a fundamental violation of gradient linearity that is reproducible and systematic.

    • Comments confirm the issue reproduces on multiple TensorFlow versions and both GPU and CPU environments, suggesting it is not CUDA-specific; however, one comment argues the observed deviations are due to floating-point rounding noise near zero rather than an actual gradient computation defect, while maintainers encourage community contributions for a fix.
    • Number of comments this week: 3
  2. [TYPE:BUG] [COMP:OPS] [AWAITING PR MERGE] [TF 2.19] tf.pad 'SYMMETRIC' & 'REFLECT' random and wrong behavior on large tensor: This issue reports a bug in TensorFlow where the tf.pad function with modes 'SYMMETRIC' and 'REFLECT' exhibits incorrect and seemingly random behavior when applied to very large tensors, specifically those exceeding 2^31 elements. The problem is traced to the MirrorPad kernel using 32-bit indexing unconditionally, causing index arithmetic overflow and corrupted output, and a fix has been proposed to update the kernel to use 64-bit indexing for large tensors.

    • The comments include a shared Colab link for reproduction, an acknowledgment of the issue with a request for community contributions, a detailed root cause analysis explaining the 32-bit indexing overflow in MirrorPad, and confirmation that a pull request addressing the problem has been submitted and is awaiting merge.
    • Number of comments this week: 3
  3. [TYPE:BUG] [COMP:OPS] [AWAITING PR MERGE] [TF 2.19] Crash triggered by combination of tf.raw_ops.BarrierInsertMany and tf.raw_ops.BarrierTakeMany with num_elements=-1 when TF_ENABLE_ONEDNN_OPTS is set to 1: This issue reports a crash in TensorFlow triggered by using the combination of tf.raw_ops.BarrierInsertMany and tf.raw_ops.BarrierTakeMany with num_elements set to -1, which causes a fatal error due to an invalid negative dimension when building the output shape. The problem occurs regardless of the TF_ENABLE_ONEDNN_OPTS environment variable setting and has been reproduced on TensorFlow versions 2.19, 2.21.0, and nightly builds, with a fix proposed to add proper input validation to prevent the crash.

    • The comments confirm reproduction of the bug on multiple TensorFlow versions and provide a reference gist; maintainers acknowledge the issue and encourage community contributions; a pull request has been submitted that adds input validation to reject negative num_elements values, clarifies that oneDNN is not involved, and the fix is awaiting merge.
    • Number of comments this week: 3
  4. [TYPE:BUG] [COMP:OPS] [AWAITING PR MERGE] [2.21.0] tf.raw_ops.BlockLSTMGrad and tf.raw_ops.LSTMBlockCellGrad crash when input tensor has invalid shape.: This issue reports a bug where the TensorFlow operations tf.raw_ops.BlockLSTMGrad and tf.raw_ops.LSTMBlockCellGrad crash when given input tensors with invalid shapes, such as a zero batch size or empty tensors. The problem arises because these gradient operations lack proper shape and rank validation checks, leading to crashes or incorrect computations when inputs have inconsistent or unexpected dimensions.

    • The comments confirm the issue was reproduced on multiple TensorFlow versions, and a pull request was submitted that adds the necessary shape and rank checks to prevent crashes and ensure consistent behavior; the fix is pending merge and community contributions were encouraged.
    • Number of comments this week: 3
  5. [TYPE:BUG] [COMP:OPS] [COMP:MKL] [2.20.0] [AWAITING PR MERGE] tf.nn.avg_pool raises UnimplementedError on CPU when pooling across both depth and spatial dimensions: This issue reports that the TensorFlow operation tf.nn.avg_pool raises an UnimplementedError on CPU when attempting to pool across both depth and spatial dimensions simultaneously, which is unsupported by design. Additionally, the error message incorrectly references MaxPooling instead of AvgPooling, causing confusion, and the user provides a reproducible example comparing TensorFlow's behavior with PaddlePaddle's successful execution.

    • The comments clarify that the error arises from an unsupported configuration rather than a functional bug, explain the correct usage for spatial-only pooling in NCHW format, acknowledge the misleading error message, and note that a fix has been proposed and is awaiting merge to make the error messages op-neutral.
    • Number of comments this week: 3

2.2 Top 5 Stale Issues:

We consider stale issues to be issues that has had no activity within the last 30 days. The team should work together to get these issues resolved and closed as soon as possible.

As of our latest update, there are no stale issues for the project this week.

2.3 Open Issues

This section lists, groups, and then summarizes issues that were created within the last week in the repository.

Issues Opened This Week: 18

Summarized Issues:

  • JIT Compilation Inconsistencies and Missing Kernels: Several TensorFlow operations exhibit inconsistent behavior or fail to compile when using jit_compile=True due to missing registered XLA CPU JIT kernels. This leads to silent failures, such as NaN outputs or compilation errors, that do not occur in eager execution or autoclustering modes, causing unreliable model training and execution.
  • issues/126005, issues/126007, issues/126413, issues/126414, issues/126415
  • Integer Overflow and Memory Corruption in Tensor Operations: Multiple TensorFlow operations suffer from unchecked integer overflow in index or size calculations, leading to fatal errors, process termination, or memory corruption. These bugs occur in slicing, splitting, tensor array operations, and gather/scatter implementations, causing crashes instead of proper error handling.
  • issues/126125, issues/126126, issues/126127, issues/126135, issues/126136
  • Fatal Errors from Invalid Tensor Shapes and Data Types: Certain TensorFlow kernels and operations cause fatal process termination when encountering invalid input shapes or data types, such as reading float tensors as int32 or exceeding maximum tensor rank limits. Instead of returning recoverable errors, these issues abruptly terminate the process, reducing robustness.
  • issues/126128, issues/126129
  • Performance and Resource Usage Inefficiencies: Some TensorFlow operations inefficiently handle input data, such as materializing full Cartesian products unnecessarily or failing to check for integer overflow in buffer size calculations. These inefficiencies lead to excessive CPU and memory usage or incorrect output sizes, impacting performance and correctness.
  • issues/126130, issues/126131
  • Numerical Accuracy and Gradient Calculation Bugs: TensorFlow's sigmoid gradient computation suffers from catastrophic cancellation for large positive inputs, causing premature truncation to zero and breaking expected gradient symmetry. This numerical inaccuracy can affect model training stability and correctness.
  • issues/126060
  • TFLite Conversion and Inference Hanging: Converting a 4-layer stacked LSTM model to TFLite with newer TensorFlow and Keras versions results in a WHILE-loop based graph that hangs indefinitely during inference on TFLite Micro for long sequences. Older versions produce fused ops that run correctly, indicating regression in conversion or runtime behavior.
  • issues/126061
  • PluggableDevice Backend and Kernel Export Issues: The Metal PluggableDevice backend is being developed to reach CUDA op set parity by implementing many operations, but starting with TensorFlow 2.20.0, the shipped binary no longer exports experimental kernel C API symbols needed for PluggableDevices to perform training. This missing export breaks training on all platforms despite header declarations.
  • issues/126284, issues/126374

2.4 Closed Issues

This section lists, groups, and then summarizes issues that were closed within the last week in the repository. This section also links the associated pull requests if applicable.

Issues Closed This Week: 48

Summarized Issues:

  • Build and Compilation Failures: Multiple issues report build or compilation failures due to environment mismatches or incorrect configurations. These include errors caused by invalid preprocessing directives on AWS Graviton3 CPUs, Clang version mismatches in Docker images, unknown compiler arguments during Spack builds, missing linker flags for system libraries, and clang version detection failures when using ccache.
  • issues/76311, issues/79756, issues/93049, issues/126093, issues/125939
  • XLA Compilation and JIT Issues: Several bugs arise from TensorFlow's XLA compilation or JIT compilation, including failures due to missing kernels, inconsistent error handling, shape and indexing errors, silent incorrect outputs, and differences in casting or reduction behavior. These issues cause crashes, compilation errors, or inconsistent runtime behavior between eager and compiled modes.
  • issues/122047, issues/122053, issues/125536, issues/125538, issues/125545, issues/125686, issues/125978, issues/126189, issues/126190, issues/126191, issues/126212
  • TensorFlow Operation Bugs and Crashes: Various TensorFlow operations exhibit bugs such as segmentation faults, illegal memory access, fatal assertion failures, and incorrect outputs. These include issues with tf.Variable indexing in graph mode, tf.math.bincount parameter handling, tf.raw_ops.Round integer handling, SparseSegmentSumGrad GPU crashes, FusedBatchNormV3 producing NaNs, and tf.linalg.LinearOperatorLowRankUpdate causing segmentation faults during gradients.
  • issues/75996, issues/98814, issues/99513, issues/112212, issues/113148, issues/118701, issues/125502
  • GPU and CUDA Compatibility Issues: Some issues describe failures related to GPU support, including CUDA kernel incompatibility with NVIDIA RTX 5070 Ti on WSL2, and inconsistent behavior of tf.raw_ops.NotEqual between CPU and GPU backends. These problems cause runtime errors and unexpected exceptions during GPU execution.
  • issues/90291, issues/118203
  • Memory Leaks and Resource Management: There are reports of memory leaks and resource mismanagement, such as a memory leak in the TFLiteConverter.convert() method causing unbounded memory growth, and double-unlock errors in checkpoint loading code leading to undefined behavior.
  • issues/122598, issues/103924
  • Segmentation Faults and Native Crashes: Several bugs cause segmentation faults or native crashes due to invalid memory access or improper input validation. Examples include crashes on CPU-only VMware VMs due to shape validation issues, segmentation faults from debug raw operations in SavedModels, and fatal SIGFPE errors when parsing SequenceExample with zero-dimension features.
  • issues/104830, issues/123114, issues/123476
  • TensorFlow API Behavior and Consistency Issues: Some issues highlight inconsistencies or unexpected behaviors in TensorFlow APIs compared to expectations or other libraries. These include tf.unravel_index differing from NumPy by not raising errors on out-of-bounds indices, tf.raw_ops.Round returning zero for integer inputs, and tf.nn.elu returning zero gradients for negative float64 inputs instead of expected finite values.
  • issues/112130, issues/112212, issues/124833
  • Error Handling and Input Validation Deficiencies: Multiple bugs involve insufficient input validation or inconsistent error handling, such as tf.signal.stft crashing on zero fft_length instead of raising exceptions, summary writer failing on multi-element step tensors, and tf.nn.atrous_conv2d showing inconsistent error handling between CPU and GPU.
  • issues/108140, issues/108659, [issues/125510](https://github.com/issues/125510]
  • Documentation and Feature Requests: Some issues request documentation improvements or information, including clarifications on constant_op.constant imports, warnings about tf.io.gfile security risks, and inquiries about the timing of the next official TensorFlow release.
  • issues/81954, issues/110916, issues/110947
  • TensorFlow Lite Converter Issues: There are bugs and process concerns related to the TFLite converter, including an unmerged pull request pending for months and a bug causing invalid 'tfl.mul' operations during MatMul fusion leading to conversion failures.
  • issues/124085, issues/124103
  • Concurrency and Configuration Bugs: Issues include crashes caused by invalid configuration parameters such as negative inter_op_parallelism_threads causing fatal assertion failures during thread pool initialization.
  • issues/124954
  • Miscellaneous Issues: Other reports include spam submissions promoting unrelated learning rate schedulers and requests for detailed system information to diagnose problems.
  • issues/126406, issues/124683
  • Symbol Clashes and Runtime Conflicts: A regression causes symbol clashes between TensorFlow and Triton (>=3.7) when loaded with RTLD_GLOBAL, resulting in segmentation faults during interpreter startup.
  • issues/124205
  • TensorFlow Image Functions Lack Gradients: The image adjustment functions tf.image.adjust_hue, adjust_saturation, and adjust_contrast lack registered gradients, preventing their use in differentiable pipelines.
  • issues/126083

2.5 Issue Discussion Insights

This section will analyze the tone and sentiment of discussions within this project's open and closed issues that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.

Based on our analysis, there are no instances of toxic discussions in the project's open or closed issues from the past week.


III. Pull Requests

3.1 Open Pull Requests

This section provides a summary of pull requests that were opened in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.

Pull Requests Opened This Week: 56

Key Open Pull Requests

1. Add the Metal PluggableDevice plugin project for Apple silicon: This pull request adds a self-contained Metal PluggableDevice plugin project under tensorflow/tools/metal_plugin to provide a stable, out-of-tree GPU backend for Apple silicon that builds against installed TensorFlow versions using only the stable C API, includes its own build system, packaging, tests, benchmarks, and CI workflow, and addresses prior issues with the deprecated tensorflow-metal project by enabling GPU acceleration on macOS with comprehensive operator coverage, improved performance, profiling support, graph optimizations, and correct device-side variable updates.

  • URL: pull/126384
  • Associated Commits: 83997, f8acd, d1fea, 7e58d, 9d8fe, 93268, cd5a7, 8acaa, 90a40, 488c1, bfccb, fa5bb, f5239, 9c0ee, 1e6d4, 4e8d9, d9fb5, b70ef, c2da0, ed9ad

2. Enable Bzlmod by default: This pull request enables Bzlmod by default in the .bazelrc configuration file and updates various dependencies and platform targets in the MODULE.bazel file, while also addressing multiple CI build and presubmit failures related to Bzlmod integration.

  • URL: pull/126347
  • Associated Commits: 644e6, bdfea, 82df2, 4e50c, b61d7, 54ab5, 73431, 4e49b, 0b113, 219ce

3. feat: Add Advanced Quantization Dense layer: This pull request introduces a new QuantizedDense layer to the core Keras API that enables native support for advanced 4-bit and 8-bit quantization formats, allowing users to perform Quantization-Aware Training and Post-Training Quantization directly within TensorFlow while maintaining compatibility with distributed training strategies.

  • URL: pull/126185
  • Associated Commits: 19ea4, d09cb, 1595e, ba1b7, c2998, 2a764, b4ac5

Other Open Pull Requests

3.2 Closed Pull Requests

This section provides a summary of pull requests that were closed in the repository over the past week. The top three pull requests with the highest number of commits are highlighted as 'key' pull requests. Other pull requests are grouped based on similar characteristics for easier analysis. Up to 25 pull requests are displayed in this section, while any remaining pull requests beyond this limit are omitted for brevity.

Pull Requests Closed This Week: 105

Key Closed Pull Requests

1. Add an in-tree Metal PluggableDevice backend for Apple silicon: This pull request adds a comprehensive in-tree Metal PluggableDevice backend for Apple silicon to TensorFlow, implementing a Metal GPU device and memory foundation with 356 operation registrations that cover nearly all CUDA GPU ops except a few TensorRT-specific ones, enabling GPU acceleration on macOS Apple silicon by integrating tightly with TensorFlow’s core runtime, supporting unified memory, stream ordering, a wide range of kernels including convolutions, pooling, recurrent cells, optimizers, and many others, while also providing both linked and loadable plugin build modes, detailed correctness checks, and extensive documentation and tests, thereby replacing the deprecated out-of-tree Apple tensorflow-metal plugin and restoring GPU support for Python 3.13 and later on macOS.

  • URL: pull/126254
  • Associated Commits: d37a7, b0f4e, 61716, 999d5, c228d, 0c13c, 13909, 2c005, d9dec, d3cb5, 339b5, 4aa80, 13b61, c85c0, a61e8, 5129e, ea0ef, 3a5cb, 6633e, 8bb95, 8257c, 53e56, 84348, 5d8c1, 930b0, 83edb, 79656, c0d9e, e566b, 6d34d, 7d8a5, 702e3, a94e4, 02382, 1e05d, 0dad7, 6d7c4, 99516, 89cea, 28f13, 68360, 685d7, c0add, 0ecae, 6735a, c3779, 0efc4, d67c0, c3bc6, 8687c, 55563, 773d7, 9ea39, fab32, e636c, 08eda, 0ac9e, 02e07, ab493, f0f93, 77e6d, c4009, 8ba0a, 5b0fe, 330f9, 3351f, b5fde, d8f08, 3e61d, 055f6, c934b, 56910, 89485, 025af, 3c9a9, b5997, 6614f, 9bc32, f90a5, 3a1aa, aabd3, d3977, ab7f2, 09724, 8fb48, 586df, 83ee1, ae688, 45707, 93611, 812bc, 6536e, ef1f3, 9eb4e, cd496, 54834, 8c083, 60c45, 4d4c1, 131c9, 50592, 12053, 2fa9b, 2f081, 339af, 595b3, 0b1ce, c4e06, 232c0, f5bb7, b2cf8, efef0, d4438, 793a1, c914d, 53c2f, 2e170, e3bf3, 7a015, afa7a, 64828, 4b8a8, 2c57e, 6b198, 79aa4, 8ea61, f8090, 46cd9

2. Make checkpoint reader safe for free-threaded Python: This pull request makes the TensorFlow checkpoint reader safe for use in CPython 3.14 free-threaded builds by serializing concurrent access to the native checkpoint reader with a native mutex, correctly initializing TensorFlow's shared NumPy C API across translation units, and marking the pybind11 module as GIL-independent, thereby enabling safe multi-threaded operations without the global interpreter lock.

  • URL: pull/125636
  • Associated Commits: 2d59e, 82734, 37686, a5088, d8c6e, ac12f, 472d3, ad6be, cbf93, 48282, bd6fa, 8072d, 785f3

3. Fix logdet general matrices: This pull request fixes the implementation of tf.linalg.logdet by replacing the Cholesky decomposition with LU decomposition to correctly compute the log determinant for general square matrices, including non-symmetric positive definite ones, and ensures compatibility with PyTorch and NumPy behaviors while addressing multiple related issues.

  • URL: pull/112118
  • Associated Commits: 05271, 5ff47, c5858, b5601, f339a, d6116, cb748, ebc64, bc370, 10c15, d2c5e, aea28

Other Closed Pull Requests

  • Label smoothing validation in loss functions: Multiple pull requests enhance the validation and error handling of the label_smoothing parameter in categorical_crossentropy and binary_crossentropy loss functions. These changes include range checks for scalar and tensor inputs, fixing dtype mismatches, improving axis handling, and adding comprehensive unit tests to ensure robustness.
  • pull/122717, pull/122716
  • Thread safety and GIL independence in Python bindings: Several pull requests make TensorFlow's Python API dispatcher, function-parameter canonicalizer, and distributed layout-related bindings safe for CPython free-threaded builds. They achieve this by synchronizing mutable state, managing Python object ownership with owned references, updating Python C API state checks, and declaring pybind11 modules as GIL-independent, enabling concurrent Python thread calls without race conditions.
  • pull/125641, pull/125643, pull/125614
  • Fixes for GPU and CPU operation consistency and error handling: Pull requests address issues such as consistent error raising for singular matrices in MatrixSolve on GPUs, adding bounds checking to tf.unravel_index to reject negative indices, and improving tf.nn.avg_pool1d shape inference to prevent negative dimension errors. These fixes align GPU and CPU behaviors and improve robustness with added tests.
  • pull/109950, pull/112637, pull/113502
  • Build and linker fixes: A pull request fixes linker failures when building TensorFlow with TF_SYSTEM_LIBS by ensuring system library linker flags propagate correctly to relevant shared libraries, resolving undefined reference errors caused by symbol visibility and strict linking rules.
  • pull/126112
  • Validation improvements to prevent crashes: Multiple pull requests add validation to prevent runtime crashes, including scalar shape validation for step parameters in summary writers, rejecting zero-sized or non-positive dimensions in sequence parsing ops, rejecting invalid scatter indices in TensorList scatter operations, and improving conv2d_transpose output shape validation. These changes prevent fatal errors and add regression tests.
  • pull/111887, pull/123907, pull/125218, [pull/125594](https://github.com/pull/125594]
  • Bug fixes in configuration and parsing: Fixes include handling missing or unparseable clang version outputs in configure.py to avoid crashes, centralizing BMP validation to safely reject malformed inputs, and fixing a stack overflow caused by infinite recursion in debug file IO. These improve stability and error handling during configuration and file operations.
  • pull/126064, [pull/118777](https://github.com/pull/118777], [pull/124609](https://github.com/pull/124609]
  • Security and robustness enhancements: A pull request fixes a critical code injection vulnerability by validating attribute and argument names in ops and applying defensive escaping in code generation. Another fixes three critical security and crash bugs by adding overflow guards, negative index validation, and modifying debug operations to log warnings instead of crashing.
  • pull/124374, [pull/123323](https://github.com/pull/123323]
  • XLA kernel support and operation improvements: One pull request adds XLA kernel support for tf.linalg.det and slogdet with jit_compile=True, handling special cases and restricting support to float types. Another improves np.moveaxis by adding axis bounds validation to raise consistent AxisError exceptions, aligning with NumPy behavior.
  • pull/126101, [pull/126092](https://github.com/pull/126092]
  • Warning for Python random usage in tf.function: A pull request adds detection and a detailed warning in AutoGraph when Python’s random module functions are used inside a tf.function, explaining issues with tracing and XLA compilation and recommending TensorFlow’s tf.random equivalents, with unit tests ensuring correct warning behavior.
  • pull/109227
  • Dynamic OpenCL library loading in TFLite: A pull request introduces dynamic OpenCL library loading support by using pkg-config to detect OpenCL installations and setting the library name based on the OpenCL version, replacing hardcoded names to improve compatibility across Linux distributions.
  • pull/109377
  • Bug fix in tf.math.bincount parameter validation: A pull request fixes a bug where specifying a maxlength smaller than minlength would silently produce an output shorter than the guaranteed minimum length by adding a static check that raises a ValueError when contradictory bounds are detected.
  • pull/125594

3.3 Pull Request Discussion Insights

This section will analyze the tone and sentiment of discussions within this project's open and closed pull requests that occurred within the past week. It aims to identify potentially heated exchanges and to maintain a constructive project environment.

Based on our analysis, there are no instances of toxic discussions in the project's open or closed pull requests from the past week.


IV. Contributors

4.1 Contributors

Active Contributors:

We consider an active contributor in this project to be any contributor who has made at least 1 commit, opened at least 1 issue, created at least 1 pull request, or made more than 2 comments in the last month.

If there are more than 10 active contributors, the list is truncated to the top 10 based on contribution metrics for better clarity.

Contributor Commits Pull Requests Issues Comments
BenjaminDEMAILLE 155 7 2 9
vishwakt 43 15 0 16
MinaIbrahim10 47 9 0 0
kaivalya-cyber 43 12 0 0
GodlyDonuts 37 5 0 11
AshiteshSingh 33 10 0 0
Venkat6871 1 0 0 40
MRiffiAslett 5 1 15 15
hunterkritik-byte 26 5 1 1
Kayyuri 0 0 0 31

Access Last Week's Newsletter:

  • Link
Don't miss what's next. Subscribe to Weekly Project News:
Powered by Buttondown, the easiest way to start and grow your newsletter.