PrimeIntellect/SWE-rebench-V2 huggingface dataset:
Repository: kestra-io/kestra (java)

Issue:
[UI] When a task property is not required, the documentation shows a ? instead of a X
### Describe the issue

When a tas kproperty is not required, the documentation shows a ? instead of a X

For ex for the log task

![image](https://github.com/kestra-io/kestra/assets/1819009/0aaeaeb9-a8a6-464c-8b76-eb44801e7d45)


### Environment

- Kestra Version:
- Operating System (OS/Docker/Kubernetes):
- Java Version (if you don't run kestra in Docker):


Pull request:
fix(core): default documentation to required false
In case a task is not required, default to false or the documentation will display '?'.

Fixes #3145

Patch:
diff --git a/core/src/main/java/io/kestra/core/docs/AbstractClassDocumentation.java b/core/src/main/java/io/kestra/core/docs/AbstractClassDocumentation.java
index 541cc2a00..3b5260b48 100644
--- a/core/src/main/java/io/kestra/core/docs/AbstractClassDocumentation.java
+++ b/core/src/main/java/io/kestra/core/docs/AbstractClassDocumentation.java
@@ -112,6 +112,8 @@ public abstract class AbstractClassDocumentation<T> {
             Map<String, Object> finalValue = (Map<String, Object>) current.getValue();
             if (required.contains(current.getKey())) {
                 finalValue.put("$required", true);
+            } else {
+                finalValue.put("$required", false);
             }
 
             result.put(flattenKey(current.getKey(), parentName), finalValue);


Test patch:
diff --git a/cli/src/test/java/io/kestra/cli/commands/plugins/PluginDocCommandTest.java b/cli/src/test/java/io/kestra/cli/commands/plugins/PluginDocCommandTest.java
index 5c2af967b..d18fd242c 100644
--- a/cli/src/test/java/io/kestra/cli/commands/plugins/PluginDocCommandTest.java
+++ b/cli/src/test/java/io/kestra/cli/commands/plugins/PluginDocCommandTest.java
@@ -99,7 +99,7 @@ class PluginDocCommandTest {
                 ### `example`
                 * **Type:** ==string==
                 * **Dynamic:** ✔️
-                * **Required:** ❓
+                * **Required:** ❌
 
                 > Example interface
                 """));
Repository: hummingbird-project/hummingbird (swift)

Issue:
.env file parsing fails with #comments before an empty line
this test currently fails with an parser overflow error

```
    func testDotEnvCommentAndEmptyLine() throws {
        let dotenv = """
        FOO=BAR
        #BAZ=
        
        """
        let result = try HBEnvironment.parseDotEnv(dotenv)
        XCTAssertEqual(result["foo"], "BAR")
        XCTAssertEqual(result.count, 1)
    }
```

https://github.com/sliemeobn/hummingbird/blob/624afe5a405bfee8b07796b24cb7d4850f0e8405/Tests/HummingbirdTests/EnvironmentTests.swift#L117-L126

Pull request:
strengthened .env parsing
fixes #188

Patch:
diff --git a/Sources/Hummingbird/Environment.swift b/Sources/Hummingbird/Environment.swift
index e5643806b..f852b1bc4 100644
--- a/Sources/Hummingbird/Environment.swift
+++ b/Sources/Hummingbird/Environment.swift
@@ -157,8 +157,9 @@ public struct HBEnvironment: Sendable, Decodable, ExpressibleByDictionaryLiteral
         var parser = HBParser(dotEnv)
         var state: DotEnvParserState = .readingKey
         do {
-            parser.read(while: \.isWhitespace)
             while !parser.reachedEnd() {
+                parser.read(while: \.isWhitespace)
+
                 switch state {
                 case .readingKey:
                     // check for comment
@@ -171,6 +172,7 @@ public struct HBEnvironment: Sendable, Decodable, ExpressibleByDictionaryLiteral
                             parser.moveToEnd()
                             break
                         }
+                        continue
                     }
                     let key = try parser.read(until: { $0.isWhitespace || $0 == "=" }).string
                     state = .skippingEquals(key: key)
@@ -192,7 +194,6 @@ public struct HBEnvironment: Sendable, Decodable, ExpressibleByDictionaryLiteral
                     dotEnvDictionary[key.lowercased()] = value
                     state = .readingKey
                 }
-                parser.read(while: \.isWhitespace)
             }
             guard case .readingKey = state else { throw Error.dotEnvParseError }
         } catch {


Test patch:
diff --git a/Tests/HummingbirdTests/EnvironmentTests.swift b/Tests/HummingbirdTests/EnvironmentTests.swift
index 9f6e11204..29c514d0b 100644
--- a/Tests/HummingbirdTests/EnvironmentTests.swift
+++ b/Tests/HummingbirdTests/EnvironmentTests.swift
@@ -114,6 +114,17 @@ final class EnvironmentTests: XCTestCase {
         XCTAssertEqual(result["credentials"], "sdkfjh")
     }
 
+    func testDotEnvCommentAndEmptyLine() throws {
+        let dotenv = """
+        FOO=BAR
+        #BAZ=
+
+        """
+        let result = try HBEnvironment.parseDotEnv(dotenv)
+        XCTAssertEqual(result["foo"], "BAR")
+        XCTAssertEqual(result.count, 1)
+    }
+
     func testDotEnvOverridingEnvironment() throws {
         let dotenv = """
         TEST_VAR=testDotEnvOverridingEnvironment