[Bug] overflow:'break' on Pie Chart label not working as expected

Version
5.3.3
Link to Minimal Reproduction
No response
Steps to Reproduce
Enter the following data on the echarts example here: https://echarts.apache.org/examples/en/editor.html?c=pie-doughnut
option = {
  tooltip: {
    trigger: 'item'
  },
  legend: {
    top: '5%',
    left: 'center'
  },
  series: [
    {
      name: 'Access From',
      type: 'pie',
      radius: ['40%', '70%'],
      avoidLabelOverlap: true,
      label: {
        show: true,
        position: 'outer',
        overflow: 'break',
        formatter: [
          '{b}',
          '{d}%'
          // '{label|{b}}',
          // '{percent|{d}%}'
        ].join('\n'),
        // rich: {
        //     percent: {
        //         fontSize: 10,
        //         fontWeight: 'bold',
        //         lineHeight: 12,
        //     },
        //     label: {
        //         fontSize: 12,
        //         lineHeight: 14,
        //     }
        // },
      },
      emphasis: {
        label: {
          show: true,
          fontSize: '30',
          fontWeight: 'bold'
        }
      },
      labelLine: {
        show: true
      },
      data: [
        { value: 1048, name: 'Search Engine First' },
        { value: 735, name: 'Search Engine Second' },
        { value: 580, name: 'Search Engine Third' },
        { value: 484, name: 'Search Engine Fourth' },
        { value: 300, name: 'Search Engine Fifth' }
      ]
    }
  ]
};

Adjust the width of the render/preview window until the labels don't fit on the same line
Current Behavior
Problem 1
Using the example above with the richtext options commented, the labels wrap on word pretty much as expected
i.e.
formatter: [
          '{b}',
          '{d}%'
        ].join('\n'),
// rich: {
        //     percent: {
        //         fontSize: 10,
        //         fontWeight: 'bold',
        //         lineHeight: 12,
        //     },
        //     label: {
        //         fontSize: 12,
        //         lineHeight: 14,
        //     }
        //  },

When you use richtext however, the linebreaks setup in the formatter are not honored.
i.e.
formatter: [
          // '{b}',
          // '{d}%'
          '{label|{b}}',
          '{percent|{d}%}'
        ].join('\n'),
        rich: {
            percent: {
                fontSize: 10,
                fontWeight: 'bold',
                lineHeight: 12,
            },
            label: {
                fontSize: 12,
                lineHeight: 14,
            }
        },
      },

Problem 2
Long words render poorly with overflow:'break'
Changing the data to:
{ value: 1048, name: 'ThisIsALongName and ThisIsALongName1' },
        { value: 735, name: 'ThisIsALongName and ThisIsALongName2' },
        { value: 580, name: 'ThisIsALongName and ThisIsALongName3' },
        { value: 484, name: 'ThisIsALongName and ThisIsALongName4' },
        { value: 300, name: 'ThisIsALongName and ThisIsALongName5' }

Expected Behavior
Problem 1
Newlines should be honored when using richtext and overflow:'break'
Problem 2
There are probably several ways this could be improved and I'd be open to suggestions, but it certainly doesn't look right as it is. In an ideal world, the label's position would adjust automatically to not need to overflow in the middle of a word. Another option could be to truncate with ellipsis per line, if breaking on word is impossible.
It actually already does the latter sometimes, but is inconsistent.
i.e (notice the red slice's label):

This was with these options:
option = {
  tooltip: {
    trigger: 'item',

  },
  legend: {
    top: '5%',
    left: 'center'
  },
  series: [
    {
      name: 'Access From',
      type: 'pie',
      radius: ['40%', '70%'],
      avoidLabelOverlap: true,
      label: {
        show: true,
        position: 'outer',
        formatter: [
            '{b}',
            '{d}%',
        ].join('\n'),
      },
      emphasis: {
        label: {
          show: true,
          fontSize: '40',
          fontWeight: 'bold'
        }
      },
      labelLine: {
        show: true,
        length: 10,
        length2: 10,
        smooth: false,
        minTurnAngle: 90,
        maxSurfaceAngle: 10480,
        lineStyle: {
            width: 1,
            type: 'solid'
        }
      },
      data: [
        { value: 1048, name: 'Search Engine' },
        { value: 735, name: 'Direct' },
        { value: 580, name: 'Email' },
        { value: 484, name: 'Union Ads' },
        { value: 300, name: 'Video Ads' }
      ]
    }
  ]
};

Environment
- OS: Windows WSL
- Browser: Chrome 101.0.4951.64
- Framework: Vue2 and Vue3

Any additional comments?
I've seen a couple other tickets opened about this, but they've been closed for the reporters not responding, but it seems to have been an issue for a while now

bump

These bugs have been dragging on since the version 5.3.0. So my project library of echart is not updated for about one year already because of these bugs!


Change CitationBibliography to DocumenterBibliography?

@charleskawczynski What do you think of changing CitationBibliography to DocumenterBibliography?
CitationBibliography sounds somewhat redundant while DocumenterBibliography might be a bit more descriptive.

I'm fine with changing it if you'd like. I found it tricky to come up with a good/intuitive name for this. I was thinking at the time: what should we call the struct indicating where all of the citations in this package are collected? Perhaps it would be a good idea to get input from the Julia community?

Why not just Bibliography?

Hmmm, Bibliography might conflict with Bibliography.jl.
Well, Bibliography.jl does not define a Bibliography type. It returns an OrderedDict when you call import_bibtex("example.bib") so Bibliography might be fine.
@Azzaare would it be safe if we used Bibliography or do you have plans to add a Bibliography type to Bibliography.jl? Perhaps it makes sense to share a Bibliography type here?

I don't think it would work, because the Bibliography module would already be using the name (this is why a lot of packages are named with a plural).

I think CitationBibliography is fine for now.

In 1.6 you will be able to rename imports (https://github.com/JuliaLang/julia/pull/37396)


Fixes fetching only specific fields, including only _id.

Fixed #81.

@afrancis13, do you think these newly added tests cover the case of specific primary keys well enough? I'm asking specifically because this PR fixes raw result mapping when one wants elasticsearch to return as little information as possible (hence fields('_id')) and rely solely on the database to fetch the right content.

I pulled it down and played with it for a little while. This looks good to me at first glance, I'll let you know if i have issues in the future/submit a PR.


Take random number generator from Glulxe

Glulxe's random number generator is much better than calling rand(), so use that instead.

Done in commit 1f24f3e9b7f71d2ab7344b2405e5b43f8aaf1d4e.


FS is not defined inside src/loadSVM.js

Hi,
first of all. Congrats! This tool seems to be really useful. I have a problem with many features and I tried another svm library before (https://github.com/karpathy/svmjs). libsvm is performing much better, as expected.
I am having an issue when I try to get the result of serlializeModel to port my model from the server to the browser since I only want to do training once. Here is a minimal example that reproduces the error:
var data = [
[1,2,3,4,5],
[11,21,31,41,51],
[21,22,23,24,25],
[31,32,33,34,35]
]
var labels = [1,2,2,1]
require('libsvm-js').then(SVM => {
    var options = {kernel: SVM.KERNEL_TYPES.RBF, // The type of kernel I want to use
          type: SVM.SVM_TYPES.C_SVC,    // The type of SVM I want to run
          cost: 1000,
          gamma: 0.001
    }
    const svm = new SVM(options); // ...
    svm.train(data, labels);
    console.log(JSON.stringify(data))
    console.log(JSON.stringify(svm.serializeModel()))
}).catch((e)=>{
  console.log(e);
});

The output I get from the algorithm is the following:
optimization finished, #iter = 2
nu = 1.000000
obj = -2.000000, rho = 0.000000
nSV = 4, nBSV = 4
Total nSV = 4
[[1,2,3,4,5],[11,21,31,41,51],[21,22,23,24,25],[31,32,33,34,35]]
ReferenceError: FS is not defined
    at ___syscall5 (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:38023)
    at  (<WASM>[192]+87)
    at  (<WASM>[101]+24)
    at  (<WASM>[36]+10)
    at Module._serialize_model (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:49301)
    at SVM.serializeModel (/tmp/libsvm/node_modules/libsvm-js/src/loadSVM.js:160:28)
    at require.then.SVM (/tmp/libsvm/index.js:20:36)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:169:7)
    at Function.Module.runMain (module.js:607:11)
ReferenceError: FS is not defined
    at ___syscall5 (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:38023)
    at  (<WASM>[192]+87)
    at  (<WASM>[101]+24)
    at  (<WASM>[36]+10)
    at Module._serialize_model (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:49301)
    at SVM.serializeModel (/tmp/libsvm/node_modules/libsvm-js/src/loadSVM.js:160:28)
    at require.then.SVM (/tmp/libsvm/index.js:20:36)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:169:7)
    at Function.Module.runMain (module.js:607:11)
abort({}) at Error
    at jsStackTrace (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:18351)
    at stackTrace (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:18522)
    at abort (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:57513)
    at ___syscall5 (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:38133)
    at  (<WASM>[192]+87)
    at  (<WASM>[101]+24)
    at  (<WASM>[36]+10)
    at Module._serialize_model (/tmp/libsvm/node_modules/libsvm-js/dist/wasm/libsvm.js:1:49301)
    at SVM.serializeModel (/tmp/libsvm/node_modules/libsvm-js/src/loadSVM.js:160:28)
    at require.then.SVM (/tmp/libsvm/index.js:20:36)
If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.

There seems to be an issue with fs somewhere?
I am using Node  v8.1.2 with NVM. Which is the same node version you have in your README file.
Thanks a lot for your help,

Hello
Thanks for the feedback!
I probably did not build the wasm module with the right options, forgetting to include the virtual file system. I pretty sure this scenario works with the asm version though. Could you test that?
If you data is big you could run into some known issues with the FS (https://github.com/mljs/libsvm/issues/6) . Using a  precomputed kernel will avoid that. Here is an example of using a precomputed kernel with libsvm-js: https://github.com/jajoe/tutorial-nodejs/blob/4931ad30b282416f174951f59971dae9e409c426/image-classification/index.js
I'll have a look at the FS issue later this week, probably during the week-end.

Hi @stropitek
I tested with the asm version and it works. I get a string back without any problems.
I will look into the precomputed kernel example and try this out. Thanks a lot for your pointers.

@nopbyte I release v0.1.3 with the fix


WIP: Migrate docs to docusaurus (alpha version)

Note: This is a work in progress and should not be merged until the tutorials have been included in the docs, and we've checked all the links still work.
This PR migrates the documentation to use Docusaurus, hopefully making maintenance and changing the documentation easier and more straightforward. It splits up the various sections in canvasDatagrid.md into separate Markdown files (see them in docs/docs/), and adds a docs/jsdoc-to-md.js file that converts the JSDoc annotations to Markdown files (located in docs/reference/ upon generation) using Handlebars templates. A README.md file in docs/ has some more detail.
I think I covered most/all of the sections in canvasDatagrid.md, but please let me know if I missed anything. Also, the generated files in reference/ aren't perfect: I'm not sure they're terribly clear, and if the layout maybe can be improved there. For now, the structure/sections are mostly kept as-is, but I can imagine we'll eventually want to restructure a bit. Any comments or ideas on that are welcome.
What's missing from the docs still is the tutorials: I just haven't gotten around to it yet, and wanted to check in that this the right approach first. The tutorials would need a JS Fiddle or CodeSandbox or similar button as we have now. Ideally, I see each tutorial as a separate markdown file in docs/tutorials/, each with one or more code blocks which automagically are turned into JSFiddles upon page load. Not sure how to get there yet, but that would be the dream, I think.
There's a preview of the documentation here: https://likablestimulatingdatamining.ndrsn.repl.co/

good job


Github actions

With a change in the tests to get them to succeed on Python 3.8
Example tests being run: https://github.com/mhindery/djangosaml2/runs/619919241?check_suite_focus=true

Hmm I don't really get why this is showing file changes which come from the previous MR, and are already in master 🤔

Allright, all clean diff now

I there anything blocking this?

I'll review that aspect by myself, and more I'd like to refactor the unit tests because they should run without a real project setup, this should be embedded in the unit test


Unable to create analytic rule from sysmon parse xml - extend operator failed to resolve scalar

hello, i'm trying to create the below analytic rule, the results appear absolutely fine within the logs pane when qorking on the query, the minute i goto create the analytic rule, i get the following error message:

"'extend' operator: Failed to resolve scalar expression named<EMAIL_ADDRESS>Steps to reproduce the behavior:
Go to 'Analytics'
Click on 'Create Scheduled Query '
Click "Set Rule logic"
Paste the below query
Try to enable this rule
See error
Event | where Source == "Microsoft-Windows-Sysmon" | extend RenderedDescription = tostring(split(RenderedDescription, ":")[0]) | extend EventData = parse_xml(EventData).DataItem.EventData.Data | mv-expand bagexpansion=array EventData | evaluate bag_unpack(EventData) | extend Key=tostring(['@Name']), Value=['#text'] | evaluate pivot(Key, any(Value), TimeGenerated, Source, EventLog, Computer,  EventID, RenderedDescription, MG, ManagementGroupName, Type, _ResourceId)

Hi @CraigCloudITPro, I had this exact same problem, try the change found in this pull:
https://github.com/Azure/Azure-Sentinel/pull/2191/files

Hello Lodewyk, this still doesn't seem to work, i am now getting the below:
"'where' operator: Failed to resolve column or scalar expression named 'OriginalFileName'."
Event | where Source == "Microsoft-Windows-Sysmon" | extend RenderedDescription = tostring(split(RenderedDescription, ":")[0]) | extend EventData = parse_xml(EventData).DataItem.EventData.Data | mv-expand bagexpansion=array  EventData | evaluate bag_unpack(EventData) | extend Key = tostring(column_ifexists('@Name', "")), Value = column_ifexists('#text', "") | evaluate pivot(Key, any (Value), TimeGenerated, Source, EventLog, Computer, EventID, RenderedDescription, Type, _ResourceId) | where OriginalFileName == "Cmd.Exe"

Try this to pass evaluation, there should be a better way, but this will let it work for now.
|where column_ifexists('OriginalFileName', "") == "Cmd.Exe"
@shainw Any other Ideas?

Try this to pass evaluation, there should be a better way, but this will let it work for now.
|where column_ifexists('OriginalFileName', "") == "Cmd.Exe"
@shainw Any other Ideas?

Thanks that seems to work now Lodewyk.
I agree there has to be a more efficient way to reduce the syntax character count here, otherwise it's going to get extremely complicated for a simple query.

@CraigCloudITPro - This is the current work around.  The challenge here is that the required event may not be there for which the unpack iterates over, which means the subsequent fields are not available and hence the error.  We are investigating to see if there is any better solution, but you can think of it as similar to not having a table in your workspace and attempting to query against that table, this is just one level deeper and requiring a specific event type to be available.  Agreed, it is not a great experience and we will see what we can do.

@CraigCloudITPro - This is the current work around. The challenge here is that the required event may not be there for which the unpack iterates over, which means the subsequent fields are not available and hence the error. We are investigating to see if there is any better solution, but you can think of it as similar to not having a table in your workspace and attempting to query against that table, this is just one level deeper and requiring a specific event type to be available. Agreed, it is not a great experience and we will see what we can do.

But using my original code in the “Logs” when searching populates the exact results I want to see, it’s only when I goto create the Analytic Rule that it throws the errors.
What’s the differences between running the query in the Logs pane of LAWS or Sentinel vs actually creating the Analytic Rule?

@Ronmarsiano - Can you check on what might be causing this?  It seems the table lookup is likely a very short time frame and if there is no event then the error occurs.  In other words, it only looks at the last 10 minutes and if the correct Sysmon event is not there it doesn't work.  Just a thought, Ron should be able to track down the reason. ;)

As mentioned in our documentation when using bag_unpack in scheduled alert rules we require using "column_ifexists"

https://docs.microsoft.com/en-us/azure/sentinel/tutorial-detect-threats-custom#define-the-rule-query-logic-and-configure-settings

This is how the rule should look like -
Event | where Source == "Microsoft-Windows-Sysmon" | extend RenderedDescription = tostring(split(RenderedDescription, ":")[0]) | extend EventData = parse_xml(EventData).DataItem.EventData.Data | mv-expand bagexpansion=array EventData | evaluate bag_unpack(EventData)
| extend NameColumn = tostring(column_ifexists("@Name",""))
| extend Key=tostring(column_ifexists("@Name","")), Value=tostring(column_ifexists("#text",""))
| evaluate pivot(Key, any(Value), TimeGenerated, Source, EventLog, Computer, EventID, RenderedDescription, MG, ManagementGroupName, Type, _ResourceId)

Solution provided


doesn't call onSubmit if complex validators not pass

Only appear then validators contains only objects

Also strange behavior here
const nameField = getField(form, 'name');
console.log(nameField.errors); // empty object {}

But after applying validators it become simple boolean
            <Form
                model={model}
                validators={{name: value => !!value}}
                onSubmit={this._save}
                validateOn="submit"
            >

Ah sorry, I just refactored this section that solves the same problem! Thank you for your insights, however! :+1:

:+1:


[Bug]: Can't install chrome-for-testing behind proxy

Steps to reproduce
We have environment behind proxy without connection to internet. And we are using nexus for downloading packages. We use default version of chrome.
in package.json
puppeteer: 23.5.3
in .puppeteerrc
{
chrome: {
downloadBaseUrl: "https://our.nexus/components/repository/google-proxy/chrome-for-testing-public"
}
}
Expected results
Success installation as with 22.15.0 version.
Actual results
npm ERR! HTTP 5003: SOCKET ERROR: read ETIMEDOUT Error: read ETIMEDOUT
npm ERR!     at TLSWrap.onStreamRead (node:internal/stream_base_commons:217:20)
npm ERR! Error: ERROR: Failed to set up chrome-headless-shell v129.0.6668.100! Set "PUPPETEER_SKIP_DOWNLOAD" env variable to skip download.
npm ERR!     at downloadBrowser (file:///home/jenkins/project/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:26:15)
npm ERR!     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
npm ERR!     at async Promise.all (index 1)
npm ERR!     at async downloadBrowsers (file:///home/jenkins/project/node_modules/puppeteer/lib/esm/puppeteer/node/install.js:84:9) {
npm ERR!   [cause]: Error: read ETIMEDOUT
npm ERR!       at TLSWrap.onStreamRead (node:internal/stream_base_commons:217:20) {
npm ERR!     errno: -110,
npm ERR!     code: 'ETIMEDOUT',
npm ERR!     syscall: 'read'
npm ERR!   }
npm ERR! }
When I enable NODE_DEBUG, there are connections outside:
pm ERR! HTTP 5003: createConnection storage.googleapis.com:443::::::::::::::::::::: [Object: null prototype] {
npm ERR!   protocol: 'https:',
npm ERR!   hostname: 'storage.googleapis.com',
and
npm ERR! HTTP 5003: createConnection googlechromelabs.github.io:443::::::::::::::::::::: [Object: null prototype] {
npm ERR!   protocol: 'https:',
npm ERR!   hostname: 'googlechromelabs.github.io',
Results for 23.6.0 are same.

Puppeteer downloads Chrome and chrome-headless-shell binaries by default. It looks like you only configure the download URL for Chrome and also you do not skip the shell download? Could you try to either specify the base download url for chrome-headless-shell or skip the download for it?

Thank you very much. I added chrome-headless-shell to config and it works.


Restructure: Update order group after pip restructure

In an effort to fulfill the re-architecture plan laid out in Python RFC #0001 the Python Buildpack order grouping needs to be updated in the following way.

Replace the current pip order-group of {python-runtime + pip} with {cpython +pip + pip-install + python-start + procfile(optional)}

In order to achieve temporary compatibility with non-restructured pipenv buildpack:

Replace the current pipenv order-group of {python-runtime + pipenv + pip} with {cpython +pipenv + pip + pip-install + python-start + procfile(optional)}

The pipenv group will be modified after it has been restructured to conform with the restructuring RFC.

If a restructured pipenv is already released, the temporary pipenv modification can be skipped

We did not change the pipenv order group because
pipenv still uses python runtime api and not the cpython api
pipenv only produces a requirements.txt during the build phase and cannot satisfy pip-install during detect

The remaining work has moved to #222 per above comment


Add to pypi for pip installation

My preference is to use poetry, which combines dependency management and pypi publishing.
We would end up with a single pyproject.toml file containing all project settings, we can also merge the tox settings as well.

Any objections or would you prefer a different approach?

I started with poetry but I ran into trouble and dropped it. I can't remember what the problem was though. Happy to try it again, so feel free to open a PR for it.
One question though, will it be possible to copy files to new filesystem locations as part of the pip installation? It looks like poetry doesn't support custom installation scripts, whereas with setup.py we can add custom functionality to copy files.
Currently, we need to copy assets/share/* over to .local/share/git-plan and scripts/git-plan to .local/bin/.


Update is not triggered if NSFRC reports move and source and destination paths are equal

Hi!
Can you describe when NSFRC sends you this message? I will probably merge this PR, because it should not harm anybody, however i'm really interested in why this is needed.
What behaviour are you experiencing when this code is turned off?

@DenHeadless Please have a look at:

http://www.openradar.me/22796598
http://www.openradar.me/22380191

There seems to be a bug in NSFRC, after updating managed object NSFRC reports move where source and destination index are equal (instead of update). This leads to incorrect animations.
I get this error only on iOS 9 / Xcode 7.x

Thanks! I've released DTModelStorage 1.3.3 with this fix.

Great, thanks a lot ;)


Function app memory consumption differences: in-process vs isolated worker process?

While porting an existing .net6 function app to .net7, I was forced to switch to isolated worker process, keeping logic (and in/out data profile) unchanged. To my surprise, I discovered that after changes in hosting pattern, the same app consumes significantly more memory.
Before: 230MB on average
After: 330MB on average.
that is +40%.

While some increase is not entirely surprising (multiple processes do need to duplicate some framework functions and enable cross-process communication somehow), I did not expect that kind of increase.
In my case, due to living on consumption plan, this effectively doubles the cost due to pricing working on 256MB memory jumps. Hence the cringe.
Questions:

Is such increase in memory expected when converting to isolated mode? If it is, it should be mentioned in the documentation as a difference.
Are there any options to "strip" the minimum required stack to reduce the required memory in runtime? If there are, it should be mentioned in the documentation.

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

ID: 2400c9cc-8142-40b6-2712-b6a0505291eb
Version Independent ID: 8cefabe1-8019-5199-0576-528a299723a8
Content: Differences between in-process and isolate worker process .NET Azure Functions
Content Source: articles/azure-functions/dotnet-isolated-in-process-differences.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

@ImrePyhvel I don't think such memory spike is expected. We would need to investigate the backend logs of the Function App instances and even might require collecting memory dumps etc. that would help in analyzing it. So, I suggest you open a ticket with our Azure Support team to investigate this further. (similar discussions: #1228, #486).
Sorry about the experience and let me know your thoughts.

Alright. Thank you for the info, Good to know that this is not an expected behavior for a general case.
In my case, I still can't 100% rule out this being partially expected as Durable Functions libs have changed as well to use worker model and it MAY have incurred some changes in dependency tree or runtime behavior, though the scale is still suspicious. I'll dig deeper and raise a ticket if needed.
Everything seems ok with docs then.

Process manager showed that majority of this 350MB was consumed not by my app, but by w3wp.exe host, dotnet process was just under 40MB.
Turned out that the host was somehow still left running in .net 4.8. Once I changed this to .net 7 isolated the memory consumption fell to 150MB on average. All good now.


proto -> pbf code generation tool

pbf is now super-fast and robust, so now we can easily make a tool for generating pbf encoding/decoding code from a proto file, which will make the library easier to use and more on par with official bindings and tools like protocol-buffers.
The generated code would look like this and would be usable out of the box.

:+1:


Add nested parameters and return values to docs

Parameter sub options are now correctly rendered.

As we discussed, the try probably doesn't need to wrap the whole block it does now.


Completion to work after build with Makefile

The cobra project name and the name of the binary when built with make should be the same to ensure completion works as intended

Hi @dypflying,
If you think this issue is valid, I am happy to submit a PR.
Thanks

Hi @sswastik02
Sorry for the late replay,  the issue is valid and I think any enhancement is valid and be glad to have it:)
Thanks

Thank you, will submit a PR shortly


Emitter events constants export

Hi! Thank you for your lib first, great work
I've wanted to use emitter events, like mentioned in README, but realized that EmitterEvents constants not exported from index file. And haven't another module in dist folder that I can use. Should it be exported from main file, or I missed something ?

I've built reproduce with error https://github.com/upteran/test-swr-imports
version of package: 3.1.2

Tested locally own fix with export, sent PR with it. Added export and types for constants, the simplest fix I think, if you have another solution, I can update it.

Hi! Thanks for the issue and PR. I will take a look at it.

You can try your fix out on v3.1.3 - thanks for the PR!


[SUPPORT][BUG][DATA_LOSS] Refresh table does not work in 0.13.1

Tips before filing an issue

Have you gone through our FAQs?

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

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

Describe the problem you faced
We are using Spark.
Please read https://issues.apache.org/jira/browse/HUDI-7034.
Copy here:
Starting from 0.13.1 spark.catalog.refreshTable works incorrectly. In 0.12.3 it works ok.
What is happening - there is a BaseHoodieTableFileIndex class in Hudi - it's saved in spark plan once the table is created. When I call to refresh, the respective method doRefresh is called. This method reloads the metadata view, and list of partitions, but now it does not refresh the list of files in partitions - this causes a bug that partitions are stuck at the first file version. So - updates are not picked up and after a couple of commits based on cleaner settings - Spark starts to throw a file not found exception.
More precisely - it looks to be broken in this commit
I can try to provide a fix.
To Reproduce
Steps to reproduce the behavior:
Reproduction is here.
Expected behavior
The refresh view should read the latest file versions instead of stuck to initial
Environment Description

Hudi version : 0.13.1

Spark version : 3.4.0(AWS) 3.3.x

Hive version :

Hadoop version :

Storage (HDFS/S3/GCS..) :

Running on Docker? (yes/no) : no

Additional context
Stacktrace
Add the stacktrace of the error.

@VitoMakarevich Thanks for raising this. We will look into it. Feel free to contribute if you are interested.

I will try to provide a fix(it should be a couple of lines) in the next couple of days, but please assess the blast radius.
e.g. if someone has a partitioned dataset created as a view, if for partition clean never happens(e.g. with fileversions retained = 2), nothing will fail(.e.g no FileNotFound as I have), but only first version of data will be visible - meaning there will be a silent dataloss.

I created a PR with fix https://github.com/apache/hudi/pull/10151

Fixed via https://github.com/apache/hudi/pull/10151.


ENH swap openmp

Checklist

[x] Used a fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

The home item is expected in the about section.
The license item is expected in the about section.
The summary item is expected in the about section.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.

@conda-forge-admin, please rerender

This build is failing for some reason that appears to be unrelated to this PR. @isuruf any ideas?

Is this section suspicious?
2020-01-01T19:08:55.3703102Z Version of gcc
2020-01-01T19:08:55.3703593Z > 1. 9.2.0 (GCC_V_9)
2020-01-01T19:08:55.3703712Z   2. 8.3.0 (GCC_V_8)
2020-01-01T19:08:55.3703917Z   3. 7.4.0 (GCC_V_7)
2020-01-01T19:08:55.3704000Z   4. 6.5.0 (GCC_V_6)
2020-01-01T19:08:55.3704080Z   5. 5.5.0 (GCC_V_5)
2020-01-01T19:08:55.3704183Z   6. 4.9.4 (GCC_V_4_9)
2020-01-01T19:08:55.3704269Z   7. 4.8.5 (OBSOLETE) (GCC_V_4_8)

OHHHHHH. I think this is a problem with the crosstool-ng dep. We cannot use 1.24 I think.

The section from the config above now has 7.3.0 in it and it is selected properly.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

license_file entry is missing, but is required.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

The home item is expected in the about section.
The license item is expected in the about section.
The summary item is expected in the about section.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.

@conda-forge-admin, please rerender

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you, but it looks like there was nothing to do.

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-webservice.
I tried to re-render for you, but it looks like there was nothing to do.

I guess the host trick will help this one as well @isuruf. Will fix!

Note to self. This linking failure is rather odd. I am not sure if it is related to the PR.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

Failed to even lint the recipe, probably because of a conda-smithy bug :cry:. This likely indicates a problem in your meta.yaml, though. To get a traceback to help figure out what's going on, install conda-smithy and run conda smithy recipe-lint . from the recipe directory.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

The home item is expected in the about section.
The license item is expected in the about section.
The summary item is expected in the about section.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.

We’re also going to need a mechanism to avoid mixing versions of libgcc-ng that don’t have libgomp split out from the llvm version of the openmp_impl. Otherwise code will seem to completely but will be silently linked to the wrong openmp.
There is more than one way to do this, including another mutex package or run_constrained. We will need repo data patches too as well I think.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

The home item is expected in the about section.
The license item is expected in the about section.
The summary item is expected in the about section.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.
The outputs section contained an unexpected subsection name. target is not a valid subsection name.

Well the paths when gfortran is invoked look wrong:
2020-01-05T17:05:35.9394864Z lrwxrwxrwx 1 conda conda   16 Jan  5 17:05 $PREFIX/lib/libgomp.so -> libgomp.so.1.0.0
2020-01-05T17:05:35.9395921Z lrwxrwxrwx 1 conda conda   16 Jan  5 17:05 $PREFIX/lib/libgomp.so.1 -> libgomp.so.1.0.0
2020-01-05T17:05:35.9396538Z -rwxrwxr-x 1 conda conda 808K Jan  5 16:56 $PREFIX/lib/libgomp.so.1.0.0

Someone, somewhere is resetting the links.
They appear correct when libgcc-ng is built
2020-01-05T16:57:24.9984656Z debug the links...
2020-01-05T16:57:24.9985928Z + echo 'debug the links...'
2020-01-05T16:57:24.9992857Z + ls -lah /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1.0.0
2020-01-05T16:57:25.0032196Z lrwxrwxrwx 1 conda conda  272 Jan  5 16:57 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so -> /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1
2020-01-05T16:57:25.0033355Z lrwxrwxrwx 1 conda conda  276 Jan  5 16:57 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1 -> /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1.0.0
2020-01-05T16:57:25.0034087Z -rwxr-xr-x 1 conda conda 808K Jan  5 16:57 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1.0.0
2020-01-05T16:57:25.0042184Z + ls -lah /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1.0.0
2020-01-05T16:57:25.0060901Z lrwxrwxrwx 1 conda conda 270 Jan  5 16:57 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so -> /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so
2020-01-05T16:57:25.0062210Z lrwxrwxrwx 1 conda conda 272 Jan  5 16:57 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1 -> /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1
2020-01-05T16:57:25.0063489Z lrwxrwxrwx 1 conda conda 276 Jan  5 16:57 /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1.0.0 -> /home/conda/feedstock_root/build_artifacts/ctng-compilers_1578240153460/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeh/lib/libgomp.so.1.0.0

Note to self for later, I need to check the links after conda build has packaged and then installed libgcc-ng. This could be a conda build / conda bug I suppose. I should also make all of the links relative right away so that conda doesn’t mess with them.

Alright, now all of the symlinks look correct except this one when gfortran is running its tests
lrwxrwxrwx 1 conda conda   29 Jan  6 13:53 $PREFIX/powerpc64le-conda_cos7-linux-gnu/sysroot/lib/libgomp.so.1 -> ../../../lib/libgomp.so.1.0.0

Alright, I checked all three compilers the links like this appear wrong.
lrwxrwxrwx 1 conda conda 29 Jan  6 14:56 $PREFIX/powerpc64le-conda_cos7-linux-gnu/sysroot/lib/libgomp.so.1 -> ../../../lib/libgomp.so.1.0.0

I don't understand how these are getting reset. Once this aspect is fixed and I add the proper mutex, I think we will be done.

Why is that link wrong? What's the expected output?

It should link to libgomp.so.1 in PREFIX/lib.

Otherwise it won’t get remapped when using llvm openmp

It is also not what the build ever actually set that link to be as far as I can tell. This aspect is especially weird IIUIC.

$PREFIX/powerpc64le-conda_cos7-linux-gnu/sysroot/lib/libgomp.so.1  is in openmp_impl right? If so, that's fine. We can have $PREFIX/powerpc64le-conda_cos7-linux-gnu/sysroot/lib/libgomp.so.1 -> $PREFIX/lib/libomp.so in llvm-openmp variant.
Btw, conda-build will change the symlinks from absolute to relative and will use realpath.

So I wanted to avoid having llvm depend on the libgcc internals.
I think the absolute to relative thing is the issue. If I make all of the links relative it should preserve them as is.

I also need to move that link to libgcc

@beckermr, is this ready now?

I want to merge the pinning and rerender first, but yeah otherwise I am happy.

Thanks @beckermr for your work here.


Bluetooth: Host: Remove bt_buf_get_cmd_complete

bt_buf_get_cmd_complete is broken due to https://github.com/zephyrproject-rtos/zephyr/issues/64158, and fixing it would require changing its signature and put even more complexity into the HCI drivers, as it would require the drivers to perform an even deeper peek into the event in order to observe the opcode.
Instead of the above, this patch removes the use of bt_buf_get_cmd_complete and adds logic to allow the host to accept command complete events in normal event buffers.
The above means performing a copy into the destination buffer, which is the original command buffer. This is a small inefficiency for now, but we should strive to redesign the host into a streaming architecture as much as possible and handle events immediately instead of retaining buffers.
This fixes https://github.com/zephyrproject-rtos/zephyr/issues/64158: Like all command completed events, the completion event for BT_HCI_OP_HOST_NUM_COMPLETED_PACKETS is now placed in normal event buffers. The the logic where the host discards this event is already present. Since it's discarded, it will not interfere with the logic around bt_dev.cmd_send.

I'm not opposed to this change, but another reason (besides being an optimisation) for the reuse is that it completely eliminates one category of bugs, namely deadlocks caused by bt_hci_cmd_send_sync() blocking in a thread that would also be needed to free up buffers for the command complete event reception.

I'm not opposed to this change, but another reason (besides being an optimisation) for the reuse is that it completely eliminates one category of bugs, namely deadlocks caused by bt_hci_cmd_send_sync() blocking in a thread that would also be needed to free up buffers for the command complete event reception.

and to continue on this thought: unless my memory fails me, the feature was originally inspired by wanting to get rid of fighting deadlocks like this. It was introduced in commit 50678b03cb468a907d15eaa94d7a824cae18988d but unfortunately the commit message doesn't seem to go into much detail besides mentioning "reducing pressure on the RX buffer pool". The feature would have its 7th anniversary in a few days :)
Btw, might be worth to do some profiling to see what kind of impact this has on the performance of Bluetooth Mesh, since that actually depends on a continuous stream of HCI commands (as opposed to ACL packets) for the transmission of data. @PavelVPV FYI.

The CI error is unrelated.

I think the deadlocking problems the host has can really only be solved a principled way: We must stop blocking the event stream from the controller. All these priority levels and extra pools and stuff are just band-aids without technical soundness.
I mean all events must be treated as ISR. And I mean the event buffer must be made available for the next event immediately without any dependencies. If an event handler must keep data around, it must have it's own buffers (it can copy data into or give to the driver for DMA), or it can choose to drop the data. The handler cannot delay the event stream.
It's also not true that deadlocks caused by bt_hci_cmd_send_sync are eliminated, as far as I understand. The reason is that the event stream is serial at transport level. The command complete can be stuck behind other events. The host cannot peek into the future of the physical UART RX wire.

Btw, might be worth to do some profiling to see what kind of impact this has on the performance of Bluetooth Mesh, since that actually depends on a continuous stream of HCI commands (as opposed to ACL packets) for the transmission of data. @PavelVPV FYI.

I cherry-picked these 4 commits to the nrf connect sdk fork and ran our performance tests. The relay node performance is not changed. Throughput varies within the margin of error.

It's also not true that deadlocks caused by bt_hci_cmd_send_sync are eliminated, as far as I understand. The reason is that the event stream is serial at transport level. The command complete can be stuck behind other events. The host cannot peek into the future of the physical UART RX wire.

That's a good point. And as a general design approach what you suggest sounds like the only safe bet. What mitigates the current situation a little bit is the concept of "discardable" events (e.g. advertising reports) but that doesn't cover everything that could be in the transport queue.


Add endpoint currently playing

I didn't managed to test for real (building an application or whatever), but the test is working.
Congrats for nice package and how you designed it! :clap: :clap: :clap:
Really straight forward to contribute without any Dart background.

This relates to #10

How does the package gets updated on here: https://pub.dartlang.org/packages/spotify#-versions-tab-
Is something that you run locally, I suppose?

Yes, exactly. I need to make a publish to pub - will do that later on.
It's usually as simple as pushing the version number and calling pub publish, but I want to fix something else first. 😄

@WesleyBatista I've just published the new version with your changes! 🎉

That's awesome! Thanks :smile:


Added names function which returns attr names for an attrs class.

Current coverage is 100% (diff: 100%)

Merging #66 into master will not change coverage

@@           master   #66   diff @@
===================================
  Files           7     7
  Lines         362   364     +2
  Methods         0     0
  Messages        0     0
  Branches       86    87     +1
===================================
+ Hits          362   364     +2
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update 5a1814f...34d7744

What would be the concrete use case of this function?

Appreciate the thought and effort, but it's kind of a one-liner.

I have to agree with Tinche; thank you but sorry I’m trying to keep the API as lean as humanly possible.

What would be the concrete use case of this function?

I needed the attribute names of the class.   I’m asking because if it’s something super common, I could  live with it.  If it’s rather obscure, you’ll have to live an own function. :)


Create snippets for Cloud Datastore page

The Datastore docs page has a whole new set of snippets for the "getting started" guide and for the concepts snippets.
Can we implement all the necessary snippets (~50) in the docs github?
Whoever plans on owning this can ping me via email and I can give you all the necessary instructions / access to the staging docs.

@waprin and @jonparrott own that

@jonparrott Care to chime in?

Following up via email. Shouldn't be a problem.

@jonparrott Closing this out since it seems handled. If you think it needs to be tracked here, feel free to re-open. If you add an issue to https://github.com/GoogleCloudPlatform/getting-started-python or elsewhere feel free to link to it here?


Fix permissions on package directories

New PR -- wasn't able to rebase the old one due to insufficient permissions. See https://github.com/shopkeep/mule-cookbook/pull/1 for more info.

@daanemanz Thanks!
@shopkeep/devops Can we take a look at this?

:+1: Straight forward and includes tests.

If it tests clean, :shipit: !


don't support custom command

my code is:
data = await conn.execute('my_key', 'xxxxxx')
'my_key' is a custom command by my self via redis-protocol,
so, is aioredis support this? THX
worng message as below:
File "ralogs_aio.py", line 16, in run
'redis://<IP_ADDRESS>:8888', minsize=5, maxsize=10)
File "/usr/local/lib/python3.7/site-packages/aioredis/pool.py", line 56, in create_pool
await pool._fill_free(override_min=False)
File "/usr/local/lib/python3.7/site-packages/aioredis/pool.py", line 391, in _fill_free
await conn.execute('ping')
aioredis.errors.ReplyError: WRONGTYPE Array of at least 2 Bulk String is required

data = await conn.execute('my_key', 'xxxxxx')

because my application don't support 'ping' command,


Remove activeAlert from redux store

It's been moved to the state of Alerts

Ah, nevermind. Turns out it's already been removed. The Alerts component just needed to be updated :)
So this can be closed


Merge overrides for the same language

$ export DFT_OVERRIDE_1=...
$ export DFT_OVERRIDE_2=...

$ difft --list-languages
Python (from override)
  ...
Python (from override)
  ...
Ada
  *.ada

Should maybe sort these alphabetically too.

They probably make more sense at the beginning, to clarify that they override the default associations.


[ask] Will we recommand discriminated union compared with general union?

Say we have a following spec, the operation would have a union response, for Foo | Bar some emitters may not serialize them easily without a discriminator property so they may fallback to binary data.
In that case does the TypeSpec would more recommand discriminated union compared with general union?
model Foo {
  foz: string;
}

model Bar {
  baz: string;
}

op test(): Foo | Bar;

find and link related issuses @markcowl


Missing Node: LayerColor: Color of Shadow Highlight node not found

Issue Description
ComfyUI shows a "Missing Node Types" warning when attempting to load workflows containing this node. Both ComfyUI_LayerStyle and ComfyUI_LayerStyle_Advance plugins appear in the startup logs and load without any apparent errors, suggesting the installations are correct. However, the specific node remains unrecognized.
Environment

ComfyUI: Latest version
Python: 3.11.9
OS: Windows
GPU: NVIDIA RTX 4070 Ti SUPER
Installed plugins:

ComfyUI_LayerStyle (Latest version)
ComfyUI_LayerStyle_Advance (Latest version)

Current Behavior
When loading a workflow containing the "LayerColor: Color of Shadow Highlight" node, ComfyUI displays the following error:
Warning: Missing Node Types
When loading the graph, the following node types were not found:
LayerColor: Color of Shadow Highlight
Verification Steps Taken

Both plugins are correctly installed
Both plugins load successfully during startup (verified in import logs)
All dependencies are installed
Plugin directory structures are verified

startup logs.txt

Question
Are there any additional setup steps required to enable this specific node type? Or could this be a potential bug in one of the plugins?

Due to the presence of the '&' character in node names, JSON parsing errors may occur in certain situations. The LayerColor: Color of Shadow&Highlight node is obsolete, please use LayerColor: Color of Shadow Highlight V2 replaces it.


How to reset wifi

When I swiped in the firmware, my Wi-Fi changed after using it for a while. How do I reset the device?

Support for reset is something each individual firmware has to implement. A lot of examples here targeting Sonoff devices implement reset by long pressing the button (since Sonoffs have a button). Check your firmware on how to do reset

@maximkulkin tks. I am from China, I still can't understand the specific example, I will check it again.


[BUG, GoodID, Android] Error on launching camera to record a video selfie

[BUG, GoodID, Android] Error on launching camera to record a video selfie
Steps:

go through the GoodID flow
accept the offer
try to upload a video selfie
observe the result

Actual result:
"Cannot read properties of null (reading 'launchCamera')" error is shown
Expected result:
The GoodID flow should work without any issues
Env:
Version 2.48.0 (205350)
Device:
Redmi 9, Android 10
Attach:

fixed here: https://github.com/GoodDollar/GoodWeb3-Mono/pull/128/commits/86e77e15f2e6ecf29812a320099bbd02117942f7

verified on dev

verified on prod by Nigerian woman


Resources

User Story
As a teacher, I want to be able to quickly find resources for homeschooling
AC
WHEN I click on "resources"
THEN I should see a list of links for educational sites and resources
Dev Notes

Do this last, it's the least important
Put educational links on this page.


Error deploying some Apps [Alpha UI]

After selecting an app to deploy and selecting the Kube from the list in the modal, this error shows in the console:
vendor.df2029a70e15dc0c59d8.bundle.js:1 ERROR TypeError: Cannot read property 'type' of null
    at RootComponent.isDraggable (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at Object.J.bn.ɵvid.n [as updateDirectives] (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at Object.updateDirectives (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at lr (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at xr (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at vr (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at lr (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at xr (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at br (vendor.df2029a70e15dc0c59d8.bundle.js:1)
    at lr (vendor.df2029a70e15dc0c59d8.bundle.js:1)

In some cases, it can repeat 30+ times.
In addition, the new modal where you select all the options for the app is now stuck "behind" the original modal in a way that you can't do anything but refresh the page.
This is the docker version of unstable-linux-x64 built around Oct 11.
Apps that didn't work: Traefik, nginx-ingress, postgres
Apps that did: kubernetes-dashboard

We are going to be removing that modal system for flat stepped forms because we have had issues with it in alpha, will test those apps with the replacement

I experienced the same problem, but not with all charts. I never saw it while trying the stolon chart, for instance, but I did have the problem with stable/postgresql.

For both 1.0 and 2.0 app creation is much more stable after updating our tiller client. I am closing this issue, and we can create specific issues in the future with an exact app example that we can re-create.


ci: add meta

fix: error cannot reuse body, request must be retried
https://github.com/docker/build-push-action/issues/452#issuecomment-1058826154


no valid rfid

Hi Jakub, thank you for writing this! i am trying to implement this and having a couple of issues with the users file i believe.
I have saved my users file in www as mentioned, which contains the following (obfuscated ID's for privacy):
24:XX:XX:XX=DorzFob
70:XX:XX:XX=DorzCard
using the service call i can send the users file to the ESP. viewing logs output i can see the following:
[01:42:57][D][rfid:165]: Fetching users list from server...
[01:42:57][D][rfid:046]: Parsing users list...
[01:42:57][D][rfid:088]: Saving users list to file...
I believe this should mean it has saved the users list correctly? there are no errors during the process, like there is if i choose a file name that doesnt exist. is this supposed to display the users?
My tags are not triggering the relay, and in Logs i am getting the following (obfuscated ID's for privacy):
[01:43:03][D][rfid:132]: Tag with id 70:XX:XX:XX found!
[01:43:03][D][rfid:133]: Setting sensor states...
[01:43:03][D][binary_sensor:033]: 'Invalid tag': Sending state ON
[01:43:03][D][text_sensor:015]: 'Last tag ID': Sending state '70:XX:XX:XX'
[01:43:03][D][text_sensor:015]: 'Last tag description': Sending state 'UNKNOWN'
[01:43:08][D][binary_sensor:033]: 'Invalid tag': Sending state OFF
[01:43:12][D][rfid:132]: Tag with id 24:XX:XX:XX found!
[01:43:12][D][rfid:133]: Setting sensor states...
[01:43:12][D][binary_sensor:033]: 'Invalid tag': Sending state ON
[01:43:12][D][text_sensor:015]: 'Last tag ID': Sending state '24:XX:XX:XX'
[01:43:12][D][text_sensor:015]: 'Last tag description': Sending state 'UNKNOWN'
[01:43:17][D][binary_sensor:033]: 'Invalid tag': Sending state OFF
is there a way to view the user ID's and names stored in the unit via homeassistant? i have tried service call esphome.door_lock_print_users_list from homeassistant and it displays a blank notification.
Any ideas?
Thank you!!

I can verify that after updating the users-file I got the same three lines. There is no extra line to confirm they're saved. But then when I use the tag it does recognise it. Plus using the print_users_list service I get a notification with the ID and name of the tag.
If you are getting a blank notification I would hazard to guess that for some reason you user list isn't updating/saving thus the empty notification too.

Yes, after you execute sending users list to esp, you only should get this three lines. After that you should have notification in Home Assistant with list of your users.
If you get blank notification, something is wrong but it requires further debugging.


include and exclude no longer accepts string patterns

Not sure if it's a breaking change or if something happened in validation.
previously reportFiles could take in glob patterns (not sure if it's micromatch)
From the docs it's hard to read what can be in an array (for include/exclude)
But converting to 6.0.5 the following gives validation errors:
issue: {
  include: [
    '**/src/**/*.{ts,tsx}',
  ],

I've updated to the following but not sure if it's the correct approach (it seems like micromatch is supported for file)
issue: {
  include: [
    '**/src/**/*.{ts,tsx}',
  ].map(file => ({ file })),

The above also applies for exclude

:tada: This issue has been resolved in version 6.0.8 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Rdrp 979 tree to list

Converting a directory tree specified as a Python dict into a list of full paths, so they can be created one by one.
Also, convert_formtype was repeated twice - removed one copy of it.
Insert any instructions to help the reviewer, e.g. "install new requirements from requirements.txt"
*Let the reviewer know what data files are needed (and if applicable, where they are to be found)
Closes or fixes

Detail the ticket(s) you are closing with this PR
Closes #

Code

[ ] Code runs The code runs on my machine and/or CDSW
[ ] Conflicts resolved There are no conflicts (I have performed a rebase if necessary)
[ ] Requirements My/our code functions according to the requirements of the ticket
[ ] Dependencies I have updated the environment yaml so it includes any new libraries I have used
[ ] Configuration file updated any high level parameters that the user may interact with have been put into the config file (and imported to the script)
[ ] Clean Code

[ ] Code is as PEP 8 compliant as I can humanly make it
[ ] Code passess flake8 linting check
[ ] Code adheres to DRY

[ ] Type hints All new functions have type hints

Documentation
Any new code includes all the following forms of documentation:

[ ] Function Documentation Docstrings within the function(s')/methods have been created

[ ] Includes Args and returns for all major functions
[ ] The docstring details data types

[ ] Updated Documentation: User and/or developer working doc has been updated

Data

[ ] All data needed to run this script is available in Dev/Test
[ ] All data is excluded from this pull request
[ ] Secrets checker pre-commit passes

Testing

[ ] Unit tests Unit tests have been created and are passing or a new ticket to create tests has been created

Peer Review Section

[ ] All requirements install from (updated) requirements.txt
[ ] Documentation has been created and is clear - check the working document
[ ] Doctrings (Google format) have been created and accurately describe the function's functionality
[ ] Unit tests pass, or if not present a new ticket to create tests has been created
[ ] Code runs The code runs on reviewer's machine and/or CDSW

Final approval (post-review)
The author has responded to my review and made changes to my satisfaction.

[ ] I recommend merging this request.

Review comments
Insert detailed comments here!
These might include, but not exclusively:

bugs that need fixing (does it work as expected? and does it work with other code
that it is likely to interact with?)
alternative methods (could it be written more efficiently or with more clarity?)
documentation improvements (does the documentation reflect how the code actually works?)
additional tests that should be implemented (do the tests effectively assure that it
works correctly?)
code style improvements (could the code be written more clearly?)
Do the changes represent a change in functionality so the version number should increase? Start a discussion if so.
As a review you can generates the same outputs from running the code

Your suggestions should be tailored to the code that you are reviewing.
Be critical and clear, but not mean. Ask questions and set actions.

Looks good so far! But I'm interested to know how you'd actually use this to create directories.
Added the directories as a dict and a main file to create them: https://github.com/ONSdigital/research-and-development/blob/RDRP-979_make_directories/make_dirs_main.py

Looks good so far! But I'm interested to know how you'd actually use this to create directories.

https://github.com/ONSdigital/research-and-development/blob/d266a871a82a77d82d0e442118ea212f3dda546c/make_dirs_main.py#L1

Hi George, it looks like you've got the changes from other branches in here as well- so presumably we can't merge in this one until we've merged in the other branches (as doing so will put in those changes too.

Yes, unfortunately. Let's wait for s3 mods to be merged.


🐛 [firebase_crashlytics] Android - Updating the app with firebase_crashlytics 0.2.0-dev5 causing android.database.sqlite.SQLiteException: table event_payloads already exists

Bug report
Some of my app's users started reporting the following error after updating to a version using firebase_crashlytics 0.2.0-dev.5:
Fatal Exception: android.database.sqlite.SQLiteException: table event_payloads already exists (code 1 SQLITE_ERROR[1]): , while compiling: CREATE TABLE event_payloads (sequence_num INTEGER NOT NULL, event_id INTEGER NOT NULL, bytes BLOB NOT NULL,FOREIGN KEY (event_id) REFERENCES events(_id) ON DELETE CASCADE,PRIMARY KEY (sequence_num, event_id))

Steps to reproduce
Most (possibly all) cases happened after the app was updated. New installations seem fine, which makes sense given the type of error.
Expected behavior
According to this report on Firebase Android SDK, the bug was fixed in crashlytics 17.0.1. The current BoM for firebase_core is 25.3.1, which maps to crashlytics 17.0.0.

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
[✓] Flutter (Channel stable, 1.20.2, on Mac OS X 10.15.6 19G2021, locale en-BR)
    • Flutter version 1.20.2 at /Users/rafaelmatsunaga/flutter
    • Framework revision bbfbf1770c (4 weeks ago), 2020-08-13 08:33:09 -0700
    • Engine revision 9d5b21729f
    • Dart version 2.9.1

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/rafaelmatsunaga/Library/Android/sdk
    • Platform android-29, build-tools 30.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.7)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.7, Build version 11E801a
    • CocoaPods version 1.9.3

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.49.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.14.1

[!] Connected device
    ! No devices available

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 2.9.1
Flutter SDK 1.20.2
mangos 2020.09.10+20091001

dependencies:
- advertising_id 0.9.2 [flutter]
- cached_network_image 2.3.1 [flutter flutter_cache_manager octo_image]
- camera 0.5.7+5 [flutter]
- carousel_slider 2.2.1 [flutter]
- cloud_firestore 0.14.0+2 [flutter meta quiver firebase_core firebase_core_platform_interface cloud_firestore_platform_interface cloud_firestore_web]
- cloud_functions 0.6.0 [meta flutter firebase_core cloud_functions_platform_interface cloud_functions_web]
- data_connection_checker 0.3.4
- device_info 0.4.2+4 [flutter]
- dotted_border 1.0.6 [flutter path_drawing]
- equatable 1.2.5 [collection meta]
- fast_qr_reader_view 0.1.8 [flutter]
- firebase_analytics 6.0.0 [meta flutter firebase_core firebase_analytics_web firebase_analytics_platform_interface]
- firebase_auth 0.18.0+1 [meta firebase_core firebase_core_platform_interface firebase_auth_platform_interface firebase_auth_web flutter]
- firebase_auth_oauth 0.2.1 [flutter firebase_auth_oauth_platform_interface firebase_auth_oauth_web firebase_auth firebase_core]
- firebase_core 0.5.0 [firebase_core_platform_interface flutter quiver meta firebase_core_web]
- firebase_crashlytics 0.2.0-dev.5 [flutter stack_trace firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface]
- firebase_dynamic_links 0.6.0 [flutter firebase_core]
- firebase_in_app_messaging 0.2.0+1 [meta flutter firebase_core]
- firebase_messaging 7.0.0 [meta platform flutter firebase_core]
- firebase_performance 0.4.0 [flutter firebase_core]
- firebase_remote_config 0.4.0 [flutter firebase_core]
- firebase_storage 4.0.0 [flutter firebase_core]
- flutter 0.0.0 [characters collection meta typed_data vector_math sky_engine]
- flutter_bloc 6.0.5 [flutter bloc provider]
- flutter_cache_manager 1.4.1 [flutter path_provider uuid http path sqflite pedantic clock file rxdart]
- flutter_facebook_login 3.0.0 [flutter collection]
- flutter_svg 0.18.1 [path_drawing xml vector_math meta flutter]
- flutter_typeahead 1.8.8 [flutter flutter_keyboard_visibility]
- flutter_widget_from_html_core 0.5.0+3 [flutter html]
- geocoding 1.0.3 [flutter geocoding_platform_interface url_launcher]
- geohash 0.2.1
- geolocator 6.0.0+4 [flutter geolocator_platform_interface]
- google_maps_flutter 0.5.31 [flutter flutter_plugin_android_lifecycle google_maps_flutter_platform_interface]
- google_sign_in 4.5.3 [google_sign_in_platform_interface flutter meta google_sign_in_web]
- http 0.12.2 [http_parser path pedantic]
- image 2.1.14 [archive xml]
- intl 0.16.1 [path]
- map_launcher 0.12.2 [flutter flutter_svg]
- package_info 0.4.1 [flutter]
- path_provider 1.6.14 [flutter path_provider_platform_interface path_provider_macos path_provider_linux]
- rxdart 0.24.1
- share 0.6.4+3 [meta flutter]
- sprintf 4.1.0
- unorm_dart 0.1.2
- url_launcher 5.5.2 [flutter url_launcher_platform_interface url_launcher_web url_launcher_linux url_launcher_macos]
- video_player 0.10.11+2 [meta video_player_platform_interface video_player_web flutter]

dev dependencies:
- flutter_launcher_icons 0.7.5 [image args yaml]
- flutter_launcher_name 0.0.1 [flutter yaml]
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters charcode collection matcher meta source_span stream_channel string_scanner term_glyph typed_data]
- test 1.15.2 [analyzer async boolean_selector coverage http http_multi_server io js node_preamble package_config path pedantic pool shelf shelf_packages_handler shelf_static shelf_web_socket source_span stack_trace stream_channel typed_data web_socket_channel webkit_inspection_protocol yaml test_api test_core]

transitive dependencies:
- _fe_analyzer_shared 6.0.0 [meta]
- analyzer 0.39.16 [_fe_analyzer_shared args charcode cli_util collection convert crypto glob html meta package_config path pub_semver source_span watcher yaml]
- archive 2.0.13 [crypto args path]
- args 1.6.0
- async 2.4.2 [collection]
- bloc 6.0.1 [meta]
- boolean_selector 2.0.0 [source_span string_scanner]
- characters 1.0.0
- charcode 1.1.3
- cli_util 0.1.4 [path]
- clock 1.0.1 [meta]
- cloud_firestore_platform_interface 2.0.1 [flutter meta collection firebase_core plugin_platform_interface]
- cloud_firestore_web 0.2.0+1 [flutter flutter_web_plugins firebase http_parser meta firebase_core cloud_firestore_platform_interface js]
- cloud_functions_platform_interface 2.0.0 [flutter meta firebase_core plugin_platform_interface]
- cloud_functions_web 2.0.0 [cloud_functions_platform_interface flutter flutter_web_plugins firebase http_parser meta]
- collection 1.14.13
- convert 2.1.1 [charcode typed_data]
- coverage 0.14.0 [args logging package_config path source_maps stack_trace vm_service]
- crypto 2.1.5 [collection convert typed_data]
- csslib 0.16.2 [source_span]
- fake_async 1.1.0 [clock collection]
- file 5.2.1 [intl meta path]
- firebase 7.3.0 [http http_parser js]
- firebase_analytics_platform_interface 1.0.3 [flutter meta]
- firebase_analytics_web 0.1.1 [flutter flutter_web_plugins firebase firebase_analytics_platform_interface meta]
- firebase_auth_oauth_platform_interface 0.2.1 [flutter firebase_auth firebase_core]
- firebase_auth_oauth_web 0.2.1 [flutter flutter_web_plugins firebase_auth_oauth_platform_interface firebase js firebase_auth firebase_core]
- firebase_auth_platform_interface 2.0.1 [flutter meta firebase_core plugin_platform_interface]
- firebase_auth_web 0.3.0+1 [flutter flutter_web_plugins firebase meta http_parser intl firebase_core firebase_auth_platform_interface js]
- firebase_core_platform_interface 2.0.0 [flutter meta plugin_platform_interface quiver]
- firebase_core_web 0.2.0 [firebase firebase_core_platform_interface flutter flutter_web_plugins meta js]
- firebase_crashlytics_platform_interface 1.0.0-dev.2 [flutter meta collection firebase_core plugin_platform_interface]
- flutter_blurhash 0.5.0 [flutter meta]
- flutter_keyboard_visibility 3.2.1 [flutter]
- flutter_plugin_android_lifecycle 1.0.8 [flutter]
- flutter_web_plugins 0.0.0 [flutter characters collection meta typed_data vector_math]
- geocoding_platform_interface 1.0.0+3 [flutter meta plugin_platform_interface]
- geolocator_platform_interface 1.0.4 [flutter meta plugin_platform_interface vector_math]
- glob 1.2.0 [async collection node_io path pedantic string_scanner]
- google_maps_flutter_platform_interface 1.0.4 [flutter meta plugin_platform_interface stream_transform]
- google_sign_in_platform_interface 1.1.2 [flutter meta quiver]
- google_sign_in_web 0.9.1+1 [google_sign_in_platform_interface flutter flutter_web_plugins meta js]
- html 0.14.0+3 [csslib source_span]
- http_multi_server 2.2.0 [async]
- http_parser 3.1.4 [charcode collection source_span string_scanner typed_data]
- io 0.3.4 [charcode meta path string_scanner]
- js 0.6.2
- logging 0.11.4
- matcher 0.12.8 [stack_trace]
- meta 1.1.8
- mime 0.9.7
- nested 0.0.4 [flutter]
- node_interop 1.1.1 [js]
- node_io 1.1.1 [node_interop path]
- node_preamble 1.4.12
- octo_image 0.2.1 [flutter flutter_blurhash]
- package_config 1.9.3 [path charcode]
- path 1.7.0
- path_drawing 0.4.1+1 [vector_math meta path_parsing flutter]
- path_parsing 0.1.4 [vector_math meta]
- path_provider_linux 0.0.1+2 [path xdg_directories path_provider_platform_interface flutter]
- path_provider_macos 0.0.4+3 [flutter]
- path_provider_platform_interface 1.0.2 [flutter meta platform plugin_platform_interface]
- pedantic 1.9.0
- petitparser 3.0.4 [meta]
- platform 2.2.1
- platform_detect 1.4.0 [meta pub_semver]
- plugin_platform_interface 1.0.2 [meta]
- pool 1.4.0 [async stack_trace]
- process 3.0.13 [file intl meta path platform]
- provider 4.3.2 [flutter nested collection]
- pub_semver 1.4.4 [collection]
- quiver 2.1.3 [matcher meta]
- shelf 0.7.7 [async collection http_parser path stack_trace stream_channel]
- shelf_packages_handler 2.0.0 [path shelf shelf_static]
- shelf_static 0.2.8 [convert http_parser mime path shelf]
- shelf_web_socket 0.2.3 [shelf web_socket_channel stream_channel]
- sky_engine 0.0.99
- source_map_stack_trace 2.0.0 [path stack_trace source_maps]
- source_maps 0.10.9 [source_span]
- source_span 1.7.0 [charcode collection meta path term_glyph]
- sqflite 1.3.1 [flutter sqflite_common path]
- sqflite_common 1.0.2+1 [synchronized path meta]
- stack_trace 1.9.5 [path]
- stream_channel 2.0.0 [async]
- stream_transform 1.2.0
- string_scanner 1.0.5 [charcode meta source_span]
- synchronized 2.2.0+2
- term_glyph 1.1.0
- test_api 0.2.17 [async boolean_selector collection meta path source_span stack_trace stream_channel string_scanner term_glyph matcher]
- test_core 0.3.10 [analyzer async args boolean_selector collection coverage glob io meta package_config path pedantic pool source_map_stack_trace source_maps source_span stack_trace stream_channel vm_service yaml matcher test_api]
- typed_data 1.2.0 [collection]
- url_launcher_linux 0.0.1+1 [flutter]
- url_launcher_macos 0.0.1+7 [flutter]
- url_launcher_platform_interface 1.0.8 [flutter meta plugin_platform_interface]
- url_launcher_web 0.1.3+1 [url_launcher_platform_interface platform_detect flutter flutter_web_plugins meta]
- uuid 2.2.0 [crypto convert]
- vector_math 2.0.8
- video_player_platform_interface 2.0.2 [flutter meta]
- video_player_web 0.1.3+2 [flutter flutter_web_plugins meta video_player_platform_interface]
- vm_service 4.2.0 [meta]
- watcher 0.9.7+15 [async path pedantic]
- web_socket_channel 1.1.0 [async crypto stream_channel]
- webkit_inspection_protocol 0.7.3 [logging]
- xdg_directories 0.1.0 [path process flutter]
- xml 4.2.0 [collection convert meta petitparser]
- yaml 2.2.1 [charcode collection string_scanner source_span]

As a workaround, overriding FirebaseSDKVersion to version 25.4.1 (first version with crashlytics 17.0.1) seems to fix the problem.
Just add the following to android/app/build.gradle:
project.ext {
    set('FlutterFire', [
            FirebaseSDKVersion: '25.4.1'
    ])
}

Should be closed for now, as firebase_core 0.5.1 now sets FirebaseSDKVersion=25.12.0.
Thank you very much @red42 for your valuable suggestions!

It seems to be fixed indeed! Thank you!


chore: disable GHA for changesets PR

Description
We don't want to run tests in "Version Packages" PR from changesets and ideally, we want to be able merge "Version Packages" immediately.

replaced yarn cache functionality, the old one never could find cache folder
skip GHA
skip Jenkins steps in build
add [skip ci] to PR title automatically

test run - https://github.com/toptal/picasso/runs/4235712965?check_suite_focus=true
test changeset PR - https://github.com/toptal/picasso/pull/2251
Screenshots

Review

[ ] Read CONTRIBUTING.md and Component API principles
[ ] Annotate all props in component with documentation
[ ] Create examples for component
[ ] Ensure that deployed demo has expected results and good examples
[ ] Ensure that tests pass by running yarn test
[ ] Ensure that visuals tests pass by running yarn test:visual. If not - check the documentation how to fix visual tests
[ ] Ensure the changed/created components have not caused accessibility issues. How to use accessibility plugin in storybook.

PR commands

List of available commands:

@toptal-bot run all - Run whole pipeline
@toptal-bot run build - Check build
@toptal-bot run visual - Run visual tests
@toptal-bot run deploy:documentation - Deploy documentation
@toptal-bot run package:alpha-release - Release alpha version

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit:  to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

@toptal-bot run visual

@toptal-bot run all


refactoring and updates

Got a bit sidetracked, but this should fix #1 and #3
Closes #1
Closes #3

Hey, thanks for taking the time to fix #1 and #3!
Your PR introduces a lot of other changes though, and changes the whole repo structure; This makes it very hard to review it. Can you split it into several commits?
Also, some changes that I don't agree with:

hand-rolling query-string – I think it provides very nice defaults, is there a specific reason why you removed it?
With the GTFS-RT fields, did you switch from underscores to camel casing because gtfs-realtime-bindings exposes the fields this way? I really liked before that they directly match the GTFS-RT spec.
some stylistic changes which make Git diffs noisier, e.g. export function

hand-rolling query-string – I think it provides very nice defaults, is there a specific reason why you removed it?

to remove the dependency given it's only used in one place :upside_down_face:, I'll revert it when I get around to it

did you switch from underscores to camel casing because gtfs-realtime-bindings exposes the fields this way?

yes

some stylistic changes which make Git diffs noisier, e.g. export function

yes sorry, personal preferences, I'll remove them along with the revert above (again when and if I get around to it)


Rfdocs 02

Update plugin to work with updated rfdocs.org

@aaltat

Why did yo change in rfassistant/__init__.py to rfdocs_update_url = "http://<IP_ADDRESS>:8000/api/v1/"

Hmmm, could it be that the setting file:
"rfdocs_update_url": "http://rfdocs.org/dataset/download?",

is not actually used?

@aaltat , thank you. Please see https://github.com/andriyko/sublime-robot-framework-assistant/pull/36

I see, thanks from update.
Is the setting file:
"rfdocs_update_url": "http://rfdocs.org/dataset/download?",

then not used?

@aaltat The options from settings files are used. All the data is fetched from API. Now the API on rfdocs.org is open. It is here: http://rfdocs.org/api/v1/ (will add more instruction how to use it and how to build queries).
Please note that manifest downloader does not handle error responses correctly (404, etc), so if you define some another valid url for  rfdocs_update_url eg : "http://rfdocs.org/api/babar" it will pass silently.
Also I am going to put rfdocs.org source code soon. I think it will be here https://github.com/andriyko/rfdocs.

I understand and thanks from explanation.


Image manager and return NSData for GIFs

Remember to update changelog,d :)

rc

@gyfelton another look?

:shipit:


Kill Count for demonic gorrillas

Some sort of way to track kill count for gorillas would be nice to have as currently only way to know is the nieves grave. Would be nice if could do a chat message like other bosses have.

We cant track this accurately (as there is no update message on kill) so this cannot be implemented in a way it would be useful (and they are not boss too)


DP-791 Rename event_streams to event-streams

Rename the event_streams command to event-streams for consistency with the rest of the CLI, which uses dash to separate words in multi-word commands.

While we are at renaming and restructuring this, how about we create a single command aginst the events? this would make it easier to understand and group them logically, like this:

origo events create
origo events ls
origo events delete
origo events put
origo events stat


Fix give batched messages wrong packet id.

Fixes #633
Master Issue: #633
Motivation
See #633 to get the details.
Modifications

Fix the wrong logic for giving packet id.

Verifying this change

[x] Make sure that the change passes the CI checks.

Add a new test to cover this change.

Documentation

[x] no-need-doc

Codecov Report

Merging #634 (5ffff19) into master (4a8be74) will increase coverage by 0.17%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             master     #634      +/-   ##
============================================
+ Coverage     77.95%   78.13%   +0.17%
- Complexity      898      903       +5
============================================
  Files           108      108
  Lines          3879     3878       -1
  Branches        267      267
============================================
+ Hits           3024     3030       +6
+ Misses          694      689       -5
+ Partials        161      159       -2

Impacted Files
Coverage Δ

...ive/pulsar/handlers/mqtt/support/MQTTConsumer.java
97.01% <100.00%> (-0.05%)
:arrow_down:

...ar/handlers/mqtt/utils/PulsarMessageConverter.java
85.71% <100.00%> (ø)

...pulsar/handlers/mqtt/MQTTCommonInboundHandler.java
82.35% <0.00%> (-1.48%)
:arrow_down:

...pulsar/handlers/mqtt/adapter/MQTTProxyAdapter.java
86.60% <0.00%> (+1.78%)
:arrow_up:

...s/mqtt/proxy/MQTTProxyProtocolMethodProcessor.java
80.95% <0.00%> (+2.19%)
:arrow_up:

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 4a8be74...5ffff19. Read the comment docs.


Feature Request: HDR Filters & Effects

[ ] Polarizing filters
[ ] ND filter
[ ] Neutral density (ND) filter
[ ] graduated ND filter
[ ] Cold/warm filter
[ ] Color filter
[ ] CC filters
[ ] Black and white filter
[ ] Hard GND filter
[ ] RGND filter
[ ] Blur filter
[ ] Retro Film filter
[ ] [Comic/Paint filter
[ ] Sketch filter

More Filter
https://docs.blender.org/manual/en/latest/compositing/types/filter/index.html
https://docs.gimp.org/en/filters.html
Filter effects: https://www.bhphotovideo.com/explora/photography/buying-guide/a-guide-to-filters-for-lenses
Filter effects: https://www.kentfaith.com/blog/11-photography-filters-guide-and-use

Mostly all of this filters already presented in the app


updated govulncheck

Updated govulncheck to match go.mod and added name.

@taigrr this PR is completed to check against the go.mod version rather than against the latest go version


fix: Update to readme's following telemetry addition

Following #648 this PR is a fix for the modules with current broken pipelines

Pipelines

Closed as completed elsewhere


Overview of requests based on interviews

https://drive.google.com/drive/folders/15zNLFTT3HHcsZOVbtYovQRXoVHvBmQOY

This is a place for us to track whether or not requested datasets have been added to KSR either via Searchworks or via the neo4j instance.


Document object mode

The object mode is the one that exposes most valuable information, especially needed when parsing with ns() enabled.
Tasks

[ ] document object mode
[ ] document change hooks in object mode
[ ] document warning / how it works section (object cannot be stored)

Closed via https://github.com/nikku/saxen/commit/5e78bd08e5b446aca4c2c80207bd34d081575855.


Unable to use forever with upstart on Ubuntu

I am trying to use forever v0.13.0 with Ubuntu 13.10 and upstart. I've found several blogs and stackoverflow posts explaining how to do this. However it always fails to run. It logs the error:
warn:    --minUptime not set. Defaulting to: 1000ms
warn:    --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info:    Forever processing file: /home/rich/simple-server/simple.js
fs.js:439
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
^
Error: EROFS, read-only file system '/etc/forever/sNX9.log'
at Object.fs.openSync (fs.js:439:18)
at Object.forever.startDaemon (/home/rich/npm/lib/node_modules/forever/lib/forever.js:484:14)
at /home/rich/npm/lib/node_modules/forever/lib/forever/cli.js:270:13
at /home/rich/npm/lib/node_modules/forever/lib/forever/cli.js:157:5
at /home/rich/npm/lib/node_modules/forever/lib/forever.js:436:11
at Object.oncomplete (fs.js:108:15)
I have tried many different directories, all marked read/write for all users. It doesn't matter what directory I use I get this same error. I have tried this with the tiniest possible node server with no node_module dependencies. The directory shown in the example above has 777 chmod rights.
The above error was generated with node.js v0.10.34. But I've also tried 0.10.25 on another system. Same problem. My upstart script simple has:
start on startup
env FOREVER_ROOT=/etc/forever
exec /home/rich/npm/bin/forever start  /home/rich/simple-server/simple.js
I have used other more complex scripts as well, but no matter what forever is unable to write its data despite the directory being accessible to all users. Of course I've tried the default directory forever uses as well with the same results. I've even added sudo command between the exec and the forever command. No joy.
This seems like a bug in the module. Since other people are claiming forever can be used with upstart I have to assume this is something specific to version 0.13.0. For the sake of completeness, the test app I'm trying to run is:
var sys = require("sys"),
my_http = require("http");
my_http.createServer(function(request,response){
sys.puts("I got kicked");
response.writeHeader(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8080);
sys.puts("Server Running on 8080");

I had similar issues.
If I was standing in the folder of the node js file I want to run everything worked well.
When I tried executing with upstart I had to write the full path to the node script I want to run and then it failed.
This is the only way I've been able to run it
start on startup
chdir /var/www/myfolder/server
exec forever start -a -w -o /var/log/twebout.log -e /var/log/tweberr.log main.js
I am not changing my env root so it is running from ~/.forever/
Everything is default, so to say.
I can use forever logs 0 (to give an example)
the way I run it now also means that -w is working from the chdir path.

@richsad, I think this is an upstart script problem (not a forever one).

Error: EROFS, read-only file system '/etc/forever/sNX9.log'
Try using start on filesystem instead of start on startup (so that forever can actually write to the log file).


Benchmarks for cosmologies with curvature

We currently don't have any benchmarks for cosmologies with curvature. We need at least a distance check to start with.

My mistake -  we already have some of these.


🔋  Allow capacity team access to AWS account Cost Explorer and usage reports

User Story
As a capacity manager
I expect to be able to view and download cost reports from Cloud based services
So that this data can be reviewed, analysed and improvements can be suggested
Value / Purpose
Provide access and visibility to capacity team for billing data, this information can be exported out to CSV.

Useful Contacts
Rich B, Gary
Additional Information
We need to decide on how we give access. IAM across multiple accounts (we would need code to manage and we would need to manage their account 🙁) or SSO against all, but requires GitHub accounts for their team( which may not be a bad thing considering how much information that will open up)
AWS Cost Explorer guide
Definition of Done

[ ] A capacity team member has been given access and has been shown how to gain access.

Consider the use of the root account in this piece of work.

Access for Neil Pegg and or Team


Added CallbackPositionProperty

Description
This is a proposal for a CallbackPositionProperty, without making TS expose Property types as generics as mentioned here
Issue number and link

#8944
#5534
#2597

Testing plan
Added specific spec file with 100% coverage on the CallbackPositionProperty class.
Updated PathVizualizer spec file to allow CallbackPositionProperty sub-sampling.
Added a specific sandcastle demo.
Author checklist

[x] I have submitted a Contributor License Agreement
[x] I have added my name to CONTRIBUTORS.md
[x] I have updated CHANGES.md with a short summary of my change
[x] I have added or updated unit tests to ensure consistent code coverage
[x] I have updated the inline documentation, and included code examples where relevant
[x] I have performed a self-review of my code

Thanks @jfayot!
We'll review this shortly, likely early next week. If we merge, it will go into the October 1 release.

This is ready :eyes:

Thank you for your patience @jfayot! I will be able to do a full review tomorrow.

Thanks for the review @ggetz ! Updated according to your comments. Should I resolve conflicts ?

Resolved conflicts, should be ready to merge, but you'd better double check, I'm not a git expert...

Looks great! Thanks again @jfayot!


PR for Docker, misc changes

Summary
Docker
Docker integration is included. Code changes were also made using this assumption, although they should be backwards compatible for users not using Docker. Should we assume users will be on docker?
docker-compose.yml contains the necessary setup to get rabbitmq, postgres, and the web container build by Dockerfile running. Everything can be run using:
$ docker-compose build
$ docker-compose up

Additionally, the web container is configured so it uses by default the -d flag but this can be overriden at runtime using the command args of docker since ENTRYPOINT is defined.
The current docker-compose.yml mounts the volume so that development is easier. In the future though, this should be changed so that a production compose script can be imported to overwrite this and use COPY instead (docker-compose just gained this feature).
Lastly, the startup script for the container docker-entrypoint.sh copies most of the logic from run.sh, but is adjusted for running only the web relevant things. It also contains some logic to use python manage.py runserver when development mode is detected to support code live reload.
Important hosts changes
To support docker, I don't think its possible to refer everything to localhost anymore. It also is less portable. Instead, the host for rabbitmq is rabbitmq and the host for callbacks when a public ip is not available is crowd_host. The intent is that these are set in /etc/hosts either to localhost or to the docker ip address.
Some cleanup
Added stuff to .gitignore, and fixed some PEP8 style while reading through the code base. I also added code to auto parse AWS keys from environment variables, which are overwritten by private_settings.py if its present.

This looks great! I made a few minor comments throughout, so let's resolve those and then I'm happy to merge this. Yay for Docker support!

Made updates to the scripts and tested them. Mostly on the startup scripts and configuration to support the foreground/daemon stuff.

Looks good--I'll go ahead and merge.


Is it possible to define branch protections and base checks, allowing additional checks to be defined at the repo level?

We'd like to set up a defined branch protection baseline that all repositories must adhere to, for example:
optConfig:
  # All repos will use this strategy by default
  optOutStrategy: true
  # Do not allow repos to override this config
  disableRepoOverride: true

requireApproval: true
approvalCount: 1
requireSignedCommits: true

# The global status checks that must pass in order for a merge to be accepted
requireStatusChecks:
  - context: "Security Checks"

We'd like to allow teams to configure their own checks on top of this, without having to redefine the mandatory checks nor being able to override the other repo settings. For example, when the below is applied at the repo level, the settings would configure the repo to have three required checks; Security Checks, Lint, and Compile.
requireStatusChecks:
  - context: "Lint"
  - context: "Compile"

Is this currently possible to achieve via allstar?

@testworksau The current behavior is to override the org-level list, not merge. The point was for "disable override = false" to allow removing checks. There was some discussion with the original code (#147) on which way to go.
I could see this working in different ways, happy to consider any proposals for new options.
The current way to allow more required checks, but keep "disable override = true", would be to create a <repo>/branch_protection.yaml file in your .allstar repo, and put the full list there. see https://github.com/ossf/allstar#repo-policy-configurations-in-the-org-repo

Also, Welcome! Please take a look at #253 if you have a chance. =)

Thanks @jeffmendoza; good to know there's a way to achieve this, even if not completely ideal for our situation.
For context, our org is made up of a number of teams, who each may own hundreds of repos, and require different status checks to complete, along the ones our infosec team consider to be mandatory. We will end up with thousands of repos in our GitHub org, so a few thousand folders in the .allstar repo won't scale well (nor would the PR workflow overhead).
I don't think the optimum approach would be for these teams to have a duplicate file in each of their repos either; they would probably want to source that Checks baseConfig from a central location, so it can be centrally managed. I'd imagine that this could either be done via a team based folder in the .allstar repo, or from a separate repo that the team owns.
Anyhow, just thinking out loud at the moment; I'll provide some feedback in the google form linked above, tomorrow 👍🏼


DefaultAzureCredential() -> DefaultAzureCredential(exclude_managed_identity=True)

This runs find-replace against samples before they are run.  @xiangyan99 for FYI.
@weshaggard , the problem here is that we need to exclude managed identity to get these samples to work properly. That isn't configuarable via environment right now, so the alternative is to do something like this. We do NOT want to have the samples code at rest to contain the replacement string, as we don't want customers to go that route to begin with.

Closing for now. Looking like the environment variable option will work.