Weekly Project News

Archives

Weekly GitHub Report for Tensorflow: March 23, 2026 - March 30, 2026 (22:24:28)

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 a breaking change in the LiteRT (tf.lite) API, including the deprecation of tf.lite.Interpreter in favor of ai_edge_litert.interpreter and changes to certain C++ constants for better API compatibility. 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:AWAITING RESPONSE] [TYPE:BUG] [COMP:OPS] [COMP:GPU] [2.21.0] tf.raw.ops.ResourceGather aborts with internal CHECK failure on dtype mismatch: This issue reports a bug in TensorFlow 2.21.0 where the operation tf.raw.ops.ResourceGather causes a fatal internal CHECK failure and aborts the process when there is a dtype mismatch between the requested output and the resource variable. The expected behavior is for the operation to validate dtype consistency and raise a standard TensorFlow exception like InvalidArgumentError instead of terminating the process.

    • The comments provide a workaround suggesting the use of tf.gather, which avoids the crash by not exposing a dtype argument and raises standard errors for invalid inputs; the original reporter confirms that this workaround is effective but emphasizes that ResourceGather should ideally handle dtype mismatches more gracefully.
    • Number of comments this week: 2
  2. [STAT:AWAITING RESPONSE] [TYPE:BUG] [COMP:OPS] [COMP:GPU] [2.21.0] tf.raw.ops.ResourceGatherNd aborts with internal CHECK failure on dtype mismatch instead of raising an error: This issue reports that the TensorFlow operation tf.raw.ops.ResourceGatherNd causes a fatal internal check failure and aborts the process when there is a dtype mismatch between the requested output and the resource variable, instead of raising a recoverable TensorFlow exception. The user expects that dtype inconsistencies should be handled gracefully by returning an error like InvalidArgumentError rather than terminating the program abruptly.

    • The comments provide a workaround suggesting the use of tf.gather_nd, which respects the variable’s dtype and prevents the crash, with an option to cast the result afterward; the original reporter acknowledges the workaround but emphasizes that the underlying issue should ideally be fixed to raise a proper error instead of aborting.
    • Number of comments this week: 2
  3. [STAT:AWAITING RESPONSE] [TYPE:BUG] [COMP:XLA] [2.20.0] Bug Report: XLA compilation fails when tf.Variable is created inside @tf.function-decorated method: This issue reports a bug where XLA compilation fails with a ValueError when a tf.Variable is created inside a method decorated with @tf.function(jit_compile=True), as TensorFlow requires variables to be created only once and reused within such functions. The user provides a minimal reproducible example and error logs demonstrating that creating tf.Variable inside the tf.function context leads to this failure.

    • The comments explain that tf.Variables must be created outside the tf.function or initialized in the init or build methods to avoid the ValueError, providing documentation and a reference gist for guidance; the user acknowledges the explanation and inquires whether the issue can be fixed.
    • Number of comments this week: 2
  4. [TYPE:BUG] [TF] InaccessibleTensorError when accessing tensors created inside tf.while_loop after the loop: This issue reports a bug where tensors created inside a tf.while_loop and stored in a Python list become inaccessible after the loop, resulting in an InaccessibleTensorError when attempting to use them outside the loop's scope. The problem occurs in TensorFlow version 3.15.0 and is demonstrated with a standalone code example that triggers the error during tensor concatenation after the loop.

    • The comments include a user reproducing the bug with a simplified example and environment details, confirming the error arises from tensors created inside the while loop being out of scope; another comment questions whether the issue is truly a bug, suggesting the problem may stem from treating a tf.Tensor as a Python integer in the loop iteration.
    • Number of comments this week: 2
  5. [TYPE:BUG] tf.keras.layers.Conv1DTranspose failed with valid parameters: This issue reports a bug where the tf.keras.layers.Conv1DTranspose layer works correctly with symbolic Keras inputs but fails with eager TensorFlow tensors despite using valid parameters, producing an error related to the ONEDNN library. The problem appears to be linked to the MKL backend's inability to create a primitive descriptor for the convolution operation, and similar failures are observed with Conv2DTranspose and Conv3DTranspose layers under comparable conditions.

    • The comments confirm that the same error occurs with Conv2DTranspose and Conv3DTranspose layers, showing that symbolic inputs succeed while eager execution fails with an MKL-related aborted error, suggesting a broader issue with MKL primitives in transpose convolution layers.
    • Number of comments this week: 2

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: 31

Summarized Issues:

  • XLA Compilation and tf.function Issues: Several bugs occur when using @tf.function(jit_compile=True) with XLA compilation, including ValueError for unsupported dtypes in tf.range, errors creating variables inside tf.function, and failures in tf.keras.utils.pad_sequences with Tensor inputs. These issues cause crashes or exceptions that do not occur without XLA, indicating problems with XLA's handling of certain TensorFlow operations and control flow constructs.
  • [issues/113143, issues/113170, issues/113241]
  • Sparse and Resource Apply Operations Fatal Errors: TensorFlow operations like ResourceSparseApplyAdadelta and ResourceSparseApplyAdagrad abort the process with fatal internal check failures instead of raising recoverable exceptions when given invalid inputs or dtype mismatches. This leads to hard crashes rather than graceful error handling during sparse gradient updates.
  • [issues/113144, issues/113145]
  • SparseSegment GPU Crashes: Multiple tf.raw.ops.SparseSegment* operations cause fatal GPU crashes with cudaErrorIllegalAddress on NVIDIA GPUs when given invalid or malformed inputs, resulting in process aborts instead of safe error returns. These bugs corrupt CUDA contexts and cause unexpected termination during kernel execution.
  • [issues/113146, issues/113147, issues/113148, issues/113149]
  • tf.data Dataset and Service Crashes on Large Inputs: Various tf.data components such as FixedLengthRecordDataset, Dataset.shuffle, and experimental.index_table_from_dataset cause segmentation faults or std::bad_alloc errors when given excessively large parameters like buffer_size, num_parallel_reads, or vocab_size. Additionally, tf.data.experimental.service.DispatchServer crashes with exit code 139 after normal shutdown, indicating instability in dataset handling and service lifecycle.
  • [issues/113159, issues/113160, issues/113162, issues/113163, issues/113167]
  • Pooling Operations Unimplemented or Erroneous on CPU: The tf.nn.avg_pool3d and tf.nn.avg_pool operations raise UnimplementedError on CPU for certain data formats and pooling configurations, such as pooling across multiple spatial dimensions or using NCDHW format. These errors cause confusion due to unclear messages and incorrect references to MaxPooling, highlighting incomplete CPU support for some pooling scenarios.
  • [issues/113179, issues/113181, issues/113187]
  • Convolution and Pooling Inconsistencies Between Eager and Graph Modes: Functions like tf.nn.conv1d, tf.nn.convolution, tf.nn.depthwise_conv2d, tf.nn.avg_pool1d, and tf.nn.max_pool behave inconsistently between eager execution and tf.function graph mode, often failing with negative dimension size errors or producing incorrect outputs when using dilation or specific data formats. This inconsistency complicates debugging and model portability.
  • [issues/113318, issues/113319, issues/113320, issues/113322, issues/113324]
  • Convolution Forward Propagation Failures with oneDNN: The tf.nn.conv3d_transpose operation and tf.keras.layers.Conv1DTranspose layer fail on CPU or eager tensors due to oneDNN errors when creating convolution primitives, causing aborted operations despite working in other frameworks or symbolic Keras inputs. This indicates integration issues with oneDNN primitives in certain convolution scenarios.
  • [issues/113188, issues/113330]
  • Control Flow Errors with tf.cond and jit_compile: Using tf.cond inside @tf.function(jit_compile=True) causes TypeError when the predicate is a Python boolean or when more than two branches are used, resulting in unclear error messages and complicating debugging of conditional logic under XLA compilation.
  • [issues/113334, issues/113345]
  • Tensor Accessibility and Scope Issues in tf.while_loop: Tensors created inside a tf.while_loop and stored in Python lists become inaccessible after loop completion, raising InaccessibleTensorError when accessed outside the loop, indicating scope and lifetime management problems for tensors in control flow constructs.
  • [issues/113242]
  • Memory Leak in Keras Model Lifecycle: Repeated creation, training, and deletion of Keras models inside loops cause progressive memory leaks despite attempts to clear sessions and force garbage collection, affecting multiple platforms and TensorFlow variants. This leads to steadily increasing memory usage and potential resource exhaustion.
  • [issues/113529]
  • GPU Detection Failure on Arch Linux: TensorFlow 2.21.0 fails to detect GPUs on fully updated Arch Linux systems with RTX 2070 Super and RTX 4090 GPUs, whereas version 2.20.0 detects them correctly. The issue persists across multiple machines and nightly builds, indicating a regression in GPU device detection.
  • [issues/113541]
  • InvalidArgumentError on Empty Reduction Axis: Calling tf.math.argmin on tensors with an empty dimension along the reduction axis raises an InvalidArgumentError instead of handling the empty axis gracefully or returning a consistent result, causing unexpected failures in reduction operations.
  • [issues/113185]

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: 3

Summarized Issues:

  • TensorFlow operation errors and failures: The MKL/oneDNN MaxPool3D operation in TensorFlow causes a fatal CHECK failure instead of raising a Python-level InvalidArgumentError when given an input tensor without the required 5D shape. This issue highlights a problem with error handling that leads to process abortion rather than a manageable exception.
  • issues/111457
  • Numerical discrepancies in tensor operations: There is a minor numerical discrepancy in batched matrix multiplication results on 3D float32 tensors between TensorFlow's tf.linalg.matmul and PyTorch's torch.matmul. The maximum absolute difference observed is approximately 2.38e-07, indicating slight but measurable differences in output across frameworks.
  • issues/111487
  • Model quantization support for mobile: There is a request for enhanced support for model quantization specifically designed for mobile devices using TensorFlow Lite. This reflects a need for improved tooling or features to optimize models for mobile deployment.
  • issues/112171

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: 16

Key Open Pull Requests

1. Fix CHECK abort in SparseApplyAdadelta and other SparseApply ops when grad has fewer dimensions than var: This pull request fixes a fatal CHECK abort in the SparseApplyAdadelta and eight other SparseApply operations by adding explicit dimension equality checks between the var and grad tensors before iterating over their dimensions, thereby preventing crashes when grad has fewer dimensions than var and replacing the abort with a proper InvalidArgumentError, along with adding corresponding tests to verify this behavior.

  • URL: pull/113100
  • Associated Commits: 85220, 1e58c

2. Validate tf.name_scope names with spaces in eager and graph modes: This pull request improves TensorFlow by validating and normalizing tf.name_scope names that contain spaces or unsupported characters in both eager and graph modes, preventing ValueError exceptions when dynamic strings are used and enhancing stability and usability.

  • URL: pull/113161
  • Associated Commits: d14b3, 62ba5

3. Fix/resource sparse adagrad dtype check: This pull request adds a data type check for the resource sparse Adagrad optimizer and includes a regression test to ensure its correctness.

  • URL: pull/113276
  • Associated Commits: dc7b6, 8cf1f

Other Open Pull Requests

  • Integer overflow and memory safety fixes in TFLite kernels: Multiple pull requests address critical integer overflow vulnerabilities and memory safety issues in TensorFlow Lite kernels. These fixes include adding comprehensive overflow checks in the stablehlo_pad kernel to prevent heap buffer overflows and adding missing negative index bounds checks in stablehlo_scatter and stablehlo_gather kernels to prevent out-of-bounds heap memory access caused by negative indices, thereby mitigating potential security vulnerabilities.
    • pull/113493, pull/113492
  • Error handling and validation improvements in resource operations: Pull requests improve error handling by adding dtype validation in ResourceGatherOp and ResourceGatherNdOp to replace internal CHECK failures with proper InvalidArgumentErrors, and by adding validation in DeleteMultiDeviceIterator to prevent crashes by ensuring valid resource handles before access. These changes enhance robustness and provide clearer error messages for invalid inputs.
    • pull/113268, pull/113269
  • GPU operation correctness and NaN propagation fixes: A pull request fixes NaN propagation issues in the unsorted_segment_max GPU operation by replacing max/min functions with fmaxf/fminf in atomic and non-atomic operations. This ensures GPU behavior aligns with CPU and correctly propagates NaN values, addressing a known issue.
    • pull/113270
  • Shape inference and output dimension fixes in pooling operations: A pull request fixes a bug in tf.nn.avg_pool1d where using padding=VALID with inputs smaller than the filter size caused negative dimension errors in graph mode. The update aligns shape inference to produce zero-sized output dimensions, preventing compilation crashes and adding tests for multiple data formats.
    • pull/113502
  • Improved error messages for matrix operations: One pull request enhances the error message in tf.matmul by explicitly showing mismatched inner dimensions and noting that both input tensors must be at least 2D. This makes it easier for users to understand matrix size incompatibility errors.
    • pull/113503
  • Disabling problematic oneDNN operations: A pull request disables oneDNN operations for the conv3d_transpose function on CPU to fix an abort error, addressing a specific issue.
    • pull/113506
  • Security improvements in build scripts: A pull request replaces the use of os.system() with subprocess in multiple build wrapper scripts to prevent execution of shell commands with user-controllable input, addressing a critical security vulnerability.
    • pull/113512
  • Memory safety and integer overflow fixes in JPEG Uncompress: A pull request improves memory safety in the JPEG Uncompress() function by replacing manual buffer management with std::unique_ptr and addresses integer overflow risks by switching to int64 calculations and adding explicit bounds checks during buffer allocation and stride computations.
    • pull/113534
  • Compute Library version update: A pull request updates the Compute Library version from v24.12 to v52.8.0, incorporating numerous bug fixes and performance improvements, and removes or updates existing patches to align with the new version.
    • pull/113368
  • Eager Tensor numpy field normalization and test coverage: A pull request normalizes numpy-related fields in eager Tensor representations within the TfDoctestOutputChecker, excluding tf.RaggedTensor, and adds corresponding unit test coverage.
    • pull/113247
  • Code comment addition: A pull request adds a comment to the example_parser_configuration.cc file in the TensorFlow project.
    • pull/113367

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: 2

Key Closed Pull Requests

1. 493236662: Support to CUDA 13: This pull request aims to add support for CUDA 13 in the TensorFlow project, including updates to installation scripts and pip dependencies, but it was not merged.

  • URL: pull/113103
  • Associated Commits: f7711, d5fb7, be7a4
  • Associated Commits: f7711, d5fb7, be7a4

2. fix: extract 2 unsafe expression(s) to env vars: This pull request addresses high-severity security vulnerabilities in GitHub Actions workflows by extracting two unsafe expressions into environment variables to prevent shell injection, as identified and automatically fixed by the Runner Guard CI/CD security scanner.

  • URL: pull/113314
  • Associated Commits: 4f996
  • Associated Commits: 4f996

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
DeLightor 0 0 20 2
champ24-36 14 0 0 0
VibhorGautam 11 0 0 0
AGFACBNNR 0 0 7 3
mohammadmseet-hue 3 2 0 4
Blooming-Tree 0 0 7 1
qukhan 0 0 0 8
AshiteshSingh 6 0 0 0
adityasai1234 3 3 0 0
tingPetty 0 0 6 0

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.