max_ext, min_ext, mean_ext, median_ext

I've found that while max(), min(), mean() and median() are very nice, it would be a lot more nicer being able to pass in an array of values instead of passing a predefined set of arguments. So I'd like to suggest a few new math functions to compliment the gm community toolbox. As others may find it just as useful, if not more useful than I do.
I mainly use max_ext and min_ext in my own code, but I'll be including mean_ext and median_ext to make them complete.
script_execute_ext() has been for a long while supported built in functions, so this makes this sort of implementation super easy, while allowing as many arguments as we'd like. I've considered going with *_array, but I think with the pattern of how GML goes by it's naming convention, *_ext is more fitting. The descriptions themselves could be expanded upon admittedly, but the idea is there. The implementation itself doesn't really take up too much either.
/// @func max_ext(array)
/// @param {Array} array
/// @desc Returns the max number value from the array.
/// @returns {Real}
function max_ext(array) {
    return script_execute_ext(max, array);
}

/// @func min_ext(array)
/// @param {Array} array
/// @desc Returns the min number value from the array.
/// @returns {Real}
function min_ext(array) {
    return script_execute_ext(min, array);
}

/// @func mean_ext(array)
/// @param {Array} array
/// @desc Adds up all of the numbers from the array, divides them by their array length, and returns that number.
/// @returns {Real}
function mean_ext(array) {
    return script_execute_ext(mean, array);
}

/// @func median_ext(array)
/// @param {Array} array
/// @desc Returns the middle most number value from the array.
/// @returns {Real}
function median_ext(array) {
    return script_execute_ext(median, array);
}

Accidentally preposted this while I was writing it up... Now that I've finished writing it up 😆

Another option would be not min_array etc., but rather array_min, array_max, array_mean and array_median.
Then since we're doing maths, we might as well consider adding array_sum, though this one doesn't have the straightforward implementation of script_execute_ext(...), as far as I can tell.
We might even go as far as doing array_sum_by, array_min_by, array_max_by, array_mean_by and array_median_by (with values to sum/compare produced from item-derived values, rather than items themselves), though this might be considered separately. Guess we might focus on the array-based variants of min/max/etc. for now.

I like array_min, I just didn't think it was fitting since that could mean that you're returning the minimal value from the array from either a number or by a function for comparing against a specific value... Which would be pretty nice to have.
But if we were wanting to have a sum() function and array_sum(), we would need to make those for sure. Which... We can easily do. And making it work with script_execute_ext() is super easy. Anything that can take in multiple arguments, will work.
/// @func sum(...)
/// @desc adds up all of the arguments and returns the total sum.
/// @return {Real}
function sum() {
      var i = 0;
      var sum = 0;
      repeat(argument_count) {
          sum += argument[i];
          ++i;
      }
      return sum;
}

/// @func sum(...)
/// @param {Array} array
/// @desc adds up all of the values from the array and returns the total sum.
/// @return {Real}
function array_sum(array) {
      return script_execute_ext(sum, array);
}

Alright then, if no one opposes, I'd accept implementing the following functions:

array_min(array)
array_max(array)
array_mean(array)
array_median(array)
array_sum(array) (without a separate sum function)

Some thing to clarify:

How do we handle 0-length arrays? Do we return 0, undefined, something else? Generally, the script_execute_ext(...) thing seems to return 0 for all these math functions, so it might be fine.
I've found that if there are two middle elements (because the number of array items is even), then GML returns the higher of them instead of the average of them. The question is, do we want to have mathematically correct median, or have "GML median but for array". Going by the familiarity principle (and also implementation simplicity), I'm inclined towards the latter.

If no-one disagrees with the functions lineup above and we settle these questions, it'll be ready for implementation.

For 0-length arrays, I'd be more inclined to throw an error, but even the normal math functions return 0... So it'd be in a sense correcting an oddity for the default math functions if we were to do anything about it. Though that's probably something worth asking YYG for opinion on. If an empty function like max() is meant to return anything at all, or should it realistically error out, or return some other kind of value like NaN?

Looking over at the documentation and my own testing, median returns the lowest of the two even values. So I'm perplexed that you got higher. But I would prefer going with what GM goes by, as these are meant to be more close to existing GM-like functionality. No matter how odd you and I may feel about them not being an average between the two. But it does make some sense. Wouldn't want to return a value that just doesn't exist in your array. ^^

Just for the record, here are some tests of mine:
var _max_none = script_execute_ext(max, []);
var _min_none = script_execute_ext(min, []);
var _mean_none = script_execute_ext(mean, []);
var _median_none = script_execute_ext(median, []);

show_debug_message($"Max none: {_max_none}");
show_debug_message($"Min none: {_min_none}");
show_debug_message($"Mean none: {_mean_none}");
show_debug_message($"Median none: {_median_none}");

var _median_some = script_execute_ext(median, [1, 10]);
show_debug_message($"Median some: {_median_some}");

And here is what I got on 2023.4 monthly:
Max none: 0
Min none: 0
Mean none: 0
Median none: 0
Median some: 10

In case of 0-length arrays, I'd be inclined towards returning NaN rather than throwing an error, based on my general preference of returning a non-result when possible (as opposed to throwing an error). Or we might decide not to correct the behaviour of corresponding GM functions, and return 0 like the underlying implementations do.
The latter would be more in-line with the familiarity design guideline, except documentation doesn't really specify max will return 0 for no arguments, either (who in their right mind would want to directly use max with 0 arguments, anyway). ^^'
Considering GM manual mentions median returning the lower value of two middle ones, I'd be fine with accepting that outcome... except as the print-out above shows, even for trivial case of two values it picks the larger one. So I guess it would count as a bug? It might be a good opportunity to contribute to the GM tests, I guess...

If we are wanting to keep it exactly as how GM implemented it, then it'd make sense to go with the exact cases.
I did also validate with median(1, 10) by itself just in case it wasn't some kind of odd edge case, and it does seem that median in general has a weird bug with it returning 10 instead of 1. Might be some kind of by product?
Actually just testing it with other number combinations, I am specifically only getting the higher value. Guessing my own testing was more of a fluke of itself. 😅
In any case, that should be reported.
As for empty arrays returning 0? I'd be more imposed to send that to YYG and actually see about them looking to either add towards the documentation or correcting how the function should work. Outside of that... I guess the main thing about us returning something like NaN in our own case, is provided that we do document that it does for empty arrays, we should be okay. And we won't run into any potential future problems with the default math functions. However, it does mean that we would be deviating from what GM would do. But that's not necessarily a bad thing either...

TLDR: I'm okay with accepting NaN provided that we include that within the documentation.

Just for the record, I checked the unit tests for GM, and they check for both the min/max/mean/median functions returning 0 for no arguments, and also for median returning the larger of middle values. The tests for the latter can be found here: https://github.com/YoYoGames/GM-TestFramework/blob/dd30b6fbe81d05f8f27b1b03ad2b95cfe7d59166/projects/xUnit/scripts/BasicMathTestSuite/BasicMathTestSuite.gml#L2936
So I'm inclined towards using the GM's tested behaviour, and having people check the array length of 0 themselves and handle it on their own. The JSDoc should include a mention of returning 0 for empty arrays, and returning the larger of two middle values as well.

Interesting! Well, I guess that answers that. 😆

Since there are no further complaints or questions, the following functions are accepted for implementation:

array_min(array)
array_max(array)
array_mean(array)
array_median(array)
array_sum(array)

The functions should go into utils_Array script, next to utils_Math and utils_Misc.
These functions will return 0 when given an empty array, and array_median will return the larger of two middle values, given an even non-zero number of arguments.
The tests should check regular use scenarios, passing in an empty array, and tests for array_median should separately check the scenario with odd and even number of arguments.
The demo might include some randomised array, with a varying number of arguments, each being an integer e.g. between -100 and 100. There might also be a button for re-randomising the array as well. The results of all the functions above would be displayed for the current array.
As usual, if someone decides to start implementation work, please write about it here so that multiple people won't end up duplicating each other's work.

script_execute_ext makes me instinctively uncomfortable. Game Maker used to have a 16-argument limit on function calls, so would this limit us to arrays of 16 elements, or does that limit not apply to script_execute_ext (I don't have GM in front of me to test right now)?
And even if it is allowed, in my experience in other languages, converting arrays into parameter lists causes performance bottlenecks when the array is large. I'd rather see the implementation of each of these in terms of a for loop, rather than dumping into a parameter list.

script_execute_ext makes me instinctively uncomfortable. Game Maker used to have a 16-argument limit on function calls, so would this limit us to arrays of 16 elements, or does that limit not apply to script_execute_ext (I don't have GM in front of me to test right now)?

This doesn't apply to script_execute_ext. It can take as many arguments as you want. Also, max(), median(), mean() and min() can take as many arguments as you wish. This works just fine.
max(10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200);

There's only a limit of 16 arguments if the function isn't designed to allow for infinite arguments.

And even if it is allowed, in my experience in other languages, converting arrays into parameter lists causes performance bottlenecks when the array is large. I'd rather see the implementation of each of these in terms of a for loop, rather than dumping into a parameter list.

There's a few reasons why I disagree on this.

Letting GameMaker take the wheel on anything is a performance boost, much faster than a for loop or a repeat loop.
While I don't fully understand the underlying implementation, GameMa
ker does handle a lot of footwork much better than passing in an array or multiple arguments in.

In fact, I can even prove that it's faster than anything else. For the record, I am using https://github.com/DragoniteSpam/GMBenchmark to conduct my benchmarking on this.
First screenshot here just covers an array element with the exact values as from above.

And in the second screenshot, I made a function called max_alternate(), which takes in an array and does it manually.
function max_alternate(_array) {
	var _num = -infinity;
	var _i = 0;
	repeat(array_length(_array)) {
		if (_array[_i] > _num) {
			_num = _array[_i];
		}
		++_i;
	}
	return _num;
}

Using repeat() as the fastest form of looping. And you know what the results on that was?

Slow!!! I also tested this in YYC, and while max_alternate() does improve a fair bit (and could probably squeeze a bit more with gml_pragma("forceinline"), max() and script_execute_ext() are just about equally on par. And this is keeping in mind, that they're being fed the same array, preallocated once prior to the benchmark test.

new Benchmark("Max calls vs script_execute_ext", [
        new TestCase("max()", function(iterations) {
            repeat (iterations) {
                var result = max(10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200);
            }
        }),
		 new TestCase("max_alternative()", function(iterations) {
			var _array = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200];
            repeat (iterations) {
                var result = max_alternate(_array);
            }
        }),
        new TestCase("script_execute_ext(max, _array)", function(iterations) {
			var _array = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200];
            repeat (iterations) {
                var result = script_execute_ext(max, _array);
            }
        })
    ])
    ```

Hopefully this gives some further insight on the matter at hand, and why I chose to go with this route. ^^

@tabularelf Yeah, that makes a ton of sense. I can't argue with results. Thank you for the detailed rebuttal.
So I'm guessing GM compiles variable-argument functions down to a function that takes a single array argument, and then the actual engine code is able to iterate over that array faster than we can. I was imagining that GM did what C and Lisp do, which is dump all of the arguments onto the call stack individually, but based on those benchmarks I have to conclude that I was wrong about that.

The implementation and tests are already merged, only the demo remains.

The demo has been merged in Pull Request #31 as well!


Add a button that turns on collecting mass

Use a button to enable collect mass instead of enabling in config. it can be enabled and disabled

I also was saying that if possible

did it on my own

can you send me the code?


ViewComposer inspector is inadequate

The ViewComposer inspector isn't really fit for purpose at either end of the property complexity scale. At the complex end (e.g. for editing Scintilla text styles) it no longer displays any custom presenters, making it necessary to open a separate inspector on the aspect in question.
 Although the edit capability of the editable list is nice at times, very often too much clicking is necessary. One shouldn't have to double click to open a text editor and then press OK just to edit a simple property value. A more lightweight in-place edit is needed.
It also no longer offers the option of low-level editing at the instance variable level - again one has to open a separate inspector.
It was never that great, but I don't think its current incarnation is an improvement on what went before. Quite the reverse in fact.

I disagree that it is worse than before. Quite the reverse in fact. IRC the changes were made for three reasons:

To allow simple (scalar) property editing to be done solely from the keyboard. You don't have to "double click to open a text editor" - you simply press return. The idea is that if you see a property that needs changing they you hit Enter. This will:

Toggle the property if it can be toggled (i.e. boolean)
Open a simple in-place editor if it has one (i.e. a single line text or a list chooser). This can also be operated from the keyboard. Enter accepts the change, Esc cancels it.
If no specialised editor is available it opens a single line value workspace that accepts the change on Enter.

Allow complex UIs a known space in which to appear. Opening complex UIs in the old inspector would mean that they would often not have enough space in which to appear. The decision would have to be made (somewhere) whether a complex UI needed it's own modal dialog or should be opened in the unknown space already available in the property inspector pane. Now the decision is always that a complex UI needs a modal dialog. Yes, this has to be opened with a click (on the ...) and this would be better if a keyboard operation could do this. However, from that point on the handling of the edit can be entirely keyboard driven.

IIRC moving between properties in the old inspector could not always be accomplished with the keyboard where it can now.

Also, opening a separate inspector to modify instance variables seems the "correct" thing to do to me.  It is a low level task that should occur rarely (if at all) in a "property" or "published aspect" inspector.
My opinion is that the new scheme is better, looks nicer and is more in line with property editors in other development tools.

Certainly I appreciate the motivation to improve the property editing experience in the VC, and in some senses it is slicker, but there are detailed issues that I find make it frustrating to use at present. A particular example is the "transactional" nature of the property editing, whether it be by double-click or pressing Enter (after clicking in order to set focus, since keyboard navigation around the VC is always going to be complex, even if the current navigation were to be improved). Really the list should enter edit mode as soon as one navigates into a field. In the other development tools you mention you can usually just start typing to modify a string field, and there are drop-downs and other more convenient controls that don't require popping up a separate window.
As regards the instance variable inspector, I think one has to be careful to remember that much of the power of the Smalltalk IDE is the ability to look into the innards of anything and run expressions against it. In a normal IDE there isn't a general purpose way to do this kind of thing, so the developer is stuck with the property editing experience that the IDE designer is able to provide. I routinely use the basic inspector workspace to run expressions, paste things in, etc, in order to both understand what I have, and to save time. The availability of this general capability also means that it isn't necessary to go to the same extent in providing the high-level property editing capability, and so historically we haven't. One manifestation of this is that many of the less-used properties of views are not listed among the published aspects. If we wanted to provide more complete coverage here, we'd probably need to introduce some categorization of aspects to avoid overwhelming the user. At the moment our categorization is just to leave them out.
I think it would be fine to put the instance variable inspector on another tab, just as the published aspect inspector does, and that way it has no impact on the higher-level property grid experience. Opening separate inspectors is undesirable because they are disconnected from the view being edited, so after a bit of tabbing around the user no longer knows which applies to what.
I also tend to use the inspector to browse around the properties to see not just what the current values are, but to get an idea of what they could be. This can be done by opening a full inspector, but that is hard (there is no "self" aspect to Ctrl+I on, so the only way I found to do it was to use the Visual Object Finder against the view in the view hierarchy tree), and also suffers from the problem of being detached I describe above.
Anyway, this issue is clearly too broadly drawn, so I will close it and raise some more specific issues that suggest improvements in line with the direction you are trying to take things.


Fix active Home tab in narrow-jumbotron example

the active class should be moved from the list item to the link item

Thanks! Good catch.


Unable to deploy drone-server on initial deployment

Describe the bug: (a clear and concise description of what the bug is)
To Reproduce
Steps to reproduce the behavior:

Prepare brand new cluster
Enable drone: charts.drone.enabled: true
otomi deploy
observe that at team-admin/drone-server the istio-proxy sidecar is not able to connect with istiod

│ 2021-04-08T13:53:09.767932Z    warn    Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 7 successful, 0 rejected; lds updates: 0 successful, 7 rejected                                                                            │

observe that istiod complains about

2021-04-08T13:49:13.747713Z    warn    ads    ADS:LDS: ACK ERROR sidecar~<IP_ADDRESS>~drone-server-6df99c54f8-b2j26.team-admin~team-admin.svc.cluster.local-12 Internal:Error adding/updating listener(s) virtualInbound: Proto constraint validation failed (JwtAuthentica │
│   key: "origins-0"                                                                                │
│   value {
│     issuer: "https://keycloak.jeho.eks.otomi.cloud/realms/master"
│     audiences: "otomi"
│     local_jwks {
│       inline_string: ""
│     }
│     payload_in_metadata: "https://keycloak.jeho.eks.otomi.cloud/realms/master"
│   }
│ }
│ rules {
│   match {
│     prefix: "/"
│   }
│   requires {
│     requires_any {
│       requirements {
│         provider_name: "origins-0"
│       }
│       requirements {
│         allow_missing {
│         }
│       }
│     }
│   }
│ }`

5.Note that keycloak endpoint is responsive
curl https://keycloak.jeho.eks.otomi.cloud/realms/master
{"realm":"master","public_key":"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApZZhwCCp90NZscpFYFAWh6TMrkymAw2IwuNvPlZRqfF8YMe9NoG68ky4x9Tbf7WFj1fsAvplEKTQahOOBlkSkk3uY/zfEzoKjKCArmYovC9d/ftDM/btickRL8imSyXzAyybngvRtf1O68CO0+RTjNLgGP5qLbYffI/01bUdrg/mEPPl8+VpGJr6NQQR83jsR+SXwajgrU8zDqOEjgfsF1951L74TP+ux8CiCseMeUSm+0JE42CHNev9qHmR9SpY0cualivgsEUMMpw6OyehKb7Z1JPa8XIG2Cw9MDI74bvAuOqT+0eIfDfj57zUpnuC9U2PgJEBfGIZ19TdVwW0uwIDAQAB","token-service":"https://keycloak.jeho.eks.otomi.cloud/realms/master/protocol/openid-connect","account-service":"https://keycloak.jeho.eks.otomi.cloud/realms/master/account","tokens-not-before":0}%

Note: that there istio Authorization policy for drone
k get authorizationpolicies.security.istio.io -A
NAMESPACE      NAME                                 AGE
istio-system   grafana-istio-jeho-eks-otomi-cloud   11m
monitoring     grafana-jeho-eks-otomi-cloud         11m
team-admin     drone-jeho-eks-otomi-cloud           11m

Expected behavior: (a clear and concise description of what you expected to happen)
Screenshots: (if applicable, add screenshots to help explain your problem)
Cluster(s):

Cloud: aws

Cluster: jeho
Versions: (seen in console's /settings)

Core Version master (ae6711a6e937fb6d5bd6eec6bec82a83cdf64e45)

Console Version: [e.g. aws]

API version: [e.g. 0.4.56]

Additional context: (add any other context about the problem here)

running second time otomi deploy is workaround to that issue.

"Seems"? I am 99% sure this is not a drone issue so I am closing this. Other solutions than drone suffer from the same (but expected) problem: they need to wait for keycloak to become available. All the grafana instances "suffer" this as well. But like I said it is expected because this is how k8s advises to build deps (wait for services to become available) and will resolve over time.


May want to add one additional instruction in step 3

You may want to add the following instruction in Step 3 of Create data exploration database section. Otherwise; second query of the same section will fail. I know an SQL expert would know that the first query of the section need to run in master database but a beginner may not realize it. Please note that the first query of this section would still run on the DataExplorationDB  but the second query - that need to run on DataExplorationDB  - will fail since it won't find the login (created in first query) in master database. Please also note that in step 2 of the same section we have (correctly) asked user to switch back to DataExplorationDB before running the query in step 2. But in step 3, we don't instruct a reader to switch back to master database before running the first query of step 3:
Switch back to master database and run the following command:

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 7fd3e66e-a012-dd40-34f3-1e84865605bc
Version Independent ID: d0fc26d6-2a86-dbed-2f48-c798b551f3f0
Content: Tutorial: Get started analyze data with a serverless SQL pool - Azure Synapse Analytics
Content Source: articles/synapse-analytics/get-started-analyze-sql-on-demand.md
Service: synapse-analytics
Sub-service: sql
GitHub Login: @saveenr
Microsoft Alias: saveenr

@saveenr -  Thanks for bringing this to our attention.
I'm going to assign this to the document author so they can update the document accordingly.

#please-close

@julieMSFT Thank you for the update. It was just a minor oversight on part of the authors (something we can all overlook). Thank you to Microsoft team for providing us excellent documentation on Azure.


PowerShell remoting to all nodes in a cluster

This is a good when we need to access one machine at a time.  Is there a recommended way to setup so that we can access all nodes in a cluster using PowerShell remoting?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 98d553a1-59ed-c80c-5a72-e8237b042490
Version Independent ID: 4e7e025d-ca39-3099-57b7-449ec2914da7
Content: Remote connect to an Azure Service Fabric cluster node
Content Source: articles/service-fabric/service-fabric-cluster-remote-connect-to-azure-cluster-node.md
Service: service-fabric
GitHub Login: @aljo-microsoft
Microsoft Alias: aljo

@keatseongchan Thanks for the feedback! We are currently investigating and will update you shortly.

You should just be able to use the standard New-PSSession commands
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/new-pssession?view=powershell-6

@keatseongchan I will close this out for now. If you need further assistance please reopen and we can continue.


Refactor duplicate codes of external table

What type of PR is this：

[ ] bug
[ ] feature
[x] enhancement
[ ] others

remove useless codes of external table like HdfsScanNode
refactor duplicates of external table like  HudiTable and HiveTable

it seems an enhancement?

This seems to be an enhancement

done

@caneGuy @dirtysalt PTAL

[FE PR Coverage check]
:disappointed: fail : 20 / 348 (05.75%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/optimizer/rule/implementation/HudiScanImplementationRule.java
0
1
00.00%

:large_blue_circle:
com/starrocks/sql/plan/ScanNodePredicates.java
0
20
00.00%

:large_blue_circle:
com/starrocks/planner/HudiScanNode.java
0
21
00.00%

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
0
59
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/implementation/HiveScanImplementationRule.java
0
1
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/ScanOperatorPredicates.java
0
17
00.00%

:large_blue_circle:
com/starrocks/external/RemoteScanRangeLocations.java
0
28
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalHudiScanOperator.java
0
16
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalHiveScanOperator.java
0
6
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalHiveScanOperator.java
0
16
00.00%

:large_blue_circle:
com/starrocks/planner/HdfsScanNode.java
0
19
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalHudiScanOperator.java
0
6
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/Utils.java
0
5
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/statistics/StatisticsCalculator.java
1
19
05.26%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/RemoteScanPartitionPruneRule.java
4
37
10.81%

:large_blue_circle:
com/starrocks/catalog/HiveTable.java
1
9
11.11%

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
6
46
13.04%

:large_blue_circle:
com/starrocks/catalog/HudiTable.java
2
11
18.18%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/PruneHDFSScanColumnRule.java
1
4
25.00%

:large_blue_circle:
com/starrocks/external/hive/HiveMetaClient.java
4
6
66.67%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/MergePredicateRule.java
1
1
100.00%

run starrocks_fe_unittest

run starrocks_fe_unittest

[FE PR Coverage check]
:disappointed: fail : 20 / 347 (05.76%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalScanOperator.java
0
2
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/implementation/HudiScanImplementationRule.java
0
1
00.00%

:large_blue_circle:
com/starrocks/planner/HudiScanNode.java
0
21
00.00%

:large_blue_circle:
com/starrocks/sql/plan/HDFSScanNodePredicates.java
0
20
00.00%

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
0
59
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/implementation/HiveScanImplementationRule.java
0
1
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/ScanOperatorPredicates.java
0
17
00.00%

:large_blue_circle:
com/starrocks/external/RemoteScanRangeLocations.java
0
28
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalHudiScanOperator.java
0
16
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalHiveScanOperator.java
0
6
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalScanOperator.java
0
2
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalHiveScanOperator.java
0
16
00.00%

:large_blue_circle:
com/starrocks/planner/HdfsScanNode.java
0
19
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalHudiScanOperator.java
0
6
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/Utils.java
0
5
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/statistics/StatisticsCalculator.java
1
20
05.00%

:large_blue_circle:
com/starrocks/catalog/HiveTable.java
1
9
11.11%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/RemoteScanPartitionPruneRule.java
4
31
12.90%

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
6
46
13.04%

:large_blue_circle:
com/starrocks/catalog/HudiTable.java
2
11
18.18%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/PruneHDFSScanColumnRule.java
1
4
25.00%

:large_blue_circle:
com/starrocks/external/hive/HiveMetaClient.java
4
6
66.67%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/MergePredicateRule.java
1
1
100.00%

[FE PR Coverage check]
:disappointed: fail : 20 / 347 (05.76%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalScanOperator.java
0
2
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/implementation/HudiScanImplementationRule.java
0
1
00.00%

:large_blue_circle:
com/starrocks/planner/HudiScanNode.java
0
21
00.00%

:large_blue_circle:
com/starrocks/sql/plan/HDFSScanNodePredicates.java
0
20
00.00%

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
0
59
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/implementation/HiveScanImplementationRule.java
0
1
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/ScanOperatorPredicates.java
0
17
00.00%

:large_blue_circle:
com/starrocks/external/RemoteScanRangeLocations.java
0
28
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalHudiScanOperator.java
0
16
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalHiveScanOperator.java
0
6
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalScanOperator.java
0
2
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/physical/PhysicalHiveScanOperator.java
0
16
00.00%

:large_blue_circle:
com/starrocks/planner/HdfsScanNode.java
0
19
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/operator/logical/LogicalHudiScanOperator.java
0
6
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/Utils.java
0
5
00.00%

:large_blue_circle:
com/starrocks/sql/optimizer/statistics/StatisticsCalculator.java
1
20
05.00%

:large_blue_circle:
com/starrocks/catalog/HiveTable.java
1
9
11.11%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/RemoteScanPartitionPruneRule.java
4
31
12.90%

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
6
46
13.04%

:large_blue_circle:
com/starrocks/catalog/HudiTable.java
2
11
18.18%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/PruneHDFSScanColumnRule.java
1
4
25.00%

:large_blue_circle:
com/starrocks/external/hive/HiveMetaClient.java
4
6
66.67%

:large_blue_circle:
com/starrocks/sql/optimizer/rule/transformation/MergePredicateRule.java
1
1
100.00%


Problems when installing tagui in python

After paste this code:
import rpa as r
r.init()
r.url('https://duckduckgo.com')
r.type('//*[@name="q"]', 'decentralisation[enter]')
r.wait() # ensure results are fully loaded
r.snap('page', 'results.png')
r.close()
I am thrown this error: AttributeError: partially initialized module 'rpa' has no attribute 'init' (most likely due to a circular import)

@eduardolc21 I believe this is likely a Python usage issue. Do you have a rpa.py file in the same folder or did you name your script rpa.py? If yes, you are asking Python to import your rpa.py instead of the rpa package as local file takes precedence!

@kensoh thanks for your prompt reply and help, my jupyter filename was tagUI and it was the first time in this computer I used it.
I solved it with the import of:
"import tagui as t"


Bindings generator does not handle multiple derived types

I've noticed when you have several classes based of the same abstract class the codegen can't handle it even thought the syntax looks like it should e.g.
		{
			"Name": "MyNamespace.AbstractShape",
			"BaseTypes": [
				{
					"BaseName": "MyNamespace.BaseSquare",
					"DerivedName": "MyNamespace.Square"
				},
				{
					"BaseName": "MyNamespace.BaseCircle",
					"DerivedName": "MyNamespace.Circle"
				}
			]
		}

Doesn't work

@philipcass Can you please elaborate on what doesn't work?

@jacksondunstan When generating c sharp delegates for each instance of the derived types the code-gen redeclares the common abstract methods multiple times e.g. if GetRadius was declared in AbstractShape it'd create this twice:
		[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
		public delegate double MyNamespaceAbstractShapeGetRadiusDelegateType(int thisHandle);
		public static MyNamespaceAbstractShapeRadiusDelegateType MyNamespaceAbstractShapeGetRadiusDelegateType;

@philipcass Thanks for clarifying. It looks like that code should only be generated for the first derived type, not all of them. I'm not able to address the issue right away, but please do feel free to submit a PR with a fix.


Fix notify response to return 'OK'

Please see https://github.com/Payum/Payum/issues/666 for reference

This repo looks dead.


Delegate "info" calls to wrapped Reporter

This fixes #8

Not sure why the build fails. It says
The command "[ "${TRAVIS_PULL_REQUEST}" = "false" ] && sbt updateImpactSubmit || false" exited with 1.


Command failed

Android 9 emulator with root:
Optimizing 10575 methods over 1303 Smali files.
**/dex-oracle/lib/dex-oracle/driver.rb:190:in `validate_output': Command failed with 255: shell "cd /data/local/tmp; export CLASSPATH=/data/local/tmp/od.zip; app_process /system/bin org.cf.oracle.Driver @/data/local/tmp/od-targets.json"; echo $? (RuntimeError)
Output: 255
	from **/dex-oracle/lib/dex-oracle/driver.rb:208:in `drive'
	from **/dex-oracle/lib/dex-oracle/driver.rb:96:in `run_batch'
	from **/dex-oracle/lib/dex-oracle/plugin.rb:49:in `apply_batch'
	from **/dex-oracle/lib/dex-oracle/plugins/string_decryptor.rb:38:in `process'
	from **/dex-oracle/lib/oracle.rb:33:in `block (2 levels) in process_plugins'
	from **/dex-oracle/lib/oracle.rb:31:in `each'
	from **/dex-oracle/lib/oracle.rb:31:in `block in process_plugins'
	from **/dex-oracle/lib/oracle.rb:29:in `loop'
	from **/dex-oracle/lib/oracle.rb:29:in `process_plugins'
	from **/dex-oracle/lib/oracle.rb:18:in `divine'
	from ./dex-oracle/bin/dex-oracle:98:in `<main>'

Installed Android 5 emulator
**/dex-oracle/lib/dex-oracle/driver.rb:198:in validate_output': app_process execution failure, output: '0' (RuntimeError)`

Could you share the sample and command line you're using?

Sent to you yesterday by email

Can you confirm that you received sample from me by email?

I got it, but the tiny startup company I use for email doesn't know how to handle multiple users and I had to request access using another account.

Hi! Are you received access to file?

I haven't had time to look into it. You can help yourself by running with verbose mode on, watching exactly what dex-oracle does, and do it youself on the command line. All the code does is coordinate some stuff on the command line (and make it easy to reflect methods with the driver).


Add predicate offers - fixes #528

Added predicate gist:isOfferOf, and changed the formal definition of gist:Offer to refer to the new predicate instead of gist:hasDirectPart

We've agreed to change from isOfferOf to offers. Add scopeNote/example about the different uses (with Offer vs Organization/Person etc).

skos:definition "Relates something to a thing it makes available for acceptance or rejection." ;
skos:example "An instance of gist:Offer offers a specific product at a particular price; a company offers an employee benefit; Honda offers vehicles for sale.";

@stevenchalem

skos:definition "Relates something to a thing it makes available for acceptance or rejection."

I suggest:

skos:definition "Relates something to a thing that is being made available for acceptance or rejection."

@stevenchalem Sorry about the back and forth. Michael is willing to go ahead with offers and I trust his judgment on this. So let's go ahead and finalize this PR. Thanks.


Export submissions converts Publication Date to epoch timestamp

Publication Date field in the export submissions csv file shows as epoch time. Would be helpful to have this in a more human-readable format (ex. YYYY-MMM-DD).

Related to #25


Update platforms page

https://e2e.mayadata.io/docs/platforms

Ref: https://github.com/mayadata-io/oep-e2e/pull/733

The PR has been merged and the page is updated.


[WIP] fix: CSS Generated in wrong order

Taking care of the other issue needed for the 3.x release while i'm in here

note: After speaking to Tobias, a sort function will be added in Webpack so we don't need to contend with module internals in the plugin.

[ ] fix: CSS Generated in the wrong order with Webpack 3.0.0

reproducible project https://github.com/cyl19910101/wp3_test

[x] refactor: Replace usage of chunk.modules
BREAKING CHANGE: Updates to Chunk.mapModules | forEachModule | getNumberOfModules. This release is not backwards compatible with Webpack 2.x due to breaking changes in webpack/webpack#4764

Closes #548

Is there a date for this merge? I really need this :shipit:

@CGastrell - See my comment in the associated issue.

Thank you, I really appreciate all the effort (and taking the time to reply).


Added c code for binary search

For short term contributors: we understand that getting your commits well
defined like we require is a hard task and takes some learning. If you
look to help without wanting to contribute long term there's no need
for you to learn this. Just drop us a message and we'll take care of brushing
up your stuff for merge!
Fixes #44
By submitting this pull request I confirm I've read and complied with the
below declarations.

[x] I have read the Contribution guidelines and I am confident that my PR reflects them.
[x] I have followed the commit guidelines for this project.
[x] My code follows the standard code structure.
[x] This pull request has a descriptive title. For example, {Tag}: Add {Algorithm/DS name} [{Language}], not Update README.md or Added new code.
[x] This pull request will be closed if I fail to update it even once in a continuous time span of 7 days.
[x] This pull request shall only be reviewed and merged once all the checks passes. No maintainer or supporter shall be obliged to review it before this condition is met.
[x] I have mentioned the issue number correctly (with hyperlink) in this pull request description.

After you submit your pull request, DO NOT click the 'Update Branch' button.

@codacy-badger  please review

@sangamcse is this okey?

No. Kindly go through few git tutorials before committing.

what is the problem with this.

First of all, you have not gone through contribution guidelines which are resulting in bad commit messages. 2nd, you have ticked https://github.com/NITSkmOS/Algorithms/pull/88#issue-219225685 without reading it properly. We are not here to just complete someone's task and breaking our repository totally.
3rd you have not asked for any issue assignment and started working directly.

okey I am really sorry this is my first time contributing anywhere @sangamcse


Add Password guarantees

Add guarantees like in String module, for password generation.
example: I want to have password with 15 characters - max 3 symbols.
User also specify min/max for lowerLetter, upperLetters, symbolCharacters and numbers.

@braw-lee

will finish String module in a few days and will check this out


Add filters to the map markers API route

Update the graphql resolver for getting vector data to allow filters to be applied based on the list from Marianne, these should apply the equvialent filtering in the database and return the reduced lists of results accordingly.
The list of filters is country, species, date ranges, larval/adult data, control (y/n), season (rain/dry)
Acceptance criteria:

[x] The vector data query method on the graphql api allows the filters from Marianne to be passed in as parameters.
[x] The results returned from the vector data query method are filtered based on the parameters passed in.

A GraphQL POST query in the following form will filter and return data (if any exists according to the filters specified):
mutation{createReference(input: {author: "ColinTest", citation: "GraphQL citation Test6", journal_title: "test\test",  year: 2022, published: true, report_type: "Journal", v_data: true}){citation}}


how can I check the version of sqlite scanner extension used or how to get the latest version of sqlite scanner?

After running install sqlite, how can one check the version of sqlite scanner or is it always linked to duckdb release. For example, there was a bug reported with select count(*) from table producing a segfaults, and I can see that it was maybe fixed, but unclear how to take that latest version of sqlite scanner. Is it sufficient to do this pip install duckdb --upgrade --pre and then run install sqlite again?

Yes, at the moment extension versions are tied directly to DuckDB versions, and yes, if you upgrade to the latest DuckDB prerelease you'll be able to install the latest SQLite scanner prerelease


Header Section

Header to be responsive, GDG icon to be used as hamburger menu to the mobile screen.

Header Completed


Updated BLEU threshold for system test sometimes failing in Travis CRON

Pull Request Checklist

[ ] Changes are complete (if posting work-in-progress code, prefix your pull request title with '[WIP]'
until you can check this box.
[ ] Unit tests pass (pytest)
[ ] Were system tests modified? If so did you run these at least 5 times to account for the variation across runs?
[ ] System tests pass (pytest test/system)
[ ] Passed code style checking (./pre-commit.sh or manual run of pylint & mypy)
[ ] You have considered writing a test
[ ] Updated major/minor version in sockeye/__init__.py. Major version bump if this is a backwards incompatible change.
[ ] Updated CHANGELOG.md

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

makes sense. I'm keeping a list of others that have failed in the past, feel free to include those as well:
   - Copy:transformer:transformer 0.984304 BLEU
   - Copy:lstm:transformer
     - assert 1.060594694249384 <= 1.01
   - Copy:transformer:transformer
     - assert 1.0124502324620155 <= 1.01


add device name

add device name to volume attaching - is required by my api.
@meteorfox - can you test it on your environment? I running cassandra_ycsb benchmark, and without this command i gets error with too less arguments.

@kivio Sure no problem. I'll try it out later Today.

@meteorfox ok, now it's works fine for me

@cmccoy @meteorfox @mateusz-blaszkowski @voellm - Guy's can you review that?

@kivio LGTM! :+1:

@voellm we can merge it? It's important for tests on oldest versions of OpenStack including all current available from providers like RedHat OSP or Mirantis OpenStack


Will not import project with WORKSPACE.bazel

it works when reanaming  from WORKSPACE.bazel to WORKSPACE
Bazel plugin version 2<IP_ADDRESS>.0
intelij version 2019.3.3  Build #IU-193.6494.35

Thanks, seems like a recent change in the last few months. I'll add support for recognizing this workspace name.


Comment hyperlink in the sidebar Recent Activity section links to post

Expected behavior is the href should link to the comment, via the comment permalink (utilizing the view.sub_perm schema).
https://github.com/Phuks-co/throat/blob/a4e3ba7d7f9c928114e53c274831e6585ac86627/app/html/shared/sidebar/home.html#L50

Just fixed here in my fork:
https://github.com/globalistas/ceknito/commit/d920b357fd693d6d31ae43f76aec59822d4bf14c
Let me know if you'd like a PR.


Add Freebox switches

Description:
This will add a switch to control wifi interface of Freebox router
Pull request in home-assistant.io with documentation (if applicable): home-assistant/home-assistant.io#8132
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

If user exposed functionality or configuration variables are added/changed:

[x] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[x] New dependencies have been added to the REQUIREMENTS variable ([example][ex-requir]).
[x] New dependencies are only imported inside functions that use them ([example][ex-import]).
[x] New or updated dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[x] New files were added to .coveragerc.

Closing as i have no time yet to fix. And need to rebase to a newer verison of HA to make it clean.


Doesn't work with Stakeholder licence?

We've installed this calendar for the purpose of sharing significant dates with our client, however if I log in as a client user (who has a Stakeholder licence) they don't seem to be able to view the calendar.

N.B. the Learn More link goes to http://tfs:8080/items/ms-devlabs.team-calendar which obviously doesn't work for an external client.
I've tried messing around with the permissions but I don't seem to be able to grant them anything that makes it work - the fact they also don't appear to have access to the Capacity tab on an iteration makes me suspect nothing will.
Is there something I can change to fix this or is this a limitation of the Stakeholder licence?
Thanks.

@trish1400 Can you email me directly at<EMAIL_ADDRESS>with any script or network errors you're seeing on the page (or none if there are none)? Thank you.

We're having the same issue with Team Services.  Any stakeholders cannot save days off or events.  It allows them to open a dialog, and when they click save it goes away as if it saves the event but it never appears on the calendar.

@hajohns - as a first step, we shouldn't close the dialog until we've confirmed the add/update happened successfully (and we should present any error(s) to the user). We should then figure out why add/update of a free-form event isn't working for stakeholders (it should). Stakeholders can likely not set days off since days off are managed within the Work/Agile area (and are used for planning, etc).


Add feature flag for translation of empty fields

for #614

coverage: 90.756% (-0.04%) from 90.792% when pulling 7a9f9415c19c290be441946b2ec4952f6b98344e on feature/614-translation-empty-fields into 6824ca3178f7423eac02ff16b2f63964f659c1fa on dev-1.11.0.

should we use REPLACE_MISSING_TRANSLATIONS? :stuck_out_tongue:

For me it's just a 1 to 1 replacement, when the translation of the current language is missing for an object.. replace it with the next available language field..  (singular)
but you mean that it counts in general for all missing translations of all the elements? (plural)

Yes, makes sense.


6LowPan fragmentation fix

This is not yet ready for merging, there is also an issue with datagram offsets in the fragn packets.
Currently I have
-                let datagram_offset = ((40 + *sent_bytes) / 8) as u8;
+                let datagram_offset = ((40 + *sent_bytes) / 8) as u8 - 4u8;

Which makes the datagram_offset line up enough that I can reassemble the packets on the other side, I'm fairly certain this is not the right way of doing it, that's an arbitrary offset derived from the difference of the request/response fragments, not from first principles.

@thvdveld just a small upload for what I figured out with regards to #640

Marking as draft, please mark it back as ready to review when done.

It seems that your changes make it work again. However, I don't have the alignment issues you have.

I haven't had the time to check this since I fixed a different problem, the linux driver for my 802.15.4 card was dropping a few bytes from every near full size message! There is a chance that this was the cause of the alignment error, so I'll check that now.

It seems the alignment fix is still needed for me.
Here are two pcap files, one without the alignment fix, one with.
pcap-trace-with-offset-fix.txt
pcap-trace-with-no-offset-fix.txt

Not sure if the offset calculation is correct now. It works in your case when you have one extended IEEE802.15.4 address and a short IEEE802.14.5 address, however, it does not work any more when we have two extended addresses.

That makes sense and we clearly need to support both! I can't play around with this any more today, but I can take a look at it this week if you don't have time.

I'm currently checking where it goes wrong. I'll let you know when I find something.

I created a new PR, with, I think, the necessary fixes for fragmentation.


Problem when removing module from extraJavaModuleInfo

Hi, great work, love this plugin!
Although, I have an issue when I've modified/removed the module from the extraJavaModuleInfo in my build.gradle.kts.
I was using this plugin, to use old jdom dependency:
dependencies {
     // https://mvnrepository.com/artifact/jdom/jdom
    implementation("jdom:jdom:1.0")
}

and
extraJavaModuleInfo {
    module("jdom-1.0.jar", "org.jdom", "1.0"){
        exports("org.jdom.xpath")
        exports("org.jdom.transform")
        exports("org.jdom.output")
        exports("org.jdom.input")
        exports("org.jdom.filter")
        exports("org.jdom.adapters")
        exports("org.jdom")
    }
}

I've found a newer version of jdom, updated the version and I've decided to remove it, but when I do, I recieve :
Execution failed for task 'my-project:compileJava'.
> Could not resolve all files for configuration ':my-project:compileClasspath'.
   > Failed to transform jdom-1.0.jar (jdom:jdom:1.0) to match attributes {artifactType=jar, javaModule=true, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-api}.
      > Execution failed for ExtraModuleInfoTransform: C:\Users\Z0047FFS\.gradle\caches\modules-2\files-2.1\jdom\jdom\1.0\a2ac1cd690ab4c80defe7f9bce14d35934c35cec\jdom-1.0.jar.
         > Not a module and no mapping defined: jdom-1.0.jar

It looks like it's still there somewhere. Things I've tried :

removed .gradle and build in my buildSrc folder
removed .gradle\caches\modules-2\files-2.1\jdom
removed .gradle\*
restart IDE IDEA IntelliJ & invalidate caches
removed .gradle from the root of my project

My setup is :

extra-java-module-info:0.10
Gradle 7.3
java 17.0.1
IntelliJ IDEA

Any advice would be much appreciated. Thanks in advance.
Edit: When I remove the implementation(... from dependencies, and keep the module(... in extraJavaModuleInfo { , then It works, even though I removed it.

Resolved : It was transitive dependency coming from implementation("com.intellij:forms_rt:7.0.3").


slow/ease the speed slightly on the compass hand animation

it should feel like a gentle swing (finding north) and less like it's snapping into place (like a magnet)

covered by #75


Search doesn't show up on online version of docs

lol yes I was searching for it yesterday and couldn't figure it out. thanks


[FEATURE REQUEST] Ability to make tags

Is your feature request related to a problem? Please describe.
Ability to create tags and checkout to tags is important especially when we try to make a wrapper like the stockroom
Describe the solution you'd like
After commit, like GitHub, the user should be able to tag. User should also be able to checkout to tags

FYI, I think that in the short term, branches can accomplish most of the needed functionality.

Agreed, but adding tags is not a difficult task either. I see why'd you think that way but I had a need for this in the wrapper I was writing for hangar for model storage. Specifying commits (tags) over branches is bit more convenient there

So Sherin, I actually think this is one feature of git which I'd prefer not to emulate. Tags were added as kind of an afterthought, and have a couple really horrifying properties:

Since there's nothing connecting them directly to the immutable history of the project, they don't offer any sort of guarantee there's something tagged version x.Y.Z will remain that exact same tag if the project to maintainer where to go a little crazy and remove or replace it on another commit.

Because there's nothing connecting a tag with the rest of the ancestor graph, the way in which they are transferred between clients and servers is not deterministic. Were a tag Incorporated directly into the merkle tree, it would be possible to automatically push and pull tags without trust (history can be independently verified). Since that's not the case, fetching and pushing tags has remained this orphaned operation in Git.

At the end of the day what we are looking for is a away to assign a human readable name to a particular commit digest / point in time. I agree with Eli that branches solve most of this right now, and that we've got bigger things to work on. I know keeping the digest around isn't the most convenient thing in the world, but it really is the best way to refer to a commit.
I'm sure we could figure out a solution that would actually work here for a project like this at its stage in its life cycle. We could technically add the concept of a tag field in the components that are hashed along each commit, or we might even come up with something a bit more clever. I don't want to discourage you from working on this if it's something that you need, but getting to an acceptable solution isn't really as trivial as it appears at first.


Variable for traceID

Hello guys, it's a great and long waited datasource for grafana, thank you very much!
I understand that it's just first version of this plugin so I have a question:
Is it possible or would it be possible to set trace id from variable?

Hi @eremeevfd ,
Thanks for the feedback! Currently, variables are not supported. However, it's just the first version as you mentioned. :)
I will tag this issue as a feature request.

@xiangshen-dk thank you!

Variable support for project id and trace id has been added. For trace id, it needs to be a text input and project ids can be get from a query.


add highligh search result support

Just add highlight params support.

Hi elasticquent developers & itbdw,
This solution is a great start for highlighting support, but it still requires developers to manually access the getHits() results collection method to get highlighted terms.
Do we want to consider automatically replacing the highlighted results in their appropriate fields? I can submit a pull request as well if so. Implementation would be similar to the below code after transforming the $highlight associative array into the right structure.
$return = array_replace($_source, $highlight)

Brandon

Thanks @itbdw
I want to spend some time this weekend finishing the test suite and looking over open issues & PR's, so this will be looked at properly a little later.

Hi @gluxon
Thanks.
I've updated the code. We can replace the data fields automatically now if this pull request was merged!
@timgws

@itbdw Awesome! Thanks a lot for this pull request. Can't wait to integrate it into my projects.

@itbdw Thanks for your job.

Is this ever going to get merged back?

@lionslair soon. I am worried that there is roughly 8 paramteres on this searchByQuery function, it is a function that is already doing a lot of work, and it is only going to increase as we add more ES functionality. We need to work out a way that we can pull out some of the parameters away from this function.

I would actually prefer it not to be tied to the search at all. I am performing a search by building a dsl query. I am then passing it through the complexSearch.
I have all the highlights in my results from within the hits. However this will only work for one query. I think it should be split out and actually use the highlights when within hydrateElasticquentResult or newElasticquentResultCollection
Its the fact that hydrateElasticquentResult and newElasticquentResultCollection do not use the  hightlights that causes me a big problem.
I realise it is difficult because multiple highlights can exist for one field. however I think if using highlights the highlights could be concatenated together.
In terms of what I am looking for the only solution I see is rebuilding the results all over again into a new collection.
Thoughts?
FYI Only been using laravel for two weeks and elastic for one. sorry if miss something.

near 1 year problem how may faster&

Any update regard highlight?

Highlight functionality is still in review stage when it will be approved ?


[next] Mysql examples

This PR is focused on providing common usage examples for sqlx.
Features:

README with instructions how to run this example and a docker-compose file for standing up Chinook

db pool creation and connection

SELECT
a) select one record
b) parameters e.g. SELECT * from account where id = ?
c) select many records into a Vec
d) selecting into a rust struct with differing column names
e) providing a link to data types (e.g. that an i32 maps to an INT in MySQL)
f) selecting a datetime into rust (may get to this one)

INSERT
a) insert a record

DELETE
b) delete a record

UPDATE
a) update statement

Example of a transaction

Example of sqlx with error handling

+1

Closing PRs against the next branch because we're likely going in a different direction and I want to clean up the PR queue. Your effort is appreciated, though! We might end up using this at some point, not sure yet.


Job does not exist (bug)

Sponge Version:  1.12.2-2838-7.1.9
Forge Version:  <IP_ADDRESS>47
Total Economy Version:  1.8.1
Description of issue
Jobs are added to the configuration file, but writes that they do not exist.
Reeve {         require {             job="miner"             level=20             permission="totaleconomy.job.miner"         }         salary=150         sets=[             ores         ]     } 	Senior_warrior {         require {             job="warrior"             level=20             permission="totaleconomy.job.warrior"         }         salary=150         sets=[             mobs         ]     } 	Experienced_miner {         require {             job="Reeve"             level=30             permission="totaleconomy.job.miner"         }         salary=250         sets=[             ores         ]     } 	Experienced_warrior {         require {             job="Senior_warrior"             level=30             permission="totaleconomy.job.warrior"         }         salary=250         sets=[             mobs         ]     } 	Legendary_miner {         require {             job="Experienced_miner"             level=50             permission="totaleconomy.job.miner"         }         salary=550         sets=[             ores         ]     } 	Legendary_warrior {         require {             job="Experienced_warrior"             level=50             permission="totaleconomy.job.warrior"         }         salary=550         sets=[             mobs         ]     }
Console errors

How to fix this bug?

Related Configuration Files
https://gist.github.com/newresource-dev/e0a4b4c71aec86e95175229cb4830ce6

Hello there :wave:
Can you please attach your server logs so we can see whether or not something is preventing the job configuration from being loaded?

last logs:
latest.log
debug.log

Just mentioning that I did not forget about this. At the moment, I just have very few spare time.
It seems like there is no syntactical configuration issue on your side. However, please check whether or not writing the jobs names in all lowercase fixes the issue.


The mainnet and testnet editions share the same backup file names, which conflicts each other.

The backup file names are: channel.db, wallet.db in google drive and local device. The mainnet and testnet edtions share the same backup file names, which conflicts each other if i installed both.

Should has 2 ways to solve that:

Different name - Mainnet: channel.db, wallet.db. Testnet: channel-testnet.db, wallet-testnet.db.
Put files into diff paths - \mainnet\ and \testnet\

Another thing that needs to solve for installing both versions on one phone.
There should be a different package in code like this

wallet.omnibolt.com
wallet_testnet.omnibolt.com

resolved


[BrokenLinksH2] Fix path in link

Line 43. Removing a broken link from the table.

@tfosmark, Please can you review and merge!

Global effort to fix broken links
@Taojunshen
The Aquent team is fixing broken links on docs.microsoft.com for the rest of H2. This effort will eliminate potential accessibility, security, and usability issues. This PR includes only link fixes and does not change other content. Please merge this PR. Thanks!


Items

Add Items Controller and functionalities.
Let me fix linters later.
Thanks!
Approve to go further.

@MasumaJaffery
Great job!


Build the website for Github Pages

Build a simple website to promote Speakit JS and share it in any Discord Chanel to promote it.

Website was enable some weeks ago. I forgot to close this issue.


simplified-installer: do not mandate FDO section in simplified provisioning

This pull request includes changes so that:

simplified installer iso can be build without mentioning FDO section in the blueprint.

change done for rhel8 and rhel9 distros.

test case added for this use case in test/case/ostree-simplified-installer.sh

[ ] adequate testing for the new functionality or fixed issue

[ ] adequate documentation informing people about the change such as

[ ] submit a PR for the guides repository if this PR changed any behavior described there: https://www.osbuild.org/guides/

Hi @sarmahaj, I have a question for this PR. Does this PR mean FDO is not required by simplified installer? If no FDO in simplified installer, why not use edge-installer? Thanks. cc @runcom

Hi @henrywang , well this PR doesn't change anything if FDO section is mentioned in the bluetooth, but now allows user to build simplified installer even if FDO section is not provided. (so that now FDO becomes optional rather than compulsory). I will let @runcom clarify more on this requirement.

Hi @sarmahaj, I have a question for this PR. Does this PR mean FDO is not required by simplified installer? If no FDO in simplified installer, why not use edge-installer? Thanks. cc @runcom

because in simplified installer we're gonna use ignition too instead of anaconda+kickstart

a couple of tiny comments

you have some shellcheck failures

[2022-10-21T09:25:13-04:00] 📄 simplified_iso_without_fdo blueprint
name = "simplified_iso_without_fdo"
description = "A rhel-edge simplified-installer image without FDO”
version = "0.0.1"
modules = []
groups = []
[customizations]
installation_device = "/dev/vda"
[2022-10-21T09:25:13-04:00] 📋 Preparing installer blueprint
ERROR: BlueprintsError: 400 Bad Request: The browser (or proxy) sent a request that this server could not understand: toml: line 2 (last key "description"): strings cannot contain newlines

wat

@sarmahaj Found another issue on line 893 -e fdo_credential="true" should be changed to -e fdo_credential="false" because the new left VM will be run upgrade test, so the args should be kept same.

@sarmahaj All ostree tests are green. The only failure is not caused by this PR. We have discussion on slack thread https://coreos.slack.com/archives/C022TDCV3FH/p1668528346900659
@achilleas-k Should we land this PR or wait until OCI runtime error gets fixed or has workaround? Thanks.

@henrywang Thanks for reviewing ! Good to see all other tests green!
cc: @runcom

@achilleas-k Should we land this PR or wait until OCI runtime error gets fixed or has workaround? Thanks.

That issue is currently being fixed by @ondrejbudai so maybe we can wait


Update FAQ.md

self-explanatory

This doesn't solve any issues, but ok. I initially can't find where to give feedback on imagery.
The fresh imagery page linked in this article is still available. Not sure if they are still using it though.

Wikipedia encourages editors to notate broken links as such, in order to encourage other editors to fix the broken links.  Shouldn't the Openstreetmap help articles do the same?
In that sense, it solves the issue of a broken link not being noted as such.
-----Original Message-----
From: danieldegroot2 @.>
To: openstreetmap/iD @.>
Cc: GPSpilot @.>; Author @.>
Sent: Sun, Jan 1, 2023 2:03 pm
Subject: Re: [openstreetmap/iD] Update FAQ.md (PR #9445)
This doesn't solve any issues, but ok. I initially can't find where to give feedback on imagery.The fresh imagery page linked in this article is still available. Not sure if they are still using it though.—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

That paragraph should just be deleted. It implies that there is a feedback link for MapBox somewhere when in fact no such link exists.

I wrote the community team at Mapbox what the current solution(s) exist to provide feedback about their imagery.

That paragraph should just be deleted.

I'd like to only do this if there really is no way to provide feedback (or I don't hear from them in a reasonable time).


Additional: Add new BIN range for MasterCard.

For the sake of closing an issue, this fixes #1904 in the manner suggested by @tritontech, with updated tests.

Thanks a lot for your contribution :)


Drawing tools shortcuts don't work

For example, for polygon the shortcut is "p". Tried it and "P" and its combination with Ctrl, Alt etc - didn't work.

It's alt-shortcut. Check your other plugins - it's possible for another plugin to disable the accessKeys by forcing a recreate of the draw tools controls.
Does the hover text for the polygon button show "Draw a polygon [p]"? If so, the access key should be registered.

The hover text for the polygon button is "Draw a polygon [p]", but neither control + P nor option (alt) + P works.

it's browser+os depending:
plz check: https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/accesskey


Improve the UX of the docs website

fix the search feature
add categories level for guides & cookbooks
shorten guides & cookbooks titles in the links tree
generate sitemap & analyse it
look for other improvements

Some sections from Reference could probably be merged with Guides e.g.:

Reference > Proxy authentication and Guides > Repositories and HTTP Proxies

Also Under the hood and Guides > Internals have some similiar elements


Segmentation fault (core dumped)

hello,
I have a problem with the simulator. When I ran the code of EKF and the simulator term 2, there is an error of Segmentation fault (core dumped). I am sure the code is right. I do not know the reason lead to this problem? Could you give me some favor?

Sorry for the technical issues.  The most effective way to resolve this is to discuss with a mentor.  If this does turn out to be a simulator bug please post the details here and we will reopen.

Hey, were you able to solve this?


go/types: don't accept invalid signature func f(x, y, z ...int)

Neither the parser not the type-checker appear to refuse this code:
package p

func f(x, y, z ...int)

The go/parser refuses them in receiver and result parameter lists. It might be better to accept them everywhere and just leave it to the type checker. Filed follow-up issue #28326 for that (long-term); this is about the stop gap fix to make sure we recognized the error somewhere.


feat: support non-backed enums

This pull request add supports to EnumTransformer to also transform non-backed enums. I often had to back enums even though I didn't really need to back them, only to make them transformable.
Note: this PR is somewhat related to https://github.com/spatie/typescript-transformer/pull/42, this line should be changed to UnitEnum if this PR is accepted so the DefaultCollector actually works with all enums.

Mhh not sure if this is correct and if we want to add this.
Since UnitEnums should only be used within code staying in the same system. I think when you're transforming something you always want to have backed enums since then you're internal PHP code can change but other systems will keep working because the backed value stays the same.

What's the point in generating TypeScript types for UnitEnum? You can't serialize them to a scalar value that you can use outside of PHP.
UnitEnum::JS can't be converted to a string and you can't do UnitEnum::from('JS') either, so converting it to  'JS' | 'PHP' is wrong.
I'm curious why you would need to transform values to TypeScript but not actually back them by an integer or string.

Nevermind, for some reason I thought non-backed enums could still be serialized by Laravel. My situation was that I had an enum which didn't really need to be backed since it wasn't stored in the database, but it was returned to the front-end by a data object, hence I wanted it to be defined by TypeScript. In that situation I didn't need UnitEnum::from either.

👍

I really think @innocenzi case is a valid case. for example, I have a case where I want to specify an input field type, in PHP I have it like this:
enum FieldTypes
{
  case 'text';
  case 'number';
  ......
}

In PHP, I just use it like FieldTypes::text->name
In TS there is no Field.text.name , so you will need to write your own function to get the name
enum FieldTypes { 'string', 'text'};

function getName(type: FieldTypes)
{
    return FieldTypes[type]
}

console.log(getName(FieldTypes.string))

which end up to be same as PHP.
I think that is way easier to force backed enum, as you don't need to re-write each key as a value


Refactor DataGenerator Classes

Feature Request
Description of Problem:
Split Partitioning responsibility from Generation responsibility
Turn Reductive Walker into its own DataGenerator
Acceptance Criteria:
All tests continue to pass

@pdaulbyscottlogic could we add a reason behind this change. I.e. describe the why rather than the what/how, that's in the PR.
I.e. why are we making this change, what benefit do we expect to see from it. What will it allow us to do in future that we currently cannot do, etc.

Is there scope to add more unit testing to the newly refactored system as this should now be simpler than previous?


Update test data set to reflect new file names

Originally reported by: Marcel Martin (Bitbucket: marcelm, GitHub: marcelm)

The database FASTA files in the "testdata-0.2" dataset still include the species name.

Bitbucket: https://bitbucket.org/igdiscover/igdiscover/issue/36

Fixed a while ago. Test data set 0.3 is now current.


Update src/com/dumptruckman/spamhammer/SpamHammer.java

updated listener

Already updated, thanks though. (was on a different branch)


Repo.all calls to gather/aggregate data using S3 table function seem to fail with readonly=1

I'm seeing an issue where the readonly setting that ecto_ch uses by default prevents reading data from S3 buckets.
This seems to happen because ecto_ch hardcodes the readonly setting on :all operations to readonly: 1.
I didn't see any other issues referencing this in the issue tracker so it's likely no one has run into this before.
If there's not a reason for having readonly set to 2 would it make more sense to have that as the default to allow for this use-case? Or maybe adding some documentation and updating the put_setting function to replace the setting rather than adding it as a duplicate key which feels brittle?
Example
query = from(
  fragment("s3(?, CSV, \"example String\")", ^"s3://my-bucket/*/data.csv"),
  select: [:company_id]
)

Repo.all(query) # fails
Repo.all(query, [settings: [readonly: 2]]) # succeeds

Here's the error received on failure:
** (Ch.Error) Code: 164. DB::Exception: admin: Cannot execute query in readonly mode. (READONLY) (version <IP_ADDRESS> (official build))

I'll open a PR later once I have a moment, but locally I'm also able to address the issue with this patch:
diff --git a/lib/ecto/adapters/clickhouse.ex b/lib/ecto/adapters/clickhouse.ex
index c1161bb..2a04b8a 100644
--- a/lib/ecto/adapters/clickhouse.ex
+++ b/lib/ecto/adapters/clickhouse.ex
@@ -330,7 +330,7 @@ defmodule Ecto.Adapters.ClickHouse do
     opts =
       case operation do
         :all ->
-          [{:command, :select} | put_setting(opts, :readonly, 1)]
+          [{:command, :select} | put_new_setting(opts, {:readonly, 2})]

         :delete_all ->
           [{:command, :delete} | opts]
@@ -403,9 +403,10 @@ defmodule Ecto.Adapters.ClickHouse do
     Ecto.Adapter.Queryable.plan_query(operation, Ecto.Adapters.ClickHouse, queryable)
   end

-  defp put_setting(opts, key, value) do
-    setting = {key, value}
-    Keyword.update(opts, :settings, [setting], fn settings -> [setting | settings] end)
+  defp put_new_setting(opts, {key, value} = new_setting) do
+    Keyword.update(opts, :settings, [new_setting], fn
+      existing_settings -> Keyword.put_new(existing_settings, key, value)
+    end)
   end

   @doc false

👋 @oceanlewis
:readonly option was used for SELECT queries to better reflect the GET behavior (which we used before switching all queries to POST) which automatically sets readonly=1.

When using the GET method in the HTTP interface, readonly = 1 is set automatically. To modify data, use the POST method.

Hey! Thanks for taking the time to look at this one. Once this option is removed will we still need to pass in readonly: 2 explicitly? If the default is 1 then it does sound like that is the case.

No, since all our requests are HTTP POST, there wouldn't be any implicit readonly option set.

@ruslandoga thank you for clarifying! This is exactly the outcome I was hoping for, thank you ❤


New Sheet: Avatar Legends - Community-contributed

Changes / Comments

Community-contributed sheet for Avatar Legends, a "Powered by the Apocalypse"-game
Quickstart Rules available
based on the MotW sheet
Primary Author: Cory Vincent. Misc fixes & code cleanup: Andreas J.

Roll20 Requests
Comments are very helpful for reviewing the code changes. Please answer the relevant questions below in your comment.

[x] Does the pull request title have the sheet name(s)? Include each sheet name.
[ ] Is this a bug fix?
[ ] Does this add functional enhancements (new features or extending existing features) ?
[ ] Does this add or change functional aesthetics (such as layout or color scheme) ?
[ ] If changing or removing attributes, what steps have you taken, if any, to preserve player data ?
[x] If this is a new sheet, did you follow Building Character Sheets standards ?

If you do not know English. Please leave a comment in your native language.

Character Sheet Info Roll20 Internal Use only.


Add debug packages to the neutron_agent container

Please add the arpping as package to the neutron_agent container, it probably makes sense to install it everywhere.
This tool is used to debug L2/ARP issues, not just including conflicting IPs and is usually used in combination with PING which is installed already

I would suggest that a specific list be setup which can be used for extra packages and it can be set to be targeted at the various groups. This list must not conflict with anything from os-ansible-deployment.

The rpc-support play is in there, so we can add it to all containers/hosts by simply adjusting the support_util_packages var in defaults/main.yml for the rpc-support role.
If this should only be installed on the neutron_agent containers I can set that up - do we have an idea of whether this should definitely be installed everywhere or if its only required on neutron_agent containers.

Please add ethtool as well

Bumping to priority 1 for sprint starting 6/22/2015.
Internal docs should be updated to reflect that the debugging packages are added.

@BjoernT Can you confirm whether you want these packages installed everywhere, or only the neutron_agent containers?

neutron agent container is fine, that's where we need it most

#215 is the kilo backport.

Both master and kilo merged, closing issue.


microg.org down?

what happened to microg.org?
is it abandoned?

microg.com is not related to this project:

MicroGraphics is a manufacturers' rep company incorporated in 1980.

But https://microg.org is and it really is down at the moment.

oops, sorry, I corrected my message, I meant microg.org of course

A temporary downtime due to issue in datacenter. Hopefully won't last for long.

ok it's up again

great!
@patrickdrd, you can close this issue now


Missing or function.

To my supprise there is no or function implemented, I guess this was a mistake?
Maybe this will do:
function or (long, other, target) {
  target.low = long.low | other.low
  target.high = long.high | other.high
  target.unsigned = !!long.unsigned
  return target
}

Thank you @JoakimCh for pointing that out, I think I missed it when I first ported it! Good catch!


Closes: #1

Updated validations.py python script.
Fixed the behavior of validate_user function in validations.py.
Closes #1
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

Learned what is CLA

@Rc561U Yeah, It's "Conjugated linoleic acid" 😄


⚠ Cioos Pacific CKAN Sitemap has degraded performance

In 748b5b4, Cioos Pacific CKAN Sitemap (https://catalogue.cioospacific.ca/sitemap/sitemap-1.xml) experienced degraded performance:

HTTP code: 200
Response time: 14664 ms

Resolved: Cioos Pacific CKAN Sitemap performance has improved in fc65ba1 after 2 hours, 56 minutes.


Blazor failed to load large fils

It is likely not Blazor issue per se, but I would be good if it fail more gracefully, if some inherent limitations from the Browser.
Basically I have following error in Chrome:
mono.js:1 Uncaught (in promise) RuntimeError: memory access out of bounds
    at wasm-function[290]:104
    at wasm-function[2458]:125
    at wasm-function[563]:16
    at wasm-function[246]:115
    at wasm-function[2428]:33
    at wasm-function[2429]:41
    at wasm-function[4877]:10
    at Module._mono_wasm_string_from_js (http://localhost:58134/_framework/wasm/mono.js:1:173587)
    at ccall (http://localhost:58134/_framework/wasm/mono.js:1:5651)
    at http://localhost:58134/_framework/wasm/mono.js:1:6032

My scenario following. I have form with input file.
User select text file.
Then application load file, split by lines and process file.
When I load file with only 914KB it works. When I load larger file 7876KB it fails to load with aforementioned error. Not sure who is to blame.

Since this seems to be due to the underlying Mono WebAssembly platform rather than anything in Blazor, would you be able to report it to https://github.com/mono/mono? Please mention that this is WebAssembly-specific.

@SteveSandersonMS Seems to be this is indeed could handled on the Blazor side. @kumpera suggest that this is due to way how Blazor configure memory in Mono/WASM. Seems to be there no explicit memory limits in the Blazor and Mono think that memory unlimited, and as such it does not report OOM. If you think it would be worth investigation closes, I could take a look, since I don't like my current workaround for an issue.

@danroth27 thanks! From my understanding that's really the cause

Hi, I experience something similar today, with Blazor 0.7.

Form with file input, where I select one file.
Get data from JS using the File interface.
Get "WASM: GC_MAJOR: (LOS overflow)" error.

Everything works with files smaller then around 3 MB.
My first try, was to get the file content from JS in one big BASE64 string. That failed on +3 MB files.
My second try, was to get data from JS in smaller chuncks, and then build the Byte[] in C#. Thta failed on +3 MB files.
My last try, was to stop getting the data into a Byte[], and insted into a MemoryStream.
I discovered that the GC_MAJOR error occured, when I returned the Byte[] at the end of my GetData method (the return statement).
But when giving the GetData method a MemoryStream, and save the received data chuncks into that, I was able to pass the data back from my GetData method and pass it on to my PostData method.
Not I am stuck at:
await this.httpClient.PostAsync(httpServerAddress, httpDataStream);

So I hope that it is fixed by https://github.com/aspnet/AspNetCore/issues/5617 or something else in Blazor 0.8 or soon.

@rpc-scandinavia WASM: GC_MAJOR: (LOS overflow) isn't an error, it's a debug message, telling you that a full GC occured because the large object heap is full.

Thank you @Suchiman, I copy that. I am still working on my problem, and can see that the server receives and responds correctly to the request. In the browsers "Network" I can see that the response to the POST is correct. But I get a exceptiion, which didn't show before I used the MemoryStream (unless I didn't wait long ernough  :-)
Error: System.InvalidOperationException at System.Threading.Tasks.TaskCompletionSource`1[TResult].SetResult (TResult result) <0x41c6f08 + 0x0001c> in <4b5441f51da44e28b14fa0baa2935bda>:0 at Microsoft.AspNetCore.Blazor.Browser.Http.BrowserHttpMessageHandler.ReceiveResponse (System.String id, System.String responseDescriptorJson, System.Byte[] responseBodyData, System.String errorText) <0x41b92b8 + 0x000e0> in <6e8b4c57aeeb4593b71c0de6d0ce9454>:0

@rpc-scandinavia this is more interesting ReceiveResponse is the function JS calls when the response has been received here https://github.com/aspnet/Blazor/blob/5deb85df8784800742e7a6d68575c67dd6fedb5a/src/Microsoft.AspNetCore.Blazor.Browser/Http/BrowserHttpMessageHandler.cs#L112
This should only be able to happen if someone were trying to set the Result twice or error it once and then try to set it

Okay @Suchiman, I have been poking around in "blazor.webassembly.js" with some "console.log"'s.
This is the response the browser reports in network response:
{
  "requestService": "postMuseumPictureImage",
  "requestGuid": "406b2e9a-566f-4d16-a069-7e962bee87e0",
  "responseCode": 0,
  "responseMessage": "Returning one record saved, with the guid '406b2e9a-566f-4d16-a069-7e962bee87e0'.",
  "responseMuseumPicture": {
    "guid": "406b2e9a-566f-4d16-a069-7e962bee87e0",
    "order": 0.0,
    "createdDate": "2019-02-22 22:32:51",
    "modifiedDate": "2019-02-22 22:32:51",
    "deletedDate": "0001-01-01 00:00:00",
    "deleted": false,
    "enabled": false,
    "description": "image/jpeg",
    "originalFileName": "IMG_4498.JPG",
    "originalFileSize": 10533250.0,
    "originalFileDate": "2016-08-20 09:12:02"
  }
}

And this is what I got from a "console.log" (i have wrapped the lines):
```
headers: (7)
0: Array [
"content-disposition",
"inline; "response.json"
creation-date="Fri, 22 Feb 2019 22:32:51 +0100";
modification-date="Fri, 22 Feb 2019 22:32:51 +0100";
read-date="Fri, 22 Feb 2019 22:32:51 +0100";
"
]
1: Array [
"content-length",
"662"
]
2: Array [
"content-type",
"application/json"
]
3: Array [
"date",
"Fri, 22 Feb 2019 22:32:51 +0100"
]
4: Array [
"last-modified",
"Fri, 22 Feb 2019 22:32:51 +0100"
]
5: Array [
"pragma", "public"
]
6: Array [
"server",
"Microsoft-NetCore/2.0"
]
length: 7__proto__: Array []
statusCode: 200
statusText: "OK"
__proto__: Object { … } blazor.webassembly.js:22:1
That content-disposition don't match the browser result.


Error code 404 "V3 agent not found."

I have a messaging extension (compose extension) app and a bot app. Both of them have the same Azure Bot Channels Registration resource (the value of botId in manifest.json is the same).
Messaging extension returns an adaptive card which contains the button with "Action.Submit" type. The request to the bot should be sent after clicking on that button. But instead of request to the bot I got the error with the code 404 and the message "V3 agent not found."
The issue is reproduced for both team chat and personal chat.
Also please note that this issue is reproduced only when triggering Action.Submit from a card returned by ME app. If Bot returns the card this issue is not reproduced and request is sent to the bot successfully.

We are looking into this issue.

I'm seeing this too. Looks like it has something undefined when constructing the url to invoke:

I'm seeing this too. Looks like it has something undefined when constructing the url to invoke:

Actually I don't have undefined in this url but this issue is still reproduced.

@Leks12lk This issue basically prevents my whole app from working, have you found any workarounds?

@tdwhite0  actually I haven't found any workarounds yet.

FYI, I also seeing this issue. When trying to click on card from ME:

But when using same card from Bot. I see:

@Wajeed-msft did you have a chance to look into this issue? Are there any updates?

We are able to repro this. I'll update this post as soon as I have updates.

This has been fixed now. Please try out and re-open if you still face any issues.

@Gousia-MSFT I can confirm that it is working fine for me. Thank you for all your help.

Hi @Gousia-MSFT it works for me as well. Thanks.


cmd/go: go directive is not only added during go mod init, but also under specific and surprising conditions

What version of Go are you using (go version)?

$ go version
go version go1.12 darwin/amd64

Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/dmitshur/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/dmitshur/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/3m/rg2zm24d1jg40wb48wr0hdjw00jwcj/T/go-build766457690=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?
Run the following commands in one module that has no module requirements:
$ cat go.mod
module m1

$ go mod tidy

$ cat go.mod
module m1

go 1.12

Now run the same commands in another module that has 1 or more module requirements:
$ cat go.mod
module m2

require rsc.io/quote v1.0.0

$ go mod tidy

$ cat go.mod
module m2

require rsc.io/quote v1.0.0

Additionally, if the source code in module m2 is modified to no longer import anything from the rsc.io/quote module, and go mod tidy is run, the first time it removes the require rsc.io/quote v1.0.0 line, leaving just module m2. The second time it adds a go directive.
What did you expect to see?
For modules that already exist, and do not already contain a go directive in their go.mod file, the go directive should either be always added automatically (i.e., during any of go build, go test, go mod tidy, etc., operations), or it should never be added.
What did you see instead?
Sometimes it's added, sometimes it isn't added.
Based on investigating the code with @julieqiu and @heschik, we've found that the go directive is always added to go.mod on any go build, go test, go mod tidy, etc., operation whenever the go.mod file has exactly one statement: the module statement. If the go.mod file has at least 1 require, or replace, or exclude directive, in addition to the module statement, then various go operations do not add a go directive.
This behavior is surprising and hard to predict (without looking into the source code to figure it out). I suspect it's an unintentional behavior. The commit message of CL 147281 that implemented this behavior says:

cmd/go: add go statement when initializing go.mod
When creating a go.mod file, add a go statement mentioning the current Go version.

Based on that, I suspect the originally intended behavior was to make it so that a go directive is automatically inserted only when creating a new Go module (via go mod init), but not when working with an existing module that has a go.mod file. I will assign this to @ianlancetaylor to confirm if this is a bug, and perhaps make the decision on how and whether this issue should be resolved.
I think we should fix this and even consider backporting to Go 1.12.1, because this inconsistent and unpredictable logic of when a go directive is added is quite disruptive to the user experience when in module mode.
/cc @bcmills @matloob

Likely related: https://github.com/golang/go/issues/30043#issuecomment-467286398

Before thinking about what should happen, why is the unpredictable go directive "quite disruptive to the user experience when in module mode"?  Where does the disruption occur?

The intent of the CL was to add a "go" statement to a go.mod file, if one did not already exist, when running either go mod init or go mod tidy.  Adding a "go" statement when running go mod tidy was suggested by @bcmills during CL review.
So it sounds like there is a bug: if the existing go.mod file contains anything other than just a "module" statement, then running go mod tidy does not add a "go" directive.

why is the unpredictable go directive "quite disruptive to the user experience when in module mode"?

The behavior I've observed is that various people are either uncertain about when the go directive is actually added (e.g., they describe it as "sometimes"), or they have an incorrect idea of when it's added (e.g., "always added by go mod tidy in Go 1.12").
If people choose to not add the go directive until figuring out what value it should be (related to #30791), it means they sometimes have to remove the go directive added (e.g., after running go test on a module with 0 required modules) but not other times (e.g., after running go test on a module with 1+ required modules). This encourages people to add the directive with an arbitrary value before understanding the short-term and long-term consequences of doing so.

Where does the disruption occur?

I've observed it occur during code review, and while people are running go commands inside various modules.

The intent of the CL was to add a "go" statement to a go.mod file, if one did not already exist, when running either go mod init or go mod tidy. Adding a "go" statement when running go mod tidy was suggested by @bcmills during CL review.

Currently, it also gets added when running go build or go test in a module with a go.mod file that has zero module requirements (and no exclude, replace statements):
$ cat go.mod
module m3
$ go test
PASS
ok  	m3	0.041s
$ cat go.mod
module m3

go 1.12

Is that a bug or intended behavior?

So it sounds like there is a bug: if the existing go.mod file contains anything other than just a "module" statement, then running go mod tidy does not add a "go" directive.

Making both go mod init and go mod tidy add the go directive, if it's not already present, regardless of whether the go.mod file contains just a module statement or more statements, sounds like a valid resolution to this issue.
I've considered suggesting that we change the behavior such that go directive is added only during go mod init and none of the other commands, so that existing modules made in Go 1.11 (without the go directive) don't suddenly start gaining a go directive after users upgrade to Go 1.12. However, if the go directive will ever become mandatory, that has to happen sometime, so whether it happens in Go 1.12 or 1.13 doesn't change that some version of Go will have to start adding it to existing modules in addition to new modules. So it might as well be Go 1.12.

The empty-requirements behavior is probably a side effect of this case:
https://github.com/golang/go/blob/5f40351708cabe28f90500be87dbe316a2280f4a/src/cmd/go/internal/modload/init.go#L376-L380
The go directive is added here:
https://github.com/golang/go/blob/5f40351708cabe28f90500be87dbe316a2280f4a/src/cmd/go/internal/modload/init.go#L424
Perhaps that call should be moved inside the modFile == nil condition.

Or, going in the other direction, perhaps we should always add the go directive if it is missing. That ensures that a module that was successfully built and tested with, say, Go 1.13, continues to build (with the same meaning) with Go 1.14.

CC @jayconrod

@gopherbot, please backport to 1.12: the current behavior is confusing, and the fix is small


Bump elliott

$ git log --oneline 96331a781e974b3b06cb5e032cade30af451c699..cdfd5ad36f7e7034ef9e1a8cd593b5ff84b2c145
cdfd5ad (HEAD -> master, origin/master, origin/HEAD) Merge pull request #409 from joepvd/work-around-not-shipped-yet-jiras
7f117f1 Inspect errors from errata tool better

/lgtm


[TRANSPOWER] [2/4] [DONOTMERGE] Switch to public SDK components

Depends on https://github.com/sonyxperiadev/transpower/pull/12
These patches convert most of the remaining private classes/methods to publicly available components, which will help smoothen the transition away from private_apis to sdk_version compliancy.
DONOTMERGE:
Unlike the original code this patch handles the error coming from invokeOemRilRequestRaw, consequently throwing an IllegalArgumentException instead of silently ignoring it.
See this post for more details. This commit can be picked to catch error messages on the current revision as well.

cherry-picked


Fix for issue #5

I don't know is it really would fix  issue #5 , but i'll check it

Weird it's still not working. Just throwing empty line in console... Still no 'build' folder ...

I'm really have no idea how to fix it :(