you-get: 0.4.1077 -> 0.4.1099

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/you-get/versions.
These checks were done:

built on NixOS
/nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099/bin/.you-get-wrapped passed the binary check.
/nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099/bin/you-get passed the binary check.
2 of 2 passed binary check by having a zero exit code.
0 of 2 passed binary check by having the new version present in output.
found 0.4.1099 with grep in /nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099
directory tree listing: https://gist.github.com/10a8076f36d5cef1644b16df703b91bd
du listing: https://gist.github.com/bff762c6ef186599bdcac2f64b255ccf

meta.description for you-get is: '"A tiny command line utility to download media contents from the web"'.
cc @ryneeverett for testing.
Experimental: this build is cached with Cachix. To use the cache follow these experimental instructions:
One time setup in nixpkgs Git checkout:
cachix use r-ryantm
git remote add r-ryantm https://github.com/r-ryantm/nixpkgs.git

Test this build:
git fetch r-ryantm && git checkout 17b480941d1997322bc1f58e5772223bee486e68 && nix-shell --pure -I nixpkgs=. -p you-get

Success on x86_64-darwin (full log)
Attempted: you-get
Partial log (click to expand)
  The script you-get is installed in '/nix/store/xvm2aihf1a4ydm3a11z1wb9wfyiirhzb-you-get-0.4.1099/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed you-get-0.4.1099
/private/tmp/nix-build-you-get-0.4.1099.drv-0/you-get-0.4.1099
post-installation fixup
strip is /nix/store/7ddbq63v97nk8gkbf7gcsfmby37h6gbl-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/xvm2aihf1a4ydm3a11z1wb9wfyiirhzb-you-get-0.4.1099/lib  /nix/store/xvm2aihf1a4ydm3a11z1wb9wfyiirhzb-you-get-0.4.1099/bin
patching script interpreter paths in /nix/store/xvm2aihf1a4ydm3a11z1wb9wfyiirhzb-you-get-0.4.1099
wrapping `/nix/store/xvm2aihf1a4ydm3a11z1wb9wfyiirhzb-you-get-0.4.1099/bin/you-get'...
/nix/store/xvm2aihf1a4ydm3a11z1wb9wfyiirhzb-you-get-0.4.1099

Success on aarch64-linux (full log)
Attempted: you-get
Partial log (click to expand)
Successfully installed you-get-0.4.1099
/build/you-get-0.4.1099
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/77g67vkbg657fcpymycikqn60fdjw4p6-you-get-0.4.1099
strip is /nix/store/0pjsgkxz0rp5baycq5sp2s72lrr5q9sg-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/77g67vkbg657fcpymycikqn60fdjw4p6-you-get-0.4.1099/lib  /nix/store/77g67vkbg657fcpymycikqn60fdjw4p6-you-get-0.4.1099/bin
patching script interpreter paths in /nix/store/77g67vkbg657fcpymycikqn60fdjw4p6-you-get-0.4.1099
checking for references to /build in /nix/store/77g67vkbg657fcpymycikqn60fdjw4p6-you-get-0.4.1099...
wrapping `/nix/store/77g67vkbg657fcpymycikqn60fdjw4p6-you-get-0.4.1099/bin/you-get'...
/nix/store/77g67vkbg657fcpymycikqn60fdjw4p6-you-get-0.4.1099

Success on x86_64-linux (full log)
Attempted: you-get
Partial log (click to expand)
Successfully installed you-get-0.4.1099
/build/you-get-0.4.1099
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099
strip is /nix/store/4qvrxzxa535y8304mk195x50b6p9607d-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099/lib  /nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099/bin
patching script interpreter paths in /nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099
checking for references to /build in /nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099...
wrapping `/nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099/bin/you-get'...
/nix/store/fbylh0d2jn5306sn6grzn15c5cb5wi7b-you-get-0.4.1099


Consider ignoring fields instead of failing to encode

Currently the library will fail encoding if fields are set on requests when those fields are only relevant to newer api versions.
For example: https://github.com/tychedelia/kafka-protocol-rs/blob/main/src/messages/metadata_request.rs#L108
I am working on a Kafka client that can dynamically select a version based on the broker version range. Since the request will fail to encode based on the version selected, the creator of the message needs to know the version before creating it.
However, the client I am working on lazily connects and resolves versions only when a request is sent, so this version information is not available at creation time.
Could the encoders ignore fields that aren't relevant to the version being encoded?

Maybe we could explore adding this is a configurable option, but it definitely wouldn't be the correct default behavior. If you want to fork the library, this should be pretty easy to replace yourself, although I have to admit I'm a bit skeptical about your ability to generalize this approach... new protocol fields are semantically meaningful relative to the expected behavior of the broker, so at some point, the caller does indeed need to know the version of the broker they're interacting with to accomplish anything useful.

Fair enough. It looks like the official Java client requires the version to create messages (and throws if incompatible), so this is equivalent.
I think I can change the approach I'm taking to acquire a connection first before creating the message.


Update generated source code

Automated PR triggered by new code generation.
Update generated source code
Generated SDK source code using:

Generator version 3.21.0
Specification version 0.0.29
Automation (cloudant-sdks) version 5ed1144

Thanks for the reviews @emlaver and @eiri! I'm about to merge this!


Open API allows bypassing Snow

window.open creates a security flaw for Snow that is very hard to patch.
REPRODUCE

load Snow in a webpage that is not "https://x.com"
run SNOW(w=>alert=111)
run POC below

EXPECTED
alert should fail since now it is 111
ACTUAL
alert works, Snow is bypassed
zzz=open("https://x.com");
setTimeout(() => {
    zzz.location.href="about:blank";
    setTimeout(() => {
        zzz.alert.call(window, 222);
    }, 1000);
}, 1000);

PROBLEM
what happens is that an attacker has the ability to create a new window by using open API, that is not subject to Snow's
load event listener since it has no frame element.
at first stage, an attacker can set the new window on init to a cross domain origin and by that make Snow skip this window for being cross origin.
at second stage, the attacker can redirect that window by reference to the same domain as the current page in order to have access to its properties and obtain native functionality.
at this point Snow has no way of telling that this location switch took place since there is no way by definition to get information regarding a redirect of a window.
SOLUTION

The following is the best idea I have at the moment, I wish someone would come up with a better idea!

SNOW API should allow 3 modes:

disable open API in the webpage completely
init a non-stopping setInterval the first time open API is used within the page, that goes over every window that was opened by open API and tries to apply Snow on it for the moment it might become same origin.
do nothing (freely enable open API)

user of Snow may use their preferred mode.

if disallowing usage of open API prevents your application from running correctly, please share so in this issue thread so we can discuss the problem and understand how to best deal with it

Some ideas for less severe blocking:

Instead of blocking window.open entirely, return an object that errors out when you try to do things to it. That would be less severe as simple calls to open a new tab would still work.
Since we're returning an object, maybe make it a proxy and only error out on some of the fields while leaving others working
Well, if it's a proxy, let's wrap it around the actual window reference and make it throw errors when you access it before the new origin is Snowy already.

Open API is super vulnerable in terms of realms security because there is no way of hooking to a load of a window that was opened using the open API.
In all other cases, realms are parts of iframes which have a sync load event Snow hooks to (Chromium based browsers only) and that's how Snow automatically reapplies itself on a certain window every time that window reloads.
However, in the unique scenario where a window was created using the open API, that window does not have a frameElement property we can set onload listener to.
This can be abused by an attacker as demonstrated in the example above in a way that JS code can hook into (AFAIK).
Because of how I couldn't think of a way to hook into that scenario, I realized that as long as the open API is accessible, it can be used to bypass Snow.
That is why your 3rd suggestion wouldn't work.
However, my mistake in that perception was that open API being accessible is not all it takes to bypass Snow - it also has to actually return the window object to the consumer of the API (thank you for enlightening me @naugtur).
So while (3) probably wouldn't work, (1) and/or (2) are correct.
I imagine (at 1st stage at least) that the right version of the fake object should only allow the most superficial access to the real window object (close, relocation, maybe that's it?)

After playing around the idea of returning a limited version of the opened window instead of the real one (see #38) the conclusion is that this isn't enough to protect against open attacks.
There is an attack vector in which the return value of open can be ignored completely, whether is a limited window or the real one, because the real window can be leaked by the opened window using postMessage as follows:
<!-- https://x.com/ -->
<script>
  setTimeout(() => {
    opener.postMessage('a', '*');
  }, 500);
</script>

<!-- https://example.com/ -->
<script>
  onmessage = (a) => {
    const x = a.source;
    x.location.href = 'https://example.com/';
    setTimeout(() => {
        x.alert.call(top, 'bypass');
    }, 1000);
  }
  open('https://x.com/');
</script>

This vector is very hard to stop and I am open to suggestions.
As I see it, @naugtur suggested proxying the opened window to a limited version of it and @kumavis suggested only allowing open to go by an allow list of domains it can access configured by Snow's consumer, and I'm pretty sure only the combination of the two suggestions can leave Snow protected while enabling(ish) open API.
Although again, I am open for ideas, I'd prefer finding a more elegant solution.

Here is another terrible one, I literally don't need anything special for this bypass, not even postMessage access:
open('javascript:opener.xyxy=window; location.href="data:1"');
setTimeout(() => {
    xyxy.location.href = 'https://example.com';
    setTimeout(() => {
        xyxy.alert.call(top, 'bypass');
    }, 1000);
}, 1000);

:fml:

And on second thought, no - combining both ideas of @naugtur and @kumavis won't solve the problem, because even legitimate postMessage usage between an opened window to an allowed origin and the opener can leak the window to malicious entity which can redirect it back to same origin and continue its attack from there.
Again - I'm open to suggestions (pun not intended)

We have a solution that defends Snow against all of the vulnerabilities that are described so far in this thread (up until this comment):
Eventually, there are two openings that either one is enough to bypass Snow:

having access to the opened window's location property - The fix to that is to return a highly limited version (proxy) of the opened window instead of the real window as the return value of open(). That version will include only functionalities that are commonly used by openers and atm nothing more, especially not location (exploit example)
getting a hold on the real window instead of the limited proxy version of it using postMessage - The solution above can be bypassed because open's return value is not the only way to get a hold on the real opened window, it is also being leaked by the message event object when is used via postMessage API (exploit example). The solution to that is to monkey patch MessageEvent's source prop getter to return the proxy version of the opened window instead of the real one.
getting a hold on the real window instead of the limited proxy version of it using javascript: scheme - Another way to leak the real window is by opening a window to a javascript: location and use it to set the window to the opener (exploit example). The only fix I can think of for now is to not allow passing a javascript: URL to the open API at all - pretty sure that's not used legitimately anywhere anyway.

All is introduced in #38


triggerDebugMirroringRun documentation

Status
Ready
Related Issues
related: https://code.pan.run/xsoar/server/-/merge_requests/17350
related: https://code.pan.run/xsoar/web-client/-/merge_requests/7309
Description
Added docs for the new mirroring debugging command.

@anara123 @aviadl Doc review completed.


Chat application porblem

Hello,
when i upload an picture with the android-upload-service from the room everything works great.
if i get out from the room and come back i get this message
    at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:871)
        at android.os.Handler.handleCallback(Handler.java:739)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5221)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.Application android.app.Activity.getApplication()' on a null object reference
        at com.nuro.messaging.ChatFragment.sendMessage(ChatFragment.java:479)
        at com.nuro.messaging.ChatFragment.access$500(ChatFragment.java:63)
        at com.nuro.messaging.ChatFragment$11.onCompleted(ChatFragment.java:648)
        at com.alexbbb.uploadservice.AbstractUploadServiceReceiver.onReceive(AbstractUploadServiceReceiver.java:38)
        at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:861)

at android.os.Handler.handleCallback(Handler.java:739)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:135)
            at android.app.ActivityThread.main(ActivityThread.java:5221)
its happens to me only when i try to upload another file, but if i send text it works fine.
maybe it related to the service?
if you need extra information you need to know tell me please.
Best
Idan

As the exception says:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.Application android.app.Activity.getApplication()' on a null object reference
        at com.nuro.messaging.ChatFragment.sendMessage(ChatFragment.java:479)

You're invoking a method on a null object in your custom implementation of AbstractUploadServiceReceiver's onReceive method. Debug your code.

Hi Alex,
Thank, i'm noob programmer :) working on my skills. but thank you for best
support.
Idan
On Mon, Mar 9, 2015 at 3:36 PM, Alex Gotev<EMAIL_ADDRESS>wrote:

As the exception says:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.app.Application android.app.Activity.getApplication()' on a null object reference
at com.nuro.messaging.ChatFragment.sendMessage(ChatFragment.java:479)
You're invoking a method on a null object in your custom implementation of
AbstractUploadServiceReceiver's onReceive method. Debug your code.
--
Reply to this email directly or view it on GitHub
https://github.com/alexbbb/android-upload-service/issues/24#issuecomment-77853841
.

--
Idan Ayalon

@idanbar134 keep working like you do :) I suggest you to learn how to read Java Stack Trace, as it's your "best friend" to find out what's going wrong in some cases. Sorry to bother you with this ticket you opened: https://github.com/alexbbb/android-upload-service/issues/22 again, but I need to know if you still have the described problem or how you managed to solve it :)

Thanks. I learn the hard way :) and I solved it.
On Mar 9, 2015 4:54 PM, "Alex Gotev"<EMAIL_ADDRESS>wrote:

@idanbar134 https://github.com/idanbar134 keep working like you do :) I
suggest you to learn how to read Java Stack Trace, as it's your "best
friend" to find out what's going wrong in some cases. Sorry to bother you
with this ticket you opened: #22
https://github.com/alexbbb/android-upload-service/issues/22 again, but
I need to know if you still have the described problem or how you managed
to solve it :)
--
Reply to this email directly or view it on GitHub
https://github.com/alexbbb/android-upload-service/issues/24#issuecomment-77868167
.

Hi Alex,
I'm trying to upload a photo that i pick from the gallery using this code:
public String getPath(Uri uri) {
// just some safety built in
if( uri == null ) {
return null;
}
// try to retrieve the image from the media store first
// this will only work for images selected from gallery
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = getActivity().getContentResolver().query(uri,
projection, null, null, null);
if( cursor != null ){
int column_index =
cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
// this is our fallback here
return uri.getPath();
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent

data) {
super.onActivityResult(requestCode, resultCode, data);
String realPath = "";
    if (resultCode == Activity.RESULT_OK  ) {
        if( requestCode == REQUEST_CAPTURE_PICTURE ){
            file = new

File(Environment.getExternalStorageDirectory().toString());
for (File temp : file.listFiles()) {
if (temp.getName().equals("temp.jpg")) {
file = temp;
                   realPath = file.toString();
                    break;
                }
            }
        }

        if (requestCode ==  REQUEST_PICK_PICTURE) {
            if (data != null ) {
                selectedImageURI = data.getData();
                Log.i(TAG, selectedImageURI.toString());

                //realPath =

"/storage/emulated/legacy/20150308_184443.jpg";
                realPath = getPath(selectedImageURI);

            }
        }

        // upload the files with android-upload-service
        UploadFileToServer(realPath, getActivity());
    }
}

and this is my chooseImage method:
private void chooseImage() {
    Intent intent = new Intent();
    intent.setType("image/*");
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(Intent.createChooser(intent, "Select

Picture"), REQUEST_PICK_PICTURE);
}
the 'getPath' returns empty string and the app crashes...
i tried to direct 'realPath' (String) to real photo on SD and it worked.
i would be happy to know what is my noob mistake this time :)
best,
Idan
On Mon, Mar 9, 2015 at 4:57 PM, idanbar134<EMAIL_ADDRESS>wrote:

Thanks. I learn the hard way :) and I solved it.
On Mar 9, 2015 4:54 PM, "Alex Gotev"<EMAIL_ADDRESS>wrote:

@idanbar134 https://github.com/idanbar134 keep working like you do :)
I suggest you to learn how to read Java Stack Trace, as it's your "best
friend" to find out what's going wrong in some cases. Sorry to bother you
with this ticket you opened: #22
https://github.com/alexbbb/android-upload-service/issues/22 again, but
I need to know if you still have the described problem or how you managed
to solve it :)
--
Reply to this email directly or view it on GitHub
https://github.com/alexbbb/android-upload-service/issues/24#issuecomment-77868167
.

--
Idan Ayalon


Update posts/localstorage.md

Added referrence to the Storagify jQuery plugin for localStorage interaction

this script is beyond the scope of what we want to feature here.. we are just looking for basic localstorage polyfills. and really i dont think we'll add any beyond this


tweak(medical): Reduce chemist slots

About the PR

Lowers the maximum amount of chemists from 3 to 2 on maps that had the  maximum set to three.
Why / Balance

Too many chemists in the laboratory.
Currently with the state of CMO and Cargo, chemistry usually does not have enough resources to support three chemists who are actively working towards making things for medbay, botany or clown.
Chems run out super quickly and rarely get restocked.
Technical details

Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

Made a few mistakes, fixing now

Chemist job is not only spending chems but also harvesting them, that puts even more pressure on the 2 chems and leaves antag-chemists even less time to be naughty if they want to be stealthy and avoid suspicion.

i would still keep fland at 3 because fland is meant for like 80-100pop iirc

Closed this by accident...


Complete 0.1.0 API guide

Build the documentation and see whether the current single-page document is the way we want to go. Build with make docs.


[REQUEST] Notepad section

Is your feature request related to a problem?
I always have many notes about my config (test creds, rules n etc + debug data)
i need them to improve config later or repair config in future (if target updated)
i have to make a folder for every config and save them as text files
but i like to have my notes in OB itself, whenever i load my config in stacker
Describe the solution you'd like
actually i have no hope and i think you will close this issue 😅
but i write:
i think a new section in Configs section is needed (After 'Other Options')
user interface is good to be look like stacker section, but every block is a note or debug data!
SearchBox and 'Word wrap' and RTL checkboxes are needed too
if user added a note block for a config, then OB have to make a file named same as the config in configs folder but with a different extension (notes should not be in config itself, this make config huge and also maybe this contains important data that users don't wanna share them with config)
if config renamed, OB should rename it
if all note blocks removed, then OB have to remove note file)
here you can make it more advanced by adding PARSE BLOCK's toggle tabs to test regex and other modes on a note block that containing debug data, (running whole config to test a PARSE BLOCK is not good)
you can also add
think about this, ty

This is extremely situational and it sounds like something that would only benefit you (other than being pretty time consuming to make the way you described it). Sorry but I won't do this.

extremely situational 🤔
ok, but only 'Word wrap' and RTL checkboxes was things that would benefits only me and non english users
you also labeled #588 as low priority
if you add that(#588), i could save my things as comment and send them to notepad++ everytime that i had time to complete that config or i can save test creds in config after i completed a config
i have many folder that i made to save debug, test creds and notes of websites that i never completed

Yes I will do 588 so you can use the LS itself for comments


[Doc] correct format errors in English doc

Proposed changes
Some formate errors in English doc.
They are very straightforward and should not break any existing build.

@EmmyMiao87 Hi, hope you have a fantastic Spring Festival! This PR has been created for a long time. It's merely for the doc part and won't break any existing build. Believe me, it will make the English doc better! Could you please review it after have a nice lunch or dinner and temporally have nothing to do? I will appreciate that!

Happy Ox New Year ~.
I have seen PR and there is no problem.
But you need to rebase the master code to resolve the conflict firstly.

OK, thanks! I will do that.

It seems that I have finished the work. @EmmyMiao87

@EmmyMiao87 Could you review this PR again? Thanks!!

Done

Thanks!!!


Beautifying PHP

Description
The results of beautification are not what I expect.
Expected Results
The beautified code should have looked like:
It's on debug.md, not sure what it should look like.

Steps to Reproduce

Add code to Atom editor
Run command Atom Beautify: Beautify Editor
This beautified code does not look right!

Debug
Here is a link to the debug.md Gist: https://gist.github.com/857c8a2facbaf0cc4a783182eff24c80
Checklist

[X ] I have tried uninstalling and reinstalling Atom Beautify to ensure it installed properly
[ X] I have reloaded (or restarted) Atom to ensure it is not a caching issue
[ X] Searched for existing Atom Beautify Issues at https://github.com/Glavin001/atom-beautify/issues
so I know this is not a duplicate issue
[ X] Generated debugging information and added link for debug.md Gist to this issue

Same here, PHP beautification doesn't work anymore (nothing happens) but it works well when I use php-cs-fixer directly from the command line.

Here, when I use php-cs-fixer from Windows CLI, it works fine, but this package seems to not work with it. atom-beautify only works when I give it the path of php-cs-fixer.phar file.

Finally got it!
It seems that my PHP version was involved. I'm on OSX and installed PHP in the past by using this script https://php-osx.liip.ch/. I also have a php version available with brew but I think the wrong version was used.
So, I completely removed php5 folders in /usr/local/ then try the command which php, which should return  /usr/local/bin/php.
We must ensure that the good version is used (it should be a symlink to brew php binaries) :
-> ls -l /usr/local/bin/php
lrwxr-xr-x  1 robin  admin  32 30 nov 22:40 /usr/local/bin/php -> ../Cellar/php70/7.0.13_6/bin/php

After that, everything was back to normal with atom-beautify :simple_smile:

The frequent level of frustration and numerous issues related to PHP here really make me want to extend Pretty Diff to support PHP formally.  If only there were more time in the day.

I have similar issue, nothing happens to my code at all.
Debug gist from Beautify is here.

I found my PHP wasn't beautifying and checking the debug I found using PHP-CS-Fixer with xdebug enabled would cause it to write to stderr and prevent any beautification of the code.
If you are having issues with PHP Beautify then I would suggest checking if you have xdebug installed and disabling it. Unless the Beautify devs can capture the response and still allow it to work. :)

Thanks for the suggestion @madrussa, but I have no idea how to disable xdebug. I've tried to update php-cs-fixer by its selfupdate command but that failed due to some permission problem. It still doesn't work…


Update to Unicode 12

It's a new Unicode release (this one includes the Lobster emoji)! Time to:

Pull in the newest UnicodeData.txt
Re-run the generator

(-:

I tried to run the tests, but these fail on nightly these days. Maybe stable proc macros broke the macro crate.

I fixed master, thanks for noticing it. Now you have an actual test failure! :D

Oopsie! I forgot to run the generator in PHF mode, too. To counteract this, I added a make generate task that should ensure we correctly update the code when we update the data files.

An open question, as always, is what parameters to use on the PHF - there are no benchmarks, so we could use code size as a proxy; but I'm not sure that is valid.

I added a make generate task that should ensure we correctly update the code when we update the data files.

Thanks!

An open question, as always, is what parameters to use on the PHF.

I don't know. To be honest, I never heard of PHFs before today... We could take a look at what other unicode libraries do, if any of them uses PHFs too.

Thanks you for getting this merged so quickly! I think the only real difference we could get out of the perfect hash is maybe size - it might be interesting to experiment with it and see how large release binaries get with the different parameters.
One other request: Can you cut a crates.io release? I would love to use Unicode 12 in chars (:

One other request: Can you cut a crates.io release? I would love to use Unicode 12 in chars (:

Sure. There's no backward incompatibility when upgrading unicode versions, right?

There may have been renames of characters, so I think marking it as non-backwards compat is quite reasonable!


Open a pull request

Why:
Closes [issue link]

What's being changed:

Check off the following:

[x] I have reviewed my changes in staging (look for "Automatically generated comment" and click Modified to view your latest changes).
[x] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[x] This pull request impacts the contribution experience

[x] I have added the 'writer impact' label
[x] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

เมื่อ ส. 5 ก.พ. 2022 เวลา 22:24 MASO OAK” @.***>
เขียนว่า:

Closed #15122 https://github.com/github/docs/pull/15122.
—
Reply to this email directly, view it on GitHub
https://github.com/github/docs/pull/15122#event-6013931231, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AW6BKB7WO5HTJZRTLKAVUALUZU6KLANCNFSM5NUCK35Q
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Modify

Modified

Modified

Modified


Use Compat.@compat to mark public functions not exported

Closes #228

@jofrevalles @Todorbsc tests are failing because i stopped exporting a couple of deprecated functions. I can fix it now but let's discuss it in the next meeting so we choose which to export and which not.


Print shorts as hex values.

Resolves issue raised in #851.

Current coverage is 72.99% (diff: 100%)

Merging #863 into master will decrease coverage by 0.49%

@@             master       #863   diff @@
==========================================
  Files           111        111
  Lines         15867      16395   +528
  Methods        2172       2251    +79
  Messages          0          0
  Branches       1924       1981    +57
==========================================
+ Hits          11661      11968   +307
- Misses         3578       3761   +183
- Partials        628        666    +38

Powered by Codecov. Last update e39c23d...ab009c1

LGTM


Content Group Banner | Not showing the Divider line between title and CTA for content group banner in safari

Brief Description: The Divider line between title and cta for the content group banner is not showing up in safari.
Detailed description

Describe in detail the issue you're having.

The divider line between the title and cta for the content group banner will appear in chrome and firefox browsers. However, when opening the links in safari the divider line does not appear.

Is this a feature request (new component, new icon), a bug, or a general
issue?

This is a general issue when open the component in Safari

Is this issue related to a specific component?

This issue is related to the Content Group Banner component.

What did you expect to happen? What happened instead? What would you like to
see changed?

Actual result:

Not showing the Divider line between title and CTA for content group banner in safari
https://dev-publish.np-roks.cms.cis.ibm.net/qa/abhinav-testpage/learn-landing-page-20-july
https://www.ibm.com/standards/carbon/web-components/?path=/story/components-content-group-banner--default

Expected Result:

Show show the Divider line between title and CTA for content group banner in safari as it is showing in Chrome

What browser are you working in?

Chrome (works as expected)
FireFox (works as expected)
Safari (Does not work)

What version of Carbon for IBM.com are you using?

ibmdotcom-styles: 1.21.0
ibmdotcom-we-compnents: 1.6.0

Steps to reproduce the issue

Copy the links provided above
Paste the links into Safari
Then paste the links to chrome or firefox
Then review Safari and chrome/firefox side by side and you will notice the divider is missing in firefox.

Additional information
Safari Screenshot:

Chrome Screenshot:

Corresponding AEM ticket is https://jsw.ibm.com/browse/ADCMS-1598 and this impacts the Geo Home page Rollout, planned for Aug 31st

8/4/2021 Slack:  Sandeep Bahl:  11:21 AM --we can live without it, just need a new date

Safari usage globally is 18.64%.  Tier 1 support level.

@RobertaJHahn Here's the link to the JIRA ticket (https://jsw.ibm.com/browse/HC-2130) that we're tracking on our board.
HC Engineer Assignee: @mwanberg


Is there support for templating engines like ejs, pug etc?

I'm trying to use siwe with vanilla javascript (templating engine) and I was wondering if there's a way to use the following part in a script in html:
import { SiweMessage } from 'siwe';
const message = new SiweMessage({
    domain,
    address,
    statement,
    uri: origin,
    version: '1',
    chainId: '1',
    nonce: await res.text()
});
return message.prepareMessage();

I'm afraid not, you will need a bundler to add the polyfills. You can check the notepad example, run it and check the public/bundle.js, probably is what you're looking for.

@safisaleem did the provided solution work for you?

@awoie it did, yes. but not exactly like the example. all I needed from in my template was SiweMessage from the package. so i created a file with these 2 lines:
var siwe = require('siwe');
SiweMessage = siwe.SiweMessage;

and then used webpack to convert that into a bundle. here's my webpack config:
const path = require('path');

module.exports = {
  entry: './my-file.js', //path to above file
  output: {
    path: path.resolve(__dirname, 'public', 'javascripts'),
    filename: 'bundle.js',
  },
};

Awesome, thanks. Closing this issue since the issue was solved.


No Documentation

https://createjs.com/docs says there is supposed to be documentation here
first line of createjs.js says
Visit http://createjs.com/ for documentation, updates and examples.
Can someone host documentation?

The links on https://createjs.com/docs will take you to the documentation for each library.
https://createjs.com/docs/easeljs
https://createjs.com/docs/tweenjs
https://createjs.com/docs/soundjs
https://createjs.com/docs/preloadjs


Update isModified() to remove sleeps in tests

Update isModified() to return a function for Eventually to retry.
Add an expected bool parameter so that the function can return a
different value if the api server failed to get the object, thus
triggering a retry to get the object and see if it's modified.
Tested with "make test" for 20+ times to make sure it's not flaky.

/assign @adrianludwin
/assign @sophieliu15

I'd rather not add a new parameter to isModified - we should always have called hasObject first if we're not certain the object doesn't exist. (If hasObject and isModified are disagreeing on whether the object exists, we need to look into why).
However, isModified should definitely return a function, so that part is good.

I'd rather not add a new parameter to isModified - we should always have called hasObject first if we're not certain the object doesn't exist. (If hasObject and isModified are disagreeing on whether the object exists, we need to look into why).
However, isModified should definitely return a function, so that part is good.

This commit is updated addressing the comments.
Here's the test log that hasObject and isModified had conflicts: https://prow.k8s.io/view/gcs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_multi-tenancy/502/pull-hnc-test/1236025480545570816. This is also the error #503 mentioned in the commit message.

I'd rather not add a new parameter to isModified - we should always have called hasObject first if we're not certain the object doesn't exist. (If hasObject and isModified are disagreeing on whether the object exists, we need to look into why).
However, isModified should definitely return a function, so that part is good.

SG. The changes are made and repushed.
Here's the test log that hasObject and isModified had conflicts: https://prow.k8s.io/view/gcs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_multi-tenancy/502/pull-hnc-test/1236025480545570816.
This is also the error #503 mentioned in the commit message.
The conflict was between line 124 and 125. Line 125 failed as mentioned in the test log.
L124 Eventually(hasObject(ctx, "Role", bazName, "foo-role")).Should(BeTrue())
L125 Eventually(isModified(ctx, bazName, "foo-role")).Should(BeFalse())
Please correct me if I misunderstood the failed test log.

@yiqigao217
Can you try removing ExpectWithOffset...
Just
return func() bool {
...
k8sClient.Get(ctx, nnm, role)
...
return ok
}

I suspect the Expect failed because we did not get the object in the first try and it will not trigger retry here.

Can you try removing ExpectWithOffset...
Just
return func() bool {
...
k8sClient.Get(ctx, nnm, role)
...
return ok
}

I suspect the Expect failed because we did not get the object in the first try and it will not trigger retry here.

No, I do think we want the Expect, because it's assumed that we've already waited for hasObject before we call isModified. Otherwise, it's unclear what it means if we return false - does it mean we've verified that the object wasn't modified, or just that the object wasn't seen yet?

Can you try removing ExpectWithOffset...
Just
return func() bool {
...
k8sClient.Get(ctx, nnm, role)
...
return ok
}

I suspect the Expect failed because we did not get the object in the first try and it will not trigger retry here.

No, I do think we want the Expect, because it's assumed that we've already waited for hasObject before we call isModified. Otherwise, it's unclear what it means if we return false - does it mean we've verified that the object wasn't modified, or just that the object wasn't seen yet?

I see. Cool! Thanks for the explanation!

@adrianludwin @sophieliu15 , PTAL. The client.Get() is now wrapped with EventuallyWithOffset() to reduce/eliminate the flaky false negative error.

@adrianludwin sounds good. Do we need a separate issue to 'keep an eye' on the issue or are we pretty confident now that we have a retry? Regardless, shouldn't hold up the merge.

/lgtm
/approve
/hold cancel


Error when running pdf x

When I attempt to run the program on a PDF I get the following output:
ImportError: cannot import name settings
Any suggestions as to how I should proceed?

I have the same problem with pdfx

Can you please post the full stack trace?

I just solved my problem by uninstall the newest version of pdfminer. It seems that pdfminer updated its API so you kinda have to let the pip decide which version to install to fit pdfx.


It it possible to get method visibiility

While building a class decorator, it's can be useful to know which methods are private and which ones are not. In particular I'm building a logging decorator and want to log all the public methods.

While it is possible to record this information, if provided, reflect-metadata does not have any insight or control over what TypeScript emits. You would be able to create a decorator that indicates privacy, but you would likely have to duplicate the privacy on the member, e.g.:
class C {
  @privacy("private") private m() {}
}

You can always file a suggestion on the https://github.com/Microsoft/TypeScript repo for this as well.

Got it, this is useful. Thank you!


Fix aggressive poller for non-retriable error

Currently poller will retry immediately with error response such as BadRequestError.
This doesn't make sense, because all the retry will get same error response until correct poller is deployed.
As a result, server frontend be DDOS by such poller.
An example to repro is: update badbinary for a domain.
This PR fix the issue.
If err is non-retriable, just hang.
With any other kinds of error, do exponential retry

Pull Request Test Coverage Report for Build a7ae770b-2d0c-4265-b8c4-64b67698f22f

12 of 16 (75.0%)  changed or added relevant lines in 3 files are covered.
6 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.05%) to 74.648%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/internal_worker_base.go
10
14
71.43%

Files with Coverage Reduction
New Missed Lines
%

internal/internal_retry.go
2
84.62%

internal/internal_task_pollers.go
4
72.78%

Totals

Change from base Build 5db965ff-5fe4-4138-8a26-265184f5b37e:
-0.05%

Covered Lines:
9284

Relevant Lines:
12437

💛  - Coveralls


bash: words: bad array subscript - Docker autocomplete script

Description: I am using docker autocomplete script for autocompletition. It gives me error when I press tab for command completition. I am using boot2docker for docker.

Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

Which version of bash do you use?
Does this error occur on all completions?

@albers

Which version of bash do you use?

bash version:
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin14)
Copyright (C) 2007 Free Software Foundation, Inc.

Does this error occur on all completions?
No, this occurs only with the docker autocomplete. I am also using docker compose autocomplete which works fine.

Thanks for the hint that the compose completion works for you. This might be helpful. Sadly, I do not have access to a mac, so I cannot reproduce.
Does the problem with docker completion occur on all subcommands? Do you also get it when completing docker  or docker -?

@albers
It happens only for the first argument, i.e. in the name of the command. Below are the examples:

While completing docker
While completing docker ima

It works fine for the below completions:

docker images  - Works fine.
docker rm  - Works fine.

Let me know if I can be of some help.

Seems that bash 3.2 doesn't like negative array indexes:
# number=()
# echo ${number[1]}

# echo ${number[-1]}
-bash: number: bad array subscript

# bash --version
GNU bash, version 3.2.39(1)-release (i486-pc-linux-gnu)

Bash 4.3. wouldn't choke here, it would just print an empty string.
I still got no idea why you get a negative index here.
@tianon can you help? Got a mac?

@gauravgoyal Can you find out what version of bash-completion you have installed?

@albers
bash-completion
Version: 1.3

I had the same problem on Mac. Bash upgrade is the easiest fix.
brew update && brew install bash
It should install bash in version 4 and docker autocomplete works without errors.

@gauravgoyal Please do not upgrade your bash yet. I'm currently trying to assemble an environment with the exact versions you use in order to reproduce the issue.

Is this bash / autocompletion constellation the default that you get when using a current macbook?

@albers Yes, this version came with current macbook.

OK, then completion should really work with it.

Sorry, I didnt get you. Should I try upgrading the bash?

@gauravgoyal Please do not upgrade. As I do not have a mac I need someone to verify my results.

I'm facing the same issue.

@gauravgoyal What's the name/version of the operating system?

@AlexZeitler Please tell me the version of

bash
bash-completion
the OS.

@albers

3.2
1.3
OS X 10.10.5

@AlexZeitler What's the exact version of bash?

@albers
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin14)
Copyright (C) 2007 Free Software Foundation, Inc.

I think all OS X versions will stay on that version, because IIRC, after 3.2, Bash switched to a different license, which was incompatible with the OS X licensing

@AlexZeitler Thanks for reporting.
@thaJeztah Wow, that's interesting!

@gauravgoyal
I found and fixed a problem. Could you please check whether this fixes the issue for you?
Please download the updated completion with
curl -L https://raw.githubusercontent.com/albers/docker/completion-log-opt-fix/contrib/completion/bash/docker > docker-completion,
load it with
. ./docker-completion
and check if completion now works as expected.

@albers Works fine here :+1:

@AlexZeitler Thanks for testing!
 Another feature that's not supported by the ancient bash version. Thanks for testing, Alex!

Oh, just for the background on the old version of bash on OS X; here's an article: Apple’s great GPL purge

Thanks @thaJeztah! Very enlightening.

@albers Thanks for fixing!

@albers https://github.com/docker/docker/issues/15246#issuecomment-131847010 , Works for me too. Thanks a lot for fixing.
docker run --log-opt -bash: compopt: command not found

Above command gives error.

I got exactly the same trouble and the patched script works for me as well. The testing results of docker run --log-opt are also aligned with @AlexZeitler

Thanks for sharing this, @everdark.
I will create a PR with this fix.

#dibs

@albers :+1:

For reference: I posted an image with bash 3.2.57 and bash-completion 1.3. to the Docker Hub: bash-completion-mac.

Closing as #15653 is merged

The fix will be included in the next release.
Until then, you can replace the completion script with the fixed version:

curl -L https://raw.githubusercontent.com/albers/docker/18381faee685c6d28dd7438a183bf7a441e8c9a1/contrib/completion/bash/docker > /usr/local/etc/bash_completion.d/docker


Fix timeline render

[x] joeferner
[x] sfeng88
[ ] mwizeman joeybrk372 jharwig

no CHANGELOG

@joeybrk372 Should we add a changelog item for this?

This broke due to recent changes in master. It hasn't been in a release yet so no changelog is necessary


Changed function signature for FirestoreManager

getItemCollection Function signature was generalized to take in a string and output the collection based on that.

lgtm


Question: will wf-recorder support  ext-image-capture-source-v1 and ext-image-copy-capture-v1?

Does wf-recorder plan on supporting  ext-image-capture-source-v1 and ext-image-copy-capture-v1 https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/124 now that it is merged?

Optimistically speaking, yes, eventually.

If someone sends a PR, I don't see why not. However I am not in a hurry, these are very new and probably not widely available yet.


Docker on Ubuntu

Script to install Docker on Ubuntu

Also can you create a new pull for every file because it becomes pretty much difficult to review. Thanks for PR :)
P.S : Try creating new branch for everytime you create a new file then push it. Then create a pull by this way it will easy for me to review and fast forward your changes.


Create tests to measure execution overhead (and savings) by lineapy

It's always good to have the ability to keep track of the overhead of lineapy so we can (1) assure our users, and (2) know when we need to start optimizing.
This is low pri for now. This would be a good onboarding item because it's pretty well isolated and involves end to end usage and instrumentation of the lineapy codebase.

We did this! https://github.com/LineaLabs/lineapy/blob/main/CONTRIBUTING.md#45-benchmarking


Update to 1.20

Updates the mod to 1.20.
Changes in build.gradle are for compatibility with Gradle 9, based on changes in the fabric-example-mod template. There are also changes in DebugHudMixin because it now uses DrawContext instead of MatrixStack.

@filips123 Would you be able to provide details on compiling the JAR file? I've been struggling to get it working, its complaining about Mixin plugins in the logs during boot, if you want those let me know. I've been compiling via Java 17 JDK & Gradle 8.1.1 as well as Java 18 JDK & Gradle 8.1.1.
Alternatively, if you are comfortable doing so, would you be able to share your compiled jar file? If not I completely understand.

Do you have that problems with client or server? I've tested both of them with gradlew runClient and gradlew runServer, and server with a normal server JAR, but haven't tested normal client yet. If you have problems with the client, I'll try to check that later this week.
I had some problems with compiling mods in the path (although probably not with this mod specifically), and most of them have been resolved after deleting .gradle and build directories in project, and .gradle inside home directory. Maybe you can try this.
I can't send compiled mod because GitHub does not allow sending JAR files in issue comments. But if you still won't be able to compile the mod, I can probably use WeTransfer or something similar...

@filips123 Wiping everything and rebuilding did the trick. Tested and working for both server and client. Thanks for the help!

Thanks a lot for the work here, I haven't had time to look at this, but should be able to get this incorporated and released soon(tm).


Update checker is incredibly intrusive.

I don't mean to sound rude but can we have the option to disable this? or just remove this feature?
it's been broken for 3-4 updates now and get's stuck in the screen, pulling up the mouse with ESC hides the window only for it to pop back up when you unpause. I would update but in the past, that's had bad repercussions updating while making mods in the SDK.
Plus there's been a few times where certain updates were broke.
What i'm getting at is if people are on an old version, they're probably on it on purpose as there's already a layer of update checker via the mod managers so this adds a layer of redundancy and jank.
I get the idea is that it SHOULD only show in the main menu, but after 3-4 updates of it not being fixed, it's better off to remove it for now imo, right?

I don't mean to sound rude but can we have the option to disable this? or just remove this feature? it's been broken for 3-4 updates now and get's stuck in the screen, pulling up the mouse with ESC hides the window only for it to pop back up when you unpause. I would update but in the past, that's had bad repercussions updating while making mods in the SDK. Plus there's been a few times where certain updates were broke. What i'm getting at is if people are on an old version, they're probably on it on purpose as there's already a layer of update checker via the mod managers so this adds a layer of redundancy and jank. I get the idea is that it SHOULD only show in the main menu, but after 3-4 updates of it not being fixed, it's better off to remove it for now imo, right?

I don't mean to sound rude but can we have the option to disable this? or just remove this feature? it's been broken for 3-4 updates now and get's stuck in the screen, pulling up the mouse with ESC hides the window only for it to pop back up when you unpause. I would update but in the past, that's had bad repercussions updating while making mods in the SDK. Plus there's been a few times where certain updates were broke. What i'm getting at is if people are on an old version, they're probably on it on purpose as there's already a layer of update checker via the mod managers so this adds a layer of redundancy and jank. I get the idea is that it SHOULD only show in the main menu, but after 3-4 updates of it not being fixed, it's better off to remove it for now imo, right?

I honestly wish i knew, only mod i have that remotely changes the menu is MoreCompany, maybe that's it?


[feature request] Add clump_from (or similar api)

This function cannot be implemented with the existing api without iterating linearly through part of the set, but is a useful feature of a ranged set.
I'm not attached to the api or the name. Some alternatives are:

A cursor api (though implementing this efficiently requires the btree_cursors feature to be stabilized)
returning a range instead of a length as the second tuple member
returning a struct instead of a tuple
fn range_of(&self, value: T) -> Option<Range<T>> and fn gap_of(&self, value: T) -> Option<Range<T>>
additionally implementing clump_to and clump_at with the same api

Update: I have now used this api for a bit and decided I don't like it, but am not sure what to replace it with. The problem is that it has the case (true, None) which should be be possible. The problem with changing the output type to Option<(bool, T::SafeLen)> is that then it does not destructure as cleanly when you first need to act on whether it was contained or not.
I'm leaning towards a custom clump type being the cleanest option here, but it significantly adds to the api surface.
pub enum Clump {
    /// An inclusive range
    pub Range(T, T),
    /// An inclusive or (on the right) unbounded range
    pub Gap(T, Option<T>),
}

Agatha,
Thanks for using range-set-blaze!
I'm traveling at it may be a couple of weeks before I can look at this in depth.
My first impression is that I like the range_of, gap_of API because they clearly return a new range, which would allow the existing range to mutate as other integers were added/deleted.
How do you imagine using this?  (The only thing I can think of is uses the ranges as the keys in map, which I don't know that I'd recommend.)
Finally, can you give me more details on what clump_to and clump_at would do?
Thanks again for your interest in range-set-blaze,
Carl
From: Agatha Zeren @.>
Sent: Sunday, October 08, 2023 12:07 AM
To: CarlKCarlK/range-set-blaze @.>
Cc: Subscribed @.***>
Subject: [CarlKCarlK/range-set-blaze] [feature request] Add clump_from (or similar api) (PR #11)
This function cannot be implemented with the existing api without iterating linearly through part of the set, but is a useful feature of a ranged set.
I'm not attached to the api or the name. Some alternatives are:

A cursor api (though implementing this efficiently requires the btree_cursors feature to be stabilized)
returning a range instead of a length as the second tuple member
returning a struct instead of a tuple
fn range_of(&self, value: T) -> Option<Range> and fn gap_of(&self, value: T) -> Option<Range>
additionally implementing clump_to and clump_at with the same api

You can view, comment on, or merge this pull request online at:
https://github.com/CarlKCarlK/range-set-blaze/pull/11
Commit Summary

71ec951https://github.com/CarlKCarlK/range-set-blaze/pull/11/commits/71ec9516ea800a2d602bd0a9626fa5657e330e03 Add clump_from

File Changes
(1 filehttps://github.com/CarlKCarlK/range-set-blaze/pull/11/files)

M src/lib.rshttps://github.com/CarlKCarlK/range-set-blaze/pull/11/files#diff-b1a35a68f14e696205874893c07fd24fdb88882b47c23cc0e0c80a30c7d53759 (47)

Patch Links:

https://github.com/CarlKCarlK/range-set-blaze/pull/11.patch
https://github.com/CarlKCarlK/range-set-blaze/pull/11.diff

Reply to this email directly, view it on GitHubhttps://github.com/CarlKCarlK/range-set-blaze/pull/11, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABR65P5LXTX4LGUJJN42NV3X6IREZAVCNFSM6AAAAAA5XMSM62VHI2DSMVQWIX3LMV43ASLTON2WKOZRHEZTCNRTGEZDKNA.
You are receiving this because you are subscribed to this thread.Message ID<EMAIL_ADDRESS>

Agatha,
How about

Just like there is currently a notion of ranges (used by ranges, ranges_len, and ranges_insert) we define a notion of Rog for range or gap.

/// Enum to represent either a range or a gap.
#[derive(Debug, PartialEq, Eq)]
pub enum Rog<T: Integer> {
    Range(RangeInclusive<T>),
    Gap(RangeInclusive<T>),
}

Just like RangeSetBlaze and BTreeSet currently have a range method (not to be confused with the ranges method) that gives an iterator of integers within a range, we define a new rog_range that returns the gaps and ranges with in a range.

Here is what use could look like:

    #[test]
    fn test_rog_functionality() {
        let a = RangeSetBlaze::from_iter([1..=6, 8..=9, 11..=15]);
        let rri = a.rog_range(10..=20);
        assert!(rri.next(), Some(Rog::Gap(10..=10)));
        assert!(rri.next(), Some(Rog::Range(11..=15)));
        assert!(rri.next(), Some(Rog::Gap(16..=20)));
        assert!(rri.next(), None);
    }

This would be available as an optional feature called 'rog-experimental`.

Later things that could be added would be rog_len, rog, (maybe) rog_insert. Also, we should eventually add ranges_range.

Let me know what you think.

Carl

Just like there is currently a notion of ranges (used by ranges, ranges_len, and ranges_insert) we define a notion of Rog for range or gap.

This is the clump-based api I proposed above. I am not a big fan of this name Rog, so here are few more colors for the bike shed but I'll go for what you want.

Rog
Clump
Part
Group
Sequence
Portion
Area
Continuous

Just like RangeSetBlaze and BTreeSet currently have a range method (not to be confused with the ranges method) that gives an iterator of integers within a range, we define a new rog_range that returns the gaps and ranges with in a range.

This makes sense, and would be sufficient for the use case.
There is one use case that is not covered by this, which is finding the Rog surrounding a given point, but I would not like to hold up this over it.

This would be available as an optional feature called 'rog-experimental`.

Are you thinking of using the pattern of not declaring it as a feature in cargo, but instead requiring --cfg range_set_blaze_unstable_rog (modulo naming) in order to make the instability viral, or just document that enabling the cargo feature transitively breaks semver?

Later things that could be added would be rog_len, rog, (maybe) rog_insert.

Makes sense.

Also, we should eventually add ranges_range.

Also seems like it follows.
I'll get started on the implementation soon.

Agatha,

This is the clump-based api I proposed above
Just so.

I’d prefer to do implementation (unless you have your heart set on it). It’s very similar to the “internal_add” code that I recently did a formal analysis ofhttps://medium.com/towards-data-science/nine-rules-to-formally-validate-rust-algorithms-with-dafny-part-2-f2a279686700. It should just take a day or two.
I ended up with “Rog” because names like “clump” don’t seem distinct from “range”. With C#, I would have spelled it out and called it “RangeOrGap” but Rust doesn’t seem to mind abbreviations as much as C#
(I think). Also, I thought that “rog_range” was easier method name to remember and understand compared to “range_or_gap_range”, etc.
Now, I’m wondering if the method should be plural “rogs_range” because the current methods are “ranges_len” “ranges”, and “ranges_insert”.

There is one use case that is not covered by this, which is finding the Rog surrounding a given point, but I would not like to hold up this over it.
Good point. How about also a method called ”rogs_get”? It would return a Rog. There could also be a “ranges_get” that returns a Optional.. (BTreeSet has a ‘get’ method that returns an Optional)

Are you thinking of using the pattern of not declaring it as a feature in cargo, but instead requiring --cfg range_set_blaze_unstable_rog (modulo naming) in order to make the instability viral, or just document that enabling the cargo feature transitively breaks semver?
I not thought about this. I’d prefer to just document it. (I may not be as sensitive semver as I should be 😊.)

Carl

From: Agatha Zeren @.>
Sent: Sunday, October 22, 2023 7:00 PM
To: CarlKCarlK/range-set-blaze @.>
Cc: Carl Kadie @.>; Comment @.>
Subject: Re: [CarlKCarlK/range-set-blaze] [feature request] Add clump_from (or similar api) (PR #11)
Just like there is currently a notion of ranges (used by ranges, ranges_len, and ranges_insert) we define a notion of Rog for range or gap.
This is the clump-based api I proposed above. I am not a big fan of this name Rog, so here are few more colors for the bike shed but I'll go for what you want.

Rog
Clump
Part
Group
Sequence
Portion
Area
Continuous

Just like RangeSetBlaze and BTreeSet currently have a range method (not to be confused with the ranges method) that gives an iterator of integers within a range, we define a new rog_range that returns the gaps and ranges with in a range.
This makes sense, and would be sufficient for the use case.
There is one use case that is not covered by this, which is finding the Rog surrounding a given point, but I would not like to hold up this over it.
This would be available as an optional feature called 'rog-experimental`.
Are you thinking of using the pattern of not declaring it as a feature in cargo, but instead requiring --cfg range_set_blaze_unstable_rog (modulo naming) in order to make the instability viral, or just document that enabling the cargo feature transitively breaks semver?
Later things that could be added would be rog_len, rog, (maybe) rog_insert.
Makes sense.
Also, we should eventually add ranges_range.
Also seems like it follows.
I'll get started on the implementation soon.
—
Reply to this email directly, view it on GitHubhttps://github.com/CarlKCarlK/range-set-blaze/pull/11#issuecomment-1774315188, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABR65PZYY5ZLAH44KKHTIDLYAXFRTAVCNFSM6AAAAAA5XMSM62VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZUGMYTKMJYHA.
You are receiving this because you commented.Message ID<EMAIL_ADDRESS>

Sounds good.

@agathazeren
I think I have something for you to try:
In your Cargo.toml:
[dependencies]
range-set-blaze = { version = "0.1.13-beta.3", features = ["rog-experimental"] }

Here is a sample main.rs (notice the #![allow(deprecated)]):
#![allow(deprecated)]
use range_set_blaze::{RangeSetBlaze, Rog};
use std::ops::Bound::Included;

fn main() {
    let mut set = RangeSetBlaze::new();
    set.insert(3);
    set.insert(5);
    set.insert(6);
    for rog in set.rogs_range((Included(4), Included(8))) {
        println!("{rog:?}");
    } // prints: Gap(4..=4)\nRange(5..=6)\nGap(7..=8)

    assert_eq!(Some(Rog::Gap(4..=4)), set.rogs_range(4..).next());

    let a = RangeSetBlaze::from_iter([1..=6, 11..=15]);
    assert_eq!(
        a.rogs_range(-5..=8).collect::<Vec<_>>(),
        vec![Rog::Gap(-5..=0), Rog::Range(1..=6), Rog::Gap(7..=8)]
    );

    let empty = RangeSetBlaze::<u8>::new();
    assert_eq!(
        empty.rogs_range(..).collect::<Vec<_>>(),
        vec![Rog::Gap(0..=255)]
    );

    // rogs_get
    let range_set_blaze = RangeSetBlaze::from([1, 2, 3]);
    assert_eq!(range_set_blaze.rogs_get(2), Rog::Range(1..=3));
    assert_eq!(range_set_blaze.rogs_get(4), Rog::Gap(4..=2_147_483_647));
}

There is documentation at https://docs.rs/range-set-blaze/0.1.13-beta.3/range_set_blaze/index.html.
Notes:

I marked the experimental stuff "deprecated" which seemed clever at the time but now is a bit annoying.
Some links in the new beta documentation point to the main documentation (especially in the first section). If that happens, back up and try to navigate other ways.
Source code is on the "oct23" branch, https://github.com/CarlKCarlK/range-set-blaze/tree/oct23
As discussed, the methods are O(ln #clumps) to start and then constant time.
You can see the tests at https://github.com/CarlKCarlK/range-set-blaze/blob/18a67267b19e776bd7509be9fd629d4540beee61/tests/integration_test.rs#L1491. Most of the tests compare the fast methods to hidden slow-but-more-obvious methods and verify the results are the same.

Let me know if this does what you need.

Carl

I've been rather busy with school and life so have not had a time to integrate this api into my project, but I am pretty sure that it should work for me based on your description.
Thanks for the work on this!
--Agatha

Excellent!
From: Agatha Zeren @.>
Sent: Monday, October 30, 2023 9:20 AM
To: CarlKCarlK/range-set-blaze @.>
Cc: Carl Kadie @.>; Comment @.>
Subject: Re: [CarlKCarlK/range-set-blaze] [feature request] Add clump_from (or similar api) (PR #11)
I've been rather busy with school and life so have not had a time to integrate this api into my project, but I am pretty sure that it should work for me based on your description.
Thanks for the work on this!
--Agatha

Reply to this email directly, view it on GitHubhttps://github.com/CarlKCarlK/range-set-blaze/pull/11#issuecomment-1785570993, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABR65PZ6UTRRAQ3FVJ5BYS3YB7HTVAVCNFSM6AAAAAA5XMSM62VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBVGU3TAOJZGM.
You are receiving this because you commented.Message ID<EMAIL_ADDRESS>

The Rog features are now on crates.io was v0.1.13. They are no longer beta but are still optional and marked "deprecated". Again, thanks for the great suggestion.


support commonjs

supported in #https://github.com/lordfriend/nya-bootstrap-select/commit/d8d5d9c9ace709d55bedeb8bf87283fccb2878dd

Only took a year and a bit..


New Issues Seen Today

All
I saw some errors pop up last night and didn't think much about it. Installed the latest macOS High Sierra beta today and now get further errors. Anyone else seeing this ? Only just started happening, was working fine before. The home bridge-nest & homebridge-smarthings piece I will also post over there but even though my config.json is still set correctly, home bridge now won't even load the devices pulled over from SmartThings directly that way:
3/12/2018, 12:23:51 PM] Loaded plugin: homebridge-legacy-plugins
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.AD2USB'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.Carwings'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.ELKM1'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.FileSensor'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.GenericRS232Device'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.HomeMatic'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.HomeMaticThermo'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.HomeMaticWindow'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.HttpGarageDoorOpener'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.HttpHygrometer'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.HttpThermometer'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.Tesla'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.X10'
[3/12/2018, 12:23:51 PM] Registering accessory 'homebridge-legacy-plugins.mpdclient'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.Domoticz'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.HomeAssistant'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.HomeSeer'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.ISY'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.LIFx'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.SmartThings'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.TelldusLive'
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-legacy-plugins.ZWayServer'
[3/12/2018, 12:23:51 PM] ---
[3/12/2018, 12:23:51 PM] ====================
[3/12/2018, 12:23:51 PM] ERROR LOADING PLUGIN homebridge-nest:
[3/12/2018, 12:23:51 PM] SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Plugin.load (/usr/local/lib/node_modules/homebridge/lib/plugin.js:65:22)
at Server. (/usr/local/lib/node_modules/homebridge/lib/server.js:132:14)
at Array.forEach (native)
[3/12/2018, 12:23:51 PM] ====================
[3/12/2018, 12:23:51 PM] Loaded plugin: homebridge-smartthings
[3/12/2018, 12:23:51 PM] Registering platform 'homebridge-smartthings.SmartThings'
[3/12/2018, 12:23:51 PM] ---
[3/12/2018, 12:23:51 PM] Loaded config.json with 0 accessories and 2 platforms.
[3/12/2018, 12:23:51 PM] ---
[3/12/2018, 12:23:51 PM] Loading 2 platforms...
/usr/local/lib/node_modules/homebridge/lib/api.js:122
throw new Error("The requested platform '" + name + "' was not registered by any plugin.");
^
Error: The requested platform 'Nest' was not registered by any plugin.
at API.platform (/usr/local/lib/node_modules/homebridge/lib/api.js:122:13)
at Server._loadPlatforms (/usr/local/lib/node_modules/homebridge/lib/server.js:284:45)
at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:80:36)
at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:40:10)
at Object. (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (module.js:410:26)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Function.Module.runMain (module.js:442:10)

For continued reference I did try updating to different node versions (thanks for the tip Chris @homebridge-nest) but unfortunately this did not resolve and I'm seeing different errors still when I move past 4.6 node. Included the outputs below in case anyone has any ideas:
From the looks of things it looks like 4.6 got the furthest albeit the new issues seen today. I have separated the sections by nodes.  Any additional thoughts ? Thanks
With 4.6 running Homebridge command  I got:
[3/12/2018, 2:42:45 PM] Loaded plugin: homebridge-legacy-plugins
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.AD2USB'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.Carwings'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.ELKM1'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.FileSensor'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.GenericRS232Device'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.HomeMatic'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.HomeMaticThermo'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.HomeMaticWindow'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.HttpGarageDoorOpener'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.HttpHygrometer'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.HttpThermometer'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.Tesla'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.X10'
[3/12/2018, 2:42:45 PM] Registering accessory 'homebridge-legacy-plugins.mpdclient'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.Domoticz'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.HomeAssistant'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.HomeSeer'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.ISY'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.LIFx'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.SmartThings'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.TelldusLive'
[3/12/2018, 2:42:45 PM] Registering platform 'homebridge-legacy-plugins.ZWayServer'
[3/12/2018, 2:42:45 PM] ---
[3/12/2018, 2:42:45 PM] ====================
[3/12/2018, 2:42:45 PM] ERROR LOADING PLUGIN homebridge-nest:
[3/12/2018, 2:42:45 PM] SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Plugin.load (/usr/local/lib/node_modules/homebridge/lib/plugin.js:65:22)
at Server. (/usr/local/lib/node_modules/homebridge/lib/server.js:132:14)
at Array.forEach (native)
[3/12/2018, 2:42:45 PM] ====================
[3/12/2018, 2:42:46 PM] Loaded plugin: homebridge-smartthings
[3/12/2018, 2:42:46 PM] Registering platform 'homebridge-smartthings.SmartThings'
[3/12/2018, 2:42:46 PM] ---
[3/12/2018, 2:42:46 PM] Loaded config.json with 0 accessories and 2 platforms.
[3/12/2018, 2:42:46 PM] ---
[3/12/2018, 2:42:46 PM] Loading 2 platforms...
/usr/local/lib/node_modules/homebridge/lib/api.js:122
throw new Error("The requested platform '" + name + "' was not registered by any plugin.");
^
Error: The requested platform 'Nest' was not registered by any plugin.
at API.platform (/usr/local/lib/node_modules/homebridge/lib/api.js:122:13)
at Server._loadPlatforms (/usr/local/lib/node_modules/homebridge/lib/server.js:284:45)
at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:80:36)
at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:40:10)
at Object. (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
With 5.7 running Homebridge commandI got:
/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/mdns/lib/dns_sd.js:35
throw ex;
^
Error: Module version mismatch. Expected 47, got 46.
at Error (native)
at Object.Module._extensions..node (module.js:440:18)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object. (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/mdns/lib/dns_sd.js:24:20)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32
With 8.1.0 I got rollbackfailoptional when installing packages and then:
When trying to install Homebridge Legacy Plugins:
sudo npm install -g homebridge-legacy-plugins
npm ERR! code 1
npm ERR! Command failed: /usr/local/git/bin/git clone -q git://github.com/kevinohara80/elkington.git /Users//.npm/_cacache/tmp/git-clone-77126ea4
npm ERR! /Users/.npm/_cacache/tmp/git-clone-77126ea4/.git: Permission denied
npm ERR!
npm ERR!      /Users/.npm/_logs/2018-03-12T20_44_24_565Z-debug.log
When trying to install Homebridge-nest:
sudo npm install -g homebridge-nest

<EMAIL_ADDRESS>removed 18 packages, updated 1 package and moved 185 packages in 6.457s

When trying to install Homebridge-smartthings:

<EMAIL_ADDRESS>added 7 packages, removed 19 packages, updated 1 package and moved 82 packages in 3.885s

Next when running Homebridge in 8.1.0 I get:
Error: The module '/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/mdns/build/Release/dns_sd_bindings.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 46. This version of Node.js requires
NODE_MODULE_VERSION 57. Please try re-compiling or re-installing
the module (for instance, using npm rebuild or npm install).
at Object.Module._extensions..node (module.js:681:18)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object. (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/node_modules/mdns/lib/dns_sd.js:24:20)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)


[CI] Use clang-tidy in CI

Problem
clang-tidy is not run in CI
I have manually runned it multiple times, adding exceptions in the checks list one by one.
I have also updated the clang-tidy-launcher.py script as it was not working for me for full builds.
Change overview

Run it for Linux/Darwin clang builds

Just in case someone is curious, the following command line runs clang-tidy for a given example only:
./scripts/examples/gn_build_example.sh examples/chip-tool out/debug/standalone is_clang=true pw_command_launcher=\"`pwd`/scripts/helpers/clang-tidy-launcher.py\"


temp fix for missing CheckpointEngine

Description
Function apply_ckpt in class AbstractAutoencoder call CheckpointEngine to load checkpoints. However, this class ("Engine") does not exist
#216 #217
Changes Made
Changed function apply_ckpt in class AbstractAutoencoder
Testing
Tested by loading https://huggingface.co/stabilityai/sdxl-vae/blob/main/sdxl_vae.safetensors checkpoint.

Thanks for your method. After getting the variable sd, how can I use it later?


openai-tool-calling

Sorry. This issue was opened by accident (github shortcuts). I don't think I have permission to delete it, but it can be ignored.

@dosu-bot, can you close this issue? I opened by accident.


Add Mk3 Stockalike Expansion from SpaceDock

This pull request was automatically generated by SpaceDock on behalf of SuicidalInsanity, to add Mk3 Stockalike Expansion to CKAN.
Mod details:
name = /mod/663/Mk3%20Stockalike%20Expansion
author = SuicidalInsanity
abstract = Adds a variety of new Mk3 parts to KSP
license = GPLv3
Homepage = http://forum.kerbalspaceprogram.com/index.php?/topic/109401-mk2mk3-expansion-dev-thread-105-m3x-108-update-11715/&page=1
description = Mk3 Expansion adds a variety of new Mk3 forfactor parts to the game in the form of fuselage segmetns, engines, and aerodynamic accessories.
[[http://imgur.com/a/8AyGC]]
Please direct questions about this pull request to SuicidalInsanity.

https://github.com/KSP-CKAN/NetKAN/pull/3949


If CNAME check fails, please give option to still add custom domain and certificate

If the CNAME check fails, Add-PSMTASTSCustomDomain displays a warning message, and does not add the custom domain or certificate.  We would like to have the option to add the custom domain and certificate regardless of whether the CNAME records exists or not as there is no dependency.  This would allow us to set up function apps for the 3 states in advance, and then people can control which policy they want to use by updating their CNAME record.

Hi @peterb-bne
It's not possible via Azure Portal

Nor with PowerShell

Kind Regards
Andres


Fix indexing on results after applying a search query

This PR fixes issue #585 where a bug was found that causes a TypeError while trying to access the results after performing a search query.
This happens because indexing of a search result (c.search(Key(test)==value)[index]) reaches the node through a different process that the basic indexing (c[index])

Next step: adding a test case in test_search.py to cover this case.

Thanks for the clear PR title and description. For extra credit, if you edit the original post the add the text "Closes #585" it will automatically close that issue when merged. To work, it has to be in the top post, not a comment.
About the test: it currently defined a pytest fixture which is (re)used by every test in the test_search.py module:
https://github.com/bluesky/tiled/blob/7c122f9307b52c24cfba4c3b7e23d2ebe720a694/tiled/_tests/test_search.py#L25-L30
If we turn that fixture into a parameterized fixture we can automatically get each test to run twice, once against a MapAdapter and once against a Catalog. Here is a sketch, leaving one aspect as an exercise for the reader. :-)
@pytest.fixture(scope="module", params=["map", "catalog"])
def client(tmpdir):
    if request.param == "map":
        app = build_app(tree)
        with Context.from_app(app) as context:
            client = from_context(context)
            yield client
    elif request.param == "catalog":
        catalog = in_memory(writable_storage=str(tmpdir))
        app = build_app(catalog)
        with Context.from_app(app) as context:
            client = from_context(context)
            # Upload arrays and metadata from tree into client so that it has matching content.
            ...
            yield client
    else:
        assert False

Pytest has a feature called getfixturevalue that helps with this pattern.  Then you can use a specialized fixtures as a parameter to a more general fixture.
It has the benefit of naming the specialization (which can be used independently) and avoids conditional/branch logic.  It's easy to add or remove the params as needed.  Also no need for an "else" branch because the test will fail with "no fixture named ..." or something like that.
@pytest.fixture
def map_client():
    app = build_app(tree)
    with Context.from_app(app) as context:
        client = from_context(context)
        yield client

@pytest.fixture
def catalog_client(tmpdir):
    catalog = in_memory(writable_storage=str(tmpdir))
    app = build_app(catalog)
    with Context.from_app(app) as context:
        client = from_context(context)
        # Upload arrays and metadata from tree into client so that it has matching content.
        ...
        yield client

@pytest.fixture(
    params=("map_client", "catalog_client"),
)
def client(request: pytest.FixtureRequest):
    yield request.getfixturevalue(request.param)


Camel-k-runtime tests is failing in Quarkus platform

Bug description
When running the integration test in quarkus-platform, we get this error
Caused by: org.apache.camel.RuntimeCamelException: java.lang.RuntimeException: java.io.FileNotFoundException: /Users/zbendhib/dev/quarkus-platform/generated-platform-project/quarkus-camel/integration-tests/camel-quarkus-integration-test-camel-k-runtime/src/test/resources/routes.xml does not exists

I enabled camel-k-runtime tests on the platform 3.5.0 upgrade PR and they passed.


Info

Add author email, license info, link to repo and docs to the page

I'm not quite sure where to put this and keep the responsive views working (without putting too much more effort into my broken Foundation Top Bar.
Perhaps I need a mobile menu or something, or just a simple About link at the bottom of the page.


SQL-207 Reactor Optimization

SQL-207 Cache active reactions to make the reactor faster.

We're not seeing any real performance gains on benches with this, so closing.


add 20th percentile for server startup timing

we've come to find that adding the 20th percentile to server startup times shows us a more realistic view of a general single user server startup duration.

this is highly non-critical, but very useful.  :)

hmm, not sure why the tests are failing...


There is no download link for AudioSet-2M in INSTALL.md

I couldn't find a download link for AudioSet-2M to build out:
/path/to/audioset/hdf5s/waveforms/
├── balanced_train.h5
├── eval.h5
├── full_unbal_bal_train_wav.h5

Hello,
I was unable to provide the full dataset as I encountered problems with Youtube copyright.
We followed a previous repository to download the data. you can find information on how to download / organize the data here:
PANN.


[Docs]: Typo in Settings Details

What is the improvement or update to the Wiki you wish to see?
-In Settings Details-
First row (name):
"Description: Used to specify the name off the collection/playlist in Plex as different then the mapping name."
Should be:
"Description: Used to specify the name of the collection/playlist in Plex as different than the mapping name."
2nd row (limit):
"Values: Number greater then 0"
Should be:
"Values: Number greater than 0"
6th row (minimum_items):
"Values: number greater then 0"
Should be:
"Values: Number greater than 0"
The "then vs than" appears on other pages as well. I.e. https://metamanager.wiki/en/latest/metadata/details/metadata.html under item_refresh_delay. Let me know if you want me to look for these errors throughout the whole wiki. Could do it later today/this week.
Does the docs page already exist? Please link to it.
https://metamanager.wiki/en/latest/metadata/details/setting.html

Added in 1.17.0


Continuous Integration

Use Travis CI to run tests automatically :-)

you can copy the config from MDBenchmark once it's done

https://github.com/bio-phys/MDBenchmark/blob/master/.travis.yml
it only tests the install now but it should get you started.

Thanks a lot!

if numba is a problem I can help you on monday.

[ ]  automatic build on Travis works

[ ] nosetests runs (for the single but crucial tests whether I get the correct PMF :-)

I'll close the issue for now. Thanks @kain88-de  and @mimischi !

@lukas-stelzl nosetest is not actively maintained anymore. All major python tools (numpy scipy etc) switched to pytest.


Disable headerHash?

Is it possible to not use the headerHash?

+1

Do you get any "jumpy" behaviour when using it?

I considered this while writing the library 2 years ago, but because # means 'go to the top of the page', so if you use hash values you should specify the headerHash otherwise it would jump a bit.
headerHash - (String) The hash for the section above the sections, must be non-empty to reliably ensure the page do not jump when updating the hash value across browsers (as # means _top)
If you have any ideas on how to mitigate this issue please comment here!


added folder_sink resources

Description of your changes
Added google_logging_folder_bucket_config, google_logging_folder_exclusion, and google_logging_folder_sink. Also added a ExtractFolderID to the common package.
Fixes #177
I have:

[X] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested
Local Kind cluster

/test-examples="examples/logging/"

/test-examples="examples/logging/folderbucketconfig.yaml,examples/logging/folderexclusion.yaml,examples/logging/foldersink.yaml"

/test-examples="examples/logging/folderbucketconfig.yaml,examples/logging/folderexclusion.yaml,examples/logging/foldersink.yaml"

/test-examples="examples/logging/folderbucketconfig.yaml,examples/logging/folderexclusion.yaml,examples/logging/foldersink.yaml"

@bradkwadsworth-mw, could you please fix lint issue:
config/logging/config.go:4: File is not `goimports`-ed with -local github.com/upbound/provider-gcp (goimports)
	"github.com/crossplane/upjet/pkg/config"
11:37:58 [FAIL]
make[1]: *** [go.lint] Error 1
make: *** [lint] Error 2


Expand empirical testing

This crate needs dramatically more tests and a greater variety of tests.

Property based testing (via proptest , most likely)
Fuzz testing ( AFL or fuzzcheck)
miri testing

As of https://github.com/auxoncorp/fixed-slice-vec/pull/9 , we have some decent prop-testing.


feat: TXE docs and usability

WIP

Docs Preview
Hey there! 👋 You can check your preview at https://668562564554532a56cb09fd--aztec-docs-dev.netlify.app

Benchmark results
Metrics with a significant change:

avm_simulation_time_ms (Token:mint_public): 517 (+827%)
avm_simulation_time_ms (Token:assert_minter_and_mint): 57.0 (-68%)
avm_simulation_time_ms (Token:transfer_public): 49.8 (+52%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,712 (-1%)
1,545 (-1%)
707 (-1%)
752 (+1%)
776

proof_construction_time_sha256_30_ms
11,747 (-2%)
3,142 (-1%)
1,407
1,428 (-1%)
1,465

proof_construction_time_sha256_100_ms
43,746 (-1%)
11,730
5,435
5,448 (+1%)
5,351

proof_construction_time_poseidon_hash_ms
78.0
34.0
34.0
56.0 (-3%)
87.0 (-1%)

proof_construction_time_poseidon_hash_30_ms
1,514 (-1%)
414 (-1%)
200
219 (-4%)
265

proof_construction_time_poseidon_hash_100_ms
5,737 (-1%)
1,560 (-1%)
725
778 (-1%)
795

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
1,412
1,412
1,412

l1_rollup_calldata_gas
9,464
9,472
9,464

l1_rollup_execution_gas
611,203
611,362
611,505

l2_block_processing_time_in_ms
772 (-1%)
1,412 (-1%)
2,715

l2_block_building_time_in_ms
21,069 (+1%)
41,837 (-2%)
82,295 (+1%)

l2_block_rollup_simulation_time_in_ms
21,069 (+1%)
41,837 (-2%)
82,294 (+1%)

l2_block_public_tx_process_time_in_ms
18,022
38,627 (-2%)
79,125 (+1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
6,998 (-2%)
9,896 (-1%)

node_database_size_in_bytes
12,197,968
16,175,184

pxe_database_size_in_bytes
16,254
26,813

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Function
time_ms
bytecode_size_in_bytes

GasToken:_increase_public_balance
68.7 (+3%)
13,790

GasToken:set_portal
15.6 (+10%)
3,339

Token:constructor
91.9 (-1%)
23,692

FPC:constructor
62.9 (-7%)
13,592

GasToken:mint_public
54.5 (+1%)
10,158

Token:mint_public
:warning: 517 (+827%)
19,034

Token:assert_minter_and_mint
:warning: 57.0 (-68%)
12,925

AuthRegistry:set_authorized
31.8 (-1%)
7,812

FPC:prepare_fee
117 (+5%)
15,062

Token:transfer_public
:warning: 49.8 (+52%)
31,218

FPC:pay_refund
140 (+4%)
25,260

Benchmarking:increment_balance
2,201 (-2%)
15,267

Token:_increase_public_balance
55.9 (-15%)
15,006

FPC:pay_refund_with_shielded_rebate
116 (-13%)
26,347

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.155 (-7%)

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.4 (-1%)
16.6 (-1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.7
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.600 (-1%)
0.511 (-1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
48.0 (-1%)
75.9 (-1%)
131 (-5%)
245
468 (-1%)

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
287
543
1,055

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.491 (-1%)
0.466
0.449 (-5%)
0.445
0.437 (-1%)

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
59.4 (-1%)
112 (-1%)
182 (-1%)
353
691 (-1%)

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
207
355
691
1,363

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.502 (-1%)
0.502 (-1%)
0.482 (-1%)
0.478
0.474 (-1%)

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
72.7
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
133
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.518
N/A
N/A
N/A
N/A

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
74,057
667,850

Transaction size based on fee payment method
| Metric |  |
| - |  |


cmd/go: module downloads contain vendor/modules.txt

go mod download -json github.com/go-delve/delve@latest
shows a Dir that contains vendor/modules.txt.
None of the other vendor files are present, just modules.txt.
This is probably a bug: we intended for modules to contain
no vendored info at all, but we had to leave files in the root
alone because they might be for a package or command
named vendor (only subdirectories are trimmed).
We should probably update the logic to trim modules.txt
as well, but only when the go.mod has a new enough Go version.
/cc @bcmills

I think this is another symptom of the known bug described in #31562.
I agree that this is something we can probably fix now that Go 1.21 and above refuse to produce module zips for Go versions that are too new.


docs: revert release v0.78.0-sumo-0

The release failed due to a MacOS signing problem. We'll retry the release after the issue is fixed.

Shouldn't we mark the release as failed instead and add v0.78.0-sumo-1 instead? Like we did with 0.70.0 in #935 ?

Shouldn't we mark the release as failed instead and add v0.78.0-sumo-1 instead? Like we did with 0.70.0 in #935 ?

I'm not sure what's the value in preserving this failed release v0.78.0-sumo-0. It wasn't really created. I would just remove the tag and create it again later.
In fact, I already removed the tag yesterday, so there is no v0.78.0-sumo-0 release.

In my opinion we should avoid messing with existing git tags as much as possible. For example, if someone pulls one of our components as a Go module using the tag, then that gets preserved in the Go proxy's package cache, leading to very confusing behaviour after we add that tag again on a different commit.
Since the tag is already gone though, we may as well proceed, so I'm approving this change.


Widget Feature

Widgets feature for the home screen launcher on Android. For example, we can select an RSS feed, add it as a widget and read it from the home screen without opening the app.

Not planned


Obtain the gene symbol from a gene identifier

How will this be implemented?
If it is not too much to ask (I am fine if it is!) I would like to suggest to standardise all mappings required by pheval outside of pheval, in a mapping commons. I can show you how to do this!

I was planning on extending the GeneIdentifierUpdator, to include a method that will retrieve the gene symbol given either the NCBI, Ensembl or HGNC id. This is because in the LIRICAL results, the results report the NCBI gene ID only - not a gene symbol and so I can't produce the pheval gene standardised results from this.
But I would be happy to use a mapping commons to standardise all mappings required by pheval outside of pheval, will take you up on your offer!

I can add in what I have for now but I do agree that your idea is the better move forward


libvirt container failed to start if no default pool created

libvirt_1 | 2016-09-30 13:07:55.480+0000: 1676: info : hostname: 52a22d89ffc8
libvirt_1 | 2016-09-30 13:07:55.480+0000: 1676: warning : virLogParseOutputs:1206 : Ignoring invalid log output setting.
libvirt_1 | libvirt: Storage Driver error : Storage pool not found: no storage pool with matching name 'default'
libvirt_1 | Cleaning up VMs
libvirt_1 | All VMs cleaned
libvirt_1 | Traceback (most recent call last):
libvirt_1 | File "/cleanup.py", line 77, in
libvirt_1 | main()
libvirt_1 | File "/cleanup.py", line 60, in main
libvirt_1 | pool = conn.storagePoolLookupByName("default")
libvirt_1 | File "/usr/lib/python2.7/dist-packages/libvirt.py", line 4575, in storagePoolLookupByName
libvirt_1 | if ret is None:raise libvirtError('virStoragePoolLookupByName() failed', conn=self)
libvirt_1 | libvirt.libvirtError: Storage pool not found: no storage pool with matching name 'default'

quick workaround change cleanup.py
try:
pool = conn.storagePoolLookupByName("default")
volumes = pool.listAllVolumes()
except libvirt.libvirtError:
print("Failed fault lookup")
volumes = set()
docker-compose build && docker-compose up

There is another bug, because of which cleanup.py is spawning even if there is no env variable set to spawn it. Look at https://github.com/Mirantis/virtlet/blob/6e942a8756406b26a5621dea77048e54958dea16/contrib/docker/libvirt/start.sh#L17
This should be replaced with something like [ -z "$LIBVIRT_CLEANUP" ], so patching this in cleanup.py is imo incorrect.


QuickSink

Create a QuickSink with put/remove/error/eof/reset as function properties to allow inline sinks that still extend AbstractSink

This can be optimized with a pseudo-flyweight style like MDAO's index and tree nodes. A singleton-like QuickSink could proto POSJO children to itself, that contain the function properties. Only try this if performance might be a problem.


Robert Longson: Watch sapphirehairclinic.com

Robert Longson requests the watch of the watch_keyword sapphirehairclinic\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

sapphirehairclinic\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Cody Gray in Charcoal HQ


paper-card missing

please add paper-card element

Yes please add paper-card element

@mohit25 @matas-zanevicius This element hasn't yet been added. I want to use this element as well. On the paper-card page, there is a Bower install command, have any of you tried using this with the bower_rails gem?

hmm - strange!
when I add gem polymer-elements-rails I get version 1.0.1 - w/o the paper-card (but on GitHub it's version 1.0.1 and paper-card is present) ?

Figured it out ;)
just add gem 'polymer-rails' gem 'polymer-elements-rails', github: 'alchaplinsky/polymer-elements-rails' instead of - and Bundle is smart enough to pull latest from GitHub


Update README.md

add workable demo link

Thanks for your contribution. I'm on my family vacation now. Will look at this when I come back.
Best,
Daiwei
On Jun 7, 2017, 9:34 PM +0800, Sergey<EMAIL_ADDRESS>wrote:

add workable demo link
You can view, comment on, or merge this pull request online at:
  https://github.com/d6u/react-container-query/pull/59
Commit Summary
• Update README.md
File Changes
• M README.md (2)
Patch Links:
• https://github.com/d6u/react-container-query/pull/59.patch
• https://github.com/d6u/react-container-query/pull/59.diff
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Thanks @serGlazkov , I used your codepen and fix the demo.