problem of fake position fusion

When there are not any horizontal aiding fusion sensor,the fake position fusion is active.
But in ecl ekf  code,last known north-east position is not update when gps or flow change state from valid to invalid.
In ecl ekf code,Only one last known position updating is found as followed:
if (_flow_data_ready && (_imu_sample_delayed.time_us > _flow_sample_delayed.time_us -
uint32_t(1e6f*_flow_sample_delayed.dt) / 2)) {
// Fuse optical flow LOS rate observations into the main filter only if height above ground has been updated recently
// but use a relaxed time criteria to enable it to coast through bad range finder data
if (_control_status.flags.opt_flow && isRecent(_time_last_hagl_fuse, (uint64_t)10e6)) {
fuseOptFlow();
_last_known_posNE = _state.pos.xy();
}
_flow_data_ready = false;
}
Actually I think _last_known_posNE should be updated in gps fusion or other horizontal sensor fusion.

Actually in fake position fusion, if it's changed from other horizontal sensor fusion to none horizontal sensor fusion state, position and velocity all is reset , so the position and velocity innovation would not be so large that make ekf diverging.If it's as above thinking, there is no need to update _last_known_posNE.

Actually in fake position fusion, if it's changed from other horizontal sensor fusion to none horizontal sensor fusion state, position and velocity all is reset , so the position and velocity innovation would not be so large that make ekf diverging.If it's as above thinking, there is no need to update _last_known_posNE.

That's correct. When switching to fake fusion, the position estimate is reset to _last_known_posNE here:
https://github.com/PX4/PX4-ECL/blob/da9f314b69585ba169d033fec293e9ea48b9d1fd/EKF/ekf_helper.cpp#L184-L187

void Ekf::controlFakePosFusion()
{
// if we aren't doing any aiding, fake position measurements at the last known position to constrain drift
// Coincide fake measurements with baro data for efficiency with a minimum fusion rate of 5Hz
if (!isHorizontalAidingActive()
    && !(_control_status.flags.fuse_aspd && _control_status.flags.fuse_beta)) {

	// We now need to use a synthetic position observation to prevent unconstrained drift of the INS states.
	_using_synthetic_position = true;

	// Fuse synthetic position observations every 200msec
	if (isTimedOut(_time_last_fake_pos, (uint64_t)2e5)) {

		// Reset position and velocity states if we re-commence this aiding method
		if (isTimedOut(_time_last_fake_pos, (uint64_t)4e5)) {
			resetHorizontalPosition();
			resetVelocity();
			_fuse_hpos_as_odom = false;

			if (_time_last_fake_pos != 0) {
				ECL_WARN_TIMESTAMPED("stopping navigation");
			}

		}
		_time_last_fake_pos = _time_last_imu;

		Vector3f fake_pos_obs_var;

		if (_control_status.flags.in_air && _control_status.flags.tilt_align) {
			fake_pos_obs_var(0) = fake_pos_obs_var(1) = sq(fmaxf(_params.pos_noaid_noise, _params.gps_pos_noise));

		} else {
			fake_pos_obs_var(0) = fake_pos_obs_var(1) = sq(0.5f);
		}

		_gps_pos_innov.xy() = Vector2f(_state.pos) - _last_known_posNE;

		// glitch protection is not required so set gate to a large value
		const Vector2f fake_pos_innov_gate(100.0f, 100.0f);

		fuseHorizontalPosition(_gps_pos_innov, fake_pos_innov_gate, fake_pos_obs_var,
					_gps_pos_innov_var, _gps_pos_test_ratio);
	}

} else {
	_using_synthetic_position = false;
}

}
If current horizontal sensor state change from valid to invalid,and there is no other horizontal sensor,the second if function
isTimedOut(_time_last_fake_pos, (uint64_t)4e5) will be return true,and then the pisition will be reset to _last_known_posNE.
Actually as the name of varible _last_known_posNE,It's should be last known position.So that,should we must update _last_known_posNE when there is any horizontal sensor?

@garlinplus I fixed it in #943 , thanks!


Add default voice channel

Work in progress

 auto-summon not working as expected

Might be better to use the \json config and specify multiple default voice channels and then have Giesela try to join them all, so it’s not just one server. (I see why you did the find_home_channel the way you did)

@siku2 You like that idea (the one above)?

I support the idea but it should probably be a dictionary whose keys are the server ids and the value is the corresponding voice_channel id.
Inside the find_home_channel one could then check if server.id in self.config.default_voice. If that's the case, just return server.get_channel(id) (id stands for the voice channel id, so id = self.config.default_voice[server.id]). if the server doesn't have a default_voice channel assigned to it, continue with the old way.

@siku2 Sounds good, yeah. Will get that squared away.

Will close this for now.


Connection ID is in the wrong format iOS ? (Websockets)

I am getting this error when trying to connect to a websocket server using the framework. Is this project still working with iOS9 ?

The file---README is too old.Could you please provide someting new? I am a novice, I want the right guidance.

@ohnomycoco

iOS 9 is supported


Fix tabBar rendering when initialPage is last page

We always need the next tab to update the tabBar unless there is no next tab.

(just saw that this fixes #182)


/db/* routes are not properly redirected when deployed outside of ember serve.

Expected behavior:
After ember build -prod is run and the files from /dist are copied to an Apache or IIS server that has been configured to redirect all nonexistent URLs to index.html, I should be able to login.
Actual behavior:
Any request to http://{url}/db/* is not redirected and I am unable to login. I can only login from a server started using ember serve.
What rewrite rules are enabled to make the database routes work?
Steps to reproduce:
Copy the contents of the /dist folder to an Apache or IIS server's document directory. Enable rewrite rules so that anything that returns a 404 gets sent back to index.html (standard procedure for other Ember apps).
In Apache, set a .htaccess file to have:
FallbackResource /index.html
or in IIS, set web.config to include:
<rewrite>
      <rules>
        <rule name="DynamicContent">
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="True"/>
          </conditions>
          <action type="Rewrite" url="index.html"/>
        </rule>
      </rules>
    </rewrite>

OS and Browser:
Apache on Windows 10,
IIS 8 on Windows Server 2012,
Chrome & Edge Browsers

@anjayajodha if you are intending to run in a production environment (eg outside of ember serve), you need to use the https://github.com/HospitalRun/hospitalrun-server project.  The hospitalrun-server project is the one for production deploys and contains all the routes you need.  Also, you do not need IIS or Apache as the server runs via node.js

@jkleinsc Thanks for the clarification! I hadn't read the documentation for each repo correctly. It's working beautifully now.  Cheers!


Bigcleanup

So this is a big pull request with a bunch of cleanup and formatting stuff.
a few chunks of code removed, lots of whitespace fixes, moving some things around to make everything a bit clearer.

Tested in chrome and firefox on OSX, going to test on windows when I get a chance

There seems to be a glitch - the reset button doesn't clear the screen.

is that happening consistently for you? I'm not able to reproduce it on chrome or firefox

wait I download the timekeeper-cleanup instead of the bigcleanup branch, sorry, will give i a go now.

[just deleted misleading posts above]
Found one minor glitch - clicking on the "Livecodelab 2.0" box on the top-left used to bring up a small dialog, it doesn't anymore.

ah ha, good spot. just fixed it. I'm going to give this a go on a windows machine now. and assuming there's nothing terribly broken with it I'd like to get it merged

cool let me know how it goes.

ok, Chrome on windows works just fine. both sound and visuals.
On IE11, it's not so great :( the framerate is pretty poor, hanging around 17 to 20 fps. The audio doesn't work. This does seem to be exactly the same as when running against the currently released version though, so nothing seems to be broken that wasn't already

K if it's same as current release let's merge and take it from there then.

awesome, some of this will help make some of the other stuff I have in mind easier


Feature - Rocket Chat websocket support

Please answer the following questions.
Which version of matter bridge are you using?
run matter bridge -version
9.0
If you're having problems with matter most please specify matter most version.
n/a
Please describe the expected behavior.
Feature request - instead of using web hooks for rocket i'd like to see web sockets.   This allows us to bridge matter most and rocket when we have matter most not externally accessible but rocket is.
They've already got a Huebot for rocket that uses web sockets so integration shouldn't be too hard to wire the 2 up and wrap it with some config logic.
MIT licence as well.
https://github.com/RocketChat/hubot-rocketchat

The problem is that rocketchat uses meteor for this and there isn't a meteor (https://www.meteor.com/) go library,  (and I don't have the motivation to write one myself).
I'm open for someone to implement this, but this won't be me (for now)


Add copy current line position function in right-click menu or hot key

I'm getting used to jumping to a file position by entering a position message in the top search bar, like 'src/test/test.py:234'. Whenever I want to share a file position with someone, I wish I could just click an option in the right-click menu to copy the current cursor's file position in the editor.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


very slow to verify elements with ElementsCollection in a list

The problem
very slow to verify elements with ElementsCollection in a list
Details
I have a test to verify the content of an item in a list, the test looks like the following
package org.example;

import com.codeborne.selenide.*;
import com.codeborne.selenide.ex.ElementNotFound;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;

import java.time.Duration;

import static com.codeborne.selenide.CollectionCondition.sizeGreaterThan;
import static com.codeborne.selenide.Condition.*;
import static com.codeborne.selenide.Selenide.$$;
import static com.codeborne.selenide.Selenide.element;
import static com.codeborne.selenide.WebDriverRunner.getWebDriver;

public class MainTest {

    @Test
    public void verifySubscriptionItemsForOrder() throws Exception {
        Configuration.pageLoadTimeout = 50000;
        Selenide.open("http://<IP_ADDRESS>:8080/my_account4/My%20Account.html");
        getWebDriver().manage().window().maximize();
        LoggerUtils.logMethodTime("find all subscriptions related to the order");
        //find the subscription items for an order in subscription list, basically it retrieve all subscription items and filter by order id.
        ElementsCollection subscriptions = this.findSubscriptionItemsByOrderId("O-0000017865");
        LoggerUtils.logMethodTime("find the subscription related to the product");
        //find the subscription for the product SIMATIEDL, it uses the method `ElementCollection.filter()` to find the target subscription.
        SelenideElement target = this.findSubscriptionItem(subscriptions, "SIMATIEDL", 1);
        LoggerUtils.logMethodTime("verify product name.");
        target.find(By.cssSelector("span.cc_col_subscription_prod_name a")).shouldHave(exactOwnText("Industrial Edge Management License"));
        LoggerUtils.logMethodTime("verify subscription id");
        target.find(By.cssSelector("span.cc_goto_subscription_details")).shouldHave(matchText("^SB-.*"));
        LoggerUtils.logMethodTime("verify subscription recurring price.");
        target.find(By.cssSelector("span.cc_col_subscription_recurring_price")).shouldHave(ownText("USD $"));
        LoggerUtils.logMethodTime("finished to verify subscription recurring price.");
    }

    private ElementsCollection divSubscriptionItems = $$("div.subs-expands");

    public ElementsCollection findSubscriptionItemsByOrderId(String orderNumber) {
        ElementsCollection subscriptions = divSubscriptionItems.filter(childExactText(
                By.xpath(".//div[contains(@class,'subscription-data')]//div[contains(@class,'sub-heading')]"), orderNumber
        )).shouldBe(sizeGreaterThan(0));
        return subscriptions;
    }

    public SelenideElement findSubscriptionItem(ElementsCollection subscriptionItems, String sku, int inCartQuantity) {
        SelenideElement target = subscriptionItems.filter(childAttributeValue(By.cssSelector("span.cc_col_subscription_prod_name a"), "data-id", sku))
                .find(childExactText(By.cssSelector("div.subscription-data div.cc_col_subscription_status"), String.valueOf(inCartQuantity)))
                .shouldBe(exist);
        LoggerUtils.logMethodTime("the target subscription item is found in the list.");
        target.scrollIntoView(true).shouldBe(visible);
        return target;
    }

    public static Condition childExactText(By childBy, String text_) {
        return new Condition("childExactText") {
            @Override
            public CheckResult check(Driver driver, WebElement node) {
                String childText = null;
                Duration timeout = driver.getWebDriver().manage().timeouts().getImplicitWaitTimeout();
                try {

                    driver.getWebDriver().manage().timeouts().implicitlyWait(Duration.ZERO);
                    childText = element(node).find(childBy).getOwnText().trim();
//                    childText=node.findElement(childBy).getText().trim();
                } catch (ElementNotFound e) {
                } finally {
                    driver.getWebDriver().manage().timeouts().implicitlyWait(timeout);
                }
                if (childText == null)
                    return new CheckResult(false, "the exception NoSuchElementException is occurred.");
                return new CheckResult(childText.equals(text_), childText);
            }
        };
    }

    public static Condition childAttributeValue(By childBy, String key, String value) {
        return new Condition("childAttributeValue") {
            @Override
            public CheckResult check(Driver driver, WebElement node) {
                String childText = null;
                Duration timeout = driver.getWebDriver().manage().timeouts().getImplicitWaitTimeout();
                try {
                    driver.getWebDriver().manage().timeouts().implicitlyWait(Duration.ZERO);
//                    childText=element(node).find(childBy).getAttribute(key).trim();
                    childText = node.findElement(childBy).getAttribute(key).trim();
                } catch (ElementNotFound e) {
                } finally {
                    driver.getWebDriver().manage().timeouts().implicitlyWait(timeout);
                }
                if (childText == null)
                    return new CheckResult(false, "the exception NoSuchElementException is occurred.");
                return new CheckResult(childText.equals(value), childText);
            }
        };
    }
}

the output says the performance is not good
10:40:56.111 [main] INFO  org.example.LoggerUtils - [time] org.example.MainTest#verifySubscriptionItemsForOrder:30 => find all subscriptions related to the order
10:41:19.957 [main] INFO  org.example.LoggerUtils - [time] org.example.MainTest#verifySubscriptionItemsForOrder:32 => find the subscription related to the product
10:41:36.673 [main] INFO  org.example.LoggerUtils - [time] org.example.MainTest#findSubscriptionItem:56 => the target subscription item is found in the list.
10:42:09.007 [main] INFO  org.example.LoggerUtils - [time] org.example.MainTest#verifySubscriptionItemsForOrder:34 => verify product name.
10:42:26.156 [main] INFO  org.example.LoggerUtils - [time] org.example.MainTest#verifySubscriptionItemsForOrder:36 => verify subscription id
10:42:44.047 [main] INFO  org.example.LoggerUtils - [time] org.example.MainTest#verifySubscriptionItemsForOrder:38 => verify subscription recurring price.
10:43:00.742 [main] INFO  org.example.LoggerUtils - [time] org.example.MainTest#verifySubscriptionItemsForOrder:40 => finished to verify subscription recurring price.

I found it took about 20s and more to verify the content of the target element, I suppose the target element is located and cached by the method this.findSubscriptionItem(), it should not take so much time, It should be very fast, it seems the target element is re-evaluated every time when verifying the content, I am not sure if it is a performance issue of selenide library? could you help me on this, how can I optimize the code to improve performance?
Tell us about your environment

Selenide Version:  6.0.3
OS Version:  windows 11

Code To Reproduce Issue [ Good To Have ]
https://github.com/jinlxz/stackoverflow_questions

go the test resource folder src/test/resources, start a HTTP server with port 8080 and serving the files under test resource folder, so that we can test against it, I used python command python -m http.server --bind <IP_ADDRESS> 8080
please run the unit test org.example.MainTest#verifySubscriptionItemsForOrder to reproduce the issue

@jinlxz Why you think target is cached? No, by default Selenide doesn't cache anything.
First of all, I recommend you to avoid all this complex combination of loops. filters, xpaths and css selectors, and just write a single xpath to find the element you need. finding element by a single xpath is always much faster than any loops/filters.
Secondly, what implicit timeout you use? If you use Selenide, please don't set implicit timeout to any number except 0.

@asolntsev the target element is retrieved in the method findSubscriptionItem, which calls target.shouldBe(visible), this call should evaluate and find the element, return it, I thought it will not try to locate the target element again when it executes target.find(subEle). shouldBe(...) in following statements, if it is not the case, can we cache the target element to improve performance?
about your suggestion, in some other cases I need to verify multiple items in the list, these items are generated in prior steps dynamicly, so it's difficult to get the exact and stable xpath or css locator for them, so I used filter here
I don't set implicit timeout in the test, it uses default value.

in some other cases I need to verify multiple items in the list, these items are generated in prior steps dynamicly

Sorry, I don't understand this argument.
I suggest you to generate By or xpath (or a part of xpath) on previous steps instead of SelenideElement. Sure, it's doable.

@jinlxz Yes, it's possible to cache the target element. And few more optimizations: see PR https://github.com/jinlxz/stackoverflow_questions/pull/1
But the search of target is still slow because you execute webdriver method getOwnText() in a loop for 600+ elements. Every webdriver call takes time. It's always a good idea to avoid repetitive webdriver calls in a loop. It's always better to find a single query (xpath, css or JavaScript code) to find the needed element by a single webdriver call.
After my optimizations these are the slowest steps in your test:
|open          |http://<IP_ADDRESS>:8080/my_account4/My%20Account.html         |PASS      |3411      |
|MainTest      |find all subscriptions related to the order                 |PASS      |15603     |

@asolntsev  Thanks for your help, the method ElementsCollection.snapshot() really improves the performance a lot, I will also try to optimize the xpath to reduce the total number to items for iteration, Thank you again.

@asolntsev  also it will be very helpful if we can implement a method cached() on SelenideElement.

@jinlxz Thank you for the good example.
I registered few feature ideas that came from this discussion:

https://github.com/selenide/selenide/issues/2171
https://github.com/selenide/selenide/issues/2172


Bicep Community Call - October '23

We are hosting our October Bicep Community Call Thursday, October 26th at 9AM PST!
(We will switch off from 9AM to 2PM PST every other month to accommodate for different time zones)
Use this issue to address topics you would like to discuss, questions you have for our team, further demos you would like to see, and any high or low points you would like to share. This is an open space for our users to discuss any topics they would like to talk about with our team.
You can list topics of discussion in this thread OR you can ask questions during the Q&A portion of the call.
Please sign up here to get an invite to the call. See you there!

When compile-time imports will be out of preview and are there any other features planned for it than the current?

We utilize bicep and love the features that you have came out with and have on the roadmap.  I'm new to the Community, so if I ask something asked before, please understand my ignorance.

TL;DR
In particular, user defined functions are particularly useful, and if we could import those into a bicep module or if they could be added to the code library as part of the deployment, that would make our lives so much easier.

Use Case:
Our use case is in the creation of names that comply with our naming standard.  We have about 10 production environments, and in multiple azure regions.  We calculate the names everywhere.  For example, we have a module that creates say a key vault, we pass in some parameters including the vnet that it is supposed to be attached.  We want to use the function to "calculate" the name of not just the resource which is the subject of the module, but also all of the corresponding names such as VNet.   As such, the VNet name calculation is in almost every module.
If we could have one .bicep file that had all of our "calculation features" and imported that .bicep into our module, then we would only have to change one place to change our naming standards.

again.. new to the community.  forgive any reasks

TL;DR
Because of the nature of some resources, child elements should be added in as part of later bicep processing, but can't be because if all of the child items aren't defined, the declarative nature of the parent will build the parent without those children causing outages.  If there was a way to signal "don't destroy children on update", it would allow much less complicated code to be written.

Use Case:
Application Gateway takes forever to build.  There is the "platform" part of the build - making the hub, getting the application gateway installed. and then there is the "application" part of the build - each application specifies the listeners, backends, and rules that it requires.
Because of the nature of the Application Gateway, we had to have a special process to build the application gateway, and run it separately.  Our goal is to have it so that the entire "bicep definition" can be ran over and over, but can't unless we create all of the "rules" as part of our appgtwy definition.  This breaks the separation of concerns between the platform team and the application team.
Other examples include:
Virtual network/subnets - fails to resize if there are devices connected
Firewall Policies and IP Groups

Please take a look at #4293  . A clear communication on whether this will be fixed by the team, or users need to look for workarounds on their end, would be much appreciated.

@JeffSOAGuy
AGW is a pretty egregious example of a resource that was never designed for efficient IaC, but it's not a Bicep issue per se. It has been brought up previously how to handle this, and it can be done with workarounds.
Imagine only being able to create a Kubernetes cluster if you also include the workload definitions at bootstrap time...
Personally I have an initial run where I create the gateway with dummy values just to have it created. Then I do a second run where I import the existing:
resource agw 'Microsoft.Network/applicationGateways@2022-11-01' existing = {
  scope: rg_agw
  name: 'agw'
}

Create new config:
param urlPathMap array = [
  { ... }

And update the gateway with a mix of the imported values and new ones:
module updated_agw '../modules/network/application-gateway/main.bicep' = {
  scope: rg_agw
  name: 'agw'
  params: {
    //re-use
    resourceTags: agw.tags
    location: agw.location
    ...
    //new ones
    urlPathMaps: urlPathMap

There's also some conditionals in the module that handles switching path-based vs default rules, etc. so the Bicep code isn't necessarily pretty, but it means I can re-run the different layers without anything breaking. Guessing you're doing something similar.
I like the concept of "keep the child resources", but most of the root cause lies with the resource providers so that would probably mean Bicep would have to implement something similar to the import & re-use hack client side. Which would probably bring a separate set of challenges :)

Sorry I can't attend, but I would like to drop 2 questions:
First one is about Azure Search
Are there any plans to make it possible, through Bicep, to create/update the following components?:

datasources
indexes
indexers
index-alias
etcetra.

We are now using an extended version of your[ Powershell script](https://github.com/Azure-Samples/azure-search-deployment-template/blob/main/bicep/SetupSearchService.ps1 .. this uses the Azure Search instance REST-API) and is executed by Microsoft.Resources/deploymentScripts, but it would be cleaner and more maintaneble to do this through Bicep.
Like the way we can do this with Azure Data Factory for example.
Second one is about CosmosDB Accounts (but maby not really for this meeting):
When you use a CosmosDB Account in your architecture, the time it takes to deploy this through Bicep is really high. 7 minutes is the minimum per account. This was in the past maby around 2/3 minutes and that was acceptable. Can this have some attention and prio?
I raised a issue about this today with the nitty/gritty details: https://github.com/Azure/bicep/issues/12201
Thank you in advance!

Radius launched which is using a fork of Bicep with the intent of upstream work. Does this mean there is a good chance for third-party extensibility of Bicep 🤞? I think Bicep has huge potential to evolve outside of Azure.
Bicep CLI seems like it is in a weird state. I think this has been discussed before.

Unable to lint bicepparam

Workaround: build-params instead

Unable to change diagnostics-format on build-params

Workaround: build-params and parse output to convert into the format I need

Bicep CLI seems like it is in a weird state. I think this has been discussed before.

Unable to lint bicepparam

Workaround: build-params instead

Unable to change diagnostics-format on build-params

Workaround: build-params and parse output to convert into the format I need

Have you created an issue for this? These feel like bugs which are probably relatively easy to fix.

My team would love some more information on the future perspectives of the Bicep testing feature. I know that you have previously given a short introduction on a community call, but the focus was largely on the ability to test simple properties like name and location. We would like to hear your thoughts on the following:

The extent to which the feature may be able to test the impacts of expressions in a Bicep template
The extent to which the concept of mocking deployment time properties and functions could increase the scope of what a Bicep test can cover
Possibilities for mocking sub-modules in a Bicep module to test isolated units
If you have concerns by now that certain parts of a Bicep template are unrealistic to cover via the testing feature, and your thoughts on alternatives
Your current thoughts on how the new Bicep testing feature can complement the existing approach to testing seen in Bicep registry modules (BRM), for instance assertions on the deployed resources

If you would rather wait a bit longer before discussing this feature further, that is fine as well!
But overall, we are very happy about the development we have seen in Bicep recently!

👍🏼 to this question/request. My customers are also interested in this experimental testing framework. Now, when HashiCorp released a similar capability for Terraform, it would be great to have a built-in framework for Bicep.

It would be interesting to learn how the use of bicep in Radius was made possible https://docs.radapp.io/guides/recipes/overview

Dear Bicep team,
Hopefully an easy answer:
While developing modules hosted in an ACR we're having caching issues once someone has deployed said modules; some versions the VSCode intellisense updates after a short wait, others a few minutes, still others 15 hours later it still hasn't refreshed.
For example I develop a new storage module, the prior was versioned 1.0.1, but now I've added some new feature and pushed version 2.0.0 to the ACR.  It is an unknown amount of time before VS Code intellisense picks up said ACR image update.
Is there a simple fix to, what appears to be, remedy this caching issue when we're developing Bicep modules en masse?
Appreciate your help, amazing Bicep team! 💪
P.S. secondary question that takes much lower priority, but related to testing questions above, is there any sort of "import" feature planned like we have with Terraform?  e.g. I can compare the state of my currently described Bicep against a target resource (or resources) to ensure what I have defined encapsulates the desired state that has been configured in my tenant.
I know we already have the ARM export, and that's mostly helpful, yet especially when we have developer-manually-configured sandboxes and attempting to modify Bicep to match that which was done by hand, such a feature would be (T)errific.

@JeffSOAGuy AGW is a pretty egregious example of a resource that was never designed for efficient IaC, but it's not a Bicep issue per se. It has been brought up previously how to handle this, and it can be done with workarounds.

It would be good to be able to do this as an Exists(subscriptionID, Resource Group Name, Resource Name): Boolean [or exists(resourceId)] function. If there was a function that would return a boolean on if this resource already existed, then the IF exist(subscriptionId, resourcegroupName, Resource) on the module would allow one code based that could handle both the "build" and skip if not build.

That would be this one :)
https://github.com/Azure/bicep/issues/4023

@stephaniezyen - has the invites for the call gone out? I just realized getting ready I only had the placeholder I created myself in my calendar without the join link :) (Signed up for receiving to a new email address.)

@ahelland Here is the link! https://teams.microsoft.com/l/meetup-join/19%3Ameeting_NDQ2NTBkNjYtNmYzMC00YmQyLTk0ODQtN2UxYzc5N2E3NTlh%40thread.v2/0?context={"Tid"%3A"72f988bf-86f1-41af-91ab-2d7cd011db47"%2C"Oid"%3A"b8e09be2-a24e-4e83-bbec-c1ff25343fa1"} Invites went out last week so if you signed up between then and now, there wasn't a second invite that went out this time, sorry!

Radius launched which is using a fork of Bicep with the intent of upstream work. Does this mean there is a good chance for third-party extensibility of Bicep 🤞? I think Bicep has huge potential to evolve outside of Azure.
Bicep CLI seems like it is in a weird state. I think this has been discussed before.

Unable to lint bicepparam

Workaround: build-params instead

Unable to change diagnostics-format on build-params

Workaround: build-params and parse output to convert into the format I need

EDIT Moved to #12278 as suggested by anthony.

Third party non-ARM dependent extensibility would bring Bicep to another level. This was initially requested in some of the 2022 calls when extensibility efforts were announced, I am really interested in the current status. This would not only make Bicep suitable as a full Terraform replacement, it would also enable software vendors to created their own Bicep definitions for customers to use.
Would love to see see this soon!

@stephaniezyen will there be another call this year or will we meet again in 2024?


Fix GermEval 2014 dataset infos

Hi,
this PR just removes the dataset_info.json file and adds a newly generated dataset_infos.json file.

Hopefully. this also fixes https://huggingface.co/nlp/viewer/ then :)

Oh good catch ! This should fix it indeed


Add Resilience configuration options

Is your feature request related to a problem? Please describe.
When dealing with Destination services, it is quite often necessary to re-send an API call against a given endpoint. In our case, we (i.e. SAP Graph Team) have the need of sending "hundreds" - and potentially "thousands" - of requests against Destination service.
To reach such behaviour, today a developer needs to implement it by his/her-self with an additional layer of custom code (and it should not be build on every SDK-based project again and again...).
Describe the solution you'd like
As already in place in Java version of Cloud SDK (see ResilienceConfiguration.RetryConfiguration), it would be great to add ResilienceConfigurationOptions - in particular, the retry config - also to JS/TS version of CloudSDK, enabling (at least) the followings:

option-set from Java version;
non linear delay in the resilience;
option for switching on in getDestination, executeHttp, execute and fetchDestination;
possibility to add an interceptor's callback method.

Impact / Priority

Affected development phase: Product Release
Impact: Impaired and feature fix Blocked
Timeline: Upcoming Product release.
Additional context
Already had a short discussion with @FrankEssenberger.

This could be a quick win to include it: https://www.npmjs.com/package/axios-retry

Hey, @mtamagnini
We use Resilience4j in Java which simplifies things a lot. When starting the JS SDK there was no good library to integrate.
We might reconsider it in 2022 but I doubt we can release anything soon. That's why I'd recommend using available libraries together with SDK. Frank already suggested axiso-retry. Here is a couple of the most popular libs:

https://genesys.github.io/mollitia/
https://github.com/connor4312/cockatiel

Please, share the results of your experiments, or let's have a call when you gain some experience to discuss potential convenience options.

My teammates also mentioned that circuit breaker is integrated in the SDK with https://github.com/nodeshift/opossum
Sadly there's no developer documentation on the portal, you'll have to take a look in the API docs. cc @marikaner

Here a second use asked about resilience: https://answers.sap.com/questions/13572567/cap-transient-error-handling.html# Potentially we should increase priority on this.

So after a long time there is some progress and we created a ADR to implement a resilience on a flexible middle ware approach: https://github.com/SAP/cloud-sdk-js/pull/2320 as graph team colleagues @mtamagnini  @Johannes-Schneider could you perhaps give quick feedback if the ADR goes in the right direction?

Hey @FrankEssenberger,
Did you actually mean to ping me in this issue?

No I wanted to ping @johenning from the sap graph team. Sorrt.

@FrankEssenberger I wasn't super involved with this topic, but as far as I can tell the ADR looks good 👍

Thanks for the feedback. We tried to make it possible to also bring a custom solution in case the options are not flexible enough.

Hi @mtamagnini
I know this issue has been open for a long time. Wanted to let you know that for version 3 of the sdk we are working on a generic middleware/resilience approach that also includes retry. It is implemented in this pr but not yet released. If nothing unexpected happens this should be part of v3 of the sdk. I can't promise a specific release date.
Hope this helps,
Florian


Sigma value is displayed to be zero although it is nonzero

I'm submitting a ...

[x] bug report
[ ] feature request
[ ] code improvement request

Expected behavior
How should it work (with the bug fixed or the feature implemented)?
A fitted sigma value should be displayed correctly.
Screenshot
Actual behavior
How does it currently work (with the bug causing problems or without the feature)?
Instead of the correct sigma value, sigma is displayed to the user to be 0.
Screenshot
Fits with sigma != 0:

Model with sigma = 0:

Steps to reproduce the problem (how to see the actual behavior)

Upload the coastDat measurementfile
Fit a Normal(none,none), Normal(none,none), Normal(none,none) model to it
Inspect the fitted figures and the displayed model.

Trying to calculate a HDC with this model resulted in this error:

Trying to calculate an IFORM contour resulted in this handled error:

The sigma = 0 problem seems be solved during the work on another issue:

The calculation of a HDC also works (although it takes up the complete grid).


Variable Custom Attributes

Hi,
I need to have access to custom attributes for each variable. These attributes can be set in "Data/New Custom Attribute..." menu in IBM SPSS statistics data editor. Is there any way that I could read these attributes value from the variable object in code?
Thanks in advanced.

I have added the feature myself using appendixes.


Possible bug when IDs are the number “0”

There may be falsey checks in the source. I need to make sure the number 0 doesn’t get ignored in these situations.
This bug was reported by @ianmstew

Resolved by #299. Publishing at 2.4.1


Added NeqAssignBy trait

Description
Added NeqAssignBy trait to yewtil crate. It behaves similar to NeqAssign, but accepts a FnOnce(&U, &U) -> bool instead of relying on the PartialEq impl.
I was using reqwest::Client for fetching in my app, and was frustrated that reqwest::Result didn't play well with NeqAssign (glorious boilerplate reduction!) because reqwest::Error: !PartialEq. I understand the design decision, similar to why std::io::Error also doesn't impl PartialEq. I figured I could split the difference and just treat all Err variants as unequal with a custom equality function. This proved satisfactory, so I thought I'd share my solution.
I also reimplemented NeqAssign in terms of NeqAssignBy, in the spirit of similar *_by functions in std (e.g. Iterator::eq_by).
I am fairly comfortable with Rust, but still really new to OSS contribution. Feedback greatly appreciated!
Checklist:

[x] I have run ./ci/run_stable_checks.sh
[x] I have reviewed my own code
[x] I have added tests
[x] If this is a feature, my tests prove that the feature works

I thought about adding neq_assign_by as a trait method to NeqAssign rather than adding an entire new trait, then gating neq_assign with a trait bound on PartialEq, but that would change the blanket impl of NeqAssign which seemed potentially more invasive.


New book suggestion

I want to add book about mobile application

Building Mobile Apps at Scale: 39 Engineering Challenges - Gergely Orosz

Sure, if there is more books suggestion about mobile development then we can create a new category for it. It is okay for now.

Thanks, it is merged.


[Feature] At run time, enable/disable recording of metrics by name or context

We would like to be able to enable and disable recording of metrics that have already been defined in our registry.  It looks like the current functionality for disabling metrics at runtime only disables the recording of ALL metrics and does not provide a way to re-enable them at runtime.  We would like to be able to enable and disable subsets of metrics by their name or context.

It's possible to filter metrics from reporting but not disable. In what scenarios are you thinking that disabling individual metrics would be useful?

It would be useful for our users to have that level of control, so they can improve performance by opting out of recording metrics that they don't need.

Could implement some type of no-op/disable option on MetricsOptions, not something I've needed myself thus far though so won't implement myself, will happily take a PR though


Issue 92 validate parent path

#92
WIP, for visibility @jdigger @sagarsane

@jdigger @sagarsane ready for review

@sagarsane thanks for the feedback!  I changed a few things.  Mind having a look?

Apart from the recents comments made, CR looks good to me :+1: . I'll test this out a bit soon.

Thanks for the feedback!  Changes have been made

After some discussion, and investigation with @sagarsane ;  It looks like this will need a little bit more work.
Looks like the inputstream is opened up in the job execution listener, so the server is made aware of the transaction before it should.
For now, going to create a new step execution listener that manages the session, and extract session management from the job level.
In a future effort, we may want to separate out validation entirely into it's own job execution, and spring board into client sync.

@sagarsane this should be ready.  Haven't gotten a chance to test again yet

I like the idea of having a Tasklet step for obtaining the input stream.
Having tested this out yet or looked at it more closely but like the direction. :+1:

My testing was successful.  Let me know what you see @sagarsane

@jbornemann I will hopefully get some time over the weekend, early next week to re-test this. Haven't forgotten about it :)

+1 Testing.


Fix webpack build

What was the problem
Currently npm run build is generating non-minified file in dist folder.
Those who want to use minified files directly in the browser directly from a CDN like.
<EMAIL_ADDRESS>will be downloading ~1 mb  file.
Also, the dist/index.js file includes the package dependencies (moment, lodash...) as well.
The global variable this exposed is window.vue-tabs, this is same as your tab-component
How this PR solve these issues
This PR will instruct webpack to generate minified files.
Exclude dependencies when building by specifying externals in webpack config
Change the global variable that was vue-tabs, now VueTable. Ref
Maybe we can generate separate source maps along with .js file.

Hmm I think I'd rather just do it good from the get go and generate a .js and a .min.js. Only publishing a minified build would make debugging harder in development.

@sebastiandedeyne
I agree, see my updated comment on top.
What if we generate source-map file along with .min.js. Will this help in debugging?
We can run webpack twice to generate two files or may be switch to rollup.

@sebastiandedeyne
Now, I kept the PR small and no longer minify the build.


Identity change broker fallback

Update docs for new WAM stuff. Align platform errors with other languages to not throw on non-Windows platforms.

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


Add documentation for how to easily use async prompt filtering.

It's very easy with flexprompt.prompt_info(), but there's no documentation yet for how to use that.

Step 1 -- Collect info to be shown in the prompt
Make a function that collects the info that should appear in the prompt.
Make the function return a table containing the info.
-- This function uses async prompt filtering to count the number
-- of files in the current directory.
local function collect_foo_info()
    local ret = {}

    local count_files = 0

    local f = io.popen("dir /b /a-d *")
    if f then
        for line in f:lines() do
            count_files = count_files + 1
        end
        f:close()
    end

    ret.count_files = count_files

    return ret
end

Step Two -- Make it collect the info asynchronously
Make a module that calls flexprompt.prompt_info().
We'll discuss the middle two parameters later -- they can be empty strings if you don't need them.
local foo_data = {}

local function foo_module(args)
    -- Use async prompt filtering to call the collect_foo_info() function.
    local info = flexprompt.prompt_info(foo_data, "", "", collect_foo_info)

    -- Build the prompt text.
    local text = info.count_files or 0
    text = flexprompt.append_text(text, flexprompt.make_fluent_text("file(s)"))
    return text, "cyan"
end

flexprompt.add_module("foo", foo_module)

Step Three -- [Optional] Maybe reset the cached prompt info
Async prompt filtering shows the previous prompt content until the async collection function finishes.
But sometimes you may know in advance that the previous prompt content is no longer relevant.  There is a simple way to automatically discard the previous cached prompt content.
The flexprompt.prompt_info() function takes two parameters which, if either is different from the previous prompt, will automatically reset the cached prompt content.
For example, the {git} module passes the git repo root directory and the current git branch.  This is so that if you cd to a different repo or git switch to a different branch, the prompt doesn't mislead by showing info from a different repo or branch.
So, since this sample {foo} module counts the files in the current directory, it makes sense to use the current directory for one of those two parameters:
local function foo_module(args)
    -- Use async prompt filtering to call the collect_foo_info() function.
    local info = flexprompt.prompt_info(foo_data, os.getcwd(), "", collect_foo_info)

    -- Build the prompt text.
    local text = info.count_files or 0
    text = flexprompt.append_text(text, flexprompt.make_fluent_text("file(s)"))
    return text, "cyan"
end

Step Four -- Be happy
Tada!

Oh, I added documentation a while ago.  Can close as completed.


refactor: reorganise identity_wallet folder structure

Description of change
This PR will only reorganise the folder structure with no code changes whatsoever.
The only exception are the changes to the imports due to the new folder structure.
Links to any relevant issues
#140
How the change has been tested
Since it's a refactor the existing tests have been used to test it.
Definition of Done checklist

[x] I have followed the contribution guidelines for this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

A test is failing (cargo test)

A test is failing (cargo test)

This is a known issue apparently that will be fixed in a future PR :+1:

fixed in another PR


Working in Windows

Installed Triton from here:
https://github.com/woct0rdho/triton-windows
Then installed torchao 0.5.0 from source. Node works in Windows now.

how to install torchao 0.5.0?
torchao-0.1 is getting installed

OK. All the best to resolve this issue.

I actually had some weird issues with CogVideo when torchao 0.5.0 was installed with 2.4.1. Today I updated both, to 0.6.1 and 2.5.0 respectively and the weird issue is gone.
To install torchao from source I did this (in ComfyUI_windows_portable folder) git clone -b release/0.6.1 https://github.com/pytorch/ao.git cd ao ..\python_embeded\python.exe setup.py build ..\python_embeded\python.exe setup.py install
Build was failing with sparse_marlin but this fixed it: pytorch/ao#951
edit: Actually, the node isn't working now... it did with ao 0.5.0 and torch 2.4.1 yesterday. My current torchao installation might be broken or something.
"mm_dit_skip_blocks" works but "do_compile" does not.
Error when compile enabled:
!!! Exception during processing !!! self mismatch for bound method
from user code: File "G:\ComfyUI_windows_portable\ComfyUI\comfy\ldm\flux\model.py", line 159, in forward out = self.forward_orig(img, img_ids, context, txt_ids, timestep, y, guidance, control)
Set TORCH_LOGS="+dynamo" and TORCHDYNAMO_VERBOSE=1 for more information
You can suppress this exception and fall back to eager by setting: import torch._dynamo torch._dynamo.config.suppress_errors = True

I'm also seeing that error on linux and windows.
!!! Exception during processing !!! __self__ mismatch for bound method

not working and same error, maybe this is a pytorch version mismatch, I am on torch 2.5.1, not nightly

I actually had some weird issues with CogVideo when torchao 0.5.0 was installed with 2.4.1. Today I updated both, to 0.6.1 and 2.5.0 respectively and the weird issue is gone.
To install torchao from source I did this (in ComfyUI_windows_portable folder) git clone -b release/0.6.1 https://github.com/pytorch/ao.git cd ao ..\python_embeded\python.exe setup.py build ..\python_embeded\python.exe setup.py install
Build was failing with sparse_marlin but this fixed it: pytorch/ao#951
edit: Actually, the node isn't working now... it did with ao 0.5.0 and torch 2.4.1 yesterday. My current torchao installation might be broken or something.
"mm_dit_skip_blocks" works but "do_compile" does not.
Error when compile enabled:

Did you manage to find a fix?

Me too, Windows does not have the newer version? I get this error:
Traceback (most recent call last):
File "E:\AI_Files\ComfyUI\nodes.py", line 2037, in load_custom_node
module_spec.loader.exec_module(module)
File "", line 940, in exec_module
File "", line 241, in call_with_frames_removed
File "E:\AI_Files\ComfyUI\custom_nodes\comfyui-flux-accelerator_init.py", line 6, in
from torchao.quantization import float8_weight_only, int8_weight_only, quantize
ImportError: cannot import name 'float8_weight_only' from 'torchao.quantization' (E:\AI_Files\venv\Lib\site-packages\torchao\quantization_init_.py)
Cannot import E:\AI_Files\ComfyUI\custom_nodes\comfyui-flux-accelerator module for custom nodes: cannot import name 'float8_weight_only' from 'torchao.quantization' (E:\AI_Files\venv\Lib\site-packages\torchao\quantization_init_.py)_

Me too, Windows does not have the newer version? I get this error: Traceback (most recent call last): File "E:\AI_Files\ComfyUI\nodes.py", line 2037, in load_custom_node module_spec.loader.exec_module(module) File "", line 940, in exec_module File "", line 241, in call_with_frames_removed File "E:\AI_Files\ComfyUI\custom_nodes\comfyui-flux-accelerator__init.py", line 6, in from torchao.quantization import float8_weight_only, int8_weight_only, quantize_ ImportError: cannot import name 'float8_weight_only' from 'torchao.quantization' (E:\AI_Files\venv\Lib\site-packages\torchao\quantization__init__.py)
Cannot import E:\AI_Files\ComfyUI\custom_nodes\comfyui-flux-accelerator module for custom nodes: cannot import name 'float8_weight_only' from 'torchao.quantization' (E:\AI_Files\venv\Lib\site-packages\torchao\quantization__init__.py)_

It was fixed when I installed this version into the VENV: (recently released)
pip install torchao==0.7.0


fix: base 64 encoded format support of gemini-pro-vision for field im…

…age_url/url
close #838
我已确认该 PR 已自测通过，相关截图如下：

调用程序

执行程序可以正常返回结果

发送给google后台的请求

I am very sure that I need the feature.

Much thx~

could you plz put the curl below this issue, I really need this, bro~


tvOS Nested Adapter example doesn't keep offset

New issue checklist

[x] I have reviewed the README and documentation
[x] I have searched existing issues and this is not a duplicate
[x] I have attempted to reproduce the issue and include an example project.

General information

IGListKit version:
tvOS version(s): 12
CocoaPods/Carthage version: -
Xcode version: 10.1
Devices/Simulators affected: Apple TV 4K
Reproducible in the demo project? 100%
Related issues:

Debug information
Open tvOS example. Change NestedAdapterViewController field data to:
let data: [Any] = [
        "Most Recent",
        20,
        "Recently Watched",
        16,
        "New Arrivals",
        30,
        "New Arrivals",
        10,
        "New Arrivals",
        50
    ]

Steps:

Scroll to the end on Most Recent HorizontalSectionController.
Scroll to the bottom.
Expected: See 1st item on every HorizontalSectionController.
What happens: Some HorizontalSectionController that appear on screen has the same offset as first collection view.

NOTE: Preserving contentOffset won't work, since focused item is also held by collectionView. The offset will be automatically updated to different position, when you scroll fast vertically.

Is there any chance this issue will be prioritised and fixed?

@rafalszastok I'm having the very same problem and was hoping that a migration to IGListKit could fix this issue :-/. Have you tried to use UICollectionView's preferredIndexPath delegate function? I was near a working solution using this delegate function but had some other problems that I was hoping could be fixed by migrating to IGListKit.


Dependencies and dev dependencies

Should dependencies such as webpack and webpack-cli be listed under dependencies, in the package.json? I've noticed the lockfile diff due to the latest release that solves potential XSS issues.

There was a problem with separating them since post-install didn't install dev-dependencies.
https://github.com/shubhamjain/svg-loader/issues/30

If that's a CI issue, can't we explicitly call the build command in the GitHub Action instead of relying on the postinstall hook? This way dev dependencies won't be installed in consumers of the NPM package version of this library without need:
yarn
yarn build  # runs the same command as postinstall
yarn publish

The reason is that "main" file in package.json references dist/svg-loader.min.js, which is created using webpack.

I don't think I fully grasped the issue yet:

before publishing, inside the Github Action, we have access to webpack and other dev dependencies so we can correctly build in the CI. The idea is that clients don't have to install our dev dependencies as dependencies when they install external-svg-loader
running the build script will generate dist with the minified module and the sourcemap
the build:cp script will simply help on versioning the most recent minified module, but it doesn't affect publishing dince the dist folder is being shipped to NPM. This way, we only really need build:js in the CI
since dist is also shipped, the main field in the package.json will correctly resolve to the minified module

Am I missing something? Issue #30 happened since a dev dependency (npm-run-all) was required after installing external-svg-loader since the postinstall script was also ran; if this script is removed, this issue would be solved as well.

 I mistakenly assumed dist won't be shipped in the package itself. Yes, I think we should only need to edit the CI file to separate dependencies and devDependencies.

Awesome! A minor improvement could also be to stop versioning the minified module, svg-loader.min.js, since it will be built before publishing to NPM. In this case, npm-run-all and cpr dev dependencies would also not be needed anymore

The reason I included it is to make it handy for devs to download or copy-paste, if they want to host svg-loader.min.js themselves. Sure we can include link in README as well, but it's just easier to see when it's part of the repo.
But worth considering! For now, let's just focus on this issue.

Merged. LGTM! One problem that's happening is that sourcemap aren't getting generated. Let me look into that.

It seems that version 1.6.1 was the last one shipped with sourcemaps in the dist folder

@shubhamjain I'm not sure what caused the sourcemap from being published to NPM, but a possible fix could be specifying it in the files field:
{
  "files": [
    "./dist/svg-loader.min.js",
    "./dist/svg-loader.min.js.map"
  ]
}

The first array entry is redundant since it is implicitly included through the "main" field. Wdyt?

Fixed with https://github.com/shubhamjain/svg-loader/commit/b7920683cb718cb4b5fcfa82cda51fd1344257c3. It was happening because by default npm adhered to .gitignore and it was trying to exclude the 'dist' directory. Having .npmignore fixed it.


Please add our French school

the school's domain is http://www.ecole-ipssi.com/

Yes,
But they give mail like this<EMAIL_ADDRESS>to student.

@Schtro please provide some document / page, confirming this fact. Thank you!


Make TypeScript interface generic

This shouldn't even be a breaking change. If the generic parameter is omitted, any is used.

nvm, the other PR for that is better. Can you merge that, please? :)


ABN doesn't reduce memory requirement at all?

Hi, I'm using a UNet alike model for semantic segmentation. In my network, intermediate results are frequently stored. For example:
x = relu(bn1(conv1))
x1 = x
x = relu(bn2(conv2))
x2 = x
...
I found in my case using ABN or standard BN does not make any difference. Is it because ABN doesn't save memory if intermediate results need to be stored?

@beinanwang can you show a minimal code example of your use case?

Sorry, my company doesn't allow me to post unpublished work. I'll update this issue when the work is published. Thanks.

@beinanwang Just to be clear, ABN is just standard BN + Activation. You should use InplaceABN for memory savings.


Create Blob method of ForceTK does not work in mozilla browser

http://salesforce.stackexchange.com/questions/77272/file-uploader-using-forcetk-using-multipart-message-not-working-in-mozilla/77281
Please the above question .In mozilla firefox the error states that "Syntax Error unexpected End of JSON" while same code succeeds in chrome .
Chrome also the console says "Unexpected end of input"

I've tracked the issue down to line 326 of forcetk.js:
return this.asyncAjax ? JSON.parse(request.response) : null;

Here, the blob function returns either null, if this is an asynchronous call (the usual case), or JSON.parse(request.response) for the synchronous case.
Now the problem is that, as written above, the logic is reversed! In the usual, async case, we are trying to parse an empty response, where we should be returning null.
Easy fix - I'll push it in just a few minutes.

Thanks Pat that would be awesome :) .I will be writing a blog post on how to use this with HTML 5 file API and build a simple drag and drop file uploader .Just looked at community and this feature of multi message part should make life simple .

Hello Pat.The same fix needs to be applied to like 309 as well

Line 309 looks ok to me - it's saying "If there is a response, parse it before handing it to the callback, otherwise pass null to the callback. Works fine in testing too.
Are you still seeing problems?

Yes my browser should me issue .same as earlier issue .The moment I changed it in line 309 it worked :).Thanks

Hmm - what's your line 309 now? Can you see the response in the callback?

callback(request.response ?  JSON.parse(request.response)  :null );
I have changed this to
callback(request.response ?  null: JSON.parse(request.response) );

I don't understand how this can work. You're saying 'If there's something in request.response, then pass null, otherwise pass request.response', so the callback will never receive any data.
What do you see if you put console.log(request.response); just before that line?

A blank string "" .I will check once more and try to put screenshot once I am free .Also my code is little modified and reads from HTML file API as a parameter .Thank you

I am still facing issue in the same , now the line is different and it says  "SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data" for line " callback(request.response ? JSON.parse(request.response) : null);" in below code snippet.
if (this.asyncAjax) {
request.onreadystatechange = function() {
// continue if the process is completed
if (request.readyState == 4) {
// continue only if HTTP status is good
if (request.status >= 200 && request.status < 300) {
// retrieve the response
callback(request.response ? JSON.parse(request.response) : null);
} else if(request.status == 401 && !retry) {
that.refreshAccessToken(function(oauthResponse) {
that.setSessionToken(oauthResponse.access_token, null,oauthResponse.instance_url);
that.blob(path, fields, fileName, file, callback, error, true, progress);
},
error);
} else {
// return status message
error(request, request.statusText, request.response);
}
}
}
}
Do we need to make the same change in this line too ???

Sahil,
I did the same thing to that line and it worked as well .Was explaining same to Pat in all this thread :).Thanks for confirmation.Pat looks like we need same change in line 309 in the file .

Did u get the response after changing this line ???

I'm trying to understand why the JSON.parse fails. What do you see logged
if you put
console.log(request.response);

on the line before the callback?
On Thursday, May 28, 2015, sahilbatraa<EMAIL_ADDRESS>wrote:

Did u get the response after changing this line ???
—
Reply to this email directly or view it on GitHub
https://github.com/developerforce/Force.com-JavaScript-REST-Toolkit/issues/65#issuecomment-106437906
.

--
Cheers,
Pat

Mohit,
This causes response as null if we change the line. I wil try that and will let you know.

Pat ,
we have a response as if we see in post request :+1:
:
068K0000000AqXXXXXtrue
and error as :SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
callback(request.response ? JSON.parse(request.response) : null);

Ah - you're seeing XML! This makes more sense now! Not sure why you're
getting an XML response, but I can force it to be JSON.
I'm on the train right now - will be able to send you a patch in the next
couple of hours.
On Thursday, May 28, 2015, sahilbatraa<EMAIL_ADDRESS>wrote:

Pat ,
we have a response as if we see in post request [image: :+1:]
:
068K0000000AqXXXXXtrueand error as :SyntaxError: JSON.parse: unexpected character at line 1
column 1 of the JSON data
callback(request.response ? JSON.parse(request.response) : null);
—
Reply to this email directly or view it on GitHub
https://github.com/developerforce/Force.com-JavaScript-REST-Toolkit/issues/65#issuecomment-106444997
.

--
Cheers,
Pat

Yes , In chrome we are getting JSON as output and same in mozilla is giving as XML output. Sure force it to JSON . Please send me the patch . Many thanks in advance.

@sahilbatraa - in forcetk.js, just before line 296 (setting the authorization header), insert the following line:
request.setRequestHeader('Accept', 'application/json');

That should ensure that the API responds with JSON. Let me know if it works for you, and I'll push the fix to Github. Please leave line 309 as
callback(request.response ? JSON.parse(request.response) : null);

Otherwise, you'll never get a response from the API, so you won't see the record ID, etc.

@metadaddy , It worked !! :100: :+1:
Thanks a lot :) you can push the fix.

Great - will do!
@msrivastav13 - you should set the accept header, rather than flipping the logic in the callback.

@metadaddy-sfdc Awesome .Thanks will do .Was missing something on this and Now realize the issue .Thanks so much guys @sahilbatraa


typo: Calender -> Calendar

@nschonni : Thanks for your contribution! The author, @, has been notified to review your proposed change.


Pypi Organization

Figure out how to allow owners to publish new release of the package on the pypi.

/assign @wbuchwalter

There doesn't seem to be any concept of organization or group on pypi, so we will just manually update the owners/maintainers of the package to reflect the https://github.com/kubeflow/fairing/blob/master/OWNERS.


ssmtp: give example to create authPassFile

Motivation for this change
Setting up ssmtp requires now a password file without line break at the end of the password. It is helpful for users to give an example on how to create such a password file.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase notes)

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

[ ] Fits CONTRIBUTING.md.

@basvandijk


Replace scipy.sparse with PyData/sparse?

It appears that the PyData/sparse library more natively integrates with Xarray and Dask than the scipy.sparce subpackage, because it was designed from the ground up to natively use arrays instead of matrices. See:

https://sparse.pydata.org/en/stable/roadmap.html
https://tutorial.xarray.dev/overview/xarray-in-45-min.html#alternative-array-types
https://docs.dask.org/en/latest/array-sparse.html

It's possible that this is being solved by the recent refactoring of scipy.sparce, but Xarray and Dask are already integrated with PyData/sparse.
It might be worth exploring if migrating to PyData/sparse would provide any benefits to performance or code simplicity.
On the other hand, development doesn't appear very active, so it's possible that momentum has shifted away from this effort. See: https://sparse.pydata.org/en/stable/changelog.html

@sjordan29, if this  enables us to more easily leverage Dask, then it may be connected to

#52

That said, there really does appear to be substantially less development activity at https://github.com/pydata/sparse compared to https://github.com/scipy/scipy, especially given that scipy v1.11  introduced "A new public base class scipy.sparse.sparray was introduced, allowing further extension of the sparse array API.". See https://docs.scipy.org/doc/scipy/release/1.11.0-notes.html#scipy-sparse-improvements
Given that Dask implements numpy under the hood, then it may be that Dask would work perfectly well with the new scipy.sparse.sparray.

Quick update: pyData/sparse appears to be re-activated, with the release of v0.15 in Jan 2024, https://sparse.pydata.org/en/stable/changelog.html.   Last, the xarray community survey just asked if they should prioritize work on sparse.
Meanwhile, scipy 1.14 also improves:  "scipy.sparse.linalg.spsolve_triangular is now more than an order of magnitude faster in many cases."
It's still unclear which is the best library.


Currently you have to initialize empty relationships in order for cascade create to work

Example:
{
  name: 'Billy',
  pets: [],  // has to be initialized to empty array
}

Create a pet later:
{
  name: 'Cheech',
  owner: billy.id,
}

Only for hasMany relationships


TS Server fatal error:  Cannot read property 'flags' of undefined

崩溃，崩溃，崩溃

/duplicate of #138794


DOCS-5147 Android Log Collection Edit

What does this PR do?
Adds a tab for the AP1 site region.
Motivation
DOCS-5147
Preview
https://docs-staging.datadoghq.com/alai97/log-collection-small-ap1-doc-update/logs/log_collection/android
Additional Notes
Anything else we should know when reviewing?
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] Make sure you discussed the feature or bugfix with the maintaining team in an Issue
[x] Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)

Codecov Report

Merging #1380 (4ab16a4) into master (6035617) will increase coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1380      +/-   ##
==========================================
+ Coverage   81.90%   81.91%   +0.01%
==========================================
  Files         362      362
  Lines       12903    12903
  Branches     2164     2164
==========================================
+ Hits        10568    10569       +1
  Misses       1679     1679
+ Partials      656      655       -1

see 8 files with indirect coverage changes


[4.1.x] Updated translations from Transifex.

This also fixes related i18n tests.

What desolates me so much is those changes:
- "PO-Revision-Date: 2017-09-19 21:51+0000\n"
- "Last-Translator: Carlos Muñoz<EMAIL_ADDRESS>+ "PO-Revision-Date: 2013-04-24 18:05+0000\n"
+ "Last-Translator: Carlos Muñoz<EMAIL_ADDRESS>2015\n"

which is due to bugs on Transifex side (po revision dates cannot go backwards, and the year should not be present in Last-Translator). I tried to discuss those with them some weeks ago, but it went nowhere. I'm fed up with Transifex now.
I might inspect this PR a bit more to see if it's feasible to fix that in some way.

Closing in favor of #15905.


Standardize Nav between PD and Run App

As a user I would like when things that do the same thing between PD and Run app look the same.
Acceptance Criteria

[ ] Update Tabs-style nav to have a disabled tab state (lower opacity for font and icon. I believe we do this for our disabled form fields but I don't know what the opacity % is. )
[ ] Update Tabs-style nav to take the alert bubble
[ ] Change Run app nav to the Tabs-style nav

Design
@pantslakz Alert bubble and disabled state were the two things I noticed Run App has styling for that PD's nav doesn't

Closing this one as stale and superceded by new work in planning now. Also, I sneakily switched the app's nav over to PD tabs in #6051, so I think the spirit of this ticket when it was written has been satisfied 😄


error retrieving more accounts

I keep getting error "There was an error retrieving more accounts. Please refresh the page and try again."
I do so, and the Twitter is unusable. I have to clear my cookies to do the process over again.

Same here, if I try to block more than 500 accounts. I think that it must be a Twitter limit...


Link to reported media URL in API Admin is incorrect

Description

It appears that many of the media URLs in our image/audio report tables display in the admin UI with the wrong URL. The URLs look something like https://openverse.org/v1/audio/<id> or https://openverse.org/v1/images/<id> for audio and images respectively. The paths themselves look like paths to the API, but the TLD directs to the frontend where every link 404s.
Reproduction

Visit https://api.openverse.engineering/admin/api/imagereport/
Observe the incorrect URLs

I was not able to reproduce this locally because reports made via the API show up with the correct domain.
Resolution
We'll need two separate fixes as part of this issue:

Fix the issue that's causing the incorrect URLs to be inserted
Correct the data which is currently wrong

Ah, it looks like it might be coming from here:
https://github.com/WordPress/openverse/blob/aa16d4f1be7607b12c428886b9890bdd947cc71c/api/api/models/media.py#L204-L206
https://github.com/WordPress/openverse/blob/9b4f727d87e026aa2ca7fb9afcda0c05666ef9e5/api/conf/settings/security.py#L35
I'm going to see if we set this in production at all or if it's left as the default (which is what's causing the problem I think).

Yep! That was it! I changed BASE_URL=https://openverse.org/ locally and submitted a report, and it's showing with the wrong URL. I'll get a PR here to change the default, and a PR in the infrastructure repo in case we're overwriting it there. Then we'll need to do a deployment and run either an SQL update or a data migration command to update the old data.


docs: LICENSE

added MIT License file

Hey @EA-pbu, thanks for the PR!
My intention is definitely for this package to be fully open source. The package.json's license field has a value of "MIT".  Is there a reason that that along does not suffice to specify the license?

Hi @zposten !
Appreciate your swift response, thanks a lot.
Indeed you have mentioned MIT license in package.json . By no means I claim to have a deep knowledge of all legal peculiarities of open-source projects.
I'm only coming from suggestion that sometimes people would like to see actual license file that includes the details for legal use of your code. And mentioning "MIT" in package.json is not really informative in such case.
And other reason that I think it may be useful to include a LICENSE file is just because all popular npm packages are having
actual LICENSE files in their repositories. Big corporations are behind these packages and I think they have a reason including an actual LICENSE file to their repositories on top of mentioning it swiftly in packages.json
You can have a look:
https://github.com/expressjs/express
https://github.com/facebook/jest
https://github.com/Microsoft/TypeScript

@EA-pbu Good points all!  Thanks for discussing it with me.  I agree we should add the LICENSE file.
Could you possibly add my email to the copyright line please?  Then I'll merge this in publish a new version
Copyright (c) 2021 Zach Posten<EMAIL_ADDRESS>

sure! included your email

Thank you!

@EA-pbu Just a heads up v0.0.14 is out with all these changes.  Thanks so much for you contributions!


Feature Request: Schedule: Switch to JSON.

The schedule file is a custom file format. Switch it to JSON to make it easier to work with and support modifying it through a web interface.

Done with https://github.com/shawn-lindberg/sandman/pull/28


Add a focus on touch location mode (V2 only)

Should be allowable by an attribute. Disabled by default.

@marcanpilami as of #120, the AutoFocus is force-triggered whenever the target is moved (or just tapped) for both CameraV1 and CameraV2, is a separate touch-to-focus not redundant (as it will override / be overridden by the target area whenever touched) ?


Need navigation to auction page from auction artwork page

Unless you come from the auction landing page to an auction artwork page, there's no way to navigate to the auction. There's no link back to the auction landing, and only the first 10 lots appear under "Other Works in the Auction" (and it's the same 10 lots under "Other Works" on every auction artwork page).

cc: @katarinabatina @orta

Issue moved to artsy/auctions #176 via ZenHub


feat: Change endpoint names to use nodes instead of components

Depends on https://github.com/Sage-Bionetworks/sage-monorepo/pull/1918
fixes fds-908

@mialy-defelice Could you re-review the changes I just made?


Typing animation text's color changes with theme

Before

After

Added the hacktoberfest-accepted label, will merge soon


state/province field not accepted on developer registration page

Describe the bug
While I register a developer account,
on Registration - Account info page, after click next button, state/province filed is highlighted as not valid.
I try many times, but got the same result. Sometime the page show Error code 2201
Steps to reproduce the bug

Go to https://partner.microsoft.com/en-us/dashboard/Registration/AccountInfo?pageName=CP_AccountInfo&navType=next
enter infomation
Click next

Expected behavior
No response
Screenshots

NuGet package version
None
Windows version
No response
Additional context
No response

Sorry, this is unrelated to the winui repo.


Android 14 foreground service type required

Fixes #1859
This PR is not ready for review.
Risk
This PR makes minor API changes.
Testing Plan

[x] I have verified that I have not introduced new warnings in this PR (or explain why below)
[ ] I have run the unit tests with this PR
[x] I have tested this PR against Core and verified behavior (if applicable, if not applicable, explain why below).
[x] I have tested Android

Unit Tests
n/a
Core Tests
Apps A, B and C.
Test 1:
Install App A
Accept BT permission
Install App B
Deny BT permission
Connect to TDK via AOA
Select App A to receive internt
Allow App B to connect when prompted
observe App B pass hosting the RS to app A and both apps connect.
Test 2:
Install App A
Deny BT permission
Install App B
Deny BT permission
Connect to TDK via AOA
Select App A to receive internt
Allow App B to connect when prompted
Observe App B passed hosting the RS to app A and both apps connect.
Test 3:
Install App A
Deny BT permission
Install App B
Deny BT permission
Install App C
Deny BT permission
Connect to TDK via AOA
Select App A to receive internt
Allow App C to connect when prompted
Allow App B to connect if your are prompted.(not 100%)
Observe App C passed hosting the RS to app B who passed to app A,
At least app A and C are connect
Core version / branch / commit hash / module tested against: Sync 3
HMI name / version / branch / commit hash / module tested against: Sync 3
Summary
This pr adds the foreground service type of connectedDevice to our library. This is a requirement for Android 14.
With this addition, we are required to have either the Bluetooth Connect permission or call UsbManager.requestPermission() to have our service enter the foreground. if the connection is AOA and an app selected to host the RouterService does not have either permission, we will try to pass hosting the RouterService off to another app.
I also add the ability to be able to request the usb permission in SdlReceiver.onSdlEnabled in the event that
Changelog
Bug Fixes

Fixed the library to allow for it to target Android 14 and be able to enter the foreground

CLA

[x] I have signed the CLA

Unit test for Android currently fail due to needing to target API 34 which is in a different PR.


Transition to Pydantic Models for Data Construction

We're currently facing challenges with our data management due to the use of plain Python dictionaries for constructing and manipulating data. This approach has leads to difficulties in understanding and predicting the structure of our data, as there's no explicit definition of the schema we're working with. To address this issue, I propose the transition to use Pydantic models for data construction.
Current Situation

Data is dynamically constructed and manipulated using Python dictionaries.
Lack of explicit schema definitions makes it hard to understand the structure and content of the data without resorting to print statements for debugging.
This approach increases the risk of runtime errors and bugs due to unexpected data structures or missing/extra fields.

Proposed Solution

Use Pydantic models to defined schemas for our data structures.
This will provide several benefits:

Type checking: Ensures that our data conforms to the defined schema at runtime, catching errors early.
Editor support: Improves autocompletion, linting, and type hints in IDEs.
Documentation: Pydantic models can be easily documented, improving code readability and maintainability.
Serialization/Deserialization: Simplifies conversion between dictionaries and model instances, making it easier to work with data in APIs, databases, etc.

Regarding type checking - it is a requirement that fmu-dataio works also when being ran e.g. inside RMS, outside the FMU context. Example: A model user will frequently run RMS interactively. In this context, fmu-dataio will not produce valid metadata (because the whole FMU context is missing). But it must still work.
Also, running RMS interactively, is one of the few places where errors are actually immediately visible to the user. It is important that fmu-dataio fail appropriately when running RMS interactively, so that the user can take corrective action (e.g. this is where you discover if you have a typo in the script, etc).
So, we can validate parts of the data model, but not all of it.
The current code is context-aware. It knows when running inside RMS, and it knows when running outside the FMU context (i.e. not orchestrated by ERT).

Based on offline discussions we are considering this task complete.


relevant search issue

@fatfitdev Mind splitting the GHA work with the sort fix? That will need a test, we can do that on top and make sure everything passes. LMK if you need any help with CI to pass (looking at https://github.com/fatfitdev/mongoid_search/tree/fix/relevant-search it's red).

Thanks @yads for fixing CI/CD in https://github.com/mongoid/mongoid_search/pull/146.
This needs a rebase and some tests.


merge  6.x to master

Motivation:
we prepare to switch master to the newest branch ,which will be 6.x
https://github.com/alipay/sofa-rpc-boot-projects/issues/122
Modification:
solve conflict in pom
user.dir  diff user.dir/
Result:
Fixes #.
If there is no issue then describe the changes introduced by this PR.

+1


App

App 4 scouting.jpg

This is not the correct repository for this issue, the issue itself is too broad, and "App 4 scouting.jpg" is not professional (even slightly) and non-descriptive. Also, does this need to be an issue?


Implement a formula for calculating fee for data storage

I implemented a formula for calculating the fee for data storage
I separated from PR #1258 to deal with the matter of fee in more detail.
The size of the voting data is about 637 bytes when expressed in JSON, and about 320 bytes when expressed in binary.
I designed the formula to increase the fee exponentially as the data grows.
And I set up a factor so that I could adjust the curvature of the curve. (The smaller the factor in the formula, the greater the curvature.)
I suggest adding this factor to ConsnesusParams.
A graph of the formula according to the factor is shown below.

Relates to #1214

I think a good next issue to work on would be to determine if the fee in a transaction is large enough.
The fee in the transaction is all the output sum minus all the input sum. This is the unspent amount.
Transaction.isInvalidReason already calculates this:
https://github.com/bpfkorea/agora/blob/a943507c2b333668ebe2b55703048c99f9ff660f/source/agora/consensus/validation/Transaction.d#L132
sum_unspent will contain the fee. I think it would be good to add a delegate parameter to isInvalidReason and call it with the fee. Something like:
public string isInvalidReason (
    in Transaction tx, scope UTXOFinder findUTXO, in Height height,
    bool delegate (Amount) checkFee)

And then check:
if (!checkFee(tx, sum_unspent)) return "Transaction: Not enough fees";

I think this approach could work?


SW-5696 Assign modules to applications

Automatically assign all the modules from phase "Pre-Screen" (of which there
will only be one) to an application when it is created, and from phase
"Application" when it passes pre-screening.

#2189  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @sgrimm and the rest of your teammates on  Graphite


not work

Thx, it's working now

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
4ut0-M-4t, @ddhjy, @L1Cafe, @fyesgo, @bkkwok, @hcxiong, @federicosan, @ansarid, @bryansayler, @parastukh12, @mozillo, @contropist, @lovefawn, @souksou, @kelset, @Gauravsharma-20, @lampard-8, @zorvan, @shinmen-munisai, @meabed, @Ledarium, @StefanRudvin, @volunteer123, @livelybone, @BaloghTamas, @naripok, @hattifnatt4r, @RamonSilva20, @tmprd, @griseyda6, @Stringsaeed, @gtrsh, @adriaanbd, @wk0, @pantaovay, @wuse, @X-Summer, @cbearsy, @taeguk, @brayancruces, @filipeoliveiraa, @jamesmccune6, @usdogu, @christophercelaya, @te0d, @shayanb, @duanyytop, @xuhcc, @rahulkr, @wigust

🚀 Double Your ETH with Binance Staking
Earn rewards and secure your financial future by staking your ETH with Binance. By participating in the Binance staking program, you can potentially double your ETH while supporting the blockchain network.

Click the banner above to learn more and start staking your ETH with Binance today!
How to Stake on Binance:

Visit the Official Binance Staking Page: Click the link to navigate to the official staking page.
Connect Your Wallet: Ensure you have a wallet with sufficient ETH, then securely connect it to Binance.
Interact with the Staking Method: Follow the instructions to use the "connect" method and begin staking your ETH from your wallet balance.
QArtur99, @SalehBorhani, @lcaraffa, @maxwells8, @jaNGOB, @oguzhan-ulutas, @dvlop, @likaihere, @ykym, @cwali09, @Kana1141, @1453alabanda, @SeavantUUz, @fghcdp, @det-peralta, @xDragonZ, @tugh, @bluebell136, @kurna25, @vdopython, @PatrickRudgeri, @keyboyi, @princesslyons, @IgorYevtushenkoUA, @interboard, @maktubliu, @TimothyL96, @loyal-pelmen, @Havenstd06, @AlexHladin, @vanlinhha, @chairmenfrog, @jakexie, @iluminscode, @cleett, @restuhaqza, @huukhanh, @yimings2072, @qu884j, @leetesla, @JHwebserv, @dtarg16, @shawniac, @wangjianyeART, @ichu468, @LoayGhreep, @sunylkumar, @Kensingtonn, @triswanda22, @ProgrammingLife


Enable all-local-model mode

Could we add a switch to all models with local version, default value is false. This helps development.

We could but with the caveat that some models only run on the server (the ledger and rpc models etc.)

Implemented with -l "*". Thanks


Styling thead and tbody

Hi, i am using tailwind to style the table, i need to apply some classes to the thead and tbody elements, how can i do that?
Thanks.

any way this can be achieved right now?


Panic when deploying a EKS cluster

Rancher versions:
rancher/server: v2.0.0-beta4-rc4
Steps to Reproduce:

Create a EKS cluster. [Also deployed GKE and Azure container service cluster at the same time.]

The server crashed with a panic below

2018/04/25 19:43:25 [ERROR] error updating ns kube-system status: Operation cannot be fulfilled on namespaces "kube-system": the object has been modified; please apply your changes to the latest version and try again
E0425 19:43:25.731993       1 generic_controller.go:204] RoleTemplateController cluster-owner [cluster-roletemplate-sync] failed with : couldn't ensure roles: couldn't create role cluster-owner: clusterroles.rbac.authorization.k8s.io "cluster-owner" already exists
E0425 19:43:25.731993       1 generic_controller.go:204] RoleTemplateController project-owner [cluster-roletemplate-sync] failed with : couldn't ensure roles: couldn't create role project-owner: clusterroles.rbac.authorization.k8s.io "project-owner" already exists
2018/04/25 19:43:25 [ERROR] error updating ns default status: Operation cannot be fulfilled on namespaces "default": the object has been modified; please apply your changes to the latest version and try again
E0425 19:43:25.734764       1 generic_controller.go:204] ClusterRoleTemplateBindingController c-z5fcf/user-spq4m-admin [cluster-crtb-sync] failed with : couldn't ensure roles: couldn't create role cluster-owner: clusterroles.rbac.authorization.k8s.io "cluster-owner" already exists
2018/04/25 19:43:25 [ERROR] error updating ns kube-public status: Operation cannot be fulfilled on namespaces "kube-public": the object has been modified; please apply your changes to the latest version and try again
2018/04/25 19:43:25 [INFO] namespaceHandler: addProjectIDLabelToNamespace: adding label field.cattle.io/projectId=project-zlwpk to namespace=default
2018/04/25 19:43:43 [INFO] Handling backend connection request [machine-lrmgm]
2018/04/25 19:43:43 [INFO] Handling backend connection request [machine-5n5ff]
2018/04/25 19:43:43 [INFO] Cluster has not yet completed provisioning, waiting another 30 seconds
2018/04/25 19:43:44 [INFO] Handling backend connection request [machine-q9z8c]
2018/04/25 19:43:44 [INFO] Handling backend connection request [c-z5fcf]
2018/04/25 19:43:55 [INFO] Waiting for cluster to finish provisioning
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x141c2d0]

goroutine 42774 [running]:
github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/drivers/eks.(*Driver).waitForClusterReady(0xc42015d600, 0xc42252ad50, 0x7, 0xc42252ad90, 0xd, 0xc4351e3800, 0x14, 0xc42647bc50, 0x28, 0x0, ...)
	/go/src/github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/drivers/eks/eks_driver.go:551 +0x70
github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/drivers/eks.(*Driver).Create(0xc42015d600, 0xa84d560, 0xc434262d20, 0xc423882760, 0x0, 0xa86d280, 0x46beea0, 0xc434240e01)
	/go/src/github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/drivers/eks/eks_driver.go:347 +0x108e
github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/types.(*GrpcServer).Create(0xc420353e80, 0xa84d560, 0xc434262c60, 0xc42013ae10, 0xc420353e80, 0x1129eb9549b13157, 0xf6dff8c83944d58d)
	/go/src/github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/types/rpc_server.go:45 +0x79
github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/types._Driver_Create_Handler(0x4ad41e0, 0xc420353e80, 0xa84d560, 0xc434262c60, 0xc434240e00, 0x0, 0x0, 0x0, 0x433d64, 0xc433bac480)
	/go/src/github.com/rancher/rancher/vendor/github.com/rancher/kontainer-engine/types/drivers.pb.go:580 +0x276
github.com/rancher/rancher/vendor/google.golang.org/grpc.(*Server).processUnaryRPC(0xc4208bd8c0, 0xa862600, 0xc433803b00, 0xc43427c280, 0xc420cd2630, 0xa7f17a0, 0x0, 0x0, 0x0)
	/go/src/github.com/rancher/rancher/vendor/google.golang.org/grpc/server.go:921 +0x96e
github.com/rancher/rancher/vendor/google.golang.org/grpc.(*Server).handleStream(0xc4208bd8c0, 0xa862600, 0xc433803b00, 0xc43427c280, 0x0)
	/go/src/github.com/rancher/rancher/vendor/google.golang.org/grpc/server.go:1143 +0x1528
github.com/rancher/rancher/vendor/google.golang.org/grpc.(*Server).serveStreams.func1.1(0xc423318e70, 0xc4208bd8c0, 0xa862600, 0xc433803b00, 0xc43427c280)
	/go/src/github.com/rancher/rancher/vendor/google.golang.org/grpc/server.go:638 +0x9f
created by github.com/rancher/rancher/vendor/google.golang.org/grpc.(*Server).serveStreams.func1
	/go/src/github.com/rancher/rancher/vendor/google.golang.org/grpc/server.go:636 +0xa1

Tested with rancher version v2.0.0-rc1. Created EKS cluster successfully. Did not see the server crash.


ACs don't connect

I have 5 midea AC in my home. I connected one succesfully. I did everything the same way but the rest come back with error msg.
This error originated from a custom integration.
Logger: homeassistant.helpers.entity
Source: custom_components/midea_ac/climate.py:129
Integration: midea_ac (documentation)
First occurred: 12:14:22 AM (16 occurrences)
Last logged: 12:18:07 AM
Update for climate.midea_ac_19791209335051 fails
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 487, in async_update_ha_state
await self.async_device_update()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 691, in async_device_update
raise exc
File "/config/custom_components/midea_ac/climate.py", line 129, in async_update
await self.hass.async_add_executor_job(self._device.apply)
File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.9/site-packages/msmart/device.py", line 264, in apply
self._send_cmd(cmd)
File "/usr/local/lib/python3.9/site-packages/msmart/device.py", line 208, in _send_cmd
responses = self._lan_service.appliance_transparent_send_8370(data)
File "/usr/local/lib/python3.9/site-packages/msmart/lan.py", line 136, in appliance_transparent_send_8370
data = self.security.encode_8370(data, msgtype)
File "/usr/local/lib/python3.9/site-packages/msmart/security.py", line 120, in encode_8370
data = self.aes_cbc_encrypt(data, self._tcp_key) + sign
File "/usr/local/lib/python3.9/site-packages/msmart/security.py", line 57, in aes_cbc_encrypt
return AES.new(key, AES.MODE_CBC, iv=self.iv).encrypt(raw)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/AES.py", line 232, in new
return _create_cipher(sys.modules[name], key, mode, *args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/init.py", line 79, in _create_cipher
return modes[mode](factory, **kwargs)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/_mode_cbc.py", line 274, in _create_cbc_cipher
cipher_state = factory._create_base_cipher(kwargs)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/AES.py", line 92, in _create_base_cipher
if len(key) not in key_size:
TypeError: object of type 'NoneType' has no len()
Logger: msmart.lan
Source: /usr/local/lib/python3.9/site-packages/msmart/lan.py:43
First occurred: 12:29:37 AM (14 occurrences)
Last logged: 12:30:17 AM
Connect Error: <IP_ADDRESS>:6444 timed out
Connect Error: <IP_ADDRESS>:6444 timed out
Connect Error: <IP_ADDRESS>:6444 timed out
Connect Error: <IP_ADDRESS>:6444 timed out
Connect Error: <IP_ADDRESS>:6444 [Errno 9] Bad file descriptor
Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/midea_ac/climate.py:120
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 12:30:15 AM (2 occurrences)
Last logged: 12:30:16 AM
[140681262853520] object of type 'NoneType' has no len()
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 185, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1495, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1530, in _execute_service
await handler.job.target(service_call)
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 209, in handle_service
await self.hass.helpers.service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 663, in entity_service_call
future.result()  # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 896, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 700, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 586, in async_service_temperature_set
await entity.async_set_temperature(**kwargs)
File "/config/custom_components/midea_ac/climate.py", line 269, in async_set_temperature
await self.apply_changes()
File "/config/custom_components/midea_ac/climate.py", line 120, in apply_changes
await self.hass.async_add_executor_job(self._device.apply)
File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.9/site-packages/msmart/device.py", line 264, in apply
self._send_cmd(cmd)
File "/usr/local/lib/python3.9/site-packages/msmart/device.py", line 208, in _send_cmd
responses = self._lan_service.appliance_transparent_send_8370(data)
File "/usr/local/lib/python3.9/site-packages/msmart/lan.py", line 136, in appliance_transparent_send_8370
data = self.security.encode_8370(data, msgtype)
File "/usr/local/lib/python3.9/site-packages/msmart/security.py", line 120, in encode_8370
data = self.aes_cbc_encrypt(data, self._tcp_key) + sign
File "/usr/local/lib/python3.9/site-packages/msmart/security.py", line 57, in aes_cbc_encrypt
return AES.new(key, AES.MODE_CBC, iv=self.iv).encrypt(raw)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/AES.py", line 232, in new
return _create_cipher(sys.modules[name], key, mode, *args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/init.py", line 79, in _create_cipher
return modes[mode](factory, **kwargs)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/_mode_cbc.py", line 274, in _create_cbc_cipher
cipher_state = factory._create_base_cipher(kwargs)
File "/usr/local/lib/python3.9/site-packages/Cryptodome/Cipher/AES.py", line 92, in _create_base_cipher
if len(key) not in key_size:
TypeError: object of type 'NoneType' has no len()

5 midea  use same token and key?

I don't think so. Those are the same network and connected to the cloud trough on my account, but all have own wifi stick. The midea discover come back with different Tokens and Keys

Output of the midea-discover:
INFO:msmart.cli:*** Found a device: ←[94m←[1m{'type': 'ac', 'support': True, 'version': 3, 'ip': '<IP_ADDRESS>', 'id':<PHONE_NUMBER>9245, 'port': 6444, 'token': '96A80914CCE4B5B6A68F1CEB610658724F3AD852DEF83B0E2F50B1EDEBEEBDEE2DAC473EFA79E677AE273D29E022CECDE4DD415DA40BB0E875C2B61105C51C05', 'key': 'E9809F0A85B441F18ECBADB58CB644C802BB9680BD5447BEA1520B874F5A0225', 'ssid': 'net_ac_8991'} ←[0m
INFO:msmart.cli:*** Found a device: ←[94m←[1m{'type': 'ac', 'support': True, 'version': 3, 'ip': '<IP_ADDRESS>', 'id':<PHONE_NUMBER>5051, 'port': 6444, 'token': 'A713416C1E0692F50E9723927585713986D9577CD327795B3E93FA87B1482C0701E036303BA4BA03F554FA42AF8A3D1E4640205D31DD21125DB75E8886961F75', 'key': 'A06E367E19454ECD9C58FF57260F5911406214ACA46D43698414B0234D064C9B', 'ssid': 'net_ac_EF9E'} ←[0m
INFO:msmart.cli:*** Found a device: ←[94m←[1m{'type': 'ac', 'support': True, 'version': 3, 'ip': '<IP_ADDRESS>', 'id':<PHONE_NUMBER>4296, 'port': 6444, 'token': '2F3108B04294ED22ACB62D1F4EBBCDD00C5FA4FEB397E4BAE7F7CB48EF0AF5C8DD27AB2E2EE2EFC8237BDF98B8CEB2A4351FE167E30925DDC2A30E63BC3E2D82', 'key': 'EDF56F52A8314FA6BCC213576E2E854340462D0AC0AB42A584E1156D074B8282', 'ssid': 'net_ac_9388'} ←[0m
INFO:msmart.cli:*** Found a device: ←[94m←[1m{'type': 'ac', 'support': True, 'version': 3, 'ip': '<IP_ADDRESS>', 'id':<PHONE_NUMBER>9631, 'port': 6444, 'token': 'CEEE13EE5618E0A9B6191B926301F2B34855A6917CA5310BE28590830F02F241335C32EFA869567711FE21930A8972888057F3AF1D13F5CAC5F95AA7B3D28E1A', 'key': 'B269CB9F6CA447F082102D4CD275B526389E9784D0A846AA81936951C7AD3286', 'ssid': 'net_ac_83D2'} ←[0m
INFO:msmart.cli:*** Found a device: ←[94m←[1m{'type': 'ac', 'support': True, 'version': 3, 'ip': '<IP_ADDRESS>', 'id':<PHONE_NUMBER>5186, 'port': 6444, 'token': 'A0D4E31DD52E481EB65AFF8E8241445175B0E043DCF7000758BC4461109CDD1691CD4C37029B730289257F86CFB529735C3291E99A147CFD42F66D8BCB515B77', 'key': '384DFE21DEC7405DA7BAA0FF9866A84C139EEAE10CC443B6806CEB12E9E774B2', 'ssid': 'net_ac_40D1'} ←[0m

please update new version, If there are still problems, send me the file home-assistant.log
join the telegram group (https://t.me/+UFSSaqBJE5RqvSOq), you can find me.

Any news on this question? I've same issue.

The new version(v0.2.2) should solve this problem, please update


UrlDispatcher.add_route with partial coroutine handler

fix for problem when partialy applied coroutine is used as handler for UrlDispatcher.add_route
similar issue:
http://bugs.python.org/issue23519

Tests needed.

test added

thanks


Missing submodule Plistcpp

I'm pulling down the submodules, but one seems missing: https://github.com/Microsoft/PlistCpp.git
Maybe this needs opening up too?

Please try again. It should be accessible now.

All fixed, thanks !