Refactored git related functionalities

Note: this PR is not quite completed yet.

Errr... Treat this PR as "Refactoring PR related functionalities"

This is quite much done, and all future commits will be bug fixes.
What I did in this PR

Implemented new command reject to close SD PRs from chat
Implemented custom comments when approving/rejecting SD PRs from chat
A minor fix in coffee and tea (No double pinging)(*)
Refactored merge_pull_request() in gitmanager.py to use GH API
Implemented reject_pull_request() in gitmanager.py
Refactored GitHubManager to use a single method call_api() and changed all other method to wrappers
Reimplemented branch deletion with a async call

(*) I really should not have done this, but it makes me feel itchy every time I see that part of code...
What is coming up

Wait until PR #3884 become merged
Wait until this PR is either merged or closed
Then, refactor add_to_blacklist() and remove_from_blacklist() in gitmanager.py to reduce unnecessary and duplicated code, and implement a logic in remove_from_blacklist() similar to that in add_to_blacklist() which allows non blacklist capable users watch/blacklist by PRs, so that now these users, and all users if metasmoke is down, is able to unwatch/unblacklist by PRs.

I still need to go through this PR and do a detailed inspection of the code.
However, prior to being merged, it's going to need to be tested on an SD instance running against a fork of the SD repo. However, there was a security issue with SD which could disclose the GitHub password in chat in response to a !!/errorlogs command. That issue has been resolved, and the password changed, but that fix is in a newer commit than this PR is based upon.
I would be more comfortable doing that testing if the code here was rebased to the current SD master HEAD (would require resolving merge conflicts and a --force push), or otherwise incorporates the changes which have been made (e.g. merging master into this PR: still requires resolving merge conflicts). My personal preference is rebase, but that's really a personal preference, based largely on GitHub not giving a good diff for PRs after the master has been merged.

The CI failure is caused by a network issue on CircleCI side. The local build is perfectly fine.

This is not an optimal design, but since SD reboots every 6 hours, I won't worry about the memory issue caused by storing too much pr requester info; also there is little need for the pr requester to close his/her own pr after 6 hours/in a separate chat room.

Set to Draft because:

Note: this PR is not quite completed yet.

... from original filer.

Opening this up again as it has been 7 days without comment activities.

Closing this as it is already implemented in a much better way.


Should have a queue

If you have a sandbox that repro's the issue, I can re-open and investigate, but I can't really debug it without code.


[prism] Timer Handling (Event Time)

Now that prism has keyed stateful processing (https://github.com/apache/beam/issues/28543), it's possible to add timers.
Timers come in two flavours: EventTime, and ProcessingTime. They are described in the Programming guide: https://beam.apache.org/documentation/programming-guide/#timers  But I'll re-iterate key points here.
EventTime timers fire when the input watermark passes them in EventTime. ProcessingTime timers fire when at the real time that was set. Both are associated with arbitrary user callbacks associated with the transform.
The output watermark can be held back by the timer using watermark holds, otherwise, elements emitted by the timer callback are emitted at the timer's fireing time.
The important bit is that holds only affect the output watermark, and not the input watermark.
Like state API use, timer processing uses keyed stateful processing. Timers are associated with a user key (and thus associated user state).

Timers are passed to the SDK along the Data Channel, in its own "union'd" data field.
In practice, to ensure the SDK has processed all data elements in event time before a fireing timer, they are split into separate data element batches.
https://github.com/apache/beam/blob/bc42a637d566b1dbc042632114afb539555ff353/model/fn-execution/src/main/proto/org/apache/beam/model/fn_execution/v1/beam_fn_api.proto#L769
This doesn't mean they can't be processed in the same bundle however. Just that the Data channel messages for timers should be in a separate Elements message on the data channel, than preceeding data, and succeeding data.
At time of writing, this means we need to adjust how data is moved from the ElementManager to the Bundle to be available to the DataChannel for processing. Further, it needs to not prevent a later implementation of Elements on ProcessBundleRequest (and Response).
Data is currently joined together, and sent to the SDK in a single blob, no matter how many elements are present.  https://github.com/apache/beam/blob/bc42a637d566b1dbc042632114afb539555ff353/sdks/go/pkg/beam/runners/prism/internal/worker/bundle.go#L136
But otherwise, it's looked up from the element manager here:
https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/runners/prism/internal/stage.go#L81
It's done this way to ensure an identical path for both Runner transforms, and SDK transforms. Notionally, with stateful handling, we can change up and make GBK handled eagerly instead of on demand, since the aggregation could pre-sort the received bytes by key for the stage. Currently, we must re-parse the data when the stage executes: https://github.com/apache/beam/blob/master/sdks/go/pkg/beam/runners/prism/internal/handlerunner.go#L308 Flattens are already "parsed" so any additional re-copying of the data is wasteful.
If we assume the runner transform handling will change up a little, we can instead improve handling for SDK bound bundles. Right now, as linked above, we only handle Data, not data and timers. That means we need to update worker.B to have an ordered list potentially interleaved Data and Timer blocks. Then the ElementSending loop iterates over that list with given blocks for each type. This moves the consolidation logic into the ElementManager.
Data&Timers (Elements) from here are sent directly to the SDK in the Data stream handler:
https://github.com/apache/beam/blob/bc42a637d566b1dbc042632114afb539555ff353/sdks/go/pkg/beam/runners/prism/internal/worker/worker.go#L378
Response elements from the SDK will need a new handler to loop over resp.GetTimers(). We loop over data responses here:
https://github.com/apache/beam/blob/bc42a637d566b1dbc042632114afb539555ff353/sdks/go/pkg/beam/runners/prism/internal/worker/worker.go#L354
The TentativeData structure in the bundle here would need to cache timers as part of the output data, from producing transform to timer family, to timer tag to timer. A new method should be added to the TentativeData adding this.  This avoids additional plumbing to handle for timers.
engine.ElementManager.PersistBundle will need to process and handle timers, routing them to the pending part of the same stage, as Timers are a loop within the same stage. This is handy, as it means we don't need to maintain a transform -> stage lookup structure in the ElementManager like we do for Data outputs.
EventTime timers could be treated as "elements", we can ensure the per-key pendingHeaps are event time ordered. This permits the timers to fire in event time order.
https://github.com/apache/beam/blob/bc42a637d566b1dbc042632114afb539555ff353/sdks/go/pkg/beam/runners/prism/internal/engine/elementmanager.go#L684 Each element would need to be marked as a timer or not however. https://github.com/apache/beam/blob/bc42a637d566b1dbc042632114afb539555ff353/sdks/go/pkg/beam/runners/prism/internal/engine/elementmanager.go#L37
With that approach, startBundle then needs to handle each element individually for the stateful keys and check if it's a timer. Not the most efficient, but probably fine as an initial approach.
Note: Prism is intending to be correct first, and optimizations can be found later. We could probably pre-block out a meta heap (a heap of heaps), by using the heap invariant to ensure that each sub heap is a contiguous type. The optimization goal would be to put as much work as possible on the PersistBundle goroutine, so that the bundle scheduling goroutine doesn't do as much when extracting work.
However, in particular, timer values must not be emitted until the input watermark for the stage is greater than their event time. Timers are unique in that they happen in the future (in event time), and loop back in on themselves. This would be handled in startBundle.
Finally, timer/State holds are important for processing correctness. We need to plumb through the hold from persist bundle to the watermark refreshing, retaining this. This is about as normal however for various persisted elements (or residual handling for SDFs). But there's additional plumbing to handle here, since they need to be available for watermark refreshes.

What I missed from the above discussion is that for a given Timer FamilyID + Tag + Key only a single timer can exist. So simply inlining the timers isn't entirely right, since
the last set timer needs to be the only one that fires. (eg. See this Java integration test
We can either store the timers separately, which requires checking the recent timer event time against the element event times. That feels too heavy weight.
Or we can update the holding struct at the user key level to be the heap of elements & timers as described and a map field for representing the last set timer for a given timer family + tag event time. We only look up this time when the element is a timer, and confirm that they match. If they don't, we throw away that timer. The main downside of this approach is that it's possible to end up with a large set of never-firing timers in memory. However, this would require poor behavior on the SDK and the user code.

Bundles with Timers require SDKs to wait until there is a "Done" signal for every transform (not timer) being processed. Otherwise the SDK will hang. So bundle tracking needs to know which transform(s) need timers, even before any timers are written by the SDK, so the "is_last" bit can be sent to the SDK for all applicable transforms.

Note: Most runners don't support timers in Merging Windows, so this is an acceptable implementation limitation if it comes down to it. See https://beam.apache.org/documentation/runners/capability-matrix/when-in-processing-time/

Punting Processing Time timers handling to be tracked in #30083 so this can be closed.


Try only storing nodes in predecessors

We can recalculate the edge, and this might make predecessors substantially smaller in memory.

Done in 426ce9751f3b1ed54edfebc34a50010a73262738.


[1.19.2] Request for comment: Default spawn weights/group sizing for the mobs

Leave your suggestions/opinons here regarding the spawn-tuning of our mobs. For details, look here: https://github.com/Infamous-Misadventures/Dungeons-Mobs/tree/1.19/src/main/resources/data/dungeons_mobs/forge/biome_modifier

The poison anemone spawn weight of 50 may be too high, especially since oceans are easy to spawn mobs in. I would say reducing the default to 25 is better.


Parity Error Under Linux

I am using this simple code to send a byte through serialport. And I watch the result with a logic analyser hardware. As it seems below, same code produces expected correct result under Windows, but it gives a parity error under Linux (Raspberry Pi)
I intended to use 'even' parity which is apparently the problem. Windows version interprets correct, but Linux version fails and using default value 'none'.
When I use parity default value 'none' I got same result for both Windows and Linux.
var sp = new SerialPort('/dev/ttyAMA0', {
baudRate: 19200,
dataBits: 8,
parity: 'even',
stopBits: 1,
flowControl: false
});
var serialBuffer = new Buffer([0x01]);
sp.write(serialBuffer);

@ergousha - I am having similar issue. Made the changes in issue #413. Do i need to rebuild the .cpp file? If so, how can I do it?


fix: remove println in favor of logger

Codecov Report

Merging #190 (4340d8f) into master (021b1fd) will increase coverage by 0.05%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##           master     #190      +/-   ##
==========================================
+ Coverage   57.29%   57.35%   +0.05%
==========================================
  Files          43       43
  Lines         733      734       +1
  Branches      165      165
==========================================
+ Hits          420      421       +1
  Misses        211      211
  Partials      102      102

Impacted Files
Coverage Δ

...tion/runtime/reconfiguration/UnitReconfigurator.kt
44.03% <100.00%> (+0.51%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Feature: Profile pause command

Some scenarios require the temperature to be at a certain level before the part is inserted, such as for annealing plastics. It would therefore be useful to have a pause command, where the Controleo profile execution pauses until it receives a screen tap, so that a part may be inserted in the oven and then the profile resumed.
An implementation could look like this:
Pause // Controleo pauses indefinitely until screen is tapped
Pause 60s // Controleo pauses for 60 seconds or until screen is tapped, whichever is first

or
Maintain 250C and pause // Maintain 250C indefinitely until screen is tapped
Maintain 250C and pause up to 60s // Maintain 250C for 60 seconds or until screen is tapped, whichever is first

There is no need for a resume command, in my opinion, as a screen tap would indicate the profile is ready to be resumed.
Though Controleo is excellent for reflow, it can readily be used for myriad other uses (such as annealing) with a pause command. Any consideration that could be given to adding this would be quite appreciated and would increase Controleo's flexibility.

I think the "Wait for x seconds" command handles some of what you want, but I think the "screen tap" idea is a good one.  I'll add it to the 1.5 release.  Thanks for the feedback!


Error: 1 validation error for QCProject liveResults field required

Hi team, I've been using lean for quite some time now with no problem, but now, after 2 weeks of not using it, and trying to do lean cloud backtest "Sample" --push --open as per normal (where "Sample" is the name of my strategy dir), I suddenly get this error:
Error: 1 validation error for QCProject
liveResults
  field required (type=value_error.missing)

I know that the field liveResults is missing from my config, but:

where is my config file that I can change (what should I change it to)
more importantly, why did this just suddenly happen? I did not change anything, and I even reinstalled lean.

Thank you!

Hey @RyanRTJJ! The field was removed some time ago already https://github.com/QuantConnect/lean-cli/pull/306/files. Please update your lean cli to the latest version to solve this issue pip install --upgrade lean 👍.
If the issue persists please report back running the command with --verbose and sharing the complete output so we can debug it better


Tika not extracting table with Content control fields from word document

Hi,
I have a word document which contains normal tables and there are some table with content control. Tika extract's the text of document and content of normal table perfectly but skip the table which has content control over it. How to extract the data from table with content control .
"Content controls are individual controls that you can add and customize for use in templates, forms, and documents. "

Sorry you are having problems. That part of Tika (Office document extraction) is controlled by POI. I'd take a look over there to see if they support the desired capability.

Thanks for the reply. keep posted if you find something which can resolve the issue.


Find a reasonable pricing web hosting service

Overview
Hosting a repository of GitHub Organization require a Vercel's Team, which costs 20USD/mo. It would be better if there are any other web app hosting services with lower pricing.
Criterias

Find other web app hosting services (e.g. Netlify, AWS Amplify)
Enable preview deployment for each GitHub Pull Request (Important for PR reviews!)

Additional Context

https://discord.com/channels/1154534169796431873/1159594355301023764

### Tasks
- [ ] Draft task

Decided to host the app using AWS Amplify.

Tasks

[ ] Update package.json and apply it to the develop and main branches.
[ ] Set up the Amplify web app hosting for this repository, targeting the develop and main branches.
[ ] Set up PR previews for develop and main branches.

Once ensuring a PR preview is triggered, this issue can be closed.

Though we have earlier decided to use the "AWS Amplify Web Hosting" service, we settled to not use any web hosting services because we recently updated to the latest Next.js v14, which is not supported by AWS Amplify for now although v13 is supported.
Reference: https://aws.amazon.com/blogs/mobile/amplify-next-js-13/
There was not even a single page that mentioned about Next.js 14


[tests-only] [full-ci] Bump core commit id for tests in edge

Like https://github.com/owncloud/ocis/pull/2901
Part of https://github.com/owncloud/QA/issues/703

https://drone.cernbox.cern.ch/cs3org/reva/4802/13/6
runsh: Total unexpected failed scenarios throughout the test run:
apiWebdavUpload1/uploadFile.feature:32

      | spaces      | /upload.txt       |
        Notice: Trying to get property 'value' of non-object in /drone/src/tmp/testrunner/tests/acceptance/features/bootstrap/FeatureContext.php line 2577

It looks like getPersonalSpaceIdForUser() does not return useful information about the personal space id. We need to find out if /graph/v1.0/me/drives is implemented in reva edge. Probably improve the test code so that it checks HTTP status and checks the returned data etc. and gives nicer error messages about what went wrong.

https://drone.cernbox.cern.ch/cs3org/reva/4809/13/6
        The HTTP status code 404 is not between 200 and 299
        Failed asserting that 404 is equal to 299 or is less than 299.

That's a nicer error message. We need to sort out where is the equivalent of the /graph/v1.0/me/drives endpoint.


Is it possible to support injecting into a static class?

Can we achieve the following?
StaticClass.InjectFrom(myObject);
StaticClass = Mapper.Map (myObject, StaticClass);

afaik you can't use extension on static classes, and you can't pass them as a parameter


Nutch only does one round and cannot be restarted.

[x] Nutch runs indefinitely.
[ ] Nutch can be restarted.

Nutch runs indefinitley as of #355.

Perhaps we can have a button for force stopping nutch?


Make docs building dependencies optional using "extras_require"

On gitter (https://gitter.im/fontbakery/Lobby?at=5cdef4f97c363c75a7f915eb), @madig asked:

is there any particular reason fontbakery pulls in all the doc-making dependencies by default?

To which I replied:

@madig that's because I was unable to figure out how to make ReadTheDocs install the docs extra-dependencies. I would be glad to merge a change that separates again the docs dependencies while keeping a good readthedocs setup

And @anthrotype suggested:

you should use extras_require so one can do pip install fontbakery[docs] when needed. https://docs.readthedocs.io/en/stable/config-file/v1.html#python-extra-requirements

There are Fontbakery developer docs on how to install the docs dependencies :)
https://font-bakery.readthedocs.io/en/latest/developer/doc-contrib-guide.html#documentation-contributor-guide

The challenge at the moment here is how to setup tox to install fontbakery[docs]


CI: delete useless ci files

What problem does this PR solve?
Issue Number: close #6685
Problem Summary: delete useless CI files
What is changed and how it works?
Delete files:

Jenkinsfile was empty.
bug-closed.yaml was disabled and not runned for 10 months.
license-checker.yaml was migraged to PingCAP-QE/ci repo.

Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/rebuild

/rebuild

/run-unit-test
/run-integration-test

/cc SeaRise gengliqi Lloyd-Pottiger

/merge


Add collections-contrib sub-project

The collections-contrib project contains decorators introducing new operations on the core collections.
As an example, I added a zipByKeyWith operation on Map collections.

I think it could be released separately, as part of the Scala platform, not the core libraries. Or maybe shepard with the aim to release as a completely independent project.
My concern is that we need to find a balance to encourage the community to contribute and to face to the hard reality that most of these additions will need an extensive vetting period before they can be added (and a lot of them will likely not be added after all, because we need to keep the footprint small).

I agree that the cognitive footprint needs to be small.  The actual number of methods doesn't need to be that small since there are already lots, and since Scaladoc is a great tool.  Vetting is useful for three things: usefulness, correctness, and style.  Features that are routinely asked as questions on Stack Overflow or elsewhere can be presumed useful, though; testing can ensure correctness; and that leaves only style, which can partially be taken care of with checking against criteria.
So I don't think we need to invent a new library to get methods that pretty obviously fit into the core functionality.  I do agree that for more complex or esoteric operations, an add-on library can be helpful as an independent project.


Strapi v4 migration

Hi 👋
The expected structure of plugins has changed in Strapi v4...
Mostly moved existing code about to fit the new structure and updated the UI to use the new Strapi Design System components.
Here are some screenshots of it working on my machine:

Also added a generic error message for when something goes wrong:

Oh wow @M15sy thank you. This looks great and appears to be a comprehensive rewrite.
Reviewing...

It would be great to get this reviewed and merged if possible. We're using this plugin at the moment and currently upgrading to Strapi v4.


Liquibase throwing error on script that works in SQLcl and on the previous liquibase version against Oracle Database

Environment
Liquibase Version: 4.12.0
Database Vendor & Version: Oracle Database, 19c
Operating System Type & Version: Oracle Linux 8
Description
When I run update on the latest version (4.12.0), liquibase is throwing an ORA-06550 - where I don't think it should.
But if I run the same script directly in sqlplus, it works fine.
If I rollback to version 4.9.1, it is also working fine.
Detailed info
Given the following script:
declare
  l_file_clob clob;
begin
  l_file_clob := apex_string.join_clob(apex_t_varchar2(
    '    cy.log(`getDialogBody for className="${dialogClassName}"`);',
    '    return cy.get("iframe", { log: false } )'
  ));

end;
/

My corresponding change log file looks like this:
# Liquibase Changelog
# This file is auto-generated.
databaseChangeLog:
- changeSet:
    author: trent
    id:<PHONE_NUMBER>10388755
    runOnChange: true
    changes:
    - sqlFile:
        dbms: oracle
        encoding: utf8
        endDelimiter: /
        splitStatements: true
        stripComments: true
        path: example.sql
    rollback:
    - empty: null

On 4.12.0, it shows this:
$ /opt/liquibase-4.12.0/liquibase --changelog-file example.sql.yml update
Starting Liquibase at 15:14:07 (version 4.12.0 #3073 built at 2022-06-17 05:59+0000)
Liquibase Version: 4.12.0
Liquibase Community 4.12.0 by Liquibase
[2022-07-05 15:14:19] INFO [liquibase.lockservice] Successfully acquired change log lock
[2022-07-05 15:14:48] INFO [liquibase.changelog] Reading from ACDC.DATABASECHANGELOG
Running Changeset: example.sql.yml::202204061610388755::trent
[2022-07-05 15:14:58] INFO [liquibase.lockservice] Successfully released change log lock
[2022-07-05 15:14:58] SEVERE [liquibase.integration] ORA-06550: line 7, column 5:
PLS-00103: Encountered the symbol "    return cy.get("iframe", { log: false" when expecting one of the following:

   ( - + case mod new not null <an identifier>
   <a double-quoted delimited-identifier> <a bind variable>
   continue avg count current exists max min prior sql stddev
   sum variance execute forall merge time timestamp interval
   date <a string literal with character set specification>
   <a number> <a single-quoted SQL string> pipe
   <an alternatively-quoted string literal with character

liquibase.exception.CommandExecutionException: liquibase.exception.LiquibaseException: Unexpected error running Liquibase: Migration failed for change set example.sql.yml::202204061610388755::trent:
     Reason: liquibase.exception.DatabaseException: ORA-06550: line 7, column 5:
PLS-00103: Encountered the symbol "    return cy.get("iframe", { log: false" when expecting one of the following:

   ( - + case mod new not null <an identifier>
   <a double-quoted delimited-identifier> <a bind variable>
   continue avg count current exists max min prior sql stddev
   sum variance execute forall merge time timestamp interval
   date <a string literal with character set specification>
   <a number> <a single-quoted SQL string> pipe
   <an alternatively-quoted string literal with character
 [Failed SQL: (6550) declare
  l_file_clob clob;
  l_file_blob blob;
begin
  l_file_clob := apex_string.join_clob(apex_t_varchar2(
    '    cy.log(`getDialogBody for className="${dialogClassName}"`);',
    '    return cy.get("iframe", { log: false]
        at liquibase.command.CommandScope.execute(CommandScope.java:162)
        at liquibase.integration.commandline.CommandRunner.call(CommandRunner.java:51)
        at liquibase.integration.commandline.CommandRunner.call(CommandRunner.java:21)
        at picocli.CommandLine.executeUserObject(CommandLine.java:1953)
        at picocli.CommandLine.access$1300(CommandLine.java:145)
        at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2352)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2314)
        at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
        at picocli.CommandLine$RunLast.execute(CommandLine.java:2316)
        at picocli.CommandLine.execute(CommandLine.java:2078)
        at liquibase.integration.commandline.LiquibaseCommandLine.lambda$execute$1(LiquibaseCommandLine.java:336)
        at liquibase.Scope.child(Scope.java:189)
        at liquibase.Scope.child(Scope.java:165)
        at liquibase.integration.commandline.LiquibaseCommandLine.execute(LiquibaseCommandLine.java:301)
        at liquibase.integration.commandline.LiquibaseCommandLine.main(LiquibaseCommandLine.java:90)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at liquibase.integration.commandline.LiquibaseLauncher.main(LiquibaseLauncher.java:91)
Caused by: liquibase.exception.LiquibaseException: Unexpected error running Liquibase: Migration failed for change set example.sql.yml::202204061610388755::trent:
     Reason: liquibase.exception.DatabaseException: ORA-06550: line 7, column 5:
PLS-00103: Encountered the symbol "    return cy.get("iframe", { log: false" when expecting one of the following:

   ( - + case mod new not null <an identifier>
   <a double-quoted delimited-identifier> <a bind variable>
   continue avg count current exists max min prior sql stddev
   sum variance execute forall merge time timestamp interval
   date <a string literal with character set specification>
   <a number> <a single-quoted SQL string> pipe
   <an alternatively-quoted string literal with character
 [Failed SQL: (6550) declare
  l_file_clob clob;
  l_file_blob blob;
begin
  l_file_clob := apex_string.join_clob(apex_t_varchar2(
    '    cy.log(`getDialogBody for className="${dialogClassName}"`);',
    '    return cy.get("iframe", { log: false]
        at liquibase.integration.commandline.Main$1.run(Main.java:443)
        at liquibase.integration.commandline.Main$1.run(Main.java:221)
        at liquibase.Scope.child(Scope.java:189)
        at liquibase.Scope.child(Scope.java:165)
        at liquibase.integration.commandline.Main.run(Main.java:221)
        at liquibase.command.AbstractCliWrapperCommandStep.run(AbstractCliWrapperCommandStep.java:33)
        at liquibase.command.CommandScope.execute(CommandScope.java:156)
        ... 20 more

Connected to SQLcl:
SQLcl: Release 22.2 Production on Tue. Jul. 05 15:17:58 2022

Copyright (c) 1982, 2022, Oracle.  All rights reserved.

Connected to:
Oracle Database 19c EE High Perf Release <IP_ADDRESS>.0 - Production
Version <IP_ADDRESS>.0

xgbu_ace_atat_gat_168: acdc> !cat example.sql
declare
  l_file_clob clob;
  l_file_blob blob;
begin
  l_file_clob := apex_string.join_clob(apex_t_varchar2(
    '    cy.log(`getDialogBody for className="${dialogClassName}"`);',
    '    return cy.get("iframe", { log: false } )'
  ));
end;
/
xgbu_ace_atat_gat_168: acdc> @example.sql

PL/SQL procedure successfully completed.

Execute via 4.9.1:
╰> /opt/liquibase/liquibase --changelog-file example.sql.yml update
Starting Liquibase at 15:18:50 (version 4.9.1 #1978 built at 2022-03-28 19:39+0000)
Liquibase Version: 4.9.1
Liquibase Community 4.9.1 by Liquibase
[2022-07-05 15:19:01] INFO [liquibase.lockservice] Successfully acquired change log lock
[2022-07-05 15:19:31] INFO [liquibase.changelog] Reading from ACDC.DATABASECHANGELOG
Running Changeset: example.sql.yml::202204061610388755::trent
[2022-07-05 15:19:39] INFO [liquibase.changelog] SQL in file example.sql executed
[2022-07-05 15:19:40] INFO [liquibase.changelog] ChangeSet example.sql.yml::202204061610388755::trent ran successfully in 775ms
[2022-07-05 15:19:41] INFO [liquibase.lockservice] Successfully released change log lock
Liquibase command 'update' was executed successfully.

..
Furthermore, in my example code.
If I modfy this line:
    '    return cy.get("iframe", { log: false } )'

to this:
    '    return cy.get("iframe")'

(that is, remove the bit { log: false }
it is also working on 4.12.0
╰> cat example.sql
declare
  l_file_clob clob;
  l_file_blob blob;
begin
  l_file_clob := apex_string.join_clob(apex_t_varchar2(
    '    cy.log(`getDialogBody for className="${dialogClassName}"`);',
    '    return cy.get("iframe")'
  ));
end;
> /opt/liquibase-4.12/liquibase --changelog-file example.sql.yml update
Starting Liquibase at 15:22:40 (version 4.12.0 #3073 built at 2022-06-17 05:59+0000)
Liquibase Version: 4.12.0
Liquibase Community 4.12.0 by Liquibase
[2022-07-05 15:22:51] INFO [liquibase.lockservice] Successfully acquired change log lock
[2022-07-05 15:23:21] INFO [liquibase.changelog] Reading from ACDC.DATABASECHANGELOG
Running Changeset: example.sql.yml::202204061610388755::trent
[2022-07-05 15:23:30] INFO [liquibase.changelog] SQL in file example.sql executed
[2022-07-05 15:23:30] INFO [liquibase.changelog] ChangeSet example.sql.yml::202204061610388755::trent ran successfully in 745ms
[2022-07-05 15:23:32] INFO [liquibase.lockservice] Successfully released change log lock
Liquibase command 'update' was executed successfully.

This should be fixed with #2984 which is in the release that is about to come out! I will let you know when it's available. Thanks.

@tschf v4.13 is out now. Closing this now, please let us know if you continue to face any issues. Thanks!!

Excellent - thank you for the update. I've just tested the new version it working well now :)


Build Error at yarn build

i am getting this error when trying to build the docker image.
=> [ 6/13] RUN yarn install                                                                                34.9s
=> [ 7/13] RUN npm install -g<EMAIL_ADDRESS>                                                                                27.0s
=> ERROR [ 8/13] RUN yarn build                                                                                7.4s

[ 8/13] RUN yarn build:
0.348 yarn run v1.22.19
0.370 $ lerna run build --stream
1.097 lerna notice cli v7.3.0
1.175 lerna info versioning independent
1.175 lerna info Executing command in 9 packages: "yarn run build"
1.337 @radicalimaging/static-cs-lite: $ echo "No build yet" && exit 0
1.347 @radicalimaging/static-cs-lite: No build yet
1.347 @radicalimaging/static-wado-util: $ echo "No build yet" && exit 0
1.357 @radicalimaging/static-wado-util: No build yet
1.537 @radicalimaging/static-wado-plugins: $ echo "No build yet" && exit 0
1.540 @radicalimaging/static-wado-creator: $ echo "No build yet" && exit 0
1.546 @radicalimaging/static-wado-plugins: No build yet
1.548 @radicalimaging/static-wado-creator: No build yet
1.725 @radicalimaging/s3-deploy: $ yarn copyFiles && npx tsc
1.729 @radicalimaging/static-wado-webserver: $ echo "No build yet" && exit 0
1.732 @radicalimaging/static-wado-scp: $ echo "No build yet" && exit 0
1.739 @radicalimaging/static-wado-webserver: No build yet
1.743 @radicalimaging/static-wado-scp: No build yet
1.893 @radicalimaging/s3-deploy: $ cp -R lib build
7.306 @radicalimaging/s3-deploy: lib/static-site.ts(29,11): error TS6133: 'oac' is declared but its value is never read.
7.368 @radicalimaging/s3-deploy: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
7.368 @radicalimaging/s3-deploy: error Command failed with exit code 2.
7.377 lerna ERR! yarn run build exited 2 in '@radicalimaging/s3-deploy'
7.393 error Command failed with exit code 2.
7.393 info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Dockerfile:10
8 |     RUN npm install -g<EMAIL_ADDRESS>9 |     # RUN npm install typescript
10 | >>> RUN yarn build
11 |     RUN yarn link:exec
12 |     RUN mkdir /dicomweb
ERROR: failed to solve: process "/bin/sh -c yarn build" did not complete successfully: exit code: 2
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
i see the "oac" instance of cloud front in s3-deploy/lib/static-site.ts is not used anywhere, so i tried to use that variable in console.log() but still facing the issue.
can you guys please help me in this.
Thank you

@wayfarer3130 same here.


print($$ls$$) hangs

$ cat foo.ng
#!/usr/bin/env ng

print($$ls$$)

Run on my Google workstation (Ubuntu Linux).

Ah, is this a more general issue that you can't use "$$" expressions in this way?

There is a bug in the error elision for shell commands:
ng> print($$ ls $$)
ng: expression returns 2 values instead of 1

Thanks for the report, I'll fix it.
I'm curious about your issue heading, "hangs". I tried the same script, and I see the error above.

I should point out though, even when I fix the bug that this probably doesn't do what you want. The print function is variadic. A shell expression returns the tuple (string, error). The error will not be elided when passed to a variadic function, so you will see:
        "result of ls" nil

printed out, where nil is the value of the error.
If you just want to print ls, the easy way is: $$ ls $$
You can also put the result in a variable and have the error elided: str := $$ ls $$; print(str)

I don't see that error, and sending SIGINT doesn't terminate the script nor the interpreter.
But I see your error if I change $$ls$$ to $$ ls $$. Some problem with the tokenizer?

Yes that's it, thanks. I split out the print($$ ls $$) problem into #55 and will use this bug for the busted tokenizer.

Ah, there is an old TODO for this exact case: https://github.com/neugram/ng/blob/master/parser/scanner.go#L332


makes the Docker build collect static files

needed to run Django admin properly

@SteveMarshall could you pls take a look?

Do you mean mtp_api/assets/.gitignore, rather than .gitkeep? Using .gitignore feels like it obscures your intent, and could look accidental… oh, or are you using it to say “keep this directory, but ignore it”?
I might argue that we should add mtp_api/assets to the global .gitignore and make sure commands don't fail if the directory doesn't  exist: that seems somewhat more intentional and traceable to me. I'm also not sure how many people would think to look anywhere but the root .gitignore if a directory seems not to be in git?

well .gitkeep isn't a real git feature so i've always preferred to use .gitignore as that can then have sensible stuff put into it if needed. i can swap it if you want?


Bug: Can't Use IDispatch with Interface

Which crate is this about?
windows
Crate version
0.43.0
Summary
I'm trying to call a component provided by a vendor which is .net component with COM visibility. In the IDL it is show as inheriting (or whatever the correct term is) from IDispatch i.e.
Interface VENDORINTERFACE: IDispatch
I'm using the interface macro to create the interface locally but:

If I use IUnknown as the base I get a lot of crashes. I guess this makes sense as the VTable will be off?
If I try to use IDispatch the system won't compile with the error "cannot find trait IDispatch_Impl in this scope"

I'm using the full COM namespace and have the following features enabled:
windows = { version = "0.43", features = ["interface", "Win32_System_Com", "Win32_Foundation", "Win32_System_Ole"]}
Toolchain version/configuration
Default host: x86_64-pc-windows-msvc
rustup home:  C:\Users\JamesMcNally.rustup
installed toolchains
stable-i686-pc-windows-msvc
stable-x86_64-pc-windows-msvc (default)
nightly-i686-pc-windows-msvc
nightly-x86_64-pc-windows-msvc
installed targets for active toolchain
i686-pc-windows-msvc
x86_64-pc-windows-msvc
active toolchain
stable-x86_64-pc-windows-msvc (default)
rustc 1.65.0 (897e37553 2022-11-02)
Reproducible example
use windows::core::{IUnknown, IUnknown_Vtbl, BSTR, GUID, HRESULT};
use windows::Win32::System::Com::*;

#[windows::core::interface("DA2B5D36-F15C-4484-9496-B0415CFE0C59")]
unsafe trait DataReader: IDispatch {
    fn OpenDataFile(&self, path: *const BSTR, flag: *mut VARIANT) -> HRESULT;
    fn CloseDataFile(&self) -> HRESULT;

}

Crate manifest
windows = { version = "0.43", features = ["interface", "Win32_System_Com", "Win32_Foundation", "Win32_System_Ole"]

Expected behavior
I expect to be able to compile and run a program that accesses the interface
Actual behavior
It fails to compile with : IDispatch or crashes with access violations with : IUnknown
Additional comments
No response

Hey, did you remember to include all necessary features? It looks like IDispatch requires:

Win32_Foundation
Win32_System_Com
Win32_System_Ole

Oh, apologies I see you included those already in your repro. I think you're just missing implement. The distinction between interface and implement is a little confusing. I'll try get that cleaned up.

Perfect, thats made my day! Added the implement feature and now it compiles and runs.
Now to work out the errors from inside the library!


add auto melee

it will be very helpful for demoknight and market gardening

You mean a feature that automatically switches to melee on close range?

You mean a feature that automatically switches to melee on close range? Or a melee aimbot?

I think he meant a separate triggerbot for melee

You mean a feature that automatically switches to melee on close range? Or a melee aimbot?

i think whats he means is if enemy is hittable with melee, and melee is currently being held, then hit them :)

You mean a feature that automatically switches to melee on close range?


Make connection optional for host vars

When ansible_connection cannot be resolved at the time this plugin is
run it would set ansible_connection to "ssh". This can lead to undesired
behavior. The plugin should not set ansible_connection (or ansible_port)
unless the value comes from Vault.

pls see #26


Does sonic-cpp already support SAX API or have any plans to support it?

We have supported Parse with SAX handler now, such as https://github.com/bytedance/sonic-cpp/blob/master/include/sonic/dom/parser.h#L66 and https://github.com/bytedance/sonic-cpp/blob/master/include/sonic/dom/handler.h#L32


Can't connect to https://openalyx.internationalbrainlab.org.

Hello, thank you very much for some open source data. At present, I have encountered some problems in connection，Unable to connect to the public server, showing Service Unavailable

Hi @ZhangYH321 thank you for flagging this issue. We are doing some maintenance on the public server that took a little longer than expected. It should be back up in a few hours from now.
Thank you for your patience!


Build time .tal/.constraints output locations

Currently, the path specified with --with-tal-directory controls:

the location at which the TAL files will be written
the location at which the .constriants files will be written
the default runtime search directory for TALs and constraints

It would useful to be able to control these aspects separately to make packaging a little easier.
For example, I would like to be able to set the runtime search directory to /etc/rpki/tals, but without actually writing anything there.

For example, I would like to be able to set the runtime search directory to /etc/rpki/tals, but without actually writing anything there.

What's wrong with rpki-client -d ?

To be a little less terse: the semantics of these three things aren't
really independent of each other in rpki-client's logic, so it makes
not all that much sense to split them up.
Your example sounds more like a --no-default-tal-files option but maybe
you have more use cases than that?

A little more context, now that I am less pressed for time...!

To be a little less terse: the semantics of these three things aren't really independent of each other in rpki-client's logic, so it makes not all that much sense to split them up.

Yup, I get that the options I'm asking for allow one to construct an installation layout that won't work out of the box!

Your example sounds more like a --no-default-tal-files option but maybe you have more use cases than that?

I'm currently packaging rpki-client for Nix/NixOS.
I'll provide the TALs in a separate package, so that they can be shared as dependencies of other RP packages (similar to how Debian does this).
Nix builds happen in a sandbox, in which /etc isn't writable, so unlike Debian I can't just write them out in the build root and then prune them afterwards.
--no-default-tal-files would work for this part.
The .constraints files, on the other hand, are an rpki-client specific thing, so providing them as a separate package doesn't make sense. Instead, I'd like to ship these in $PREFIX/share/rpki-client/constraints so that they're available to symlink/copy into place post-installation.
Ideally, I'd like to be able to express:

runtime TAL search path to be /etc/rpki/tals/
inhibit writing the TALs, and
write the constraints to $PREFIX/share/rpki-client/constraints

I think you are trying to make us add complexity at the wrong level.
The constraints files are an integral part of rpki-client, they should work out of the box in any installation, and they should be installed into the same directory as the TALs. So, no, they should not be installed elsewhere for symlinking/copy post-installation and we don't want to add a config knob for that. If you don't want to use them yourself, that is your decision and your problem to handle. I believe as a packager you should not break that for all nix users.
As I said, I'm willing to entertain a --no-default-tal-files option, but I'm  not entirely sold on having multiple RP programs share the massive amount of disk space the TAL files take up. Again, this sounds like a downstream decision that should be solved downstream.

Nix builds happen in a sandbox, in which /etc isn't writable, so unlike Debian I can't just write them out in the build root and then prune them afterwards.

I don't really understand what this means, but it sure sounds like a self-inflicted problem by an opinionated packaging tool at should be solved by its developers or users.

My hope is that one day more RP implementations gain support for the constraints syntax specified in draft-snijders-constraining-rpki-trust-anchors. An argument could be made that - while at present moment - rpki-client is the only implementation that can make use of the *.constraints files, they are not intended to be rpki-client-specific. Wouldn't this nix package be simplified if both *.tal and *.constraints end up in /etc/rpki/tals/ ?


CI tests are failing - bis

E: Failed to fetch http://azure.archive.ubuntu.com/ubuntu/pool/main/c/curl/libcurl4-gnutls-dev_7.68.0-1ubuntu2.13_amd64.deb  404  Not Found [IP: <IP_ADDRESS> 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Added apt-get update - fixed


Install of mercurial aborts with assertion failed (size_ < capacity_) in attr-set.hh

Describe the bug
Running nix-env --install mercurial on current Mac (M1 running x86 binaries) fails with
$ nix-env --install mercurial
warning: there are multiple derivations named 'mercurial-5.6'; using the first one
installing 'mercurial-5.6'
Assertion failed: (size_ < capacity_), function push_back, file src/libexpr/attr-set.hh, line 54.
Abort trap: 6

To Reproduce
Steps to reproduce the behavior:

nix-env --install mercurial

Additional context
Several bugs reference this error message (https://github.com/NixOS/nix/issues/3140, https://github.com/NixOS/nixpkgs/issues/72034).  It appears that bug was fixed in Nix 2.3.4.  I am running 2.3.10 and still seeing the same error message.
Notify maintainers
@edolstra
Metadata
$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-darwin"`
 - host os: `Darwin 20.3.0, macOS 10.16`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.3.10`
 - channels(archit): `"nixpkgs-21.03pre268211.8e364d26848"`
 - nixpkgs: `/Users/archit/.nix-defexpr/channels/nixpkgs`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute: mercurial
# a list of nixos modules affected by the problem
module:

Switching to nixpkgs-20.09 solves the problem.
$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-darwin"`
 - host os: `Darwin 20.3.0, macOS 10.16`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.3.10`
 - channels(archit): `"nixpkgs-20.09pre245857.41fe9fd6277, nixpkgs-20.09-darwin-20.09-darwin"`
 - nixpkgs: `/Users/archit/.nix-defexpr/channels/nixpkgs`

I also observed this crash on my non-M1 macOS machine and on Linux when installing mercurial. Upgrading Nix didn't fix the crash, but switching to nixpkgs-20.09 did fix the crash.

Similar problem here, when trying to install profanity.
❯ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.10.15-200.fc33.x86_64, Fedora, 33 (KDE Plasma)`
 - multi-user?: `no`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.10`
 - channels(rudowicz): `"nixpkgs-21.05pre271734.aed173ff970"`
 - nixpkgs: `/home/rudowicz/.nix-defexpr/channels/nixpkgs`

❯ nix-env -i profanity
installing 'profanity-0.10.0'
nix-env: src/libexpr/attr-set.hh:54: void nix::Bindings::push_back(const nix::Attr&): Assertion `size_ < capacity_' failed.
[1]    23341 IOT instruction (core dumped)  nix-env -i profanity

In my case the problem is gone by switching back to the nixos-20.09 channel.

As a workaround instead of switching away from unstable, you can do this:
$ cat ~/.config/nixpkgs/config.nix
{
  packageOverrides = pkgs: with pkgs; {
      mercurialHack = pkgs.buildEnv {
        name = "mercurial-workaround";
        paths = [ mercurial ];
      };
    };
}

Then nix-env -iA nixpkgs.mercurialHack instead of nixpkgs.mercurial.


Add support for batch operations

Closed by https://github.com/Mapepire-IBMi/mapepire-js/pull/30 and https://github.com/Mapepire-IBMi/mapepire-server/pull/47


feat(demo): use links instead of buttons

Description
Closes #149
Closes #150
This change refactors all the content buttons of the demo application into links enabling sharing and further navigation options.
Changes made

Created a ContentLinkComponent that implements a link within the application with the look of the previous buttons but replaces them for links.
Refactored all buttons on the "Examples," "Search," and "Lists" pages of the demo application to use the newly created component.
Corrected a regression introduced in the application's router regarding the base url.

As discussed the intention was to style the slot as a "container" element. We've finally decided on using name as suggested here and introduced the styling through the pseudo element ::slotted as such :
::slotted([slot="description"]) {
  // style the element injected in the slot
}

This allows us to preserve a default style in the web component itself.


Unsound assumptions for static initializers

The current translation calls all static initializers once at the beginning of Main in an arbitrary order. Technically this is unsound because static initializers may assume a certain execution order that is enforced by the code. However, since this is terrible style and we haven't encountered it, I'm not going to work on that any time soon.
Technically, this should be easy to fix. We could use an inter-procedural graph like the one in soottocfg.cfg.util.InterProceduralPullPushOrdering to figure out where the first uses of a static member (field or method) of a class are, and place the static initializer call there. Note that there might be multiple locations in different branches.
Anyway, we should mention somewhere that we don't promise soundness for this case.

merge with #89


QUESTION: is there any way to see your content history?

First of all, thanks for a very simple and useful extension. I really like it.
When I set up markdown-new-tab (MNT) on a new browser install recently, I somehow wound up with the default content. That content then propagated to my other laptops, and now my content is effectively gone. I use MNT to aggregate my to-do lists from Jira, Service Now, etc., so I can recreate the work-related bits, but I've flat-out lost the home-related items.
Is there anywhere I can look to find what my content used to be at a specific point in the past? If not, what do you think is the best thing I can do to avoid this happening in the future?

I have rebuilt most of my content and set up my own backups.


AVM-1 No Gas Gharges for Failed Transactions

AVM-1 No Gas Gharges for Failed Transactions
Auditor: Movebit
Code: Aptos Core
Severity: Critical
Discovery Methods: Manual Review
Status: Pending
Code Location:
aptos-move/aptos-vm/src/aptos_vm.rs#1654
Descriptions:
Pre-processing checks are performed on transactions as they enter the mempool：

But the SEQUENCE_NUMBER_TOO_NEW error for transactions with sequence_number
greater than the current account.sequence_number is covered in the function. This is as
expected (because future transactions are also going into the pool pending.) But the too_new
error for transactions with sequence_number greater than the current
account.sequence_number is covered in the function. This is as expected (since future
transactions are also going into the transaction pool pending：

At this point the transaction goes to the mempool and is written to the DA. After that it will
read the transaction from DA and execute it when the code is as follows:

At this point, the transaction is still checked for the same things that are checked during
preprocessing.

In this case, the sequence_number is higher than the current sequence_number, resulting in
an error. However, the handling fee is deducted after this check is performed, so no handling
fee is deducted for the transaction. This issue can lead to DA of transactions, mempool
being dosed at 0 cost.
Suggestion:
It is suggested to refer to the design idea of aptos to do the pending processing for the
transaction whose sequence_number is larger than the current sequence_number.

We looked at the logic of the code fix in https://github.com/movementlabsxyz/movement/pull/542, and it was fixed for the same sequence_number too new, but it could still be attacked in the same way as the previous attack for a different sequence_number too new transaction.

@msjyryxdzzj What is your proposed attack? You cannot duplicate sequence numbers will not leave the mempool to the same node under #542?
This also became PR #722 (as it was ultimately signed). See the tests added therein for whether the issue is addressed.

Attacker sends a transaction with seq_number greater than the current seq_number
For example, if the current seq_number is 10, the attacker sends a transaction with a seq_number of 11,12,13,14... different seq_numbers to bypass the repair check.

I think the following issues still exist in the latest PR:

An attacker sends transactions with sequence numbers 1, 3, and 8.
Transaction 1 will execute correctly, while transactions 3 and 8 will fail without incurring any gas fees.
Since transactions 3 and 8 have already been packaged and stored in Celestia, they will occupy some storage costs.
The attacker can save invalid transactions in Celestia at no cost.

I have drawn a schematic diagram as follows:

@poetyellow yes, we are accepting that some transactions can enter out to the sequence number too new tolerance. When that tolerance is low, this prevents someone from running a particularly effective DOS. Your amortized cost for these transactions is $\frac{\text{Gas Fee}}{\text{Tolerance}}$. When tolerance is low, I would argue this is sufficiently sybil resistant.
Changing the gas charges requires modifications to Aptos Core execution ordering and fee statement processing which we did not want to introduce at the last. See #665 .

Got it


Create stmc.txt

@devinjokeefe Pull request merged. Please notice that free educational license for JetBrains tools is for high and higher schools students, i.e. those who are over 13 of age. Thank you!


[BOT PR] to update dependencies of istio

This PR will be merged automatically once checks are successful.
none

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: istio-testing
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: geeknoid
If they are not already assigned, you can assign the PR to them by writing /assign @geeknoid in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@istio-testing: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
11e6988f2f289de427c3f42ec3a825c684266fa0
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@istio-testing: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
11e6988f2f289de427c3f42ec3a825c684266fa0
link
/test istio-unit-tests

prow/e2e-dashboard.sh
11e6988f2f289de427c3f42ec3a825c684266fa0
link
/test e2e-dashboard

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


time/space efficiency (icon database)

Many of the icons have similar background but with a number/label on it. We can save flash (and RAM) by generating images on the fly from combinations of static images.

we'll save flash but not ram?

We can save RAM because instead of precomputing every image and storing it in the TID -> Image map. we can have a function that renders the image at a given offset in another image.

may slow things down too much though...


#4458 (corejs version decision) is probably a breaking change

Describe the bug
Before the #4458 has merged, we usually specify corejs version with only the major version:
corejs: 3 // it will take the latest version which the user installed, for example: 3.22.5

However, we need to specify the exact version of corejs now after this commit:
corejs: 3.22.5

And when we specify the version with only the major version, it seems that only takes the features in 3.0.0:
corejs: 3 // → 3.0.0

As the official guide had used corejs: 3 in their example before this PR, without saying that is a discouraged pattern, I think it is a breaking change.
Input code
No response
Config
No response
Playground link
No response
Expected behavior

corejs: 3 should take the latest version of 3.x.x.

Actual behavior

corejs: 3 seems takes 3.0.0.

Version
1.2.181
Additional context
No response

So basically, #1606

Yes,  this is actually the expected behavior. But it should be documented.

Fixed by https://github.com/swc-project/website/pull/163
cc @pan93412 @Austaras, @zloirock


Avoid tab completion crash when directory doesn't exist

Not sure if there was any more hidden complexity to this issue. The only place I see where readdir is causing a crash is in evalfile. I just capture this one exception and throw it out.


Long running task progress/real time output

this is a nice feature to start with, but we need to advise it only works for no-output tasks. If the closure() has some kind of output, this would get messy.
I would like to try exploring something like:

We have a pipe for capturing the task actual output.
While executing a task, we have something like:

Running "task"...
-------------------------------
(original task output... keeps writing here)
-------------------------------
... (animated char, something like an ASCII spinner with `-\|/-` replacing sequence, or something for that matter.

So the last output line is ALWAYS our "progress/running" spinner, while above it we keep displaying any eventual output the task could have.
Not sure how to architecture that, we may discuss further, maybe for a future iteration?
Originally posted by @fabriciojs in https://github.com/kool-dev/kool/pull/170#discussion_r508751614

Suggestion: https://github.com/briandowns/spinner

@danielsuguimoto couple comments for us to do a final round on the work on this:

At line cmd/kool_task.go:95 we may want to get that error to handle somewhere whether it is indeed EOF or something else we should better handle/report.

Yet at cmd/kool_task.go:95 we need to make sure CPU is not gonna be exhausted, that is, bufReader.ReadString will "wait" for us in non-resource-hungry way.

Now at cmd/kool_task.go:118, I am not sure the > prefix is best, but I want to see how it looks in practice.

At cmd/kool_task.go:60 we are ignoring/never printing err itself - is that intentional?

Branch output-control has some WIP related to this.

This has been working great for self-update.


Missing entry in Grafana dashboard on Istio 1.11

Describe the bug
Noticing an odd entry in the Grafana dashboard as shown in the screenshot for a given workload.

Expected behavior
The corresponding service for the workload
Steps to reproduce the bug
NA
Version
release-1.1-20181101-09-15
Installation
Helm 2.11.0
Environment
GKE, 1.11.2
If you require more details please let me know. Theres some sensitive stuff in the cluster so a bit hesitant to extract a dump.

A few questions:

what service is associated with that workload?
what happens when that service receives traffic?
what does the instance config look like for requestcount in your install?

@douglas-reid

To answer your first two questions its a webhook service that publishes an event to kafka.
Traffic flows from istio ingress -> yodlee webhook service
How do you go about checking the requestcount ? Some guidance is appreciated.
Also just for my lack of understanding how is the service different from the workload ? i.e. the difference between the two columns


Prepare release for Advisor, AgFoodPlatform, AnalysisServicesApplicai…

…ontInsights, ArcScVmtScVmm, Attestation, Blueprint
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
API changes are not detected in this pull request.


Develop SAP SAPUI5 Application for SAP Cloud Platform on Cloud Foundry

Tutorial URL: https://developers.sap.com/tutorials/cp-cf-fioriapps-create.html
Please specify the step you are referring to
Performing Step 7, the deployment is failing with below error:
Processing service "mta_FioriDemo_html5_repo_host"...Creating service "mta_FioriDemo_html5_repo_host" from MTA resource "mta_FioriDemo_html5_repo_host"...Processing service "dest_mta_FioriDemo"...Processing service "mta_FioriDemo_html5_repo_runtime"...Processing service "uaa_mta_FioriDemo"...Setting service "uaa_mta_FioriDemo" parameters from "xs-security.json"Updating service "uaa_mta_FioriDemo"...Creating application "mta_FioriDemo_appRouter" from MTA module "mta_FioriDemo_appRouter"...Uploading application "mta_FioriDemo_appRouter"...To download logs of the process, use the multi-target application plug-in for the Cloud Foundry CLI command "cf dmol -i d8e66ec6-4f11-11ea-be40-eeee0a8a509d
mta-op-d8e66ec6-4f11-11ea-be40-eeee0a8a509d.zip
" directly in your Cloud Foundry space.For more information see https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/e93b231895b64cbc9221a62953563a6f.html.Job failed.
11:10:49 AM (DeploymentToCF) Deployment of the "mta_FioriDemo" project failed.(Response state is FAILED)

If deployment failed, please open a ticket on component CA_WDE.

Thank you for your feedback. The issue seems to be resolved, so I am closing the issue.
If you still have questions, feel free to reopen the issue.


dataFormat with div no longer allows for selection

In version 2.9.2, due to the following change:
https://github.com/AllenFang/react-bootstrap-table/commit/eff49cfd90ba7ebbd343c2da921a041c5e310853
my dataFormat which includes a div no longer generates select row events.
My dataFormat looks something like this:
var nameFormat = function(cell, row) {
      return (

{cell}

{row.addlText}

);
    };

Thanks!
Will

@wgorman, ok, I'll check this out. thanks your feedback 👍

BTW, could you please show me the configuration for selectRow and did you enable cedd editing?

Here is my selectRow config.  I'm not using cell editing for this table.  Note that this works fine in version 2.9.1.
{
      mode: "radio",
      clickToSelect: true,
      bgColor: "#EAF3FF",
      onSelect: rowSelect,
      hideSelectColumn: true,
      selected: this.getSelectedKeys()
    }

@wgorman, thanks 👍 I'll fix it as soon as possible

Fixed on v2.11.0, check it out and let me know if the problem still remain.


Add files affected by a commit to gitea API -- similar to github

Hi,
The idea is to have ou cis tool track  files affected from polled changes at compile time for our gitea projects - as currently possible with github projects.
The current API returns a whole commit tree instead of a simple list of affected files. We'd like to implement this list, just like in github.
Thanks,
Laurent Cahour

Please make fmt to fix lint problems

Also you need to update swagger definition

For any reviewer looking for GH docs, they can be found here: https://docs.github.com/en/rest/reference/repos#get-a-commit

But if I understand correctly github returns list of objects not strings

Hi there, I've psuhed a new iteration:

Fix missing swagger template (forgot to add in the first place)
Did go fmt the pushed files.
Gone through the github doc and now use a response the resembles github.

I just a list of filenames for now. We can always add the remaining stuff later.
adds the following to my test response : "files":[{"filename":"README.md"}]

Thanks for your time.
Laurent

Still not good for the lint sorry. Let me fix that.

Hi there,
To be honest, I'm not sure what's the issue with the build-backend-no-gcc failure.
gitea_no_gcc builds just fine from this branch.
Coudl anyone advise on what to do please?
Thanks,
Laurent

Codecov Report

Merging #12413 into master will increase coverage by 0.17%.
The diff coverage is 92.85%.

@@            Coverage Diff             @@
##           master   #12413      +/-   ##
==========================================
+ Coverage   42.93%   43.10%   +0.17%
==========================================
  Files         655      655
  Lines       72329    72357      +28
==========================================
+ Hits        31054    31192     +138
+ Misses      36253    36114     -139
- Partials     5022     5051      +29

Impacted Files
Coverage Δ

modules/templates/helper.go
47.26% <ø> (ø)

routers/api/v1/repo/commits.go
72.12% <80.00%> (+0.50%)
:arrow_up:

modules/base/tool.go
64.63% <100.00%> (+2.79%)
:arrow_up:

modules/util/timer.go
42.85% <0.00%> (-42.86%)
:arrow_down:

models/unit.go
46.57% <0.00%> (-2.74%)
:arrow_down:

modules/log/event.go
57.54% <0.00%> (-1.89%)
:arrow_down:

services/pull/pull.go
41.27% <0.00%> (+0.49%)
:arrow_up:

models/gpg_key.go
55.40% <0.00%> (+0.58%)
:arrow_up:

models/pull.go
55.17% <0.00%> (+0.62%)
:arrow_up:

services/mailer/mail.go
55.91% <0.00%> (+1.07%)
:arrow_up:

... and 8 more

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 a9decf0...8d5a500. Read the comment docs.

Hi there,
Can your guys please take a look and tell me if this is acceptable or not?
Thanks a lot for your time,
Laurent

now it will not colide and can go in as is :)
only one thing: we need tests to make sure it wont break in future :)
thanks for the work :+1:

Thanks a lot for the quick response!

@jasugun do you need help writting tests?

@jasugun can you resolve the conflict?

@jasugun can you resolve the conflict?

... or allow maintainers to update the PR to do it for you

... or allow maintainers to update the PR to do it for you

... or allow maintainers to update the PR to do it for you

not possible due to forked to an org

followup: #14579


License is missing

Please add an appropriate license, e.g. Apache. For example:
https://github.com/ImmobilienScout24/alppaca#license

Fixed


Changing "mindserver_port" doesn't do anything

Changing "mindserver_port" doesn't do anything, it always stays on port 8080 wich is in use on my system

People are overusing the issues on this project, so actual issues like this aren't easy to find unfortunately.
I have made a pull request for this, waiting for it to be accepted.


Add make command for sidebar

Adds the make command as a build step before checking/deploying the site.
Also automatically renames 00.md special pages to README to avoid having the number in the URL.

Demo is at https://kpt-dev-ee2a9--sidebar-generation-f9wtc6gd.web.app/book/

I'm getting this:
» make site-run-server
make site-generate
go run ./scripts/generate_site_sidebar > site/sidebar.md
(cd site && find . -iname "00.md" -execdir mv {} README.md \; && sed -i s/00.md//g sidebar.md)
sed: 1: "sidebar.md": unterminated substitute pattern
make[1]: *** [site-generate] Error 1
make: *** [site-run-server] Error 2

(cd site && find . -iname "00.md" -execdir mv {} README.md ; && sed -i s/00.md//g sidebar.md)

Addressed in https://github.com/GoogleContainerTools/kpt/pull/1716


chore: add editorconfig to the project

This unifies all configuration across different editors. The configuration comes from https://github.com/webpack/webpack/blob/main/.editorconfig
Summary

Related issue (if exists)

Types of changes

[ ] Docs change / Dependency upgrade
[ ] Bug fix
[ ] New feature / Improvement
[x] Refactoring
[ ] Breaking change

Checklist

[x] I have added changeset via pnpm run changeset. (not needed because it impacts no package.)
[x] I have added tests to cover my changes.

what's the relationship between prettier and editorconfig? I thought prettier is enought ?


Change mirrorlist links to raw.github as http://mirrorlist.repoforge.…

Description
[Describe what this change achieves]
Issues Resolved
[List any existing issues this PR resolves]
Check List

[x] All tests pass. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/TESTING.MD
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable
[ ] The CLA has been signed. See https://github.com/chef-cookbooks/community_cookbook_documentation/blob/master/CONTRIBUTING.MD

…org/ is down.

Hi. I am an automated pull request bot named Curry. There are commits in this pull request whose authors are not yet authorized to contribute to Chef Software, Inc. projects or are using a non-GitHub verified email address. To become authorized to contribute, you will need to sign the Contributor License Agreement (CLA) as an individual or on behalf of your company. You can read more on Chef's blog.
Non-GitHub Verified Committers
There are 1 commit author(s) whose commits are authored by a non-GitHub verified email address. Chef will have to manually verify that they are authorized to contribute.
Please sign the CLA here.

Any chance you can change the URLs over to https://github.com/repoforge/mirrorlist. I realize it's actually a fork, but that gives it a bit of credibility.

@tas50 hmm actually that is the reason why the original mirrorlist doesn't work,
generated github pages page is linked to this fork, and some autodeploy script removed all mirros.:
https://github.com/repoforge/mirrorlist/commit/6d8c3454c39cf353b90422a6e5f76d97ae22775e

Created PR https://github.com/repoforge/mirrorlist/pull/2

repoforge mirrorlist is fixed, no need to update urls.


Backport "HBASE-28917 ColumnFamilyMismatchException mixes IA public and private" to branch-3

… (#6369)

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 44s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+0 :ok:
detsecrets
0m  0s

detect-secrets was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

+1 :green_heart:
hbaseanti
0m  0s

Patch does not have any anti-patterns.

_ branch-3 Compile Tests _

+1 :green_heart:
mvninstall
3m 11s

branch-3 passed

+1 :green_heart:
compile
0m 37s

branch-3 passed

+1 :green_heart:
checkstyle
0m 12s

branch-3 passed

+1 :green_heart:
spotbugs
0m 39s

branch-3 passed

+1 :green_heart:
spotless
0m 55s

branch has no errors when running spotless:check.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 30s

the patch passed

+1 :green_heart:
compile
0m 45s

the patch passed

+1 :green_heart:
javac
0m 45s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
0m 12s

the patch passed

+1 :green_heart:
spotbugs
0m 45s

the patch passed

+1 :green_heart:
hadoopcheck
12m 43s

Patch does not cause any errors with Hadoop 3.3.6 3.4.0.

+1 :green_heart:
spotless
1m  6s

patch has no errors when running spotless:check.

_ Other Tests _

+1 :green_heart:
asflicense
0m 13s

The patch does not generate ASF License warnings.

33m 34s

Subsystem
Report/Notes

Docker
ClientAPI=1.47 ServerAPI=1.47 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6410/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/6410

Optional Tests
dupname asflicense javac spotbugs checkstyle codespell detsecrets compile hadoopcheck hbaseanti spotless

uname
Linux 5b42b19bdbd2 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-3 / c36f9e2e243e79acd4bc876417ac3a2c0dfe8ab3

Default Java
Eclipse Adoptium-17.0.11+9

Max. process+thread count
80 (vs. ulimit of 30000)

modules
C: hbase-backup U: hbase-backup

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6410/1/console

versions
git=2.34.1 maven=3.9.8 spotbugs=4.7.3

Powered by
Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 43s

Docker mode activated.

-0 :warning:
yetus
0m  3s

Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --author-ignore-list --blanks-eol-ignore-file --blanks-tabs-ignore-file --quick-hadoopcheck

_ Prechecks _

_ branch-3 Compile Tests _

+1 :green_heart:
mvninstall
3m 43s

branch-3 passed

+1 :green_heart:
compile
0m 27s

branch-3 passed

+1 :green_heart:
javadoc
0m 17s

branch-3 passed

+1 :green_heart:
shadedjars
6m 38s

branch has no errors when building our shaded downstream artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 37s

the patch passed

+1 :green_heart:
compile
0m 21s

the patch passed

+1 :green_heart:
javac
0m 21s

the patch passed

+1 :green_heart:
javadoc
0m 15s

the patch passed

+1 :green_heart:
shadedjars
6m  5s

patch has no errors when building our shaded downstream artifacts.

_ Other Tests _

+1 :green_heart:
unit
11m 53s

hbase-backup in the patch passed.

35m  2s

Subsystem
Report/Notes

Docker
ClientAPI=1.47 ServerAPI=1.47 base: https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6410/1/artifact/yetus-jdk17-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/6410

Optional Tests
javac javadoc unit compile shadedjars

uname
Linux a6794059070e 5.4.0-195-generic #215-Ubuntu SMP Fri Aug 2 18:28:05 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-3 / c36f9e2e243e79acd4bc876417ac3a2c0dfe8ab3

Default Java
Eclipse Adoptium-17.0.11+9

Test Results
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6410/1/testReport/

Max. process+thread count
3704 (vs. ulimit of 30000)

modules
C: hbase-backup U: hbase-backup

Console output
https://ci-hbase.apache.org/job/HBase-PreCommit-GitHub-PR/job/PR-6410/1/console

versions
git=2.34.1 maven=3.9.8

Powered by
Apache Yetus 0.15.0 https://yetus.apache.org

This message was automatically generated.


Firestore: Improve docs for 'Query.get' / 'Collection.get'

Query.get (which underlies collection.get) could have better documentation strings. Particularly there is no mention that iteration must be completed in the max_rpc_timeout_millis as specificed when creating the firestore_client. If iteration is not completed in that time, the iteration will stop at the timeout.
This is in response to a customer question on StackOverflow:
https://stackoverflow.com/questions/52395736/loop-over-cloud-firestore-docs-ends-unexpectedly-after-20-seconds-when-iterating

#6033 was the previous report of that same SO issue here.  I wasn't aware of the timeout:  I assumed that it was a problem with non-transactional write-during-read.


Add SteemTrendingCharts to User Wallet Pages & display delegated SP

Fixes # .

https://github.com/busyorg/busy/issues/935#issuecomment-340457245
https://github.com/busyorg/busy/issues/930

Changes:

Add SteemTrendingCharts to User Wallet Pages & display delegated SP
Update order of Wallet Summary to "STEEM SP SBD"
Update Tests & Snapshots

It would be nice to see also the SP delegated. Now i can only see the SP someone delegated to me. See https://steemit.com/@fabien/transfers

@bonustrack just updated to also included:

Add Transfer Button to own wallet page: https://github.com/busyorg/busy/projects/6#card-5364055
Add tooltip to time ago for wallet transactions: https://github.com/busyorg/busy/projects/6#card-5382480
display delegated SP


fix Fuzz-checker CI configure error

Reviewed-by: Hugo Landau<EMAIL_ADDRESS>Reviewed-by: Richard Levitte<EMAIL_ADDRESS>Reviewed-by: Paul Dale<EMAIL_ADDRESS>(Merged from https://github.com/openssl/openssl/pull/19860)
Checklist

[ ] 在 https://yuque.com/tsdoc 增加或更新了必要的文档
[ ] 增加或更新了必要的测试用例
[ ] 对于重要修改，更新了CHANGES文件
[ ] 当前修改存在对已有API参数或返回值的改变
[ ] 当前修改存在对旧版本功能的兼容性改变（如网络协议或密码算法）

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Fix version reference in CHANGELOG.md

@mariux needs to approve still because he's the CODEOWNER

ping @mariux


Fix lint errors

What type of PR is this?
/kind cleanup
What does this PR do / why we need it:
Fix all lint errors that were reported by golangci-lint run
Signed-off-by: Chetan Banavikalmutt<EMAIL_ADDRESS>Have you updated the necessary documentation?

[ ] Documentation update is required by this PR.
[ ] Documentation has been updated.

How to test changes / Special notes to the reviewer:
golangci-lint run should not report any lint errors

This does not seem to only remove simple linter errors.

This does not seem to only remove simple linter errors.

@jannfis It includes all the errors reported by golangci-lint run


BUG: Pressing TAB in an unfilled field causes undocumented behaviors

I have the next snippet:
  "returns": {
    "prefix": "<returns>",
    "body": [
      "/// <returns>description.</returns>$0"
    ],
    "description"Irrelevant"
  },

Every time I press TAB, the snippet prints:
text.</example>

On the buffer, instead of exiting the snippet. There is a way to prevent this? I just want the snippet to print
/// <returns>text.</returns>

I think it is a bug, because if I actually write something before pressing TAB the issue doesn't manifest.

I guess the snippet is just expanded again and again because the text before the cursor matches itself :/
You can work around this issue by either

making sure there is no place to jump from where the text before the cursor matches some trigger
Just use different keybindings for jumping and expanding (I'm doing this one, it's working really well imo)

Either for a cmp update or a change on my personal mappings, the issue is gone.

The first workaround doesn't work on my end
The second does 👍

Yeah, 1) is pretty hard to maintain unfortunately :/
I'm going to close this, I don't think there's any other solution


add an option to disable fast path texture import, work-around for slow AMD copy (gnome/wayland)

DisplayLink screen is unusable when connected to an AMD system due to a very slow refresh rate.
Configuration:

Dock: 17e9:6008 DisplayLink Targus USB3 DV4K DOCK w PD100W
APU: AMD Ryzen 7 PRO 4750U with Radeon Graphics
4K screen connected to the Targus dock.
Debian/Bullseye/Kernel 5.10.0-6-amd64, standard amdgpu opensource driver with Gnome 3.38.4

Analysis
Slow screen refresh rate seems to be related to a very slow texture copy in the EVDI module. This can be measured using bpftrace. The output shows that all copies take around 120ms (4K screen), which explains observable slow refresh rate.
`bpftrace -e 'kprobe:evdi_painter_grabpix_ioctl { @beg = nsecs; } kretprobe:evdi_painter_grabpix_ioctl { $end = nsecs; @["frame_copy_ms"] = lhist(($end - @beg)/1000000, 1, 200, 1);}'
Attaching 2 probes...
^C
@[frame_copy_ms]:
[119, 120)             2 |@@@@                                                |
[120, 121)            21 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|
[121, 122)             9 |@@@@@@@@@@@@@@@@@@@@@@                              |
[122, 123)            14 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                  |
`
I am not sure what is the root-cause of that slow copy on AMD systems (Intel does not suffer from it). Possibly the texture is bound to the GPU domain not easily accessible by the CPU. This would be worth investigating further. This problem renders mutter's "zero-copy" optimisation https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/810 unusable on AMD systems at the moment. Mutter's strategy is to try the fast path first and if that does not work it will fall back on "primary GPU copy". The issue is that import technically succeeds, but then it is unusable.
Solution
Fail GPU texture import in EVDI and make mutter switch to its fallback scenario. Fixing this in EVDI is probably easier than in mutter. The solution means one more copy, but we have two fast copies instead of one that was dreadfully slow. This leads to much improved copy times in EVDI.
After building the modified evdi and adding  options evdi disable_texture_import=1 to /etc/modprobe/evdi.conf the following framebuffer copy times were measured (~5ms per frame):
`bpftrace -e 'kprobe:evdi_painter_grabpix_ioctl { @beg = nsecs; } kretprobe:evdi_painter_grabpix_ioctl { $end = nsecs; @["frame_copy_ms"] = lhist(($end - @beg)/1000000, 1, 200, 1);}'
@[frame_copy_ms]:
[4, 5)                 1 |                                                    |
[5, 6)               140 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|
[6, 7)                64 |@@@@@@@@@@@@@@@@@@@@@@@                             |
[7, 8)                 1 |                                                    |
[8, 9)                 4 |@                                                   |
[9, 10)                1 | `
This is just work-around, but it makes Displaylink screen(s) perform quite well on AMD systems.

hi, its unlucky for me that works only for wayland, which i am not going to use
i am, tested only for X11 on Manjaro Mate and kernel 5.12

The displaylink driver itself seems to only work with GNOME on Wayland, as evidenced by #279
I tested with GNOME Xorg, KDE Wayland and Xorg, Sway/wlroots and even weston fails to bring up the secondary screen, independent of this patch (I tested it with an unmodified build of EVDI as well just to be sure).
So, in any case, I'd say it's not that this patch only works in GNOME Wayland, rather, EVDI itself only works with mutter's implementation of wayland, and Xorg seems to be currently broken.
It might work with Budgie Wayland or other DEs/WMs that use mutter as well, but I haven't tested.

Just tested Budgie, doesn't seem to work, either, so far only GNOME Wayland and GDM have been able to bring up the secondary screen.

@pioto1225 by the way, I've been getting random crashes in GNOME (the screen flashes and the entire system locks up, filling the gnome-shell logs with this line over and over:)
amdgpu: The CS has been cancelled because the context is lost.

So far it seems to happen only when using displaylink, and at random times. Have you been getting those as well? I'd like to know if it's specific to my system or a broader issue with the AMD drivers.

I do not use other DE's, so I cannot comment. I also did not see that amdgpu error on my system.
I just want to say that I can light up DisplayLink screen on both Gnome/wayland and Gnome/X11 (on wayland only DisplayLink screen is very slow, on X11 laptop and DisplayLink screens are very slow). With patched EVDI Gnome/Wayland seems fixed, but on X11 DisplayLink screen does not light up.
Thank you for the tests @TheBITLINK . I think it should be clear now that this can be used on Gnome/Wayland only.

Gnome/X11 work-around, in case anyone is interested to try. More info: https://github.com/pioto1225/evdi/tree/amd_vmap_texture (Work around #2, use at own risk:).

Gnome/X11 work-around, in case anyone is interested to try. More info: https://github.com/pioto1225/evdi/tree/amd_vmap_texture (Work around #2, use at own risk:).

This fix has been working for me (been testing for about 1 day)
HP Envy x360
AMD Ryzen 4500u
HP Thunderbolt Dock Gen 2 (4k DisplayLink)
1x 32" 2k Monitor connected via the dock.

Before applying this patch by pioto1225, I would seemingly get no more than 10 FPS output on my external monitor.
The CPU/GPU would also be spiking like crazy.
Now everything is pretty much buttery smooth.
I will make sure to get more test cases (different monitor setups, docks etc) while at work ;)

Confirm

Gnome/X11 work-around, in case anyone is interested to try. More info: https://github.com/pioto1225/evdi/tree/amd_vmap_texture (Work around #2, use at own risk:).

i am here to just confirm that fix worked for me on Manjaro Mate (X11, 5.12)

There seems to be some issues with workaround 2: https://github.com/DisplayLink/evdi/issues/248#issuecomment-851891704
I'm getting the kernel panics with patch 2 as well, which is a shame because it's otherwise more stable than the first one (I get random GPU crashes with the first one, and the AMD reset bug makes it unusable after that).
The kernel panics happen only when the screen gets blanked in some way, (i.e when the default 10 minute timeout for GNOME is reached, when suspending or powering off the device, etc.) They don't happen all the time, but when they do, it's only when the screen is blanked, so it has some level of consistency.
I sadly can't provide more details because the kernel panic locks up the computer before it can switch to console mode to display the crash message, so I only get either frozen graphics or nothing at all (since the screens were getting blanked). The only indication I have it's a kernel panic is the caps lock indicator. I don't have a serial port on my laptop either, so I'm having trouble debugging the crashes.

Hi @TheBITLINK. Thanks for the feedback.
Patch 2 (https://github.com/pioto1225/evdi/tree/amd_vmap_texture). I hoped that people might get some mileage with it (on X11) in the absence of a proper fix. This fix is over-riding amdgpu driver behaviour and as such it is just a hack-fix. It was not intended for merging upstream. After testing it a bit more, I can confirm that I have seen crashes similar to those reported. So unfortunately this is not good for general use. I will update the branch accordingly.
Patch 1 (this MR) is meant to only work with Gnome/Wayland. This patch does not override amdgpu driver behaviour, it just forces Mutter (Gnome/Wayland compositor) to switch to alternate/legacy path (which should work). Do you get crashes with the patch 1 which you did not get otherwise on Gnome/Wayland?
BTW. The problem with slow pixel transfer from GPU to CPU on AMD is wider problem (see here for example: https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1442)

Could finally merge it. Thanks, @pioto1225 😇

Great, thanks!

@pioto1225  i have runned fix#2 for several weeks on x11 without any serious issues, may it also need to been merged?

Hi @gdbd.
I did not intend to get it upstream. Fix#2 is a hack which demonstrates where the problem is, not how to solve it. The fix lights up fast pixels on X11 but it can cause crashes too (several reported), and this  almost says that this kind of trick is illegal. I was experimenting, and shared my discovery (maybe a bit prematurely). I am glad to hear that it helped you, but it remains a wacky fix, unfortunately.

@pioto1225 Should I still try your branch? It seems it isn't in sync with this current devel branch.
Thanks for your work on this! Will test disable_texture_import=1. :)

Hi there, this has been merged, please use the devel branch. Regards. Piotr
On Sun, 1 Aug 2021, 13:47 François M., @.***> wrote:

@pioto1225 https://github.com/pioto1225 Should I still try your branch?
It seems it isn't in sync with this current devel branch.
Thanks for your work on this! Will test disable_texture_import=1. :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/DisplayLink/evdi/pull/282#issuecomment-890514897, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AHXWQPE5R5DDWNZOWSRHNU3T2U67BANCNFSM44H7NINA
.

Thank you - this has not completely resolved my issue (DisplayLinkManager still runs a reasonably high CPU rate) but it has made it 100x better!


PooledByteBuf allocated from PooledByteBufAllocator should use "smart realloc"

We should implement our own sort of realloc when the capacity is changed for PooledByteBuf instances to possible eliminate memory copies. Basically what we could do is check if we could just "grow" the used memory of PoolChunk for the buffer to the right if the spot is not already used.

I will look into it...
Also /cc @trustin as we spoke about this some time ago :)


Fix checking if checkstyle xml has already been set

Right now setting g:neomake_java_checkstyle_xml to use a custom checkstyle configuration xml does not work. It is because someone added g: also to the string that is searched for in the defined global variables by mistake.
I noticed that when I was trying to use neomake with checkstyle so I propose this simple fix.

Thanks!
I've verified that there are no other things like that using ag 'get.*g:.*g:'.


BUG: slsqp should be able to use rel_step

Without this change SLSQP would never be able to use a relative step size for numerical differentiation

Seen when I couldn't get https://github.com/scipy/scipy/pull/13143/commits/96f551fb5c99e505322b9ae5d7976f3c8a380e9e to fail.


add mysql insert on update undo log builder

What this PR does:
Which issue(s) this PR fixes:
related to issue-222

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

Codecov Report

Merging #306 (6981cd3) into master (29c7f38) will decrease coverage by 1.79%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #306      +/-   ##
==========================================
- Coverage   55.45%   53.66%   -1.80%
==========================================
  Files          87       88       +1
  Lines        4167     4306     +139
==========================================
  Hits         2311     2311
- Misses       1714     1853     +139
  Partials      142      142

Impacted Files
Coverage Δ

...mysql_insertonduplicate_update_undo_log_builder.go
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

加上单测，我来泡泡看看效果


Provide library-friendly configuration option for completed-docs rule

Feature request
Is your feature request related to a problem? Please describe.
I'm tslinting a library I'm writing for consumption in several apps at my company. The completed-docs rule seems appealing for this, since it can help ensure that I've documented all members of my public API. However, the rule configuration is not set up this way; if I say that "public methods must be documented" it will complain about undocumented public methods on internal types, for example.
Describe the solution you'd like
I'd like an option similar to what C# provides where it will complain about undocumented members which are externally visible. In TypeScript, I would want this to essentially require that anything that will appear in the .d.ts file be documented (since that's what I'm shipping). Since I use @internal to omit non-API types, this would avoid me having to write additional doc comments just to satisfy the linter.
Describe alternatives you've considered
I've read through https://palantir.github.io/tslint/rules/completed-docs/ and tried a few configurations to get the behavior I want to no avail; so I'm planning to turn off the rule except for types (which I like to doc comment anyway even if they're internal).

☠ TSLint's time has come! ☠
TSLint is no longer accepting most feature requests per #4534. See typescript-eslint.io for the new, shiny way to lint your TypeScript code with ESLint. ✨
It was a pleasure open sourcing with you all!

🤖 Beep boop! 👉  TSLint is deprecated 👈 (#4534)  and you should switch to typescript-eslint! 🤖
🔒 This issue is being locked to prevent further unnecessary discussions. Thank you! 👋


Add option to allow for empty sacct fields

This PR adds the setting key_allow_empty to the key config. With this, one can allow an empty field to be kept when parsing the sacct output. The setting is optional with a default value of false, i.e. keeping backward compatibility.
During the development of this change, the code that checks for empty values has been refactored into its own function, parse_sacct_output, and the key config from a tuple, (String, ParsableType), into a struct, KeyConfig.
Closes #304

Codecov Report

Merging #323 (1fdd4cd) into main (9cd069f) will increase coverage by 2.21%.
The diff coverage is 70.91%.

@@            Coverage Diff             @@
##             main     #323      +/-   ##
==========================================
+ Coverage   53.81%   56.02%   +2.21%
==========================================
  Files          41       41
  Lines        3148     3352     +204
==========================================
+ Hits         1694     1878     +184
- Misses       1454     1474      +20

Impacted Files
Coverage Δ

collectors/slurm/src/main.rs
0.00% <0.00%> (ø)

collectors/slurm/src/configuration.rs
27.62% <3.57%> (+0.58%)
:arrow_up:

collectors/slurm/src/sacctcaller.rs
52.54% <92.18%> (+47.80%)
:arrow_up:

... and 1 file with indirect coverage changes