fix: optimize inscriptions pagination query

Remove CTEs and optimize sorting

:tada: This PR is included in version 1.2.1-beta.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

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


libmxnet.dll seems very big

After downloading the nightlies (thank you very much for providing), I notice the libmxnet.dll is very large (250M):
253384704 Mar 21 04:01 libmxnet.dll
Although, it does compress very small.  Is this correct?  Perhaps there is a lot of empty data in there, which I guess might make some sense.

no problem.it is gpu code.

Thanks for the information.


race condition between mkdir and stat

Under heavy load whenever there are many parallel calls to mkdirp and directory is constantly being created and deleted, it's possible for mkdir to fail with EEXIST and for stat to fail with ENOENT instead of actual value. It's better to re-try mkdir/stat as a whole, not just stat alone, as parent directory might be gone and we would end up with an infinite loop.

To reproduce an issue I run the following script on OSX:
'use strict';

// ---

var cluster = require('cluster');
var mkdirp  = require('mkdirp');

// ---

if (cluster.isMaster) {
  fork(16);
} else {
  work();
}

// ---

function fork(numCPUs) {
  numCPUs = numCPUs || require('os').cpus().length;

  for (var i = 0; i < numCPUs; i++) {
    cluster.fork();
  }

  cluster.on('exit', function (worker) {
    console.log('worker ' + worker.process.pid + ' died');
  });
}

function work() {
  (function next(err) {
    if (err) {
      console.log(err.stack);
      return;
    }

    mkdirp('/tmp/a', next);
  })();
}

... and while it's running, I do rm -rf /tmp/a from time to time and workers fail with EEXIST error.

Quick question from a passerby: doesn't this change now expose the possibility of another infinite loop error case? For example, we're out of inodes or disk space, so mkdir returns ENOSPC, so stat runs, naturally gets ENOENT since the directory couldn't get created. Unless I'm missing something, with this change you go into an infinite loop of mkdir -> ENOSPC -> stat -> ENOENT.

Also after further thought, I think this is somewhat of a non-fix even for the specific sequence of mkdir -> EEXIST -> stat -> ENOENT. If your directory is being created and deleted that quickly, it's just as possible that stat succeeds in the moment before the directory gets deleted. The real problem lies in such rapid create-delete by multiple processes being inherently race-condition-y. Adding a mkdir retry might reduce or hide the problem, but it doesn't really fix it.


Deprecate and then remove duplicated property alluxio.worker.memory.size

Alluxio Version:
2.0.0
Describe the bug
When alluxio.worker.memory.size is specified alongside alluxio.worker.tieredstore.level0.dirs.quota, the first value specified in the quota is ignored.
To Reproduce
Set the two above properties to different values. Worker will fail to start since the size check will be done against alluxio.worker.memory.size instead of the first number in quota.
Expected behavior
Templatized dirs.quota should be the only way to specify worker cache sizing.
Urgency
Low

Does the ordering of these values in alluxio-site.properties affect the result?

seems like alluxio.worker.memory.size is only used in alluxio-mount.sh, tests and mesos/yarn integrations. all core-alluxio references were removed

@ns1123 worker does not fail to start anymore. can you confirm the original issue is no longer reproducible w/ 2.1.0-SNAPSHOT? thx

@madanadit  I think @ns1123 is talking about the Java source code. e.g., it is used as the default value of tier 0 size.
  public static final PropertyKey WORKER_TIERED_STORE_LEVEL0_DIRS_QUOTA =
      new Builder(Template.WORKER_TIERED_STORE_LEVEL_DIRS_QUOTA, 0)
          .setDefaultValue(String.format("${%s}", Name.WORKER_MEMORY_SIZE))
          .setDescription("The capacity of the top storage tier.")
          .setConsistencyCheckLevel(ConsistencyCheckLevel.WARN)
          .setScope(Scope.WORKER)
          .build();

got one more related complain on this https://alluxio-community.slack.com/archives/CEXGGUBDK/p1587761412207400

The current situation is
  public static final PropertyKey WORKER_RAMDISK_SIZE =
      dataSizeBuilder(Name.WORKER_RAMDISK_SIZE)
          .setAlias(Name.WORKER_MEMORY_SIZE)

we still have the conflicts property keys


remove jslint.js' need for directive /*jslint long */ to lint itself, by ignore long regexp's (and comments)

this patch will allow jslint.js to successfully lint itself with without the directive /*jslint long */,
by ignoring long-lines containing regexp's and comments.
i find ignoring long-comments, like source-code references to stackoverlow useful (see screenshot).
live web-demo of patch available at:
https://kaizhu256.github.io/JSLint/branch.jslint_pass_itself_without_long_option/index.html
yay! jslint.js passes without needing long-option

example where a long-comment (reference-link to stackoverflow) can be useful.
note that the long code-line still triggers a warning.

I have long regexps because currently the language does not provide a way to break them into smaller chunks. I am hopeful that that will be repaired someday.
The language already as support for breaking comments.

I have long regexps because currently the language does not provide a way to break them into smaller chunks. I am hopeful that that will be repaired someday.

that's likely not going to happen in the forseeable future, given the current sentiment of tc39 to be more cautious with syntax changes.  instead of wishful thinking on a more-or-less [permanent] todo, perhaps it would make more sense to break the regexp literal as a string with a RegExp call?
const rx_token = new RegExp(
    "^((\\s+)|([a-zA-Z_$][a-zA-Z0-9_$]*)|[(){}\\[\\]?,:;'\"~`]|=(?:==?|>)?|\\.+"
    + "|[*\\/][*\\/=]?|\\+[=+]?|-[=\\-]?|[\\^%]=?|&[&=]?|\\|[|=]?|>{1,3}=?"
    + "|<<?=?|!(?:!|==?)?|(0|[1-9][0-9]*))(.*)$"
);

you forgot to remove the /*jslint long */ directive (or maybe this patch is still in testing? ;)
otherwise, lgtm as tested on live web-demo @ https://kaizhu256.github.io/JSLint/branch.master/index.html

p.s. - i was able to also ignore long-comments with the following patch:
@@ -2814,6 +3111,8 @@
 // The token is a // comment.

         if (snippet === "//") {
+            // jslint-hack - too_long
+            regexp_seen = true;
             snippet = source_line;
             source_line = "";
             the_token = comment(snippet);
@@ -2842,6 +3141,8 @@
                     }
                 }
                 array.push(source_line);
+                // jslint-hack - too_long
+                regexp_seen = true;
                 source_line = next_line();
                 if (source_line === undefined) {
                     return stop_at("unclosed_comment", line, column);


Bootstrap multi-project-support by build recipe

Current build scripts are duplicated much.
Let's apply build recipe into multi-project-support!

Done


Bug: FzfLua buffers NPE with term buffer

RTFM Checklist

[X] I have searched exisiting issues / discussions
[X] I have read the Wiki including the Advanced section
[X] I have read man fzf / I am well versed in shell fzf

Operating system
Mac
Shell
zsh
Neovim version (nvim --version)
v0.10.0
Fzf version (fzf --version)
0.52.1
Output of :lua print(os.getenv('FZF_DEFAULT_OPTS'))
nil
Is the problem reproducible with mini.sh?

[X] My issue is reproducible with mini.sh
[ ] My issue IS NOT reproducible with mini.sh
[ ] I have not tested with mini.sh (not relevant, requires LSP, Windows, etc)

Fzf-lua configuration
require('fzf-lua').setup({
})

Describe the bug / steps to reproduce
In macOS VM with mini.sh:
:term
:enew
:FzfLua buffers
Then I would see

I think the problem is https://github.com/ibhagwan/fzf-lua/blob/a9e5755721c0f24cd1635ea4ff181df5b1bd5dd4/lua/fzf-lua/path.lua#L102 where title is using and path is nil for terminal. I tried adding a simple if nil check would solve this.

Ty @rx2130! Title shouldn’t have been null, fixed in https://github.com/ibhagwan/fzf-lua/commit/b442569ab827f72e344236c598b02cb9dc754e9f.


Score for stochastic sampling

Line: https://github.com/rsennrich/nematus/blob/master/nematus/nmt.py#L958
sample_score += next_p[0][0, nw]

Should be
sample_score -= np.log(next_p[0][0, nw])

thanks - done.


authentication error from sharing SAS URL

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.33.1
Regression From
No response
Architecture
arm64
Storage Explorer Build Number
20240410.2
Platform
macOS
OS Version
Sonoma 14.1
Bug Description
I would like to share access to a storage account with collaborators outside my company. I tried to generate a SAS URL but I get the Authenticator Error when I try to open blob storage. I have a Storage Blob Data Contributor role in this storage account. I also checked my public network access setting, and it is enabled from all networks.
Steps to Reproduce

Connect to storage account
Use Shared Access signature
Paste SAS URL
Open blob containers node
Error window appears

Actual Experience
I used the below settings to generate the SAS URL:

But got this pop up window when I connected to the storage account and tried to open the blob containers in the explorer:
This request is not authorized to perform this operation.
This storage account's 'Firewalls & virtual networks' settings may be blocking access to storage services. Try adding your client IP address to the firewall exceptions, or by allowing access from 'all networks' instead of 'selected networks'. To learn more about Azure Storage firewalls and virtual networks, visit http://go.microsoft.com/fwlink/?LinkId=845443.
Error Details:
{
"name": "RestError",
"code": "AuthorizationFailure",
"statusCode": 403,
"request": {
"streamResponseStatusCodes": {},
"url": "https://aufgehdlstrcoreprodweu01.blob.core.windows.net/?sv=2022-11-02&ss=b&srt=sco&sp=rwdlacyx&se=2024-04-29T15:24:36Z&st=2024-04-29T07:24:36Z&sip=<IP_ADDRESS>&spr=https&sig=AzureSAS Token Redacted&comp=list&include=metadata",
"method": "GET",
"headers": {
"_headersMap": {
"x-ms-version": {
"name": "x-ms-version",
"value": "2023-01-03"
},
"accept": {
"name": "Accept",
"value": "application/xml"
},
"user-agent": {
"name": "User-Agent",
"value": "Microsoft Azure Storage Explorer/1.33.1 (darwin) azsdk-js-storageblob/12.15.0 (NODE-VERSION v18.18.2; Darwin 23.1.0)"
},
"x-ms-client-request-id": {
"name": "x-ms-client-request-id",
"value": "039c4a2d-614a-48e2-ae83-9ab24b457ebc"
}
}
},
"withCredentials": false,
"timeout": 0,
"keepAlive": true,
"decompressResponse": false,
"requestId": "039c4a2d-614a-48e2-ae83-9ab24b457ebc"
},
"response": {
"request": {
"streamResponseStatusCodes": {},
"url": "https://aufgehdlstrcoreprodweu01.blob.core.windows.net/?sv=2022-11-02&ss=b&srt=sco&sp=rwdlacyx&se=2024-04-29T15:24:36Z&st=2024-04-29T07:24:36Z&sip=<IP_ADDRESS>&spr=https&sig=AzureSAS Token Redacted&comp=list&include=metadata",
"method": "GET",
"headers": {
"_headersMap": {
"x-ms-version": {
"name": "x-ms-version",
"value": "2023-01-03"
},
"accept": {
"name": "Accept",
"value": "application/xml"
},
"user-agent": {
"name": "User-Agent",
"value": "Microsoft Azure Storage Explorer/1.33.1 (darwin) azsdk-js-storageblob/12.15.0 (NODE-VERSION v18.18.2; Darwin 23.1.0)"
},
"x-ms-client-request-id": {
"name": "x-ms-client-request-id",
"value": "039c4a2d-614a-48e2-ae83-9ab24b457ebc"
}
}
},
"withCredentials": false,
"timeout": 0,
"keepAlive": true,
"decompressResponse": false,
"requestId": "039c4a2d-614a-48e2-ae83-9ab24b457ebc"
},
"status": 403,
"headers": {
"_headersMap": {
"content-length": {
"name": "content-length",
"value": "246"
},
"content-type": {
"name": "content-type",
"value": "application/xml"
},
"date": {
"name": "date",
"value": "Mon, 29 Apr 2024 07:25:30 GMT"
},
"server": {
"name": "server",
"value": "Microsoft-HTTPAPI/2.0"
},
"x-ms-client-request-id": {
"name": "x-ms-client-request-id",
"value": "039c4a2d-614a-48e2-ae83-9ab24b457ebc"
},
"x-ms-error-code": {
"name": "x-ms-error-code",
"value": "AuthorizationFailure"
},
"x-ms-request-id": {
"name": "x-ms-request-id",
"value": "6e4caa70-301e-0015-4106-9aed19000000"
}
}
},
"bodyAsText": "AuthorizationFailureThis request is not authorized to perform this operation.\nRequestId:6e4caa70-301e-0015-4106-9aed19000000\nTime:2024-04-29T07:25:30.4108810Z",
"parsedBody": {
"message": "This request is not authorized to perform this operation.\nRequestId:6e4caa70-301e-0015-4106-9aed19000000\nTime:2024-04-29T07:25:30.4108810Z",
"code": "AuthorizationFailure"
},
"parsedHeaders": {
"errorCode": "AuthorizationFailure",
"content-length": "246",
"content-type": "application/xml",
"date": "Mon, 29 Apr 2024 07:25:30 GMT",
"server": "Microsoft-HTTPAPI/2.0",
"x-ms-client-request-id": "039c4a2d-614a-48e2-ae83-9ab24b457ebc",
"x-ms-request-id": "6e4caa70-301e-0015-4106-9aed19000000"
}
},
"details": {
"errorCode": "AuthorizationFailure",
"content-length": "246",
"content-type": "application/xml",
"date": "Mon, 29 Apr 2024 07:25:30 GMT",
"server": "Microsoft-HTTPAPI/2.0",
"x-ms-client-request-id": "039c4a2d-614a-48e2-ae83-9ab24b457ebc",
"x-ms-request-id": "6e4caa70-301e-0015-4106-9aed19000000",
"message": "This request is not authorized to perform this operation.\nRequestId:6e4caa70-301e-0015-4106-9aed19000000\nTime:2024-04-29T07:25:30.4108810Z",
"code": "AuthorizationFailure"
}
}
Expected Experience
No response
Additional Context
No response

@gladysmcgan are you able to access the storage account, using Storage Explorer, on the same machine, if you sign in (instead of SAS attach)?

@MRayermannMSFT Yes I'm able to

@MRayermannMSFT Yes I'm able to

Thanks. Can I ask why you have <IP_ADDRESS> for allowed IP addresses? I think that is likely the problem here. That is saying a client's IP address needs to be <IP_ADDRESS>. If you are ok with any IP address, you can just leave that blank.

Closing due to lack of response. If you require further help we recommend opening an Azure support ticket via the portal. Alternatively you can open a new issue here. This one will no longer be monitored.


ansible-playbooks/README.md broken link

Corrected text and link below:
For the hosts part, included in the directory is ansible.cfg (see it here).

The master branch of sbx_iosxe does not contain the path ansible-playbooks/.ansible.cfg.


Xcode 8.1 Swift 3.0 Issues

Hi, we had to finally update to Xcode 8.1 from 7.3.1 which now we are facing a big pain in dealing with the pods we are using and the fact that some of them are not updated for the proper syntax.
Here is what Im seeing so far..

Any ideas how to get around this.. we prefer to migrate all to 3, and not 2.3 for our project.

Hi, thanks for opening this, I just wanted to open similar question.
You can overcome these warnings by going to edit->convert to current swift index and then select this FBAnnotationClustering framework.
However, I was getting a couple of more errors afterwards. I overcame them by manually rewriting the constructor which error was pointing to, and also I had to rename a bunch of functions from the examples because it seems that this library is in the process of refactoring.
I am not sure if I done everything right, since I have weird numbers in clusters, which are changing on every map panning. So, I also wonder if there is an updated working example of this library?


Don't install Adafruit-Blinka dependency

The dependencies in Adafruit CircuitPython libraries at PyPI assume CPython target. As long as Adafruit doesn't publish different wheels for different targets (#5), a work-around is needed.
My idea is to pre-populate temporary target directory with (fake and empty?) Blinka installation, so that pip skips installing it. It is not clear, which version to assign for it, though... Latest stable version? When copying files over to the target device, minipip would simply skip Blinka.
MicroPython targets could benefit from (part of) Blinka, but they don't require Blinka's deps. For now, I'm skipping Blinka for MicroPython as well, as picking required parts would be more complex and I'm not sure how many people are interested in it anyway.

It turned out the trick with fake empty Blinka doesn't work -- pip happily restored all missing files.
I resorted to just not copying blinka and deps over.


[0.12.3] M7 Update: Armor dyes

https://hypixel.net/threads/0-12-3-master-mode-7.4845290/
Armor pieces can be dyed now:

An icon is added at the beginning of the name, can this break something? (some regex maybe? or somewhere where we parse the item name)
They should have a line in the lore, if it's missing we should add it
How do we handle this with textures? should we disable textures for colored armor pieces? wait to see how each texture handles it?
Should we add a new "corner" (like the one for recomb items) that displays the color? could be done for exotics too maybe?

2 corners feels like it might be visually noisy

As far as textures are concerned I would say just make it how it would be in game if you had the pack installed

@metalcupcake5


Bokeh bar plot

In https://github.com/ioam/holoviews/issues/1407 I outlined the way forward for the Bar plot implementations. Since bokeh charts will be split out imminently and I'll be using Bars in at least one project I thought it would be worth replacing the bokeh charts based implementation immediately. This new implementation retains all the functionality of the charts based implementation, while adding more features and improvements:

Better control over legends
Better support for updating barplots as part of HoloMaps/DynamicMaps
Much better performance (at least 10x faster for more complex charts) because this implementation uses one vectorized glyph rather than a bunch of individual glyphs like the chart based implementation did.
Support for colormapping bars
Better support for overlaying bars
Support for horizontal bars via the invert_axes plot option
Support for log mapping bar heights

Here is the notebook I used to develop the plotting class with an extensive list of examples.

I also just added support for batching BarPlots, this means that you can stack and group NdOverlays of Bars, which means you can use the simpler Bars format with only a single key dimension. In other words these two versions are equivalent:
%%opts Bars [stack_index='group]
hv.Bars((range(10)*5, sorted(map(chr, range(65,70))*10), np.random.rand(50)), kdims=['x', 'group'])

%%opts NdOverlay [legend_limit=0] Bars [stack_index='group' show_legend=True]
hv.NdOverlay({chr(65+i): hv.Bars(np.random.rand(10)) for i in range(5)}, kdims=['group'])

Ready to merge once tests are passing.

The improvements list is quite impressive and we are explicitly moving away from the bokeh charts API so this work was definitely necessary.
The tests are passing and I am happy to merge. My only comment here is regarding unit tests, do you you think existing unit tests are sufficient or can we add more to test this new implementation?

I think the issue regarding additional testing can be deferred by #1422 (assigned to version 1.8). Merging.


Add debug to node servers

Inspired by https://github.com/1c3t3a/rust-socketio/issues/67#issuecomment-892971548 .

Ah good catch! But I generally always start the CI servers with the command DEBUG=*, so that environment variable doesn't need to be set before (see: https://github.com/1c3t3a/rust-socketio/blob/5c66a6e755ed671eb0daabba596322653b7df5ff/ci/start_test_server.sh#L1-L24).

Ah good catch! But I generally always start the CI servers with the command DEBUG=*, so that environment variable doesn't need to be set before (see:
https://github.com/1c3t3a/rust-socketio/blob/5c66a6e755ed671eb0daabba596322653b7df5ff/ci/start_test_server.sh#L1-L24
).

This PR sets the environment in the devcontainer (which doesn't use start_test_server.sh)

Ah good catch! But I generally always start the CI servers with the command DEBUG=*, so that environment variable doesn't need to be set before (see:
https://github.com/1c3t3a/rust-socketio/blob/5c66a6e755ed671eb0daabba596322653b7df5ff/ci/start_test_server.sh#L1-L24
).

This PR sets the environment in the devcontainer (which doesn't use start_test_server.sh)

Ahh I see!


[AutoRelease] t2-billingbenefits-2022-11-23-77956(can only be merged by SDK owner)

https://github.com/Azure/sdk-release-request/issues/3452
Live test success

lgtm, please merge and release


Spline round updates

Have added whole and half sketches for the solid (now called Disk, and ring)
added a functionality to ensure a good mesh for the oval, as the spline sometimes gave weird results.
Have added an merge method to the mapped sketch, which seemed convenient.
You have removed some parameters out of the base, which, I dont completely understand why. Can I ask why?
It is not important to me. Just trying to learn something ;-)
I had some differculties with the grid. It seems to me, that right after I merge the two sketches self.faces = [sketch_1.core, sketch_1.shell_0, sketch_1.shell_1,  sketch_2.core, sketch_2.shell_0, sketch_2.shell_1] but when it writes to blockMeshDict self.faces = [sketch_1.core,  sketch_2.core, sketch_1.shell_0,  sketch_2.shell_0, sketch_1.shell_1, sketch_2.shell_1].
Does that make any sense to you?

Excellent work, I have merged with development branch. I only changed some minor typing/cosmetic details.
Would you mind adding a test or two (at least for the merge() method)? Take a look at tests/test_construct/test_flat/test_sketch.py, I assume you won't have a lot of work.
By the way, the example looks great!

FYI, if you're not sure whether you broke something, you can check all examples automatically by running python tests/helpers/collect_outputs.py. It will run all python files then blockMesh and make sure checkMesh doesn't find any errors. Just make sure you don't accidentally git add -a and include blockMeshDicts in the repo :)

I have added a test for the merge functionality. Its my first ever unittest, so please ensure i've done it correct.


Add termination time when creating servers.

Description
This PR fixes #75
Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

@vielmetti Thanks, fixed in https://github.com/layer5io/meshery-smp-action/pull/76/commits/712dcc15ab86073757723762f80d7c58bfe3c6dc


Error 400 Validation error: Invalid dispatch configuration - module 'worker' does not exist. Upload a version of this module and try again.

Error 400: --- begin server output ---
Validation error: Invalid dispatch configuration - module 'worker' does not exist. Upload a version of this module and try again.
--- end server output ---
不知道什么问题，求解

未配置 worker 模块


Question: Enabling water in runtime

Hi, I'm trying to load Crest water and OceanWaver (Shape Gastern Batcher) in runtime after I do stuff with the cameras. So I made a script that activates the Ocean gameobjects after doing some stuff and when there's an active camera in the scene, I enable both objects, first OceanRenderer and the SGB, after that there's no errors, but the water looks like this:

And when I go up it changes to this:

So my question is: Is this supported by Crest if so what am I doing wrong?
Thanks!

And also I don't know why when I set the ocean level (Y) to 50, it goes to like 150, but it's not visible in the hierarchy

Hi there, hm that's weird - im not sure what would cause that behaviour.
If i open up whats currently on the master branch (are you on latest?) and do exactly this, then it works fine for me:

Open Crest-Examples/Scenes/main.unity
In edit mode, disable the Ocean gameobject, the OceanWavesBatched gameobject, and the IslandDepthCache gameobject
Press play to enter play mode, no ocean will be visible
Activate the Ocean gameobject, flat water will be visible
Activate the IslandDepthCache gameobject, this should render the sea floor depth and shallow water colours will appear
Activate the OceanWavesBatched gameobject and the waves should appear

This works without errors for me. Does this work for you?

My Ocean gameobject holds the ocean renderer script in editor I disabled this gameobject, then in runtime after I setup the camera configuration, I enable the ocean gameobject and the water looks like this. I made some changes in the water material, maybe that could cause it? What about the sea level issue? I'll be able to send you a sample for testing tommorow.

Or could you retrace my steps exactly and confirm it does/doesn't work for you in the example content?
Material changes would not affect it andi have no idea why the sea level would do that.

Sorry for the very delayed response!
Seems like the issue doesn't appear now... Probably because of Unity update or updating Crest.
Sorry for the inconvenience!


Console Only Prints Final Pushed Value in For Loop

Challenge http://www.freecodecamp.com/challenges/waypoint-iterate-with-javascript-for-loops has an issue. Please describe how to reproduce it, and include links to screenshots if possible.
Hey guys, just letting you know that on JavaScript Challenge #27, Looping w/ For, you only see the last pushed value no matter which code you use. Even copy & pasting the example code and changing "ourArray" to "myArray" so it fits the instructions doesn't fix it. It greenlights you, too, which is problematic (I suppose you might be technically correct, but...).
Anyway, back to work. Thanks for listening!
P.S.: The same issue exists in the next challenge (the one dealing w/ while loops).

Hey thanks for posting an issue!
Can you post a screenshot here?

Sure! Here you go.

By the way, I'm one of those users who happen to be getting source code in their module instructions. It's not a big deal or anything, but I imagine you guys didn't intend for it to happen.
Let me know if I can do anything else to help. Have a good night!

@jjordan88 I really don't see an issue here personally. To my knowledge the console really shouldn't be printing anything. Furthermore, it looks like you passed all the tests and received the exact same results as I did.
Not really sure what went wrong for you, but it looks like you passed the exercise and you're back to coding. GL to you, and happy coding.
You are referring to the black bar that has the number 5 on the right.  That just outputs the result of the last command which happens to be myArray.push(5).  The .push command returns the new length of the array that it just modified (see: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/push#Returns).
Which source code are you referring to? The example with ourArray or the tests next to those checkmarks?

Hey @benschenker
Sorry for the late reply! Yeah, the test / module passed because the code was correct, but should the output not have been all the numbers (0 - 4) rather than just 5?
Actually, it looks like you may've just answered that question....  the array contains the numbers, but .push simply outputs the newly modified array's length. Got it!
As for source code, it's kinda fuzzy, but it's the Javascript next to the checkmarks in the screenshot. The first bit starts with:

assert(editor.getValue().match

...and continues on from there.
Hope this helps! Thanks again. Have a good night, all.

Yes exactly that assert... code is there on purpose to show you how your code is being tested.  You can ask more questions about the specifics of this in gitter.  Good night.
This issue can now be closed.

:+1:


[US] Settings 'Force Refresh' Button

As an application user, I want to have a 'Save' button so that I can 'force refresh' the new changes on the Settings page.

MoSCoW
Risk
Story Points

Should have
Low
2

Acceptance Criteria

Ability to have a button to 'force refresh' the Settings page

Risks

TBD

Tasks

[x] Have a 'Save' button on the Settings page
[x] Ensuring that the changes are reflected on save.

Demo Video
https://github.com/WillTrem/UInnovate/assets/74876532/1718f5c1-f097-465a-a5c6-84492908fd33

Looks good - I really like how the UI is evolving!
Signing off!


Api documentation for CurrentBillingFeatures and other AppInsights configurable options is wild

The arm template on this documentation page includes a number of parameter which are not even used in the arm template. These include:

retentionInDays
ImmediatePurgeDataOn30Days

Most of this arm data doesn't seem to be visible in the resource explorer which is unusual

https://docs.microsoft.com/en-us/azure/templates/microsoft.insights/allversions doesn't seem to list the type microsoft.insights/components/CurrentBillingFeatures at all

The last two are mostly concerning from a maintenance/support perspective
Can this documentation be updated for 1? If parameters are intended to be used it should use them or if not lose them.
For 2 and 3 - can someone speak to the intent for this to be supported and if these inconsistencies are being addressed?

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

ID: 4c8783dc-d0fd-8f1f-88a3-5db2495a1428
Version Independent ID: 076efce2-ff9e-2d2a-ba9b-7d760c5eea0b
Content: Automate Azure Application Insights with PowerShell - Azure Monitor
Content Source: articles/azure-monitor/app/powershell.md
Service: azure-monitor
Sub-service: application-insights
GitHub Login: @mrbullwinkle
Microsoft Alias: mbullwin

Thanks for the question! We will review and get back to you shortly.

I do see retentionInDays under microsoft.insights/components properties. I've entered a PR to add the missing ImmediatePurgeDataOn30Days property.
I suspect that items 2 & 3 are going to be related. Both resource explorer and the ARM docs are automatically generated from the REST API specification repository. The fact that both of them are affected in a similar way suggests that the swagger file is the source of the issue. I've opened an issue in that repository to have that addressed.
I'm going to close the issue here since there is a PR in to fix this doc. It will go live once the doc author has approved it. The REST spec is a public repository so you can follow that thread there if you wish. The API spec repository has a much longer review process, so it may be a bit before that fix goes live.

Thanks @SamaraSoucy-MSFT appreciate the pickup here


Time to graduate PKG_CONFIG_PATH to a command-line option?

Description
The PKG_CONFIG_PATH environment variable is used to specify alternate paths to search for pkg-config .pc files, which is useful when building packages against alternate sysroots, eg for cross-compilation. Strangely, SPM does not check the alternate sysroot specified by the --sdk flag, which is what I pass to this environment variable again anyway.
This is now relevant to SPM itself, since it recently began looking for SQLite3 this way in trunk, so I had to modify my Android CI to start passing in the path to a cross-compiled SQLite3 for Android when cross-compiling SPM, buttaface/swift-android-sdk@f36e045.
Expected behavior
No response
Actual behavior
No response
Steps to reproduce
No response
Swift Package Manager version/commit hash
No response
Swift & OS version (output of swift --version && uname -a)
No response

I think both checking the SDK and having an additional CLI option would make sense.

@MaxDesiatov, any progress on this? I can take it over if you're busy with other stuff.

Thanks for the ping, let me have a quick look.

I'd assume we want to keep the existing handling of PKG_CONFIG_PATH env var for compatibility?

I'd assume we want to keep the existing handling of PKG_CONFIG_PATH env var for compatibility?

Yes, we should. It is also something that is generally supported by pkg-config tooling, so it might make things just work in certain scenarios where people have already set this.


Params for DELETE & HEAD requests should be handled like GET

HTTP spec forbids an entity for HEAD requests, so specified parameters should be appended to URL (as with GET).
Older specs also seemed to not want entity in DELETE requests either. Newer RFC do allow these, however the more compatible path forward is to put them in the URL
If nobody has a problem treating HEAD & DELETE parameters like GET, I'll make a pull request to fix this.
http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics-19#section-6.7

Do you have a situation where putting the data in the entity for HEAD or DELETE is causing problems?
I'd rather not fix things without being able to verify the fix.

Hey @mcxl, thanks for responding. I certainly have a case where this is a problem. We recently switched to TDOAuth+NSURLSession over AFNetworking-based OAuth in the Yahoo Finance app, and life has been much simpler :)
We use a REST-ish DELETE endpoint which expects a user token as a URL parameter. I debated whether to file a ticket for the API or for TDOAuth. There is no correct answer, but I figure that DELETE should not have a significant payload, so it's less wrong to support URL parameters over the existing HTTP entity payload.
I don't have a critical need for changing HEAD to use URL parameters. However, that one is a definite bug as it is explicitly forbidden to send along an entity.
I have a 1 line PR fix for this. Just need to add test cases and I can push it later today.

Great, sounds good. Look forward to it.

There you go! :sunflower:


Tutorial for D3JS

Added Section for D3Js  Tutorials

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Closed and Reopened this PR to attempt to resolve a specific Travis build failure.

Looks good @sjtg, congratulations on your first contribution to freeCodeCamp!


Difficulty with typeroots and node_modules

Search Terms
type roots, typeroots, multiple typeroots, hoisting typeroots
Suggestion
In my monorepo, I have a node_modules tree where there are multiple dependencies on a @types package, which we'll refer to as @types/a. The dependency path looks like:
monorepo-package
├─dep-a
  └─@types/a@1
├─dep-b
  └─@types/a@1
└─@types/a@2

As a result, yarn hoists @types/a@1 to the top level, and nests @types/a@2. The two locations are:
node_modules/@types/a // version 1
node_modules/monorepo-package/@types/a // version 2

I want my typeRoot to be node_modules/@types, because that's where all my other type dependencies are. But for @types/a, I want to use the version specified by my project, not by one of my deps. I can't control how yarn has assembled the node_modules tree. (And, in fact, this is the optimal tree – @types/a@1 should be hoisted, because it's used more.)
I don't know what the best way to resolve this is. I could override on a per-dep basis, in the tsconfig:
{
  "compilerOptions": {
    "typeRootOverrides": {
        "@types/a": "./node_modules/monorepo-package/@types/a"
    }
  }
}

But that doesn't feel great, because I don't want to couple my config to the layout of node_modules. Maybe this is something to fix in conjunction with yarn / npm?
Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

Please do not close this automatically. This is not a question on how to use TS. It's a shortcoming in the current tooling that I think may necessitate a change in TS.


(BUGFIX) Now when a user tries to join a participant slot that is occ…

…upied, they get an error message instead of replacing that person.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 33.33333% with 2 lines in your changes missing coverage. Please review.

Files with missing lines
Patch %
Lines

queue_manager/views.py
33.33%
2 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Flag
Coverage Δ

unittests
72.03% <33.33%> (-0.20%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines
Coverage Δ

queue_manager/views.py
59.05% <33.33%> (-0.34%)
:arrow_down:


Fixed animation glitch because of font-width

Solution is to adjust the transform value used in the to prop of the Spring component. Instead of using a fixed value for the translateY transform, you can use a dynamic value that is based on the number being animated. For example, you can use the numberHeight and numberWidth variables to calculate the vertical and horizontal offsets for each number, and then use these values to position the numbers correctly.
Note that in this example, the translateX transform is being used to horizontally center the numbers within their container. This should help to prevent the numbers from overlapping at the end of the animation.

@Mako-L hello :D
It's hard to know the code changes 😹
Can you simply re-commit your code changes without formatting the code?


dataset

Hello, I want to know where the "rcnn_trainval.pt","rcnn_trainval.h5","rcnn_test.pt","rcnn_test.h5" from the class RCNNDataset from dataset.py(dense_coattn/data/). Are they from 'prepross/load_features.ipynb'?  But in this program they are named trainval_images.h5,trainval_image.pt,test_images.h5,test_images.pt.
I have renamed them. However, when I run the train.py, it will get stack on “for I, batch in enumerate(dataloader)” from def trainEpoch.
I think it might be a dataset problem. I hope you can help me. Thanks for your reading.

Hi,
Sorry for the inconvenient but you should rename them (I will make it consistent later). I think you have problem with dataloader. One possible solution is to set the --use-thread as True. Another solution is to use the DataLoader provided by Pytorch 1.0 (from torch.utils.data import DataLoader) but remember to remove the use_thread option of DataLoader in main function of train.py.

Hi @UPCLJ ,
I push the fixed code. Please check that!

Thank you for your reply.I'm sorry for not seeing your message until now.I will try to run the train.py again at your suggestion.
------------------ 原始邮件 ------------------
发件人: "Nguyen Duy<EMAIL_ADDRESS>发送时间: 2019年6月27日(星期四) 晚上8:47
收件人<EMAIL_ADDRESS>抄送: "美羊羊"284731553<EMAIL_ADDRESS>主题: Re: [cvlab-tohoku/Dense-CoAttention-Network] dataset (#8)
Hi,
Sorry for the inconvenient but you should rename them (I will make it consistent later). I think you have problem with dataloader. One possible solution is to set the --use-thread as True. Another solution is to use the DataLoader provided by Pytorch 1.0 (from torch.utils.data import DataLoader) but remember to remove the use_thread option of DataLoader in main function of train.py.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Hello, I managed to get out of the code(train.py). But I have trouble with answer.py Help me,please.@kienduynguyen

Hi @UPCLJ ,
I already update the code in answer.py.


YARA

[ ] Remove YARA files that have all of their rules blacklisted

[ ] Remove the blacklist entries

[ ] Consider how to utilize YARA Forge

Challenging as the ruleset comes as one file

Can we just blacklist the ones that don't work with ClamAV?

[ ] Replace Open-Source-YARA-rules files/rules with links to upstream (the origin of the file in question) when applicable
[ ] Benchmark rules with yaraQA

jq '.[] | select(.issue=="The regex string has a measurable performance impact")' yaraQA-issues.json
jq '.[] | select(.level>=2)'

[ ] Define some (semi-formal?) goodware corpus to weed out rules that produce FPs

/usr
Chapter 8 of the Malware Data Science book
Some mailbox

It would be nice to have some YARA rule to detect malware like this:

https://www.virustotal.com/gui/file/c0f9a09878ecec9e61df7d45cdc1534c95f310619d3aceb3d578654cea4c283a
https://www.virustotal.com/gui/file/4f6f8803dca6961056b701edc7aacfcb6a744e5813d977dd471e4f08a0d4d12a
https://www.virustotal.com/gui/file/5368c19914821d96a69d3c6e0879aff8dc748e66a7a565192b2cdc108da2cb6d

gen_webshells.yar (from Arnims YARA rules) has a detection (WEBSHELL_ASP_Generic), but that file can't be used with ClamAV :(

clamav-unofficial-sigs downloads Linux Malware Detect YARA rules (rfxn.yara), which has many duplicates with our list of rules.


Further tightening up of api link parsing and testing

err...forgot to fetch...

If you rebase (git rebase upstream/[branchname]) then force push, it'll update the PR and you won't need to close and open a new one :)

Yup...this bit o'git I know :)


cookie_secret file must be base64

cookie_secret file is decoded by binascii.a2b_base64 so need to document it must be Base64.
Added better doc for other values, and included description of "cookie_secret" parameter as well.
A couple of lines had trailing spaces, which my editor automatically deleted.

@robnagler Thanks for submitting this PR. I've made a few editing suggestions, and I have asked @minrk to review the technical changes as well.

👍 to the changes, pending @willingc's suggestions.

Done with #522 and #520.

Thanks, @robnagler!


Crash in loadWord when loading texture with invalid RDRAM address.

Whenever there's an invalid texture address (the one set by setTextureImage) which is larger than RDRAM, RT64 crashes.
This is important because retail games sometimes make invalid accesses.
One example of this is in Mystical Ninja Starring Goemon's intro sequence, near the end of the sequence, the game does a load block operation with an invalid texture address (0xFFFFFF). (This is why I'm reporting this issue in the first place).
On hardware this just results in an invisible texture (reading all zeroes from RDRAM presumably) [there should be a pair of Kunai's visible in the circle]:

On some old HLE plugin it looks like this:

In angrylion-rdp-plus this is handled by simply checking if the RDRAM address is valid and if it isn't, returning zero.
static STRICTINLINE uint32_t rdram_read_idx32(uint32_t in)
{
    in &= RDRAM_MASK >> 2;
    return rdram_valid_idx32(in) ? rdram32[in] : 0;
}

Thanks!
I believe this should be straightforward to fix but we need to take into consideration the performance cost of the bounds check as TMEM loads are a hot path. One possible solution would be to add an additional template parameter and check beforehand if the load goes out of bounds.
Do you require a fix for this soon or have you worked around it in some other way?

I have worked around this issue by fixing the broken display list so I don't urgently need a fix for this, don't know about others though.
Perhaps the check could be combined with some compiler branch likelyness directive (if those even do anything anymore).


Set Up Initial Configuration for an MDK App

Tutorial URL: https://developers.sap.com/tutorials/cp-mobile-dev-kit-ms-setup.html
Please specify the step you are referring to
In step 2 Mobile Settings Exchange is not available as well as others. It looks like naming has changed.
Regards,
Hubert

@FHubert could you share a screenshot on what you see on your side?
Tutorial points to Mobile Services on Cloud Foundry Environment , please make sure that you are on right environment as per tutorial.

@FHubert Thank you for your feedback. We haven't heard from you in a while, so we are closing the issue.
If you still have questions, feel free to reopen the issue.


Problem viewing "Page" model

Quoted from my email to the list:
One of my models in my app is called "Page", and that gives me trouble. I see nothing different with this model form the
others I have, except for its name. I'm now guessing that the "Page" name conflicts with a name or a route inside of AA.
I get the index view for Page, but the "View" and "Edit" links both result in routing errors, such as:
No route matches {:action=>"edit", :controller=>"admin/pages", :id=>#<Page id: 1, user_id: 1, domain: "robert.se", created_at: "2011-11-16 20:43:36", updated_at: "2011-11-27 09:03:47", [etc etc etc]}
The URL looks fine ("/admin/pages/1") but the error is always the same.
I am running activeadmin gem version 0.3.4.

This is an interesting one. Do you encounter the same issue with the edge version on github/master?

I don't even know how to test that.


build: Plain make command only prints out help

After https://github.com/tensorchord/envd/pull/421, running make only triggers make help but it should trigger make build. This PR fixes that.
➜  envd git:(main) make

Usage:
  make <target>
  help             Display this help
  build            Build the release version of envd
  debug            Build the debug version of envd
  lint             Lint GO code
  generate         Generate mocks
  addlicense       Add license to GO code files
  test             Run the tests
  clean            Clean the outputs and artifacts
  fmt              Run go fmt against code.
  vet              Run go vet against code.

Signed-off-by: terrytangyuan<EMAIL_ADDRESS>

I think the default goal for makefile is a better option.
https://stackoverflow.com/a/30176470


Add Gulp example

Why not add Gulp example https://gulpjs.com/ ?

Eh, I don't see us doing a Gulp, Grunt, etc example here. It's been a long time since I even heard someone ask about either of those and I'd much prefer to focus on other examples.


onedb fsck reset AR leases allocated to VF pass-through nics

Description
Running onedb fsck the MACs allocated to PCI NICs are threatened as errors:
$ onedb fsck -v --server localhost --username oneadmin --password ohp0pheruM3phowo --dbname opennebula
Version read:
Shared tables 5.12.0 : Database migrated from 5.10.0 to 5.12.0 (OpenNebula 5.12.0) by onedb command.
Local tables  5.12.0 : Database migrated from 5.10.0 to 5.12.0 (OpenNebula 5.12.0) by onedb command.

MySQL dump stored in /var/lib/one/mysql_localhost_opennebula_2021-2-26_16:28:22.sql
Use 'onedb restore' or restore the DB using the mysql command:
mysql -u user -h server -P port db_name < backup_file

  > Running fsck

VNet 26 AR 0 has leased 02:00:da:b7:26:a7 to VM 3505, but it is actually free
VNet 26 AR 0 has leased 02:00:da:b7:26:a8 to VM 3505, but it is actually free
VNet 26 has 2 used leases, but it is actually 0
User 2 quotas: VNet 26	LEASES_USED has 2 	is	0

Total errors found: 4
Total errors repaired: 4
Total errors unrepaired: 0

To Reproduce

Instantiate a VM with NIC PCI pass through and ethernet AR network assigned
run onedb fsck
the VNET AR is reset

Expected behavior
the AR should not be reset
Details

Affected Component: [onedb]
Hypervisor: [KVM]
Version: [5.12]

Additional context
VM XML
<VM>
  <TEMPLATE>
    <PCI>
      <MAC><![CDATA[02:00:da:b7:26:a7]]></MAC>
    </PCI>
    <PCI>
      <MAC><![CDATA[02:00:da:b7:26:a8]]></MAC>
    </PCI>
  </TEMPLATE>
</VM>

VNET XML diff:
--- vnet-26-1.XML	2021-02-26 16:24:14.442685558 +0200
+++ vnet-26-2.XML	2021-02-26 16:29:35.997834933 +0200
@@ -28,7 +28,7 @@
   <OUTER_VLAN_ID/>
   <VLAN_ID_AUTOMATIC>1</VLAN_ID_AUTOMATIC>
   <OUTER_VLAN_ID_AUTOMATIC>0</OUTER_VLAN_ID_AUTOMATIC>
-  <USED_LEASES>2</USED_LEASES>
+  <USED_LEASES>0</USED_LEASES>
   <VROUTERS/>
   <TEMPLATE>
     <BRIDGE><![CDATA[br61]]></BRIDGE>
@@ -44,17 +44,8 @@
       <SIZE><![CDATA[512]]></SIZE>
       <TYPE><![CDATA[ETHER]]></TYPE>
       <MAC_END><![CDATA[02:00:da:b7:28:a6]]></MAC_END>
-      <USED_LEASES>2</USED_LEASES>
-      <LEASES>
-        <LEASE>
-          <MAC><![CDATA[02:00:da:b7:26:a7]]></MAC>
-          <VM><![CDATA[3505]]></VM>
-        </LEASE>
-        <LEASE>
-          <MAC><![CDATA[02:00:da:b7:26:a8]]></MAC>
-          <VM><![CDATA[3505]]></VM>
-        </LEASE>
-      </LEASES>
+      <USED_LEASES>0</USED_LEASES>
+      <LEASES/>
     </AR>
   </AR_POOL>
 </VNET>

Progress Status

[ ] Branch created
[ ] Code committed to development branch
[ ] Testing - QA
[ ] Documentation
[ ] Release notes - resolved issues, compatibility, known issues
[ ] Code committed to upstream release/hotfix branches
[ ] Documentation committed to upstream release/hotfix branches

PRs to merge in 5.12 and master:

code
docs


RATIS-1281. TestRetryCacheWithGrpc#testRetryOnResourceUnavailableException fails

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
What is the link to the Apache JIRA
(Please create an issue in ASF JIRA before opening a pull request,
and you need to set the title of the pull request which starts with
the corresponding JIRA issue number. (e.g. RATIS-XXXX. Fix a typo in YYY.)
Please replace this section with the link to the Apache JIRA)
How was this patch tested?
(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)

@lokeshj1703 Hi, i see you add this test, could you please take a look? Thanks

@lokeshj1703 Hi, i see you add this test, could you please take a look? Thanks

Detail about this PR, I have post it to jira, and paste it here.
The first while clause in TestRetryCacheWithGrpc#testRetryOnResourceUnavailableException
while (!failure.get()) {
  long cid = callId;
  r = cluster.newRaftClientRequest(clientId, leaderProxy.getId(), callId++,
      new RaftTestUtil.SimpleMessage("message"));
  CompletableFuture<RaftClientReply> f = leaderProxy.submitClientRequestAsync(r);
  f.exceptionally(e -> {
      if (e.getCause() instanceof ResourceUnavailableException) {
        RetryCacheTestUtil.isFailed(RetryCacheTestUtil.get(leader, clientId, cid));
        failure.set(true);
      }
      return null;
  });
}

There are 2 requests here, and because followers call blockWriteStateMachineData, the first request will be blocked, and ELEMENT_LIMIT_KEY is 1, the second request will fail and receive ResourceUnavailableException.
After quittng the first while clause. Followers call unblockWriteStateMachineData
In the second while clause
while (failure.get()) {
  try {
  // retry until the request failed with ResourceUnavailableException succeeds.
  leaderProxy.submitClientRequestAsync(r).get();
  } catch (Exception e) {
    failure.set(false);
  }
}

There are 2 cases: 1. If the first request has been done, the 3rd request will be handled, and later requests will hit retrycache, and server will always return success. It couldn't get Exception and enter infinite loop. 2. If the first request hasn't been done, and the 3rd request has been reach the server, it will get   ResourceUnavailableException and set failure true, and quit the loop.
Mostly the case 1 occurs, and this UT nearly always fails
So i suggest that quit the loop when request handled successfully as the comments say

// retry until the request failed with ResourceUnavailableException succeeds.

Detail about this PR, I have post it to jira, and paste it here.
The first while clause in TestRetryCacheWithGrpc#testRetryOnResourceUnavailableException
while (!failure.get()) {
  long cid = callId;
  r = cluster.newRaftClientRequest(clientId, leaderProxy.getId(), callId++,
      new RaftTestUtil.SimpleMessage("message"));
  CompletableFuture<RaftClientReply> f = leaderProxy.submitClientRequestAsync(r);
  f.exceptionally(e -> {
      if (e.getCause() instanceof ResourceUnavailableException) {
        RetryCacheTestUtil.isFailed(RetryCacheTestUtil.get(leader, clientId, cid));
        failure.set(true);
      }
      return null;
  });
}

There are 2 requests here, and because followers call blockWriteStateMachineData, the first request will be blocked, and ELEMENT_LIMIT_KEY is 1, the second request will fail and receive ResourceUnavailableException.
After quittng the first while clause. Followers call unblockWriteStateMachineData
In the second while clause
while (failure.get()) {
  try {
  // retry until the request failed with ResourceUnavailableException succeeds.
  leaderProxy.submitClientRequestAsync(r).get();
  } catch (Exception e) {
    failure.set(false);
  }
}

There are 2 cases: 1. If the first request has been done, the 3rd request will be handled, and later requests will hit retrycache, and server will always return success. It couldn't get Exception and enter infinite loop. 2. If the first request hasn't been done, and the 3rd request has been reach the server, it will get   ResourceUnavailableException and set failure true, and quit the loop.
Mostly the case 1 occurs, and this UT nearly always fails
So i suggest that quit the loop when request handled successfully as the comments say

// retry until the request failed with ResourceUnavailableException succeeds.

@ferhui Can you please update the PR description as well?

@ferhui Can you please update the PR description as well?

@ferhui Thanks for the contribution! I have committed the PR to master branch. The test failures in CI are unrelated as PR only has changes in a test file.

@ferhui Thanks for the contribution! I have committed the PR to master branch. The test failures in CI are unrelated as PR only has changes in a test file.

@lokeshj1703 Thanks for review!

@lokeshj1703 Thanks for review!


Parsing errors

Warning messages:
1: package ‘ggplot2’ was built under R version 4.3.3
2: package ‘tidyr’ was built under R version 4.3.2
3: package ‘readr’ was built under R version 4.3.2
4: package ‘dplyr’ was built under R version 4.3.2
5: package ‘stringr’ was built under R version 4.3.2
Warning message:
One or more parsing issues, call problems() on your data frame for details, e.g.:
dat <- vroom(...)
problems(dat)
Thoughts?

I suspect this is related to #42, so closing in favour of continuing the conversation there.


[SUPPORT] How to skip some partitions in a table when readStreaming in Spark at the init stage

Tips before filing an issue

Have you gone through our FAQs?

Join the mailing list to engage in conversations and get faster support at<EMAIL_ADDRESS>

If you have triaged this as a bug, then file an issue directly.

Describe the problem you faced
I have a table partition by operation type and ingestion date(like insert/2023-12-11/, update/2023-12-11/, delete/2023-12-11/), when I read(use spark readStream) this table, I just want to read data under update partition. And I found a config 'hoodie.datasource.read.incr.path.glob', then I use this config and value is update/202*. But I found spark job init very slow, and found job was stuck

But this parquet file is not under update partition, it is under insert partition, which is very confused.
So I want ask is there a config that can only read the target partition and skip others and also does not read other partitions' data files to get schema.
Expected behavior
I want to know is there a config that can only read the target partition and skip others and also does not read other partitions' data files to get schema.
Environment Description

Hudi version : 0.14.0

Spark version : 3.4.1

Hive version :

Hadoop version :

Storage (HDFS/S3/GCS..) : GCS

Running on Docker? (yes/no) : no

Additional context
I use the below configurations to write to table:
hudi_write_options = {
'hoodie.table.name': hudi_table_name,
'hoodie.datasource.write.partitionpath.field': 'operation_type, ingestion_dt',
'hoodie.datasource.write.operation': 'insert',
'hoodie.datasource.write.table.type': 'MERGE_ON_READ',
'hoodie.parquet.compression.codec': 'zstd',
"hoodie.datasource.write.payload.class": "org.apache.hudi.common.model.DefaultHoodieRecordPayload",
"hoodie.datasource.write.reconcile.schema": True,
"hoodie.metadata.enable": True
}
And I use the configurations to read from table:
read_streaming_hudi_options = {
'maxFilesPerTrigger': 5,
'hoodie.datasource.read.incr.path.glob': 'update/202*',
'hoodie.read.timeline.holes.resolution.policy': 'BLOCK',
'hoodie.datasource.read.file.index.listing.partition-path-prefix.analysis.enabled': False,
'hoodie.file.listing.parallelism': 1000,
'hoodie.metadata.enable': True,
'hoodie.datasource.read.schema.use.end.instanttime': True,
'hoodie.datasource.streaming.startOffset': '20231211000000000'
}
Stacktrace
Add the stacktrace of the error.

Did you try to add filter condition with the partition fields?

Hi @danny0405 , do you mean like this:

I tried this, but also will read other partitions' data file to resolve schema. And I think kind of filter takes effect after source load all partitions files, but I want a config that can tell source that only reads the partition that in my configs.

but I want a config that can tell source that only reads the partition that in my configs so I do not need to use filter

That does not follow the common intuition.

@lei-su-awx If the table is partitioned then it should only read the files under that partition. Are you seeing any behaviour otherwise if it is reading all files?

@ad1happy2go I tried to only read files under that partition using spark(spark.readStream), but an error was thrown:
no .hoodie file exists in the partition path, and I found only .hoodie folder only exist under the table path.

@lei-su-awx You dont need to read from that directory. You should give the parent directory only. According to your .filer("operation_type  'update') partition pruning will take place and it will only process that partition data.

@lei-su-awx Did you see the behaviour I mentioned? Any more updates here please?

@lei-su-awx Any updates here? Do you still have this issue?

@ad1happy2go sorry for the late, I did not test this anymore because I meet new issues. But I think .filer("operation_type  'update') can do what I want, so never mind this issue.

@lei-su-awx Closing this issue then. thanks.  Please reopen in case you see issue again.


cell value in AgGrid with a external link to a new window

I would like to set content of some cells in a AgGrid with a cliccable link to a new window, displaying an external URL.
Could it be possible?
Apparently AgGrid supports it, as reported in this blog:
https://medium.com/ag-grid/enhance-your-angular-grid-reports-with-formatted-values-and-links-34fa57ca2952
Thank you.

Yes, it is possible. My internet is down because of the storm that hit the US east coast, so I'll provide an example when it is back up.

Here is an example. Click the "Link" in red in the second row:
import justpy as jp

grid_options = {
    'rowHeight': 200,
    'columnDefs': [
      {'headerName': "Make", 'field': "make"},
      {'headerName': "Model", 'field': "model"},
      {'headerName': "Price", 'field': "price"},
    ],
    'rowData': [
      {'make': "Toyota", 'model': "Celica", 'price': 4},
      {'make': "Ford", 'model': "Mondeo", 'price': 'Link
'},
      {'make': "Porsche", 'model': "Boxter", 'price': ''}
    ],
}

def grid_test():
    wp = jp.WebPage()
    grid = jp.AgGrid(a=wp, options=grid_options)
    grid.html_columns = [2]
    return wp

jp.justpy(grid_test)

Please let me know if this is what you were looking for.

brilliant!
I am falling in love with Justpy!
:+1:


SSH transport (new enhancement proposal)

With the release of the new itoolkit-utils package from IBM, it is now feasible to enable SSH as a transport mechanism for the various language toolkits, including Python.
The RPM, when installed, will put a binary, /QOpenSys/pkgs/bin/xmlservice-cgi that can be called through an SSH channel.
This enhancement is very important because it will enable a Python application from any platform (at least any platform where Paramiko works) to talk to IBM i and call RPG, Db2, etc. This can be done without the need to set up an Apache server on IBM i or an ODBC driver on the client. In that sense, it will be simpler than existing transports.

Like most things related to this project, I would love to contribute, but I cannot make any commitments.

Pointer for whomever has a chance to look at this: to get paramiko working, you will likely have to install python3-cryptography via yum, then do your pip3 install paramiko

also yum group install "Developer Tools" (though it's a little overkill

Hello
I would love to have Paramiko working on i - I have a started using Storwize and FlashCopy technique and have to issue commands from IBM i to Storwize over a SSH connection. I know I could use Bash scripts for this, but I would prefer to use Python and Paramiko for a more interactive setup.
So I tried install Paramiko after having installed the following packages:
python3-bcrypt
python3-cffi
python3-cryptography
libffi-devel
openssl-devel
python3-pynacl
But when I try to install Paramiko, it fails during build of the wheel...
The output is like this:
nccj@<ibmi>:/home/NCCJ/FlashCopy - pip install paramiko
Collecting paramiko
  Using cached https://files.pythonhosted.org/packages/4b/80/74dace9e48b0ef923633dfb5e48798f58a168e4734bca8ecfaf839ba051a/paramiko-2.6.0-py2.py3-none-any.whl
Collecting cryptography>=2.5 (from paramiko)
  Using cached https://files.pythonhosted.org/packages/c2/95/f43d02315f4ec074219c6e3124a87eba1d2d12196c2767fadfdc07a83884/cryptography-2.7.tar.gz
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... error
    ERROR: Complete output from command /QOpenSys/pkgs/bin/python3 /QOpenSys/pkgs/lib/python3.6/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpaxytodif:
    ERROR: Traceback (most recent call last):
      File "/QOpenSys/pkgs/lib/python3.6/site-packages/pip/_vendor/pep517/_in_process.py", line 207, in <module>
        main()
      File "/QOpenSys/pkgs/lib/python3.6/site-packages/pip/_vendor/pep517/_in_process.py", line 197, in main
        json_out['return_val'] = hook(**hook_input['kwargs'])
      File "/QOpenSys/pkgs/lib/python3.6/site-packages/pip/_vendor/pep517/_in_process.py", line 69, in prepare_metadata_for_build_wheel
        return hook(metadata_directory, config_settings)
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/setuptools/build_meta.py", line 155, in prepare_metadata_for_build_wheel
        self.run_setup()
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/setuptools/build_meta.py", line 141, in run_setup        exec(compile(code, __file__, 'exec'), locals())
      File "setup.py", line 275, in <module>
        **keywords_with_side_effects(sys.argv)
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/setuptools/__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "/QOpenSys/pkgs/lib/python3.6/distutils/core.py", line 108, in setup
        _setup_distribution = dist = klass(attrs)
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/setuptools/dist.py", line 444, in __init__
        k: v for k, v in attrs.items()
      File "/QOpenSys/pkgs/lib/python3.6/distutils/dist.py", line 281, in __init__
        self.finalize_options()
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/setuptools/dist.py", line 732, in finalize_options
        ep.load()(self, ep.name, value)
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/cffi/setuptools_ext.py", line 217, in cffi_modules
        add_cffi_module(dist, cffi_module)
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/cffi/setuptools_ext.py", line 49, in add_cffi_module
        execfile(build_file_name, mod_vars)
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/cffi/setuptools_ext.py", line 25, in execfile
        exec(code, glob, glob)
      File "src/_cffi_src/build_openssl.py", line 106, in <module>
        extra_link_args=extra_link_args(compiler_type()),
      File "src/_cffi_src/utils.py", line 57, in build_ffi_for_binding
        extra_link_args=extra_link_args,
      File "src/_cffi_src/utils.py", line 65, in build_ffi
        ffi = FFI()
      File "/tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/cffi/api.py", line 48, in __init__
        import _cffi_backend as backend
    ImportError: Could not load module /tmp/pip-build-env-nu2t9l3c/overlay/lib/python3.6/site-packages/_cffi_backend.so.
        The local-exec model was used for thread-local
           storage, but the module is not the main program.
    Examine the .loader section header with the 'dump -Hv' command.
    ----------------------------------------
ERROR: Command "/QOpenSys/pkgs/bin/python3 /QOpenSys/pkgs/lib/python3.6/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpaxytodif" failed with error code 1 in /tmp/pip-install-wakg4tx7/cryptography

Seems like the cryptography python package on the installer is to old:
cryptography in /QOpenSys/pkgs/lib/python3.6/site-packages (2.2.2)

and Paramiko tries to fetch and build a newer version of cryptography:
**Collecting cryptography>=2.5 (from paramiko)**
  Using cached https://files.pythonhosted.org/packages/c2/95/f43d02315f4ec074219c6e3124a87eba1d2d12196c2767fadfdc07a83884/**cryptography-2.7**.tar.gz

Any ideas how to proceed?

For the time being, the simplest thing to do is probably install an older version of Paramiko, to work with the older version of cryptography. Maybe Paramiko 2.4.1 or 2.4.2. See this Stack Overflow question about installing older versions of things with pip.

@jkyeung Thanks, it worked!
nccj@<ibmi>:/home/NCCJ/FlashCopy - pip install paramiko==2.4.2
Collecting paramiko==2.4.2
  Downloading https://files.pythonhosted.org/packages/cf/ae/94e70d49044ccc234bfdba20114fa947d7ba6eb68a2e452d89b920e62227/paramiko-2.4.2-py2.py3-none-any.whl (193kB)
     |################################| 194kB 21.8MB/s
Requirement already satisfied: cryptography>=1.5 in /QOpenSys/pkgs/lib/python3.6/site-packages (from paramiko==2.4.2) (2.2.2)
Collecting pyasn1>=0.1.7 (from paramiko==2.4.2)
  Downloading https://files.pythonhosted.org/packages/7b/7c/c9386b82a25115cccf1903441bba3cbadcfae7b678a20167347fa8ded34c/pyasn1-0.4.5-py2.py3-none-any.whl (73kB)
     |################################| 81kB 1.2MB/s
Requirement already satisfied: bcrypt>=3.1.3 in /QOpenSys/pkgs/lib/python3.6/site-packages (from paramiko==2.4.2) (3.1.4)
Requirement already satisfied: pynacl>=1.0.1 in /QOpenSys/pkgs/lib/python3.6/site-packages (from paramiko==2.4.2) (1.2.1)
Requirement already satisfied: idna>=2.1 in /QOpenSys/pkgs/lib/python3.6/site-packages (from cryptography>=1.5->paramiko==2.4.2) (2.8)
Requirement already satisfied: asn1crypto>=0.21.0 in /QOpenSys/pkgs/lib/python3.6/site-packages (from cryptography>=1.5->paramiko==2.4.2) (0.24.0)
Requirement already satisfied: cffi>=1.7; platform_python_implementation != "PyPy" in /QOpenSys/pkgs/lib/python3.6/site-packages (from cryptography>=1.5->paramiko==2.4.2) (1.11.5)
Requirement already satisfied: six>=1.4.1 in /QOpenSys/pkgs/lib/python3.6/site-packages (from cryptography>=1.5->paramiko==2.4.2) (1.12.0)
Requirement already satisfied: pycparser in /QOpenSys/pkgs/lib/python3.6/site-packages (from cffi>=1.7; platform_python_implementation != "PyPy"->cryptography>=1.5->paramiko==2.4.2) (2.19)
Installing collected packages: pyasn1, paramiko
Successfully installed paramiko-2.4.2 pyasn1-0.4.5

This was delivered in #32, closing.
@chrjorgensen next time, please open a new issue. This would have been more appropriate on the general opensource issue tracker: https://bitbucket.org/ibmi/opensource/issues


Change default healthcheck port to 3000

The documentation states that the default healthcheck port is 3000, but mrsk seems to be hitting 3999. This PR changes mrsk's default to match the documentation again!
Noticed the healthcheck tests are failing and I'm looking into it now :( Fixed.
In retrospect I probably should have created an issue first and worked off that. If you'd prefer that just let me know! I'm actively using mrsk on soon-to-be production environments, so I'm very motivated to help out where I can!

I think I misunderstood what was going on here and why my application failed to deploy. From looking at the deployment output I saw the curl against port 3999 and figured that was the problem. My understanding now is that mrsk starts a healthcheck-service container to perform the curl command against on port 3999. The Rails application I am working with doesn't seem to boot up fast enough for this check to complete successfully.


Add more simple types

PR checklist

[ ] Addresses an existing issue: #0000
[X] New feature, bugfix, or enhancement

[X] Includes tests

[ ] Documentation update (Not needed)

What changes did you make?
Consider the undefined and never types to be simple types. This allows writing undefined[] or never[].
The second commit changes tests to prove that I changed something. Could be removed if you think it's ugly.

I would mind waiting for version 5 to do this.

What about ts.SyntaxKind.LiteralType?
That would allow for true[], 1337[], "foo"[].
I just want to add this to the discussion. I don't have an opinion wether they should be considered simple types or not.

yeah it's a subjective call about what is considered "simple" here. IMO the examples you just proposed are a little confusing to read (partially because literals in type positions are a more recent addition to the language), so I would prefer writing Array<true>, Array<1337>, Array<"foo">. open to criticism here though.


Flow stops due to exception in http request node

Dear,
some time ago I created pull request 1176.  In short: always ask NodeJs to return Buffers, to avoid unnecessary buffer->string->buffer conversions (bad performance).  At the end all buffers in the array are appended to a single buffer.
However sometimes my flow is stopped by following exception:

Seems when the client (device) stops the connection abruptly, NodeJs ends the connection with an error string (instead of an array of Buffers).  So we arrive in res.on('end',function() { :

It could be solved like this (adding code in the red rectangles), but perhaps you have a better solution:

Kind regards,
Bart

Hi @bartbutenaers, thanks for raising this.
The proper fix is subtly different. The reason msg.payload is a string at this point is because the req.on('error' handler has already been called. That handler sets msg.payload to the error string and logs the error. In that scenario, when the res.on('end' handler is called, we should not send on another message.
Fix incoming - will be available in 0.17.5 soon.


64bit installer for version 124.0.6367.245 R2 is being detected by Microsoft Security Essentials as a virus

When I attempted to download the 64bit installer for version 124.0.6367.245 R2, it was detected by Microsoft Security Essentials as a virus before the download was even completed.
To Reproduce

Attempt to download 64 bit installer while Microsoft Security Essentials are installed.

Expected behavior
No virus detection.
Desktop:

OS: Windows 7 Professional SP1 x64
Bitness of browser: 64bit

Please use this service to report Microsoft's false positives.


chore: set up prettier

Changing base of this PR to later include changes into principal PR of chore/webpack-setup

:tada: This PR is included in version 1.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


EZVIZ camera stream doesn't contain any supported code

Which version are you using?
v0.21.6
Which operating system are you using?

[ ] Linux amd64 standard
[ ] Linux amd64 Docker
[ ] Linux arm64 standard
[ ] Linux arm64 Docker
[ ] Linux arm7 standard
[ ] Linux arm7 Docker
[ ] Linux arm6 standard
[ ] Linux arm6 Docker
[x] Windows amd64 standard
[ ] Windows amd64 Docker (WSL backend)
[ ] macOS amd64 standard
[ ] macOS amd64 Docker
[ ] Other (please describe)

Describe the issue
EZVIZ camera - stream doesn't contain any supported codec (which are currently VP9, VP8, H264, Opus, G722, G711
2023/03/31 15:39:10 INF [path proxied] [rtsp source] ready: 2 tracks (H265, MPEG4-audio)
2023/03/31 15:39:10 INF [WebRTC] [conn [::1]:64500] opened
2023/03/31 15:39:10 INF [WebRTC] [conn [::1]:64500] closed (the stream doesn't contain any supported codec (which are currently VP9, VP8, H264, Opus, G722, G711)) Opus, G722, G711))
2023/03/31 15:39:39 WAR [path proxied] [rtsp source] 1 RTP packet(s) lost
Describe how to replicate the issue

start the server
publish with source: rtsp://user:pass@<IP_ADDRESS>:554/h.264
read with ...

Did you attach the server logs?
2023/03/31 17:35:33 INF MediaMTX / rtsp-simple-server v0.21.6
2023/03/31 17:35:33 DEB [path proxied] created
2023/03/31 17:35:33 DEB path manager created
2023/03/31 17:35:33 INF [path proxied] [rtsp source] started
2023/03/31 17:35:33 DEB [path proxied] [rtsp source] connecting
2023/03/31 17:35:33 INF [RTSP] listener opened on :8554 (TCP), :8000 (UDP/RTP), :8001 (UDP/RTCP)
2023/03/31 17:35:33 INF [RTMP] listener opened on :1935
2023/03/31 17:35:33 INF [HLS] listener opened on :8888
2023/03/31 17:35:33 INF [WebRTC] listener opened on :8889 (HTTP)
2023/03/31 17:35:34 DEB [path proxied] [rtsp source] c->s OPTIONS rtsp://<IP_ADDRESS>:554/h264_stream RTSP/1.0
CSeq: 1
User-Agent: gortsplib

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] s->c RTSP/1.0 200 OK
CSeq: 1
Date: Fri, Mar 31 2023 17:35:34 GMT
Public: OPTIONS, DESCRIBE, PLAY, PAUSE, SETUP, TEARDOWN, SET_PARAMETER, GET_PARAMETER

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] c->s DESCRIBE rtsp://<IP_ADDRESS>:554/h264_stream RTSP/1.0
Accept: application/sdp
CSeq: 2
User-Agent: gortsplib

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] s->c RTSP/1.0 401 Unauthorized
CSeq: 2
Date: Fri, Mar 31 2023 17:35:34 GMT
WWW-Authenticate: Digest realm="588fcf7a1dc6", nonce="f37a39304b09e7fd81c5f2bdf593897c", stale="FALSE"
WWW-Authenticate: Basic realm="588fcf7a1dc6"

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] c->s DESCRIBE rtsp://<IP_ADDRESS>:554/h264_stream RTSP/1.0
Accept: application/sdp
Authorization: Digest username="admin", realm="588fcf7a1dc6", nonce="f37a39304b09e7fd81c5f2bdf593897c", uri="rtsp://<IP_ADDRESS>:554/h264_stream", response="7c7435422b21a0b25fc040314a2063b2"
CSeq: 3
User-Agent: gortsplib

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] s->c RTSP/1.0 200 OK
CSeq: 3
Content-Base: rtsp://<IP_ADDRESS>:554/h264_stream/
Content-Length: 808
Content-Type: application/sdp

v=0
o=-<PHONE_NUMBER>405654<PHONE_NUMBER>405654 IN IP4 <IP_ADDRESS>
s=Media Presentation
e=NONE
b=AS:5100
t=0 0
a=control:rtsp://<IP_ADDRESS>:554/h264_stream/
m=video 0 RTP/AVP 96
b=AS:5000
a=control:rtsp://<IP_ADDRESS>:554/h264_stream/trackID=1
a=rtpmap:96 H265/90000
a=fmtp:96 profile-level-id=420029; packetization-mode=1; sprop-parameter-sets=QgEBAWAAAAMAAAMAAAMAAAMAlqABQCAFoWNrkkya5ZwAAAAAAAAAAAAA,RAHgdrAmQA==
m=audio 0 RTP/AVP 104
b=AS:50
a=control:rtsp://<IP_ADDRESS>:554/h264_stream/trackID=2
a=rtpmap:104 mpeg4-generic/16000/1
a=fmtp:104 profile-level-id=15; streamtype=5; mode=AAC-hbr; config=1408;SizeLength=13; IndexLength=3; IndexDeltaLength=3; Profile=1;
a=Media_header:MEDIAINFO=494D4B48010100000400050001200110803E0000007D000000000000000000000000000000000000;
a=appversion:1.0

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] c->s SETUP rtsp://<IP_ADDRESS>:554/h264_stream/trackID=1 RTSP/1.0
Authorization: Digest username="admin", realm="588fcf7a1dc6", nonce="f37a39304b09e7fd81c5f2bdf593897c", uri="rtsp://<IP_ADDRESS>:554/h264_stream/trackID=1", response="1a6e3348addc654bf20aeb2b5e05623b"
CSeq: 4
Transport: RTP/AVP;unicast;client_port=11384-11385;mode=play
User-Agent: gortsplib

2023/03/31 17:35:34 DEB [WebRTC] [conn ::1] GET /proxied/ws
2023/03/31 17:35:34 DEB [WebRTC] [conn ::1] [c->s] GET /proxied/ws HTTP/1.1
Host: localhost:8889
Accept-Encoding: gzip, deflate, br
Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
Cache-Control: no-cache
Connection: Upgrade
Origin: http://localhost:8889
Pragma: no-cache
Sec-Websocket-Extensions: permessage-deflate; client_max_window_bits
Sec-Websocket-Key: PvP2Wp8Zg/EIWmZBL3iBqw==
Sec-Websocket-Version: 13
Upgrade: websocket
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36

2023/03/31 17:35:34 DEB [WebRTC] [conn ::1] [s->c] HTTP/1.1 404 Not Found
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Server: rtsp-simple-server

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] s->c RTSP/1.0 200 OK
CSeq: 4
Date: Fri, Mar 31 2023 17:35:34 GMT
Session:<PHONE_NUMBER>;timeout=20
Transport: RTP/AVP;unicast;client_port=11384-11385;mode=play;server_port=8352-8353;ssrc=40eab37c;mode="play"

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] c->s SETUP rtsp://<IP_ADDRESS>:554/h264_stream/trackID=2 RTSP/1.0
Authorization: Digest username="admin", realm="588fcf7a1dc6", nonce="f37a39304b09e7fd81c5f2bdf593897c", uri="rtsp://<IP_ADDRESS>:554/h264_stream/trackID=2", response="9ae3fc8f311825950281367d733b6a49"
CSeq: 5
Session:<PHONE_NUMBER>
Transport: RTP/AVP;unicast;client_port=25024-25025;mode=play
User-Agent: gortsplib

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] s->c RTSP/1.0 200 OK
CSeq: 5
Date: Fri, Mar 31 2023 17:35:34 GMT
Session:<PHONE_NUMBER>;timeout=20
Transport: RTP/AVP;unicast;client_port=25024-25025;mode=play;server_port=8354-8355;ssrc=5d0f07bc;mode="play"

2023/03/31 17:35:34 INF [path proxied] [rtsp source] ready: 2 tracks (H265, MPEG4-audio)
2023/03/31 17:35:34 DEB [path proxied] [rtsp source] c->s PLAY rtsp://<IP_ADDRESS>:554/h264_stream/ RTSP/1.0
Authorization: Digest username="admin", realm="588fcf7a1dc6", nonce="f37a39304b09e7fd81c5f2bdf593897c", uri="rtsp://<IP_ADDRESS>:554/h264_stream/", response="fc01e21d7c2b8e54ca307c05521c07be"
CSeq: 6
Range: npt=0-
Session:<PHONE_NUMBER>
User-Agent: gortsplib

2023/03/31 17:35:34 DEB [path proxied] [rtsp source] s->c RTSP/1.0 200 OK
CSeq: 6
Date: Fri, Mar 31 2023 17:35:34 GMT
RTP-Info: url=rtsp://<IP_ADDRESS>:554/h264_stream/trackID=1;seq=58696;rtptime=252172865,url=rtsp://<IP_ADDRESS>:554/h264_stream/trackID=2;seq=52419;rtptime=1722448563
Session:<PHONE_NUMBER>

2023/03/31 17:35:37 DEB [WebRTC] [conn ::1] GET /proxied/ws
2023/03/31 17:35:37 DEB [WebRTC] [conn ::1] [c->s] GET /proxied/ws HTTP/1.1
Host: localhost:8889
Accept-Encoding: gzip, deflate, br
Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
Cache-Control: no-cache
Connection: Upgrade
Origin: http://localhost:8889
Pragma: no-cache
Sec-Websocket-Extensions: permessage-deflate; client_max_window_bits
Sec-Websocket-Key: Vz+Zw+VkhRAaopBonbacdg==
Sec-Websocket-Version: 13
Upgrade: websocket
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36

2023/03/31 17:35:37 INF [WebRTC] [conn [::1]:57359] opened
2023/03/31 17:35:37 INF [WebRTC] [conn [::1]:57359] closed (the stream doesn't contain any supported codec (which are currently VP9, VP8, H264, Opus, G722, G711))
2023/03/31 17:35:37 DEB [WebRTC] [conn ::1] [s->c] HTTP/1.1 404 Not Found
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Server: rtsp-simple-server

2023/03/31 17:35:40 DEB [WebRTC] [conn ::1] GET /proxied/ws
2023/03/31 17:35:40 DEB [WebRTC] [conn ::1] [c->s] GET /proxied/ws HTTP/1.1
Host: localhost:8889
Accept-Encoding: gzip, deflate, br
Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
Cache-Control: no-cache
Connection: Upgrade
Origin: http://localhost:8889
Pragma: no-cache
Sec-Websocket-Extensions: permessage-deflate; client_max_window_bits
Sec-Websocket-Key: CaT0JrrpFiMff0PLJGzhdA==
Sec-Websocket-Version: 13
Upgrade: websocket
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36

yes
Did you attach a network dump?

no

What sort of camera is that? seems like you're trying to ask for h264 with /h264_stream in the rtsp url, but instead you're just getting h265 so maybe it only supports H265
Between the camera and rtmp-simpleserver/MediaMTX You'll want to transcode to codecs supported by WebRTC
Reference: https://developer.mozilla.org/en-US/docs/Web/Media/Formats/WebRTC_codecs
EZVIZ c6n
https://www.ezviz.com/product/C6N-4MP/37409

Interestingly enough I visited the link on mobile and the page tells me that H.265 is better than H.264. I visit the page on PC and its as you quoted. There doesn't seem to be much information about configuring that camera, I see a quick start guide and mention to an app.
According to this Git commit on a different project: https://github.com/AlexxIT/go2rtc/commit/91399d3194aeb451a90b86a4c5434abc95a10087
The camera might be saying it's got H265 over RTSP while it actually is giving H264?
Relevant issue: https://github.com/AlexxIT/go2rtc/issues/264

WebRTC doesn't support H265, as clearly stated in the README.
Adding support for it would be useless since no browser supports H265 except Safari on macOS.
If you need a broader support, contact the maintainers of Chrome and Firefox, that will tell you that they can't do anything due to licensing issues.

in home assistant this camera works via WebRTC


proposal: os/exec: Add ability to limit or prohibit the use of spawning subprocess'

Background
The os/exec pacakge allows Go applications to spawn subprocesses, which can enable Go applications to interact with other executables on the system. This is a widely used practice, but presents a security risk for the running system.
Should the running application be impacted by a remote code execution vulnerability, the ability to spawn applications on the running system can pose a significant threat.
For example, a recurring trend on other langues like Go is malicious third-party packages that contain cryptocurrency mining malware, or "cryptominers". Typically, these malicious packages don't actually contain the mining code in package itself, but rather code that downloads a malicious binary and runs it, as reported on by Bleeping Computer
Some operating systems provide mechanisms to limit process spawning, such as Security Enhanced Linux (SELinux), or Windows AppLocker, however not all of the supported OS targets of Go offer such features. Additionally, these features can be difficult to configure and are often disabled.
Proposal
As an optional security hardening measure for Go applications, I am proposing that we add the ability to restrict or prohibit the use of spawning subprocesses through os/exec.
In cases where the functionality is disabled, no subprocesses can be spawned through os/exec. However, we could provide an allowlist mechanism where only specific binaries may be executed by their path.
In an application where the developers know there will not be any need for spaning subprocesses, disabling that functionality provides a layer of defence. In the example of malicious packages above, this mechanism would prevent the malicious mining binary from being executed. This should not be seen as a complete defence, but an additional safeguard used in conjuction with others.
This feature should be opt-in so that existing applications are unaffected.
Design
Disabling spawning subprocesses
At build time, set the GOEXECDISABLED=1 environment variable.
Then, any calls to os/exec.Cmd.Start() return an error indicating that the functionality is disabled.
Restrict spwaning subprocesses
At build time, set the GOEXECALLOW="/usr/bin/foo:/usr/bin/bar" environment variable, which takes a colon separated list of files that can be executed by os/exec. If GOEXECDISABLED is specified, it would take precedence over this.
Then, any calls to os/exec.Cmd.Start() return an error if the execuable path is not in the allowlist, otherwise it is executed normally.

This is my first proposal to go, so please forgive me if I've made a mistake on the process somewhere!

cc @golang/security

How can we possibly restrict this via just os/exec? Presumably I could make the right fork+exec syscalls myself, or copy the bits from os/exec which do this. Or use cgo to instead fork and execute a program from there.

There are many ways that a Go program is vulnerable if an attacker is able to force it to execute code determined by the attacker.  The os/exec package is just one of many cases.  Most obviously, Go programs can make system calls directly using syscall.Syscall, and can easily start programs using syscall.ForkExec.
So my concern would be that this idea, though not in itself terrible, is just a small bandaid that will in the best case do nothing much and in the worst case lead people to believe that there is more security than there actually is.

Closing as not technically feasible

This proposal has been added to the active column of the proposals project
and will now be reviewed at the weekly proposal review meetings.
— rsc for the proposal review group

This proposal has been declined as infeasible.
— rsc for the proposal review group


[Runtime] Ensure a DSOLibrary is loaded only once

This PR introduces a DSOLibrary cache that ensures a DSO library is only dlopen-ed once in a single process. This guard is less useful per se as Linux already provides such guanratee backed by reference counter:

If the same library is loaded again with dlopen(), the same file handle
is returned. The dl library maintains reference counts for library
handles, so a dynamic library is not deallocated until dlclose() has
been called on it as many times as dlopen() has succeeded on it. The
_init() routine, if present, is only called once. But a subsequent call
with RTLD_NOW may force symbol resolution for a library earlier loaded
with RTLD_LAZY.

Link: https://linux.die.net/man/3/dlopen.
However, it will help TVM metadata to be more properly handled at loading time in a multi-threading environment.

@tqchen please review. Also, I was a bit uncertain if we should also guard anything in CreateModuleFromLibrary in a multi-threading environment?

I do not believe this is a right fix.


use a position fixed btn instead of shortcuts

Any reason why?

@mpociot any updates ?

Do you want to provide a PR with the changes for this?

do u want to keep the shortcuts or remove em ?
for btn styling, do you want it to be configurable or static?

What do you think of having the shortcuts configurable? Not the actual keys, but the ability to enable/disable them?

yeah why not, but if you are going to make it configurable why not go the extra mile and make the shortcut it self configurable ?
on a side note,
i was thinking maybe we can turn the whole UI into a browser extension, something like vuejs, blackfire, etc.. but am not sure how it will be done :disappointed:

yeah why not, but if you are going to make it configurable why not go the extra mile and make the shortcut it self configurable ?

That's a great idea!
And I also thought about turning this (among other things) into a browser extension, but haven't found the time to look into it in more detail

okay so to keep things simple, lets replace the shortcuts with a btn for now & the extra config could be added later to the browser ext, this way we won't need to do big changes to the package.
btw we can open a new issue for the browser ext idea, maybe someone can pick it up.
also i was thinking dropping jquery, again it would make things easier when converting to the ext.


Unable to connect to local ZooKeeper instance using zookeeper_client

I am using the zookeeper_client library in my Rust application to connect to a local ZooKeeper instance running on localhost:2181. However, when I try to create a node using the create method, I get an error: "called Result::unwrap() on an Err value: Unimplemented".
Here is my code snippet:
use anyhow::Error;

type AnyResult<T> = Result<T,Error>;

#[tokio::main]
async fn main() ->AnyResult<()>{
    use zookeeper_client as zk;

    let data = "path_data".as_bytes().to_vec();
    let create_options = zk::CreateMode::Persistent.with_acls(zk::Acls::anyone_all());

    let cluster = "localhost:2181";
    let client = zk::Client::connect(cluster).await.unwrap();

    let (stat, _) = client.create("/test1", &data, &create_options).await.unwrap();
    Ok(())
}

Environment:
rust:1.7.4
zookeeper:3.4.1
zookeeper-client:0.6.1

err message is:
thread 'main' panicked at src/main.rs:21:75:
called `Result::unwrap()` on an `Err` value: Unimplemented
stack backtrace:
   0: rust_begin_unwind
             at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5
   1: core::panicking::panic_fmt
             at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14
   2: core::result::unwrap_failed
             at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/result.rs:1652:5
   3: core::result::Result<T,E>::unwrap
             at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/result.rs:1077:23
   4: zk_smaple::main::{{closure}}
             at ./src/main.rs:21:21
   5: tokio::runtime::park::CachedParkThread::block_on::{{closure}}
             at /home/ch1ppy/.cargo/registry/src/mirrors.ustc.edu.cn-12df342d903acd47/tokio-1.35.0/src/runtime/park.rs:282:63
   6: tokio::runtime::coop::with_budget
             at /home/ch1ppy/.cargo/registry/src/mirrors.ustc.edu.cn-12df342d903acd47/tokio-1.35.0/src/runtime/coop.rs:107:5
   7: tokio::runtime::coop::budget
             at /home/ch1ppy/.cargo/registry/src/mirrors.ustc.edu.cn-12df342d903acd47/tokio-1.35.0/src/runtime/coop.rs:73:5
   8: tokio::runtime::park::CachedParkThread::block_on

i just try to get err message,but only msg is Unimplemented,even when i use anyhow to print msg

my toml
[package]
name = "zk_smaple"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
tokio = {version = "1.34.0",features = ["full"]}

zookeeper-client = "0.6.1"

anyhow = "1.0.75"

as I use following code：
use anyhow::Error;

type AnyResult<T> = Result<T,Error>;

#[tokio::main]
async fn main() ->AnyResult<()>{
    use zookeeper_client as zk;

    let data = "path_data".as_bytes().to_vec();
    let create_options = zk::CreateMode::Persistent.with_acls(zk::Acls::anyone_all());

    let cluster = "localhost:2181";
    let client = zk::Client::connect(cluster).await.unwrap();

    let (stat, _) = match client.create("/test1", &data, &create_options).await {
        Ok(data) => {
            data
        }
        Err(err) => {
            println!("{}", err);
            return Ok(())
        }
    };
    Ok(())
}

I get
warning: `zk_smaple` (bin "zk_smaple") generated 1 warning (run `cargo fix --bin "zk_smaple"` to apply 1 suggestion)
    Finished dev [unoptimized + debuginfo] target(s) in 0.04s
     Running `target/debug/zk_smaple`
unimplemented operation

does it not support zookeeper 3.4.1?

Client::create uses OpCode::create2 to get Stat for created node. OpCode::create2 was added in ZOOKEEPER-1297 which is shipped in 3.5.0. So, yes, Client::create does not support ZooKeeper 3.4.x.
I am not sure how to shape client side API for server compatibility issues for now. Maybe a comment in doc just like MultiWriter::add_create or a customizable client side version, or even auto server side version detection. See also ZOOKEEPER-1381 and ZOOKEEPER-3762.


[STREAMPIPES-337] Add missing functionalities for Aggregations.

Fixes: https://issues.apache.org/jira/browse/STREAMPIPES-337

Awesome, thanks!

Sorry, after merging I realized that the ASF license header is missing in the newly created files - can you please provide another PR that includes the proper headers? Thanks!

Sorry, after merging I realized that the ASF license header is missing in the newly created files - can you please provide another PR that includes the proper headers? Thanks!

@sndp2693 added headers in #37


Strange to have 5 devices and 4 entities

Thank you for your custom component. From my point of view it is strange to see 5 devices in the configuration tile.

Perhaps you should review how the entities are implemented. I expect to have 1 device (one by livebox) and X entities (one by component you implement)

Fix with latest version

Thank you for the fix.
For information making the update thru HACS add the new device with all the entities but the old devices are still there.
For a future update you should look at the migration feature to avoid this type of side effect.


Quick input list dom nodes hang around after quick input dismissed

Type: Bug

Open dev tools
Open quick input and start typing a file name
Close the quick input with escape
In the devtools, look at the quick input dom

Bug
The list elements for the previously showing quick input are still around

While they are cleaned up once the quick input shows again, for performance it would be better to free them once the input closes and they are no longer needed
VS Code version: Code - Insiders 1.73.0-insider (Universal) (bd1b7a384f8a5ab9fb5a6a0e8fea370e589f43a3, 2022-10-11T09:27:32.881Z)
OS version: Darwin x64 21.6.0
Modes:
Sandboxed: Yes

System Info

Item
Value

CPUs
Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz (16 x 2400)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
5, 5, 5

Memory (System)
32.00GB (0.03GB free)

Process Argv
--crash-reporter-id 48781ca2-1705-4f64-9bab-325055aab55d

Screen Reader
no

VM
0%

I think this works the way that it does because it's possible to call show on a quick pick when a quick pick is already visible so the logic was put in the show. We can probably move it to a helper function and run it in both places.

@mjbvz didn't you fix this one in a PR? I can't seem to find it.

@TylerLeonhardt Nope. Not too familiar with the quick fix code so was waiting for you

reopening since I need to revert the fix: https://github.com/microsoft/vscode/pull/168489


Imports autocomplete

When specifying imports import Data.<cursor> no modules are suggested. Forcing completions using ctrl+space gives only local suggestions.
Is this not supported?

I have the same problem too though I added a module name to dependencies in a file, package.yaml.
Has anybody succeeded to use auto completion with the recent version of HIE in neovim?

@mkYYY I don't think module autocompletion is implemented yet. Other than that, autocompletion on functions and other symbols is working great in a recent neovim installation.

@Bubba @alanz If you can offer me any guidance on this one, I'd love to implement autocomplete for imports

This would be really nice addition, you'll probably want to look into HieExtras.hs, mainly in these two functions
https://github.com/haskell/haskell-ide-engine/blob/38d27a270ec1a7d7f43faa6763a8062731998633/src/Haskell/Ide/Engine/Plugin/HieExtras.hs#L250-L251
https://github.com/haskell/haskell-ide-engine/blob/38d27a270ec1a7d7f43faa6763a8062731998633/src/Haskell/Ide/Engine/Plugin/HieExtras.hs#L131-L132
But these are kind of "dumb" completions that don't really take into account the position of the cursor. The ModuleCache instance builds up all the suggestions based off everything in global scope, and getCompletions filters it down to what matches the word that the cursor is at.
My first guess would be maybe to find and cache the modules that can be imported separately from the existing items, and then populate them in getCompletions whenever you detect that the user has written "import x"

Great, I'll make this a project for the week. Will ask questions if I get stuck

@Bubba is there a place we can chat? I'm stuck in several fronts and could use some guidance

@Lorenzo We're on the #haskell-ide-engine IRC channel on freenode!


[Backport] Bumping version to 1.0.0 (#4431)

Description
Backport of #4431
Checklist

[ ] I have signed the CLA
[ ] I have run this code in development and it appears to resolve the stated issue
[ ] This PR includes tests, or tests are not required/relevant for this PR
[ ] I have updated the CHANGELOG.md and added information about my change

@cla-bot check


Do not allow - for builder.AddBicepTemplate().WithParameter() function.

Something like this is currently valid for the AppHost code:
var bicep1 = builder.AddBicepTemplate("test", "test.bicep")
                   .WithParameter("param-01", parameter)

However, param-01 is an invalid name for a parameter and the program should return an error here.

@mitchdenny giving this to you