Parent sibling state access

Using YAML with anchors as a machine declaration is a pain, when you are forced to jump to state on totally different level. This MR solves problem with aliased nodes, which cannot have ID (because of duplication) and allows set state from parent states collection.
If you have better/more descriptive naming proposition we should change it.
In relation to: https://github.com/davidkpiano/xstate/issues/52

Using YAML with anchors as a machine declaration is a pain, when you are forced to jump to state on totally different level.

Could you describe this use case in more detail? Preferably with some examples?

Hey @Andarist
Background

The whole application is driven by xstate - every UI and logical interaction is handled in such a way.
Depending on state machine organization you might either parallelize or nest states - we're mostly nesting.
Configuration for xstate is stored in serializable format - in our case these are YAML files.
YAML has been chosen as a way to reduce the amount of configuration repetition by using YAML anchors.
State machine configuration can freely navigate to nested states, however it is impossible to relatively navigate back to parent states.
Xstate already supports absolute transition given the state id, nevertheless given that our state machine configuration is generated out of YAML we're not able to name each state with its unique id.
The above is the reason for this contribution (we also have seen that the topic was raised in the past and absolute state id was introduced back then).
We're not decomposing machines into service state machines as it introduces lots of complexity around maintainence, context sharing and events processing, so we have a single config.

Example
# Given we have some generic state definitions
_shared:
  displayingMessagePrompt: &displayingMessagePrompt
    initial: rendering
    states:
      rendering:
        entry: showMessagePrompt # showMessagePrompt action uses context's property "promptMessage"
        on:
          '': awaitingUserResponse

      awaitingUserResponse:
        initial: initializing
        states:
          initializing:
            invoke: getPromptTimeout # a time after which user is able to confirm or reject prompt
            onDone: displaying

          displaying:
            entry:
              - savePromptTimeout # saves received prompt timeout
              - startTimer # starts timer in background
              - showTimer
            on:
              TIMER_FINISHED: awaiting

          awaiting:
            on:
              PROMPT_CONFIRMED: ^confirming # [1]
              PROMPT_REJECTED: ^finishing # [1]

      confirming:
        invoke:
          src: saveUserConfirmation
          onDone: finishing

      finishing:
        entry:
          type: saveToContext # equvalent of "assign" action
          data: { promptMessage: '' }
        exit: hideMessagePrompt
        type: final

# Root state machine definition
initial: idle
context: { promptMessage: '' }
states:
  idle:
    on:
      LOGOUT: loggingOut
      DISCARD_CHANGES: discardingChanges

  loggingOut:
    entry:
      type: saveToContext # equvalent of "assign" action
      data: { promptMessage: 'Do you want to logout?' }
    onDone:
      actions: logout
      target: idle
    <<: *displayingMessagePrompt

  discardingChanges:
    entry:
      type: saveToContext # equvalent of "assign" action
      data: { promptMessage: 'Your progress will be lost, do you want to continue?' }
    onDone:
      actions: resetCurrentProgress
      target: idle
    <<: *displayingMessagePrompt

[1] That's the case - HSMs/Statecharts gives the great modeling power and we can encapsulate states, but in this case, given the displayingMessagePrompt is used relatively in two places we're unable to mark absolutely specific state. That's why the relative to parent state transition would be really helpful.

@kkwiatkowski Really like the YAML format! Makes it look a lot cleaner. Anyway, for some use-cases, onDone and final states can/should be used instead:
"awaitingUserResponse": {
  "initial": "initializing",
  "states": {
    // ...
    "awaiting": {
      "on": {
-       "PROMPT_CONFIRMED": "^confirming",
+       "PROMPT_CONFIRMED": "confirmed",
        "PROMPT_REJECTED": "^finishing"
      }
    },
+   "confirmed": { "type": "final" }
  },
+ "onDone": "confirming"
},
"confirming": {

But that raises questions about "PROMPT_REJECTED": "^finishing", since now this state being "done" can potentially go to a different state. You can add a guard to direct it to the right state, but hmm... that's a bit more indirect than just transitioning to the parent.
Just thinking out loud here. Still not sure if we want to encourage child -> aunt/uncle transitions directly, when the above pattern should be encouraged instead. 🤔

Thanks for quick reply @davidkpiano!
Yes, the indirect case with extra final and onDone combination requires to extend the definition with artificial states and apply another routing rules with guards, so we have extra as many states and conditionals as we have potential transitions. That's one of the reasons why this MR is submitted (right now we're doing similar work around).
Despite the fact it is doable, it is also bloating the definitions making the transitions more imperative - whereas at least from my standpoint it should favor declarativeness.
After all, xstate attached my attention due to its declarative modeling power. You can model your application logic on quite high level description not touching any code allowing to interact with the configs the business analysts and/or product owners (that's my little sin here :smile:).

I also think that the clear distinction between when to use which pattern (either final and onDone or child -> aunt/uncle transition) should be based on who actually has a control over the state.
This whole construct might sound a bit artificial as it is not occurring unless you do the configuration without coding.
In the given example, it is displayingMessagePrompt which is owning the state, and final with onDone seems to be redundant. This state cannot/shouldn't also transition the client that attached its state fragment, therefore there should't be something like ^idle.
On the other hand, the client code to displayingMessagePrompt has no control over what's happening "inside", and the only thing it can do is hook up on the final state event (routing to specific states if necessary).

@davidkpiano - one more comment here - doing extra routing with states and conditionals means we're implementing manually an extra state machine to our xstate hsm definition (conditional transition based on state) - the difference is that the routing criterion has to be stored in context. Below I attach the most optimal example I could come up with with that extra routing you were mentioning:
      # ...
      awaitingUserResponse:
        initial: initializing
        states:
          # ...
          awaiting:
            on:
-              PROMPT_CONFIRMED: ^confirming
+              PROMPT_CONFIRMED:
+                actions:
+                  type: saveToContext # equivalent of "assign" action
+                  data: { childToParentRedirectionState: confirming }
+                target: childFinalState # childFinalState -> confirming
-              PROMPT_REJECTED: ^finishing
+              PROMPT_REJECTED:
+                actions:
+                  type: saveToContext # equivalent of "assign" action
+                  data: { childToParentRedirectionState: finishing }
+                target: childFinalState # childFinalState -> finishing
+
+          childFinalState:
+            type: final
+
+        onDone:
+          - cond:
+              # compares the value provided in "state" property with context's "childToParentRedirectionState" stored earlier
+              type: childToParentRedirectionStateEqualsTo
+              state: confirming
+            actions:
+              type: saveToContext # equivalent of "assign" action
+              data: { childToParentRedirectionState: '' } # context cleanup
+            target: confirming  # actual redirection
+          - cond:
+              type: childToParentRedirectionStateEqualsTo
+              state: finishing
+            actions:
+              type: saveToContext # equivalent of "assign" action
+              data: { childToParentRedirectionState: '' }
+            target: finishing # actual redirection
+          - actions:
+              type: saveToContext # equivalent of "assign" action
+              data: { childToParentRedirectionState: '' }
+            target: parentFinalState # fallback case
+
+      parentFinalState: # final state if the routing didn't match any desired "redirection"
+        type: final

      confirming:
        invoke:
          src: saveUserConfirmation
          onDone: finishing

      finishing:
        entry:
          # ...

Full refined YAML code:
# Given we have some generic state definitions
_shared:
  displayingMessagePrompt: &displayingMessagePrompt
    initial: rendering
    states:
      rendering:
        entry: showMessagePrompt # showMessagePrompt action uses context's property "promptMessage"
        on:
          '': awaitingUserResponse

      awaitingUserResponse:
        initial: initializing
        states:
          initializing:
            invoke: getPromptTimeout # a time after which user is able to confirm or reject prompt
            onDone: displaying

          displaying:
            entry:
              - savePromptTimeout # saves received prompt timeout
              - startTimer # starts timer in background
              - showTimer
            on:
              TIMER_FINISHED: awaiting

          awaiting:
            on:
              PROMPT_CONFIRMED:
                actions:
                  type: saveToContext # equivalent of "assign" action
                  data: { childToParentRedirectionState: confirming }
                target: childFinalState # childFinalState -> confirming
              PROMPT_REJECTED:
                actions:
                  type: saveToContext # equivalent of "assign" action
                  data: { childToParentRedirectionState: finishing }
                target: childFinalState # childFinalState -> finishing

          childFinalState:
            type: final

        onDone:
          - cond:
              # compares the value provided in "state" property with context's "childToParentRedirectionState" stored earlier
              type: childToParentRedirectionStateEqualsTo
              state: confirming
            actions:
              type: saveToContext # equivalent of "assign" action
              data: { childToParentRedirectionState: '' }
            target: confirming # actual redirection
          - cond:
              type: childToParentRedirectionStateEqualsTo
              state: finishing
            actions:
              type: saveToContext # equivalent of "assign" action
              data: { childToParentRedirectionState: '' }
            target: finishing # actual redirection
          - actions:
              type: saveToContext # equivalent of "assign" action
              data: { childToParentRedirectionState: '' }
            target: parentFinalState # fallback case

      parentFinalState: # final state if the routing didn't match any desired "redirection"
        type: final

      confirming:
        invoke:
          src: saveUserConfirmation
          onDone: finishing

      finishing:
        entry:
          type: saveToContext # equivalent of "assign" action
          data: { promptMessage: '' }
        exit: hideMessagePrompt
        type: final

# Root state machine definition
initial: idle
context: { promptMessage: '' }
states:
  idle:
    on:
      LOGOUT: loggingOut
      DISCARD_CHANGES: discardingChanges

  loggingOut:
    entry:
      type: saveToContext # equivalent of "assign" action
      data: { promptMessage: 'Do you want to logout?' }
    onDone:
      actions: logout
      target: idle
    <<: *displayingMessagePrompt

  discardingChanges:
    entry:
      type: saveToContext # equivalent of "assign" action
      data: { promptMessage: 'Your progress will be lost, do you want to continue?' }
    onDone:
      actions: resetCurrentProgress
      target: idle
    <<: *displayingMessagePrompt

Transformed YAML to JSON (you can use an online tool like https://codebeautify.org/yaml-to-json-xml-csv):
{
  "initial": "idle",
  "context": {
    "promptMessage": ""
  },
  "states": {
    "idle": {
      "on": {
        "LOGOUT": "loggingOut",
        "DISCARD_CHANGES": "discardingChanges"
      }
    },
    "loggingOut": {
      "entry": {
        "type": "saveToContext",
        "data": {
          "promptMessage": "Do you want to logout?"
        }
      },
      "onDone": {
        "actions": "logout",
        "target": "idle"
      },
      "initial": "rendering",
      "states": {
        "rendering": {
          "entry": "showMessagePrompt",
          "on": {
            "": "awaitingUserResponse"
          }
        },
        "awaitingUserResponse": {
          "initial": "initializing",
          "states": {
            "initializing": {
              "invoke": "getPromptTimeout",
              "onDone": "displaying"
            },
            "displaying": {
              "entry": [
                "savePromptTimeout",
                "startTimer",
                "showTimer"
              ],
              "on": {
                "TIMER_FINISHED": "awaiting"
              }
            },
            "awaiting": {
              "on": {
                "PROMPT_CONFIRMED": {
                  "actions": {
                    "type": "saveToContext",
                    "data": {
                      "childToParentRedirectionState": "confirming"
                    }
                  },
                  "target": "childFinalState"
                },
                "PROMPT_REJECTED": {
                  "actions": {
                    "type": "saveToContext",
                    "data": {
                      "childToParentRedirectionState": "finishing"
                    }
                  },
                  "target": "childFinalState"
                }
              }
            },
            "childFinalState": {
              "type": "final"
            }
          },
          "onDone": [
            {
              "cond": {
                "type": "childToParentRedirectionStateEqualsTo",
                "state": "confirming"
              },
              "actions": {
                "type": "saveToContext",
                "data": {
                  "childToParentRedirectionState": ""
                }
              },
              "target": "confirming"
            },
            {
              "cond": {
                "type": "childToParentRedirectionStateEqualsTo",
                "state": "finishing"
              },
              "actions": {
                "type": "saveToContext",
                "data": {
                  "childToParentRedirectionState": ""
                }
              },
              "target": "finishing"
            },
            {
              "actions": {
                "type": "saveToContext",
                "data": {
                  "childToParentRedirectionState": ""
                }
              },
              "target": "parentFinalState"
            }
          ]
        },
        "parentFinalState": {
          "type": "final"
        },
        "confirming": {
          "invoke": {
            "src": "saveUserConfirmation",
            "onDone": "finishing"
          }
        },
        "finishing": {
          "entry": {
            "type": "saveToContext",
            "data": {
              "promptMessage": ""
            }
          },
          "exit": "hideMessagePrompt",
          "type": "final"
        }
      }
    },
    "discardingChanges": {
      "entry": {
        "type": "saveToContext",
        "data": {
          "promptMessage": "Your progress will be lost, do you want to continue?"
        }
      },
      "onDone": {
        "actions": "resetCurrentProgress",
        "target": "idle"
      },
      "initial": "rendering",
      "states": {
        "rendering": {
          "entry": "showMessagePrompt",
          "on": {
            "": "awaitingUserResponse"
          }
        },
        "awaitingUserResponse": {
          "initial": "initializing",
          "states": {
            "initializing": {
              "invoke": "getPromptTimeout",
              "onDone": "displaying"
            },
            "displaying": {
              "entry": [
                "savePromptTimeout",
                "startTimer",
                "showTimer"
              ],
              "on": {
                "TIMER_FINISHED": "awaiting"
              }
            },
            "awaiting": {
              "on": {
                "PROMPT_CONFIRMED": {
                  "actions": {
                    "type": "saveToContext",
                    "data": {
                      "childToParentRedirectionState": "confirming"
                    }
                  },
                  "target": "childFinalState"
                },
                "PROMPT_REJECTED": {
                  "actions": {
                    "type": "saveToContext",
                    "data": {
                      "childToParentRedirectionState": "finishing"
                    }
                  },
                  "target": "childFinalState"
                }
              }
            },
            "childFinalState": {
              "type": "final"
            }
          },
          "onDone": [
            {
              "cond": {
                "type": "childToParentRedirectionStateEqualsTo",
                "state": "confirming"
              },
              "actions": {
                "type": "saveToContext",
                "data": {
                  "childToParentRedirectionState": ""
                }
              },
              "target": "confirming"
            },
            {
              "cond": {
                "type": "childToParentRedirectionStateEqualsTo",
                "state": "finishing"
              },
              "actions": {
                "type": "saveToContext",
                "data": {
                  "childToParentRedirectionState": ""
                }
              },
              "target": "finishing"
            },
            {
              "actions": {
                "type": "saveToContext",
                "data": {
                  "childToParentRedirectionState": ""
                }
              },
              "target": "parentFinalState"
            }
          ]
        },
        "parentFinalState": {
          "type": "final"
        },
        "confirming": {
          "invoke": {
            "src": "saveUserConfirmation",
            "onDone": "finishing"
          }
        },
        "finishing": {
          "entry": {
            "type": "saveToContext",
            "data": {
              "promptMessage": ""
            }
          },
          "exit": "hideMessagePrompt",
          "type": "final"
        }
      }
    }
  }
}

Visualization of above configuration:

@davidkpiano, @Andarist any further thoughts on the above?

I kinda feel the same as @davidkpiano:

Just thinking out loud here. Still not sure if we want to encourage child -> aunt/uncle transitions directly, when the above pattern should be encouraged instead. 🤔

As in - I'm not sure 😅
I totally recognize your specific problem though - even when we compare the first and the second visualization then the first one wins in terms of complexity (it's less complex), and ultimately this should be favored.
When thinking about this more I don't think onDone in itself is that much better conceptually, as one still has to know IDs of the ancestor's siblings. I only find the proposal to be problematic because it might encourage ppl to reach for this prematurely - when there are often other, better alternatives.
Your example is quite abstract so it's hard for me to assess if this could be modeled differently as I lack your domain's knowledge, but maybe you could just move the awaiting node out of the awaitingUserResponse? That way it could respond to events by just targeting its siblings.

Closing in favor of using IDs and idiomatic use of onDone over introducing extra syntax


Update AdoptOpenJDK links on the Adoptium.net Migration page

Please remove the links to AdoptOpenJDK from the Adoptium.net Migration page (https://adoptium.net/migration.html), refer to the links in the IcedTea-Web and JDK Mission Control sections. Can they be replaced with links to Adoptium replacements?

@paulbuck - As these are not OpenJDK binaries (but simply other utilities) we should leave these in.  I did pick up on a few links that we missed in the first sweep as part of #77

@karianna All good, thanks for letting me know. Please go ahead and close this issue if you consider the matter resolved.


Simplify Cloud9 sign up process

Was just on a call with @AppIns and talked about how the set up steps in personal_website took too long. A big chunk of effort and time is the steps to sign up for Cloud9 (esp. when it asks for a credit card https://github.com/hackclub/hackclub/issues/1054).
We can make this easier for people going through the workshop by having a similar sign up form to our Slack sign up form.

Has this been done?

We can close this since we've migrated to repl.it


remove the duplicate superclass of TagRouter and ConditionRouter

What is the purpose of the change
the class ConditionRouter and TagRouter implement duplicate superclass Comparable
Brief changelog
/dubbo-cluster/src/main/java/com/alibaba/dubbo/rpc/cluster/router/condition/ConditionRouter.java
/dubbo-cluster/src/main/java/org/apache/dubbo/rpc/cluster/router/tag/TagRouter.java
Verifying this change
run all the test case about the two functions，and their functions are all right
Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Make sure there is a GITHUB_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GITHUB issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[ ] Run mvn clean install -DskipTests & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
[ ] If this contribution is large, please follow the Software Donation Guide.

LGTM.
By the way, u should clear your commits. This pr contains 4 commits which is not clear.

well,i will pay attention to submitting specifications next time


Add retry when registering bundles in CI

What is being addressed
Porter has inconsistent JIT build issues which causes commands like porter explain to fail when we parse the results (in make bundle-check-params).
How is this addressed

While porter are working on the issue, add a retry when registering bundles in the CI (like we do when building bundles due to porter CDN/networking issues)

/test-force-approve


Tool crashes when encountering empty directories in search path

First of all, thank you for this awesome tool! I've been using it extensively across many of my projects, and it has been incredibly helpful. However, I've encountered a recurring issue that impacts every project I work on.
The tool crashes with the following error message if it encounters an empty directory in its search path: betteralign: analysis skipped due to errors in package. This behavior makes it challenging to work with project structures that include empty directories.
I typically run the tool using the following command: betteralign -apply ./internal/***. Here, internal/ contains multiple subdirectories representing packages. However, for organizational reasons, there are cases where directories inside internal/ are not themselves packages but instead serve as containers for additional packages. For example:
.
└── internal/
    ├── a/
    │   └── a.go
    ├── b/
    │   └── b.go
    └── problematic_folder/
        ├── c/
        │   └── c.go
        ├── d/
        │   └── d.go
        └── placeholder.go     <--------------- WILL CRASH WITHOUT THIS FILE

Could this behavior be addressed in a future update? It would significantly improve usability, especially for larger projects where empty directories are inevitable during development.

I'll check this right away. Also thank you for kind words @Coronon!

@Coronon I have tried to reproduce this with various combinations of the above and in real life projects and I have failed to do so. Please, send me a log with the crash that shows the behaviour of betteralign when used on a such project. Tool should be run as follows: betteralign './...'. Thank you in advance!

Thank you very much for your quick response!
It turns out the issue was indeed caused by my invocation using ./internal/***. This pattern expands to all subdirectories, including any empty ones. Switching to ./internal/... resolved the issue for me, as I wasn’t aware of this specific Go package discovery syntax.
That said, it might still be beneficial to handle this scenario more gracefully. Perhaps a warning for empty directories instead of a failure would be helpful. For reference, the error I encountered was:
-: no Go files in /my_full_path/internal/empty_dir
[100+ lines of '{PATH} 56 bytes saved: struct with 232 pointer bytes could be 176']
betteralign: analysis skipped due to errors in package

This error message made diagnosing the root cause rather challenging, especially due to the volume of unrelated output. A more targeted warning might improve the debugging experience.
Here is a simple reproduction: https://github.com/Coronon/betteralign-reproduction

Right, Go syntax for traversing all sources and packages is ./... typically. In regards to shown errors, they are propagating from lower-level Go internal packages (load and lsp/cache) and singlechecker runs are showing individual analysis errors. There is nothing here to fix, at least not in betteralign -- I am merely reusing existing Golang analysis/singlechecker framework.


Xor bug on undo (CTRL+Z)

When you execute an undo operation on elements that involve ViewContainer with XOR, the undo operation remove the XOR (and consequently, all the others ViewContainer inside the XOR ViewContainer, lose their Default/Landmark properties).
CTRL+Z-xor-bug.zip

Problem correctly fixed. Thank you!


Change deprecated babel-eslint to new module

Currently, even if there is no settings change, eslint make below error in all .vue files.
Because babel-eslint we are currently using has been deprecated and has not been updated in the past 1 year.
So, I change eslint module to  @babel/eslint-parser that has been released for the replacement of babel-eslint to resolve errors from old modules.
1. Before changes

2. After changes(error has been cleared)

Move to #787


Assistants: supportedIds and excludeIds not working

Seems like supportedIds and excludeIds is not working anymore.
endpoints:
assistants:
disableBuilder: false # Disable Assistants Builder Interface by setting to true
pollIntervalMs: 3000  # Polling interval for checking assistant updates
timeoutMs: 180000  # Timeout for assistant operations
# Should only be one or the other, either supportedIds or excludedIds
supportedIds: ["asst_PvlaxDm5FEGjBkyAMEs3g2uZ"]

It works, you're using an ADMIN role account.

user sees:

admin sees:

Thank you


Reducie transaction Isolation level queries in ProxyDataSource with HikariCP and PostgreSQL

Prerequisites:

Spring Boot 3.1.0
HikariCP 5.0.1
PostgreSQL JDBC Driver 42.6.0
Datasource-proxy 1.9

Setup:
ProxyDataSourceBuilder.create(ds) // ds is a HikariCP datasource
                    .name(datasourceName)
                    .proxyResultSet()
                    .afterQuery(new JdbcQueryPostProcessor())
                    .build();

Issue:
We use the Spring JDBC template to perform database queries through ProxyDataSource. For every single database query, the JdbcTemplate obtains a connection from ProxyDataSource. At this point, ProxyDataSource attempts to retrieve the transaction isolation level from the delegate datasource:
public class ProxyDataSource implements DataSource, Closeable {

    ...

    @Override
    public Connection getConnection() throws SQLException {
        final Connection conn = dataSource.getConnection();
        return getConnectionProxy(conn, GET_CONNECTION_WITH_NO_ARGS, null);
    }

    private Connection getConnectionProxy(final Connection conn, Method method, Object[] args) throws SQLException {
        String dataSourceName = this.proxyConfig.getDataSourceName();
        ConnectionIdManager connectionIdManager = this.proxyConfig.getConnectionIdManager();
        final JdbcProxyFactory jdbcProxyFactory = this.proxyConfig.getJdbcProxyFactory();

        String connectionId = connectionIdManager.getId(conn);

        final ConnectionInfo connectionInfo = new ConnectionInfo();
        connectionInfo.setConnectionId(connectionId);
        connectionInfo.setIsolationLevel(conn.getTransactionIsolation());   <-- MAKES EXTRA DB CALL
        connectionInfo.setDataSourceName(dataSourceName);

        ...

    }

}

The delegate datasource (which is HikariCP in our case) further delegates this to the PostgreSQL datasource. The PostgreSQL datasource then performs execSQLQuery("SHOW TRANSACTION ISOLATION LEVEL"). This results in an extra database call for every 'get connection from pool' operation.
Please consider adding a configuration property to disable the collection of the transaction isolation level. Alternatively, consider collecting it less frequently, as the isolation level is not something that is supposed to change often.

@azemliankin Yes, I agree with you.
It was a bit of an overthought about adding the isolation level.
I'll make this configurable and make it an opt-in feature.

@ttddyy can we move this issue to Milestone 1.11 and release Milestone 1.10

@ttddyy,
Thank you so much for implementing this change! I've been using version 1.8.1 of your datasource-proxy for a long time, and this update is incredibly helpful.
https://github.com/jdbc-observations/datasource-proxy/commit/6684bdfde99e73812b16caed255b0c816b4c7e48
I have a question: Will this change alter any existing behavior of datasource-proxy? Specifically, can I still freely set the Transaction Isolation Level as needed, assuming I'm using HikariCP with MySQL as the underlying database?

Hi @Markliniubility,

Will this change alter any existing behavior of datasource-proxy?

No, nothing will alter the original(query caller) behavior.
Basically the change is not to check the isolation level in datasource-proxy by default.
You can specify any transaction isolation at your required level. datasource-proxy does not interfere what you have set.

Hi @Markliniubility,

Will this change alter any existing behavior of datasource-proxy?

No, nothing will alter the original(query caller) behavior. Basically the change is not to check the isolation level in datasource-proxy by default. You can specify any transaction isolation at your required level. datasource-proxy does not interfere what you have set.

@ttddyy,
Thank you again for your such a prompt and helpful response! I really really appriciate it!!!
I have another question: In version 1.8 and earlier of datasource-proxy, what was the purpose of fetching the transaction isolation level? Was the fetched isolation level used to change or intercept any isolation behavior of client calls to the database, or was it solely used for logging purposes?

@Markliniubility

I have another question: In version 1.8 and earlier of datasource-proxy, what was the purpose of fetching the transaction isolation level? Was the fetched isolation level used to change or intercept any isolation behavior of client calls to the database, or was it solely used for logging purposes?

It is solely for retrieving the information and putting it into context, which could be used for logging, for example. It does not alter the actual transaction or anything.


Nuget Package Creation - v1.9.19

Gmail API dependency update ('<IP_ADDRESS>31' -> '<IP_ADDRESS>31').
Nuget package creation - v1.9.19.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (0df83b5) 99.48% compared to head (ba8911e) 99.48%.
Report is 68 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #69   +/-   ##
=======================================
  Coverage   99.48%   99.48%
=======================================
  Files           1        1
  Lines         781      781
  Branches      183      183
=======================================
  Hits          777      777
  Misses          2        2
  Partials        2        2

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[11.x] Allow callable transformation for data_set values

This pull request introduces enhancements to the data_set function, allowing it to handle callable values for transforming existing data. Additionally, corresponding tests have been added to ensure the new functionality works as expected.
In my case, I needed to apply transformers to data that I did not fully understand beforehand, using a mapping card. For example, I defined a set of anonymizers as follows:
$anonymizers = [
    'string' => fn($value) => md5($value),
    'email' => fn($value) => md5($value) . '@anonymized',
];

Here, I created two types of anonymizers: one for general strings, which generates an MD5 hash of the input value, and another specifically for email addresses, which not only hashes the value but also appends @anonymized to it.
Next, I set up a data map that specifies how to apply these anonymizers to various fields in the data structure:
$datamap = [
    'users' => [
        'emails.*.address' => 'email',
        'profile.oldEmail' => 'email',
        'profile.firstName' => 'string',
        'profile.phone' => 'string',
    ],
];

In this mapping, I indicated that any email address in the emails array, as well as the oldEmail, firstName, and phone fields in the profile, should be processed using the corresponding anonymizer.
To apply these transformations, I utilized the each() method alongside data_set, allowing me to dynamically invoke the appropriate anonymizer based on the defined mapping. For instance, I would execute the following:
data_set($model, $field, $anonymizers[$type]($oldValue));

This line effectively takes the model, the specific field to be transformed, and applies the corresponding anonymizer function to the old value, storing the result back in the model.

Thanks for your pull request to Laravel!
Unfortunately, I'm going to delay merging this code for now. To preserve our ability to adequately maintain the framework, we need to be very careful regarding the amount of code we include.
If applicable, please consider releasing your code as a package so that the community can still take advantage of your contributions!


Make interp_points robust to non-equal grids and impractical default SciPy arguments

This PR:

Makes the behaviour of interp_points consistent between equal and regular grid by using both map_coordinates and interpn from SciPy depending on the grid,
Removes the default prefilter argument of map_coordinates that created large data gaps,
Corrects the method argument for map_coordinates by mapping it into an order argument,
Adds detailed tests with synthetic data to ensure all results are consistent, in addition to the ones existing in test_xy2ij.

Resolves #483
TO-DO:

[x] Test the consistency of the AREA_OR_POINT argument between the methods.

Merging this bug fix/improvement as it has pretty serious impact on xDEM, can be reviewed a posteriori.


使用全局message时 控制台报 ExpressionChangedAfterItHasBeenCheckedError 的错误

报错:
NzMessageContainerComponent.html:3 ERROR Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'undefined'. Current value: ''. It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook ?
at viewDebugError (core.es5.js:8426)
at expressionChangedAfterItHasBeenCheckedError (core.es5.js:8404)
at checkBindingNoChanges (core.es5.js:8568)
at checkNoChangesNodeInline (core.es5.js:12440)
at checkNoChangesNode (core.es5.js:12414)
at debugCheckNoChangesNode (core.es5.js:13191)
at debugCheckDirectivesFn (core.es5.js:13093)
at Object.eval [as updateDirectives] (NzMessageContainerComponent.html:3)
at Object.debugUpdateDirectives [as updateDirectives] (core.es5.js:13075)
at checkNoChangesView (core.es5.js:12234)
View_NzMessageContainerComponent_0 @ NzMessageContainerComponent.html:3
我的代码:
this._message.warning('请输入不良编号', {nzDuration: 2000});

please provide the min code to reproduction of this error.


Try to use iterm2 backend, but raise UsageError: Invalid GUI request 'iterm2'

Thank you for making such good project.
When I try to use iterm2 as the backend of my mac, after following the step by step which in README file, still raise such exception.
UsageError: Invalid GUI request 'iterm2', valid ones are: pyglet, osx, qt5, qt, glut, gtk, gtk3, tk, wx

iterm version : Build 2.9.20151006-nightly
ipython version: IPython 4.0.0
matpoltlib version: 1.4.3
I tried to solve such problem for weeks, but still don't work....

Ignore that, it should work anyway.

Do you have imgcat in your PATH?
Have you check that it works by drawing something?

On Fri, Nov 6, 2015 at 8:59 AM, dingo9<EMAIL_ADDRESS>wrote:

Thank you for making such good project.
When I try to use iterm2 as the backend of my mac, after following the
step by step which in README file, still raise such exception.
UsageError: Invalid GUI request 'iterm2', valid ones are: pyglet, osx, qt5, qt, glut, gtk, gtk3, tk, wx
iterm version : Build 2.9.20151006-nightly
ipython version: IPython 4.0.0
matpoltlib version: 1.4.3
I tried to solve such problem for weeks, but still don't work....
—
Reply to this email directly or view it on GitHub
https://github.com/oselivanov/matplotlib_iterm2/issues/1.

Just added a note to README.

cool! It works~
Just ignore that, it works well, Thank you very much!


Add support for config files with .php extension

Fixes #246
Better reviewed commit by commit

Looks good to me! Can we keep the test on the old convention until we release the BC break to remove it?

Codecov Report

Merging #247 (4e10ff5) into main (bee5ca8) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##               main     #247      +/-   ##
============================================
+ Coverage     78.75%   78.77%   +0.01%
  Complexity      749      749
============================================
  Files            55       55
  Lines          2410     2412       +2
============================================
+ Hits           1898     1900       +2
  Misses          512      512

Impacted Files
Coverage Δ

src/Config/ConfigResolver.php
85.38% <100.00%> (+0.22%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bee5ca8...4e10ff5. Read the comment docs.

@localheinz looks like a good plan! I should have added tests for the ConfigResolver in the first place :sweat_smile:

thank you @localheinz for the update!
one additional change that could be done is to reverse .twig_cs.dist.php and .twig_cs, so that local config always win over dist config

@yguedidi
Sounds good, let me adjust!

Thank you, @Ciloe, @OwlyCode, and @yguedidi!

@OwlyCode
Do you want to prepare a release later?


Using a siegfried export throws an error

Hello,
When I tried to do get  analysis from a Siegfried export, I got the following error:
andrea@debian:~/demystify$ sudo python3 demystify.py --export /media/sf_Andrea/testsfcollection.sf > analysissftry.htm
2023-08-30 09:08:02 INFO: demystify.py:170:analysis_from_csv(): Generating database from input report...
Traceback (most recent call last):
File "demystify.py", line 14, in
main()
File "demystify.py", line 10, in main
demystify.main()
File "/home/andrea/demystify/src/demystify/demystify.py", line 256, in main
args.export, True, denylist, args.rogues, args.heroes
File "/home/andrea/demystify/src/demystify/demystify.py", line 171, in analysis_from_csv
database_path = sqlitefid.identify_and_process_input(format_report)
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/sqlitefid.py", line 52, in identify_and_process_input
return handleSFYAML(export)
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/sqlitefid.py", line 85, in handleSFYAML
loader.create_sf_database(sfexport, basedb.getcursor())
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/libs/SFLoaderClass.py", line 124, in create_sf_database
sf.read_sf_yaml(sf_export)
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/libs/SFHandlerClass.py", line 296, in read_sf_yaml
filedata = self._process_sf(sf, filedata, processed)
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/libs/SFHandlerClass.py", line 266, in _process_sf
filesec = self.process_file_section(filedata)
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/libs/SFHandlerClass.py", line 224, in process_file_section
raise err
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/libs/SFHandlerClass.py", line 214, in process_file_section
id_record.add_field(key, value)  # NOQA
File "/home/andrea/demystify/src/demystify/sqlitefid/src/sqlitefid/libs/SFHandlerClass.py", line 449, in add_field
raise IDError("Field '%s' doesn't exist" % field)
src.demystify.sqlitefid.src.sqlitefid.libs.SFHandlerClass.IDError: Field 'class' doesn't exist
Thanks!

Where Siegfried introduced a new field, called “class” and it tends to break any tools that process the reports.

Thanks @andreakb and @kieranjol -- yeah, I think that's it. Annoyed with myself as I'm pretty sure I had a fix for it but then left it on another computer and forgot to merge :grimacing: will get this sorted ASAP.

I'm going to close this as fixed @andreakb thanks for logging it.
Updated release here: https://pypi.org/project/demystify-digipres/2.0.0rc4/ and demystify-lite looks like its working okay again here: https://ross-spencer.github.io/demystify-lite/
Let me know if you find any issues. I'm going to open a new issue for reporting on the new information we're adding with the class field in Siegfried.


Redis cache

Hello, I have been using this boilerplate for a long time but I need to add Redis cache, can you add this feature please, and thanks a lot

yes, i will add it in new version


Create order finalized subscriber/job for subscription creation

Resolves #260
Stop decorating the order#finalize! method to create subscriptions and instead create subscriptions as part of a background job.

@kennyadsl @elia

@FrancescoAiello01 Thanks, this looks great. I saw that tests on this extension are not running against Solidus master branch. I think it's because of https://github.com/solidusio-contrib/solidus_subscriptions/pull/257/commits/eefdc5feffd35ed229a1a2b347b790f5f2592948, which has not been reverted. It would be great if we could restore it, even with another PR so that we are sure we merge something that works with the last version of Solidus (3.2), which will be released soon.
Thanks!

@FrancescoAiello01 Thanks, this looks great. I saw that tests on this extension are not running against Solidus master branch. I think it's because of eefdc5f, which has not been reverted. It would be great if we could restore it, even with another PR so that we are sure we merge something that works with the last version of Solidus (3.2), which will be released soon.
Thanks!

I'll take care of that 👍


AdditionalMetadata field in plan and service metadata

allow to add custom field in the plan that can be retrieved from
catalog endpoint

Signed-off-by: Carlo Colombo<EMAIL_ADDRESS>

Hey @carlo-colombo
Am I right in thinking that this PR adds a new field to the catalog called additionalMetadata to the service-level metadata?
If you're looking to pass arbitrary data through ODB, there is an easier way to do that. cc @kieron-pivotal who can provide details!

See
https://github.com/pivotal-cf/on-demand-services-sdk/blob/master/bosh/bosh_manifest.go#L40
for
use of the 'inline' yaml annotation which inlines arbitrary YAML properties
into the parent object.
On Mon, Feb 19, 2018 at 3:04 PM Matt McNeeney<EMAIL_ADDRESS>wrote:

Hey @carlo-colombo https://github.com/carlo-colombo
Am I right in thinking that this PR adds a new field to the catalog called
additionalMetadata to the service-level metadata?
If you're looking to pass arbitrary data through ODB, there is an easier
way to do that. cc @kieron-pivotal https://github.com/kieron-pivotal
who can provide details!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pivotal-cf/brokerapi/pull/51#issuecomment-366719140,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AdXjosa8qbU_e0jseH_-in4U4JYaNsgRks5tWY1jgaJpZM4SIPil
.

Hi @mattmcneeney @kieron-pivotal
With this pr we want to add and retrieve though the /catalog endpoint some additional information in the plan when using ODB. In our case the information we want to add is the number of nodes in the cluster we are creating.
We did a poc some time ago and while doing that we found the inline tag, unfortunately it is not implemented for json but only yaml. Looking around the only way to add additional and optional fields is having custom marshaller/unmarshaller.

@carlo-colombo As you can see this was merged. Thanks for submitting!

thanks

That shouldn't be far away! cc @deniseyu


amazon clone added

closes #227

have a look @Kritika30032002

update readme with

proper steps of local setup and running the code
video of working
tech stack used


Fixes issue where setCustomerIds was hitting interact endpoint.

Description
Fixes issue where setCustomerIds was hitting interact endpoint.

Related Issue
None

Motivation and Context
We shouldn't be hitting interact for setCustomerIds.

Screenshots (if appropriate):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] All tests pass and I've made any necessary test changes.
[x] I have run the Sandbox successfully.

Can we comment out the line
https://github.com/adobe/alloy/blob/bcb529c0228ee48d88091c82e1c8110e4eb174f9/.travis.yml#L25
until we resolve issues with sonar connection from travis?

@jileeshs It was a different line causing problems, but I got it done.


how to fix "Could not find ROG Aura Core keyboard" error

i've got "Could not find ROG Aura Core keyboard" error everytime execute rogauracore commands, i'm using GL552VW

I got the same issue, maybe bc it is an older model?


RUM-4822 Allow monitoring internal connection pool

What does this PR do?
Adds a way for our customer to know the number of connections used by the internal OkHttpClient

[!NOTE]
This will be part of a debug version of the SDK to help our customer regarding Incident 27794, and won't be merged into develop in the current state.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 68.88%.

Additional details and impacted files
@@                       Coverage Diff                        @@
##           feature/debug_incident_27794    #2105      +/-   ##
================================================================
+ Coverage                         68.88%   68.88%   +0.01%
================================================================
  Files                               709      709
  Lines                             26311    26315       +4
  Branches                           4424     4423       -1
================================================================
+ Hits                              18122    18127       +5
  Misses                             6982     6982
+ Partials                           1207     1206       -1

see 32 files with indirect coverage changes


⚠ K-Thorne has degraded performance

In d764e8a, K-Thorne (https://k-thorne.com) experienced degraded performance:

HTTP code: 200
Response time: 8756 ms

Resolved: K-Thorne performance has improved in 929aee9.


Type constraint reasons

Add a Reason property in the type constraint attributes. This should probably only be allowed for prohibition attributes.
The feature would display the reason behind prohibiting usage of the specified type (or type argument) in emitted GA0001 and GA0017 diagnostics. It would be accompanied by the source of the prohibition.

Done in
https://github.com/RossLean/RossLean/commit/b78a4ab68563b2b832cb0be1def0960bf0e5744f


An ignore setting removes indentation on the line preceeding it

Testing #103613
I have the "prettierPath" ignored in my settings. Whenever I add it, indentation is always lost on the preceding line

@connor4312 I cant repro it, do you have any special indentation configured?

Nothing other than editor.tabSize: 2

@connor4312 Are you able to repro this still? If so, can you please provide me the steps to repro it as I am not able to?


eq and ne is currently not allowed on tuple expressions

I don't see why '==' and '!=' are not mentioned in #sec-tuple-exprs as operations on it. It is very similar to struct and should have the same behavior as struct really.
The other thing is in #sec-ops-on-structs, "all of their fields can be recursively compared for equality." is not needed as all of the types allowed after tuples are added to the list of allowed for equality.
I will submit a pull request for both of these issues over the weekend. I just wanted to file this issue now so I don't forget.

This seems like a reasonable enhancement to make to the spec to me.  Is there a PR ready for review yet?

See #1178


Unable to minimize the CTC training error on large sequences (>1000 timesteps)

I've tried to compare warp-ctc torch7 bindings with Paddle CTC -> test repo see logs
Warp-ctc torch implementation - works just fine.
Paddle with the same data and the same network structure can't successfully minimize the training error.
I am unable to isolate the problem by changing hyperparameters, network type/size, optim. functions, switching between CPU/GPU.
It seems the only solution that works is to truncate sequences to ~500 timesteps.
Any possible solutions/suggestions how to make this work with large varying length sequences (3000-5000 timesteps each)?
Using latest master as:

cmake -DWITH_GPU=ON -DWITH_DOC=OFF -DCMAKE_INSTALL_PREFIX=/opt/paddle ..

@F0REacH This is a very interesting comparison! Thank you for publishing the experiment in a Github repo. We really appreciate your comparison as we see it a great chance to make Paddle better.
Can you please also let us know how to re-run your experiments and some numbers that we are expected to reproduce?  For example, could you please add an README.md in your repo.  We'd be happy to try to reproduce the comparison so could we have more clue on making Paddle better.

Added README.md with installation/execution instructions.

@F0REacH Thanks for your feedback. I will reproduce this problem and give you a solution soon.

@F0REacH The argument norm_by_times in cc_layer is False by default. You can set it True. I'm not sure this argument is True or False in torch. You can set it True to try again.

Ok @qingqing01 I've tested it for 20 minutes with the norm_by_times=True option. Seems like the problem persists. I'll try to test it more with different learning rates etc.

@F0REacH  Maybe there is something wrong with your data processing. The sample number is always 1 in the logs, like
https://raw.githubusercontent.com/F0REacH/ctc-demo/master/ctc-paddle-demo/train_lr0.0001_cpu_single_01csv_file_full_length.log
Is there any data introduction link?

@qingqing01 Well, as I understand, sample number is always 1, because I'm using just one sample: 1 batch with 1 sample and this sample contains 3967 timesteps and each timestep is a vector of size 24. I've tried to load bigger batches with more samples, - got the same problem as before. Anyway, thanks for the hint - I'll test data section more thoroughly.

Same problem with more simple data sample: generated.csv.

@qingqing01 OK I've ran some tests with different data samples and found out, that seems like this problem is not caused by sequence length, but rather by some specific data/configuration combination. I've added working and failing data samples and logs, see commit. Main points of interest are lines # 95-96 in failing.csv when I use only first 95 lines of this file - everything works, but full version - fails.


Add test about enip keywords

The point of this is to increase fuzzing coverage cf https://storage.googleapis.com/oss-fuzz-coverage/suricata/reports/20211208/linux/src/suricata/src/detect-engine-enip.c.html
Fuzzing does not cover any line in detect-engine-enip.c
Fuzzing covers parsing of these enip keywords, and parsing of network traffic
But it did not find yet that it should combine them...
Not sure why.
Maybe we should have fuzz_sigpcap_aware targets for each app-layer protocol (with all the other app-layer protocols disabled)

Tests pass is set but we have failures on 5 and 6?

Failure on 6 is mqtt and smtp, so unrelated to this MR...
We should run CI again once fixes are merged

Merged in #607


大佬你好！！！

可不可以加个微信大佬，想学习下

Did you mean "WeChat"? I'm not using that program. Sorry about it.

What social media apps do you usually use? I would like to learn from you! My English is not very good, and I apologize for that.

You can ask me questions using Github issues.
You can also ask me using emails.
<EMAIL_ADDRESS> )


gh: 2.60.0 -> 2.61.0

Release: http://github.com/cli/cli/releases/tag/v2.61.0
Diff: https://github.com/cli/cli/compare/v2.60.1...v2.61.0
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 354411

x86_64-linux

:white_check_mark: 7 packages built:

emacsPackages.consult-gh
emacsPackages.consult-gh-embark
emacsPackages.consult-gh-forge
gh
gh-contribs
gh-f
gh-notify

Thanks for merging, @zowoq, much appreciated 👍


Latest carrierwave version expects File#url to take an options parameter

Since this commit: https://github.com/jnicklas/carrierwave/commit/593907495e060ba3a128988fd686c3d97699a3e2 carrierwave is passing an options parameter to the url method of File, so it no longer works with the latest version of carrierwave-mongoid.

I think the only thing that needs to be done is for File#url to be updated to take the options parameter as here: https://github.com/joshwagoner/carrierwave-mongoid/commit/0d8dc0e0db205b807ba643693a8c12b87a3e4cc8.  I don't think grid fs takes any options that would be appropriate here.

Closing in favor of #25


2 bundles with bootstrap leads into problems.

Hello,
i have a question.
We are using 2 webpack bundles in our project.
Each bundle imports bootstrap.
Therefore we have issues like that the dropdown require 2 clicks (which is an issue when bootstrap is loaded 2+ times)
https://stackoverflow.com/questions/24218663/avoid-having-to-double-click-to-toggle-bootstrap-dropdown
What is the best practice to use bootstrap js in both bundles without any issues?
Thank you
Fabian

Please submit support requests and questions to StackOverflow using the tag [webpack]. StackOverflow is better suited for this kind of support. The issue tracker is for bug reports and feature discussions. See also our CONTRIBUTING guidelines.


TF 2.4.1 and tf_nightly-2.5.0.dev20210122 dump core on Intel Xeon ES462 under Ubuntu 20.04.1

System information
System: Intel Xeon ES462 under Ubuntu 20.04.1
Python 3.8.5
TensorFlow 2.4.1 and tf_nightly-2.5.0.dev20210122-cp38-cp38-manylinux2010_x86_64.whl
Describe the current behavior
Core dumped with illegal instruction (vpxor)
Describe the expected behavior
Core not dumped
Standalone code to reproduce the issue
import tensorflow
Other info / logs Include any logs or source code that would be helpful to
Partial backtrace:
Program terminated with signal SIGILL, Illegal instruction.
#0  0x00007fee27336930 in nsync::nsync_mu_init(nsync::nsync_mu_s_*) () from /home/REDACTED/virtualenv3/lib/python3.8/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so
[Current thread is 1 (Thread 0x7fee80a8d740 (LWP 68631))]
(gdb) bt
#0  0x00007fee27336930 in nsync::nsync_mu_init(nsync::nsync_mu_s_*) () from /home/REDACTED/virtualenv3/lib/python3.8/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so
#1  0x00007fee18748c5b in tensorflow::monitoring::Counter<2>* tensorflow::monitoring::Counter<2>::New<char const (&) [46], char const (&) [58], char const (&) [11], char const (&) [7]>(char const (&) [46], char const (&) [58], char const (&) [11], char const (&) [7]) ()
   from /home/REDACTED/virtualenv3/lib/python3.8/site-packages/tensorflow/python/../libtensorflow_framework.so.2
#2  0x00007fee1870d31e in _GLOBAL__sub_I_loader.cc () from /home/REDACTEDr/virtualenv3/lib/python3.8/site-packages/tensorflow/python/../libtensorflow_framework.so.2
#3  0x00007fee80e6fb8a in ?? () from /lib64/ld-linux-x86-64.so.2

(gdb) disassemble
Dump of assembler code for function _ZN5nsync13nsync_mu_initEPNS_11nsync_mu_s_E:
=> 0x00007fee27336930 <+0>:	vpxor  %xmm0,%xmm0,%xmm0
   0x00007fee27336934 <+4>:	push   %rbp
   0x00007fee27336935 <+5>:	mov    %rsp,%rbp
   0x00007fee27336938 <+8>:	vmovups %xmm0,(%rdi)
   0x00007fee2733693c <+12>:	pop    %rbp
   0x00007fee2733693d <+13>:	retq

@PatonLewis
Could you please create a new virtual environment and check if you are facing the same issue in that as well? Thanks!

@PatonLewis
Could you please create a new virtual environment and check if you are facing the same issue in that as well? Thanks!

Error seems to come from nsync.
Can you check with a previous version on nightly/release and see if that is working?

Error seems to come from nsync.
Can you check with a previous version on nightly/release and see if that is working?

@PatonLewis
Could you please create a new virtual environment and check if you are facing the same issue in that as well? Thanks!

@Saduf2019
I created a clean virtual environment and tried with the latest tf-nightly (tf_nightly-2.5.0.dev20210125-cp38-cp38-manylinux2010_x86_64.whl) and the problem persists.

@PatonLewis
Could you please create a new virtual environment and check if you are facing the same issue in that as well? Thanks!

@Saduf2019
I created a clean virtual environment and tried with the latest tf-nightly (tf_nightly-2.5.0.dev20210125-cp38-cp38-manylinux2010_x86_64.whl) and the problem persists.

Error seems to come from nsync.
Can you check with a previous version on nightly/release and see if that is working?

@mihaimaruseac
I tried pip install tf-nightly==2.5.0.dev20201230 in a fresh virtual environment and the problem occurs there as well.

Error seems to come from nsync.
Can you check with a previous version on nightly/release and see if that is working?

@mihaimaruseac
I tried pip install tf-nightly==2.5.0.dev20201230 in a fresh virtual environment and the problem occurs there as well.

Can you use release versions and bisect? Curious if this reproduces on 2.3.0 release, for example.

Can you use release versions and bisect? Curious if this reproduces on 2.3.0 release, for example.

Can you use release versions and bisect? Curious if this reproduces on 2.3.0 release, for example.

@mihaimaruseac
The problem reproduces on 2.3.0 and 2.2.0

Can you use release versions and bisect? Curious if this reproduces on 2.3.0 release, for example.

@mihaimaruseac
The problem reproduces on 2.3.0 and 2.2.0

What is the output of pip list? It looks like the error comes from a dependency.

What is the output of pip list? It looks like the error comes from a dependency.

$ pip list
Package                Version
---------------------- --------------------
appdirs                1.4.4
apturl                 0.5.2
blinker                1.4
Brlapi                 0.7.0
certifi                2019.11.28
chardet                3.0.4
Click                  7.0
colorama               0.4.3
command-not-found      0.3
cryptography           2.8
cupshelpers            1.0
dbus-python            1.2.16
defer                  1.0.6
distlib                0.3.1
distro                 1.4.0
distro-info            0.23ubuntu1
entrypoints            0.3
filelock               3.0.12
httplib2               0.14.0
idna                   2.8
Keras-Preprocessing    1.1.2
keyring                18.0.1
language-selector      0.1
launchpadlib           1.10.13
lazr.restfulclient     0.14.2
lazr.uri               1.0.3
louis                  3.12.0
macaroonbakery         1.3.1
netifaces              0.10.4
numpy                  1.19.5
oauthlib               3.1.0
olefile                0.46
pexpect                4.6.0
Pillow                 7.0.0
pip                    20.3.3
protobuf               3.6.1
pycairo                1.16.2
pycups                 1.9.73
PyGObject              3.36.0
PyJWT                  1.7.1
pymacaroons            0.13.0
PyNaCl                 1.3.0
pyRFC3339              1.1
python-apt             2.0.0+ubuntu<IP_ADDRESS>
python-dateutil        2.7.3
python-debian          0.1.36ubuntu1
pytz                   2019.3
pyxdg                  0.26
PyYAML                 5.3.1
reportlab              3.5.34
requests               2.22.0
requests-unixsocket    0.2.0
SecretStorage          2.3.1
setuptools             45.2.0
simplejson             3.16.0
six                    1.14.0
ssh-import-id          5.10
systemd-python         234
ubuntu-advantage-tools 20.3
ubuntu-drivers-common  0.0.0
ufw                    0.36
unattended-upgrades    0.1
urllib3                1.25.8
virtualenv             20.3.1
wadllib                1.3.3
wheel                  0.36.2
xkit                   0.0.0

$ pip list
Package                Version
---------------------- ---------
absl-py                0.11.0
astunparse             1.6.3
cachetools             4.2.1
certifi                2020.12.5
chardet                4.0.0
gast                   0.3.3
google-auth            1.24.0
google-auth-oauthlib   0.4.2
google-pasta           0.2.0
grpcio                 1.35.0
h5py                   2.10.0
idna                   2.10
Keras-Preprocessing    1.1.2
Markdown               3.3.3
numpy                  1.18.5
oauthlib               3.1.0
opt-einsum             3.3.0
pip                    21.0
protobuf               3.14.0
pyasn1                 0.4.8
pyasn1-modules         0.2.8
requests               2.25.1
requests-oauthlib      1.3.0
rsa                    4.7
scipy                  1.4.1
setuptools             51.1.2
six                    1.15.0
tensorboard            2.2.2
tensorboard-plugin-wit 1.8.0
tensorflow             2.2.0
tensorflow-estimator   2.2.0
termcolor              1.1.0
urllib3                1.26.2
Werkzeug               1.0.1
wheel                  0.36.2
wrapt                  1.12.1

Does your CPU support AVX?

Does your CPU support AVX?

When I run grep -i avx /proc/cpuinfo on the machine I get nothing, so I would guess not. If you want to double-check my answer, I listed the CPU model in the system information of the bug report.

It does not support AVX.
All versions of TF since 1.6 require CPUs that support AVX. You can compile from source or use a cloud VM (for example via Google Collab).
Closing since the issue is with the CPU, not with TF.


Adjust referral rewards

Looks good

Also fixed all the tests, so that if "exchange.reset()" is uncommented and working the tests pass here.


Added Line for Visual Studio Code (.vscode/)

Reasons for making this change:
Adds .vscode/ which is automatically generated by Visual Studio Code editor on Mac OSX

Thanks, but see Global\VisualStudioCode.gitignore


split dart_support.js in two

let's split it into:

shadowdom_dart2js_support.js: add this automatically in a transformer
register_dart_api_support.js: add this directly in packages that need it, like core- and paper- elements.

This issue has been moved to dart-lang/polymer-dart#313.


engine: adapt engine metrics for multi-rocks

What is changed and how it works?
Issue Number: Ref #12842
What's Changed:

Share one statistics for different tablets
Iterate all tablets when flushing metrics
Deprecated enable-statistics for kvdb and raftdb.

None

Related changes
https://github.com/pingcap/docs/pull/11626
Check List
Tests

Unit test

Release note
None

The issue template should be updated to reflect the configuration change and related doc PR.

Looking good:


Dealing with X-like in CL and shortening CL labels

From @dosumis in relation to CL classes
I'm still uncomfortable with the Pvalb-like classes.
rdfs:label "L2/3 Pvalb-like Sst GABAergic cortical interneuron (Mus musculus)"
definition "A Sst GABAergic cortical interneuron transcriptomically between the Sst and the Pvalb families with a soma found in L2/3. Some L2/3 PV-like SST cells have Martinotti morphology while some have basket cell morphology. L2/3 PV-like SST cells have lower AP width and higher firing rate than typical Sst subclass cells. L2/3 PV-like SST cells have high maximum firing rate variability, with many classified as belonging to the Pvalb subclass on the basis of electrophysiology."
There's not really any way for anyone outside of the BDS project to use these terms for annotation. How will they know when they've found a sufficiently Pvalb-like SST GABAergic to qualify? There's not even an data linked to the term that could be used to project annotations. At least the region specific ones (in BDSO) come with both data and distinguishing markers.
The definitions read very much like a case of 'we have a heterogenous cluster in an scRNAseq analysis - here's a summary of various properties of types in it.'
In the interests of getting a release out, I'm happy to let them through. But we should make a ticket proposing obsoletion and remove them ASAP.
For CL, I think it will be sufficient to have
L2/3 SST basket neuron
L2/3 SST Martinotti neuron
Looking at how easy it was to simplify the names of these (assume all basket and Martonotti are GABAergic), I think we should open a ticket to review long names of recently added neuron types & shorten/simplify where possible.

I've left out the other X-like but added this in cause L2/3 Pvalb-like Sst is actually the name given to it.
I think for L2/3 SST basket/Martinotti, we should limit it to the primary motor cortex. Will also look into if there are other L2/3 SST cells with basket/Martinotti morphology, but I think this is unlikely

Related to #19

Related CL ticket: https://github.com/obophenotype/cell-ontology/issues/1138

Decision made on X-like -> change dendrogram file instead (will open a new ticket for this)
This will be implemented on all types
Labels have been implemented


Evaluate Review Writing in Research Bench

Closes #
📑 Description

✅ Checks

[ ] My pull request adheres to the code style of this project
[ ] My code requires changes to the documentation
[ ] I have updated the documentation as required
[ ] All the tests have passed
[ ] Branch name follows type/descript (e.g. feature/add-llm-agents)
[ ] Ready for code review

ℹ Additional Information

@timsanders256  is this PR ready to merge now?


[ensure_xcode_version] Implement flexible version check

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context

Sometimes we want to ignore the patch version number (i.e. Bitrise does not keep track of it).
Currently, if we check for Xcode version 11.3 while having the version 11.3.1 installed, the action will fail.
Description

These changes add more flexibility:
Instead of matching the whole string 11.3.1, we can simply split it to an array based on the separator . and only care about the version numbers actually specified.
For instance:
Checking for the Xcode version 11.3 while having 11.3.1 will match 11 with 11 and 3 with 3 but discard the last patch version number 1.
On the other hand, when specifying 11.3.1 while having 11.3 will mismatch with 1 and nil.

Any progress on this @joshdholtz? 😃
Let me know if you need further testing from my end! 👍

@googlebot I consent.

Thank you for this @joshdholtz, will think about adding more tests as well next time! 👌


Update Font Awesome url in README

I noticed that the README has a (now-broken) reference to http://fortawesome.github.com/Font-Awesome which I believe should be updated to http://fortawesome.github.io/Font-Awesome as referenced further down in the document.

Thanks!


Chore/upgrade eks addons

Summary | Résumé
Upgrade k8s addons to latest recommendations:

CoreDNS
kube-proxy
VPC CNI

don't need, was part of 1.23 upgrade


Rankout toggle UI [CU-3r8be0j]

Toggle added to Player Table in Admin, pops confirmation window before toggling.
This was FE only, not currently connected to any mutation

Task linked: CU-3r8be0j Toggle Salaries/Rankouts (FE)

#225


Disable NPE checks for non-public library fields

Description
For now, the engine considers method invocations or field access on null values as producing NullPointerException. Previously in #226 such NPE checks were disabled for final fields from library classes because it often leads to the generation of tests with exceptions that are unexpected for a user with high usage of Java reflection. It is suggested to extend such a strategy to non-public fields from library classes too, for the same reasons.
Expected behavior
Consider generating tests for such a method:
public class DateExample {
    boolean foo(Date date) {
        return date.getTime() == 100;
    }
}

Only such 3 tests are expected by user:
@Test
@DisplayName("foo: return date.getTime() == 100 : False -> return date.getTime() == 100")
public void testFoo_DateGetTimeNotEquals100() {
    DateExample dateExample = new DateExample();
    Date date = new Date(-155L);

    boolean actual = dateExample.foo(date);

    assertFalse(actual);
}

@Test
@DisplayName("foo: return date.getTime() == 100 : True -> return date.getTime() == 100")
public void testFoo_DateGetTimeEquals100() {
    DateExample dateExample = new DateExample();
    Date date = new Date(100L);

    boolean actual = dateExample.foo(date);

    assertTrue(actual);
}

@Test
@DisplayName("foo: return date.getTime() == 100 : True -> ThrowNullPointerException")
public void testFoo_DateGetTime() {
    DateExample dateExample = new DateExample();

    assertThrows(NullPointerException.class, () -> dateExample.foo(null));
}

But for now, UtBot also generates at least 2 such tests:
@Test
@DisplayName("foo: return date.getTime() == 100 : True -> ThrowNullPointerException")
public void testFoo_ThrowNullPointerException() throws Exception {
    DateExample dateExample = new DateExample();
    Date date = ((Date) createInstance("java.util.Date"));
    Object immutableGregorianDate = createInstance("sun.util.calendar.ImmutableGregorianDate");
    setField(immutableGregorianDate, "date", null);
    setField(date, "cdate", immutableGregorianDate);

    assertThrows(NullPointerException.class, () -> dateExample.foo(date));
}

@Test
@DisplayName("foo: return date.getTime() == 100 : True -> ThrowNullPointerException")
public void testFoo_ThrowNullPointerException_1() throws ClassNotFoundException, Exception {
    Class dateClazz = Class.forName("java.util.Date");
    BaseCalendar prevGcal = ((BaseCalendar) getStaticFieldValue(dateClazz, "gcal"));
    BaseCalendar prevJcal = ((BaseCalendar) getStaticFieldValue(dateClazz, "jcal"));
    try {
        setStaticField(dateClazz, "gcal", null);
        setStaticField(dateClazz, "jcal", null);
        DateExample dateExample = new DateExample();
        Date date = ((Date) createInstance("java.util.Date"));
        Object immutableGregorianDate = createInstance("sun.util.calendar.ImmutableGregorianDate");
        LocalGregorianCalendar.Date date1 = ((LocalGregorianCalendar.Date) createInstance("sun.util.calendar.LocalGregorianCalendar$Date"));
        setField(date1, "zoneinfo", null);
        setField(date1, "normalized", false);
        setField(date1, "millis", 0);
        setField(date1, "seconds", 0);
        setField(date1, "minutes", 0);
        setField(date1, "hours", 0);
        setField(date1, "dayOfMonth", 0);
        setField(date1, "month", 0);
        setField(date1, "gregorianYear", 11564545);
        setField(immutableGregorianDate, "date", date1);
        setField(date, "cdate", immutableGregorianDate);

        dateExample.foo(date);
    } finally {
        setStaticField(Date.class, "gcal", prevGcal);
        setStaticField(Date.class, "jcal", prevJcal);
    }
}

These tests SHOULD NOT be generated (in the plugin, at least).
Environment
No mocks, Java.
Potential alternatives
Unknown.
Context
We can possibly lose some branches with such disabling.

Disabling NPE branches for non-public fields (and for final fields as well) affects the fields declared in library classes. While it is OK for JDK classes, it also prevents NPE checks for any third-party libraries, including potentially buggy code. Protected fields may be initialized to null by derived classes as well by any users of these classes using existing constructors or static methods. If the class does not perform necessary checks, NPE may be thrown.
Attached file: a sample project with a (buggy) library dependency packaged as a jar.
ProjectWithLib.zip


College detailed

Description
Please include a summary of the change and which issue is fixed. List any dependencies that are required for this change.
[Feat] : Redesign college detailed page #860
Fixes #860(issue_no)
Replace issue_no with the issue number which is fixed in this PR
Screenshots

Checklist

[x] Tests have been added or updated to cover the changes
[x] Documentation has been updated to reflect the changes
[x] Code follows the established coding style guidelines
[x] All tests are passing

@thestarsahil
kindly please check this and merge it

The color Pattern should be same as , no additional color
and your branch is not updated , before push first check git status , if uptodate branch then push your changes

https://counsellor.social/dashboard
This is not our latest branch updates
Do first that

@thestarsahil
now you can merge this

Your css changes effecting to other pages
Carefully use classnames on css


Implement

Is your feature request related to a problem? Please describe.

Describe the solution you'd like

Describe alternatives you've considered

Additional context

Hit enter by accident

Meant to say, Impliment brave browser's adblock-rust into kiwi

With the description saying
Since Google will be focing manifest v3 into the core/base chromium soon, I was wondering if you could implement the Brave Browser's adblock-rust AdBlock engine since

I love kiwi but the only thing keeping me from using it is manifest v3 causing AdBlock extensions to no longer work, which I know is not your fault at all. Brave is the only chromium based browser with an ad and tracker blocker that I know works as they advertise and that many people, including my self included, trust it.

The other option, is to what bromite does and allow users to use filter lists the same way bromite does


Change Location Starts Scan On Long Press

I'm not sure if this is a bug per say but I just noticed within the recent updates that when I touch and hold down on the map (long press), the map automatically starts scanning that area for Pokémon. I thought in the previous versions you had to long press somewhere on the map and then hit the scanner button. Is this a bug or just a new feature so that you only have to long press on the map to start scanning as a new location? You no longer have to press the scan button?

There are no new function simply long press on map to launch scan :)

@istornz Awesome! So no need for the scanner button? Does the scanner button still work / do anything? :D

@blackhattristar the scanner button is for you to automatically position the spot to the middle of the screen. Just like what happens when you click the "my location" button


select db  will have  a error

config:
spring:
  redis:
    database: 6
    host: ${extraEnvHost}
    port: 6379
    password: ${redis.pwd}
    pool:
      minIdle: 1
      maxIdle: 10
      maxWait: 3
      maxActive: 8

@Component
public class JedisCompent {
    @Autowired
    private RedisConnectionFactory connectionFactory;
    @Autowired
    private Jedis jedis;

    @Bean
    public Jedis jedis(){
        Field jedisField = ReflectionUtils.findField(JedisConnection.class, "jedis");
        ReflectionUtils.makeAccessible(jedisField);
        Jedis jedis = (Jedis) ReflectionUtils.getField(jedisField, connectionFactory.getConnection());
        return jedis;
    }

    @Bean
    public JReJSON jReJSON(){
        return new JReJSON(jedis);
    }
}

@Slf4j
@RestController
@RequestMapping("/redis")
public class ExController {
    @Autowired
    private RedisTemplate redisTemplate;
    @Autowired
    private JReJSON jReJSON;
    @Autowired
    private Jedis jedis;

    @GetMapping(value = "/useRedisJSON")
    public int useRedisJSON(){
        long stime = SystemClock.now();

        jedis.set("kkkk","asdfasdf");

        String testJsonObjectName = "robben";
        jReJSON.set(testJsonObjectName,new Object());  //success in db6
        jReJSON.set(testJsonObjectName,21,new Path(".age"));   //error:   ERR new objects must be created at the root
        return 0;
    }
}

As shown in the figure above，Sometimes it fails！
Sometimes in db6 have a "robben" object is "{}" ,but After multiple executions，in db0 will get a right result({"age":21}). why?
if my don't set db in application.yml,All correct!
Is it because the jedis I created did not use the connection pool?

@robben009 Your jedis connections are being managed by spring-data-redis. That may be a better place to ask.


PushIn target height keeps expanding on iPhone

Describe the bug
When scrolling down the documentation homepage, it’s hard to get to the bottom of the page. Once at the bottom, scrolling up just a tiny bit will cause the browser to jump up again and the pushIn container increases size.
This is likely due to the browser resizing whenever the navigation controls come into view upon scrolling up. They disappear when scrolling down as well, so the container height keeps progressively getting larger.
To Reproduce
Steps to reproduce the behavior:

Go to https://nateplusplus.github.io/pushin/
Scroll down to the bottom of the page
Scroll up slowly
See the page jump suddenly5.
Scroll back down
See the size of the container has greatly increased

Expected behavior
The PushIn container should remain the same size when scrolling up and down on any device.
Smartphone:

Device: iPhone SE
OS: 15.5
Browser Chrome

This is fixed in v5.1.1 patch release


add new screen for limited which sector other

add new screen for limited which sector other

CI: No security warnings found

CI: No security warnings found


Adds watch and unwatch commands for moderators

Description
Allows any users with the role SpellBot Admin to run the following two commands:

!watch @player
!unwatch @player

After a player is set as watched, whenever they enter into a game, the @Moderators role will get a DM from the bot.
Setting up the watch:

Then, later, the watched user creates a game using !lfg:

Moderators will get a notification from the bot:

For now the people that get notified are those with the @Moderators role. In the future this could be made configurable but for now it's not 🤷♀

Resolves #371

Checklist

[x] Add tests for these changes
[ ] Test coverage is not decreased
[ ] Entire test suite passes

Codecov Report

Merging #372 (f982085) into master (63c0091) will decrease coverage by 0.12%.
The diff coverage is 92.06%.

@@            Coverage Diff             @@
##           master     #372      +/-   ##
==========================================
- Coverage   97.79%   97.67%   -0.13%
==========================================
  Files          57       58       +1
  Lines        2902     2965      +63
  Branches      397      411      +14
==========================================
+ Hits         2838     2896      +58
- Misses         36       38       +2
- Partials       28       31       +3

Impacted Files
Coverage Δ

src/spellbot/__init__.py
96.13% <89.79%> (-0.20%)
:arrow_down:

src/spellbot/data.py
100.00% <100.00%> (ø)

...fc50dcc_add_commands_to_watch_and_unwatch_users.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 63c0091...f982085. Read the comment docs.


npm install fails with The package react does not satisfy its siblings' peerDependencies requirements!

npm ERR! peerinvalid The package react does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants react@>= 0.13.0 || ^0.14.0-alpha
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS><0.15.0
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>
npm ERR! System Darwin 14.5.0
npm ERR! command "node" "/usr/local/bin/npm" "install"
npm ERR! cwd /Users/blairanderson/Documents/dev/form-builder
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.9
npm ERR! code EPEERINVALID
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/blairanderson/Documents/dev/form-builder/npm-debug.log
npm ERR! not ok code 0

+1!

Same for me, seems it because npm 2.x, on npm 3.x it's fine

has any one been able to figure this out. Or any recommendations thanks

Can people try this again with the lastest?  Also, looks like the node version quite old (v0.10.28).  Does it help to upgrade?


Add a command to update the phpunit.xml.dist

Would be cool to do something like:
bin/cake fixture-factories.setup

To update the xml as appropriate.

@josegonzalez thanks for he request. It does make sense. I have created a new setup command:
bin/cake fixture_factories_setup


fix(api): feature times

Removed deletedAt from required fields
Add description about deletedAt and updatedAt defaults

https://github.com/openmeterio/openmeter/pull/1104 will fix CI


Using SubTensor in a Kernel

Hi,
I'm am trying to run a kernel with only part of an Image.
I'm sending an Image SubTensor to "NEMinMaxKernel" but I get a wrong answer.
I'm comparing it to cv::minMaxIdx with a sub matrix.
Here is my code:
`
arm_compute::Coordinates coords(0,0,0);
arm_compute::SubTensor subImage(image, arm_compute::TensorShape(100, 100, 1), coords);
int32_t origMin, origMax;
mMinMaxKernel.configure(&subImage, &origMin, &origMax);
mMinMaxKernel.run(mMinMaxKernel.window());

cv::Mat buff = cv::Mat(height, width, CV_16S, image.buffer());
cv::Mat subBuff = buff(cv::Rect(0,0,100,100));
double cvmin;
double cvmax;
cv::minMaxIdx(subBuff, &cvmin, &cvmax);

`
Am I declaring the SubTensore wrong?
Thanks

Hello @ymotola ,
Unfortunately, at the moment we don't support extraction of subtensors spatially, meaning subtensors should have the same width and height with the parent tensor. We know that being able to extract subtensors spatially is an important feature and will work to add support for this in the future. The reason that is not supported is due to padding and access pattern considerations that we have to account that apply only spatially.
George

George is right, this is not officially supported, you could do it by abusing the API and pretending the image was the size of your ROI and the rest was just padding. However because the rest of the image would be considered padding then it might get overwritten by some kernels which is why we don't currently allow it. But I guess if you don't care about the source image and with a bit of hacking it might work.

I understand, thanks.
Do you have any other idea on how to send only part of an image in a kernel?
Should I copy the data to a smaller image? If so what is the most efficient way to do it?

Hi @ymotola
You could try copying the values you need from the source image to a new tensor, please take a look at the link below in the documentation discussing how to use execute_window_loop and windows to copy data to and from tensors.
https://arm-software.github.io/ComputeLibrary/v19.02/architecture.xhtml#S4_6_4_working_with_objects
Hope this helps.

Will close this, please reopen if needed.


Added Support for a UI display option for how to format fields marked as Offsets/Sizes

Description
Issue 2924
Previously by default, values are displayed using decimal formatting unless they are above a threshold (0xFFFFFF) then they are displayed using hexadecimal formatting.
There is now a UI formatter setting to change this behaviour for fields which have been marked as an Offset/Size type.
The UI option has three modes: Auto, Decimal, Hexadecimal:

Auto : behaves as it currently does, decimal by default with hexadecimal when the value is above a threshold
Decimal : always display the value using decimal formatting
Hexadecimal : always display the value using hexadecimal formatting

The new UI option does not affect fields which have not been marked as an Offset/Size type.
There is one additional change to existing behaviour when printing using hexadecimal (Auto or Hexadecimal mode) then for values below UINT32_MAX the values are treated as uint32_t instead of uint64_t (eight leading zero's instead of sixteen leading zero's) e.g.

Before
dstOffset 0x0000000001000000
After
dstOffset 0x01000000

This is an example of a field not marked as an Offset or Size field with a large value, the display does not change for Auto, Decimal, Hexadecimal mode:

Before
jakeTest 0x0000000001000000
After
jakeTest 0x01000000

Done a first pass, reviewing the serialised fields for all APIs to apply mark up for the OffsetOrSize field type. The selection criteria was an offset or size which is measured in bytes. This markup can be refined in the future it does not affect the captured data.
Testing
Before showing the existing behaviour of the Auto formatting mode

Decimal for values less than or equal to 0xFFFFFF
- Hexadecimal for values above 0xFFFFFF

After showing the behaviour of the new formatting modes
Auto formatting mode

Decimal for values less than or equal to 0xFFFFFF
- Hexadecimal for values above 0xFFFFFF

Decimal formatting mode

Decimal for values less than or equal to 0xFFFFFF
- Decimal for values above 0xFFFFFF

Hexadecimal formatting mode

Hexadecimal for values less than or equal to 0xFFFFFF
- Hexadecimal for values above 0xFFFFFF

https://github.com/baldurk/renderdoc/pull/3133


Adopt Terracotta deferred retirement for messages

With the latest versions of Terracotta, there has been a number of changes.
Ehcache should follow these changes, adopting new APIs and features.
This specific issue is about using deferred retirement for strong consistency invalidation wait instead of a local latch.

Whoever ends up looking at this should talk to Myron about whether this is actually desirable before doing this. Not sure that running that many messages with deferred retirement is a good idea.


Worksheet errors

Additions

pulls in cfarm's worksheet-errors branch
displays errors on summary page
adds hack to load page 1 when error message links are clicked

Screenshots

Looks great!

It does look good! One thing, though, the goals error copy references red flags, not goals...

I tried this out locally and get the correct errors when I don't prioritize anything:

@sonnakim, good catch! That error was fixed, but I forgot to update the screenshot. :)
Thanks for checking it, @cfarm!