This is an automated email from the ASF dual-hosted git repository.

github-merge-queue[bot] pushed a commit to branch 
gh-readonly-queue/main/pr-8806-e2bd0cdae31af7a1f05f150ce24da7214c4a429b
in repository https://gitbox.apache.org/repos/asf/texera.git

commit 1df2c567ac0f4b81862586927320733dcff9dee9
Author: Meng Wang <[email protected]>
AuthorDate: Mon Oct 5 23:34:18 2026 +0000

    fix(licensing): restore the ScalaPB notice on the vendored scalapb.proto 
(#8806)
    
    ### What changes were proposed in this PR?
    
    Per the note at the end of #8802,
    `common/workflow-core/src/main/protobuf/scalapb/scalapb.proto` is
    vendored
    from ScalaPB (Apache-2.0) but carried the standard ASF header — the same
    class of problem as #8775. Mirroring that fix:
    
    - `scalapb.proto`: ASF header → a vendored-from notice (upstream ships
    the
    file with no header; its license is the repository-level Apache-2.0, so
    no
      separate license copy is needed);
    - root `LICENSE`: a ScalaPB entry next to the other Apache-2.0
    third-party
      entries ("this LICENSE file");
    - `.licenserc.yaml`: exempt the file from the ASF-header check.
    
    Comment-only change to the proto; protoc output is unaffected. This
    addresses
    only the vendored-file item in #8802 — the build-time-generation
    proposal
    stays open there.
    
    ### Any related issues, documentation, discussions?
    
    Addresses the vendored scalapb.proto item in #8802. Same pattern as
    #8775/#8776.
    
    ### How was this PR tested?
    
    License-metadata-only change; the Check License Headers CI job verifies
    the
    exemption. The file is identical on main and both release branches.
    
    ### Was this PR authored or co-authored using generative AI tooling?
    
    Generated-by: Claude Code (claude-fable-5)
---
 .licenserc.yaml                                    |  1 +
 LICENSE                                            |  5 ++++
 .../src/main/protobuf/scalapb/scalapb.proto        | 34 ++++++++++------------
 3 files changed, 22 insertions(+), 18 deletions(-)

diff --git a/.licenserc.yaml b/.licenserc.yaml
index 848c8fcd44..c5b68d5d91 100644
--- a/.licenserc.yaml
+++ b/.licenserc.yaml
@@ -62,3 +62,4 @@ header:
     - 'frontend/src/app/common/type/proto/google/protobuf/descriptor.ts'
     - 'frontend/src/app/common/type/proto/scalapb/scalapb.ts'
     - 'amber/src/main/python/core/util/customized_queue/inner.py'
+    - 'common/workflow-core/src/main/protobuf/scalapb/scalapb.proto'
diff --git a/LICENSE b/LICENSE
index 4fc6d614e9..af4958fed9 100644
--- a/LICENSE
+++ b/LICENSE
@@ -238,6 +238,11 @@ This product bundles code derived from inner-class:
   Source: https://github.com/sebkeim/inner-class
   License: MIT License (licenses-3rd-party-code/sebkeim-inner-class.txt)
 
+This product bundles the ScalaPB options definition:
+  - common/workflow-core/src/main/protobuf/scalapb/scalapb.proto
+  Source: https://github.com/scalapb/ScalaPB
+  License: Apache License 2.0 (this LICENSE file)
+
 This product includes an icon from Google's Material Symbols:
   - frontend/src/app/common/icon/model-icon.ts ("hub")
   Copyright (c) Google LLC
diff --git a/common/workflow-core/src/main/protobuf/scalapb/scalapb.proto 
b/common/workflow-core/src/main/protobuf/scalapb/scalapb.proto
index 45a2866e1c..f095f3a4c5 100644
--- a/common/workflow-core/src/main/protobuf/scalapb/scalapb.proto
+++ b/common/workflow-core/src/main/protobuf/scalapb/scalapb.proto
@@ -1,19 +1,17 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements.  See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership.  The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License.  You may obtain a copy of the License at
+// Vendored from ScalaPB v0.11.4.
+// Source: 
https://github.com/scalapb/ScalaPB/blob/v0.11.4/protobuf/scalapb/scalapb.proto
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
 //
 //   http://www.apache.org/licenses/LICENSE-2.0
 //
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied.  See the License for the
-// specific language governing permissions and limitations
-// under the License.
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
 
 syntax = "proto2";
 
@@ -68,7 +66,7 @@ message ScalaPbOptions {
 
   // If set to true, all generated messages in this file will preserve unknown
   // fields.
-  optional bool preserve_unknown_fields = 9 [default = true];
+  optional bool preserve_unknown_fields = 9 [default=true];
 
   // If defined, sets the name of the file-level object that would be 
generated. This
   // object extends `GeneratedFileObject` and contains descriptors, and list 
of message
@@ -87,7 +85,7 @@ message ScalaPbOptions {
   optional OptionsScope scope = 11;
 
   // If true, lenses will be generated.
-  optional bool lenses = 12 [default = true];
+  optional bool lenses = 12 [default=true];
 
   // If true, then source-code info information will be included in the
   // generated code - normally the source code info is cleared out to reduce
@@ -111,7 +109,7 @@ message ScalaPbOptions {
 
   // Indicate if prefix (enum name + optional underscore) should be removed in 
scala code
   // Strip is applied before enum value naming changes.
-  optional bool enum_strip_prefix = 17 [default = false];
+  optional bool enum_strip_prefix = 17 [default=false];
 
   // Scala type to use for bytes fields.
   optional string bytes_type = 21;
@@ -189,7 +187,7 @@ message ScalaPbOptions {
   optional bool ignore_all_transformations = 26;
 
   // If true, getters will be generated.
-  optional bool getters = 27 [default = true];
+  optional bool getters = 27 [default=true];
 
   // For use in tests only. Inhibit Java conversions even when when generator 
parameters
   // request for it.
@@ -371,7 +369,7 @@ enum MatchType {
 
 message FieldTransformation {
   optional google.protobuf.FieldDescriptorProto when = 1;
-  optional MatchType match_type = 2 [default = CONTAINS];
+  optional MatchType match_type = 2 [default=CONTAINS];
   optional google.protobuf.FieldOptions set = 3;
 }
 

Reply via email to