Adapt plugin for Data Table API 2.0.x

fix #634
Do not mixed Jenkins and data-table css classes.
Testing done
Tested also with dark mode and it looks fine.
Proposed upgrade guidelines
N/A
Localizations
N/A
Submitter checklist

[x] The Jira / Github issue, if it exists, is well-described.
[x] The changelog entries and upgrade guidelines are appropriate for the audience affected by the change (users or developers, depending on the change) and are in the imperative mood (see examples).

The changelog generator for plugins uses the pull request title as the changelog entry.
Fill in the Proposed upgrade guidelines section only if there are breaking changes or changes that may require extra steps from users during the upgrade.

Hey @mpokornyetm, thanks so much for getting this plugin working with the new version of Data Tables. Unfortunately, those two tests are still failing when running in Plugin Compatibility Tester (PCT). I can reproduce the same failures in this repository with
diff --git a/pom.xml b/pom.xml
index b9cd6a3..e77cae1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -70,8 +70,8 @@
     <dependencies>
       <dependency>
	 <groupId>io.jenkins.tools.bom</groupId>
-	<artifactId>bom-2.387.x</artifactId>
-	<version>2543.vfb_1a_5fb_9496d</version>
+	<artifactId>bom-2.440.x</artifactId>
+	<version>2950.va_633b_f42f759</version>
	 <type>pom</type>
	 <scope>import</scope>
       </dependency>

and running:

mvn clean verify -Dtest=org.jenkins.plugins.lockableresources.LockableResourceApiTest#reserveUnreserveApi
mvn clean verify -Dtest=org.jenkins.plugins.lockableresources.LockStepTest#unlockButtonWithWaitingRuns

LockableResourceApiTest#reserveUnreserveApi trips a test assertion:
java.lang.AssertionError:

Expected: is <true>
     but: was <false>
	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:6)
	at org.jenkins.plugins.lockableresources.LockableResourceApiTest.reserveUnreserveApi(LockableResourceApiTest.java:41)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.jvnet.hudson.test.JenkinsRule$1.evaluate(JenkinsRule.java:656)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at java.base/java.lang.Thread.run(Thread.java:1583)

org.jenkins.plugins.lockableresources.LockStepTest#unlockButtonWithWaitingRuns simply hangs.
These problems persisted with the latest release of HtmlUnit (4.0.0).
Shortly before these problems occur, Rhino prints JavaScript problems with bootstrap:
Exception class=[org.htmlunit.corejs.javascript.EvaluatorException]
org.htmlunit.ScriptException: missing ( before function parameters. (http://localhost:35677/jenkins/static/f1c98be7/plugin/bootstrap5-api/js/bootstrap.min.js#6)
	at org.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:963)
	at org.htmlunit.corejs.javascript.Context.call(Context.java:581)
	at org.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:481)
	at org.htmlunit.javascript.HtmlUnitContextFactory.callSecured(HtmlUnitContextFactory.java:313)
	at org.htmlunit.javascript.JavaScriptEngine.compile(JavaScriptEngine.java:735)
	at org.htmlunit.javascript.JavaScriptEngine.compile(JavaScriptEngine.java:110)
	at org.htmlunit.html.HtmlPage.loadJavaScriptFromUrl(HtmlPage.java:1124)
	at org.htmlunit.html.HtmlPage.loadExternalJavaScriptFile(HtmlPage.java:1015)
	at org.htmlunit.html.ScriptElementSupport.executeScriptIfNeeded(ScriptElementSupport.java:187)
	at org.htmlunit.html.ScriptElementSupport$1.execute(ScriptElementSupport.java:111)
	at org.htmlunit.html.ScriptElementSupport.onAllChildrenAddedToPage(ScriptElementSupport.java:134)
	at org.htmlunit.html.HtmlScript.onAllChildrenAddedToPage(HtmlScript.java:192)
	at org.htmlunit.html.parser.neko.HtmlUnitNekoDOMBuilder.endElement(HtmlUnitNekoDOMBuilder.java:508)
	at org.htmlunit.cyberneko.xerces.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:303)
	at org.htmlunit.html.parser.neko.HtmlUnitNekoDOMBuilder.endElement(HtmlUnitNekoDOMBuilder.java:454)
	at org.htmlunit.cyberneko.HTMLTagBalancer.callEndElement(HTMLTagBalancer.java:1186)
	at org.htmlunit.cyberneko.HTMLTagBalancer.endElement(HTMLTagBalancer.java:1130)
	at org.htmlunit.cyberneko.filters.DefaultFilter.endElement(DefaultFilter.java:168)
	at org.htmlunit.cyberneko.filters.NamespaceBinder.endElement(NamespaceBinder.java:266)
	at org.htmlunit.cyberneko.HTMLScanner$ContentScanner.scanEndElement(HTMLScanner.java:3362)
	at org.htmlunit.cyberneko.HTMLScanner$ContentScanner.scan(HTMLScanner.java:2055)
	at org.htmlunit.cyberneko.HTMLScanner.scanDocument(HTMLScanner.java:847)
	at org.htmlunit.cyberneko.HTMLConfiguration.parse(HTMLConfiguration.java:336)
	at org.htmlunit.cyberneko.HTMLConfiguration.parse(HTMLConfiguration.java:294)
	at org.htmlunit.cyberneko.xerces.parsers.XMLParser.parse(XMLParser.java:70)
	at org.htmlunit.html.parser.neko.HtmlUnitNekoDOMBuilder.parse(HtmlUnitNekoDOMBuilder.java:750)
	at org.htmlunit.html.parser.neko.HtmlUnitNekoHtmlParser.parse(HtmlUnitNekoHtmlParser.java:199)
	at org.htmlunit.DefaultPageCreator.createHtmlPage(DefaultPageCreator.java:307)
	at org.htmlunit.DefaultPageCreator.createPage(DefaultPageCreator.java:226)
	at org.jvnet.hudson.test.HudsonPageCreator.createPage(HudsonPageCreator.java:53)
	at org.htmlunit.WebClient.loadWebResponseInto(WebClient.java:638)
	at org.htmlunit.WebClient.loadWebResponseInto(WebClient.java:541)
	at org.htmlunit.WebClient.getPage(WebClient.java:459)
	at org.htmlunit.WebClient.getPage(WebClient.java:366)
	at org.htmlunit.WebClient.getPage(WebClient.java:504)
	at org.htmlunit.WebClient.getPage(WebClient.java:486)
	at org.jvnet.hudson.test.JenkinsRule$WebClient.goTo(JenkinsRule.java:2722)
	at org.jvnet.hudson.test.JenkinsRule$WebClient.goTo(JenkinsRule.java:2702)
	at org.jenkins.plugins.lockableresources.TestHelpers.clickButton(TestHelpers.java:78)
	at org.jenkins.plugins.lockableresources.LockStepTest.unlockButtonWithWaitingRuns(LockStepTest.java:764)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.jvnet.hudson.test.JenkinsRule$1.evaluate(JenkinsRule.java:656)
	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:299)
	at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:293)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at java.base/java.lang.Thread.run(Thread.java:1583)

These problems persist after disabling JavaScript:
diff --git a/src/test/java/org/jenkins/plugins/lockableresources/LockStepTest.java b/src/test/java/org/jenkins/plugins/lockableresources/LockStepTest.java
index 4972e7d..13edf41 100644
--- a/src/test/java/org/jenkins/plugins/lockableresources/LockStepTest.java
+++ b/src/test/java/org/jenkins/plugins/lockableresources/LockStepTest.java
@@ -746,6 +746,7 @@ public class LockStepTest extends LockStepTestBase {
         p.setDefinition(new CpsFlowDefinition("lock('resource1') { semaphore('wait-inside') }", true));

         JenkinsRule.WebClient wc = j.createWebClient();
+        wc.getOptions().setThrowExceptionOnScriptError(false);

         WorkflowRun prevBuild = null;
         for (int i = 0; i < 3; i++) {
diff --git a/src/test/java/org/jenkins/plugins/lockableresources/LockableResourceApiTest.java b/src/test/java/org/jenkins/plugins/lockableresources/LockableResourceApiTest.java
index 3a7a126..4a70743 100644
--- a/src/test/java/org/jenkins/plugins/lockableresources/LockableResourceApiTest.java
+++ b/src/test/java/org/jenkins/plugins/lockableresources/LockableResourceApiTest.java
@@ -36,6 +36,7 @@ public class LockableResourceApiTest {
         j.jenkins.setAuthorizationStrategy(new FullControlOnceLoggedInAuthorizationStrategy());

         JenkinsRule.WebClient wc = j.createWebClient();
+        wc.getOptions().setThrowExceptionOnScriptError(false);
         wc.login("user");
         TestHelpers.clickButton(wc, "reserve");
         assertThat(LockableResourcesManager.get().fromName("a1").isReserved(), is(true));

This makes no difference.
Per the HtmlUnit maintainer in https://github.com/HtmlUnit/htmlunit/issues/498#issuecomment-1216160780:

This will not work at the moment because some deficits of the current js support. […] some js constructs used in the page code that are not supported at the moment. I have some plans to improve the support in the future.

This message was written on August 15, 2022.
I think you have a few options:

Remove use of fancy JavaScript features and continue to test with HtmlUnit.
Replace HtmlUnit tests with Selenium-based functional tests in the ATH repository (the common pattern for Selenium tests in the Jenkins project) or in this repository (similar to how Dr Hafner's plugins feature Selenium tests in specific plugin repositories)
Disable these HtmlUnit tests temporarily and hope that HtmlUnit eventually supports this fancy JavaScript in the future.
Abandon automated frontend testing permanently and rely on manual testing.

None of these options seem particularly great, but I believe we should choose a path forward one way or another.

Can you add the explicit version https://github.com/jenkinsci/data-tables-api-plugin/releases/tag/v2.0.3-1 here:
https://github.com/jenkinsci/lockable-resources-plugin/blob/67c1000692dd596babfbe1b4028e0a66cded351c/pom.xml#L89
Then we see if there are test failures.

@uhafner it provides some dependency issues see also https://github.com/jenkinsci/lockable-resources-plugin/pull/642/checks?check_run_id=24088006393

I think you are using a too old BOM that does not match your Jenkins version:
  <properties>
    <changelist>999999-SNAPSHOT</changelist>
    <jenkins.version>2.440.1</jenkins.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.jenkins.tools.bom</groupId>
        <artifactId>bom-2.387.x</artifactId>
        <version>2543.vfb_1a_5fb_9496d</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

You should use: <jenkins.version>2.426.3</jenkins.version>  or <jenkins.version>2.440.3</jenkins.version> and a matching BOM, like  <artifactId>bom-2.426.x</artifactId> or <artifactId>bom-2.440.x</artifactId>

setThrowExceptionOnScriptError

about java script. This failures are comming from other plugin, therefore I can not remoive it

Agreed; this option is tantamount to dropping your dependency on the other plugins that use advanced JavaScript.

about selenium. Never did it, I have no experience with the tool, Some example or tutorial for dummies will be great

@uhafner is probably the best person to talk about how to run this from a Jenkins plugin repository since I don't think anyone else does this. For writing tests within the ATH repository there is plenty of documentation at https://github.com/jenkinsci/acceptance-test-harness.

disable HtmlUnit tests. Disable is not good, I dont want to lose code coverage on changes. I am still wating for very long time for the update in the HtmlUnit frame.

Unfortunately, HtmlUnit is increasingly unsuitable for modern JavaScript: https://github.com/HtmlUnit/htmlunit/issues/755 https://github.com/jenkinsci/jenkins-test-harness/issues/569
This would be my preferred short-term approach, and is consistent with the status quo, although it is not great from a testing perspective.

Manual testing is no more option for me. Not on every change like bom updates

For what it's worth, BOM updates of things rarely break frontends. The recent incompatible release of Data Tables is an exception to what is otherwise a fairly consistent track record of compatibility.


Defined allowed cipher for WSS endpoints in APIM 3.2.0/APIM 4.0.0

Description:
APIM-3.2.0 and APIM-4.0.0 product documentation does not have any section where it has mentioned that we can configure allowed cipher for WSS endpoints.[1] This needs to be added in both APIM-3.2.0 and 4.0.0 documentations.
[1] - https://github.com/wso2/product-apim/blob/master/modules/distribution/product/src/main/resources/conf/templates/repository/deployment/server/synapse-configs/default/inbound-endpoints/SecureWebSocketInboundEndpoint.xml.j2#L21-L24
Affected Product Version:
APIM-3.2.0, APIM-4.0.0

Related issue https://github.com/wso2/product-apim/issues/10799


Support multi-tenancy (C8) when deploying or running a process

Tracking issue for multi-tenancy support in Camunda 8.
Problem you would like to solve
As a user I want to use Zeebe's upcoming multi-tenancy feature from the desktop modeler.
Breakdown

[x] Update zeebe-node to make tenantId available :arrow_right: https://github.com/camunda/camunda-modeler/issues/3772)
[x] I can specify a tenantId in deploy dialog to use a specific tenant (design specification) :arrow_right:  https://github.com/camunda/camunda-modeler/pull/3826
[ ] Incorporate zeebe node with actual tenantId support (https://github.com/camunda-community-hub/zeebe-client-node-js/issues/330)

Alternatives considered
None.
Additional context
Depends on https://github.com/camunda/zeebe/issues/12653.

Requires support for multi-tenancy to be baked into zeebe-node.
Depends on https://github.com/camunda-community-hub/zeebe-client-node-js/issues/330.

Related, cf. web modeler issue and implementation kick-off notes.

Reached out to zeebe-node maintainer to clarify when the API we require is going to ship.

Thanks to @jwulf we got stubbed tenantId support incorporated https://github.com/camunda/camunda-modeler/issues/3772. I'll next tackle the UI parts on our end.

Work in progress PR integrating the UI :arrow_right: https://github.com/camunda/camunda-modeler/pull/3826.

Work is in progress on a zeebe-node version that supports multi-tenancy.

Work regarding the UI integration is completed.

Error handling done using the standard means (error dialog).

Integration done.


Non-scrollable table header.

See  #22 for comments.

Updated again, can we merge now? :P

The feature Select Columns is broken with the floating header (header cells are no longer hidden accordingly when the column is hidden).
#contentPaneBackground needs to get an appropriate z-index (I guess it's 4), otherwise it won't cover the header as it should (you notice when you open a plot).
When the window is too narrow to have the top bar in one row, the table header hides the top bar and thus makes the features there unusable.

Hm interesting, plots did work for me, I did set z-index for them.
Agreed on fixing select columns.
What if we bring the top bar inside the thead element? That would also solve the problem of magic number and non-perfect offset.

Printing seems also broken (the print preview shows the table header over the first data row), at least in Firefox.

What if we bring the top bar inside the thead element? That would also solve the problem of magic
number and non-perfect offset.

I don't understand that solution really. How would it look like?
I think the current header is placed well and makes it clear that this is not part of the table but more like a navigation bar, because this style is common on websites.

I believe the offset problem is fixed. Thus printing and "select columns" are left.
The latter is a bit tricky, since it re-constructs the table...

Offset looks nice now, yes. z-Index also still needs to be set.
Btw, could you please replace
tbody tr:first-child td { border-top:3px solid black}

with
thead tr:last-child td { border-bottom:3px solid black}

in the template to keep the border between head and body correctly?
Would you think it makes sense to squash all the commits into one before merging because the history is now quite confusing with features added and removed and the actual change is pretty small?

OK this change fixes the "select column" functionality. Let me look at printing now. Still not following with the z-index, let me check under firefox.

Would you think it makes sense to squash all the commits into one before merging because the history is now quite confusing with features added and removed and the actual change is pretty small?

I'd prefer not to, given the current volume of commits on benchexec :P the history for the toggle header size might come useful one day.

Btw, could you please replace

What about tfoot tr:first-child?

Printing is tricky, since AFAIK there is no way to know in JS that the "print" button was pressed (or maybe I'm wrong and we can capture this event)? There is a closed ticket about this: https://github.com/mkoryak/floatThead/issues/68

Btw, could you please replace

What about tfoot tr:first-child?

Why would you want to change this?
I would like to keep the thick black borders between head and body, and between body and foot, as they are now. However, with floatThead and the current CSS the upper border scrolls out of sight.

OK printing works both under FF and Chrome, CSS border changed, I still don't follow you with z-index. For me plots work both under FF and Chrome, and I do recall changing the z-index.

z-index fix is done.


can exercises be more than just code too?

Sometimes I don't want to give exercises as code only. I want them to be mutiple choices question for example.
Something like this:

I think that the website is for developing, no matter if you a veteran or a rookie, so, I think that the best option is create exercises about a specific topic of the easiest way to understand. What do you think?


Allow case-only renames

Renaming File.txt to FILE.txt should be saveable.

Probably have to make an exception for case-insensitve file systems (Windows).


Fix filtering products ordered by collection

Fix filtering products ordered by collection using Window function

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: SALEOR-2740 An error occurred when sorting products by collection.

@L3str4nge Please resolve conflicts and this one will be ready for merge.


175 images not shown in databrowser

fixes #175

Tested in DataBrowser after copying the images from target directory in LegacyMan and editing absolute paths to match the relative paths with respect to build directory of DataBrowser.

Please review.

@IanMayo, I've resolved the merge conflict. Please review.


Organize the images and stuff them in the binary itself

Most likely by using include_byes!

Could hurt the audit-ability of our application when compared to some jpg on disk.


Fix import of default constants

Summary
Fixes import of default constant.
Warning messages in console:
WARNING in ./components/integrations/bots/add_bot/add_bot.jsx 321:17-35
"export 'OVERLAY_TIME_DELAY' was not found in 'utils/constants.jsx'
WARNING in ./components/dot_menu/dot_menu.jsx 126:47-73
"export 'UNSET_POST_EDIT_TIME_LIMIT' was not found in 'utils/constants.jsx'

Thanks! Don't think this needs QA review, but pinging @lindalumitchell to help confirm

@jasonblais Ready to merge

@anindha you must merge master into your branch to synch and resolve the conflics so we can merge.

@anindha you must merge master into your branch to synch and resolve the conflics so we can merge.

@marianunez  rebased against master and fixed conflicts.

Thanks @anindha 👍


Vague messaging - Condition key is available for only some services

This document AWS Global Condition Context Keys raises more questions than addresses.  There are 12 global conditions that are lacking pretty critical pieces of information of what AWS services they're compatible with:

aws:PrincipalOrgID
aws:PrincipalType
aws:Referer
aws:RequestedRegion
aws:SourceAccount
aws:SourceArn
aws:SourceIp
aws:SourceVpce
aws:userid
aws:username

This condition key is available for only some services

Aside from using time consuming trial by fire unit testing.  How are customers expected to know which services are compatible with these conditions?  It appears IAM knows of the services, and if so a 1:1 mapping of compatible services to global conditions should be present.  This would greatly help with reducing unnecessary policy testing.
Similar problem for the 2 global tag conditions (different wording):

aws:TagKeys
aws:RequestTag/tag-key

Check your service to see whether it supports using this condition key.

I did clean up the page a bit. I separated the keys into two groups - keys available to all services (that support policies) and keys supported by only some services. The changes will be live later today.

@stephswo How to find out which 'limited' services are supported as no service documentation mentions them directly?
E.g. aws:RequestedRegion. No service documentation explicitly mentions it as supported key and only redirects back to the global keys document. It means service document says global keys are supported but references to the document about global keys which redirects back to service documentation to check if it is really supported.
There is no way how to check supported services for such global keys directly from documentation without painful policy testing.
Can you provide more info here?
Thanks!

You can search within the documentation using the built-in search, or you can do a Google search:
aws:RequestedRegion site:docs.aws.amazon.com
Specific to aws:RequestedRegion, the only service returned in the search results was EC2:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ExamplePolicies_EC2.html#iam-example-region
IAM has no way to get this information today. It's up to the 140+ services to choose if they support these recommended keys, and then to document it themselves.

@stephswo It is not the right way how to find out supported services as also your find nowhere describes it as supported global key. The successful find in this case was due to policy example only, where key was mentioned. Without this example, do you want to say this global key is not supported by any service as there is no such info? The current state of global key document gives more questions than answers as there is no info how to technically find out supported services.
Btw. text evokes that this global key is supported for any service with Region attribute mentioned in AWS Regions and Endpoints.
At this link you can read this global key is supported by all actions across all services and an example shows it is supported by ec2, lambda, rds, etc.
Due to that documentation discrepancies, moving such global keys between partially supported services make more questions than answers and it seems support ticket will not help to get the right answer, right?
Thanks


Track network interface address owners

Keep track all the sockets that are bound to a local address and prevent IP address removal if there are still users for those addresses.
This is still WIP as we need to add address state support for multicast addresses in a network interface.

This will to prevent the system from removing an IP address that the applications are using. Instead the removed IP address is marked as "deprecated" and no new socket will be created with those source IP addresses. If all the sockets that are using the deprecated IP address are closed, then the IP address is removed automatically. The application can also listen "deprecated" network mgmt events and act on those (like close and re-open the affected sockets).
This should address at least part of the issues described in #7630

The IP automatic removal if no users seems a far fetched use case. I don't remember experiencing it anywhere actually. I don't see why the core stack should be "smart" about it.

There is no "smartness" here. Let me explain how the PR works:

application / other component wants to remove IP address
if there are no sockets open using that IP address, it is removed
if there is socket bound to that address, its state is set to "deprecated" but it is not removed yet
when the socket is closed, the code notices that it was the only one using the IP address so the deprecated address is now removed
so we are not removing address without action from application

It's been always up to the application to track ip addr being added or removed to an interface.

The problem is that if we just remove the IP address, all the sockets bound to that address will become non-functional immediately without allowing the application to gracefully to handle the issue.


Fix UUID check for existing tables without a UUID

This fixes two cases when assigning UUIDs to tables without them:

If the table is loaded, then assigned a UUID by a concurrent writer
If the table is written with a null UUID because no UUID was assigned

@jzhuge FYI

+1 LGTM
A bit of context:

This is to handle an metadata JSON file created before #264. JSON field table-uuid does not exist, thus metadata.uuid() returns null.
If you still have pre #264 writer running (not recommended), you might have to disable the checkState temporarily.

I think this PR would also resolve the problem when users upgraded to an Iceberg version that started assigning table UUIDs but their first operation wasn't a child of SnapshotProducer (e.g. update table properties). Such operations would write an explicit null as the table UUID, which will corrupt the metadata.

@rdblue, do we want to bring this in? There is only one open question on HadoopTableOperations.

Yes, I just need to update it after your review. Sorry I'm taking so long getting back to it.

@aokolnychyi, I updated HadoopTableOperations. Can you take another look at this?

Merged. Thanks for the review, @aokolnychyi!


[main] Switch to udevadm command install instead of package [OKD]

Apply commit 68ea744 to OKD, too.

Thanks
/lgtm

/retest

@elfosardo do we have to care about these tests? Or shall we simply /retest ?

@JM1 I'm going to override them, this change does not influence those jobs so we can merge it

/approve


fix: storybook icons

This fixes running the new icons with storybook for web in the UI library. It doesn't appear the script for running storybook with native is setup, or what am I missing?

Link to issue that helped me resolve this: https://github.com/storybookjs/storybook/issues/9070


unable to change extruder speed printing

in the print profile settings for Snapmaker Artisan , the print speed fields are disabled and set with 100 mm/s.
Which is too fast for several materials.

Please checkout Release 0.8.0
parameter relations should be fixed by now.


Inference Server - HIP Backend

-- amd_nn -- Building with HIP
-- AMD OpenVX Neural Network Extension -- amd_nn module added with HIP backend
-- Found AMDRPP: /opt/rocm/rpp/lib/libamd_rpp.so
-- amd_rpp -- Building with HIP
-- AMD Radeon Performance Primitives -- amd_rpp module added with the HIP backend support
-- OpenCV Found -- Version-4.5.X
-- OpenCV Version Supported -- Version-4.5.X
-- AMD OpenVX OpenCV Extension -- amd_opencv module added
-- hip::amdhip64 is SHARED_LIBRARY
-- hip::amdhip64 is SHARED_LIBRARY
-- vx_amd_migraphx -- Building with HIP backend
-- AMD OpenVX MIGraphX Extension -- amd_migraphx module added with the HIP backend
-- Found HIP: /opt/rocm/hip version: 5.1.20531-cacfa990
-- runvx built with HIP Support
-- Found HIP: /opt/rocm/hip version: 5.1.20531-cacfa990
-- Utilities -- runvx and mv_deploy modules added
-- hip::amdhip64 is SHARED_LIBRARY
-- WARNING: OpenCL/MIOpenGEMM/MIOpen/HIP Not Found -- cloud_inference application excluded

Apps turned off for default build on TOT


disabled Zanata jobs since Zanata server doesn't exist any more

(cherry picked from commit 5cacd4e0e699fd6b75fe5730b8079deea121c611)

so could we get fedora zanata server setup there instead of disabling?


sliders are present after the chart is offscreen

can't reproduce, must have been old version or some edge case fluke of jumping around fast


Skin Render Issue

I seem to be having trouble getting one of my player's skins to show up correctly with Crafatar.
This is the skin in question: http://textures.minecraft.net/texture/b436ce322be9ab5f6446e128a7aebb24bd95a950b44ef6eb33ff3e3ab8675
In game, it renders as a user with a blue shirt and pants with black hair.  Here's an example (from here), though interestingly the red "hat" doesn't show up in-game:

However, this is how Crafatar (and several other similar services) renders the skin:

The player's username is coolriderx1 and the UUID is 68c3c8470e7144978cc0ed2602aa3a29.  Any ideas what's going on here?  I can see the "skin" part in the original skin, but don't know enough about how things work to understand the discrepancy between game and Crafatar.

Overlays?  First time I've heard of them!  Anyways, with ?overlay=true the red hat returns, but still not the body:

Currently renders only support the hat overlay, see #112. That is going to be fixed with #134.
Closing as duplicate

Awesome, thanks!  :+1:


Stabilizing the API

I was watching a really great talk by a MongoDB developer on how to warn of deprecations in APIs. The talk is on youtube but his guide is available here: https://emptysqua.re/blog/api-evolution-the-right-way/.
Among the things he mentioned is how best to use libraries like warnings with stack-levels, and using the * in function call signatures to demand users use keywords, rather than order to launch processes. Is this something that we might want to consider integrating by v1.0?

Sounds reasonable.

Let's discuss this in the meeting.

The API has been stable (no major breaking changes) for at least 6 months now. I think it's safe to close this issue.


 I realize this is because we're a single-page app, but can we push a URL to history so that the back button works?

We will need to use better routing here. Since it's a single-page-app (aka SPA), it needs to use history.pushState to simulate navigation from home page to bingo tiles page and back.

Here's a nice tutorial to follow along: http://jamesknelson.com/routing-with-raw-react/


Add Example URI Signer Python Script

Provide an example script to be used in conjunction with the uri signing
plugin. This script is meant to serve as an example of how to get started
with uri signing and could be useful in testing various configs.

[approve ci]

[approve ci]

[approve autest]

[approve ci autest]

[approve ci autest]

Nice job setting Milestones / Labels etc. ...


Use hexadecimal for all addresses instead of base58+bech32

There are three main benefits to this:
Reason one - easier to decode
Currently, for every address, we have to do two steps

Try decoding as base58
If (1) fails, try decoding as bech32

However, given that all base58 addresses all start with the prefix 0b1000, parsing from hexadecimal immediately gives you the right address type.
Reason two - easier to query
Currently, all queries to cardano-db-sync have to use the bech32 prefix "addr" otherwise you won't get any results. This seems fairly arbitrary as a requirements. Would be much easier if I can just query the hex representation of an address and know it works for all address types.
Reason three - ambiguity on legacy addresses
I have seen people multiple times take a base58 address and wrap it in bech32. Tools like cardano-cli even accept legacy addresses in this format! It's really confusing if we have to parse base58 addresses in two different ways. Saving raw hex is the only canonical way to handle addresses.

Currently, for every address, we have to do two steps

As consumers of the database we should only be exposed to the presentation address format, so this is a workaround.

Currently, all queries to cardano-db-sync have to use the bech32 prefix "addr" otherwise you won't get any results.

The network discrimination forms part of the address identity, why are there addresses being derived without it?

I have seen people multiple times take a base58 address and wrap it in bech32

Wrapping in bech32 seems like an odd approach to a non-existent problem (unless I am missing the point entirely). What is the point of mutating an identity?
I'd also like to see resolution here to the inconsistencies, but decoding should be an internal concern of the chain sync client
https://github.com/input-output-hk/cardano-graphql/issues/255#issuecomment-665166242

@SebastienGllmt What about adding an extra column to the tx_out table containing the un-encoded address?


Sh/updates

All addressed in the last commit!

All addressed in the last commit!

The place I pointed out where the old terminology is still used was just an example, there are also others. Do you want to fix them or shall I?

I just updated the ones I could find, if you have any more in the radar, please add them :)

Thank you!


Update UserGuide.md

Should have removed all traces of AB3 and Address Book. Did a search for these keywords

Codecov Report

Merging #41 (c28f394) into master (f7c0a10) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #41   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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


Crashes on open the unity scene

Hi guys, Im using this package but sometimes when I open my scene that is using the alembic, my Unity crashes, so I need to recreate the scene using the prefabs but they are broken as well.
This happen always when I change my unity project to another folder or PC.

as noted in the document, you need to copy StreamingAssets/AlembicData because data is directly streamed from .abc files in this directory.
but yeah, crash is bad. I will make emit error message instead of crash.

new package is released.
there was a path-related bug and I think it was the root cause of your issue. new package includes fix for it.
be careful: prefab is not compatible with previous version.


BUG: zmq.asyncio.Poller does not return POLLPRI events before timeout

What pyzmq version?
25.0.2
What libzmq version?
4.3.4
Python version (and how it was installed)
Python 3.11.3 from Arch Linux repositories
OS
Arch Linux
What happened?
I'm using zmq.asyncio.Poller.poll() to wait for POLLPRI events on non-zmq file descriptors, which is how edges on GPIOs appear on e.g. raspberry pis. The non-asyncio version works fine:
poller = zmq.Poller()
poller.register(f, zmq.POLLPRI) # f is a an open file for a GPIO configured for edge triggering
events = poller.poll(5000) # returns as expected when there's a GPIO edge

However, I'm seeing a problem with the async version, poll() does not return until after the timeout:
poller = zmq.asyncio.Poller()
poller.register(f, zmq.POLLPRI)
events = await poller.poll(5000) # Returns the expected event, but only after the 5000ms timeout.

Below I've given code to reproduce the bug on a regular computer (i.e. my Arch Linux laptop), using a TCP socket to create POLLPRI events instead of GPIOs, for which the outcome is the same. The initial problem with GPIOs was on an embedded ARM computer running Ubuntu core 20.04 with Python 3.8.10, pyzmq 18.1.1, and zmq 4.3.2 from the Ubuntu repositories, so looks like the problem is not very specific to the environment, and is not a recent regression in pyzmq.
Code to reproduce bug
import zmq, zmq.asyncio
import asyncio
import threading
import time
import socket

def server():
    server_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    server_sock.bind(('localhost', 12345))
    server_sock.listen(1)

    client_sock, _ = server_sock.accept()
    while True:
        time.sleep(1)
        # Send some out-of-band data to generate a POLLPRI event
        client_sock.send(b'1', socket.MSG_OOB)

def pollpri_test():

    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.connect(('localhost', 12345))

    poller = zmq.Poller()
    poller.register(sock, zmq.POLLPRI)

    while True:
        events = poller.poll(5000)
        if events:
            data = sock.recv(1, socket.MSG_OOB)
            print(data)
        else:
            print("Timed out.")

async def async_pollpri_test():

    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.connect(('localhost', 12345))

    poller = zmq.asyncio.Poller()
    poller.register(sock, zmq.POLLPRI)

    while True:
        events = await poller.poll(5000)
        if events:
            data = sock.recv(1, socket.MSG_OOB)
            print(data)
        else:
            print("Timed out")

threading.Thread(target=server, daemon=True).start()
time.sleep(1) # allow time to start up

SYNCHRONOUS = True

if SYNCHRONOUS:
    pollpri_test()  # prints b'1' every 1s
else:
    asyncio.run(async_pollpri_test())  # prints b'1' every 5s

Traceback, if applicable
No response
More info
No response

Right, so turns out this is just not supported by asyncio. You have to turn the POLLPRI events into POLLIN events by wrapping in a select.epoll:
epoll = select.epoll()
epoll.register(f, select.POLLPRI) # f is a an open file for a GPIO configured for edge triggering

poller = zmq.asyncio.Poller()
poller.register(epoll, zmq.POLLIN) # watch the epoll object instead
events = await poller.poll(5000) # returns as expected when there's a GPIO edge
epoll.poll(0) # Don't forget to clear the epoll object

Not much pyzmq can do about this. Closing.


Some customers should have different belly colors

It would be nice if the customer bodies weren't always monochromatic. Maybe some of them could have belly colors, stripes, or spots. For starters, let's just consider something like brown customers with green bellies.

This could possibly be implemented by redoing our RGB sprites and implementing a clever shader.
The sprites could use the RGB channels for the X coordinate, Y coordinate and value, respectively. then we'd draw sprites where the front of the character was red, the back of the character was not red, the bottom of the character was green, and the top of the character was not green.

I went with a smoothpath, instead a sprite-based approach for a few reasons

It was easier
Generating large geometric textures performs better than loading them from images


Revert "[csrng] Temporarily hack-in disable handling"

The reverted commit was originally introduced as part of lowRISC/OpenTitan#14410 to work around a temporary issue until lowRISC/OpenTitan#14534 got merged. It seems we forgot to remove that temporary workaround before merging the PR.
The workaround is critical because it weakens a security countermeasure inside CSRNG: errors injected into the command stage FSMs are no longer fatal. By disabling and re-enabling the module these FSMs can be made to leave the "terminal" error state.
For this reason, we need to remove this workaround. This reverts commit f4df12fa7e2bc1f4249ae21e94e258ad00aa9756.

@vogelpi based on feedback from the csrng dv review, it appears that this PR can be applied, and then a follow up PR will be done making the same changes as what EDN has.

I had an initial go at making the EDN changes to CSRNG in this PR: https://github.com/lowRISC/opentitan/pull/16397

@vogelpi i have a consistency question. The edn_main_sm just had a change made to add final statements for the local_escalate and enable_i cases. This is very similar to the statement being removed here. In fact, i was expecting that the edn style statements would be added to this sm after the CSRNG review. Am I missing some subtle difference here?

I wasn't aware of the changes made to EDN. The main problem with the statement removed here is that it doesn't exclude the terminal error state, i.e., the FSM can be moved out of the terminal error state. I will now merge this and then we can apply the other changes on top. Thanks for your review, approval and for bringing up the EDN thing @mwbranstad !


Your Flutter application is created using an older version of the Android embedding. It's being deprecated in favor of Android embedding v2.

Got this warning when i tried to install the packages
Warning
──────────────────────────────────────────────────────────────────────────────
Your Flutter application is created using an older version of the Android
embedding. It's being deprecated in favor of Android embedding v2. Follow the
steps at

https://flutter.dev/go/android-project-migration

to migrate your project.

How can we fix that?

How can we fix that?

How can we fix that?

We have to upgrade it 😅

How can we fix that?

We have to upgrade it 😅

do you wanna schedule a call? let me know :D we can work on it if you down

do you wanna schedule a call? let me know :D we can work on it if you down

do you wanna schedule a call? let me know :D we can work on it if you down here

I have finished upgrade the project but i'm not really sure should make PRs it or not because there is some package i've upgrade @Alexakis97

do you wanna schedule a call? let me know :D we can work on it if you down here

I have finished upgrade the project but i'm not really sure should make PRs it or not because there is some package i've upgrade @Alexakis97

Well I really want to make the packages work :'/ and I don't really know how, If you could help out I would appreciate it!

Well I really want to make the packages work :'/ and I don't really know how, If you could help out I would appreciate it!

apologies for the delay, i will update soon :)

apologies for the delay, i will update soon :)

The project has been migrated to v2, please get latest and let me know if there is any issue :)

The project has been migrated to v2, please get latest and let me know if there is any issue :)


Consider rewriting/updating the HTTP Response Status Codes

Lifted from PR #68.

(...) I also don't like those comments in this table anyway. People may think those are supposed to be included as part of the response message, and that really shouldn't be the case. (These messages are not meant to vary with code other than localization). Should we remove them and instead focus on being more clear in the specification on for what conditions which errors are supposed to be returned? Furthermore, I also think this table misses some error codes specified by the jsonapi specification...

_Originally posted by @rartino in https://github.com/render_node/MDE3OlB1bGxSZXF1ZXN0UmV2aWV3MjM2NjMzNDQw/pull_request_reviews/more_threads

@fawzi says : JSON API specifies, we should be using thise


Remove AWT dependency

Currently the font loading is done by using java.awt.Font. Since LWJGL provides some STB libraries it would be great to use STBTrueType and STBEasyFont, so that you don't need the JVM argument -Djava.awt.headless=true.

Since the LWJGL 3.0.0-SNAPSHOT you can use NanoVG for rendering text. I will look into this before deciding which binding will be used in the Font class.


Animixed: Top carousel image overflow issue

I've attached a screenshot of the issue. I love your theme for 9anime by the way. As you can see in the top carousel, for some reason the thumbnail image of the previous carousel item is overflowing to the current item on the left as a thin line. Not a major bug, but will improve the quality of the theme. I can provide additional info if needed. Thanks a lot for this theme!

Hmm, is this still happening? Can you tell me your display resolution? I'll push an update later today, maybe this will fix it.

Hey, I just checked and yes it is still happening.

My resolution is 1920 x 1080.
When I reduce the zoom of the browser to 90% this issue is not there anymore. So probably it can be an issue with the image width or the carousel item not being scrolled completely.
I tried to check the script myself but unfortunately couldn't figure out the structure. I'm happy to help in any way possible. Thanks a lot!

I can't seem to reproduce this. How about trying it on a clean browser, Chrome, Firefox, Edge, with Stylus being the only extension enabled?

Here's the current version btw, if u want to try it out first.
https://privatebin.net/?929358cf64766a4d#F2f22fxwtULxTEk9ZeGGmrNwCDPpUywe3qyvYCd65web

Ah, it's okay then. I tried again with a fresh browser and with only stylus but I still had the issue. For now, I changed the container max-width from 1280px to 1260px and that solved my issue. So I will keep the value in my local from now. Thank you for your amazing work!

Just added a container width slider to configuration, so that you can still receive updates :)


Documentation about the X,Y layout

You draw the pixels of the InkyPhat here
https://github.com/pimoroni/inky-phat/blob/master/library/inkyphat/inky212x104.py#L206-L215
I was looking for some documentation about how the layout is updated, i.e. what order pixels are drawn, can I reference an individual pixel or does the whole display need refreshing? Can i reference one line of the display etc? Does partial config have something to do with it? (is it like a clip)
Is there any documents or diagrams explaining this? or a datasheet?
Background, I am trying to port the InkyPhat Python code to Java with AndroidThings

There's no command to set a single line or pixel, and you partial updates are caveated enough that they're basically worthless: you can only partially update an area as small as 1x8 (this might begin to give you clues about the pixel format) and even then it causes artefacts around the edge of the updated area.
The actual hardware is orientated in portrait; the rows on Inky pHAT are, from the display's perspective, columns and the columns are rows.
In full-display update mode the library sends two 1bit buffers of 2756 bytes- Red and Black. Each byte corresponds to an 8x1 region of the display (in portrait mode) with each bit corresponding to a single pixel. A pixel that is neither Red nor Black is White, and I can't remember which wins if you try to set it to both red and black but that should never reasonably happen if you're managing your drawing buffer properly.
You may also notice that Inky pHAT's back buffer is in portrait mode too: https://github.com/pimoroni/inky-phat/blob/master/library/inkyphat/inky212x104.py#L64
And pixel coordinates are translated in set_pixel: https://github.com/pimoroni/inky-phat/blob/master/library/inkyphat/inky212x104.py#L221-L223

ah great, thanks for that explanation! I'll see what I can come up with from this 👍


[AIRFLOW-3569] Add "Trigger DAG" button in DAG page

Jira

https://issues.apache.org/jira/browse/AIRFLOW-3569

Description

[x] Here are some details about my PR, including screenshots of any UI changes:

What this PR is addressing?
Currently, the (manual) Trigger DAG button is only available at the /home page.
But I always encounter this situation: when I'm checking the tree view, or code, or graph view of a specific DAG, I may want to manually trigger another DagRun. I need to go back to the home page, search for that DAG, trigger the DagRun, then click it again to check the tree view.
It may be good if we can have the Manual Trigger DAG button in the DAG page as well, rather than only in the home page.
Others

This PR only updated /www_rbac. Given deprecating old UI (/www) is already in the plan (https://github.com/apache/incubator-airflow/pull/4339), updating /www may add extra re-basing work for https://github.com/apache/incubator-airflow/pull/4339. But kindly let me know if any committer finds it's still necessary to update /www.

After the DagRun is triggered, users will be re-directed back to the Tree-View tab of the DAG that was triggered.

Screenshots

Codecov Report

Merging #4373 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #4373   +/-   ##
=======================================
  Coverage   78.14%   78.14%
=======================================
  Files         202      202
  Lines       16486    16486
=======================================
  Hits        12883    12883
  Misses       3603     3603

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 c014324...53806ee. Read the comment docs.

@ashb @kaxil @feng-tao PTAL and advise your thoughts?

thanks for the change. But I am not sure if I like this change. 1. From UI perspective, there will be two places to do the triggering dag which is kinda redundant; 2. The DAG page is a page for DAG information, not for operation(delete dag run, modify dag run, trigger dag run are in a different page). If we add this button, I think people may also argue whether we should add a stop dag run, modify dag run etc button(which are operations related to the dag) to this page.
Just my 2cents.

Thanks @feng-tao . Fully understand your point/concern.
However, I think from UI perspective it may still be worth adding it, in order to be consistent with the Link column in the homepage (screenshot below).

But I also agree the value added by this change is not that big.
I would like to leave the decision to you & other committers. Thanks! And happy new year!


Use a unique class name for the overlay to avoid conflicts with other…

… libraries
Both d3 and vuetify (a vuejs library) use the classname "overlay", causing d3-brush to break.

Thanks for the suggestion and apologies for the delayed response. This would not be a backwards-compatible change because the name of the class is part of the d3.brush’s public API, such that you can select and modify the contents of the brush for custom styling. This library doesn’t define any global styles for the brush; it simply uses the class names to identify them for subsequent reselection.


CUBLAS_STATUS_MAPPING_ERROR when train segmentation model

I try to train image segmentation neural network on my own dataset. My dataset contains only 1 class (and background, of course).
I change num_outputs from 21 to 2 in score_fr and upscore layers, also I change group=2. After that I rename score_fr to score_fr_ and upscore to upscore_.
When I try to train my network I see "ERROR: Check failed: status == CUBLAS_STATUS_SUCCESS (11 vs. 0) CUBLAS_STATUS_MAPPING_ERROR" message.
Full output:
conv1 needs backward computation.
shift does not need backward computation.
label_label_0_split does not need backward computation.
label does not need backward computation.
data_data_0_split does not need backward computation.
data does not need backward computation.
This network produces output accuracy
This network produces output loss
Network initialization done.
Solver scaffolding done.
Finetuning from /home/pavel/fcn-alexnet-pascal.caffemodel
Ignoring source layer score_fr
Ignoring source layer upscore
Ignoring source layer score_fr
Ignoring source layer upscore
Starting Optimization
Solving
Learning Rate Policy: step
Iteration 0, Testing net (#0)
Check failed: status == CUBLAS_STATUS_SUCCESS (11 vs. 0)  CUBLAS_STATUS_MAPPING_ERROR
What I doing wrong?

How did you install Caffe? You're probably going to need to ask over at NVIDIA/caffe.

I simply install digits from nvidia repos via sudo apt install digits that requires caffe as dependency.

CUBLAS_STATUS_MAPPING_ERROR
An access to GPU memory space failed, which is usually caused by a failure to bind a texture.
To correct: prior to the function call, unbind any previously bound textures.
http://docs.nvidia.com/cuda/cublas/index.html

That's weird. I'd ask @drnikolaev over at NVIDIA/caffe.


Switch to native atomic instructions when using the new x64 Cranelift backend

Fixed in https://github.com/bjorn3/rustc_codegen_cranelift/pull/1140.


[CONCEPT/DRAFT] Login Page Wallpapers

Hi all
I've recently made the suggestion of wallpapers on the login page.
This PR is supposed to be an early version of that. This PR is intended to serve as an easy way for you to see this in action.
For the wallpapers I'm using Unsplash images. Please review their license here.
The final version of this would probably use local files rather than links to the Unsplash CDN.
How it works
Whenever you visit or reload the login page, it will pick a random image from the array of images.
This array of images is easy to modify, and since this PR only serves as a basic early version of it, feel free to change some or even all images. On smaller resolutions the wallpaper will hide itself.
I'm hoping we can work together on this PR if we choose to go ahead with wallpapers on the login page. Feel free to provide your opinions as a comment below.
Examples
The full list of images is available in the array.

As discussed on the #dashboard Slack channel, we can revisit this later.

As discussed on the #dashboard Slack channel, we can revisit this later.


Audio not playing on mute button tap

I want to still play audio on iPhone mute button is pressed. Does can you help me how can we achieve it.

I found the solution for this
you need to add below code
         do {             try AVAudioSession.sharedInstance().setCategory(.playback)         } catch(let error) {             print(error.localizedDescription)         }
in ASVideoPlayerController line number after line number 116 in function name func playVideo(withLayer layer: AVPlayerLayer, url: String) {


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_81lj93ad8x/clone/recipe/meta.yaml:25: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_81lj93ad8x/clone/recipe/meta.yaml:32: missing_pip_check: For pypi packages, pip check should be present in the test commands
WARNING: /tmp/abs_81lj93ad8x/clone/recipe/meta.yaml:41: missing_description: The recipe is missing a description
Errors were found


Focus topic input in "Move messages" and "Move topic" modals

As noted here:

While opening the "Move messages" or "Move topic" modal, none of the inputs in the modal are focussed initially and when I press Tab then the focus comes on x icon.

Instead, the input topic box should be focused when these modals are opened.
When the user has permissions to move the message(s) to a different stream, but can't edit the name of the topic, the stream selector should be focused instead

@zulipbot claim

@zulipbot claim

@zulipbot claim

@zulipbot claim

@bphan002 I have already a PR open for this issue which is in integration review. It would be nice if you pick up any other issue with a "help wanted" label.

My apologies I removed myself

@zulipbot claim

i want to work on this issue. can anyone help what will be the my first step

i want to work on this issue. can anyone help what will be the my first step

I have already a PR open for this issue which is in integration review. It would be nice if you pick up any other issue with a "help wanted" label.

@20santi I have already a PR open for this issue which is in integration review. But you can pick any other issue with "help wanted" label.

@zulipbot claim

I think a lot of confusion is that this tag still has the help wanted tag on it.  Can this be removed?

We are not in the habit of removing the "help wanted" label until the issue has been resolved.
@Ddharmani3 I think part of the confusion was that the PR description didn't have "Fixes" and the issue number on the same line, so GitHub wasn't showing it at the top of this issue. (I fixed it.)

We are not in the habit of removing the "help wanted" label until the issue has been resolved.
@Ddharmani3 I think part of the confusion was that the PR description didn't have "Fixes" and the issue number on the same line, so GitHub wasn't showing it at the top of this issue. (I fixed it.)

oh, I apologize for the confusion I used to put the issue number in the next line but, I will ensure to put it in the same line in the future.


Create new Top App Bar component, using @material/top-app-bar

[ ] New React.Component which returns the HTML structure for top app bar
[ ] Include the Sass files from @material/top-app-bar
[ ] Props on the component should map to the variants of top-app-bar (short, short-collapsed)
[ ] Include the foundation file from @material/top-app-bar
[ ] Wire together all synthetic React events top app bar needs to listen to
[ ] Update the components state, and trigger a React re-render, as necessary
[ ] Screenshot test to cover all properties
[ ] JS test to cover all React code

fixed by #13


DateStyle and TimeStyle are not part of the public API

Hi, thanks for the great library!
I'm writing a wrapper function for gt.fmt_datetime, gt.fmt_date etc. but I need to import DateStyle and TimeStyle from great_tables._formats to type hint the function correctly.
Have you considered re-exporting these Literals so they are accessible from the public API? Happy to make the PR myself, as well as re-export any other type hints that are in the public API if you agree this should be done.

Thanks for bringing this up.
@machow and @rich-iannone, do you think we should consider exposing some literals to make it easier for users to adopt type hints?
I fully understand that the linter has difficulty understanding our databackend logic, and making mypy work smoothly is definitely a challenge for us.


GDScript properties not available with onready vars

Godot version: 8e82404
OS/device including version: X11, Solus Linux
Issue description:
Using properties in an onready variable in GDScript generates an Identifier not found error upon attempting to play the scene.
Steps to reproduce:
Create and add this script to a Spatial node:
extends Spatial

onready var base = translation

Press play. Godot will generate the error Identifier not found: translation and refuse to play.
As an aside, using get_translation() works, so I'm assuming this is a property issue.

Closing as duplicate of #19548.


Document docker quickstart image and futurenet

Reassigning to me and @jcx120 because we've been pairing on this.


Add exponential backoff retries to all dataspace calls.

As we can't depend on dataspace participants to be online all the time, we need to implement retries with exponential backoffs for all HTTP calls.
We can do this naively but we need to consider the following:

How long will we keep trying, and how do we handle participants being offline for longer than that.
How many of these do we want to have running at the same time.
Would a central reconciliation loop be a better design decision, especially if combined with a persistence method.

Fixed by adding a reconciliation loop in #87


about pre-training model

hello,could you please post the pre-training model, e.g., vit-base/16 or vit-large/16?
Thanks

Hi, for the based-sized and large-sized ViTs, please refer to other excellent open-sourced projects such as:

https://github.com/microsoft/unilm/tree/master/beit2
https://github.com/zejiangh/MILAN

We adopt similar approaches as them.

I believe the issue at hand was addressed, as such I'm closing this. Feel free to ask if you have further questions.

Hi, we have release our large-sized model: https://github.com/baaivision/EVA/tree/master/eva#eva-l-learning-better-mim-representations-from-eva-clip
Also at timm: https://github.com/rwightman/pytorch-image-models#dec-8-2022


BUG: Fix divide by zero warnings caused by error_norms=0 in bdf.py

I cannot come up with a small reproducible code example, but I occasionally get warnings from bdf.py like below.  This is caused by at least one element of error_norms = 0.  In my case, it was the first two elements.  This fix clips the lower bound to be np.finfo(float).eps, and I no longer get the same warnings.
RuntimeWarning: divide by zero encountered in power     factors = error_norms ** (-1 / np.arange(order, order + 3))
@nmayorov since you authored 99.9% of this file, can you review that it doesn't break some logic?  Each element is a norm, so they should be greater than or equal to zero, and after this change, only greater than zero.

It seems like the test failure was just a timeout.  It looks like it passed all solve_ivp tests that I can see.


kairos-agent upgrade doesn't select the latest version

Kairos version:
1.1.2
CPU architecture, OS, and Version:

Describe the bug
Running the upgrade with:
kairos-agent upgrade

brings an rc instead of latest
To Reproduce
Install 1.1.2, try to run kairos-agent upgrade
Expected behavior
Take the latest version
Logs
kairos-agent upgrade
latest release is  v1.0.0-rc2-k3sv1.21.14-k3s1
INFO[2022-10-19T21:31:54Z] Starting elemental version v0.0.1
WARN[2022-10-19T21:31:54Z] failed reading installation state: open /run/initramfs/cos-state/state.yaml: no such file or directory
INFO[2022-10-19T21:31:54Z] Upgrade called
INFO[2022-10-19T21:31:55Z] Applying 'before-upgrade' hook
INFO[2022-10-19T21:31:55Z] Running before-upgrade hook
INFO[2022-10-19T21:31:55Z] deploying image quay.io/kairos/kairos-opensuse:v1.0.0-rc2-k3sv1.21.14-k3s1 to /run/initramfs/isoscan/cOS/transition.img
INFO[2022-10-19T21:31:55Z] Creating file system image /run/initramfs/isoscan/cOS/transition.img
INFO[2022-10-19T21:31:55Z] Copying quay.io/kairos/kairos-opensuse:v1.0.0-rc2-k3sv1.21.14-k3s1 source...
INFO[0000] Unpacking a container image: quay.io/kairos/kairos-opensuse:v1.0.0-rc2-k3sv1.21.14-k3s1
INFO[0000] Pulling an image from remote repository
INFO[0039] Pulled: sha256:a6e6cec5985b759a506c243b4d189f40c49af8d30a944fcd1a6158bc8260399a quay.io/kairos/kairos-opensuse:v1.0.0-rc2-k3sv1.21.14-k3s1
INFO[0039] Size: 1.342GiB
INFO[2022-10-19T21:32:34Z] Finished copying quay.io/kairos/kairos-opensuse:v1.0.0-rc2-k3sv1.21.14-k3s1 into /run/cos/transition
INFO[2022-10-19T21:32:35Z] Applying 'after-upgrade-chroot' hook
INFO[2022-10-19T21:32:35Z] Running after-upgrade-chroot hook
INFO[2022-10-19T21:32:35Z] rebranding
INFO[2022-10-19T21:32:35Z] Setting default grub entry to Kairos
INFO[2022-10-19T21:32:35Z] Applying 'after-upgrade' hook
INFO[2022-10-19T21:32:35Z] Running after-upgrade hook
INFO[2022-10-19T21:32:41Z] Backing up current active image
INFO[2022-10-19T21:32:41Z] Moving /run/initramfs/isoscan/cOS/active.img to /run/initramfs/isoscan/cOS/passive.img
INFO[2022-10-19T21:32:41Z] Finished moving /run/initramfs/isoscan/cOS/active.img to /run/initramfs/isoscan/cOS/passive.img
INFO[2022-10-19T21:32:41Z] Moving /run/initramfs/isoscan/cOS/transition.img to /run/initramfs/isoscan/cOS/active.img
INFO[2022-10-19T21:32:41Z] Finished moving /run/initramfs/isoscan/cOS/transition.img to /run/initramfs/isoscan/cOS/active.img
INFO[2022-10-19T21:32:41Z] Upgrade completed
E1019 21:32:41.649392   13853 mount_linux.go:195] Mount failed: exit status 32
Mounting command: systemd-run
Mounting arguments: --description=Kubernetes transient mount for /run/initramfs/isoscan --scope -- mount -t auto -o remount,ro /dev/sda4 /run/initramfs/isoscan
Output: Running scope as unit: run-r9c30451f53c04a36ad510727925605e0.scope
mount: /run/initramfs/isoscan: mount point is busy.

ERRO[2022-10-19T21:32:41Z] Failed mounting device /dev/sda4 with label COS_STATE
exit status 1

Additional context

The problem is that we simply take the first release from the list, although the versions don't come ordered. We can order them in before the provider returns the list or afterwards in the agent, or maybe both. I'll see what's better.

Took me a while to figure out how to run the tests locally. I started working on a fix here: https://github.com/kairos-io/provider-kairos/tree/249-choose-latest-version-on-upgrade (currently just adds a test)


Switch to structured logging

This automatically adds additional Log fields like reconcile_id etc.. from the controller context.
Follow up from: https://github.com/openstack-k8s-operators/keystone-operator/pull/220
Epic :  OSP-22582 Switch Operators to structured logging
before :
{"level":"info","ts":"2023-07-04T10:11:14.655+0300","logger":"controllers.OpenStackControlPlane","msg":"Reconciling Glance","Glance.Namespace":"openstack","Glance.Name":"glance"}

after:
2023-10-15T02:37:10.941+0300    INFO    Controllers.OpenStackClient     OpenStackClient CR values       {"controller": "openstackclient", "controllerGroup": "client.openstack.org", "controllerKind": "OpenStackClient", "OpenStackClient": {"name":"openstackclient","namespace":"openstack"}, "namespace": "openstack", "name": "openstackclient", "reconcileID": "21a5c4af-ea9a-4c5c-aae2-78c77b76b01c", "Name": "openstackclient", "Namespace": "openstack", "Secret": "openstack-config-secret", "Image": "quay.io/podified-antelope-centos9/openstack-openstackclient@sha256:66a098b20c2a26ffc43b7d21f76b17bba386c3eebcc33ed48fb31208896d9761"}

set log dev true for console output

Hi @gibizer,  can you take a look ?
I'm running this on titan88 using install yamls with the patch I'm getting :
/root/openstack-operator/controllers/core/openstackcontrolplane_controller.go:38:2: no such package located
Error: not all generators ran successfully

OH nevermind , I got
-: import cycle not allowed: import stack: [github.com/openstack-k8s-operators/openstack-operator github.com/openstack-k8s-operators/openstack-operator/controllers/core github.com/openstack-k8s-operators/openstack-operator/pkg/openstack github.com/openstack-k8s-operators/openstack-operator/controllers/core]
so it's denying import of the  for the owned resources I guessing ..
< 1 minute ago
so openstackcontrolplane_controller.go which is importing "github.com/openstack-k8s-operators/openstack-operator/pkg/openstack"
is calling pkg/openstack/ovn.go which is importing openstackcontrolplane_controller.go  for the GetLog func.
and that in turn causes re-import of the "openstack-operator/pkg/openstack" module. that's the import cycle go was talking about

It seems openstack-operator uses a different log format compared to keystone-operator.
keystone-operator:
2023-07-04T10:58:40Z	INFO	Controllers.KeystoneAPI	Reconciling Service	{"controller": "keystoneapi", "controllerGroup": "keystone.openstack.org", "controllerKind": "KeystoneAPI", "KeystoneAPI": {"name":"keystone","namespace":"openstack"}, "namespace": "openstack", "name": "keystone", "reconcileID": "ecd75bab-0441-4d17-9342-91416beb6d15"}

openstack-operator:
{"level":"info","ts":"2023-07-04T10:17:44.052+0300","logger":"Controllers.OpenstackControlPlane","msg":"Setting StatefulSet","controller":"openstackcontrolplane","controllerGroup":"core.openstack.org","controllerKind":"OpenStackControlPlane","OpenStackControlPlane":{"name":"openstack-network-isolation","namespace":"openstack"},"namespace":"openstack","name":"openstack-network-isolation","reconcileID":"9c199ee4-2e92-46ad-943c-fc977b70b9f5"}

I guess the difference is in the logger setup:
https://github.com/openstack-k8s-operators/openstack-operator/blob/50667049a677e32bcc846c694fea95b83bde5ee2/main.go#L111-L122
https://github.com/openstack-k8s-operators/keystone-operator/blob/4371f9602724378ac0c39eff7e635035afc761a3/main.go#L69-L75
The dev mode difference is added in https://github.com/openstack-k8s-operators/openstack-operator/commit/6435a06ef2017fa79799782551fe0c039ac1b991 But that commit does not have much reasoning why we are disabled dev mode by default. Maybe @fao89 or @abays knows more.

I didn't have a special reason for setting it to false as default, I just wanted to make the development configurable, no objections for making the true the default

thanks @fao89 I changed it in the patch
@gibizer I updated the zap logging option to dev true so it's console output mode.
I also updated the commit message at the top to reflect that

I didn't have a special reason for setting it to false as default, I just wanted to make the development configurable, no objections for making true the default

OK. So this is something we might want to decided together and sync in each operator. I don't know the actual implication of the devMode logger versus the non devMode one. Other then that actually log line format it emits. The devMode one is easier for humans to parse, but maybe the devMode:false one is better from machine processing?

I didn't have a special reason for setting it to false as default, I just wanted to make the development configurable, no objections for making true the default

OK. So this is something we might want to decided together and sync in each operator. I don't know the actual implication of the devMode logger versus the non devMode one. Other then that actually log line format it emits. The devMode one is easier for humans to parse, but maybe the devMode:false one is better from machine processing?

I think as far as usage goes , the log format can always be changed by the DEV_MODE env, so anyone needing this can simply use that for logging with json.
I believe the majority of reviewers and debuggers right now are human so I think the console (dev true) mode is ok for now.
It is a point I will raise when I ask for reviews with a broader audience though.

/retest-required

/retest

/retest-required

seeing some unrealeted edpm/nmstate failures in CI :
https://review.rdoproject.org/zuul/build/ab733d28c3584ea2b1b0493eb86816bc:
nError from server (InternalError): error when creating \"/tmp/tmp.s9NWVJVmn4/tmp.C0br6ep3ph\": Internal error occurred: failed calling webhook \"nodenetworkconfigurationpolicies-mutate.nmstate.io\": failed to call webhook: Post \"https://nmstate-webhook.openshift-nmstate.svc:443/nodenetworkconfigurationpolicies-mutate?timeout=10s\": no endpoints available for service \"nmstate-webhook\

/retest

/retest

recheck

recheck

@gibizer I think we can go forward with this patch , people online had had some time to consider,
I think there are no objections to using dev_mode=true here.
https://redhat-internal.slack.com/archives/CQXJFGMK6/p1689631821764519

/retest-required

/retest

/retest

/retest

recheck

recheck

@dprince @stuggi hi can you review please ?

@gibizer Have your requested changes been satisfied here?

@gibizer Have your requested changes been satisfied here?

Yes, this looks OK to me.


Looking for ability to change modalPresentationStyle

Hi LiveChat team!
Just started adopting your SDK for an internal proof of concept and was hoping to narrow down if the ability to change the presentation style was a current or projected option.
For now the default upon using the LiveChat.presentChat() function seems to be full screen. However on devices with irregular safe zones (and device with the "bunny ears") I would like to use a page sheet presentation style as it currently leaves the top safe zone as a noticeable white bar.
Any help is appreciated with this. Cheers!

Hello @Britishfrog this way of widget presentation is not currently supported. Initially, we decided to display the chat screen in a separate window to interfere with host apps in a minimal way. After your report, we started a discussion about giving developers more freedom to adopt the widget. The decision is not yet made but please follow the README page for the upcoming releases.


Refactor POSIX to UNIX

This renames the directories containing posix to unix; where applicable,
it also rename functions with the word "posix" to "unix"
This PR is blocked until the merging of #2011

LGTM. :)

This PR is blocked until the merging of https://github.com/rust-lang/miri/pull/2011

@landaire said they can deal with the conflicts. So I'd be fine landing this any time. I'm always happy to reduce the size of our PR list. ;)

Fixes #2012

Fixes https://github.com/rust-lang/miri/issues/2012

This needs to go into the main PR comment; I have edited it accordingly.

@bors ping

Bors keeps missing r+'s recently...
@bors r+

:pushpin: Commit d0a0369a24003da3800957f9bab01f631f76a792 has been approved by RalfJung

:hourglass: Testing commit d0a0369a24003da3800957f9bab01f631f76a792 with merge fc8631a737e37c26210485bfb838becd79b99268...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing fc8631a737e37c26210485bfb838becd79b99268 to master...


[0] Error while mirroring css content to document.

    **Version:**
    1.4.1

    **OS:**
    <!-- Add your hosting platform e.g Microsoft Windows, WSL, MacOs or Linux -->

    **Stack :**
    Could not mirror css changes to document. No workspace mapping was found for 'http://localhost:50847/styles.css'.

    **Additional context:**
    <!-- Add any other context or about the problem or screenshots here. -->

Duping issue to https://github.com/microsoft/vscode-edge-devtools/issues/628


Implement project saving/loading features

Implement the extra features for project saving/loading features

adding exception handers
fix the existing bugs for add/update/delete files
dealing with the load/download file failure
add resume status for MAC user

Released in v0.9.0.


⚠ Bofrost.de has degraded performance

In 42259d4, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1905 ms

Resolved: Bofrost.de performance has improved in 159332b after 6 minutes.


[1.0.0-beta13] Async options with Promises displays [object Promise] as input value

Hey,
I am having an issue with 1.0.0-beta13 version, as with Async options whenever user tries to write something in the input, it changes typed value to [object Promise]. There is already a fix for that at react-select - is there any chance to merge this fix to react-select-plus and publish a new version to npm?
Issue on react-select:
https://github.com/JedWatson/react-select/issues/940
Pull Request fixing that issue:
https://github.com/JedWatson/react-select/pull/941
Thanks!

I'm aware of the issue. Unfortunately, there hasn't been a react-select release with that patch yet, and I've been trying to keep react-select-plus releases in 1:1 correspondence with react-select releases. This seems like a good case for an exception, though. I'll put together an intermediate release later today.

I've published a release with that patch as 1.0.0-beta13.patch.

Wow, that was quick! Thank you so much, works like a charm 👍


Test Desktop Notifications - Does not work

Going into My Account -> Preferences and pushing the "TEST DESKTOP NOTIFICATION" does not do anything.  v 1.0.0

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/31323303-test-desktop-notifications-does-not-work?utm_campaign=plugin&utm_content=tracker%2F19476668&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F19476668&utm_medium=issues&utm_source=github).

What OS?

Ubuntu 15.10

Turns out I was using v 1.0.0 beta 2; fixed in v1.0.0


Add new parameter to fig_to_html function to manage the geojson float precision

Motivation: the fig_to_html function embeds a geojson that can be very heavy when there are a lot of coordinates and features.
According to this most of the time extra float precision on the coordinates doesn't have a visible effect.
With the PR you can add float_precision to the fig_to_html function and when the geojson is created the floats will be formatted.
Example:
import mplleaflet
import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot((1,2.365485622,36.254685), (1,2,3.3))

If we save the fig to html in the usual way we get:
mplleaflet.fig_to_html(fig)

We get
...
var gjData = {
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "geometry": {
            "type": "LineString",
            "coordinates": [[1.0, 1.0], [2.365485622, 2.0], [36.254685, 3.3]]
        },
        "properties": {"color": "#1F77B4", "weight": 1.5, "opacity": 1, "fillOpacity": 1}
    }]
};
...

If we use the new keyword:
mplleaflet.fig_to_html(fig, float_precision=3)

We would get:
...
var gjData = {
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "geometry": {
            "type": "LineString",
            "coordinates": [[1.000, 1.000], [2.365, 2.000], [36.255, 3.300]]
        },
        "properties": {"color": "#1F77B4", "weight": 1.500, "opacity": 1, "fillOpacity": 1}
    }]
};
...

The example above is not very representative but if you are using contours, for instance, the difference is very important.

@kikocorreoso This is great. I'm actually wondering if this shouldn't just include a default float_precision value (maybe or 6?) which most people would want anyway.

:+1: for 6 decimal place as default. Here is the specs text for completeness BTW:
11.2.  Coordinate Precision

   The size of a GeoJSON text in bytes is a major interoperability
   consideration, and precision of coordinate values has a large impact
   on the size of texts.  A GeoJSON text containing many detailed
   Polygons can be inflated almost by a factor of two by increasing
   coordinate precision from 6 to 15 decimal places.  For geographic
   coordinates with units of degrees, 6 decimal places (a default common
   in, e.g., sprintf) amounts to about 10 centimeters, a precision well
   within that of current GPS systems.  Implementations should consider
   the cost of using a greater precision than necessary.

   Furthermore, the WGS 84 [WGS84] datum is a relatively coarse
   approximation of the geoid, with the height varying by up to 5 m (but
   generally between 2 and 3 meters) higher or lower relative to a
   surface parallel to Earth's mean sea level.

Thanks, @ocefpaf!
@kikocorreoso  - would you like to add that default? Then let's merge it!

Of course!!
And I could try to apply the float_precision keyword just to the coordinates in order to do not modify other floats in the geojson.

I have added the default value. I tried to add the option only to act over coordinates floats but it seems is needed to recode some parts of the stdlib json module...


Change to per-repo versioning

Overview
As described in #3612, this repo is changing to a monorepo that will contain the code for all the Cloud C++ client libraries. Each library will live in a per-library directory, like google/cloud/$library. The repo itself will have a version number that corresponds with the versions on the https://github.com/googleapis/google-cloud-cpp/releases page. But each individual library will not contain their own version numbers. To be clear (and visually skimmable):
There will be a single per-repo version number, NOT per-library version numbers.
This differs from today where there is a repo version number, and each individual library also has their own version number. For example, today we have:

Current repo version: v0.20.0
Current GCS version: v1.11.x
Current Bigtable version: v1.8.x

All libraries will be assumed to be Generally Available (GA) unless otherwise noted in the google/cloud/$library/README.md file.

I think until -common is merged into the repo we will need to manually sync and keep GCS and Bigtable version numbers. @devjgm if you agree, I can send an initial PR later today.

I'm not sure I understand why we need to wait for -common to be merged into this repo. I was thinking that we could, say today, bump the GCS and Bigtable version numbers to say 1.5.0. Then in our May release of -cpp, we'd release the whole repo at version 1.5.0. That would put the whole repo, and Bigtable and GCS, at version 1.5.0.
Let me know what I'm misunderstanding.

I think you are right, except for a couple of weird places, let me send a PR.


chore(deps): update helm release loki to v6

This PR contains the following updates:

Package
Update
Change

loki (source)
major
5.47.2 -> 6.0.0

Release Notes

grafana/helm-charts (loki)
v6.0.0
Helm chart for Grafana Loki in simple, scalable mode
Source commit: https://github.com/grafana/loki/commit/79b876b65d55c54f4d532e98dc24743dea8bedec
Tag on source: https://github.com/grafana/loki/releases/tag/helm-loki-6.0.0

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Renovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 6.x releases. But if you manually upgrade to 6.x then Renovate will re-enable minor and patch updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


CustomGetNextInput_fn

In the examples for custom backends (and also in the documentation of the SDK), it is stated that the provided CustomGetNextInput_fn possibly has to be called multiple times to provide the whole input in contiguous chunks.
In case the custom module has batch_size 1 (or 0), does a single call to the callback suffice?
Edit: And on a related note: would it be possible to make  a CustomGetNextInput_fn  Return pointers to chunks which are aligned in memory, as to facilitate processing via SIMD methods?

We don't guarantee this... but currently it is only the HTTP front-end that will return multiple chunks for an input. That chunking is not based on the batch-size (and so does not fall on batch item boundary). The chunking is determined by the way the HTTP front-end is creating its buffers as it reads the HTTP request.
So the general answer is no, you cannot assume anything about if or if-not there will be multiple chunks for an input.
Currently we don't control how HTTP or GRPC aligns its memory blocks... perhaps with is an option we can configure in the future. We will track internally.


typo

I'm surprised this wasn't caught by linting?

I'm surprised this wasn't caught by linting?

eslint didn't this this is an error or warning

should we add     'no-sequences': 'error', in eslintrc?


Prevent unintentional specification of task properties on the operation definition

Since #326 we allow to define operations inline with its enclosing task. The operation defines what API call should be executed and the task defines how it should be executed (e.g. warmup-iterations, iterations, target-throughput). In order to save users some hassle, all of the task properties have default values. Additionally, the operation definition allows to define arbitrary parameters. This leads to a situation where a user can define this task:
{
  "operation": {
    "name": "query-match-car",
    "operation-type": "search",
    ...,
    "clients": 2,
    "warmup-iterations": 1000,
    "iterations": 10000,
    "target-throughput": 100
  }
}

when they should have done this
{
  "operation": {
    "name": "query-match-car",
    "operation-type": "search",
    ...
  },
  "clients": 2,
  "warmup-iterations": 1000,
  "iterations": 10000,
  "target-throughput": 100
}

In the first case, the properties are attributed to the operation and the task will run with defaults (one client, no warmup iteration, one measurement iteration, no target throughput). This is trappy and surprises users.
We have several ways to address this:
Change track file format
We can change the track file format so task properties need to be defined in their own block, e.g.:
{
  "operation": {
    "name": "query-match-car",
    "operation-type": "search",
    ...
  },
  "task": {
    "clients": 2,
    "warmup-iterations": 1000,
    "iterations": 10000,
    "target-throughput": 100
  }
}

We'd also not define default values and require users to specify properties explicitly.
Make task properties mandatory
A more light-weight approach is to be more strict, remove the default values and require users to specify explicit values. We can prepare the official Rally tracks in advance to conform to that requirement and so this would not affect the majority of the users.
Detect problematic situations
Another option is to detect that the user has specified task-related properties on the operation (but none on the task) and warn the user about it. The problem with this approach is that we can never be sure that a user has intentionally passed the task-related properties. We could declare them as reserved names though. I am only mentioning this possibility for completeness but I think this approach is trappy in itself.
I am favor of option two but this is open for discussion.

We discussed this in our sync and came up with a modification of proposal number one defined above. Instead of introducing a separate structure for task we'll introduce a separate structure for schedule.
Here is a summary of the changes:

A Task is only allowed to have a set of well-defined properties. Any other property will be rejected.
The schedule property will turn from a string (that defines the name of the scheduler) into an object. All scheduler-related properties will move into that object. The schedule object will allow arbitrary properties so custom scheduler implementations can specify properties as they see fit.
For simplicity we will allow to define the property target-throughput - which actually belongs to the schedule also on task level - if and only if there is no schedule property defined (i.e. we use the default schedule implicitly).
To ensure users don't specify keys on the wrong level, all task property names will be treated as reserved names within the operation and schedule properties. Using such a property name on operation or schedule level will be rejected.

Examples
This task will continue to work as is as there is no schedule property set.
{
  "operation": {
    "name": "query-match-car",
    "operation-type": "search",
    ...
  },
  "clients": 2,
  "warmup-iterations": 1000,
  "iterations": 10000,
  "target-throughput": 100
}

This task will be rejected because the clients property is specified on operation level (which is only allowed as a task property):
{
  "operation": {
    "name": "query-match-car",
    "operation-type": "search",
    "clients": 2,
    ...
  },
  "warmup-iterations": 1000,
  "iterations": 10000,
  "target-throughput": 100
}

The following task will need to change (target-throughput is defined on task level but a custom schedule is set):
{
  "operation": {
    "name": "query-match-car",
    "operation-type": "search",
    ...
  },
  "clients": 2,
  "warmup-iterations": 1000,
  "iterations": 10000,
  "schedule": "poisson",
  "target-throughput": 100
}

Instead the task needs to be specified as:
{
  "operation": {
    "name": "query-match-car",
    "operation-type": "search",
    ...
  },
  "clients": 2,
  "warmup-iterations": 1000,
  "iterations": 10000,
  "schedule": {
    "name": "poisson",
    "target-throughput": 100
  }
}


B4 - Let's explain 'provisioning'

The following sentence is cryptic: Provision - In this phase, any infrastructure needed by your app is provisioned.. If you don't know what provisioning means, you're stuck. I suggest that when we say your app is... we use a different, common word, like created, just to make it clearer what provisioning does.

Good idea thanks!


Confusing Error Message

I have installed pyenv-virtualenvwrapper using homebrew. When I activate my environment I get the following message:
computer:~ me$ deactivate
computer:~ me$ workon pelican
pyenv-virtualenv: deactivate must be sourced. Run 'source deactivate' instead of 'deactivate'
(pelican) computer:~ me$ deactivate
computer:~ me$

My .bash_profile has the following settings:
# PyEnv
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi
pyenv virtualenvwrapper

As you can see deactivate works just fine, however based on the error message, I would assume I cannot use deactivate without source. This message seems confusing.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

I'm also getting this same or similar error message. It seems to be after I installed anaconda. Potentially linked to https://github.com/yyuu/pyenv-virtualenvwrapper/issues/24.
Error: deactivate must be sourced. Run 'source deactivate'
instead of 'deactivate'.

Usage: source deactivate

removes the 'bin' directory of the environment activated with 'source
activate' from PATH.

pyenv-virtualenv-init is a feature of pyenv-virtualenv to activate virtualenv automatically and it'd conflict with the functionality of pyenv-virtualenvwrapper. I'd recommend you to remove the following configuration from your shell profile if you want to use pyenv-virtualenvwrapper instead of pyenv-virtualenv.
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi

@yyuu So to be clear, if you're using pyenv-virtualenvwrapper, all you need in your shell rc file is the following?
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
pyenv virtualenvwrapper_lazy

@epicserve for onlookers, I just have
eval "$(pyenv init -)"
pyenv virtualenvwrapper_lazy

without any pyenv-specific exports


merging "features" does not re-increment the "id" property

We are using geojson-merge to merge the following three files:
https://haze.airfire.org/monitoring/latest/geojson/airnow_PM2.5_latest10.geojson
https://haze.airfire.org/monitoring/latest/geojson/airsis_PM2.5_latest10.geojson
https://haze.airfire.org/monitoring/latest/geojson/wrcc_PM2.5_latest10.geojson
geojson-merge does not re-increment each feature's id so we end up with a combined file with non-unique ids which causes ArcGIS Online to fail.

Personally I don't believe that should be within the scope of geojson-merge. I see these GeoJSON utilities like unix text processing commands, they should focus on doing one job and handle complex scenarios via constructing them in a chain via pipes.
As such how about piping them through https://github.com/andrewharvey/geojson-id-streaming which will reset the id's.


Document the expected behaviour of channel state for the corresponding channel handshake application callback

Summary
Add documentation indicating that expected channel state on each of the 4 channel handshake callbacks:

OnChanOpenInit: not written in state yet
OnChanOpenTry: not written in state yet
OnChanOpenAck: channel written in state OPEN
OnChanOpenConfirm: channel written in state OPEN

Problem Definition
The handshake steps have different ordering with respect to updating core state. The expected behaviour is unclear without looking at core IBC code
Proposal
Add documentation to channel handshake docs indicating the expected behaviour for each callback

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged/assigned

Closing issue given that we are moving away from using channel handshakes with eureka


mix: Set cowboy dependency to only :dev and :test

Cowboy 1.x is needed to run tests, however the only runtime dependency of this project is Plug itself.
Removing Cowboy as dependency will allow this library to run with other HTTP servers, like Cowboy 2.x.
Fixes issue #38.

Before:
Building basic_auth 2.2.2
  Dependencies:
    cowboy ~> 1.0 (app: cowboy)
    plug ~> 0.14 or ~> 1.0 (app: plug)
  App: basic_auth
  Name: basic_auth
  Files:
    lib
    lib/basic_auth
    lib/basic_auth.ex
    lib/basic_auth/configured.ex
    lib/basic_auth/response.ex
    lib/basic_auth/with_callback.ex
    LICENSE.md
    mix.exs
    README.md
  Version: 2.2.2
  Build tools: mix
  Description: Basic Authentication Plug
  Licenses: MIT
  Links:
    github: https://github.com/cultivatehq/basic_auth
  Elixir: ~> 1.0
Package checksum: d2ce0c5336ea4544c1a3a1542ad70c7f2e3f67d08fb0d2494355d337d6a027db

After:
Building basic_auth 2.2.2
  Dependencies:
    plug ~> 0.14 or ~> 1.0 (app: plug)
  App: basic_auth
  Name: basic_auth
  Files:
    lib
    lib/basic_auth
    lib/basic_auth.ex
    lib/basic_auth/configured.ex
    lib/basic_auth/response.ex
    lib/basic_auth/with_callback.ex
    LICENSE.md
    mix.exs
    README.md
  Version: 2.2.2
  Build tools: mix
  Description: Basic Authentication Plug
  Licenses: MIT
  Links:
    github: https://github.com/cultivatehq/basic_auth
  Elixir: ~> 1.0
Package checksum: 2121ea549204cce6619d7245c377651c1a3fbc55d2d77b337417adf1fddb6cb8

So no more runtime dependency on cowboy.

Thanks @m45t3r! Looks good :+1:


chore: "chore: refactor chat provider"

Reverts oaknational/oak-ai-lesson-assistant#214. I accidentally clocked merge on the wrong PR and we don't have the merge protection enabled

:tada: This PR is included in version 1.10.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


staticpod/installer: get rid of sleep in sync loop

We had a time.Sleep in the installer controller sync loop to delay progress such that load balancer have time to notice ready pods. This is awkward. There is the sync queue, just return and requeue after the given time.

LGTM
how do you run an e2e job against the PRs in this repo?

/lgtm


feat: add repository visibility (public/private) to output

Pull Request

Proposed Changes

Our priority was to archive public repositories that were not updated in a certain amount of inactive days.  This PR adds that information to the output.

[x] update code/tests for new visibility column

Readiness Checklist
Author/Contributor

[x] If documentation is needed for this change, has that been included in this pull request
[x] run make lint and fix any issues that you have introduced
[x] run make test and ensure you have test coverage for the lines you are introducing

Reviewer

[x] Label as either bug, documentation, enhancement, infrastructure, or breaking

ok.  really broke it.  fixing locally and getting my linting check working locally to match remote. 😄

Removed the line that I forgot to remove.  Now the linter (in GitHub Actions) for this line is saying the closing quote needs to be on a new line.  Local syntax does not like that.  I can't run make test or make lint without it being on line 910 to close the quoted string. 🤔 🤞 this latest run will pass. 😄

Teamwork! Wohoo! 🎉

This will be the 2nd time I've forgotten that GitHub Actions doesn't show \n, it does an actual newline. 🤦  Thank you for getting this closed out @zkoppert.  🙇


[BUG] all BATS and TBATS objects share models, have side effects on each other

All BATS and TBATS instances share a single model, since it is instantiated in the class, rather than in the object.
That leads to silent, hard to detect errors, where fitting one (T)BATS model fits all such models.
Instead, fitting one (T)BATS instance should not impact other instances in any way.

resolved by #2170.


Update Mesos doc

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/4178/
Test FAILed.

jenkins, test this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/4182/
Test PASSed.

@cheng-chang, PTAL thanks

alluxio-bot, merge this please

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/4254/
Test FAILed.

alluxio-bot, cherry-pick this to branch-2.0 please.


transfer from bitbucket

Before merging

[x] add the save/load kernels

Need https://github.com/scilus/scilpy/pull/342

Before we merge this, can you add the
--b_thr B_THR to the options of the nextflow and scil_compute_freewater.py command please
Same for NODDI

Done


Bad performance when query a table which has many columns(100+)

Describe the bug
When query two columns in a wide table (table1) which has many columns, in this case is 178 columns.
I found that BlockConvertTime in query profile takes majority of query time. The information is like following picture.

But when I create a new table (table2) which has only 5 columns and has the same number of rows with table1. And a same query is executed for table2, BlockConvertTime becomes extremely low.

So, there is some space which can be improved when Doris handle wide table.

When I looked into code, I found the only difference between these two query is that in wide table, we will create a wide RowBlock for it, and these may lead to a wide memory range. And data in row block is arranged row by row, which means data in some column is not close. And this is bad for CPU cache.
So I change the RowBlock's implementation in that RowBlock will only reserve memory for columns that will be used in query not in table schema. After this change, the BlockConvertTime reduce a lot. For the query for wide table (table1), the profile becomes like the following picture.

So, I think the problem has been fixed. and I will push this patch later.


Horizon's /offers endpoint does not streaming, contrary to docs

Reported here: https://discord.com/channels/897514728459468821/912466080960766012/1166495432034234458

Hi, there! Got this removed from the table in PR #270. Preview URL: <pending>


Merge ttc and dfont logic

Right now TTFont has different indices for them, and with different default behaviors:
        def __init__(self, file=None, res_name_or_index=None,
                        sfntVersion="\000\001\000\000", flavor=None, checkChecksums=False,
                        verbose=False, recalcBBoxes=True, allowVID=False, ignoreDecompileErrors=False,
                        recalcTimestamp=True, fontNumber=-1, lazy=None, quiet=False):

The res_name_or_index is the dfont index, and fontNumber is the ttc index.

(Related to #229)

Doesn't "res_name_or_index" also apply to the old resource-fork suitcase format, as well as the data fork (.dfont) one?
Or maybe we don't care anymore about resource forks? (cf. https://github.com/behdad/fonttools/issues/221)

We shouldn't care about these.

We want to kill all Mac-specific code after adding Carbon-independent dfont support.


Updating initialization to allow unconfigured network stacks

This PR fixes #33 by allowing the client to be constructed even if the network stack is not fully initialized and may generate errors.

Can this be squashed/merged? This solves the same issue that #36 will also have to deal with (due to keepalive disconnects).