feat(treesitter): include parent tree in addition to injected tree for Treesitter node selections

I often have a situation where I want treesitter node selections to select outside the injections.
Here's a screenshot from :lua require("flash").treesitter({ highlight = { backdrop = true } }) in a markdown code block.

Note that the similar features are available in https://github.com/ggandor/leap-ast.nvim and https://github.com/mfussenegger/nvim-treehopper .

Implemented a proper fix for this. ty!


Can not connect to server via Docker

Hi,
I set everything up, but when I open the adress, the browser says "Can not connect".
https://i.ibb.co/RvzPhCD/Bildschirmfoto-2022-11-08-um-22-31-36.png
https://i.ibb.co/DMrJ8dv/Bildschirmfoto-2022-11-08-um-22-31-44.png
How can I connect to the port, when NR is running in a Docker container with IP like http://<IP_ADDRESS>:6335/

Are you running NodeRed in docker using a bridge network? Try using the host network if you can. This worked for me.


Dracula theme for Calibre

Dark theme based on color palette of Dracula for Calibre E-book reader
Link to repository - https://github.com/foxtrot222/draculathemeforcalibre

Hey, that's very cool! ✨
I just sent you an invitation to join the organization.
I also cloned your repository for Dracula's organization, so you can go ahead and delete or archive yours:

Your repository.
New repository.

Thanks for building this! 🎉


Parameters that are passed to a .bat file are being cut off after a newline

Hello,
An issue I'm having is that  I am trying to pass the commit message from my payload to a batch script as a parameter.
This is what I have in my hooks.json for the argument:
 "pass-arguments-to-command":
    [
      {
        "source": "payload",
        "name": "head_commit.message"
      }
    ],

This is what I see when the webhook is triggered:
C:/Projects/Project/test.bat) with arguments ["C:/Projects/Project/test.bat" "Test\n\nCommit"] and environment [] using C:/Projects/Project as cwd
When I run the .bat file, I print out the arguments, and all I get back is "Test" when I would like to see "Test\n\nCommit". It seems the parameters are being cutoff at the new line. If I change the text to "Test\n\nCommit" I get "Test\n\nCommit".
Also when I run the script alone and type out the parameter, I get my expected output of "Test\n\nCommit".
I'm really not sure what to do at this point and was hoping I could have some guidance.
Thank you.

Can you use pass-environment-to-command instead?
"pass-environment-to-command":
[
  {
    "source": "payload",
    "name": "head_commit.message",
    "envname": "COMMIT_MESSAGE"
  }
]

When using the pass-to-environment-command, I get the same result. It just says "Test"

I didn't catch what you were saying before, but I was able to replicate the issue.
The root cause is that the JSON data "Test\n\nCommit" will be decoded (according to the JSON spec) as containing newline control characters.  I didn't realize that until today (learned something new!).  If you want to avoid the control characters, you must escape the newlines ("Test\\n\\nCommit").

Sorry, I know I'm not being very clear. I can manually escape them when I'm sending my requests in postman. I am using Gitkraken and it adds the two new lines automatically between the commit message and the description.

This will be "Changes\n\nChanges description" in the payload.
Is there anyway I can parse it myself and then send it to the batch script?

Is there anyway I can parse it myself and then send it to the batch script?

Your best option is to ditch the batch script (see Stack Overflow thread).
I tested a simple Go program, and it handles the newlines as expected.
I assumed PowerShell wasn't an option since executing a PS script is a pain, but it actually works!
hooks.json
[
  {
    "id": "test",
    "pass-arguments-to-command": [
      {
        "source": "string",
        "name": "-NoProfile"
      },
      {
        "source": "string",
        "name": "-NonInteractive"
      },
      {
        "source": "string",
        "name": "-File"
      },
      {
        "source": "string",
        "name": "test.ps1"
      },
      {
        "source": "payload",
        "name": "message"
      }
    ],
    "execute-command": "C:/Windows/system32/WindowsPowerShell/v1.0/powershell.exe"
  }
]

test.ps1
"Result: " + $args[0] | Write-Host

Output
[webhook] 2020/11/25 09:22:07 [8eff49] incoming HTTP POST request from <IP_ADDRESS>:63850
[webhook] 2020/11/25 09:22:07 [8eff49] test got matched
[webhook] 2020/11/25 09:22:07 [8eff49] test hook triggered successfully
> [8eff49] POST /hooks/test
> [8eff49] Accept: */*
> [8eff49] Content-Length: 31
> [8eff49] Content-Type: application/json
> [8eff49] User-Agent: curl/7.55.1
> [8eff49] id:
> [8eff49] {
> [8eff49]      "message": "Title\n\nBody"
> [8eff49] }

< [8eff49]
[webhook] 2020/11/25 09:22:07 [8eff49] executing C:/Windows/system32/WindowsPowerShell/v1.0/powershell.exe (C:/Windows/system32/WindowsPowerShell/v1.0/powershell.exe) with arguments ["C:/Windows/system32/WindowsPowerShell/v1.0/powershell.exe" "-NoProfile" "-NonInteractive" "-File" "test.ps1" "Title\n\nBody"] and environment [] using  as cwd
[webhook] 2020/11/25 09:22:07 [8eff49] 200 | 0 B | 2.0016ms | <IP_ADDRESS>:9000 | POST /hooks/test
[webhook] 2020/11/25 09:22:08 [8eff49] command output: Result: Title

Body

[webhook] 2020/11/25 09:22:08 [8eff49] finished handling test

Just got a chance to try it and it worked! Thank you so much!


import_label passes wrong parameter

It does:
def import_label(source):
	data = {
		"name": source['name'],
		"color": source['color']
	}

	result_label = send_request('target', "labels", source)

but it should do:
	result_label = send_request('target', "labels", data)

I made some additional changes to the script and forked it in https://github.com/alex-zadara/github-issues-import. The include, for example, migrating also some of issues's events (like assigned, unassigned, referenced, cross-referenced) etc. See if you want to pull some of these.


As A DevOp I want tests to run in parallel in Travis

@LocoDelAssembly this is fairly high priority.
Previously I had tests running, but not summarizing correctly, i.e.:

only report success when all parallel bits finish
summarize all failed tests

May mean a bash script to handle the summary, was unclear.

@mjy @jlpereira yesterday I found a way for Travis to stop recompiling assets on every build (6216ec4c503c9659ed8ddef197c3d8449b24fb08). Considering this a 100+ seconds time save, do you find it risky? By risky I mean the case of having a passing build when it should actually fail, since when alerted by a failed build we can always clear the cache.
@mjy despite git blames you for https://github.com/SpeciesFileGroup/taxonworks/blob/1dc0a1ced599e98581a31bc8a98485ab385fc6ed/spec/support/vendor/vcr.rb#L4 I believe it was probably me and you copied it over when refactoring. Perhaps we could have this setting for dev machines but when running on Travis environment not let them expire? This tends to produce a somewhat noticeable time penalty on everyday first build. Perhaps we could set a CRON (like SpeciesFileGroup/taxonworks_install) and let VCRs refresh for that particular event (TRAVIS_EVENT_TYPE=cron)?
Because of the change in assets recompilation a few extra adjustments will be required to equalize the average runtime of each test worker, so I'll keep merging development and taking measurements. After that parallel_travis would be ready for a pull request to development.

Caching should be fairly safe I think.  It's relatively unlikely that a build will pass with a bad cache- as cache/app connection should be quite brittle.
CRON for VCR refresh is likely(?!) pretty safe, we just have to remember it exists.  VCR based tests are somewhat more important in general because they represent wrappers around potentially changing APIs, for example the Crossref API is always changing.
For the record- the next step after getting this to work is to use a containerized build, so the CI is over several indepentant steps:

CI for container
CI for assets
CI for app

Each step depends on the prior, and we can tune when each step is fired.  In theory this would speed things.

@mjy I'm thinking that perhaps it is best to leave VCR settings as is, but also set up a daily CRON to renew VCRs overnight so the first to push during the day won't get a longtime build (cache is already set up, it is just that as it is currently it expires in 1 day). Do you agree?

Sure.  I think it's actually OK to push it to lengthen it somewhat, say 3
days as well.
On Mon, Apr 22, 2019 at 2:14 PM Hernán Lucas Pereira <
<EMAIL_ADDRESS>wrote:

@mjy https://github.com/mjy I'm thinking that perhaps it is best to
leave VCR settings as is, but also set up a daily CRON to renew VCRs
overnight so the first to push during the day won't get a longtime build
(cache is already set up, it is just that as it is currently it expires in
1 day). Do you agree?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/SpeciesFileGroup/taxonworks/issues/907#issuecomment-485518987,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAFQSHSVYIEJD3SKBQ6HDLPRYFCDANCNFSM4HEBKQQQ
.

@LocoDelAssembly We can close, right?

Sure! Closing it with this comment.


New technology for Libdoc HTML outputs

Libdoc HTML outputs, similarly as log.html and report.html, use jQuery Templates for generating HTML content based on the date embedded to the outputs when they are created by Libdoc. In practice there's libdoc.html file that contains template code as well as JavaScript. It also uses external styles and some external JavaScript files used also by Rebot.
The explained setup has worked fine for us, but there's a problem that jQuery Templates have been unmaintained for years. We need to find a replacement for it and at the same time we should enhance our HTML/JavaScript setup in general. At least the following tasks should be done:

[ ] Find a replacement for jQuery Templates. We could use its successor JsRender or some totally new technology like Svelte.
[ ] Separate JavaScript code from HTML templates as much as possible.
[ ] Add tests for JavaScript model code. A precondition is deciding what test tool(s) to use.
[ ] Set up GitHub actions to run JavaScript tests.
[ ] Decide and document JavaScript coding conventions. Using an automated code formatter could be a good idea.
[ ] Take localization into account. See #3676.
[ ] Take accessibility into account. See #3879.

This issue is a precondition for modernizing the tech used by log.html and report.html. They contain a lot more JavaScript code and having better JavaScript setup (test system, CI, conventions, ...) in place will help. Enhancing log.html and report.html requires its own issue and is probably so big task that it needs to wait for RF 6.0.

I would consider using plane vanilla js for templating. Current techs like Svelte, Vue, React, Angular etc. are in my opinion towards dynamic sites.
We do not need them.
Modern Js is very good for templating.

As #4497 explains, it would be convenient to be able to use custom styles with Libdoc. Injecting custom styles to generated HTML files wouldn't be hard, but the problem is that then the whole HTML structure becomes part of the public API and changes to it can break external styles. If we allow that, we probably should decide what parts of the structure (ids, classes, etc.) would be considered stable and only changed if absolutely needed and only in major versions.

There hasn't been too much interest towards this lately. I'll move this from RF 7 scope to 7.1.

This is now done and will be released in RF 7.2


🌱 remove deprecated flag from ccm

What type of PR is this?

removes deprecated flag from ccm.

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Please confirm that if this PR changes any image versions, then that's the sole change this PR makes.
TODOs:

[ ] squashed commits
[ ] includes documentation
[ ] adds unit tests

Did we release a new CCM version?

Did we release a new CCM version?

fixed via https://github.com/syself/charts/commit/3921e3b0f3b0801a549ee7ea4554d7a3a3adb9c0


The Repo folders size 0B problem

We can use the GitHub tree API to get the size fo folder but if implemented caching is must as it return the whole tree https://developer.github.com/v3/git/trees
Else we can just not show the size of the folder rather than showing 0B as in the DirEntry interface  the size key is option parameter

Fixed by #796

@kidonng  Thanks :-)


Actually use the given format to execute a query

This fixes a rolling upgrade issue 3.5.* -> devel
During upgrade the AQL should be performed in 3.5 format, this has not been forwarded correctly inside the DBServers.
Jenkins:
http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/7282/

Upgade passed:
2019-11-20T13:59:01Z [20398] INFO executing upgrade procedure: disabling server features
2019-11-20T13:59:01Z [20398] INFO [43396] {authentication} Jwt secret not specified, generating...
2019-11-20T13:59:02Z [20398] INFO [144fe] using storage engine 'rocksdb'
2019-11-20T13:59:02Z [20398] INFO [a1c60] {syscall} file-descriptors (nofiles) hard limit is unlimited, soft limit is 8192
2019-11-20T13:59:02Z [20398] INFO [3844e] {authentication} Authentication is turned off, authentication for unix sockets is turned on
2019-11-20T13:59:02Z [20398] INFO [0de5e] database upgrade passed
2019-11-20T13:59:02Z [20398] INFO [7da27] {startup} server will now shut down due to upgrade, database initialization or admin restoration.

Startup passed:
2019-11-20T13:59:11Z [20434] INFO [e52b0] ArangoDB 3.6.0-devel [darwin] 64bit maintainer mode, using build heads/bug-fix/rolling-upgrade-aql-block-serialization-0-g5fd37e3c5b, VPack 0.1.33, RocksDB 6.2.0, ICU 58.1, V8 7.1.302.28, OpenSSL 1.1.1d  10 Sep 2019
2019-11-20T13:59:11Z [20434] WARNING [0458b] This is a maintainer version intended for debugging. DO NOT USE IN PRODUCTION!
2019-11-20T13:59:11Z [20434] WARNING [bd666] ==============================================================================
2019-11-20T13:59:11Z [20434] INFO [43396] {authentication} Jwt secret not specified, generating...
2019-11-20T13:59:11Z [20434] INFO [144fe] using storage engine 'rocksdb'
2019-11-20T13:59:11Z [20434] INFO [3bb7d] {cluster} Starting up with role PRIMARY
2019-11-20T13:59:11Z [20434] INFO [6ea38] using endpoint 'http+tcp://[::]:8540' for non-encrypted requests
2019-11-20T13:59:11Z [20434] INFO [a1c60] {syscall} file-descriptors (nofiles) hard limit is unlimited, soft limit is 8192
2019-11-20T13:59:11Z [20434] INFO [3844e] {authentication} Authentication is turned off, authentication for unix sockets is turned on
2019-11-20T13:59:11Z [20434] INFO [b6826] {cluster} Cluster feature is turned on. Agency version: {"server":"arango","license":"enterprise","version":"3.5.1"}, Agency endpoints: http+tcp://<IP_ADDRESS>:8531, http+tcp://<IP_ADDRESS>:8541, http+tcp://<IP_ADDRESS>:8551, server id: 'PRMR-a70cff21-6124-4910-b39d-c6dcac5f64b6', internal endpoint / address: tcp://localhost:8540', advertised endpoint: , role: 2
2019-11-20T13:59:11Z [20434] INFO [805b2] {cluster} using heartbeat interval value '1000 ms' from agency
2019-11-20T13:59:11Z [20434] INFO [cf3f4] ArangoDB (version 3.6.0-devel [darwin]) is ready for business. Have fun!

BUT, coordinator fails to start.

Fixed the error reported by HKernbach
New jenkins
http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/7300/
Please rereview


POST formData with executeHttpRequest

Hi Cloud SDK Team,
Describe the bug
I already posted a question in the CAP Forum a few months ago which explains what I'm trying to archive and also what I tried so far.
https://answers.sap.com/questions/13551972/posting-formdata-to-external-rest-api.html
I have an API which I try to post a file to using formData. I can successfully use the API via Postman or using fetch.
Then I tried the same using CDS and now also directly using executeHttpRequest.
To Reproduce
Unfortunately I have no public API which I can provide for testing.
Expected behavior
Of course the API should accept my formData query send via executeHttpRequest. :-)
The API Endpoint converts the file and the content-type of the response is for example:
Content-Type: multipart/mixed;boundary=Boundary_682_1571866230_1651741380254
As already said, this works fine using fetch (see my posted question) and the problem seems to be on the sending side.
Used Versions:

node version via node -v
v14.17.6
npm version via npm -v
6.14.15
SAP Cloud SDK version you used as dependency
1.54.0

Code Examples
Using CDS:
    const myAPI= await cds.connect.to('myDestination')
    const health = await myAPI.get("/health")
    console.log(">>> Health ", health.status) // a GET request works fine

    try {
        const imageBuffer = fs.readFileSync('./tux.png')
        const form = new FormData()
        form.append('file', imageBuffer, {
            contentType: 'text/plain',
            name: 'file',
            filename: 'tux.png'
        })
        const response = await myAPI.send({
            method: 'POST',
            path: '/my/api/path',
            data: form
         })
    } catch (err) {
        console.log("Error message: " + err.message) //Error during request to remote service: Request failed with status code 404
    }

Using executeHttpRequest:
 const health = await executeHttpRequest(
        { destinationName: 'myDestination' },
        { method: 'get', url: '/health', params: {} }
 )
 console.log(">>> Health ", health.data.status) // a GET request works fine

 try {
        const imageBuffer = fs.readFileSync('./tux.png')
        const form = new FormData()
        form.append('file', imageBuffer, {
            contentType: 'text/plain',
            name: 'file',
            filename: 'tux.png'
        })

        const response = await executeHttpRequest(
            { destinationName: 'myDestination' },
            { method: 'post', url: '/my/api/path', headers: { 'Content-Type': 'multipart/form-data', 'Accept': '*/*', 'Content-Length': imageBuffer.length }, data: form }
        )
        console.log(response.data)
    } catch (err) {
        console.log("Error message: " + err.message) //Request failed with status code 404
    }

Tried adding different headers, without success.
One thing to note, using Postman the Content-Type always includes the boundary, e.g.:
Content-Type: multipart/form-data; boundary=--------------------------817648025188283885837797
I tried adding it manually while debugging, but also no success.
Log file
Error message always returned: "Request failed with status code 404"
From wiki:

The 404 or Not Found error message is a HTTP standard response code indicating that the client was able to communicate with the server, but the server could not find what was requested. so, your code is OK, but server cannot find resource you are looking for. Double check if your url is correct.

It defnitly can reach the API enpoint as it returns a Payara error message (the endpoint service runs on a Payara Server):

'Payara Server  5.2021.3 #badassfish - Error report HTTP Status 404 - Not Foundtype Status reportmessageNot FounddescriptionThe requested resource is not available.Payara Server  5.2021.3 #badassfish'

Unfortunaltely until now I didn't had the chance to check on Payara server side, if anything and what exacly arrives at the endpoint. It seems that the request is not correct when send to the endpoint.
best regads
Nico

@nocin The two issues you linked in your comment seem to be resolved now. Is this sill an issue for you?


Explore a data layer for populating text

Similarly to Gatsby's data layer, it'd be awesome to expose a GraphQL data layer which can be used in the side panel for requesting data and exposing it based on a schema.
With GraphQL we can expose an explorer similar to what GraphiQL has, and use that to populate text. The editor itself will have a specific implementation for fetching the schema/data, but it's output could be pluggable so that targets including Gatsby's page queries, Apollo, urql, etc.

Instead of the output being pluggable, couldn't the input be pluggable? So you could plug blocks-ui into the gatsby graphql endpoint for example and design with your real data that you already use.
Downside might be that building a generic graphql api data picker is worse UX than having more editor friendly schemas in the first place.


remove required dependencies

Since only the https://github.com/zendframework/zf2/blob/master/library/Zend/Code/Annotation part uses the EventManager, please let us remove the dependency.
If the EventManager gets included, also the complete StdLib comes with the composer resolving....
I just build something similar to: https://github.com/EvanDotPro/EdpSuperluminal/blob/master/Module.php#L5-L7
And from Zend only those classes were actually autoloaded:
* AUTOLOAD Zend\Code\Reflection\ClassReflection
* AUTOLOAD Zend\Code\Reflection\ReflectionInterface
* AUTOLOAD Zend\Code\Scanner\FileScanner
* AUTOLOAD Zend\Code\Scanner\TokenArrayScanner
* AUTOLOAD Zend\Code\Scanner\ScannerInterface
* AUTOLOAD Zend\Code\Reflection\FileReflection
* AUTOLOAD Zend\Code\Scanner\CachingFileScanner

I wouldn't remove this dependency: if we do that, I'd rather do it after the split, when every component manager has control over the codebase, and we may be able to completely get rid of the EventManager in the code component.
Removing it now is a problem for anyone using Zend\Code just for the annotations.

why do you remove this dependency from composer.json? This lib use the EventManager in your PR

@gianarb i dont understand u correctly i think.
The EventManager is include in require-dev, since for testing it would be required.
It could be also added to suggest section

Hi! @ThaDafinser for me Zend\EventManager in this moment is a needful requirement to work with annotation, it is not used only during tests, why do you move it into require-dev section?

@gianarb sure its a requirement for your needs, but not for all.
Take Zend\Mvc as an example...it required only some Zend* componenets: https://github.com/zendframework/zf2/blob/master/library/Zend/Mvc/composer.json#L16-L22
But suggest many of them: https://github.com/zendframework/zf2/blob/master/library/Zend/Mvc/composer.json#L42-L63
Only because you may need a part, you dont take to include that for all.
Just in my case i need exactly 7 classes from Zend\Code, but need to download additionally Zend\EventManager and Zend\StdLib...

Not for me in production, but in my idea of dependencies :) I don't use Zend\Code in my projects..
Zend\Mvc has the same problem, exists a % of dependency? Below it the requirement becomes require-dev?
For me a dependency is require-dev if it uses by the library for running tests for example phpunit, phpspec not because is used by few classes

I think its okay to define them in require-dev and maybe suggest.
Iin my case i'm not using annotations, so i dont want to download it.
But when i dont to run phpunit i need all dependencies, so require-dev ...
@gianarb  but this seems to be a nice topic to discuss about in general....to require or not to required
:smile:

eheh yes! :)
The modularity has a price, If you don't use Annotation the solution (maybe ideally) is the split of library..
I think that to move dependencies in dev/suggest is only a good shortcut :yum:

I strongly disagree on optional dependencies. While it is nice to have one dependency less, we have just hidden a problem and swept it under the carpet.
Dependency should stay, and removing it means that all classes should still work without it, so the PR is either invalid or incomplete right now.

I agree with optional dependency argument of @Ocramius . Either it needs a dependency or the component can stand as a different bridge.
I have suffered a bit configuring a few components for at run time only I was seeing it needs the suggested package. So each time I was forced to call composer require component .

I will close it for now then, since earliest date will be 3.0


Modify Post URL as Parameter

Right now msg91 provides india and world api so I updated the post url as parameter. So user can manage from there end.

Hi onlysomsubhra,
Thank you for the code update.


[Android] How can I read model(.tflite file) in storage?

I'm currently decreasing the size of the app.
So I'm going to use the model file instead of putting it in the assets folder.
I think I need to run it after I import the file from the internal storage, but I don't know where to modify it.
I'd appreciate any help thanks!

I solved it!

Can you please elaborate, how did you solve this one.
Thanks:)


Add assign issue feature

This is for node-gh#358 which is part of the 2.0.0 milestone.

Closing, new pull sent at https://github.com/node-gh/gh/pull/452


Water heater not climate/thermostat entity

Hello,
first of all thank you for your work on providing us with this Ariston integration.
I am running into an issue with Lydos Hybrid, where the main entity is "water_heater.water_heater", hence I cannot use the thermostat card.
Am I doing something wrong?

It is a water heater, not a thermostat. You can add to the UI for example as entities card or tile card.


cxx zig toolchain does not work on macOS

Again: totally understand that the zig toolchain is experimental!
Following on from #461, upgrading to a newer release of zig fixes some of the problems but there's still at least one more issue:
buck2 build //:hello
Action failed: root//:hello (cxx_link_executable)
Local command returned non-zero exit code 1
Reproduce locally: `env -- "BUCK_SCRATCH_PATH=buck-out/v2/tmp/root/213ed1b7ab869379/__hello__/cxx_link_executable" buck- ...<omitted>... b7ab869379/__cxx__/zig_cxx.sh @buck-out/v2/gen/root/213ed1b7ab869379/__hello__/hello.linker.argsfile (run `buck2 log what-failed` to get the full command)`
stdout:
stderr:
error: unsupported linker arg: -oso_prefix
Build ID: 6e276212-16a3-4b86-b1b2-1ba46fef788c
Network: Up: 0B  Down: 42MiB
Jobs completed: 52. Time elapsed: 6.9s.
Cache hits: 0%. Commands: 4 (cached: 0, remote: 0, local: 4)
BUILD FAILED
Failed to build 'root//:hello (prelude//platforms:default#213ed1b7ab869379)'

The pertinent part seems to be: error: unsupported linker arg: -oso_prefix.
Steps to reproduce

git clone git@github.com:jazzdan/buck2_zig_toolchain_macos_bug.git
cd buck2_zig_toolchain_macos_bug
buck2 build //:hello

sw_vers
ProductName:		macOS
ProductVersion:		13.6
BuildVersion:		22G120

cc @aherrmann

Thanks for the info - I'll document it!

@aherrmann - worth applying the patch to pretend the macos linker for Zig is gnu in the meantime? It seems the alternative definitely fails, and while gnu might not completely work, at least it works a bit?

@ndmitchell Indeed, it's probably worth it. I've opened https://github.com/facebook/buck2/pull/526 for it.

Thanks @aherrmann !


Semantic Versioning & Import Fixes to Previous Versions

Hello,
This issue is probably not related to you directly but I believe it can brings something good to this project. So please take it as a proposal of improvement for this project.
Here is my proposal:
I may be wrong but your version format looks like semantic versioning. Therefore it would be nice if you maintain a branch my MAJOR.MINOR.x version (1.99.x, 2.0.x, etc...). Every fixes should cherry-picked on every branch. And from time to time, you release a fixed version of the branch by tagging a commit in the specific branch with all the fixes and increasing the x value.
Which basically means that the fixes that got merged in the develop branch can be merged to 1.99.x and 2.0.x and can fix already released versions. (If they are considered as "fixes" (this can be argued)).
Why am I proposing this?
So the question is... cui bono? :grinning: Well... me in the first place because the maintainers of the public repository I'm currently "fixing" are reluctant to merge my PR because it's close to dirty monkey patching. Which is totally true :smile:
So, there aren't many solutions:

we merge my PR that monkey patch
we make a fork of sparql-client with all the fixes (despite they're going to be available at some point)
we make sparql-client follows the semantic version and all future version of sparql-client will benefit of fixes made later on (which is cool!)
I fork the mu-ruby-template template to a private repository for my company and have the fix available (may include more work on my side :unamused: )

So what do you think?
In brief:

make 1.99.x branch
make 2.0.x branch
cherry-pick fixes and later fixes to every branch
set up CI to test every branch
tag once a while every maintained branch

(And I can help)
Thanks for taking time to read this
Additional info: a colleague just pointed out that the rubygems.org recommends the semantic versioning: http://guides.rubygems.org/patterns/#semantic-versioning

We do use semantic versioning, and all releases are tagged so that patches can be released in the future. However, given limited resources, we do not back port all bug fixes to previous releases, unless a specific request is made – ideally in the form of a patch-request. (You'll note the 1.1-support branch, and we can easily create new branches on demand).
I've created a 1.99-support branch, and updated a number of commits from the master and develop branches that are compatible. If you'd like, you can submit PR requests on the branch.
There are minimal changes from 2.0 to 2.1 – it is mostly a change due to minimum-ruby requirements. If you would like this branch created and maintained too, let me know.

Thank you very much, it would be great!
Actually we have a dependency on linkeddata=2.0.0 which seems to include a sparql-client=2.0.1 but there is no tag for it here (I suppose it should be on 0338c808c70119fe90526e6d1602c94da6e883fa)
What I would like is to have a sparql-client=2.0.2 with the latest commit of develop (it looks stable and it seems to only contains fixes). And have linkeddata=2.0.0 using sparql-client=2.0.2.
Does that make sense?

There was no 2.0.1 release, but I can release it based on the current state of develop, which should bring it in line with the 1.99 support branch, and release 1.99.1 as well.
Note that linkeddata uses '~> 2.0', which is compatible with 2.0.1, but also, a future 2.1.0. I'll release 2.1.0 with the Ruby version changes.

Pushed 1.99.1, 2.0.2 and 2.1.0.

@gkellogg I would like to thank you again for the very good support on this library. Everything is perfectly working on our side now.


fix: restore blue coloring or noneditable entities

Remove old code when resolvers were added

Related PRs for tracking:
https://github.com/microsoft/ConversationLearner-UI/pull/792/files#diff-0516be742b5d150780ab0a12838b8d1dR599
https://github.com/microsoft/ConversationLearner-UI/pull/791/files#diff-ecfa596a555464dcfc9af80d0fc3be98R268
Fixes ADO#2200

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

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


🌱 Add owner for addon manager component

Summary
add owner file for addon manager component
Related issue(s)
Fixes #

/assign @zhiweiyin318
/assign @zhujian7
/assign @haoqing0110

/lgtm


raise InvalidProofError

This was an abuse of assertions. In theory, assertions could be removed
from code and it would function exactly the same. Also, when the
assertion fails, an AssertionError is raised, not the desired
InvalidProofError.

good change,
lgtm


Fix an issue in checkAppsStatus() of using staled oldStatus{}

in multiple applications case, the there is a bug since now we changed the logic to not always publish the ENClusterAppStatus, need to use the correct oldStatus for the application

I think the changes in this PR look good. I took a further look at all uses of oldStatus and line 211's use oldStatus.ScheduledOnThisNode worries me, can oldStatus still be nil at this point?

No, it can not. Since this is in the same if statement, if the oldStatus == nil check is true, then it wouldn't get to the later 'oldStatus.ScheduledOnThisNode' stage.

never mind, I need some coffee


Use extracted text domain when generating JSON files

https://core.trac.wordpress.org/ticket/45441 got resolved for WordPress 5.0.3, which means we could default to the extracted domain again.

I couldn't think of a way to ake this change in a backward-compatible fashion.
I'd suggest adding a note to the documentation of the command to let people know they should use the domain 'messages' if they intend for the translations to be used with WP < 5.3.


btoa is undefined depending on the call context

I work w/ TypeScript and angular framework. When I call for exemple repo.write(...) from a service method, atob is null whereas window.atob works well.

I'm not sure I understand what the issue is. atob isn't ever even defined or used in github.js... Why is this necessary? What does this have to do with btoa, as per the issue title?
Further, your PR breaks the tests.
Please explain the issue better and I'll reopen. Thanks!

I'll do it ASAP.
I'll describe more this bug and fix tests!

Hello @aendrew
It's the same problem on this issue #178
Please find a jsfiddle to demonstrate the problem: http://jsfiddle.net/firehist/1a31jLzy/
Solutions are:

remove the var to avoid hoisting
declare atob = window.atob

Block browser usage.
Bennnou.

@firehist It's not at all the same problem as #178 — that refers to btoa (base64 to ascii), not atob (ascii to base64). AFAIK, github.js makes no use of the latter, which is what you're proposing.

@aendrew My bad, I speak about #198 which fix atob and not btoa.

@firehist That's your own pull request, which is still causing tests to fail...


Slow activity transition

Does anyone found the transition between activity is a bit slower after extend Activity by LocalizationActivity?

Yes it is slow.

@prathanbomb You mean the Activity class, not even FragmentActivity?

I am not sure does it related to DummyActivity or not. But I removed it now. So it should not be slow anymore


When update to 1.4?

I'm working on it.  It's a huge update with a lot of changes and I'm also out of practice.


Request number optimization calculation

Writing down the request number optimization calculation to document the chosen approach
Information: the endpoint used for retrieving the ASIN for a given EAN can accept a list of up to 5 EANs.
Data:

N products without ASIN in the database
X marketplaces to send requests to on MWS

Case 1: using updateQuery

1 request to ES (updateQuery)
N.X requests to MWS (for each match via updateQuery we inject the ean in a request to each marketplace)

=> total requests: N.X + 1

Case 2: using search combined with bulk on ElasticSearch

1 request to ES (search)
ceil(N/5).X requests to MWS
1 request to ES (bulk)

=> total requests: ceil(N/5).X + 2

Comparison:
Let's assume here that X=5 (the number of european marketplaces). If we compare case 1 and case 2 (vertical scale is logarithmic to help readability):

Conclusion: assuming we would break out of the code if no product has to be updated in case 2,  case 1 is favorable if only 1 product needs to be updated in the database. For any other cases case 2 is favorable (less requests).

Note: previously I compared the cases for the number of products without ASIN but that's not really correct... From what I get as response from MWS, it seems that we can have multiple ASIN for a given EAN in some marketplaces. Meaning we are making multiple listing with the same product.
This makes the logic of synchronizing only products without ASIN data outdated because we may create a new listing of an existing product so the synchronization should apply to the whole DB.
Instead of doing a pull-synchronization like now, we should have some kind of hooks to update ASINs in DB when we do a new listing. The data pulling would only occur when doing the initial synchronization. For any new product we should also trigger a lambda that would do the synchronization for that given product.

Probably won't use this repo as an actual lambda!
Keeping the code here for now as I'm still working on it. But most likely this is gonna be a standalone script to do a brute synchronization of the database with Amazon to fetch the ASINs for each products in the database.
We should then have:

1 lambda that is attached to a create listing event (hopefully this is possible via MWS API...) and that pushes the new ASIN for a given EAN into our DB
1 lambda that is attached to a create product in DB event that would fetch from the MWS API any pre-existing ASIN assigned to this EAN


Set up a badge to report bundle size for the project.

Not possible unless it's published to NPM. Added other badges instead.


Fatal error for Counter Strike

Getting the same error for Half-Life. Am I doing something wrong? using the .bat file to install

Getting the same error for Half-Life, really want to play through the game with MetaAudio and the new update. Am I doing something wrong? using the .bat file to install.

I got this error for Counter Strike update but not included with metahook, the problem solved is you need change into "beta steam update"

The BulletPhysics.dll and CaptionMod.dll are in WIP state now. You will have to rip them off from the plugins.lst. see https://github.com/hzqst/MetaHookSv/blob/main/BulletPhysics.md#compatibility and https://github.com/hzqst/MetaHookSv/blob/main/CaptionMod.md#compatibility

The BulletPhysics.dll and CaptionMod.dll are in WIP state now. You will have to manually rip them off from the plugins.lst if you were using .bat to install plugins. see https://github.com/hzqst/MetaHookSv/blob/main/BulletPhysics.md#compatibility and https://github.com/hzqst/MetaHookSv/blob/main/CaptionMod.md#compatibility

its not working at all, renderer.dll causes r_setupgl to not be found and the engine version is 9899

still not working


Unable to install the Entity Context templates in Visual Studio 2015 Update 1 Community

Hi,
When I try to install the "BrightStarEntityContext.vsi", I get an error :
"Installation arrêtée, car le répertoire correspondant à la valeur ProjectType n'existe pas. Le type de projet n'est pas valide pour votre installation de Visual Studio."
Translated in english :
"Installation stopped, because the directory corresponding to the value ProjectType doesn't exist. The project type is not valid for your Visual Studio installation."
Nothing is installed.

Hi,
The VSI was developed for VS2013  and it doesn't work in VS2015 at all I'm afraid :(
To be honest there isn't a lot in there - just the T4 template for BrightstarDB Entity Framework and a simple starter file for creating an entity interface. It is probably easier right now to just use NuGet to install the BrightstarDB package - this includes the T4 template and the interfaces are trivial to code by hand.
I'm going to take a look at creating a VSIX for VS2015 to reinstate this feature in a future release.
Cheers
Kal

I've created a VSIX for this and added it to the installer. It will be part of the 1.13 release which should be ready to go either at the end of this week or beginning of next.


Helm chart does not work with v1alpha2 policy

What version of descheduler are you using?
descheduler version: v0.28.0
Helm chart: descheduler-0.28.0
Does this issue reproduce with the latest release?
Yes
Which descheduler CLI options are you using?
--policy-config-file=/policy-dir/policy.yaml
--descheduling-interval=2m
--v=4

Please provide a copy of your descheduler policy config file
What k8s version are you using (kubectl version)?
kubectl version Output
$ kubectl version
Client Version: v1.28.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.25.14-eks-f8587cb
WARNING: version difference between client (1.28) and server (1.25) exceeds the supported minor version skew of +/-1

What did you do?
When deploying descheduler via Helm chart and using the policy version 1alpha2 (see below for the values.yaml), the default strategy configuration will be added to the rendered configmap (also below).
values.yaml

cmdOptions:
  v: 4
deschedulerPolicy:
  profiles:
  - name: mEKS-default
    pluginConfig:
    - args:
        evictFailedBarePods: false
        evictLocalStoragePods: true
        evictSystemCriticalPods: false
        ignorePvcPods: false
        nodeFit: false
      name: DefaultEvictor
    - name: RemovePodsViolatingInterPodAntiAffinity
    - name: RemovePodsViolatingNodeTaints
    - args:
        podRestartThreshold: 50
      name: RemovePodsHavingTooManyRestarts
    - args:
        topologyBalanceNodeFit: false
      name: RemovePodsViolatingTopologySpreadConstraint
    plugins:
      balance:
      - RemovePodsViolatingTopologySpreadConstraint
      deschedule:
      - RemovePodsViolatingInterPodAntiAffinity
      - RemovePodsViolatingNodeTaints
      - RemovePodsHavingTooManyRestarts
deschedulerPolicyAPIVersion: descheduler/v1alpha2
deschedulingInterval: 2m
kind: Deployment
resources:
  limits:
    cpu: 1024m
    memory: 512Mi
  requests:
    cpu: 500m
    memory: 256Mi
securityContext:
  seccompProfile:
    type: RuntimeDefault
service:
  enabled: true
serviceMonitor:
  enabled: true

configmap data/policy.yaml

apiVersion: "descheduler/v1alpha2"
kind: "DeschedulerPolicy"
profiles:
- name: mEKS-default
  pluginConfig:
  - args:
      evictFailedBarePods: false
      evictLocalStoragePods: true
      evictSystemCriticalPods: false
      ignorePvcPods: false
      nodeFit: false
    name: DefaultEvictor
  - name: RemovePodsViolatingInterPodAntiAffinity
  - name: RemovePodsViolatingNodeTaints
  - args:
      podRestartThreshold: 50
    name: RemovePodsHavingTooManyRestarts
  - args:
      topologyBalanceNodeFit: false
    name: RemovePodsViolatingTopologySpreadConstraint
  plugins:
    balance:
    - RemovePodsViolatingTopologySpreadConstraint
    deschedule:
    - RemovePodsViolatingInterPodAntiAffinity
    - RemovePodsViolatingNodeTaints
    - RemovePodsHavingTooManyRestarts
strategies:
  LowNodeUtilization:
    enabled: true
    params:
      nodeResourceUtilizationThresholds:
        targetThresholds:
          cpu: 50
          memory: 50
          pods: 50
        thresholds:
          cpu: 20
          memory: 20
          pods: 20
  RemoveDuplicates:
    enabled: true
  RemovePodsHavingTooManyRestarts:
    enabled: true
    params:
      podsHavingTooManyRestarts:
        includingInitContainers: true
        podRestartThreshold: 100
  RemovePodsViolatingInterPodAntiAffinity:
    enabled: true
  RemovePodsViolatingNodeAffinity:
    enabled: true
    params:
      nodeAffinityType:
      - requiredDuringSchedulingIgnoredDuringExecution
  RemovePodsViolatingNodeTaints:
    enabled: true
  RemovePodsViolatingTopologySpreadConstraint:
    enabled: true
    params:
      includeSoftConstraints: false

What did you expect to see?
A valid configmap for the descheduler
What did you see instead?
The descheduler failing to start with the errormessage:
E1018 17:09:41.237490       1 server.go:101] "descheduler server" err="failed decoding descheduler's policy config \"/policy-dir/policy.yaml\": json: cannot unmarshal array into Go struct field Plugins.profiles.plugins.balance of type v1alpha2.PluginSet"

Update PEBKAC: I was missing an enabled level on the plugin configuration. The pods starts now and the superfluous strategies in the configmap are accepted/ignored.

while we want on https://github.com/kubernetes-sigs/descheduler/pull/1139
you could add this to your values.yaml:
deschedulerPolicy:
  strategies:

/kind support

Awesome. Please feel free to reopen if you run into any issues
/close


[Testnet] Stuck txn even after bump

Describe the bug
I'll copy the info provided by the user:

I have two contracts deployed. One on goerli and one on Mumbai chain.
I am initiating a call from Goerli to Mumbai which sends an acknowledgment back to Goerli.
The tx from Goerli to Mumbai went through successfully with 0.01 ETH on Goerli.
But the tx from Mumbai to Goerli is stuck since some time.
It says Relayer Fee too less but I bumped the fees twice.
https://testnet.connextscan.io/tx/0x6a378fb9450b0633f745b3d6e285ec9ba557761ccf8e6639a5c3accf85810a58
I want to know what I am doing wrong and how long will it take.
My code uses logic written from the PingPong contract.

Additional context
Ticket: https://discord.com/channels/454734546869551114/1125208618707452005

fixed by CH


BucketsPathBuilder Should Accept string and []string Inputs, Not Just map[string]string

Hello, I'm currently using the go-elasticsearch library (version 8) and encountered a limitation with the BucketsPathBuilder method.
When using aggregations, the BucketsPathBuilder method currently only accepts a map[string]string. Here is a code snippet to illustrate:

aggregations := map[string]*types.AggregationContainerBuilder{
		"trend": types.NewAggregationContainerBuilder().SerialDiff(
			types.NewSerialDifferencingAggregationBuilder().BucketsPath(types.NewBucketsPathBuilder().BucketsPath(map[string]string{"average": "average"})).
				GapPolicy(gappolicy.Insertzeros).Lag(
				int(2),
			),
		),
		"average": types.NewAggregationContainerBuilder().Avg(
			types.NewAverageAggregationBuilder().Field(types.Field("my_field")),
		),
	}

However, for my use case, it would be significantly more useful if the BucketsPathBuilder could accept not only map[string]string but also string and []string inputs. The current implementation is restrictive and does not correctly support all possible use cases.
I would greatly appreciate it if the library could be enhanced to support this feature. Thank you in advance for considering this request.

Hi @FrancoisChastel
Thank you for the feedback, this version is not supported anymore and the builder pattern has since been removed from the alpha period.
Furthermore in the most recent version you will see that the SerialDifferencingAggregation now accepts an interface for the BucketsPath which allows you to set either a map or an array as arguments.
I would advise you to upgrade to the latest version which will also allow you to have typed responses!

Fantastic ! Thank you :)


Adopt a more portable cpu detection

This avoids to have to install nproc for Linux (eg when running aery into a lightweight/minimal docker image). It's also the most portable approach for *NIX systems BTW.

See also https://groups.google.com/d/msg/comp.unix.shell/nqzUuqsmFo8/eBBR04d-JQwJ.

@kelunik ok I've changed only for Linux, reverted changes for darwin & freebsd.

@kelunik second edit: I've changed accordingly to the link you pointed out. So netbsd & openbsd detection should be ok from now.

@kelunik ok done I've squashed the *bsd sysctl call simplification 😉


Code changes to implement PSA1 and PSA2 mode varibility analysis

The Pacific South America mode is represented by an eastward-propagating wave train extending from eastern Australia to Argentina, characterized by two invariant empirical orthogonal function (EOF) patterns with associated principal component (PC) time series (PSA1 and PSA2).
In this commit, we made code changes to enable the analysis of PSA1 and PSA2 mode varibility with EOF analysis in PCMDI. Specifically,

regions.py was revised to include regions used for EOF analysis for PSA1 and PSA2 modes. Note that the region for PSA1 and PSA2 analysis are the same as the SAM mode

argparse_functions.py was revised to include PSA1 and PSA2 in the default mode varibility analysis by PCMDI

variability_modes_driver.py was revised to include the default setup for EOF analysis of PAS1 or PSA2 in PCMDI

plot_map.py was revised to define the setup of mapping plots to generate the graphics of EOF patterns and teleconnections related to PSA1 and PSA2

@lee1043 : Hi Jiwoo, I have merged the code changes I made for PSA1 and PSA2 analysis to the master branch. I have run a test and successfully got the expected figures and metrics. My run script and parameter setup can be found at

https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.szhang/pcmdi/test_psa_mode/submit_mov_historical.sh
https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.szhang/pcmdi/test_psa_mode/param/

The results can be found at the following links:
-https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.szhang/pcmdi/test_psa_mode/diagnostic_results/variability_modes/analysis/historical/v20240731/

https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.szhang/pcmdi/test_psa_mode/metrics_results/variability_modes/analysis/historical/v20240731/

-https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.szhang/pcmdi/test_psa_mode/graphics/variability_modes/analysis/historical/v20240731/
One thing I noticed that could be potentially improved: I see that the PCMDI will generate all figures for the maximum # of modes from EOF analysis, for modes like PDO, SAM, etc.  I don't know if this is on purpose, but it could cause confusion for the user or reader (at least to me).  One solution I think could be useful is that: after identifying the best matching mode, it may be better to clean up the figure directory and only keep the figures for the identified best matching modes.

@zhangshixuan1987 thank you very much for the PR, I will take a look.
I also appreciate your suggestion and I agree it can be helpful to clean it up. The original purpose to create 3 EOF patterns were to visually inspect matching patterns because "best" matching mode can be selected differently depending on how to define the best matching. In some cases, simulated mode with max pattern correlation does not match to mode with minimum RMSE to obs. Maybe I can make it optional to generate plots for all 3 EOF patterns. Currently when parameter plot is set to False, it turns off all figures from model, which can be elaborated.

@lee1043 : Hi Jiwoo, my suggestions above are only based on the diagnostic package perspective, i.e. based on the algorithms built in the package and the configuration user selected, what is the answer we can get from the package.
However, I agree that the mode derived from the EOF can be subjective, and including all 3 EOF patterns can be useful for double-checking and comparison. For SAM or NAM modes, I think they are pretty robust to be represented by the first EOF mode, if not, there should be some problems.  For PNA, PSA1, or PSA2 mode, EOF on model simulations can be tricky sometimes as the variance explained from the second and third EOFs can be very close, and further diagnosis such as the pattern correlation with observation EOF modes may be needed to determine the correspondence of the actual modes to the EOF analysis.

Code tested with Demo 4 notebook


Allow debugging of parameters in Android Studio

If you set a break point inside a lamda in Android Studio it will break, but the variable debugger does not show the parameters to the lambda.

Found out this is not a retroambda issue. I never see locals in any method when I break on first line until I step.


binutils: 2.35.1 -> 2.37

Motivation for this change
Hello binutils, my old friend
I've come to bump you again
Because a version softly creeping
Left its bugs while I was sleeping
And the patches that were planted in my brain
Still remains
Within the source of binutils
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

https://github.com/NixOS/nixpkgs/pull/118945

God I hate GitHub so much

This should target master while testing so it can be compared to https://hydra.nixos.org/jobset/nixpkgs/trunk.

I'm just going to make a new PR, GitHub is just far too cursed


Do not preserve keys of filtered items in iterable data reader

Suggest don't change iterable data reader, but add comment to ReadableDataInterface::read() about keys (keys can have any value, you should not rely on them somehow).

Agree.


Styling: decide on title case or sentence case and use everywhere

We are sometimes using title case and sometimes using sentence case. We need to be consistent with what case is being applied.
For variable labels (in variable trees, visualizations, & subset modal headers) we should ALWAYS use the exact format indicated in the .owl file. This seems to be OK currently.
For buttons, Mike had suggested using Title Case
Case discrepancies I am currently aware of (there are likely others...)

Entity names in the diagram are in sentence case, but are in title case in the subsetting results buttons

Sentence case in "Show all filters" vs title case in "Share Analysis"

Title case in "Unnamed Analysis" vs sentence case in "Unnamed Visualization"

Visualization picker names are sometimes in title case and sometimes in sentence case

See discussion in #1257
Long story short, i think that as we start to have more biological terms populate headings and other elements it will be easier to use sentence case since it should change the original text less. Often biology terms have weird capitalization rules (rRNA, gene names, protein names, etc), so if we try to capitalize the first of each word we'll end up with a long list of dont-capitalize-me and ignore-that-im-in-all-caps words if we go with title case

I think part of the problem we currently have is that we are using CSS text transforms in several places. I don't think we should ever use CSS text transforms. Perhaps that should be the scope of this issue?

That works for me!


[fontconfig] Avoid installing Symlinks

Avoid installing Symlinks
Is your feature request related to a problem? Please describe.
The fontconfig port installs a number of symlinks into etc/fonts/ below the installation prefix. These files are, at least on linux, always processed, even if the configuration is overloaded by defining a custom configuration with the FONTCONFIG_FILE and/or FONTCONFIG_PATH variables.
Depending on security policies, windows based systems can disallow symlinks.

Assuming the windows system can generate symlinks, using vcpkg export --zip  will create corrupted zip files, as the zip format cannot handle symlinks.
Assuming the windows system cannot generate symlinks, an installation will be created that lacks  most content of the etc subpath. However, this installation, exports, and binarysource, cannot be distinguished by metadata from an installation/export/binarysource that does contain files in etc.

Proposed solution
Patch the port to Install regular files instead of symlinks. On linux and unix, where symlinks can be considered to be supported in any sane setup, avoiding the installation of symlinks fixes the zip-file export, while on windows the package becomes independend of symlink enabling/restricting security policies on top of getting the zip export fixed.
Describe alternatives you've considered
Not using caches/exports avoids the issue, but different security configurations still result in different installations, which is counter-intuitive
Additional context

Thanks for reporting and fixing this!


Extension.ts refactoring

The extension.ts file is getting a bit too complicated / bloated.
It should be refactored into multiple files, with the extension.ts only containing extension contributions (without their content)

Partially implemented by #44


feat: Collapse children in UI Workflow viewer

Closes https://github.com/argoproj/argo/issues/3527
Click to expand

Updates:

To make sure this is the case, can you the the ui test (test/e2e/ui) to create some large graphs and make sure they render expanded? You might want to use a browser profiling tools to see which JavaScript functions take up the most time.

Sure

Was able to do with the largest Workflow allowed by K8s without a problem:

To clarify: I tested this while expanded as well


Avatar not working

I've sent an avatar for my collective at the route https://opencollective.com/elm-france/edit/images .

This avatar is not displayed on the home page of my collective:

Even worse, it is displayed as "broken image" on the event page :

(for this page - https://opencollective.com/elm-france/events/hackathon-elm-france-50136ev - , the link in the img tags is https://images.opencollective.com/hackathon-elm-france-50136ev/logo.png )
Expected behaviour
See the logo :)

Thank you for reporting.

Is a recent cache issue, it can take up to 2 hours for the image to refresh, that should not be the case, we're on it
Is also an issue introduced by a recent release, we're also on it

FYI we have got several support requests about this, and I just ran into it myself when updating OSC's avatar on its page.

Fix coming, this is a priority.

Fixed in https://github.com/opencollective/opencollective-frontend/pull/2199 and https://github.com/opencollective/opencollective-images/pull/85

We are still getting reports of avatars not updating through support. Should this be reopened?

This should be corrected by https://github.com/opencollective/opencollective-frontend/pull/2086

Hey, created a new account for my organization. Would like to contribute to a couple of projects but this is kind of a blocker as my personal avatar is there, not representative of my org :/

@dabit3 Until we ship a fix, it's 2 hours caching maximum. So after waiting 2 hours, the image should be up to date for everyone. Fix is coming soon.


Added thread_stat test

I've been toying around with EE kernel tests and here's the first one I've done that I'm happy with.
I've looked at how pspautotests were doing their threading tests and saw they were using a "schedf" function which seemed to solve an unwanted rescheduling problem I had while conducting my own tests. They also have "checkpoint" and "checkpointNext" functions which I haven't studied yet which might be useful on the PS2 too.
The EE kernel performs very little validation, so it will accept almost any garbage we will throw at it. For example, calling ReferThreadStatus on a deleted thread doesn't return an error, so, that's why I didn't include that test here. Hard to say if it's undefined behavior or not and if it's really worth testing.

Right, good ol' schedf.  The issue was that IO (such as printf()) blocks the calling thread.  This will probably be an issue in any thread implementation.
The checkpoint function is a useful thing in testing thread scheduling in general.  Basically, it does the following:

On init, it starts a thread with slightly worse priority than (or was it the same as?) the current thread.
You run your code (e.g. the func that you'll log the return value of.)
You call checkpoint() with the return value.
It determines if that thread ran.  If it did, this means the code (item 2) blocked or rescheduled in some way.
In the results, it writes out an indicator of whether a reschedule happened or not ([r] or [x].)
Automatically flushes the schedf buffer (maybe it does this only at checkpointNext.)

This helps in noticing that certain functions block in interesting or important ways.  It also has some options to enable logging of timestamps (e.g. to see the amount of time / cycles a function took.)
Anyway - as to this pull, seems okay.
Should we put the thread funcs under tests/kernel/ee/thread/ or something?  Depends on how many there are.  If we might have 4-5 test files I think it'd be better.
IMHO, if the kernel allows referring a thread that was deleted, that sounds like behavior some game might depend on (even if by accident.)  I think anything is fair game that a game could reasonably cause to happen.
If the results aren't deterministic it gets tricky, though...
As an example, the pspautotests for lwmutexes test some "impossible" cases with a corrupt lwmutex struct, iirc.  We've rarely had issues with the lwmutex implementation because of these thorough tests.
-[Unknown]

By the way, I merged this because I think it can possibly be improved but no matter what, it's a useful test.
-[Unknown]

Thanks for the merge. Yes, it can definitively be improved.
I was thinking of creating a test for every thread function (ie.: create, delete, terminate, start, sleep/wakeup, rotatereadyqueue, referstat etc.) testing all their parameters and possible edge cases. So, yeah, I agree that it would be better to put them in a separate directory. I will do that once I get the next test ready.
As for referring to a deleted thread's status, I guess we could test that too, but I wouldn't really know where to draw the line for testing undocumented/undefined stuff. I think it could get very tricky to test everything (CreateThread comes to mind, nothing inside the create struct is validated), but I agree that it'll be necessary if we want an accurate emulator.
Thanks for the info regarding schedf and checkpoint. I'll take a closer look at checkpoint and see how it's used in pspautotests.


postgresql error: function date_trunc(unknown, text) does not exist LINE 1

I am trying to run a timeseries line chart as capture below. I converted one of my columns labelled date which was imported as TEXT  after uploading from csv to DATETIME and checked  the is temporal checkbox.
But when i run the query, i get the error below. I ma using postgresql as the database connection

postgresql error: function date_trunc(unknown, text) does not exist LINE 1: SELECT DATE_TRUNC('day', "Date") AS __timestamp, ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts.

What Database Engine that you use? Postgres? I tested with latest release with Postgres and I can't reproduce. Please confirm.

I am running on postgres all in docker that is redis,postgres and superset
postgresql+psycopg2://superset:XXXXXXXXXX@XXX.XX.XX.XX:5432/superset

I am using this setup
https://medium.com/uc-engineering/apache-superset-setup-in-production-a8f4ae43b330

@billy-odera can you go to SQLLab and confirm that the column "Date" is DATETIME

@dpgaspar below is the screenshot from table view

and also from sql

I think the docker amancevice/superset has an old version of superset, I am wondering if it has the right drivers. I am using postgresql:// no postgresql+psycopg2://
There is an official docker and there is also a new  blog  published a couple of days ago.

My guess is that the table column really is of type text on the Postgres DB. Please check it either with SQLLab or external Clients like, e.g., DBeaver. Just access your database, navigate to the table and check the dtypes.
Postgres' error message is pretty precise, that it is a data type mismatch on the SB table column.

because the column type is string. You can change your date column to date type, like:
to_char (create_date, 'YYYY-MM-DD')::date AS create_date


Add url parameters for prefilled search queries

Right now antalmanac.com has a "Zotistics" button that directly links to a course's grades on Zotistics:

URL: https://zotistics.com/?&selectQuarter=&selectYear=&selectDep=COMPSCI&classNum=143B&code=&submit=Submit
Please implement this on the new Zotistics before launching, otherwise it'll break our link. This button currently accounts for about 15% of Zotistics traffic.
Also it's totally fine if you want to change the url parameters, just let the #antalmanac team know if you do.

Currently blocked by #33.


Readme title is incorrect

README title should read as Spring Cloud Scheduler Cloud Foundry not Spring Cloud Scheduler.

I'm going to work on this!!!

Why haven't you merged my PR yet? It's been 2 minutes. :)


Rc/8.4.0

Release severity: Major
Release notes:
Nova Wallet v8.4.0 is here with a bunch of OpenGov improvements! 🗳

Added the Abstain vote option
Improved time estimation for when a referendum will be approved/rejected
Improved performance when loading referendum details
Other fixes & optimizations

661f8beb9aa0fbf1bb8c81d7daf74454d1233cf3


Section "Constructors"

Inside the constructor - the called function - the value of this refers to a
newly created Object. The prototype of this new
object is set to the prototype of the function object that was invoked as the
constructor.

to

Inside the constructor - the called function - the value of this refers to a
newly created object. The prototype of this new
object is set to the prototype property of the function object that was invoked as the
constructor.

During constructing, there's no direct Object invocations.

Added.


Create an MSBuild SDK for cpp/winrt

MSBuild SDK's are the bees knees. I'm not sure if there will be any equivalent work done for C++ projects like there is with .NET projects. It would be fantastic to have one for projects using Cpp/WinRT that removes a lot of the boilerplate MSBuild project file goo that is required
An example cpp/winrt UWP app .vcxproj:
<Project Sdk="Microsoft.Windows.CppWinRT">
   <PropertyGroup>
     <OutputType>AppContainerExe</OutputType>
     <TargetPlatformVersion>10.0.18632.0</TargetPlatformVersion>
     <TargetPlatformMinVersion>10.0.17134.0</TargetPlatformMinVersion>
   </PropertyGroup>
</Project>

An example cpp/winrt Win32 Desktop app .vcxproj:
<Project Sdk="Microsoft.Windows.CppWinRT">
   <PropertyGroup>
     <OutputType>WinExe</OutputType>
     <TargetPlatformVersion>10.0.18632.0</TargetPlatformVersion>
     <TargetPlatformMinVersion>10.0.17134.0</TargetPlatformMinVersion>
   </PropertyGroup>
</Project>

An example cpp/winrt library .vcxproj:
<Project Sdk="Microsoft.Windows.CppWinRT">
   <PropertyGroup>
     <OutputType>library</OutputType>
     <TargetPlatformVersion>10.0.18632.0</TargetPlatformVersion>
     <TargetPlatformMinVersion>10.0.17134.0</TargetPlatformMinVersion>
   </PropertyGroup>
</Project>

Thank Steven, that sounds neat. If you'd like to experiment and work on something like that for C++/WinRT that would be interesting, but I doubt we'll be able to find the time. Ideally, the Visual C++ team would consider such an approach. The C++ project system really needs some love.

SDK based projects heavily rely on the project system to support it (globbing etc). None of this is supported by the C++ project system as far as I know. @AugP is this something that is on the roadmap?

That doesn’t surprise me, although I wouldn’t think MSBuild would care? Or is it VS support that wouldn’t work?
I would be happy if it was everything sans globbing for ClCompile items

In my experience, MSBuild SDKs (<Project Sdk="">) and the C++ project system are totally orthogonal to each other. Neither knows nor cares about the other's existence. The C++ project system will preserve SDK elements in the project file just fine. I could certainly throw a PR together; in fact, I've been thinking about doing this for some time now.
However, that being said, we'll need to think about how to handle the project and item templates. If I were to build an SDK for CppWinRT, I would want to integrate the contents of the NuGet package into it, so I can get rid of packages.config. (I much prefer PackageReference, but the C++ project system NuGet support isn't compatible with that.) However, when I would then create an item using one of the CppWinRT project templates, VS would automatically add a reference to the NuGet package, and there is no way to stop or conditionalize this that I know of without breaking use of the templates in projects that do need to reference the NuGet package. Any pointers on how to tackle this problem would be greatly appreciated. Thanks!

@wjk glad you joined the conversation here :)
Have you seen: https://github.com/microsoft/MSBuildSdks/tree/master/src/CentralPackageVersions#centralpackageversions-and-vcxproj-files? It seems to imply that PackagReference can work for .vcxproj, however the UI in VisualStudio just doesn't work, so you have to update PackageReference's manually.
The auto-nuget reference comes from the cpp/winrt project templates. If the cpp/winrt project templates were to instead use an MSBuild SDK, they could probably avoid doing this.

What you say is correct; however, the item templates also contain an auto-nuget reference, and they are the problem, not the project templates.

Ahh yeah I see, thanks for clarifying.
It would be awesome if you could put something together, although I'd wait and see what @augp says. If the Visual C++ team is creating an MSBuild SDK then it might not make a whole lot of sense, and this issue could be changed to "Have cpp/winrt use MSBuild SDK". Last I knew they weren't investing much in this space, and were focusing on other things like cmake and vcpkg

The best way to reach the Visual C++ team is to create an issue here:
https://developercommunity.visualstudio.com/spaces/62/index.html

@kennykerr Unfortunately, developers like myself have been creating issues like this one on the C++ Developer Community space for some time now, to no avail. The Visual Studio team does not seem to be placing any more resources into developing vcxproj; the general consensus is to use CMake instead.
The problem is, you cannot use CMake to develop a UWP/WinUI project, because the tasks required to compile XAML files for use at runtime are only exposed as MSBuild tasks that require vcxproj. (More details can be found here.) CMake cannot be used to compile a C++/CLI project either, because the package resolution mechanism also requires vcxproj; nor does CMake integrate easily with a managed application built using a csproj file. (This PR aims to solve that last issue, but it has stalled.)
Since it is clear that the Visual C++ team is not going to work on this ticket, could you please consider reopening it so the community can make an attempt at solving this? Thanks so much!

Hi William, you don't have to convince me of the state of C++ project support in Visual Studio. 😉
If someone from the community would like to build a solution I'm all for it. I'm just closing this issue as the issues page here is primarily for active cppwinrt bugs or discussing features that someone is actually working on. Anyone can reopen this issue if and when there is some active progress. I just don't want the issues page to turn into into a wish list in hopes that "someone" will do the work, because practically speaking it usually comes down to me and I simply don't have the bandwidth for this.
Feel free to keep the conversation going here if that is practical.

@wjk is it just the xaml compilation task that is holding cmake back from being a reasonable solution for building cpp/winrt applications?
@kennykerr, @Scottj1s I had heard that you had attempted cmake at one point, but decided to go with MSBuild. What was the reason for that?

@stevenbrix XAML compilation, generation of the code-behind files that are a byproduct of that process, and packing those files into a PRI file are the three big tasks that currently require vcxproj. MSIX packing is easy to automate from CMake, so we don't need to worry about that. Thanks!

@wjk I'm pretty sure pri creation is available as an exe (makepri.exe). Is there other stuff that is msbuild specific that would need to be done to make that work in cmake?

@stevenbrix Yes, makepri.exe does exist, but figuring out what the correct parameters to pass to it is nontrivial. The MSBuild targets (which I would prefer to use as reference) are very convoluted. Meanwhile, the docs do not explain very well how to integrate makepri.exe into a CMake-based build process, in a way that would get it to actually work. (In my experience, if you make a mistake building your PRI file, makepri.exe will succeed without error, but the app would crash somewhere during runtime.) Thanks!

@stevenbrix - in answer, the cppwinrt nuget was created long before anyone mentioned using cmake for consuming winrt components.  so the question then becomes, "should we duplicate the cppwinrt nuget msbuild customizations for cmake?"   given the deep and complex stack of msbuild support for C++ projects, upon which the cppwinrt nuget msbuild suppport depends, and which is itself non-trivial, I seriously question the value of that.  cppwinrt is a Windows-specific technology, so it makes little sense to invest in a cross-platform invocation of it.


feat(pageserver): generate basebackup from aux file v2 storage

Problem
This pull request adds the new basebackup read path + aux file write path. I'll replace AUX_FILES_V2 with the tenant-level flag and add test matrix later. The core logic is now ready for review.
Summary of changes
Checklist before requesting a review

[x] I have performed a self-review of my code.
[ ] If it is a core feature, I have added thorough tests.
[ ] Do we need to implement analytics? if so did you add the relevant metrics to the dashboard?
[ ] If this PR requires public announcement, mark it with /release-notes label and add several sentences in this section.

Checklist before merging

[ ] Do not forget to reformat commit message to not include the above checklist

All failed tests pass locally so I assume it's something wrong with vectored get env variable in CI. Fix in https://github.com/neondatabase/neon/pull/7569.

rebased to the new scan implementation pull request and added aux_file_v2 test matrix for regress tests.

Added a new cross-validation mode to aux file policy flag, waiting for CI runs.

added https://github.com/neondatabase/neon/pull/7517/commits/26efd47e749632c1b657e6048f26536e89a82a24 to fix a bug on the code path of using vectored get for sequential get.
Think about the case if a key does not exist. In the code path, we will create a ValueReconstructState of empty image and empty WAL, which then gets passed to reconstruct_value, and throwing "base image for {key} at {request_lsn} not found" PageReconstructError::Other error. This case is actually a missing key error.
Therefore, if the cached image is not found, we do not add it to the value reconstruct state to avoid calling into reconstruct_value.
It's unknown why this case only happens when v1+v2 are both enabled. Probably due to the difference of layer map in two cases, where in one case, the vectored get code path could catch the missing key error earlier than the point that reconstruct_value gets called.


Tooltip isn't displaying some future values

The tooltip (PV Forecast & Delta views) doesn't seem to show values past about 2 hours into the future.  Just shows dashes.  See screenshot.

Looks like after 4 hours its not on there, this is only on development

@braddf this might be for you to have a look at


Manual approval required for workflow run<PHONE_NUMBER>: Release t0rn refs/tags/v1.15.0-rc.0

Please approve runtime upgrade with github release t0rn v1.15.0-rc.0
Runtime upgrade dry run output:
💈 Script started at 1880769 block in t0rn chain

🐡 Running with dryrun flag!

🐙 checking out v1.15.0-rc.0...
✅ tag checked out

🔎 making sure runtime version got updated...
✅ runtime versions updated

🫧 check WASM artifact...
🔢 WASM blake2_256 hash: 0x07df278c88b0b0b848195f955b2a3441c2a8b1f279b33dd529e3e585b0e9071b
🔢 WASM blake2_256 hash fetched from release: 0x07df278c88b0b0b848195f955b2a3441c2a8b1f279b33dd529e3e585b0e9071b
✅ WASM blake2_256 hash is matching
⚙ set_code runtime upgrade... dry
✅ runtime upgrade executed... dry

Workflow is pending manual review.
URL: https://github.com/t3rn/t3rn/actions/runs/4872054771
Required approvers: [AwesomeIbex MaciejBaj chiefbiiko petscheit palozano]
Respond "approved", "approve", "lgtm", "yes" to continue workflow or "denied", "deny", "no" to cancel.

Workflow cancelled, closing issue.


Allow user to scroll vertically in timeline

abercrom
https://jira.jpl.nasa.gov/browse/AERIEQS-424
Moderate
When there are many activities in the timeline they can stack deeply in the vertical direction. Because the timeline part of the display does not scroll independently the only way to see more activities is to resize the timeline in the vertical dimension. This is difficult for the user to do because the resize affordance is very narrow, and the mouse drag seems to get confused when it rolls over the bottom frame of the UI (see attached video). Zooming on the timeline helps a lot, but it is quite difficult to get a view that just shows all your activities at once.

Closing as obsolete with new wrapping packing algorithm


⚠ Bofrost.at has degraded performance

In d785477, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1588 ms

Resolved: Bofrost.at performance has improved in 216a65a after 13 minutes.


Recipe 9.5 'Using Horizontal Pod Autoscaling on GKE'

Before creating this svc/appserver, readers had to prepare a working cluster first; furthemore, the cluster must own enough vCPU so it can support 2 workloads appserver & loadgen; otherwise there would be 'not enough vCPU' error again.

And readers must run gcloud container clusters get-credentials again, otherwise there would be error below:
error: failed to discover supported resources: Get http://localhost:8080/apis/extensions/v1beta1: dial tcp [::1]:8080: connectex: No connection could be made because the target machine actively refused it.
After cluster creation and access was available, then readers could run appserver & loadgen to test this recipe.

Hmm, did you use the version we used in the book?

Do you mean my GKE version?

Yes, GKE version.

Erm, not the version of gcloud but the GKE version ;)

Sorry I did not get your point, it is GKE 1.9.7.

Thank you @bennybhlin and I'll leave this one open for us to take on board for the next edition.


When to use pool vs the other option?

Hi can anyone explain when should I use the pool option or the other option?

For simplest case, you can use one connection directly.
For simple but concurrent case, pool may be good for you.
When you have problem you cannot solve with pool, it's time to manage connections by yourself.


feat: ✨ syn-select should apply visual highlighting when invalid

Checklist (for the issue creator)

[x] I have looked at the documentation site and was not able to find the required feature.
[x] I have looked into the Figma boards and was not able to find the required feature.
[x] I would be willing to provide a PR for this feature.

Component
I suggest to add the feature to the following component: <syn-select />
Story

As a [User] of the Synergy Design System, I would like to [have visual feedback about the state (e.g. valid, invalid) of all provided <syn-select /> events] so that [it is easier for me to see which fields are not filled out properly]. This is already available for <syn-input />, <syn-checkbox /> and <syn-textarea />, as well as <syn-switch />.
Acceptance criteria

[ ] All DoD items successfully completed
[ ] The applied style for invalid elements should be as close as possible to the one used in <syn-input />
[ ] A storybook story is created that shows the behaviour
[ ] Framework demos are updated to include the visual change

Seems like we have missed that on first implementation then :). In this case @klaarseSICKAG was right and it is a bug, not a feature like I suggested. Will provide a fix for this soon.

Duplicate of #328


server: fix another segfault related to field filters

Commit 1 fixes the bug, commit 2 adds a nil check and a metric to catch if a similar situation happens in the future.
Fix a segmentation fault related to using field filters on exit events

Thanks @kkourt I'll fix and simplify some of the things you pointed out soon

Marking as draft again while I grab another test image.

The above will be squashed once I verify the changes ^


Allow class names with dots in create script popup

Fixes #30427.
This allows fully qualified names for classes (module.Class) to be input in the create script popup dialog.
Godot does already save such class names, but the popup doesn't allow to create them.
The reasoning behind this change is because the godot-d language binds require fully qualified names for the classes.
Signed-off-by: Ev1lbl0w<EMAIL_ADDRESS>

Thanks!


Use OAI3 specification instead of OAI2

OAI2 is almost at EOL (End-of-life) and I suggest to work on oai3. they almost ready to publish preview it in less than a month and all document can find here:
https://github.com/OAI/OpenAPI-Specification/blob/OpenAPI.next/versions/3.0.md

I see you point. However, currently there does not seem to be a Go implementation of the spec. And what is the status of the UI and other tooling?
We could start with 2 in the repository  go-restful-openapi2  and later duplicate+modify into  go-restful-openapi3

I think it isn't good idea to include version in repo name. Git is a version control and version number can be set in release cycle.
You are correct and it seems there is no go spec yet. for oai2 we can use this:
https://github.com/go-openapi/spec

I see this popped up not too long ago: https://github.com/go-openapi/spec3.


Crash in btdm_bb_isr when connecting to WiFi AP

Hi all !
I'm getting a strange crash while trying to use BLE and WiFi at the same time.  The crash seems to happen when I'm connected (to iPhone) with BLE and then attempt to establish a WiFi connection to an AP.  Looks like some kind of conflict between phy_init and a BT ISR.  This may be a bug, but may also be not appropriate usage of the device??  The crash is repeatable but doesn't happen all the time.
This is part of a big project so may take some time to cut down to a simple example if needed.  Just looking for a starting point.  It seems though this shouldn't be happening.
Using Pre-release 3.0-rc1
`I (27233) WIFI: Connecting...
I (27281) BLE GATTS: ESP_GATTS_READ_EVT, Connection ID: 0, Transfer Id: 32, Handle: 77, Need Response: No
I (27853) wifi: n:1 0, o:1 0, ap:255 255, sta:1 0, prof:1
I (27853) wifi: state: init -> auth (b0)
I (27861) wifi: state: auth -> assoc (0)
I (27869) wifi: state: assoc -> run (10)
I (27893) wifi: connected with Plantiga Office, channel 1
Guru Meditation Error: Core  0 panic'ed (Cache disabled but cached memory region accessed)
Core 0 register dump:
PC      : 0x40192a3c  PS      : 0x00060034  A0      : 0x80087559  A1      : 0x3ffc05c0
0x40192a3c: phy_enter_critical at /home/colin/sdk/esp-idf/components/esp32/./phy_init.c:50
A2      : 0x00e0a000  A3      : 0xb0000000  A4      : 0x00060023  A5      : 0x000000ff
A6      : 0x00000000  A7      : 0x00000000  A8      : 0x8008da81  A9      : 0x3ffc05a0
A10     : 0x00000001  A11     : 0x3ffc05c0  A12     : 0x3ffc05c8  A13     : 0x0000a9d4
A14     : 0x00000000  A15     : 0x00000000  SAR     : 0x00000011  EXCCAUSE: 0x00000007
EXCVADDR: 0x00000000  LBEG    : 0x400014fd  LEND    : 0x4000150d  LCOUNT  : 0xfffffffd
Core 0 was running in ISR context:
EPC1    : 0x40062221  EPC2    : 0x4000bff0  EPC3    : 0x00000000  EPC4    : 0x40192a3c
0x40192a3c: phy_enter_critical at /home/colin/sdk/esp-idf/components/esp32/./phy_init.c:50
Backtrace: 0x40192a3c:0x3ffc05c0 0x40087556:0x3ffc05f0 0x40082b81:0x3ffc0610 0x4006221e:0x00000000
0x40192a3c: phy_enter_critical at /home/colin/sdk/esp-idf/components/esp32/./phy_init.c:50
0x40087556: btdm_bb_isr at intc.c:?
0x40082b81: _xt_lowint1 at /home/colin/sdk/esp-idf/components/freertos/./xtensa_vectors.S:1105
CPU halted.
`

Same here, no WiFi, only classic BT (a2dp_sink example), also errors on pair/connect:
E (81812) BT: btm_sec_conn_req
E (81822) BT: btm_sec_connected
Guru Meditation Error: Core  0 panic'ed (Cache disabled but cached memory region
 accessed)
Core 0 register dump:
PC      : 0x40084949  PS      : 0x00060034  A0      : 0x80004160  A1      : 0x3f
fc0530
0x40084949: ram_chip_i2c_readReg at /home/cff/gittree/chip7.1_phy/chip_7.1/board
_code/app_test/pp/phy/phy_chip_v7_ana.c:1802

A2      : 0x00000062  A3      : 0x00000001  A4      : 0x00000005  A5      : 0x3f
fdb240
A6      : 0x3ffae270  A7      : 0x00060123  A8      : 0xbad00bad  A9      : 0x3f
404aa8
A10     : 0x00060023  A11     : 0x3ffdb220  A12     : 0xffffffff  A13     : 0x3f
fdb210
A14     : 0x3ffae270  A15     : 0x3ffdb240  SAR     : 0x00000015  EXCCAUSE: 0x00
000007
EXCVADDR: 0x00000000  LBEG    : 0x4000c2e0  LEND    : 0x4000c2f6  LCOUNT  : 0x00
000000
Core 0 was running in ISR context:
EPC1    : 0x40062230  EPC2    : 0x00000000  EPC3    : 0x00000000  EPC4    : 0x40
084949
0x40084949: ram_chip_i2c_readReg at /home/cff/gittree/chip7.1_phy/chip_7.1/board
_code/app_test/pp/phy/phy_chip_v7_ana.c:1802

Backtrace: 0x40084949:0x3ffc0530 0x4000415d:0x3ffc0550 0x400041da:0x3ffc0570 0x4
0084a45:0x3ffc0590 0x40084d64:0x3ffc05b0 0x40087cfe:0x3ffc05e0 0x40081e16:0x3ffc
0600 0x4006222d:0x00000000
0x40084949: ram_chip_i2c_readReg at /home/cff/gittree/chip7.1_phy/chip_7.1/board
_code/app_test/pp/phy/phy_chip_v7_ana.c:1802

0x40084a45: pll_correct_dcap at /home/cff/gittree/chip7.1_phy/chip_7.1/board_cod
e/app_test/pp/phy/phy_chip_v7_ana.c:1802

0x40084d64: bt_track_pll_cap at /home/cff/gittree/chip7.1_phy/chip_7.1/board_cod
e/app_test/pp/phy/phy_chip_v7_ana.c:1802

0x40087cfe: btdm_bb_isr at intc.c:?

0x40081e16: _xt_lowint1 at C:/msys32/home/esp/esp-idf/components/freertos/xtensa
_vectors.S:1105

I've updated to the very latest commits and now see this crash happening exactly as Elektrik1, in phy_chip_v7_ana.c

Thanks for the reports folks! The original issue reported by @ColinFitzgerald was fixed in https://github.com/espressif/esp-idf/commit/95af1c22b5c46170aa8508f18a5b8d0a0d2b19ff, but there was an unrelated change in https://github.com/espressif/esp-idf/commit/2242bf9b37efa900c6e2e10ab89e9c2afc4e2701#diff-d7a5610415927bcc3e2c66fe5f0680eb which moved libphy.a's .rodata from DRAM into flash. This caused the second version of the issue which you are observing in the latest git version.
We'll have the fix shortly; in the meantime, you can revert the deletion of *libphy.a:(.rodata .rodata.*) line in components/esp32/ld/esp32.common.ld (see diff link above).

Awesome! Thank-you for the super quick response! Loving the ESP32 and it's ecosystem!! <3


[BUG] Chapter 11: ExponentialDecay uses global step number instead of instance step number for learning rate update

The ExponentialDecay class defined in the chapter 11 notebook initializes an instance variable self.s that holds the number of steps. In the on_epoch_begin() method, the learning rate is updated, but it currently uses s instead of self.s when calculating the new learning rate:
class ExponentialDecay(keras.callbacks.Callback):
    def __init__(self, s=40000):
        super().__init__()
        self.s = s

    def on_batch_begin(self, batch, logs=None):
        # Note: the `batch` argument is reset at each epoch
        lr = K.get_value(self.model.optimizer.learning_rate)
        K.set_value(self.model.optimizer.learning_rate, lr * 0.1**(1 / s))

[...]

s = 20 * len(X_train) // 32 # number of steps in 20 epochs (batch size = 32)
exp_decay = ExponentialDecay(s)
history = model.fit(X_train_scaled, y_train, epochs=n_epochs,
                    validation_data=(X_valid_scaled, y_valid),
                    callbacks=[exp_decay])

The reason that this doesn't throw an exception is because s is defined in the global scope where it was used to initialize the exp_decay object. Still, I think the original intention was probably to use self.s in on_batch_begin(), right?

Oh good catch, thanks! I'll fix this now.


Null check GL hook driver before calling CheckImplicitThread

Explanation for the issue in https://github.com/baldurk/renderdoc/issues/1272#issuecomment-635641208

Quoting the explanation here. Splitting the discussion between two issues makes things harder to track.

It looks like commit feafbde introduced a crash on macOS GL capture replay. Reverting that commit works around the crash.
While creating the NSOpenGLContext, the [context update] call ends up calling glGetIntegerv internally. But because glGetIntegerv is replaced with the interposed function, it calls the CheckImplicitThread before the CGL driver is fully initialized, and crashes on a null pointer execution.
Call stack for the crashing thread looks like:
0   librenderdoc.dylib            	0x000000010cb91ad0 WrappedOpenGL::CheckImplicitThread() + 16 (gl_driver.cpp:998)
1   librenderdoc.dylib            	0x000000010cf28328 glGetIntegerv_renderdoc_hooked(RDCGLenum, int*) + 56 (gl_hooks.cpp:151)
2   librenderdoc.dylib            	0x000000010cf284eb interposed_glGetIntegerv + 27 (gl_hooks.cpp:151)
3   com.apple.AppKit              	0x00007fff391415a1 -[NSOpenGLContext(NSOpenGLContextInternal) _updateOpenGLViewport] + 91
4   com.apple.AppKit              	0x00007fff39141c1e -[NSOpenGLContext update] + 408
5   librenderdoc.dylib            	0x000000010d0d625a NSGL_createContext + 634 (cgl_platform.mm:69)
6   librenderdoc.dylib            	0x000000010d0d850e CGLPlatform::MakeOutputWindow(WindowingData, bool, GLWindowingData) + 814 (cgl_platform.cpp:196)
7   librenderdoc.dylib            	0x000000010cb6ec5a GLReplay::MakeOutputWindow(WindowingData, bool) + 250 (gl_outputwindow.cpp:215)
8   librenderdoc.dylib            	0x000000010e16e301 ReplayOutput::ReplayOutput(ReplayController*, WindowingData, ReplayOutputType) + 545 (replay_output.cpp:116)
9   librenderdoc.dylib            	0x000000010e16e580 ReplayOutput::ReplayOutput(ReplayController*, WindowingData, ReplayOutputType) + 64 (replay_output.cpp:127)
10  librenderdoc.dylib            	0x000000010e189fa6 ReplayController::CreateOutput(WindowingData, ReplayOutputType) + 854 (replay_controller.cpp:1798)
11  org.renderdoc.qrenderdoc      	0x000000010b196898 BufferViewer::OnCaptureLoaded()::$_22::operator()(IReplayController*) const + 104 (BufferViewer.cpp:2303)
12  org.renderdoc.qrenderdoc      	0x000000010b196820 void std::__1::__invoke_void_return_wrapper<void>::__call<BufferViewer::OnCaptureLoaded()::$_22&, IReplayController*>(BufferViewer::OnCaptureLoaded()::$_22&&&, IReplayController*&&) + 80 (__functional_base:350)
13  org.renderdoc.qrenderdoc      	0x000000010b196719 std::__1::__function::__func<BufferViewer::OnCaptureLoaded()::$_22, std::__1::allocator<BufferViewer::OnCaptureLoaded()::$_22>, void (IReplayController*)>::operator()(IReplayController*&&) + 57 (functional:1562)
14  org.renderdoc.qrenderdoc      	0x000000010acab384 std::__1::function<void (IReplayController*)>::operator()(IReplayController*) const + 132 (functional:1913)
15  org.renderdoc.qrenderdoc      	0x000000010acaaf42 ReplayManager::run(int, QString const&, ReplayOptions const&, std::__1::function<void (float)>) + 1858 (ReplayManager.cpp:482)
16  org.renderdoc.qrenderdoc      	0x000000010acaf283 ReplayManager::OpenCapture(QString const&, ReplayOptions const&, std::__1::function<void (float)>)::$_0::operator()() const + 115 (ReplayManager.cpp:55)
17  org.renderdoc.qrenderdoc      	0x000000010acaf1fd void std::__1::__invoke_void_return_wrapper<void>::__call<ReplayManager::OpenCapture(QString const&, ReplayOptions const&, std::__1::function<void (float)>)::$_0&>(ReplayManager::OpenCapture(QString const&, ReplayOptions const&, std::__1::function<void (float)>)::$_0&&&) + 45 (__functional_base:350)
18  org.renderdoc.qrenderdoc      	0x000000010acaeda9 std::__1::__function::__func<ReplayManager::OpenCapture(QString const&, ReplayOptions const&, std::__1::function<void (float)>)::$_0, std::__1::allocator<ReplayManager::OpenCapture(QString const&, ReplayOptions const&, std::__1::function<void (float)>)::$_0>, void ()>::operator()() + 41 (functional:1562)
19  org.renderdoc.qrenderdoc      	0x000000010acac636 std::__1::function<void ()>::operator()() const + 102 (functional:1913)
20  org.renderdoc.qrenderdoc      	0x000000010acabb94 LambdaThread::process() + 68 (QRDUtils.h:339)
21  org.renderdoc.qrenderdoc      	0x000000010acac5ae QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (LambdaThread::*)()>::call(void (LambdaThread::*)(), LambdaThread*, void**) + 126 (qobjectdefs_impl.h:152)
22  org.renderdoc.qrenderdoc      	0x000000010acac503 void QtPrivate::FunctionPointer<void (LambdaThread::*)()>::call<QtPrivate::List<>, void>(void (LambdaThread::*)(), LambdaThread*, void**) + 99 (qobjectdefs_impl.h:186)
23  org.renderdoc.qrenderdoc      	0x000000010acac416 QtPrivate::QSlotObject<void (LambdaThread::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) + 166 (qobjectdefs_impl.h:415)
24  org.qt-project.QtCore         	0x0000000110658d0b QMetaObject::activate(QObject*, int, int, void**) + 2219
25  org.qt-project.QtCore         	0x0000000110460868 QThread::started(QThread::QPrivateSignal) + 56
26  org.qt-project.QtCore         	0x0000000110461059 QThreadPrivate::start(void*) + 297
27  libsystem_pthread.dylib       	0x00007fff63b29661 _pthread_body + 340
28  libsystem_pthread.dylib       	0x00007fff63b2950d _pthread_start + 377
29  libsystem_pthread.dylib       	0x00007fff63b28bf9 thread_start + 13

Null checking glhook.driver before calling CheckImplicitThread on it also works as a naive fix, but it might be a bit too much so. Without a full understanding of the thread switching issue that required the addition of that context tracking functionality, I can't be certain it won't break anything... But as far as I can tell, the only time when glhook.driver would be unexpectedly null is before/during context creation, and I should hope that the CGL implementation doesn't change the context in the middle of this.

The problem is that this fix doesn't look like it addresses the core problem. Checking glhook.driver here may fix an immediate crash but the hook will then go on to call through glhook.driver for the real function anyway after that. There's a bit of macro chasing to see this, but if you look at where SCOPED_GLCALL is actually used in gl_dispatch_table_defs.h you'll see that glhook.driver is used immediately after. If this wasn't crashing before my guess is that it was getting lucky and only calling glGetIntegerv and only with enums that don't require the driver to access this, so it managed to survive and call into the real function GL.glGetIntegerv.
The root problem here is that the hooks are not expected to be called at all on replay and they aren't set up for it at all, the glhook.driver pointer will never be set on replay. On linux and mac though the hooking is unconditional when librenderdoc.so is loaded, so it's unavoidable that any code on replay calling these functions will call into the hook. On linux this doesn't seem to happen but I guess it does on mac.
I think the solution will also have to include the kind of protection that's already in the CGL and GLX functions, right at the start if we're replaying we just forward the call straight on to the real function:
  if(RenderDoc::Inst().IsReplayApp())
  {
    if(!CGL.CGLCreateContext)
      CGL.PopulateForReplay();

    return CGL.CGLCreateContext(pix, share, ctx);
  }

The best place for this is probably the UNINIT_CALL macro.
Within gl_hooks.cpp the populate function will be a bit more complex. It will need to check either GetGLPlatform() or GetEGLPlatform() depending on GL/EGL support (in that order I think), call GLPlatform::PopulateForReplay() then use GLPlatform::GetReplayFunction() to pass to GL.PopulateWithCallback. That should then populate the onward GL functions to call instead of the driver hook.

Fair point regarding the function call not getting forwarded from the hook--I was fixated on resolving the crash and because the function not getting forwarded seemed asymptomatic, I didn't think to wonder why it's happening. I'll adapt the fix accordingly and test a bit.

I think the function call is getting forwarded - that's what worries me. It's calling glhook.driver->glGetIntegerv with glhook.driver == NULL, but calling that might not crash if you only call e.g. glGetIntegerv(GL_MAJOR_VERSION) and it doesn't try to access this inside the call.

Your initial hunch about writing a workaround in UNINIT_CALL might have been spot on. I manually expanded the glGetIntegerv hook to get a better understanding of what's happening and to be able to debug whether it is forwarding the hook or not, and it seems like UNINIT_CALL is working as intended already.
It looks like GL hooking is disabled (as it sounds like it should be, for replaying). When stepping through the manually expanded glGetIntegerv call, glhook.enabled is false, so it is not actually calling the hooked version, but just directly calling the GL driver's implementation through UNINIT_CALL.
With that in mind, perhaps a better version of this crash fix would be to avoid calling CheckImplicitThread if glhook.enabled is false, rather than null checking.

Ah interesting, that wasn't at all the intention of UNINIT_CALL in the first place but it seems like it sort of works. I'm a little shakey about relying on that coincidence but it's probably as good a fix.
That does still mean though that there's a potential problem on linux where UNINIT_CALL isn't used, since linux has the same issue where those hooks could get called on replay by any statically linked code that doesn't use dlsym or glXGetProcAddress.

True. I can't vouch for Linux, but I can at least confirm that the workaround of checking glhook.enabled works correctly. If that's good enough for now, great--if you'd rather do a fully fledged check of RenderDoc::Inst().IsReplayApp() as initially suggested, I can revisit this fix later, for now I have to get back to fixing the issue I was using macOS RenderDoc to diagnose in the first place. :)


Google Authentication using Firebase

I would like to implement Google authentication using Firebase. This feature would allow users to log in quickly and securely using their Google accounts, streamlining the authentication process and improving user experience. It can also enhance security by relying on Google’s authentication infrastructure, which is well-established and trusted.

@ANSHIKA-26 Could also please add the level to