enhancement: allow configuring contracts/ directory

Overview
Right now, a project directory can be configured. The contracts/ directory is assumed to be <project-dir>/contracts.
We should allow configuring the contracts directory but defaulting to <project-dir>/contracts.
Specification

Add contracts_folder property to ConfigManager
Replace all usages of a path ending in contracts/ off the project, (ProjectManager, CompilerManager, etc.)

Dependencies
Include links to any open issues that must be resolved before this feature can be implemented.

Wondering if we should allow a list:
contracts:
- src/contracts
- src/other-contracts-dir
- ~/global-contracts

Wondering if we should allow a list:
contracts:
- src/contracts
- src/other-contracts-dir
- ~/global-contracts

That's interesting. I haven't seen a project with more than one contracts directory though, although I suppose foundry repos typically use git submodules to link to ds-test and other dependencies


WIP: Polymorphic "this" for static members

This PR is a work in progress to solicit feedback on the proposed solution, please do not merge or use this branch.
This commit attempts to make progress towards #5863. It is not a comprehensive solution, but it does provide a way for a library writer to 'opt-in' and provide an interface with a static polymorphic this.
One of the difficulties with #5863, is how to make it clear which this the this type refers to, and the issue of the static and instance type mixing in the same declaration block.
This sidesteps those issues, by only providing a static polymorphic this when using an interface in the extends position. This makes the meaning of this very clear and it's explicit which side the this type falls on; there is no mixing.
i.e:
interface InstType {
  member: this;    // instance this
}

interface CtorType {
  new(): InstType;
  poly_prop: this; // static this
}

declare var X: CtorType;
class Derived extends X {
  ex1() {}
  static ex2() {}
}

const inst = new Derived();
inst.member.ex1();         // instance polymorphic
Derived.poly_prop.ex2();   // static polymorphic

WIP
The PR is not finished. There are a few situations that need to be resolved and tests need to be written if it's decided that this is an acceptable solution.

(Potentially) fixes #5863

Has this experiment been abandoned, or has there been more progress elsewhere?

This experiment is pretty old, so I'm going to close it to reduce the number of open PRs.


is it possible to flush all batched events at once?

I know there is
mixpanel.track('my event', {foo: 'bar'}, { 'send_immediately': true });

Similarly, I know I can edit the config - but that only effects following events, plus I still want batching.
mixpanel.set_config({ batch_requests: false });
// or
mixpanel.set_config({ batch_flush_interval_ms: 0 });

Use Case: I have a large batch_flush_interval_ms interval and want to flush everything before navigation to a new external URL, but I don't want to give up my batching and use send_immediately every time I call mixpanel.track
I have tried editing the flushAfter property of the events queued inside localStorage with no luck.

I don't think we currently have a publicly-exposed method to flush everything. The SDK does already attempt to flush every time the page/tab loses visibility: https://github.com/mixpanel/mixpanel-js/blob/34b4396de534e4f5cf4b5cac80afd14a8322ce1f/src/mixpanel-core.js#L308-L334 but this can never be totally reliable.
If you just want something that works quickly, calling mixpanel.start_batch_senders() will cause them to flush immediately even if it's already running (but this is an implementation detail).


JUnit report generated incorrectly

Repository:
https://github.com/rabestro/exercism-azure-ijhttp
Report by httpYac
https://github.com/rabestro/exercism-azure-ijhttp/actions/runs/8710306329/job/23891955415

Report by JetBrains HTTP Client
https://github.com/rabestro/exercism-azure-ijhttp/actions/runs/8710194524/job/23891565627

I actually relied on the scheme on this page. Unfortunately, it seems that testsuite is not allowed to be inside testsuite as it is with junit5 itself or jest. Small detail but the format is broken. I have already found 4 different variants of this xsd. after a search.  I will now build the most basic xml valid to all of the xsd.


Handle Recursive inheritance and model circle reference

Description
Fix https://github.com/Azure/autorest.csharp/issues/4016
Fix https://github.com/Azure/autorest.csharp/issues/3974

In tspCodeModel.json, the {modelName}.{DerivedModels} may have more than one occurrence, so when AddReference, check existence of the reference, if does not exist, add it.
Add visistedModel to skip visisted model in FindMatchesRecursively() to avoid infinite loop when there is a circle reference in the model.

Checklist
To ensure a quick review and merge, please ensure:

[ ] The PR has a understandable title and description explaining the why and what.
[ ] The PR is opened in draft if not ready for review yet.

If opened in draft, please allocate sufficient time (24 hours) after moving out of draft for review

[ ] The branch is recent enough to not have merge conflicts upon creation.

Ready to Land?

[ ] Build is completely green

Submissions with test failures require tracking issue and approval of a CODEOWNER

[ ] At least one +1 review by a CODEOWNER
[ ] All -1 reviews are confirmed resolved by the reviewer

Override/Marking reviews stale must be discussed with CODEOWNERS first

Do we have tests?

Do we have tests?

hello @pshao25 we will have test in latest cadl-ranch. After upgraded cadl-ranch, I will onboard the test.

Do we have tests?

hello @pshao25 we will have test in latest cadl-ranch. After upgraded cadl-ranch, I will onboard the test.

I suggest we onboard the test case now, and when the cadl ranch case is onboarded we could have another PR to remove it.


New feature in restaurant site

Describe the Feature you want to end
I want to add the feature of table booking by giving more details about the price of the table and if any decoration they want for the same.
i need to change the UI for the site which make it more interactive .
Expected behavior
it will make site more interactive.
This will help the user if he is planning for any party, some meeting, dates etc. This will give him the comfort to pre decide the theme and various other arrangements.
Additional context (optional )
I would be happy if I got chance to contribute on this project @pranjay-poddar and show my efficient skills of HTML CSS and JAVASCRIPT. please assign me this ...I have worked on such project you can check on my GitHub so i think i will definitely make this issue.

Describe the Feature you want to end I want to add the feature of table booking by giving more details about the price of the table and if any decoration they want for the same.
i need to change the UI for the site which make it more interactive .
Expected behavior it will make site more interactive. This will help the user if he is planning for any party, some meeting, dates etc. This will give him the comfort to pre decide the theme and various other arrangements.
Additional context (optional ) I would be happy if I got chance to contribute on this project @pranjay-poddar and show my efficient skills of HTML CSS and JAVASCRIPT. please assign me this ...I have worked on such project you can check on my GitHub so i think i will definitely make this issue.

please assign me  this for gssoc 23 !!!

Hey @pranjay-poddar , using HTML CSS and JS i want to contribute to this issue. I have made different sections for menu display, for booking , for billing. with a beautiful homepage.

@MohitGupta121  Hey why this issue has been closed???


Can I use SyncedStore solely between tabs in one browser? (No signaling servers)

It seems like it's possible to use SyncedStore in multiple tabs in a browser, just locally. Just BroadcastChannel and y-indexeddb, no signaling servers, and I don't think it would need any WebRTC activity.
I can share some code I've tried but first I just wanted to ask the question... Is there an official way to use it purely locally?

(I did try it and I couldn't get it working. So I'm wondering if there's just a known-good way, rather than the trial-and-error I've been doing.)

Hi @hangtwenty.
Broadcastchannel (cross tabs) and WebRTC syncing can both be managed using y-webrtc.
I think it should be possible to disable the webrtc part in y-webrtc, and use only the broadcastchannel. Could you try to pass an empty array as signaling servers? e.g.:
new WebrtcProvider("roomname", doc, { signaling: [] })

(see https://github.com/yjs/y-webrtc/blob/c059b8679e72e4a2cd59189b022a25edbd07cbeb/src/y-webrtc.js#L545)

@YousefED I tried something similar:
const doc = getYjsValue(store);
export const webrtcProvider = new WebrtcProvider("syncedstore-todos", doc as any, {
	maxConns: Number.POSITIVE_INFINITY,
	filterBcConns: false,
	signaling: [],
});
// @ts-ignore
const provider = new IndexeddbPersistence("syncedstore-todos", doc as any);

From the y-webrtc README it seemed like this part is needed to fully disable WebRTC connections:
filterBcConns: false

But I was experiencing inconsistent behavior and some errors.
I'll try another troubleshooting session tonight, and report back.

I can't reproduce the issue now, for some reason. But it's working, so that's great!

Glad to hear!


Keyboard shortcuts to switch between Workspaces

Is your feature request related to a problem? Please describe.
Having created workspaces for various tracks such as Work, Personal etc, I would like to be able to switch between them using keyboard shortcuts.
I can press CMD+D to open the Workspace drawer but need to use my mouse/trackpad to switch between the available options.
Describe the solution you'd like
A second level of shortcuts to switch between Workspaces like we have to switch between Services. They could be something like CMD+Shift+[0-9]
Describe alternatives you've considered
Perhaps the same shortcuts used for switching services can be utilised. When the Workspace Drawer is open, pressing CMD+[0-9] to activate the corresponding workspace

I would really love to see this implemented as well. I think implementing the same shortcuts as for the tabs completely makes sense and will be very useful for keyboard power users.

I was looking around the code to add this shortcut myself and found that they already exist:
https://github.com/meetfranz/franz/blob/master/src/lib/Menu.js#L920
Press:
CTRL + Alt + [0-9] on Windows
CMD + Option + [0-9] on Mac
To switch between workspaces. Index 0 is set for All Services. The workspace drawer does not need to be open for this to work.


module 'finplot' has no attribute 'add_order'

fixed in today update.
Sorry for the inconvenience.
Still a lot of work to do

The problem occured again.Did you fix the bug?

fixed in today update. Sorry for the inconvenience. Still a lot of work to do

hello, i am waiting you for updating the project.

You have to checkout the "finplot" from my repositories, not the official one.
I have added the add_order function in it


Fix regex error by escaping special characters

https://rockabox.tpondemand.com/entity/11026

Looks Good as a fix to the original regex issue.
Not positive of the advantage of RegEx here over Angular $filter('filtername'); https://docs.angularjs.org/guide/filter

Hey @jaylett @gregbenner , have used another method to solve this bug. Do review.

I like it, more concise and elegant.


migrate analyzer to nullsafety

I am upgrading my package (Kiwi) vanlooverenkoen/kiwi#51
But it seems that analyzer is not yet migrated to support nullsafety. Is there a timeline on when this could be added?

Optimistically speaking, this will be completed by the end of March 2021.

Is that before or after the stable release of nullsafety? Or is that not clear yet?

Version 1.0.0 was published.


[Question] Could this plugin support time in a day?

Hello! Awesome plugin!
I'm wondering if I can use it to show my day's schedule – so, is there a way to set a "time" for an item?
For example, 3 o'clock today ~ 5 o'clock today?
If so, in what format?
I don't see the use case in the docs, and after trying several scenarios, it doesn't seem to be recognized either.

Thanks for the feedback!
Yes, you can set hours, even down to the second if you like, using YYYY-MM-DDThh:mm syntax. Note that hours use 24-hr military time
For example:
Today 3~5pm
- [2024-11-29T15~2024-11-29T17] Research
You can designate minutes too
Today 11am-12:30pm
- [2024-11-29T11~2024-11-29T12:30] Research
See more granular examples [here](- [2024-11-29T15~2024-11-29T17] Research)
Lastly, you can generate timelines from natural language using "Generate with AI" if you provide an OpenAI API key in the settings. This might be faster
In an upcoming version I will launch a way to insert items as snippets so there won't be a need to reference documentation

Thanks for the feedback!
Yes, you can set hours, even down to the second if you like, using YYYY-MM-DDThh:mm syntax. Note that hours use 24-hr military time
For example: Today 3~5pm - [2024-11-29T15~2024-11-29T17] Research
You can designate minutes too:
Today 11am-12:30pm - [2024-11-29T11~2024-11-29T12:30] Research
See more granular examples here
Lastly, you can generate timelines from natural language using "Generate with AI" if you provide an OpenAI API key in the settings. This might be faster In an upcoming version I will launch a way to insert items as snippets so there won't be a need to reference documentation

WOW Amazing!! Thank you!!
I used to use Mermaid gantt to do the Daily Schedule review, but - it can not interact, and it's kind of hard to read the content.

(I'll record my timestamp with specific format, and use Dataview to collect the information, then generate the gantt and render it)
But now this plugin can totally solve those problems! It saved my day, thank you so much!!

Is there any way to make this timeline wider - with more width to show more events?

@moyf, you should be able to zoom out, using mouse or touch-pad scroll down when you hover on a timeline, as shown in the demo below. Th eheight of the timeline will automatically adjust based on the number of items in view.  Let me know if it doesn't work

This is interesting feedback, I can consider adding a Zoom control in the timeline for people who are not aware or do not have mousescroll

@Moyf, you should be able to zoom out, using mouse or touch-pad scroll down when you hover on a timeline, as shown in the demo below. The height of the timeline will automatically adjust based on the number of items in view.
You can then "refit" all items into view by clicking the "refit" button in lower right. Let me know if it doesn't work for you
This is interesting feedback, I can consider adding a Zoom control in the timeline for people who are not aware or do not have mouse scroll

Thanks for replying!
Yes, I know that we can use mouse wheel to zoom in&out - Actually that's one of the features that make me love this plugin :P
But if the event has specific time duration, then the text can be truncated:

The content:
```chronos
- [2024-11-30T12:36~2024-11-30T12:56] A Event with details
- [2024-11-30T15:36~2024-11-30T15:46] That's a long text
- [2024-11-30T13:36] That's a long text
```

So I'm thinking if the whole container could be wider, then I can see more events with a higher Zoom state

Oh wait a minut, I successed!

/* Chronos Timeline */
.cm-preview-code-block:has(.block-language-chronos),
.cm-preview-code-block .block-language-chronos,
.chronos-timeline-container {
    /* display: none; */
    width: calc(var(--file-line-width) + 20em);
    /* margin-left: -4em !important */
}

.markdown-source-view.mod-cm6 .cm-content .cm-preview-code-block:has(.block-language-chronos) {
    /* display: none; */
    /* width: calc(var(--file-line-width) + 20em); */
    margin-left: -10em !important;
}

This trick could be applied to timeline, haha ! Problem solved! 🥳

@Moyf , that is intention behavior for the events with start and end time. Note that you can hover on a truncated element and it will show the full name, or zoom in

Hi, nice plugin! I know this is closed but it's merely a suggestion (as I found it unsuited for my use case) and this issue is quite relevant.
Is it possible to add "mode" for chronos timeline, typically useful in periodical notes (daily/weekly/monthly journal)? It makes life much easier.
For example, a snippet from daily journal using current syntax:
```chronos
- [2024-12-03T08:35~2024-12-03T08:50] Lie-in
- [2024-12-03T08:55] Get-up 🛌
- [2024-12-03T09:10~2024-12-03T09:15] Breakfast 🍞
- [2024-12-03T09:15~2024-12-03T11:20] RSS & Update | gh & xxx
- [2024-12-03T11:30~2024-12-03T12:00] Chronos Timeline

Here as everything happens in the same day, the syntax is quite redundant. How about introducing a "mode" for this scenario (concept from syntax highlighter such as chroma in golang or prism.js, the one used in Obsidian):
```chronos {mode=day}
- [2024-12-03T08:35~08:50] Lie-in | Example A
- [08:35~08:50] Lie-in | Example B
- [T08:55] Get-up 🛌 | Do we really need a `T` in day mode?
- [09:10~09:15] Breakfast 🍞 | How about this?
- [09:15~11:20] RSS & Update
- [11:30~12:00] Chronos Timeline

By specifying day mode, the syntax becomes much simpler and more evident (although I still prefer a vertical timeline). Similarly, {mode=month} would be useful in weekly/monthly note by having a more natural expression. I'm not sure if the exact syntax is acceptable for an Obsidian plugin, but it's only a reference and can surely be changed for whatever appropriate.


Daemon is stopping after a connexion timeout with rss

Expected behaviour:
I have an instance of flexget running in daemon mode and reading a rss flux every 10 min.
Daemon should continu running even after rss timeout.
Actual behaviour:
If for some reason the rss flux isn't available once and the connection timeout is reached the daemon is stopped immediately.
Steps to reproduce:

Step 1: Have a config file using rss plugin
Step 2: Run flexget as daemon with command 'flexget daemon start -d'
Step 3: If rss isn't available daemon is stopped

Config:
schedules:
  - tasks: '*'
    interval:
      minutes: 10

tasks:
  Téléchargement auto torrents:

    rss: https://xxx.yyy/rss
    accept_all: yes

    filesystem:
      path:
        -  /home/partage/Telechargement/torrents/
      mask: '*.torrent'

    transmission:
      host: localhost
      port: 9091
      username: ***
      password: ***
      addpaused: no

    notify:
      entries:
        title: "{{title}}" #Nouveau torrent en téléchargement
        what: accepted
        via:
          - pushbullet:
              api_key: ***

      abort:
        via:
          - pushbullet:
              api_key: ***

Log:
2017-03-10 13:01 CRITICAL plugin        Téléchargement auto torrents Unable to download the RSS for task Téléchargement auto torrents (https://xxx.yyy: HTTPSConnectionPool(host='xxx.yyy', port=443): Read timed out. (read timeout=60)
2017-03-10 13:01 WARNING  task          Téléchargement auto torrents Aborting task (plugin: rss)
2017-03-10 13:03 ERROR    manager                       There does not appear to be a daemon running.
2017-03-10 13:04 INFO     manager                       Daemonizing...
2017-03-10 13:04 INFO     manager                       Daemonize complete. New PID: 15404
2017-03-10 13:04 INFO     scheduler                     Starting scheduler
2017-03-10 13:04 INFO     manager                       Daemon running. (PID: 15404)
2017-03-10 13:31 CRITICAL plugin        Téléchargement auto torrents Unable to download the RSS for task Téléchargement auto torrents (https://xxx.yyy: HTTPSConnectionPool(host='xxx.yyy', port=443): Read timed out. (read timeout=60)
2017-03-10 13:31 WARNING  task          Téléchargement auto torrents Aborting task (plugin: rss)
2017-03-10 13:32 ERROR    manager                       There does not appear to be a daemon running.
2017-03-10 13:32 INFO     manager                       Daemonizing...
2017-03-10 13:32 INFO     manager                       Daemonize complete. New PID: 17005
2017-03-10 13:32 INFO     scheduler                     Starting scheduler
2017-03-10 13:33 INFO     manager                       Daemon running. (PID: 17005)
2017-03-10 14:04 INFO     manager                       Daemon running. (PID: 17005)
2017-03-10 14:05 ERROR    manager                       Daemon already running for this config.
2017-03-10 15:00 ERROR    manager                       Daemon already running for this config.
2017-03-10 16:00 ERROR    manager                       Daemon already running for this config.
2017-03-10 17:00 ERROR    manager                       Daemon already running for this config.
2017-03-10 17:41 CRITICAL plugin        Téléchargement auto torrents Unable to download the RSS for task Téléchargement auto torrents (https://xxx.yyy: HTTPSConnectionPool(host='xxx.yyy', port=443): Read timed out. (read timeout=60)
2017-03-10 17:41 WARNING  task          Téléchargement auto torrents Aborting task (plugin: rss)
2017-03-10 18:00 INFO     manager                       Daemonizing...
2017-03-10 18:00 INFO     manager                       Daemonize complete. New PID: 32686
2017-03-10 18:00 INFO     scheduler                     Starting scheduler
2017-03-10 19:00 ERROR    manager                       Daemon already running for this config.
2017-03-10 19:01 INFO     manager                       Daemon running. (PID: 32686)
2017-03-10 20:00 ERROR    manager                       Daemon already running for this config.
2017-03-10 21:00 ERROR    manager                       Daemon already running for this config.
2017-03-10 22:00 ERROR    manager                       Daemon already running for this config.
2017-03-10 23:00 ERROR    manager                       Daemon already running for this config.
2017-03-11 00:00 ERROR    manager                       Daemon already running for this config.
2017-03-11 01:00 ERROR    manager                       Daemon already running for this config.

Additional information:
What you can see in log it's the rss connection timed out, then the task failing so I receive alert on pushbullet. Then I ask daemon status via ssh and get "ERROR There does not appear to be a daemon running".
The error "Daemon already running for this config" is here because I created a cronjob every hours to restart daemon in case of failure.

Flexget Version: 2.10.11
Python Version: 2.7.12
Installation method: pip
OS and version: Ubuntu 16.04.2
Link to crash log:

Please start the daemon with --loglevel debug so we can see more information. Next time it shuts down, post the log from around that time, please.


.ifPresent() returns Unit in Kotlin

Hey I tried to use the reverse country code in Kotlin
and found out that the function ifPresent shown in the Read me only returns Kotlin.Unit
but with reverseGeocoder.getCountry(lat,lon).get() worked totaly fine.
is there a reason? Did I understand something wrong?

I've never used Kotlin before, but in Java Optional.ifPresent() is void method, i.e. a method that doesn't return anything. It seems reasonable that the method might return Kotlin.Unit when called from Kotlin if Kotlin is a language that always requires methods to return something.
ifPresent() takes a Consumer<Country> as an argument (that's what the country -> {...} code is in the example). My guess is that in Kotlin you should pass in a function with a signature like Country -> Unit as the argument. The function will be invoked only if the Country is present.


[RFE] Updating the Rancher server helm chart publishing to publish into the new repo for builds

This should be as simple as updating this area: https://github.com/rancher/rancher/blob/release/v2.6/.drone.yml#L1218-L1251
Though, do we know if there will be latest/stable/alpha repos ?
SURE-4939
blocked by SURE-4938

removing the dev-validate label, we do need QA to validate the issue.

using rancher v2.7.0-rc3, I was able to use both helm and docker to install rancher from a non-docker registry. there are unrelated problems that I encountered that will not block this ticket, but will block others:

branding was missing from rancher when using this image
many images were missing, meaning that rancher was not very usable when only using the non-docker registry

The following were validated as part of this ticket:

rancher has the non-docker registry set as default for system-default-registry when deployed from the non-docker image/helm repo


Update AdaptVQE to new, stateless VQE

Summary
Fix the Adapt VQE after Qiskit/qiskit-terra#6418 is merged.
Note: This can only be merged after the above PR in Terra is merged.
Details and comments
AdaptVQE previously relied on an internal private method which has been deleted without deprecation (since it was private).

Since this change requires what is in Terra main, i,e, version 0.18.0 when its released, I think we should update the requirements.txt file to change this qiskit-terra>=0.17.0 to qiskit-terra>=0.18.0. This way when we backport it, it will have the right requirements on Terra.

The CI will continue to fail until this is merged because 5 hours ago the related PR in Terra got merged :+1:

@Cryoris This is failing with some issue in vqe from the BopesSampler tutorial. Can you please take a look.

The error in the tutorial is due to a Terra decorator deprecate_function that is not wrapping properties correctly and returns a decorator wrapper instead of the property. If I remove the deprecate_decorator from:
@deprecate_function(
        """
The VQE.optimal_params property is deprecated as of Qiskit Terra 0.18.0
and will be removed no sooner than 3 months after the releasedate.
This information is part of the returned result object and can be
queried as VQEResult.optimal_point."""
    )
    @property
    def optimal_params(self) -> np.ndarray:

It works. If I keep the decorator, instead of returning an array, the property returns:
<bound method deprecate_function.<locals>.decorator.<locals>.wrapper of <qiskit.algorithms.minimum_eigen_solvers.vqe.VQE object at 0x7ff8a2980b50>>

The Terra properties that use this decorator should revert to issue the warnings themselves.

I guess the BopesSampler should be fixed to avoid the deprecated method/property that it tripped over as described above. Since this is holding up CI maybe thats best done via another issue/PR.

@woodsp-ibm what issue did you see? The CI is passing, right?

Ah I see. Because this fix is merged now: https://github.com/Qiskit/qiskit-terra/pull/6599

I think we might still need to add the requirement Terra >= 0.18 before merging 🙂

I think we might still need to add the requirement Terra >= 0.18 before merging

This already happened or do we need another requirement? See: https://github.com/Qiskit/qiskit-nature/blob/main/requirements.txt

I had also asked for the requirement to be updated in another PR which had a dependence on newer Terra see above comment https://github.com/Qiskit/qiskit-nature/pull/222#issuecomment-854017382.  Since we need to backport this as a bug fix release for the upcoming Terra to assure nature still works with the latest Terra we will have to remember to change the requirements.txt file on the stable backport for the release - @manoelmarques fyi


Chosen Tag is not displayed correctly when adding new tag in request tag task.

Affected module
It impacts the UI on Openmetadata
Describe the bug
When we request a tag without suggesting a specific tag, a new task is created and assigned.
Then the assignee can go to the task and add tag to the requested column, however the bar does not display the tag name on it, the problem only comes from displaying tag name, because when we submit the task, new tag is still added to the requested column.
To Reproduce
Request tag without suggesting tag

Assignee chooses to add tag through the task

Then in this bar, even the tag is chosen, it does not display the chosen tag

However, the chosen tag is still added to the column as expected without being displayed.

Expected behavior
I expect that when we choose the tag, the chosen tag will be displayed correctly.
Version:

OpenMetadata version: 1.4.4
OpenMetadata Ingestion package version: <IP_ADDRESS>

cc @harshach @ayush-shah


Have repo with standalone samples that don't use project references

Right now all the samples are in this repo, which requires that you build the entire project from source. This can be a bit slow, and shouldn't be required for most people.
Instead, we should look at having a separate repo that has copies of the samples here, but with all the references changed from project references to be NuGet package references.
This process should be automated (probably not too hard?) and done once per release.

This came from a chat with @lachlanwgordon .

A couple of thoughts on this:

It could perhaps live in this one repo, if this makes it easier for automation and to manage.
In the shared repo approach files could maybe reused between test code and sample code with some clever .csproh compile constants and conditionals, but maybe this would get weird with branches and release cycles, and undo the intention of simplifying things.
Can community members contribute to samples without being able to build the main repo? Or is it a one way, generated process where samples can only come from the main repo.

I was thinking to keep it out of this repo so it would be more straight-forward to clone & build or even just download and build. It would keep the "distraction" of the product code out of the samples.
I think tests in this repo could very well use the samples here, but maybe tests should always have their own test-specific code? That way samples could be updated whenever and not worry about breaking tests.
As for contributions to samples, yeah I think the samples repo would be effectively read-only, and contributions would have to go to this repo. Which, yeah, would unfortunately mean that you'd have to be able to build this repo to test it out.
Nothing about this is ideal 😄 But maybe it's better than what we have now?


fix(dashmate): use host user inside dashmate-helper container

Issue being fixed or feature implemented

dashmate-helper container is being run as root user, and when you try to execute commands from inside the container, it re-renders the configuration with the root:root owner. This PR passes host user and group ids for dashmate-helper container
What was done?

Made dashmate grab the current executing user uid and gid and pass it to the docker compose, allowing to execute docker commands inside container without any issues
How Has This Been Tested?

On the devnet via dash-network-deploy tool
Breaking Changes

No
Checklist:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added or updated relevant unit/integration/functional/e2e tests
[x] I have made corresponding changes to the documentation

For repository code-owners and collaborators only

[x] I have assigned this pull request to a milestone

@pshenmic PR title should represent the problem what you fixing, but not how you fixing. It's important to make changelog's "Bugfixes" section understandable.


Investigate handshaking performance

Compare beast::detail::sha1 vs: https://github.com/alexhultman/libwshandshake

We can worry about this if users complain that they can't handshake fast enough. Until then, I'm closing it.


Health Check todo

1.Health Check show pattern when wrong
2.Pattern Can be viewed On 3 Incorrect attempt by entering passcode

Blank grid was generating in last release

Resolved,
https://github.com/bithyve/bitcointribe/assets/61345820/d05272f7-9481-47f7-8eab-922248fade3f

Verified this issue on Tribe app v 2.2.2(594)


Update master from develop

:white_check_mark: Build https://ci.appveyor.com/project/oxidemod/oxide/build/2.0.3101-pehpiwdu|#2.0.3101-pehpiwdu (https://github.com/OxideMod/Oxide/commit/b3c35125b6|b3c35125b6) by @lukespragg completed


Large files removed from the repository

Due to storage and bandwidth limitations on GitHub we have to remove all large files. So the BECAS meshes won't be available until we decide how and where to host these files.

BECAS meshes can now be found here:
https://gitlab.windenergy.dtu.dk/iea-22-280-rwt/iea-22-280-rwt-data
Link will also be added to the README.

I guess this is a resolved issue then?!


fix: update docs

[x] I have read and agreed to the RethinkDB Contributor License Agreement http://rethinkdb.com/community/cla/

Description
Hi,
There were some extra quotation marks at the end of the commands that make shell to expect some more inputs. Now they are gone and everything is fine.
Thanks in advance!

I discovered the same issue, and was glad to see a pull request open for it.

Nice! It's good to know that I'm not the only one. I hope they'll except this fix and other people won't see any problem in the future.


Delegation after impersonation

Hello,
I have been using the NSSPI lib succesfully to exchange keys invoking server's AcceptToken() until SspiCommon.Status.Ok state reached.
Upon that, I invoke ImpersonateClient() and try to delgate this security context further via WCF (httpTransport.AuthenticationScheme = AuthenticationSchemes.Negotiate;)
DC/Kerberos are all set up, all users have been granted domain Admin priviledges, all users have SPNs so that delegation can be enabled, all computers have delegations enabled.
However, when I invoke WindowsIdentity.GetCurrent().ImpersonationLevel from within Impersonation block I get "Identification" only.
Both server  and client context required:
ContextAttrib.MutualAuth |
ContextAttrib.AcceptIdentify |
ContextAttrib.Confidentiality |
ContextAttrib.ReplayDetect |
ContextAttrib.SequenceDetect |
ContextAttrib.Delegate,
Any ideas? Can this work at all? Do I have to dive into SPN management to get this running?
Thanks
Vladimir

I am now comparing final context-attribs against required in ServerContext.AcceptToken() upon SecurityStatus.OK and they differ.
I am short on MutualAuth, Confidiality and Delegate.
I am also unable to wireshark any Kerberos activity during ServerContext.AcceptToken() and ClientContext.Init() ping-pong.
Ideas?

Ok, ClientContext has to be initialized with a valid SPN from DC, now at least TGS-REQ/TGS-REPs fly around, even though still no delegation wish noted in flags section of a TGS-REQ.


upgrade http protocol to https.

Motivation:
Explain the context, and why you're making that change.
To make others understand what is the problem you're trying to solve.
Modification:
Describe the idea and modifications you've done.
Result:
Fixes #.
If there is no issue then describe the changes introduced by this PR.

refer: https://github.com/sofastack/sofa-rpc/pull/190/commits/ca47c4c18ed45a83764f8e511d245dbc4214d472

Codecov Report

Merging #700 into master will decrease coverage by 0.09%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             master     #700     +/-   ##
===========================================
- Coverage     72.31%   72.21%   -0.1%
  Complexity     1074     1074
===========================================
  Files           364      364
  Lines         15165    15165
  Branches       2427     2427
===========================================
- Hits          10966    10952     -14
- Misses         2938     2952     +14
  Partials       1261     1261

Impacted Files
Coverage Δ
Complexity Δ

.../main/java/com/alipay/sofa/rpc/tracer/Tracers.java
41.02% <0%> (-5.13%)
0% <0%> (ø)

...pay/sofa/rpc/transport/ClientTransportFactory.java
72.3% <0%> (-4.62%)
0% <0%> (ø)

...y/sofa/rpc/bootstrap/DefaultProviderBootstrap.java
71.23% <0%> (-2.29%)
0% <0%> (ø)

...ofa/rpc/registry/zk/ZookeeperOverrideObserver.java
39.34% <0%> (-1.64%)
0% <0%> (ø)

.../sofa/rpc/bootstrap/DefaultClientProxyInvoker.java
90.32% <0%> (-1.62%)
0% <0%> (ø)

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 a7bceb0...ca9f91e. Read the comment docs.


Every Lucene index starts thread

OrientDB Version, operating system, or hardware.

v2.0 SNAPSHOT[ ] - .18[ ] .17[ ] .16[ ] .15[ ] .14[ ] .13[ ] .12[ ] .11[ ] .10[ ] .9[ ] .8[ ] .7[ ] .6[ ] .5[ ] .4[ ] .3[ ] .2[ ] .1[ ] .0[ ]
v2.1 SNAPSHOT[ ] - .16[ ] .15[ ] .14[ ] .13[ ] .12[ ] .11[ ] .10[ ] .9[ ] .8[ ] .7[ ] .6[ ] .5[ ] .4[ ] .3[ ] .2[ ] .1[ ] .0[ ]
v2.2 SNAPSHOT[ ] - .8[X] .rc1[ ] .beta2[ ] .beta1[ ]

Operating System

[X] Linux
[X] MacOSX
[ ] Windows
[ ] Other Unix
[ ] Other, name?

Expected behavior and actual behaviour
Every lucene index will create a thread during startup. It's very expensive and takes time. If I have many indexes I will have giant amount of threads. If I have one index per tenant it's too expensive. I have currently 700. These threads are not working almost all time but consumes resources.
I would expect that I have control on how many threads are created.
It happens due to ControlledRealTimeReopenThread (which inherits Thread) is used in OLuceneIndexEngineAbstract.
Additionally all indexes are loaded on startup. I suppose it would be better to do it lazily and keep indexes in memory which are in use only and release others.
Steps to reproduce the problem
Create few lucene indexes

hi @antonzherdev
that ControlledRealTimeReopenThread thread is needed for a fast near realtime indexing. We will try to replace it with something less expensive since for OrientDB 3.0 we will use Lucene >= 6.1 that should not contain anymore ControlledRealTimeReopenThread

Hi @maggiolo00,
Yes, I understand the reason why it's there but for thread consumes memory for the stack and it's system memory and I cannot limit the consumption and the service can be killed by OS. I can reduce the stack size but not too much. These threads are almost always in sleep, this means that it's a wasted memory.
Additionally creating of these threads taking time during initialisation of database. In my case it can take up to a minute to startup only due to these indexes.
So it would be nice if you could consider to change it in OrientDB 3.0 and get rid of the threads.
Thanks!


gowin: Add new types of oscillator

Just as a future note to the gowin folks, it's worth considering a script like https://github.com/YosysHQ/yosys/blob/master/techlibs/xilinx/cells_xtra.py to import all the primitives from the vendor tool, so you don't need a new manual patch & PR for each one you add.

ping @pepijndevos @yrabbit

No objection.
Worth merging and I think this will be the last commit about adding new primitives - I'm really hoping for a future big addition of all GOWIN primitives at once as @gatecat advises.


How to remap right CMD to CMD + V, Please Help

hi
can anyone please direct me somewhere to learn how to achieve this task
thank you

Have a look into K-E's Documentation
Your "to" is "to": [{"key_code": "v", "modifiers": ["command"]} ],


Occasionally breaks pip installs of other software

I just got this error:
cathal@europa:~/Projects/python/PyGram/src$ sudo pip2 install ipython
[sudo] password for cathal:
The directory '/home/cathal/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/cathal/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting ipython
  Downloading ipython-5.3.0-py2-none-any.whl (750kB)
    100% |████████████████████████████████| 757kB 420kB/s
Requirement already satisfied (use --upgrade to upgrade): setuptools>=18.5 in /usr/lib/python2.7/dist-packages (from ipython)
Collecting backports.shutil-get-terminal-size; python_version == "2.7" (from ipython)
  Downloading backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl
Collecting pickleshare (from ipython)
  Downloading pickleshare-0.7.4-py2.py3-none-any.whl
Collecting simplegeneric>0.8 (from ipython)
  Downloading simplegeneric-0.8.1.zip
Collecting decorator (from ipython)
  Downloading decorator-4.0.11-py2.py3-none-any.whl
Collecting prompt-toolkit<2.0.0,>=1.0.4 (from ipython)
  Downloading prompt_toolkit-1.0.14-py2-none-any.whl (248kB)
    100% |████████████████████████████████| 256kB 668kB/s
Collecting pexpect; sys_platform != "win32" (from ipython)
  Downloading pexpect-4.2.1-py2.py3-none-any.whl (55kB)
    100% |████████████████████████████████| 61kB 871kB/s
Collecting pathlib2; python_version == "2.7" or python_version == "3.3" (from ipython)
  Downloading pathlib2-2.2.1-py2.py3-none-any.whl
Collecting pygments (from ipython)
  Downloading Pygments-2.2.0-py2.py3-none-any.whl (841kB)
    100% |████████████████████████████████| 849kB 534kB/s
Collecting traitlets>=4.2 (from ipython)
  Downloading traitlets-4.3.2-py2.py3-none-any.whl (74kB)
    100% |████████████████████████████████| 81kB 882kB/s
Requirement already satisfied (use --upgrade to upgrade): six>=1.9.0 in /usr/lib/python2.7/dist-packages (from prompt-toolkit<2.0.0,>=1.0.4->ipython)
Collecting wcwidth (from prompt-toolkit<2.0.0,>=1.0.4->ipython)
  Downloading wcwidth-0.1.7-py2.py3-none-any.whl
Collecting ptyprocess>=0.5 (from pexpect; sys_platform != "win32"->ipython)
  Downloading ptyprocess-0.5.1-py2.py3-none-any.whl
Collecting scandir; python_version < "3.5" (from pathlib2; python_version == "2.7" or python_version == "3.3"->ipython)
  Downloading scandir-1.5.tar.gz
    Complete output from command python setup.py egg_info:
    running egg_info
    creating pip-egg-info/scandir.egg-info
    writing pip-egg-info/scandir.egg-info/PKG-INFO
    writing top-level names to pip-egg-info/scandir.egg-info/top_level.txt
    writing dependency_links to pip-egg-info/scandir.egg-info/dependency_links.txt
    writing manifest file 'pip-egg-info/scandir.egg-info/SOURCES.txt'
    warning: manifest_maker: standard file '-c' not found

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-ex6U0I/scandir/setup.py", line 54, in <module>
        'Programming Language :: Python :: Implementation :: CPython',
      File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
        dist.run_commands()
      File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
        cmd_obj.run()
      File "/usr/lib/python2.7/dist-packages/setuptools/command/egg_info.py", line 195, in run
        self.find_sources()
      File "/usr/lib/python2.7/dist-packages/setuptools/command/egg_info.py", line 222, in find_sources
        mm.run()
      File "/usr/lib/python2.7/dist-packages/setuptools/command/egg_info.py", line 306, in run
        self.add_defaults()
      File "/usr/lib/python2.7/dist-packages/setuptools/command/egg_info.py", line 335, in add_defaults
        sdist.add_defaults(self)
      File "/usr/lib/python2.7/dist-packages/setuptools/command/sdist.py", line 171, in add_defaults
        build_ext = self.get_finalized_command('build_ext')
      File "/usr/lib/python2.7/distutils/cmd.py", line 312, in get_finalized_command
        cmd_obj.ensure_finalized()
      File "/usr/lib/python2.7/distutils/cmd.py", line 109, in ensure_finalized
        self.finalize_options()
      File "/usr/lib/python2.7/dist-packages/setuptools/command/build_ext.py", line 134, in finalize_options
        self.check_extensions_list(self.extensions)
      File "/usr/local/lib/python2.7/dist-packages/setuptools_rust/build_ext.py", line 16, in check_extensions_list
        _build_ext.check_extensions_list(extensions)
    TypeError: unbound method check_extensions_list() must be called with build_ext instance as first argument (got list instance instead)

should be fixed in master

Thank you! :)
On 11 April 2017 20:41:31 GMT+01:00, Nikolay Kim<EMAIL_ADDRESS>wrote:

Closed #4.
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/fafhrd91/setuptools-rust/issues/4#event-1038984097

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.


[WIP] Add camera permission handling

Status: Needs updates to localizations.
May fix https://github.com/openfoodfacts/smooth-app/issues/543
This change

updates the permissions for iOS and Android (changes in ios/* and android/*).
Adds camera status to the ContinuousScanModel
Adds a user flow to enable camera permission

|  |  |

small conflicts to solve

I am closing this in favor of a new PR for the original crash issue. The permission handling is going to be a part of the app onboarding.


update the halcyon link

halcyon moved to https://notabug.org/halcyon-suite/halcyon and they keep a list of current halcyon instances there

Edited to add this, thank you!


Need to set background of SessionControl

Currently there is no explicit background set to SessionControl which causes window background will be seen through border inside SessionControl, especially when Mica applied on window.

https://github.com/carina-studio/PixelViewer/commit/46da42739abf4f7c1a47a82096d5ea1169091e2b


Build an adaptive app with adaptive layout: Android Basics with Compose

https://developer.android.com/codelabs/basic-android-kotlin-compose-adaptive-content-for-large-screens?continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-compose-unit-4-pathway-3%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-compose-adaptive-content-for-large-screens#2
16. Run the app on the tablet mode and see the following layout:

ReplyDetailsScreen is missing isFullScreen inside ReplyListAndDetailContent composable in ReplyHomeContent.kt file

--- a/AndroidBasicsCourse/Reply/app/src/main/java/com/example/reply/ui/ReplyHomeContent.kt
+++ b/AndroidBasicsCourse/Reply/app/src/main/java/com/example/reply/ui/ReplyHomeContent.kt
@@ -113,6 +113,7 @@ fun ReplyListAndDetailContent(
         val activity = LocalContext.current as Activity
         ReplyDetailsScreen(
             replyUiState = replyUiState,
+            isFullScreen = false,
             onBackPressed = {},
             modifier = Modifier.weight(1f)
         )


Verify Explain resource count matches GCP resource count

Adding test. Will still require #2993 to be fixed to run consistently. However issues-2993 is not a blocker. Rather, this test can help make sure issues-2993 has been fixed.

Resolves #3354


[dask] Dask estimators sometimes return an incomplete booster

Short description of the problem
DaskLGBMRanker and DaskLGBMRegressor sometimes return a model with an incomplete booster. Training with num_iterations = 50 and no early stopping, .fit() from these classes sometimes returns a booster with less than 50 trees.
Reproducible Example
The example code below uses the functions from lightgbm's tests to create datasets. I'll try to come back and simplify it further.
import itertools

import dask.array as da
import dask.dataframe as dd
import lightgbm as lgb
import numpy as np
import pandas as pd
from dask.distributed import Client, LocalCluster
from scipy.stats import spearmanr
from sklearn.datasets import make_blobs, make_regression

n_workers = 3
cluster = LocalCluster(n_workers=n_workers)
client = Client(cluster)
client.wait_for_workers(n_workers)

print(f"View the dashboard: {cluster.dashboard_link}")

from itertools import groupby
from sklearn.utils import check_random_state

def make_ranking(n_samples=100, n_features=20, n_informative=5, gmax=2,
                 group=None, random_gs=False, avg_gs=10, random_state=0):
    rnd_generator = check_random_state(random_state)

    y_vec, group_id_vec = np.empty((0,), dtype=int), np.empty((0,), dtype=int)
    gid = 0

    # build target, group ID vectors.
    relvalues = range(gmax + 1)

    # build y/target and group-id vectors with user-specified group sizes.
    if group is not None and hasattr(group, '__len__'):
        n_samples = np.sum(group)

        for i, gsize in enumerate(group):
            y_vec = np.concatenate((y_vec, rnd_generator.choice(relvalues, size=gsize, replace=True)))
            group_id_vec = np.concatenate((group_id_vec, [i] * gsize))

    # build y/target and group-id vectors according to n_samples, avg_gs, and random_gs.
    else:
        while len(y_vec) < n_samples:
            gsize = avg_gs if not random_gs else rnd_generator.poisson(avg_gs)

            # groups should contain > 1 element for pairwise learning objective.
            if gsize < 1:
                continue

            y_vec = np.append(y_vec, rnd_generator.choice(relvalues, size=gsize, replace=True))
            group_id_vec = np.append(group_id_vec, [gid] * gsize)
            gid += 1

        y_vec, group_id_vec = y_vec[:n_samples], group_id_vec[:n_samples]

    # build feature data, X. Transform first few into informative features.
    n_informative = max(min(n_features, n_informative), 0)
    X = rnd_generator.uniform(size=(n_samples, n_features))

    for j in range(n_informative):
        bias, coef = rnd_generator.normal(size=2)
        X[:, j] = bias + coef * y_vec

    return X, y_vec, group_id_vec

def _create_ranking_data(n_samples=100, chunk_size=50, **kwargs):
    X, y, g = make_ranking(n_samples=n_samples, random_state=42, **kwargs)
    rnd = np.random.RandomState(42)
    w = rnd.rand(X.shape[0]) * 0.01
    g_rle = np.array([len(list(grp)) for _, grp in groupby(g)])

    # ranking arrays: one chunk per group. Each chunk must include all columns.
    p = X.shape[1]
    dX, dy, dw, dg = [], [], [], []
    for g_idx, rhs in enumerate(np.cumsum(g_rle)):
        lhs = rhs - g_rle[g_idx]
        dX.append(da.from_array(X[lhs:rhs, :], chunks=(rhs - lhs, p)))
        dy.append(da.from_array(y[lhs:rhs]))
        dw.append(da.from_array(w[lhs:rhs]))
        dg.append(da.from_array(np.array([g_rle[g_idx]])))

    dX = da.concatenate(dX, axis=0)
    dy = da.concatenate(dy, axis=0)
    dw = da.concatenate(dw, axis=0)
    dg = da.concatenate(dg, axis=0)

    return X, y, w, g_rle, dX, dy, dw, dg

def _create_data(objective, n_samples=100, centers=2, chunk_size=50):
    if objective == 'classification':
        X, y = make_blobs(n_samples=n_samples, centers=centers, random_state=42)
    elif objective == 'regression':
        X, y = make_regression(n_samples=n_samples, random_state=42)
    rnd = np.random.RandomState(42)
    weights = rnd.random(X.shape[0]) * 0.01
    dX = da.from_array(X, (chunk_size, X.shape[1]))
    dy = da.from_array(y, chunk_size)
    dw = da.from_array(weights, chunk_size)
    return X, y, weights, dX, dy, dw

params = {
    "random_state": 42,
    "n_estimators": 50,
    "num_leaves": 20,
    "min_child_samples": 1
}

# ----- ranking ----- #
dask_ranker = lgb.DaskLGBMRanker(
    client=client,
    time_out=5,
    local_listen_port=12400,
    tree_learner_type='data_parallel',
    **params
)
local_ranker = lgb.LGBMRanker(**params)

X, y, w, g, dX, dy, dw, dg = _create_ranking_data()

dask_summaries = {}
local_summaries = {}
for _ in range(100):
    dask_ranker = dask_ranker.fit(dX, dy, sample_weight=dw, group=dg)
    num_trees = dask_ranker.booster_.num_trees()
    dask_summaries[num_trees] = dask_summaries.get(num_trees, 0) + 1

    local_ranker.fit(X, y, sample_weight=w, group=g)
    num_trees = local_ranker.booster_.num_trees()
    local_summaries[num_trees] = local_summaries.get(num_trees, 0) + 1

print("   dask: " + str(dask_summaries))
print("sklearn: " + str(local_summaries))

# ----- regression ----- #
dask_regressor = lgb.DaskLGBMRegressor(
    client=client,
    time_out=5,
    local_listen_port=12400,
    tree_learner_type='data_parallel',
    **params
)
local_regressor = lgb.LGBMRegressor(**params)

X, y, w, dX, dy, dw = _create_data(objective='regression')

dask_summaries = {}
local_summaries = {}
for _ in range(100):
    dask_regressor.fit(dX, dy, sample_weight=dw)
    num_trees = dask_regressor.booster_.num_trees()
    dask_summaries[num_trees] = dask_summaries.get(num_trees, 0) + 1

    local_regressor.fit(X, y, sample_weight=w)
    num_trees = local_regressor.booster_.num_trees()
    local_summaries[num_trees] = local_summaries.get(num_trees, 0) + 1

print("   dask: " + str(dask_summaries))
print("sklearn: " + str(local_summaries))

# ----- binary classification ----- #
dask_classifier = lgb.DaskLGBMClassifier(
    client=client,
    time_out=5,
    local_listen_port=12400,
    tree_learner_type='data_parallel',
    **params
)
local_classifier = lgb.LGBMClassifier(**params)

X, y, w, dX, dy, dw = _create_data(objective='classification')

dask_summaries = {}
local_summaries = {}
for _ in range(100):
    dask_classifier.fit(dX, dy, sample_weight=dw)
    num_trees = dask_classifier.booster_.num_trees()
    dask_summaries[num_trees] = dask_summaries.get(num_trees, 0) + 1

    local_classifier.fit(X, y, sample_weight=w)
    num_trees = local_classifier.booster_.num_trees()
    local_summaries[num_trees] = local_summaries.get(num_trees, 0) + 1

print("   dask: " + str(dask_summaries))
print("sklearn: " + str(local_summaries))

# ----- multiclass classification ----- #
dask_classifier = lgb.DaskLGBMClassifier(
    client=client,
    time_out=5,
    local_listen_port=12400,
    tree_learner_type='data_parallel',
    **params
)
local_classifier = lgb.LGBMClassifier(**params)

X, y, w, dX, dy, dw = _create_data(objective='classification', centers=3)

dask_summaries = {}
local_summaries = {}
for _ in range(100):
    dask_classifier.fit(dX, dy, sample_weight=dw)
    num_trees = dask_classifier.booster_.num_trees()
    dask_summaries[num_trees] = dask_summaries.get(num_trees, 0) + 1

    local_classifier.fit(X, y, sample_weight=w)
    num_trees = local_classifier.booster_.num_trees()
    local_summaries[num_trees] = local_summaries.get(num_trees, 0) + 1

print("   dask: " + str(dask_summaries))
print("sklearn: " + str(local_summaries))

Running that example, I got results like this:
# ----- ranking ----- #
   dask: {50: 90, 20: 2, 45: 2, 25: 1, 16: 1, 18: 1, 29: 1, 40: 1, 14: 1}
sklearn: {50: 100}

# ----- regression ----- #
   dask: {50: 100}
sklearn: {50: 100}

# ----- binary classification ----- #
   dask: {47: 53, 46: 47}
sklearn: {48: 100}

# ----- multiclass classification ----- #
   dask: {117: 54, 111: 46}
sklearn: {150: 100}

So it seems like the problem is mostly specific to distributed training.
Although it's confusing to see 48 trees for LGBMRegressor.
Environment Info
Operating System: Ubuntu 18.04
C++ compiler version: gcc 9.3.0
CMake version: 3.16.3
Python version: 3.8.5, see conda info beloow
conda info output (click me)
     active environment : None
       user config file : /home/jovyan/.condarc
 populated config files : /opt/conda/.condarc
          conda version : 4.8.3
    conda-build version : not installed
         python version : 3.8.5.final.0
       virtual packages : __glibc=2.31
       base environment : /opt/conda  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /opt/conda/pkgs
                          /home/jovyan/.conda/pkgs
       envs directories : /opt/conda/envs
                          /home/jovyan/.conda/envs
               platform : linux-64
             user-agent : conda/4.8.3 requests/2.24.0 CPython/3.8.5 Linux/5.4.39-linuxkit ubuntu/20.04 glibc/2.31
                UID:GID : 1000:100
             netrc file : None
           offline mode : False

LightGBM version or commit hash: https://github.com/microsoft/LightGBM/tree/ffebc43fea44ba95a0bc2b4366fe9b4ff8275c22 (latest master)
Other Notes

~I'm writing this up now that I've noticed it and have a reproducible example. I don't know yet if this is specific to LGBMRanker, or if the same problem affects LGBMClassifier and LGBMRegressor~
If this problem is specific to the Dask interface, I suspect it is here: https://github.com/microsoft/LightGBM/blob/ffebc43fea44ba95a0bc2b4366fe9b4ff8275c22/python-package/lightgbm/dask.py#L339-L341
it's possible that this isn't an issue in the Dask module and that it's something in LightGBM distributed training generally. If that's true, it might require setting up tests on distributed training with the LightGBM CLI (#3841)

Edits
EDIT 1: Added check that the problem doesn't exist with lgb.sklearn.LGBMRanker. It doesn't, so seems the problem is specific to distributed training.
EDIT 2 Added tests for regressor and classifier. Binary and multi-class classification seem to also suffer from this problem.

I ran a few more experiments tonight and found some interesting things. Basically, I don't think there is a bug and I think this is just a problem that can arise using very very small training data (relative to n_estimators and max_depth / num_leaves).
So I think this can be closed.

For binary classification, increasing the dataset size from 100 to 1000 observations makes the problem go away.
# ----- binary classification ----- #
client.restart()
X, y, w, dX, dy, dw = _create_data(n_samples=1000, objective="classification")

dX = dX.persist()
dy = dy.persist()
dw = dw.persist()
_ = wait([dX, dy, dw])

dask_summaries = {}
local_summaries = {}
for i in range(100):
    if i % 5 == 0:
        print(i)
    dask_classifier.fit(dX, dy, sample_weight=dw)
    num_trees = dask_classifier.booster_.num_trees()
    dask_summaries[num_trees] = dask_summaries.get(num_trees, 0) + 1

    local_classifier.fit(X, y, sample_weight=w)
    num_trees = local_classifier.booster_.num_trees()
    local_summaries[num_trees] = local_summaries.get(num_trees, 0) + 1

print("   dask: " + str(dask_summaries))
print("sklearn: " + str(local_summaries))

My working theory right now is that with very small data + mostly random features, and then splitting that data up into two pieces, it's easy to randomly get into a situation where it's not possible to boost for the desired number of rounds and find splits that satisfy the default conditions like min_sum_hessian_in_leaf = 1e-3. Distributed training is even more sensitive to this, since each worker makes local estimates of the gain for splits, and only holds #data / #workers data (in the perfectly-balanced case).
I found that when I cut n_samples to 50, even lgb.sklearn.LGBMRanker only boosts for 33 rounds (with the params shown in the description above, which includes n_estimators=50).


Release @google-cloud/common-grpc v0.9.2

This pull request was generated using releasetool.

Release is at https://github.com/googleapis/nodejs-common-grpc/releases/tag/v0.9.2


Disable incremental compilation on CI

Which issue does this PR close?
Closes https://github.com/apache/arrow-datafusion/issues/6676
Rationale for this change
As shown on https://github.com/apache/arrow-datafusion/issues/6676#issuecomment-1593485461, disabling incremental complication saves 2GB of builder space
With incremental compilation enabled (the default):
https://github.com/apache/arrow-datafusion/actions/runs/5281745040/jobs/9555736433?pr=6678
Run du -s -h $GITHUB_WORKSPACE/target/debug/* || true
429M	/__w/arrow-datafusion/arrow-datafusion/target/debug/build
21G	/__w/arrow-datafusion/arrow-datafusion/target/debug/deps
4.0K	/__w/arrow-datafusion/arrow-datafusion/target/debug/examples
2.3G	/__w/arrow-datafusion/arrow-datafusion/target/debug/incremental

Without incremental compilation: https://github.com/apache/arrow-datafusion/actions/runs/5281960476/jobs/9556242542
Run du -s -h $GITHUB_WORKSPACE/target/debug/* || true
429M	/__w/arrow-datafusion/arrow-datafusion/target/debug/build
22G	/__w/arrow-datafusion/arrow-datafusion/target/debug/deps
4.0K	/__w/arrow-datafusion/arrow-datafusion/target/debug/examples
4.0K	/__w/arrow-datafusion/arrow-datafusion/target/debug/incremental

Total space used on the builder's filesystem
main (before this PR):
35G	/

without incremental compilation (this PR):
33G	/

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

Given I think this PR gives us some more breathing room and doesn't change any code (just the build on CI), I plan to merge it if/when the tests pass. I will merge the other cleanup PRs after review


MB-12120 Update shipment service objects to be managed by an orchestrator service object

Jira ticket for this change
Summary
This adds new orchestration service objects to manage the MTOShipment and PPMShipment service objects.
One thing to note is that this is a new type of service object. I ended up putting them in the same folder as the existing service objects and adding orchestrator to the name. I'm not really set on this though an would gladly take input from y'all on naming and placement.
If the full PR is too much to review at once, it might be easier to go commit by commit since I try to keep related changes together.

Change Log
Things that should be addressed by this in the end (will check them off as I finish):

[x] Update ppmShipmentCreator to not depend on MTOShipmentCreator anymore. This will bring it more in line with the PPM Updater.
[x] Add more robust tests for PPM Creator
[x] Add more robust tests for PPM Updater
[x] Add service object to orchestrate MTOShipment creator and PPMShipment creator.
[x] Update internalapi create shipment handler to use new shipment creation orchestrator service object (instead of calling the MTOShipment or PPMShipment ones directly).
[ ] Add service object to orchestrate MTOShipment updater and PPMShipment updater.
[ ] Update internalapi update shipment handler to use new shipment update orchestrator service object (instead of calling the MTOShipment or PPMShipment ones directly).

Other things I addressed while I was working on this:

[x] Fix a bug with PPMShipment pro gear fields. If a user selected no after having saved yes, the old pro gear weights weren't cleared out before.
[x] Update internalapi create and update tests to follow newer testing patterns.

Another thing to note is that for this ticket I'd ideally also update docs to include info on orchestrator service objects. I'll do my best to get to that, but if I don't, I'll create a ticket to follow up with that.
Setup to Run Your Code
You can test this by running server tests and/or by interacting with the app as a customer and ensuring things still work for PPM Shipments (creating/updating).
Run server tests

💻
make server_test

Use the app

💻 Set Up
Server
Start the Go server locally.
make server_run

Client UI
Start the UI locally.
make client_run

Steps

Access the local client app
Login as a customer with an unsubmitted move.

You could use<EMAIL_ADDRESS>or really any of the ones that end with @ppm.unsubmitted

Try adding a PPM and editing a PPM. (Note that edits shouldn't be affected yet as I haven't gotten to those changes yet).

Verification Steps for Author
These are to be checked by the author.

[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

Verification Steps for Reviewers
These are to be checked by a reviewer.
Backend

[ ] Code follows the guidelines for Logging
[ ] The requirements listed in Querying the Database Safely have been satisfied.

Messages

:book:
:link: MB-12120

  Generated by :no_entry_sign: dangerJS against c33343435792a35bfed12e463612c8d3a90bc950

For the most part this looks good to me (still finishing up the review on the last commit and want to review the tests again).
Question: Do we have a standard for folder naming? I see both snake_case and all lowercase within the application. I couldn't find any documentation around it. (Depending on that answer I would potentially advocate for snake_case for the shipmentorchestrator folder. )
Thought: It might be worth having an additional folder for all orchestrators within the services folder.

Question: Do we have a standard for folder naming? I see both snake_case and all lowercase within the application. I couldn't find any documentation around it. (Depending on that answer I would potentially advocate for snake_case for the shipmentorchestrator folder. )

So, we don't really have any ourselves. We just link to a go presentation on naming:

Our docs
Go presentation

Originally I'd made it snake case, but go (I think it was actually one of our linters 🤔) doesn't allow snake case package names so I opted to make the folder name match the package name. I'm not a fan of the joined name though.

Thought: It might be worth having an additional folder for all orchestrators within the services folder.

Yeah, that's a good idea. Could even help with the naming from your question above since it could then just become orchestrators/shipment so it wouldn't need to be part of the package name. Though that might mess with imports, but those can be aliased if needed. I'll test it out and see how it looks.


SpellCheck collation

Mauricio,  these were the changes I have made to get collation to work for spell check.
I am running an older version with XMLNodes instead of XMLElements
Since there was a change to XML Node I assumed that .Value is the same as .InnerText on a selected element.
There is also no test code.

ping


Guidance to set up APIScan in a pipeline in dnceng

This request is for WinForms designer private Github repo: https://github.com/microsoft/winforms-designer.
This repo produces a VSIX and an SDK NuGet package. The VSIX gets inserted into VS and the corresponding binaries are scanned automatically for APIScan centrally. However, the NuGet package is released externally to customers, and for that we have received guideline that we need to run APIScan on our own for the repo.
We already have a dnceng pipeline which runs APIScan: https://dev.azure.com/dnceng/internal/_build?definitionId=1259
This pipeline, however, does not use Managed Identity at present, which is a security issue. We need to resolve it by 5/31.
Since this pipeline is classified as Non-Production, we haven't moved it to 1ES yet. But the changes to move to 1ES are in one of my private branch and we can commit that if required.
I found this wiki which mentions that a shared Managed Identity (MI) was created and assigned to MicroBuild customers for use for their APIScan runs. Since the corresponding pool is in devdiv, we cannot access it from dnceng.
Thus, if Arcade could create a similar MI and assign it to one of the pools (say, NetCore1ESPool-Internal) that we can use for our pipeline, then it should resolve the issue.
cc: @merriemcgaw, @KlausLoeffelmann

Release Note Category

[ ] Feature changes/additions
[ ] Bug fixes
[ ] Internal Infrastructure Improvements

Release Note Description

We have some very very recent guidance that pool-wide managed identities should not be used, so we should:

Get clarity on whether that is true
If that is true, figure out a better path forward for dnceng customers.

@riarenas: If there are additional tasks on our end, we can do, to expedite this, please don't hesitate to contact me, so I can ramp-up in time and then take care of getting those things into gear!

@MiYanni was interested in the outcome of this as well. I think the sdk team could benefit from it as well.

The only place that we're aware of that runs APIScan is in the Release pipeline. @tkapin do you have any insight on this? We also have no plans to expand APIScan support at this time.

Additionally, here is a link to reach out to the APIScan team directly: https://aka.ms/apiscan. Let us know if there's anything we can do to help.

@missymessa we've reached out to the APIScan team already. This is the recommended approach, and how VSEng is supporting APIScan for the rest of DevDiv. The pipeline we're hoping to enable is one that allows us to ship update WinForms Designer Extensibility SDKs to our 3rd party control vendors. We've talked with the APIScan owners and they have directed us this way. @tkapin I'd be very interested to know how your team is using APIScan in your release pipeline. Perhaps there is something we can leverage there.
To the best of our knowledge, the only other option would be to migrate the entire pipeline to VSEng, which would be a huge lift for my team - and VSEng is still using a pool wise managed identity.

We have reached out several times.
@missymessa, it's primarily about the Managed Identities.
See Ricardo's comment above:
https://github.com/dotnet/dnceng/issues/2965#issuecomment-2137910674

Roslyn, Razor, Compilers all have the same ask. cc: @jaredpar and @phil-allen-msft

@riarenas Any update? WinForms APIScan pipeline is currently blocked on this issue, and probably similar is the case for other teams.

No update. @markwilkie FYI.

@dougbu @mmitche - Has there been any progress in determining what teams are supposed to do here? I feel like quite a few teams are waiting on some form of guidance.

I responded in email thread on this subject.

@merriemcgaw We know that APIScan is still working on federated credential support. That's the main blocker right now. It's possible that federated creds + azure CLI + task may work in the meantime, but I'm not sure. I can try out the workaround if I can get someone on the winforms-designer team to work with me.

@mmitche it sounds like guidance was written and the internal thread was wrapped up? Cool to close this?

Cool from our end.

Guidance for future reference: https://dev.azure.com/devdiv/DevDiv/_wiki/wikis/DevDiv.wiki/25351/APIScan-step-by-step-guide-to-setting-up-a-Pipeline

@missymessa The guidance you shared uses a Managed Identity assigned to a shared pool. Dnceng does not prescribes it and hence it cannot be used. @mmitche suggested me to use Federated Credentials and it is working for us. I have documented it here.


Create a Recipe Manager

The work from the Ingredients Manager in #4 will be useful here, so we should branch off of that work.

PR is in at dylanleigh#9, awaiting response. The recipe manager necessarily is more complex, and the interface required more fanagaling to deal with ingredients and recipes being separate, but intimately related. I thought about perhaps taking a stab at model inheritance and building a 'component' base class, but I think that's something that should wait until the front end is fully functional with what we have, so I know all the things any changes to the backend would need to support. Once this PR goes through the next step should be the diary and targets

That PR has been merged. Work on diary and targets should continue now.


fzf support for docker

It would be great to have fzf completion for docker. For example docker run **<TAB> – fzf prompt populated from docker images command, docker exec **<TAB> analogously to previous case but with content from docker ps, etc. There are more command that could be completed (like docker save, docker kill and more), but I would like to know if you are interested in adding such functionality to fzf in first place. Thanks.

Thanks for the suggestion, but I'm not interested in extending the scope of the shell extension included in this repository not to increase maintenance burden.
Extra completion functions can go to the wiki page or can be provided as separate, third-party repositories.
Please refer to https://github.com/junegunn/fzf/wiki/Examples-(completion) for custom completion functions.

@fenuks I made a small example of working wit Docker and fzf:
`# Custom fuzzy completion for "docker" command
e.g. docker **
_fzf_complete_docker() {
ARGS="$@"
if [[ $ARGS = 'docker ** rmi' || $ARGS = 'docker ** -f' ]]; then
_fzf_complete "--multi --reverse" "$@" < <(
docker images --format '{{.Repository}}:{{.Tag}}'
)
elif [[ $ARGS = 'docker ** start' || $ARGS = 'docker ** stop' || $ARGS = 'docker ** rm' ]]; then
_fzf_complete "--multi --reverse" "$@" < <(
docker ps -a --format '{{.Names}}'
)
fi
}
[ -n "$BASH" ] && complete -F _fzf_complete_docker -o default -o bashdefault docker`
Basically you can completion with this commands:
docker rmi **
docker rmi -f **
docker start **
docker stop **
docker rm **
Those are the ones I use every day, you can add more.
Hope you find it useful.

You may also want to check my fuzzy completion for bash also handles docker argument completion (and zsh!)
https://github.com/Mike-Now/docker-fzf-completion #shamelessplug


Removed dispatchEvent code duplication

Fixes #20473
First pull request!

@Stranger if you check lib/README.md, you will notice that lib/lib.webworker.d.ts is generated from src/webworker.generated.d.ts and should not be modified manually.
Same thing for src/webworker.generated.d.ts, it cannot be direclty changed. src/README.md indicates that this should be done in https://github.com/Microsoft/TSJS-lib-generator


Dependencies: switch from colored to owo-colors

owo-colors is well-maintained, zero-allocation, zero-dependencies crate
for terminal colors. Also it works on any type that implements Display trait,
not just on strings.
I made minimal changes to the source code for this switch.

So, there it is, sorry it took so long.
I did refactor that function, no more .to_string() on paths now since owo-colors works on anything that implements Display trait.
As for the the broken size column I restored .to_string() call on ByteFormatDisplay, without it the alignment breaks.

No worries, and thanks a lot for following through.


Add mac/linux support, add support for custom controllers

-mac/linux needs a diffrent path for the token storage path

custom controllers uses a diffrent auth header

I'll try to remember to push a new version to the PSGallery.
Maybe I should set up a github action for that hahaha.
Glad to see this thing getting some use outside of me.

I have an action thing for that, i'll try to make a pull for that next week😅


LSP doesn't support advanced function types

My issue is basically this
https://user-images.githubusercontent.com/68239467/149386398-858dbd36-41ca-46b7-9043-572727683208.mov

that is valid code in Roblox Studio
But in Roblox LSP I get these errors

Roblox LSP just doesn't think the function has been defined due to the typechecking

This is generic type packs. duplicate of #129


Adding Key Management & using subkey to insert keys to keystore

fix #326

Bump. Let's get this updated or closed.


Default timestamp insert is not now() event if specified in db rule

Describe the bug
Database timestampz column gets the value of '0001-12-31 23:42:30.000000 +00:00 BC' when inserting a new row, if the timestamp is not specified in entity. (Even if the database column has a default value of 'now()').
Reproduction
  public class Interception {
    public Guid Id { get; set; }
    public DateTime gdh_inter { get; set; }
  }

  Interception i = new Interception();
  await db.Interceptions.InsertAsync(i);

Further technical details
The only way to get rid of that bug for now is to specify defaut datetime in C# class :
  public class Interception {
    public Guid Id { get; set; }
    public DateTime gdh_inter { get; set; } = DateTime.UtcNow;
  }

This issue was fixed with #9118fe7d2cfab036d1a53e5bd9b63c971421dde8, in the next version you will be able to configure the column to have a default value in your EntityConfiguration with .Column(x => x.gdh_inter).HasDefault().


[order] Maintain relative imports ordered by path depth when using alphabetize

I'd like to suggest that the order rule with alphabetize enabled should provide a way to keep relative imports ordered by path depth.
This could be configured to be either ascending or descending, to accommodate users preferences.
Currently, using an ascending order, when importing from a folder's index implicitly, .., ../.., etc. get placed before all the non-index imports, ordered in the opposite way, since strictly alphabetically .. would go before ../.., but ../xwould go after ../../x.
IMO implementing this suggested enhancement would lead to a more 'logical', intuitive and user-friendly ordering, where a user would have a better sense of where to find a given import inside a big list of imports, given where it was imported from (relative path depth)  and not based on needing to know whether it was imported from an index file or from a specific file in a given folder.
For example:
IMO this:
import a from '../../a';
import x from '../..';
import b from '../b';
import y from '..';
import c from './c';
import z from '.';

or some other variation following the same idea, would make more sense than this (which is the current behavior, after running the autofix):
import z from '.';
import y from '..';
import x from '../..';
import a from '../../a';
import b from '../b';
import c from './c';

.eslintrc.js
'import/order': [
    'warn',
    {
        groups: [['parent', 'sibling', 'index']],
        alphabetize: {
            order: 'asc',
        },
    },
],

I'm keeping parent, sibling and index in the same group here just as an example, but this suggestion applies equally if they're in separate groups.

Thanks.

Hmm - this option would only apply to relative imports - but due to custom groups, this seems like it might be tricky to specify.

Imports are already being alphabetized only within their groups, custom or otherwise. Right?
And the code to determine whether a given import is a relative one already exists: isRelativeToParent, isRelativeToSibling, isIndex (which actually just check for path equal to . or .. or path starting with ./, .\, ../ or ..\).
So we're already restricted to the correct context in which the suggested ordering should be applied, and we have the means to tell if it should be applied, by checking if we're dealing with relative imports or not.
So this would just be a matter of introducing the logic for checking the path depth to the importsSorter function, or am i missing something?
And if we wanted to have a setting for this new behavior, I'd say a property in the alphabetize object would be ok. Next to order and caseInsensitive. So it'd be a 'global' setting. I don't think it'd be a good idea to do this on a per-group basis or something like that.
What do you think?
Thanks.

Hmm, that might work.
I'd be happy to review a PR that allowed a per-group setting (not under alphabetize, but a sibling to it) that supported either "ignore", "asc", or "desc" for ordering by relative imports. The docs would have to make it clear that this always took precedence over "alphabetize" when ordering.
(after typing that, I noticed you said you didn't think a per-group basis would be a good idea - can you elaborate on why not? i'm happy with it being also global, but any global setting should also be overrideable per group)

Yeah, I mean, I'm not sure I see the value of having different kinds of ordering for different groups. I think it's unlikely someone would want to have, e.g. the ['parent', 'sibling'] group ordered by relative path depth ignore and then e.g. have a custom group for, say, graphql files ordered by relative path depth desc and another one for assets set to asc.
Is that what you meant?
You'd end up with something like this:

Code snippet
import y from '..';
import x from '../..';
import a from '../../a';
import b from './b';

import c from '../../c.graphql';
import d from '../d.graphql';
import e from './e.graphql';

import f from './f.png';
import g from '../g.png';
import h from '../../h.svg';

IMO users would either care about ordering relative imports by path depth in a certain way, or they won't. Just like alphabetization is implemented currently, with the assumption that users want every group ordered either asc or desc, or ignore.
OK, back to the idea of having this be per-group. Then there's the question of how to reference those groups, if we want to have the setting as a sibling to alphabetize.
E.g. Using the group string or an array of group strings for the native ones (matching an item in the rule's groups array), and for custom groups there's not much of a choice, maybe string equality of the group pattern?

Example config
'import/order': [
    'warn',
    {
        groups: [['parent', 'sibling'], 'object'],
        pathGroups: [
            {
                pattern: '*.graphql',
                patternOptions: { matchBase: true, nocase: true },
                group: 'object',
                position: 'after',
            },
            {
                pattern: '*.{png,svg}',
                patternOptions: { matchBase: true, nocase: true },
                group: 'object',
                position: 'after',
            },
        ],
        alphabetize: {
            order: 'asc',
            caseInsensitive: true,
        },
        orderRelativeImports: [
            {
                group: ['parent', 'sibling'],
                order: 'ignore',
            },
            {
                group: '*.graphql',
                order: 'desc',
            },
            {
                group: '*.{png,svg}',
                order: 'asc',
            },
        ],
    },
],

IMO a config such as that one for orderRelativeImports would be very error prone.
What if the user changes groups, let's say adding 'index' to the first subgroup: ['parent', 'sibling', 'index']. Would the first item in the orderRelativeImports array simply not match anymore? Or would it do something weird like sort the relative imports as expected until it finds a '.' or './index', and then leave that one unordered?
And what if the user changes a pathGroup's pattern? What if it's an equivalent pattern, like *.{png,svg} vs *.{svg,png}. It'd be the same but it won't match anymore.
So, all of the above, both the technical aspects as well as the UX, is what led me to think it'd be more reasonable to simply have something like:
'import/order': [
    'warn',
    {
        // ...
        alphabetize: {
            order: 'asc',
            caseInsensitive: true,
        },
        orderRelativeImports: 'asc', // 'asc'|'desc'|'ignore'
    },
],

Thoughts?

One more note, when I initially thought of this proposal I thought of it as a particular case for the already implemented alphabetization, like the same way you could say 'alphabetize imports in ascending order, but order numbers by their numeric value, not their character code', I thought '..., but keep relative paths ordered by depth'.
That's why I said we could have the option as a property inside the alphabetize object. And since alphabetization is 'global', not per-group, this would've been the same.
But having it as a standalone option, as a sibling to alphabetize, and working independently, sounds very good as well.

How's about this one: https://github.com/lydell/eslint-plugin-simple-import-sort


Add custom props to material-ui select field

I spent a while trying to figure out why my disabled prop wasn't being passed to the SelectField, where it was working elsewhere.
I'd copied the function from here, and just figured out the issue that we were losing any other props passed in to the component.

Current coverage is 100% (diff: 100%)

Merging #1881 into master will not change coverage

@@           master   #1881   diff @@
=====================================
  Files          53      53
  Lines        1188    1188
  Methods         0       0
  Messages        0       0
  Branches        0       0
=====================================
  Hits         1188    1188
  Misses          0       0
  Partials        0       0

Powered by Codecov. Last update 428e9f0...60924fd


PCLT discouragement

This sentence

The PCLT table is strongly discouraged for OpenType™ fonts with TrueType outlines.

is underspecified and can be interpreted in multiple ways. Is it encouraged for font files with CFF outlines? But I can only find it in font files with TrueType outlines, so perhaps it should be interpreted the other way: i.e. that it's prohibited in CFF outlines and also discouraged in TT outline fonts? Should it just be blanket discouraged everywhere?
(What we mean by "discouraged" is also worth thinking about, but perhaps a separate issue.)

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

ID: d1e2f091-5f77-212d-00e6-634a2e0bbc03
Version Independent ID: 96873917-b737-0f8e-e7ee-97e2fba125e5
Content: PCLT - PCL 5 Table - Typography
Content Source: typographydocs/opentype/spec/pclt.md
Product: typography
GitHub Login: @PeterCon
Microsoft Alias: PeterCon

PCLT is not a table that’s ever been required or recommended for use with OT-CFF or OT-CFF2 fonts.

Proposed revisions for next version:

The PCLT table is strongly discouraged for OpenType™ fonts with TrueType outlines.Use of the PCLT table in OpenType fonts is strongly discouraged. Extra information on many of these fields can be found in the HP PCL 5 Printer Language Technical Reference Manual available from Hewlett-Packard Boise Printer Division.

Why is it discouraged? Some of us have PCL5 printers. Will it break anything? This seems less explanatory than before…?


Missing code example

Should include a sample code example

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

ID: 608c01ec-d21f-7bdf-a700-7288222ad27c
Version Independent ID: 94920b97-adc0-3899-f8bd-aff821f3435b
Content: Cross-platform Chat - Azure Solution Ideas
Content Source: docs/solution-ideas/articles/cross-platform-chat.md
Service: architecture-center
Sub-service: solution-idea
GitHub Login: @adamboeglin
Microsoft Alias: pnp

Thanks for reporting - this issue is under review.  This is a Microsoft Internal DevOps Bug ID AB#232335

@mojjeietuna , here is a more detailed chat bot example with code.  https://docs.microsoft.com/en-us/azure/architecture/example-scenario/ai/commerce-chatbot


we overwrite model__n_estimators after grid searching for lgbm

we default back to our standard 2000 estimators. even though the rest of the parameters are ported over.
we do this before we log to the user "using the params you passed in". the rest of the "params you passed in" were correct, but this particular one was not- we'd clearly overwritten it with 2,000 estimators.

should be fixed by tonight's release.


home-assistant: 0.107.7 -> 0.108.0

Motivation for this change
Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

When I upgrade, and go to http://hass:8123/developer-tools/info I see conflicting information:

Home Assistant 0.107.7
Frontend version: 20200407.1 - latest

Not sure what's happening.

It looks like maybe a sha256 change I'd expect to see in default.nix is missing?

Fixed now.

Updated to 0.108.2.

Works for me. Thanks!


initial commit support for service accounts

initial commit for google calendar suport for service accounts

Hi Carl,
There are some formate changes in the patch. Could you resubmit the PR without these code formate changes? It could be more easy for us to review the code.

@WillemJiang what is the status? Has this PR been merged?

Same feature would be nice for other Google integrations. After this one is merged I can prepare similar solution for Google Drive component.

Indeed it would be, thank you.

We have added some support for this in the google components.
It would be good to take a new look and see if something is still missing and do a new PR - then we can get the missing bits into the code base.


Convert non-tunable parameters to tunable in Bloody Mary

Convert these non-tunable parameters to some tunable in Physiolibrary_Fluid_Examples_BloodGasesTransport_BloodyMary.

Blood_Hb
Hct
Blood_BEox
RR
TV

Changing non-tunable parameters during simulation requires stopping simulation/reinitialization and resimulation.
Non-default values may cause unstable simulation and zero or infinitive values being returned.

Seems to me as a Dymola bug. I have introduced a workaround, that exports said variables as tunable:
    <ScalarVariable
      name="Hct"
      valueReference="16777238"
      description="Hematocrit"
      causality="parameter"
      variability="tunable">
      <Real
        declaredType="Physiolibrary.Types.Fraction"
        start="0.44"/>
    </ScalarVariable>

Check if these tunable vars work in the simulator.

The real continual status is not a parameter, but state variables (as mass fractions) inside all elastic blood vessels.

Mimochodem Blood_Hb je koncentrace hemov v krvi, ne koncentrace hemoglobinu v krvinkach. Jedna molekula hemoglobinu ma 4 hemy.


#2724 added message after commit

A popup_to_inform is used to show to user that the commit is successful.

Seems a bit intrusive to me. A simple MESSAGE ... TYPE 'S' might be better? Not sure.

Yea, would like not to do extra button clicks

I changed the popup to a message

Thanks for contributing! This will resolve #2724.

see comment by FreHu above

fixed the issue.

test

@Hir0ki looks like you have deleted the source branch? Hence I cannot merge the changes

Oh sry, I didn't knew that you would be able to merge the change.
I will create a new pull request.


missing GetAnnotations method

I am developing an operator using operator-sdk.
When execute go vet, I got such errors.
go version:15.5
operator-sdk version: 1.18.8
k8s.io/client-go: v0.20.0
sigs.k8s.io/controller-runtime: v0.7.0
k8s.io/api v0.20.0
k8s.io/apimachinery v0.20.0
pkg/utils/k8s/k8s_utils.go:25:38: cannot use obj (type runtime.Object) as type client.Object in argument to controllerutil.CreateOrUpdate:
	runtime.Object does not implement client.Object (missing GetAnnotations method)
pkg/utils/k8s/k8s_utils.go:49:17: cannot use obj (type runtime.Object) as type client.Object in argument to c.Delete:
	runtime.Object does not implement client.Object (missing GetAnnotations method)
Makefile:66: recipe for target 'vet' failed
make: *** [vet] Error 2

@cuttingedge1109 these are go dependency issues, and outside of what operator-sdk supports (you're using an old operator-sdk version with a newer version of controller-runtime, which is incompatible with the k8s deps you're using). I recommend upgrading your operator-sdk version.


XIV Meteor icon as the Galaxy "source" icon

Thanks for getting this integration for GOG, much appreciated.
Would be nice to get the Meteor symbol added in as a source icon if possible? Currently the only game I have appearing with a blank source.
Hopefully not too hard to integrate!

I'll look into it but I think this is limitation of missing FFXIV platform icon on GOG's backend as I haven't seen any methods to set platform icon in GOG integration API. I'll update this issue when I get more info. Thanks for feedback

Ah that's fair enough, didn't realise that was integrated at their end! Good old SE, making a standalone launcher. 😁

After some investigation I found out that platform icon + few other platform related things are handled on GOG's backend without me having any ability to change it. Thanks for filling out this issue. I'm closing it for now and if there's a update on this in future, I'll reopen it.


Model validation requires network connectivity

Solution: Pydantic as intermediate
https://linkml.io/linkml/generators/pydantic.html

Fixed in v1a


CXXRTL: (* top ) attribute causes wildcard port connections (.) to break

Steps to reproduce the issue
test.sv:
(* top *)
module top(
        input  logic       clk,
        output logic [3:0] seq,
    );

    test t(.*);
endmodule

module test(
        input  logic       clk,
        output logic [3:0] seq,
    );

    always_ff @(posedge clk) seq++;
endmodule

Generate test.cc with:
yosys -p "write_cxxrtl test.cc" test.sv

Expected behavior
The output file test.cc should contain an eval function similar to this:
bool p_top::eval() {
    bool converged = true;
    bool posedge_p_clk = this->posedge_p_clk();
    // cells $procdff$3 $flatten\t.$add$test.sv:0$2
    if (posedge_p_clk) {
        p_t_2e_seq.next = add_uu<32>(p_t_2e_seq.curr, value<32>{0x1u}).slice<3,0>().val();
    }
    // connection
    p_seq = p_t_2e_seq.curr;    // <----- IMPORTANT LINE
    return converged;
}

Actual behavior
The output file test.cc does not contain the line marked with the comment "IMPORTANT LINE" in the code snipped above. If the top-attribute is removed from the top module or if the port connections are done more explicit (.clk, .seq) instead of the wildcard, then the output file is correct and works as expected.
I'm not sure, maybe I'm not supposed to assign the top-attribute to the top module manually. In that case I apologize, please just close this issue, I will get the message.

Sorry, I forgot: I'm not sure if it is a CXXRTL problem specifically. I just wasn't able to reproduce it when using the synth_ice40 command.

Wildcard port connections are elaborated as part of the hierarchy pass. write_cxxrtl automatically invokes hierarchy -auto-top if -nohierarchy isn't specified and no module has the top attribute. Manually running hierarchy before wire_cxxrtl produces the correct output. It may be possible to change the default behavior of write_cxxrtl, but I'm not sure what is intended there.

write_cxxrtl is doing too much. The part that runs passes should be split off under a name like synth_cxxrtl. Until then, @zachjs's workaround is what I recommend.

Thank you guys. I didn't know that hierarchy makes the port connections and that write_cxxrtl doesn't run hierarchy when the attribute is used. This clears things up.


Initial iOS 13 support

WIP, DO NOT MERGE

[x] Dark Mode (including Today Widget)
[x] Make sure new modal presentation mode doesn't mess up existing implementation (namely, swipe to dismiss) related thread
[ ] ~Context menu~
[ ] ~Voice control~

Edit (10/06/19): dropped context menu & voice control support in this pr.

@aaronbrethorst Is it appropriate to drop iOS 10.3 support? I'm assuming that most people are on at least 11.0 now.

wip screenshots

Dark Mode Today Widget:

See #1447.


Propagate .options changes when SwiftUI View is updated

SwiftUI only
git branch: 4.0

Currently, when the View holding the PageView has changes and need refresh, PageView modifiers changes are not propagated to UIKit (but SwiftUI contents inside Page are 👍🏼).
My use case is that I support custom themes on my app, and everything is correctly updated except for the menu items.
I have attached three patches (4.0 branch):

one to demonstrate the issue/use case (changes are applied to DefaultView on ExampleSwiftUI target)
one to allow the propagation of .options via PagingControllerRepresentableView.updateUIViewController()
one to respect the .indicatorStyle() modifier (after propagating options)

0001-Added-changes-to-DefaultView-to-exemplify.patch
0002-Propagate-.options-modifiers-on-View-updates.patch
0003-Fixed-.indicatorStyle-not-being-respected.patch
I would be very grateful if you could give a try and have a look!

Thank you so much for the detailed issue and fix! I really appreciate it 🙌 The patches you provided look great. Feel free to create a PR from your fork, although we can probably skip the DefaultView changes.

Thanks! I've created a PR with a single commit here: https://github.com/rechsteiner/Parchment/pull/703
Great work ❤


fix exec command for ksfile injection

Signed-off-by: Jonathan Holloway<EMAIL_ADDRESS>Description
Fixes a bug with an updated exec.Cmd call for ksfile injection into ISO
Fixes # (issue)
Type of change
What is it?

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation update
[ ] Tests update
[ ] Refactor

Checklist:

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I run go fmt ./... to check that my code is properly formatted
[ ] I run go vet ./... to check that my code is free of common Go style mistakes

Codecov Report

Merging #573 (997e7fa) into main (8ad590a) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##             main     #573   +/-   ##
=======================================
  Coverage   29.30%   29.30%
=======================================
  Files          33       34    +1
  Lines        3511     3511
=======================================
  Hits         1029     1029
  Misses       2339     2339
  Partials      143      143

Impacted Files
Coverage Δ

pkg/services/images.go
16.04% <0.00%> (ø)

pkg/services/files/extractor.go
54.54% <0.00%> (-1.87%)
:arrow_down:

pkg/services/files/utils.go
66.66% <0.00%> (ø)

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 8ad590a...997e7fa. Read the comment docs.


support both authenticated and unauthenticated resolve calls

We may want to do this for claim search also.

This is blocking for a pr.
I've added --include_is_my_output to resolve when resolving only one claim. I'd also like to add the flag to claim_search at least on the page displaying channel content - people need to see what content is blocked and we use whether it is theirs to decide whether to ignore blocking (so they can delete their blocked claim). Probably these only need to be authenticated/wallet -specific when that flag is passed. But maybe we want to pass the flag every time when sdk db rewrite is finished.
If there isn't a better way, we could selectively call different apis from the app in different circumstances.


My Phone adb / ip disconnect automatically

i use scrcpy wirelessly, but the ADB and IP port automatically stop working. I have set a certain port for my phone from the router so the Ip stays the same. but then the IP stops working. I have to change my phone IP everytime from the router and connect ADB and then it works. the IP stop working after 1 or 2 days.
iam using MacBook 14 pro and xioami redmi note 10 pro (miui 12).
i think miui is blocking the IP form some reason.

Last time i had a problem like this, it was a firewall situation.

Solution please

Last time i had a problem like this, it was a firewall situation.

What's the solution ?