MacOS Continued Issue 😢

Describe the bug
Well, I thought updating the node-js teradata driver fixed the issue, but after this was deployed and installed in my VScode, I'm getting errors still.
To Reproduce
Steps to reproduce the behavior:
Use M1 Macbook Pro
Open VS Code
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots

Desktop (please complete the following information):

OS: Monterey
Browser edge

Additional context
[1683319136874] INFO  (ext): SQLTools is starting
[1683319136876] INFO  (ext): initializing language client...
[1683319136877] INFO  (ext): Registering client for languages [{"scheme":"sqltools"},{"language":"sql","scheme":"untitled"},{"language":"sql","scheme":"file"},{"language":"sql","scheme":"sqltools"}]
    ns: "lc"
[1683319136879] INFO  (ext): loading plugins...
[1683319136880] INFO  (ext): registering Formatter Plugin.
    plugin: {
      "name": "Formatter Plugin"
    }
[1683319136880] INFO  (ext): registering Connection Manager Plugin.
    plugin: {
      "name": "Connection Manager Plugin"
    }
[1683319136880] INFO  (ext): registering CodeLens Plugin.
    plugin: {
      "name": "CodeLens Plugin",
      "registeredLanguages": []
    }
[1683319136881] INFO  (ext): registering Dependency Manager Plugin.
    plugin: {
      "name": "Dependency Manager Plugin",
      "installingDrivers": []
    }
[1683319136883] INFO  (ext): Connection explorer changed. Will be updated.
    ns: "conn-man:explorer"
[1683319136883] INFO  (ext): registering History Manager Plugin.
    plugin: {
      "name": "History Manager Plugin"
    }
[1683319136883] INFO  (ext): registering Bookmarks Manager Plugin.
    plugin: {
      "name": "Bookmarks Manager Plugin"
    }
[1683319136883] INFO  (ext): registering Authentication Provider Plugin.
    plugin: {
      "name": "Authentication Provider Plugin",
      "isRegistered": false
    }
[1683319136884] INFO  (ext): SQLTools activation completed. 9.830333 ms
[1683319136884] INFO  (ext): Formatter Plugin registered!
[1683319136884] INFO  (ext): CodeLens Plugin registered!
[1683319136884] INFO  (ext): Dependency Manager Plugin registered!
[1683319136884] INFO  (ext): Connection Manager Plugin registered!
[1683319136884] INFO  (ext): History Manager Plugin registered!
[1683319136884] INFO  (ext): Bookmarks Manager Plugin registered!
[1683319136884] INFO  (ext): Authentication Provider Plugin registered!
[1683319137029] INFO  (ls): SQLTools Server started!
===============================
Using node runtime?: no
ExecPath: /Applications/Visual Studio Code.app/Contents/Frameworks/Code Helper (Plugin).app/Contents/MacOS/Code Helper (Plugin)
===============================
[1683319137033] INFO  (ext): LanguageClient ready
    ns: "lc"
[1683319137033] INFO  (ls): Initialized with node version:v16.17.1
[1683319137883] INFO  (ext): EXECUTING COMMAND => sqltools.refreshTree
[1683319137884] INFO  (ext): Connection explorer changed. Will be updated.
    ns: "conn-man:explorer"
[1683319138888] INFO  (ext): Connection explorer changed. Will be updated.
    ns: "conn-man:explorer"
[1683319178828] INFO  (ext): registering SQLTools Teradata Driver Plugin (driver).
    plugin: {
      "extensionId": "ScriptPup.sqltools-teradata-driver",
      "name": "SQLTools Teradata Driver Plugin",
      "type": "driver"
    }
[1683319178828] INFO  (ls): REQUEST RECEIVED => ls/RegisterPlugin
[1683319178829] INFO  (ls): request to register plugin: "/Users/username/.vscode/extensions/scriptpup.sqltools-teradata-driver-0.3.4/out/ls/plugin.js"
[1683319178897] ERROR (ls): Error registering plugin: {}
    error: {}
[1683319178898] ERROR (ext): ERROR: Error loading plugin SQLTools Teradata Driver Plugin Request ls/RegisterPlugin failed with message: No native build was found for platform=darwin arch=arm64 runtime=electron abi=110 uv=1 armv=8 libc=glibc node=16.17.1 electron=22.4.8
    loaded from: /Users/username/.vscode/extensions/scriptpup.sqltools-teradata-driver-0.3.4/node_modules/ref-napi
, {"code":-32603}
    ns: "error-handler"
[1683319179833] INFO  (ext): EXECUTING COMMAND => sqltools.refreshTree
[1683319179833] INFO  (ext): Connection explorer changed. Will be updated.
    ns: "conn-man:explorer"
[1683319181878] INFO  (ext): EXECUTING COMMAND => sqltools.showOutputChannel

So I tried pulling the latest master branch and running it in VSCode as development extension and get a different error:

[1683319889982] INFO  (ls): Initialized with node version:v16.17.1
[1683319889985] INFO  (ls): REQUEST RECEIVED => ls/RegisterPlugin
[1683319889985] INFO  (ls): request to register plugin: "/Users/username/Documents/GitHub/sqltools-teradata-driver/out/ls/plugin.js"
[1683319890053] ERROR (ls): Error registering plugin: {}
    error: {}
[1683319890054] ERROR (ext): ERROR: Error loading plugin SQLTools Teradata Driver Plugin Request ls/RegisterPlugin failed with message: Error in native callback, {"code":-32603}
    ns: "error-handler"
[1683319890916] INFO  (ext): EXECUTING COMMAND => sqltools.refreshTree
[1683319890916] INFO  (ext): Connection explorer changed. Will be updated.
    ns: "conn-man:explorer"
[1683319891876] INFO  (ext): Connection explorer changed. Will be updated.
    ns: "conn-man:explorer"

@ScriptPup , long time no talk :).
I've another user on Windows who reported the same issue with the same error code, but on Windows:
[1683852174342] ERROR (ext): ERROR: Error loading plugin SQLTools Teradata Driver Plugin Request ls/RegisterPlugin failed with message: Error in native callback, {"code":-32603}

Are you able to tell which part of native code is it coming from? Does it look to you as if it was coming from the teradata nodejs driver?

I can't tell.. I just tried again, i'm not sure how to answer your questions since I dont know what exactly is happening.
Tried looking through a bunch of code but really its the blind leading the blind here as I'm not a developer.
[1683901981707] INFO  (ls): Initialized with node version:v16.17.1
[1683901981710] INFO  (ls): REQUEST RECEIVED => ls/RegisterPlugin
[1683901981710] INFO  (ls): request to register plugin: "/Users/m16575/Documents/GitHub/sqltools-teradata-driver/out/ls/plugin.js"
[1683901981843] ERROR (ls): Error registering plugin: {}
    error: {}
[1683901981844] ERROR (ext): ERROR: Error loading plugin SQLTools Teradata Driver Plugin Request ls/RegisterPlugin failed with message: Error in native callback, {"code":-32603}
    ns: "error-handler"
[1683901982686] INFO  (ext): EXECUTING COMMAND => sqltools.refreshTree

And perhaps https://github.com/microsoft/vscode/issues/181678 is relevant too, assuming you're using VS Code 1.78. If you are, can you try downgrading to 1.77?

Back at you @adamtwo! Is your user running windows 10 or windows 11? #25 appears to be very similar to this for windows 11.
@gjsjohnmurray's suggestion that this is due to the node version seems possible. I haven't been able to reproduce this on my system, but there may be some incompatibility with another installed package that I don't have or something of that nature.
I think getting more environment details may be helpful. The original errors @Austin1 posted are a bit strange since they mention a Debian build being missing when they're trying to install on a Mac.
I've only had time for a pretty cursory check so far, but I'm not finding the statement Error in native callback directly in the tdnode driver, the teradata plugin, or the sqltools package. So either that's coming directly from a binary, or the error statement is more dynamic in nature.
I'm currently in the middle of renovations for moving house, so I'll have pretty spotty availability in the upcoming weeks (months?), but I'll hopefully have some more time to check further this evening. Any additional environment information that you all could provide would likely we helpful.

And perhaps microsoft/vscode#181678 is relevant too, assuming you're using VS Code 1.78. If you are, can you try downgrading to 1.77?

I'm on a Mac and the extension stopped working when I upgraded to 1.78. I think you are right. VS Code 1.78 upgraded Electron to version 22. That brought in node.js 16.17.1. The extension relies on the Teradata node.js driver which in turn depends on ffi-napi. The library doesn't work with node.js 16.
The only workaround that comes to my mind is to downgrade VS Code to 1.77: https://code.visualstudio.com/updates/v1_77.

Hi @adamtwo, any chance you were able to downgrade the VSCode version to test? I haven't been able to reproduce the error on my system, but I'm running windows 10. The two reports of this error are from Mac and Windows 11; and I don't have access to either.

Hi @adamtwo, any chance you were able to downgrade the VSCode version to test? I haven't been able to reproduce the error on my system, but I'm running windows 10. The two reports of this error are from Mac and Windows 11; and I don't have access to either.

I confirm that downgrading to 1.77 resolves the issue on my Intel Mac.

I have the same error on MacOS as Austin1. Was that ever solved? Thanks !

I believe as of now the workaround is to downgrade VSCode to 1.77 until https://github.com/microsoft/vscode/issues/181678 is resolved.

Correct, to have the extension work again, you have to downgrade to VSCode 1.77.
On a related note, this workaround works for intel macs. If you have an M1/M2 mac, this is still no supported by the Teradata node.js driver and won't work even on VSCode .177.

@adamtwo  thank you for this clarification. I'm on an M1 Mac and so that's probably why I'm getting all the issues. Does this issue resolve the M1/M2 issue? https://github.com/worksofliam/blog/issues/51

I back over here being annoyed by this issue -- do we know if this extension uses node-odbc? I was following breadcrumbs from above and wondering if this is used in this extension and if it can be updated to maybe support ARM processors?
https://github.com/worksofliam/blog/issues/51#issuecomment-1294096824

I back over here being annoyed by this issue -- do we know if this extension uses node-odbc? I was following breadcrumbs from above and wondering if this is used in this extension and if it can be updated to maybe support ARM processors?
worksofliam/blog#51 (comment)

Hi @Austin1 , it's not related to node-odbc. Without going into too many details, many Teradata drivers, including the nodejs driver, depend on a library written in go that implements the Teradata wire protocol. This nodejs driver also depends on that go library. That library has not been compiled for ARM.
@ScriptPup, I'll reach out to you to discuss this.

I found this: https://support.teradata.com/knowledge?id=kb_article_view&sys_kb_id=50776fb787b5d9901aec53d73cbb357b
references GOSQL-87 having ARM support? Does that mean anything in this context?

I found this: https://support.teradata.com/knowledge?id=kb_article_view&sys_kb_id=50776fb787b5d9901aec53d73cbb357b
references GOSQL-87 having ARM support? Does that mean anything in this context?

@Austin1, yes, you are correct, Teradata drivers now support ARM. I have a PR https://github.com/ScriptPup/sqltools-teradata-driver/pull/26 to upgrade this extension to use a version of the driver that supports ARM. Please note, that this doesn't resolve the incompatibility with Node 16 so keeping VSCode downgraded to 1.77 will still be necessary even with the new driver.

Awesome, I'll try this tomorrow and see how it works locally at work. Where can I monitor this incompatibility with Node 16? I saw on the main ffi-napi issues page that someone thanked this person for their fork, it seems to be pretty updated.. no idea if that means anything for this project but thought I'd mention it!
https://github.com/lwahonen/node-ffi-napi/pkgs/npm/ffi-napi

well this is painful, I just downgraded to 1.76 and then tried your PR, but SQLTools requires 1.78.0, so I can't test without finding a way to build a downgraded version of SQLTools THEN building this verison.

The extension now works on Macs when sqltools.useNodeRuntime property is to true. Basically, it tells SQL Tools to use an external nodejs instance to load the extension. As a result,  the extension doesn't use the same memory space as Electron and avoids native errors in memory management.
I've created a PR that adds info about the workaround to the README: https://github.com/ScriptPup/sqltools-teradata-driver/pull/29

Thanks to the updates @adamtwo contributed for 0.5.0, this should be resolved. I'm closing the issue out as it should be resolved. Let us know if you continue to have trouble!


[stable/dex] https secret volume fix

What this PR does / why we need it:
No need to mount https cert volume into the container when https termination is disabled.
Which issue this PR fixes
n/a
Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[X] DCO signed
[X] Chart Version bumped
[ ] Variables are documented in the README.md
[X] Title of the PR starts with chart name (e.g. [stable/chart])

/assign @desaintmartin
Small fix for my previous changeset, please review

/lgtm


pico-sdk: 1.4.0 -> 1.5.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/raspberrypi/pico-sdk/releases.
meta.description for pico-sdk is: SDK provides the headers, libraries and build system necessary to write programs for the RP2040-based devices
meta.homepage for pico-sdk is: https://github.com/raspberrypi/picotool
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.5.0 with grep in /nix/store/sc93m3ywp9m9a7hajg6lkwni0z0r649r-pico-sdk-1.5.0
found 1.5.0 in filename of file in /nix/store/sc93m3ywp9m9a7hajg6lkwni0z0r649r-pico-sdk-1.5.0

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath
pico-sdk
picotool

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/sc93m3ywp9m9a7hajg6lkwni0z0r649r-pico-sdk-1.5.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A pico-sdk https://github.com/r-ryantm/nixpkgs/archive/d0fa8c16b69f35a4e7d8e246681747a9f25dccaa.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/sc93m3ywp9m9a7hajg6lkwni0z0r649r-pico-sdk-1.5.0
ls -la /nix/store/sc93m3ywp9m9a7hajg6lkwni0z0r649r-pico-sdk-1.5.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

pico-sdk
picotool

Maintainer pings
cc @muscaln for testing.

Result of nixpkgs-review pr 216004 run on aarch64-darwin 1

2 packages built:

pico-sdk
picotool


Cannot indentify CSR Bluecore firmware segment

HI!
My binwalk(V2.1.1) cannot identify CSR Bluecore firmware segment.
The magic word is CSRbcfw1, and It's in my file on 0x10000, but binwalk dosen't work.
Here is my file :
And Here is my binwalk result:
$ binwalk xpv_little.bin
DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------

EDIT: I upload wrong file.
xpv_little.zip
Here is my real file.

No result at all ?
Let me try

@chankruze  Yes, No result.
xpv_little.zip
I double check that my file contain CSRbcfw1 and get no result on binwalk.

@ChoKyuWon
yes, i found CSRbcfw1 in Linear Disassembly between location 00000660 and 00000680.Open attached file in hex editer.
xdv_little.txt
So we need a response here.

@chankruze  Well, I think I upload wrong file on first comment. firmware is on XPV, not XDV.
I think XDV is just data file, not firmware segment. Maybe u2CSRbcfw1CSR-dfu1CSR-dfu2L is just showed as firmware version.
In XPV,  magic word CSRbcfw1 is on 10000.

I want to know that binwalk is also not work on XPV file.
In summarize,

binwalk is not work on XDV file(xdv_little.bin) and file contain u2CSRbcfw1CSR-dfu1CSR-dfu2L  on 00000660 to 00000680
Is binwalk also not work on XPV file(xpv_little.zip)? It contain CSRbcfw1 on 00010000 and in my environment, binwalk is not work.

Yes i checked XPV file, CSRbcfw1 on 00010000.
I have a a Minix image, firmware mod kit is unable to extract it, any suggestion ?
the repo for that image is https://github.com/chankruze/Intex_Eco_Beats

@chankruze
I can't understand what did you talking about.(because my poor english, maybe).
Do you mean your Minix image contain bluetooth firmware but firmware mod kit can't extract it?
If you mean this, I have no idea. Bluetooth use processer named XAP Familly, and it's disassembler is so hard to find.
Maybe this IDA plugin might help : https://github.com/comex/xap, but I'm not sure.
If you mean another thing, please tell me more specifically.
Thanks,


Batch's JobDetail requires optional field startedAt

Requests to https://batch.us-east-1.amazonaws.com/v1/describejobs may return
{
    "jobs":[
        {
            "jobName":"123",
            "jobId":"some-id",
            "jobQueue":"arn:aws:batch:us-east-1:XXX:job-queue/a-job-queue",
            "status":"FAILED",
            "attempts":[],
            "statusReason":"Cancelled via console.",
            "createdAt":1587767042358,
            "dependsOn":[],
            "jobDefinition":"arn:aws:batch:us-east-1:XXX:job-definition/a-job-def:1",
            "parameters":{},
            "container":{
                "image":"XXX.dkr.ecr.us-east-1.amazonaws.com/some-image:1.0.0",
                "vcpus":8,
                "memory":2048,
                "command":["some command"],
                "volumes":[],
                "environment":[],
                "mountPoints":[],
                "ulimits":[],
                "networkInterfaces":[],
                "resourceRequirements":[]
            }
        }
    ]
}

in the situation where a job had failed before it started (e.g. canceled from the console).
The response lacks the startedAt field within the JobDetail structure.
This causes a deserilization error as the specification lists startedAt as a required field (see link).

@schmidmt - Thank you for your post. According to the documentation startedAt value will populate when the job transitioned from the STARTING state to the RUNNING state. So if job had failed before it started then the service won't send that parameter in the response.
So the behavior you are getting is the expected behavior. Can you please give me some more detail on the error you are getting ?

@swetashre - Thanks for the help on this. The specification of the object JobDetail requires the presence of the field startedAt. Code that uses this specification may fail if the field is not present even though the JobDetail object is valid without it.

@schmidmt - Thank you for the reply. I agree this is inconsistent as not all the job contain the startedAt field. I will reach out to the service team about the issue as this file comes from upstream and they will be the one to decide how to fix this. I will post here when i get any update.


CDR

Hello! Thanks for your excellent work~
I'm interested in your work on the two biomedical datasets CDR and GDA, could you share the relevant code?
Best wishes!

The codes on CDR and GDA are same with the DocRED version, you only need to process the data to fit the format of DocRED.

ok, thanks


blog: remove blog content from Go source package

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
1.9
Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
every
What did you do?
$ du -h SRC/blog

19M     blog/content
19M     blog

If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
What did you expect to see?
no blog content
What did you see instead?
no
Now the Go blog content takes about 19MB in source code repos.
As I'd tried to remove blog directory and repack the whole GOROOT, the pkg reduce about 16MB.
-rw-r--r--  1 root staff  82M Sep 18 11:29 go1.9.linux-amd64..no_blog.tar.gz
-rw-r--r--  1 root root   98M Aug 25 06:44 go1.9.linux-amd64.tar.gz

If this is done, and one runs godoc -http=localhost:6060, what do you expect/want to show up at http://localhost:6060/blog/? Currently, it shows the blog.

I think redirect to https://blog.golang.org for the lastest blog is much more appropriate .

I can't seem to find an issue for it now, but I'm pretty sure there have been thoughts/discussions about moving the golang.org website functionality out of the main repository into a sub-repository or so. This issue seems at least vaguely related to that.

(sigh my poor English
I've did the search on Github no move to subrepos issues AFAIK
Most of the user just don't need those images and blog content for their build machine or server.
Those blog contents will grow to huge size if every post is looks alike.
https://blog.golang.org/community-outreach-working-group
If they want to check out blog, they will find a way.

Growth rate of the blog is +~2MB/Year. Deleting merits a 20MB reduction with drawbacks: content locality loss. I use the self-hosted blog when demonstrating how easy it is to run a web server in Go. Perhaps I represent a small percentile of Go users, but its hard to ignore convention and convenience.

Don't you mean "blog: remove blog content from Go binary downloads"?
https://github.com/golang/blog
FWIW, I don't understand the logic of :
Prefix your issue with "blog:" in the subject line, so it is easy to find.
rather than
Prefix your issue with "x/blog:" in the subject line, so it is easy to find.
the latter being consistent with README.md files of other subrepos (where golang.org/go/issues is the main issue tracker for the subrepo).
Anyways, I think the blog README.md might be more comprehensive with the following changes.
Download/Install
The easiest way to install is to run go get -u golang.org/x/blog. You can also manually git clone the repository to $GOPATH/src/golang.org/x/blog. To build a clone (on Unix-like) run go build -o blog ./blog or (on Windows) run go.exe build -o blog.exe ./blog.
Running the server locally
Unix-like
cd $GOPATH/src/golang.org/x/blog
./blog

Windows
cd %GOPATH%\src\golang.org\x\blog
blog.exe

and then visit http://localhost:8080/ in your browser.
Note that the blog executable caches all content and you must kill it (Ctrl-C on Unix-like and Windows) and restart it after editing any files to view changes.

I concur with @as on this one.
Work on the repo began in early 2012, as appears from commits, and it's been a part of the binary downloads since at least go1.2.2.
http://nurmi-labs.blogspot.com/2017/08/bootstrapping-go.html

@forskning I know blog content is not in the Go source code repo.
However it's in the binary distributions from https://golang.org/dl/

@mengzhuo if it was written into the .msi files
that blog was an optional feature
net being required for the tools feature (this entry may need more clarification)
and tools with partial or full optional features
probably the similar could be done with the .pkg file
that would not affect the .tar.gz nor .zip binary downloads
I think that with Linux distributions the file trees are not standardised

@jimmyfrasche
The announcement of the wiki page was linked to here https://github.com/golang/go/issues/21917#issuecomment-361423885, but I see (above) you provide the actual link to the page. Would there be some basis to add to that page info on extra files in compiles/source downloads for 64 bit?


proposal: os.File: make real file name as on disk accessible

Problem
The os.File Openfunctions always return the name of the file as it was presented to the Open function. I.e. opening a file with f, err := os.Open("huGO.txt") returns "huGO.txt" when f.Name() is called. This is all fine as long as one uses file names on the same operating system. However, it creates a problem, when one uses data from one operating system on another.
Suppose there is an application that calculates some properties for some files and stores the result in a file with key-value pairs where the key is the file name and the value is some property. The file names are supplied by the user. The program has a property generator and a property verifier command.
Now, suppose the program property generator is run on a Windows machine and there is a file called huGO.txt on the disk. The user supplies hugo.txt as the file name. Since the Windows file system is case-insensitive by default the function os.Open("hugo.txt") will open the file huGO.txt. The property generator can only save the file name as presented to the Open function which is the name entered by the user and therefore generates the following output when run on Windows:
"hugo.txt": "...property..."
Now the file and the property generator output are transferred to a Linux machine. There the verifier is run. The verifier reads the file names from the property file. So it will try to open a file called hugo.txt. However, the file name is huGO.txt. The Linux file system is case-sensitive by default and so the verifier fails to find the file on Linux and will output an error message. The verifier would work on Windows, but not on Linux.
This is an unsolvable problem in the current situation. When one stores file names that the user provided on an OS with a case-insensitive file system and wants to work with these file names on an OS with a case-sensitive file system this will inevitably fail if the user did not specify the file name exactly as it is stored on the file system. On Windows users rely on the fact that Windows is not case-sensitive, so this happens very often.
Solution
This could be solved by a function that returns the "real" file name as stored by the file system. If the file is opened with f, err := os.Open("hugo.txt") on Windows a function fn := f.FsName() would return huGO.txt in the above example.
This proposed os.File function FsName() would solve the above problem quite easily while still maintaining compatibility with older programs. The name of the function could be something else, like e.g. RealName() or whatever. There just should be a function with the specified functionality.

This is not how filesystems work on Unix. The file (inode) itself has no record of a "true" name, because a file could have multiple "true" names (hard links) or even none at all (e.g., O_TMPFILE).
On Windows specifically you can probably leverage GetFinalPathNameByHandle. https://learn.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-getfinalpathnamebyhandlew (I am not a Windows developer.)

Unfortunately, this isn't possible in general, so I'm going to close this.  Please comment if you disagree.
Note that on Windows you can already call https://pkg.go.dev/golang.org/x/sys/windows#GetFinalPathNameByHandle .  But as @rittneje notes there is no possible equivalent on Unix file systems.

Hi, @rittneje and @ianlancetaylor. Thanks for your answers. Indeed, I think this proposal should not be closed, yet :-).
Everything you have written is correct and I have the impression that I did not quite convey my idea. So, please allow me to put it in another way:
The os package deals with two abstract objects: Files and Directories. What I want to propose is a function that tells the caller by which name in the directory the file was found. So, it is not relevant, whether there are multiple ways to reference a file. I want the one by which the file specified in the os.Open call was found. This name obviously must be present in the directory of the os.Open() call.
I have implemented a quick and dirty solution that only uses these Go-supplied abstractions:
type FileFinder struct {
   plainMap        map[string]bool
   ucMap           map[string]string
   isCaseSensitive bool
}

func NewFileFinder(dirName string) (*FileFinder, error) {
   if len(dirName) == 0 {
      dirName = "."
   }

   d, err := os.Open(dirName)
   if err != nil {
      return nil, fmt.Errorf("could not open directory '%s': %v", dirName, err)
   }
   defer FileCloser(d)

   var namesInDir []string
   namesInDir, err = d.Readdirnames(-1)
   if err != nil {
      return nil, fmt.Errorf("could not read names in directory '%s': %v", dirName, err)
   }

   result := &FileFinder{}

   dirNamesLen := len(namesInDir)
   plainMap := make(map[string]bool, dirNamesLen)
   ucMap := make(map[string]string, dirNamesLen)
   isCaseSensitive := false

   var fi os.FileInfo
   for _, nameInDir := range namesInDir {
      fi, err = os.Lstat(filepath.Join(dirName, nameInDir))
      if err != nil {
         return nil, fmt.Errorf("could not get status of file '%s' in directory '%s': %v", err)
      }

      if !fi.IsDir() {
         plainMap[nameInDir] = true
         ucNameInDir := strings.ToUpper(nameInDir)
         if len(ucMap[ucNameInDir]) == 0 {
            ucMap[ucNameInDir] = nameInDir
         } else {
            isCaseSensitive = true
         }
      }
   }

   if !isCaseSensitive {
      isCaseSensitive = (runtime.GOOS != "windows") && (runtime.GOOS != "darwin")
   }

   result.plainMap = plainMap
   result.ucMap = ucMap
   result.isCaseSensitive = isCaseSensitive

   return result, nil
}

func (ff *FileFinder) GetFsName(fileName string) string {
   if ff.isCaseSensitive {
      if ff.plainMap[fileName] {
         return fileName
      } else {
         return ""
      }
   } else {
      if ff.plainMap[fileName] {
         return fileName
      } else {
         fsName, found := ff.ucMap[strings.ToUpper(fileName)]
            if found {
               return fsName
            } else {
               return ""
            }
      }
   }
}

This would be called like that:
...
   ff, err := NewFileFinder(dirName)
   if err != nil {
      return "", fmt.Errorf("could not create file finder: %v", err)
   }

   realName := ff.GetFsName(fileName)
...

Let me explain what this does: It reads all names in a directory that are not sub-directories and stores them in two maps. One where the key is the name as it is found in the directory and one where the key is the the name converted to all upper-case. I know this is not quite correct and in a correct solution this ought to be changed to proper Unicode folding.
After a successful call to os.Open() it is known that the file is present in the directory. When one wants to know the file name as present in the directory one calls FsName(fileName) which first looks up the name in the plain map. If it is found there it was specified as it is recorded in the directory and we are done.
If it is not found by the specified file name the name is converted to all upper-case and looked up in the second map with the all upper-case file names. It will be found here, as it exists and the value of the map is the name as found in the directory.
Everything depends on the case-sensitivity of the file names in the directory. In nearly every OS there may be directories that use case-sensitive names and others that use case-insensitive names. My QAD solution is not correct as currently there is no way to find out the case-sensitivity of a directory. It uses a rather simple approximation: If there are two file names that map to the same upper-case file name this indicates a case-sensitive directory and it assumes that any OS other than Windows and MacOS is case-sensitive. In a proper solution the case-sensitivity of the directory should be found out by OS calls.
I hope this describes my proposal more precisely.

OK, reopening.
I don't personally think this should be in the standard library, but I agree that it is approximately possible.  (It will still fail if the file is removed, but, OK.)

@xformerfhs Your code has a fundamental race condition. Suppose I am on a file system that is case sensitive. I have two files "foo.txt" and "Foo.txt". I then call open("foo.txt"), and immediately thereafter delete (unlink) the file. Your logic would incorrectly latch onto "Foo.txt". A similar issue unfolds if the names of two files get swapped.
You would instead need to compare the inode numbers. But even then, it cannot give an answer once the file gets removed or renamed.
I will also point out this only works for the "leaf" file. If you have an arbitrary file path then you need to do this for every directory along the way. My feeling is this is a very niche use case with a lot of edges, and thus does not belong in the standard library.

Hi @xformerfhs,
This seems like an example of a problem that does not have a single obvious solution, and whose definition of "correct" depends a lot on subtleties of your particular use-case.
For situations like that, it's typically best to implement in a third-party library first. Then you can get the functionality you need to solve your immediate problem, and you can also publish your library to see if others find it useful. The experience of building a third-party library and testing it against other people's use-cases will often help hone what parts of the design, if any, are general enough needs to be addressed in the standard library.

I doubt that many people have this problem, and I doubt that there's a reliable enough solution to be worth publishing in the form of a package. I further doubt that it would be used widely enough to be considered for inclusion in the standard library.
But who cares what I think, right? I'm wrong about six important things before breakfast every day. If you want to prove me wrong, take up @apparentlymart's suggestion, implement a solid solution to this in your own package, and add it to what I whimsically call the “universal” library (that is, GitHub).
If it turns out a lot of people have this problem, they will be very glad to have your solution, and I will look like a jackass. So it's win-win.

I now have one platform-specific FsName for Windows and one for Linux, and they are exactly the ones rittneje pointed out to me. These are two small files for which a separate library is not worthwhile. I can add a third file, which is the solution I actually use in my program: a glob that works correctly on Windows. Let's see how and if I publish this.
BTW, wasn't there supposed to be a patch for glob to work case-agnostic on Windows?


chore: more adaptations for lean4#5542

In lean4#5542 we are deprecating inductive ... :=, structure ... :=, and class ... := for their ... where counterparts. Continuation of #17655.

bors merge


Fix geo_interface output when bbox is None

The bbox key should not be in a geojson object if the bbox is None. If the key is present, the value is expected to be a tuple, see https://datatracker.ietf.org/doc/html/rfc7946#section-5
In ths PR, I also moved the __geo_interface__ into a mixin to reduce code duplication.
There is one design question where I was not sure what is the best:
The bbox check could  be added into the dict() method directly. Depending on whether the expected output of dict is a valid geojson like dictionary, or the "full" data from the pydantic model. Please advise, I am happy to change that if its considered better to put it into the dict method.

The bbox check could be added into the dict() method directly. Depending on whether the expected output of dict is a valid geojson like dictionary, or the "full" data from the pydantic model.

Personally I prefer it as written.  Mutating the shape of the data on dict() may be unintuitive; but __geo_interface__ protocol is there for interoperability with other libraries (like shapely/geopandas etc.) and should follow the spec as close as possible.


f1 metric - micro/macro/weighted

This PR contains a script for adding f1-macro metric.
Colab notebook: https://colab.research.google.com/drive/1LJ1yb8cUgisNP3ETfMLRYPQEyJivzDv-

Please let me know what will be my next steps. To do as far as I know will be to add a test for the same.

Thanks @Squadrick
Will update soon

@Squadrick
Updated with F1 micro, macro and weighted
Test colab notebook: https://colab.research.google.com/drive/1qSq0SsYkPqjdKUgM1RM4kKM67X75ocFj

@Squadrick
Updated scripts. Please let me know if there is any change to be made.

Hi @Squadrick @WindQAQ
I have updated code to calculate F1 scores under one class.
Now, we have four options:

Micro
Macro
Weighted
None (This will produce F1 scores for each class)

Colab: https://colab.research.google.com/drive/1qSq0SsYkPqjdKUgM1RM4kKM67X75ocFj#scrollTo=hZSxoW4eYqYW
I ran code format to check scripts. I encountered an installation error in clang and removed that step because I noticed that is only for C++.

@SSaishruthi Can you pull from master and update this PR?

@Squadrick
I have updated the branch and resolved conflicts.

@Squadrick
Inputs to None condition should be multiclass but not multilabel. That's why I created a separate function for None as they require a different set of inputs. Can we have it like this or if you can suggest me an alternative that would be great.
Thanks

@SSaishruthi Oh, my bad. In that case, leave it as is.

Triggering the test cases.

@Squadrick updated the scripts. Can you please trigger the test again?


add testID, helps tests find items in the list

Summary

This change adds a testID to each item in the RNTester list.  This helps Appium find items in the list for automated tests.  The change was added in react-native-windows as part of end-to-end test infrastructure changes.    See https://github.com/microsoft/react-native-windows/pull/5555
We'd like to remove this forked file, upstreaming this change will enable us to do that.
Changelog

[General] [Changed] - add testID to items in RNTester test list, helps test automation tools find the items
Test Plan

Change is currently running in react-native-windows CI loop.

This is a trivial one line change that will help react-native-windows remove a forked file.  Can someone please review?

@TheSavior  can you help get someone to review this?  Should be trivial and allows us to un-fork a file in windows.


AMBARI-25779: Ambari server spi build error

What changes were proposed in this pull request?
[INFO] --- rpm-maven-plugin:2.1.4:rpm (default-cli) @ ambari-server-spi ---
[INFO] Directory /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/BUILD already exists. Deleting all contents.
[INFO] Directory /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/RPMS already exists. Deleting all contents.
[INFO] Directory /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/SOURCES already exists. Deleting all contents.
[INFO] Directory /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/SPECS already exists. Deleting all contents.
[INFO] Directory /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/SRPMS already exists. Deleting all contents.
[INFO] Directory /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/tmp-buildroot already exists. Deleting all contents.
[INFO] Directory /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/buildroot already exists. Deleting all contents.
[INFO] Creating spec file /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/SPECS/ambari-server-spi.spec
[INFO] error: line 4: Empty tag: Release:
[INFO] Building target platforms: noarch-redhat-linux
[INFO] Building for target noarch-redhat-linux
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Ambari Server SPI <IP_ADDRESS>-SNAPSHOT ................. FAILURE [  6.598 s]
[INFO] Ambari Service Advisor <IP_ADDRESS>-SNAPSHOT ............ SKIPPED
[INFO] Ambari Server <IP_ADDRESS>-SNAPSHOT ..................... SKIPPED
[INFO] Ambari Functional Tests <IP_ADDRESS>-SNAPSHOT ........... SKIPPED
[INFO] Ambari Agent <IP_ADDRESS>-SNAPSHOT ...................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  7.262 s
[INFO] Finished at: 2022-11-16T20:16:31+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:rpm-maven-plugin:2.1.4:rpm (default-cli) on project ambari-server-spi: RPM build execution returned: '1' executing '/bin/sh -c cd '/root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/SPECS' && 'rpmbuild' '-bb' '--target' 'noarch-redhat-linux' '--buildroot' '/root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi/buildroot' '--define' '_topdir /root/ambari/ambari/ambari-server-spi/target/rpm/ambari-server-spi' '--define' '_build_name_fmt %%{ARCH}/%%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm' '--define' '_builddir %{_topdir}/BUILD' '--define' '_rpmdir %{_topdir}/RPMS' '--define' '_sourcedir %{_topdir}/SOURCES' '--define' '_specdir %{_topdir}/SPECS' '--define' '_srcrpmdir %{_topdir}/SRPMS' 'ambari-server-spi.spec'' -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Seems caused by rpm-maven-plugin upgrade from 2.0.1 to 2.1.4 in https://github.com/apache/ambari/pull/34`
How was this patch tested?
Successully build  now
(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)
Please review Ambari Contributing Guide before opening a pull request.

It seems that we changed the version number of digits from 3.0, which caused the regular expression to be incorrect. We can keep the version style of 2.8.0(<IP_ADDRESS>.0), and change it in 3.0(<IP_ADDRESS>)


"Starting Simple" episode outdated link

http://www.thetalkingmachines.com/blog/2015/4/23/starting-simple-and-machine-learning-in-meds link doesn't work anymore.
This may be the correct one.

Thanks @SubhrajitPrusty and @xkcao!


ci: ci should run when clone-submodules/action.yml changes

When we change clone-submodules/action.yml, the snapshot will probably be updated as well, so I'd run ci to make sure the snapshot is correct.

#2816  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @Dunqing and the rest of your teammates on  Graphite

Merge activity

Mar 25, 11:52 PM EDT: @Dunqing started a stack merge that includes this pull request via Graphite.


Remove INSTALL.md from release-9.0

https://github.com/kubernetes/client-go/pull/468 removed INSTALL.md from master and https://github.com/kubernetes/kubernetes/pull/68790 added it to staging.
Because https://github.com/kubernetes/kubernetes/pull/68790 added it to staging, the publishing bot first "publishes" it to master and then tries to cherry-pick it to release-9 but fails because of conflicts -- since an INSTALL.md file exists there already: https://github.com/kubernetes/kubernetes/issues/56876#issuecomment-423013411.
/cc @dims
/assign @sttts

Travis broken again :/
https://github.com/kubernetes/client-go/pull/470 fixes it.

/assign @liggitt
for approval since @sttts is out

/retest

I'm not sure why retest doesn't work here. Closing and reopening to retrigger tests.

All green.

/lgtm
/approve


features: config options, saving to file, SARIF

Upgrade to Hadolint 2.8.0, enabling the SARIF formatter
Expand config options to reflect more of those regularly available
with Hadolint including no-fail and failure-threshold options
Enable the creation of report files

Breaking change: The list of ignored rules is now comma separated and
not space separated.
fixes: #23
fixes: #36
fixes: #42

Bump.

thanks


Add /author/:slug/edit/ route to frontend

no issue
Adds a new route that redirects to '/ghost/team/:slug/' from the frontend.

Closed & reopened to get travis to kick in


Extend dedupe to support merging multiple directories

What is your rclone version (eg output from rclone -V)

v1.35-99-g6fc114d

Which OS you are using and how many bits (eg Windows 7, 64 bit)

macOS

Which cloud storage system are you using? (eg Google Drive)

Google Drive

Dedupe removes identical files, but sometimes when doing several rclone copy simultaneously, Google Drive will create several directories. This is a race condition, as it depends on whether the directory already exists or not when an individual rclone process is launched.
It would be nice if dedupe allowed merging of those directories.

I've noticed this too!

I've implemented this in - please test!
https://beta.rclone.org/v1.37-073-gbfe812ea/ (uploaded in 15-30 mins)

I'm getting the "Failed to dedupe [...] can't merge directories" with rclone v1.44 (linux amd64 version running on Ubuntu 18.04 with local on ZFS and remote on an encrypted Google Drive).
Is it a regression?

I'm getting the "Failed to dedupe [...] can't merge directories" with rclone v1.44 (linux amd64 version running on Ubuntu 18.04, with remote on an encrypted Google Drive).
Is it a regression?

Possibly!  Can you please make a new issue on github with a log with -vv and we can work it out - thank you!

I'm getting the "Failed to dedupe [...] can't merge directories" with rclone v1.44 (linux amd64 version running on Ubuntu 18.04, with remote on an encrypted Google Drive).
Is it a regression?

Possibly! Can you please make a new issue on github with a log with -vv and we can work it out - thank you!

Right away, Nick!


[Bug] describeIndexStats doesn't take argument DescribeIndexStatsOptions

Is this a new bug?

[X] I believe this is a new bug
[X] I have searched the existing issues, and I could not find an existing issue for this bug

Current Behavior
Currently in the latest version of the SDK (1.1.2) no arguments to this function are supported even though the docs say that you can use filters (and this is how it used to work as well so IMO this is a regression).
Expected Behavior
Support argument of type DescribeIndexStatsOptions as they appear here in the docs:
https://sdk.pinecone.io/typescript/types/DescribeIndexStatsOptions.html
Steps To Reproduce
Try to use describeIndexStats
Relevant log output
No response
Environment
- **OS**:
- **Language version**:
- **Pinecone client version**:

Additional Context
No response

Closing as this is stale - please reopen if you're still facing this issue. Thanks!


wechat group barcode expired

The wechat group barcode is expired on the main page

Thank you for the reminder! This is the latest QR code (which expires every 7 days... orz).


Update CI.yml

fix #7
I'm not entirely sure but something like that would be the way I'd deal with unregistered deps in CI.

good ideas
In other work, I tried adding a explicit Manifest.toml to the the docs environment. Could you try this?

previously I solved the unsatisfiable requirements issue with an unregistered package this way: https://github.com/ggebbie/TMItransient.jl/issues/28#issuecomment-2353386179

good ideas
In other work, I tried adding a explicit Manifest.toml to the the docs environment. Could you try this?

I don't think this is necessary. The issue was I think (i) not adding the unregistered dep manually (with its URL), and (ii) having OceanGreensFunctionMethods as a dep of its own docs.

Do you want me to revert the change of the project version number so it's back to 1.0.13-DEV?

this is really nifty!  a long-term outstanding issue has been handled
Thanks a lot!
Will wait for version number to go back to DEV for consistency and then merge


Update sbt-ci-release to 1.5.10

Updates com.geirsson:sbt-ci-release from 1.5.7 to 1.5.10.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.geirsson", artifactId = "sbt-ci-release" } ]

labels: sbt-plugin-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #280.


Docker Installation Option

Allows for user to run annotator using Docker Containers without downloading Python libraries/Node.js/npm/yarn.
Use command docker-compose up in the directory of the docker-compose.yml file to run the annotator.

@lyihaoo I reviewed the changes proposed. Looks like it will be depending on the images from the account of lyihaoo and doesn't build the images locally. While I understand this looks easier, I think it is better to provide the Dockerfiles and allow the users to build the images locally. Otherwise, the solution becomes dependent on your docker account. Kindly add the Dockerfiles. I cannot merge in the current state.

@tecoholic I have included the Dockerfiles and updated the docker-compose.yml file.
The command docker-compose up will now build the images locally if not already built before running the annotator.

@lyihaoo My apologies for taking so long to merge this. Thank you for your contribution.


Derive core version from go repo for e2e config

What problem does your feature solve?
avoid manual property setting for core version in e2e settings as recommended here - https://github.com/stellar/soroban-tools/pull/310#discussion_r1050203983
What would you like to see?
automated script that scrapes the core version from go repo
What alternatives are there?

Is this ticket still relevant? We currently have: stellar --version which returns the version CLI is depending on.
We also have getVersionInfo from the RPC which returns core version:
{
    "jsonrpc": "2.0",
    "id": 8675309,
    "result": {
        "version": "21.1.0-fcd2f0523f04279bae4502f3e3fa00ca627e6f6a",
        "commit_hash": "fcd2f0523f04279bae4502f3e3fa00ca627e6f6a",
        "build_time_stamp": "2024-05-10T11:18:38",
        "captive_core_version": "stellar-core 21.0.0.rc2 (c6f474133738ae5f6d11b07963ca841909210273)",
        "protocol_version": 21
    }
}

Are you suggesting surfacing this info on the CLI?

I don't think this issue is relevant to the CLI any longer. The version of the Go repo doesn't appear to be an input to the system tests in the e2e file any longer:
https://github.com/stellar/stellar-cli/blob/main/.github/workflows/e2e.yml


Tokenbar

Description
Please include a summary of the change and which is fixed.

Add A
Fix B

How has this been tested?
Please describe the tests that you ran to verify your changes.

[ ] UnitTest
[ ] Benchmark

Codecov Report
Attention: 1 lines in your changes are missing coverage. Please review.

Comparison is base (1371a70) 90.40% compared to head (3aa10b0) 90.44%.
Report is 2 commits behind head on main.

Files
Patch %
Lines

credsweeper/scanner/scan_type/scan_type.py
91.66%
0 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #492      +/-   ##
==========================================
+ Coverage   90.40%   90.44%   +0.04%
==========================================
  Files         127      127
  Lines        4327     4335       +8
  Branches      693      695       +2
==========================================
+ Hits         3912     3921       +9
+ Misses        274      273       -1
  Partials      141      141

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


2.x Introduce target method for MenuItem

Ticket: #1629 and #1701
Issue
Picking up on the discussion that we had in #1701 whether it would make sense to have an item.target method.
Solution

Added a new method item.target for menu items that can be used instead of item.is_target_blank and adds a little more flexibility for developers.
Updated documentation for menu items. See the updates to the menu guide for what’s possible.

Impact
None.
Usage Changes
Makes handling menu item targets more versatile.
Testing
Yes. I added tests, they ran successfully.

Thanks @gchtr! I think this one is sufficiently covered now. Merging and closing #1629


Implement GraphViz backend to visualize IfThenElse hierarchies as decision trees

The task breaks down into these subtasks:

[ ] Create AST for the DOT language
[ ] Create pretty-printer for the DOT AST
[ ] Build the backend that translates values to DOT AST

Found better visualization alternative.

Found better visualization alternative.


[WIP]: Implement cert store to cache tls cert

Implement certificate cache store to improve cpu resource.

Coverage decreased (-0.1%) to 63.1% when pulling bd721172d5238c7e7cd4798cd37f2c56f807e835 on cert-store into 166b5c377e9f4347cd2f4a956531c16271be7ce4 on master.

Coverage increased (+0.07%) to 63.274% when pulling 9dc2767b15634b7ee14bab605488039ea967d259 on cert-store into 166b5c377e9f4347cd2f4a956531c16271be7ce4 on master.

After this PR issue #54 and #85 can also be closed.

Coverage increased (+0.4%) to 63.606% when pulling ef45635463d903f568be44fc479f79a9539da5aa on cert-store into 166b5c377e9f4347cd2f4a956531c16271be7ce4 on master.


Add places where we meet

Add some links to our documentation.

The result in s visible at https://docs-community--37.org.readthedocs.build/en/37/community/contributing.html


added error handling test module

Hi!
I added a test module about error handling.
Here are the details about each test:

test number
concept
answer

1
onError handler
'uh oh'

2
class catch operator
42

3
instance catch operator
'help'

4
onErrorResumeNext operator
'ABC'

5
retry operator
any i>1

6
finally operator
'finally some good news'

Please let me know if I should change/add/remove anything.

@mattpodwysocki Hi!
What do you think about this pull request?


17 validation framework for model

Update a notebook for validating employment data of SPC with the BRES dataset as discussed in the issue #27  and validating the home-work places flow with census data as discussed in the issue #17

Thanks for this @BZ-BowenZhang, adding some comments including from our discussion last week:

The metrics and plots for validating the flows look great and look readily applicable to the full population runs for AcBM. It will be interesting to see how they compare when run with the generated activity chains with the AcBM pipeline.
The comparison with the SPC workplace assignment is very helpful for also validating the SPC approach, thanks for including this analysis. Specifically of interest is looking at the number of jobs available in SPC from business registry (total is 671,189) compared to the business registry dataset used here (total: 1,025,985). I've pushed code to the notebook loading in the business registry data derived here for SPC and we can see that all the jobs are being assigned but this number is many fewer than expected given: 1) the alternative business registry data loaded in the notebook (1,025,985) and 2) the number with expected employment with a SIC code (1,324,680). It would be helpful to understand what is driving this difference.
Related to the above, I was wondering whether we can see the discrepancy in the flow plots with absolute numbers. Are we able to derive the expected number of people with workplaces from the commuting flows? Since only 671,189 out of an expected number of over 1,000,000 will be commuting, the absolute number of flows I would expect to aggregate to ~300,000 less compared to the commuting flows and we might be able to see this as an overall negative value across the flow matrix for SPC commuting flows compared to census flows?


aarch64 builds

With the upcoming release of the Fedora Asahi Remix for Apple Silicon do you think it would be possible to start building for aarch64?
It would be great to have the binaries available but aware there may be storage issues on the COPR side of things.

I'm considering #39 because it's a single chroot, and wouldn't require much rebuild once set up, but this may be too much (basically duplicating the size and the time for mass rebuilds). Let's keep this open, but let it rest for now.

Let me know if you need some hand-holding. ;-)


feat. request: granular silence for .

Hello,
we have been very happily using ElastAlert in our production kubernetes environment for almost two years.
We've been very basic with our approach, and have a catch all rule to alert whenever there is a structured log emitted with the level: error key value.
Recently an issue where noise emitted by a certain workload has led us to look into silencing alerts.
As per https://elastalert.readthedocs.io/en/latest/elastalert_status.html#silence it does not appear that match_body.x.y.z can be used as a parameter to target silences.
Could this please be confirmed? Would the approach then be to break up our catch all level: error alert into many granular alerts based on other fields of the emitted structured logs?
For reference our catch all error, which requires granular silencing (via match_body fields) is:
    name: "Error"
    type: any
    index: "*"
    filter:
    - term:
        level: "error"
    alert:
    - "slack"

An example of how an alert could (ideally, if possible) be targetted for silence:

When you have a query_key in the rule silencing can be done based on the values of this query_key. For example if you have the query_key kubernetes.labels.app_kubernetes_io/component you can silence the rule only for a specific value in this field. Thius happens for the realert timeframe. If you want to do this by hand, you have to add a document to the elasticsearch silence index manually because this is not supported by the --silence option. The silence_key (in the elasticsearch document saved in the rule_name field) is then <rule_name>.<query_key_value>.

Thanks @JasperJuergensen!
With regards to this, I realized our logger does emit a field name for the instrumented service which I will leverage as follows:
    name: "Error"
    type: any
    index: "*"
    filter:
    - term:
        level: "error"
    query_key: name
    alert:
    - "slack"

I will then confirm that I can granularly silence alert depending on the value of their name field at which point I will resolve this issue.

If you want to do this by hand, you have to add a document to the elasticsearch silence index manually because this is not supported by the --silence option. The silence_key (in the elasticsearch document saved in the rule_name field) is then <rule_name>.<query_key_value>.

How does one add a document manually, and if not, would it be feasible to allow --silence to work with <rule_name>.<query_key_value> ?

To add a document manually you can use the Index API from elasticsearch (https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started-index.html). The document should have to following format:
{
    "exponent": 0,
    "rule_name": "<rule_name>.<query_key_value>",
    "@timestamp": "<current datetime>",
    "until": "<silence until timestamp>",
}

I think it would be a good feature to add the possibility to enter a query_key_value to the --silence option.

Thanks @JasperJuergensen.
Realert + exponential realert on a per qk basis is worlds better than what we had prior. I've also added the instruction for manual doc creation to explicitly silence one rule.qk just to our wiki just in case (if this is worth adding to ElastAlert docs please let me know).
I see that you are already working on qk based silences! 🚀

Oops accidentally closed, will reopen in case this is used for tracking silence qk feature.

Re: silence qk feature,
--silence_qk_value=foo will have to be used in combination with --rule which points to a yaml file?
Would this UX be feasible?
--silence_rule_qk=<rule>.<qk>

--silence_qk_value=foo will have to be used in combination with --rule which points to the rules yaml file?

Yes

Would this UX be feasible?
`--silence_rule_qk(or a better name)=.

I think this would make it a bit more complicated because internally the --rule option is needed to load the correct rule (and only this rule). Also the rule name can be very long with space while the filename can be autocompleted by the shell :D. And if there is only the --silence_rule_qk option neither the rule name nor the query key can contain a dot because otherwise you can't distinguish rule and qk.

Sounds good, another UX question:
If you have multiple rules in your yaml file, and want to silence only a subset (or even just one) of these rules for a given qk, but leave the other rules unsilenced for a given qk, would this be possible?

If you have multiple rules in your yaml file, and want to silence only a subset (or even just one) of these rules for a given qk, but leave the other rules unsilenced for a given qk, would this be possible?

I don't think you can have multiple rules in one yaml file. At least not with the current FileRulesloader implementation. And in general the --rule option is not only the rule file name, but a rule identifier for the used rules loader. So the --rule option should always identify only one rule, which should prevent this problem from arising in the first place.

Thanks @JasperJuergensen my impression that rules were bunched into the same yaml was wrong and due to my lack of knowledge of elastalert internals, just confirmed (I set up 2 rules):
/opt/rules # ls
error.yaml  fatal.yaml

Thanks. Looking forward to qk silence feature! 🚀


Add deadletters management.

@geneh,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Implement workaround for missing callout in Blazor with workaround #2014

Add a simple test to show a callout
Fix the missing callout in Blazor by adding a workaround suggested here:

https://github.com/mono/SkiaSharp/issues/1725#issuecomment-978843629

The workaround fixes the problem for our sample but our users will have to apply the same workaround.
How to apply the workaround.

Add this to the csproj of your main project

<ItemGroup>
  <NativeFileReference Include="libHarfBuzzSharp.a" />
</ItemGroup>

Now you need to copy that file to your project. For this you need to download the nuget package https://www.nuget.org/packages/HarfBuzzSharp.NativeAssets.WebAssembly/
Unzip the nuget.
Copy the file from this folder build\netstandard1.0\libHarfBuzzSharp.a\2.0.23 to you project folder.

A real fix would deploy libHarfBuzzSharp automatically. I would except that adding HarfBuzzSharp.NativeAssets.WebAssembly to the csproj should solve the problem, but it did not.

@inforithmics I would expect HarfBuzzSharp.NativeAssets.WebAssembly to the samples csproj should fix the problem. What do you think? Did I miss something? If not if will submit a bug or question in SkiaSharp.

https://github.com/mono/SkiaSharp/issues/1725

here in this pull request I added a targets file.
https://github.com/Mapsui/Mapsui/pull/1856
and included it in the nuget package. So maybe we could make a blazor.targets file.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
	</ItemGroup>
		<NativeFileReference Include="libHarfBuzzSharp.a" />
	</ItemGroup>
</Project>

and add it to the nuget.
<!--target to add Harfbuzzsharp.NativeAssets.Webassembly -->
  <ItemGroup>
    <None Include="Mapsui.Forms.targets" PackagePath="build/net6.0/Blazor.targets" Pack="true" />
    <None Include="Mapsui.Forms.targets" PackagePath="build/net7.0/Blazor.targets" Pack="true" />
  </ItemGroup>

https://github.com/Mapsui/Mapsui/pull/1856

https://github.com/mono/SkiaSharp/issues/1725
And I applied the workaround here in the csproj
https://github.com/Mapsui/Mapsui/blob/master/Samples/Mapsui.Samples.Uno/Mapsui.Samples.Uno.Wasm/Mapsui.Samples.Uno.Wasm.csproj
in the uno.winui.wasm too.

I found my workaround on that same thread. The one use used for Uno did not work for Blazor (just tested again, it still does not work). I had to use the one mentioned earlier in the thread.
Let's add the targets file like you proposed because now everyone of our users has to find that same obscure thread to fix their problem.


After updating from 2024.2 to 2024.2.1 it doesnt work anymore

After updating from 2024.2 to 2024.2.1 it doesnt work anymore (see logs)
home-assistant_2024-02-22T08-35-42.771Z.log

Wat version of the core are you running. It is only compatible with 2024.2 and up.

You we're right, my core version was 2042.1.
I've updated it and its working now.
Thanks!


Bump all dependencies to current versions

I have not been very good about keeping the dependencies versions in the assets updated lately.
These have been in use for some time in the downstream projects I maintain, where the task is easier with Dependabot's help. We usually at least get assistance from Dependabot here for the action dependencies in addition to the repo infrastructure, but that has not been working recently (https://github.com/arduino/tooling-project-assets/issues/224).

The failing "Check Markdown" workflow is unrelated to the changes proposed here. It has been happening intermittently for the last couple of weeks (as mentioned here: https://github.com/arduino/tooling-project-assets/pull/218#issuecomment-1097713477).


gitian: renamed bitcoinxt daemon to bitcoinxtd, also updated related scripts and readme files

This request changes the bitcoinxt daemon name to bitcoinxtd for the gitian-debian installer.  Ending the filename with a d is more in line with bitcoind in core and is the typical unix daemon naming convention.  I also renamed bitcoinxt to bitcoinxtd in the contrib/init scripts.
Please review if you have time @keo as I updated the files you recently changed.  Thanks!
@mikehearn  I hope this looks OK, thanks for letting me address my own quibble. :-)

OK, that's a big patch, but I'll assume you tested it as I don't have all the different setups here needed to check all the different init scripts.

Ah ya.. why don't you hold off on the merge.  I only tested the gitian-debian build.  They are all just simple    changes but I will spin up some VMs to test the contrib/init files too.

OK. I'll give keo some time to comment too. I'll probably start on the 0.11B release tomorrow or Friday though.

Is it Bitcoin XT or BitcoinXT?

I've tested the systemd bitcoinxtd.system (systemd) file; it's identical to the one in gitian-debian.  I've also just tested the bitcoinxtd.init (init.d) script with CentOS6 (CentOS7 uses sytemd).  I don't have a ChromeOS system available to test the bitcoinxtd.conf (Upstart) init script.  I also haven't tested the bitcoinxtd.openrc (OpenRC) scripts on a gentoo system (it's a real PITA to install a fresh gentoo vm).   If you'd prefer  to wait until we have testing on all systems then best to leave this pull req out of the 0.11B release.

@NanoAkron I think "Bitcoin XT" is correct per the Bitcoin XT website.

Merged, thanks!

Thanks Mike!


uninitialized constant FILE_PARAMS on ruby 1.8.7

Could not autoload puppet/type/remote_file: uninitialized constant FILE_PARAMS

Hey,
As mentioned in the README, Ruby 1.8.7 is not supported. Please try to reproduce with 1.9 or later.

I belive this is a 1.8.7 issue only. Closing for now.

Not sure if this is still relevant to you, but changes as of most recent master enable use of Ruby 1.8 with remote_file.

Good news to hear.


Unacceptable framework overhead for huge networks

I have figured out the cause of the previous issue I posted here

well I guess it's more of a tensorflow problem in general but it also has something to do with certain keras functions.
so for a large network with thousands or even more layers (the network might not be that large mathematically since each layer could contain just a small number of parameters, but u get the idea), the overhead of basically anything messing with some graph stuff becomes unacceptable, things like model compilation, XLA optimization, gradient checkpoint, and also the keras "save_weights" functions are of ABYSMAL performance and could take literally DAYS!! even longer than the actual training process on GPU, I noticed that every time something like the aforementioned stuff was being executed, the python script just got stuck, one CPU core skyrocketed to 100% usage and the rest 39 cores were just almost 0% usage, then it would take hours and hours before that thing was done and then we could finally move on to the actual training.
It's honestly just frustrating and unacceptable, any idea to solve this?

We have a very minimal overhead for networks like inceptionV3 or Xception which are considered models with a "high number of layers". If your network is so big that you get bad performance with simple keras operations like "save weights" (which essentialy depend on tensorflow), we can say that your use case is an edge case. I would recommend raising this issue on the tensorflow repo if you really think that your use case is common.

Closing as this is answered. Please add comments if any, we will reopen. Thanks !


KAAE Tutorial

Hi.
I cant get the example working.
My environment:
Elasticsearch: 2.4.1 (loadbalanced over an http Proxy on Port 80)
Kibana: 4.6.3 (Centos7-Docker-Container)
I followed stepbystep the example. (except setting schedule to 30 seconds)
The debug log of my kibana only says:
{"type":"log","@timestamp":"2016-11-18T11:36:29Z","tags":["status","info","KaaE"],"pid":1,"message":"KaaE Initializing"} {"type":"log","@timestamp":"2016-11-18T11:36:29Z","tags":["status","info","KaaE"],"pid":1,"message":"Core Index check..."} {"type":"log","@timestamp":"2016-11-18T11:36:29Z","tags":["status","info","KaaE"],"pid":1,"message":"Alarm Index check..."} {"type":"log","@timestamp":"2016-11-18T11:36:29Z","tags":["status","debug","KaaE"],"pid":1,"message":"Reloading Watchers..."} {"type":"log","@timestamp":"2016-11-18T11:36:29Z","tags":["status","debug","KaaE"],"pid":1,"message":"Core Index exists!"} {"type":"log","@timestamp":"2016-11-18T11:36:29Z","tags":["status","debug","KaaE"],"pid":1,"message":"Alarms Index exists!"} {"type":"log","@timestamp":"2016-11-18T11:36:29Z","tags":["status","info","KaaE"],"pid":1,"message":"Scheduled Watch: mos every every 30 seconds"} {"type":"log","@timestamp":"2016-11-18T11:36:30Z","tags":["status","info","KaaE"],"pid":1,"message":"Executing watch: mos"} {"type":"log","@timestamp":"2016-11-18T11:36:30Z","tags":["status","debug","KaaE","WATCHER DEBUG"],"pid":1,"message":"{ _index: 'watcher',\n  _type: 'watch',\n  _id: 'mos',\n  _score: 1,\n  _source: \n   { trigger: { schedule: [Object] },\n     input: { search: [Object] },\n     condition: { script: [Object] },\n     transform: { search: [Object] },\n     actions: { console: [Object] } } }"}
If i manually query the mos-index this is the response:
{
"took": 2,
"timed_out": false,
"_shards": {
"total": 1,
"successful": 1,
"failed": 0
},
"hits": {
"total": 88,
"max_score": 1,
"hits": [
{
"_index": "mos-2016.11.18",
"_type": "mos",
"_id": "AVh3NH2wrJ1XY3jJO-Mi",
"_score": 1,
"_source": {
"mos": 5,
"@timestamp": "2016-11-18T11:31:18.561"
}
},
{
"_index": "mos-2016.11.18",
"_type": "mos",
"_id": "AVh3NIl-rJ1XY3jJO-Mj",
"_score": 1,
"_source": {
"mos": 4,
"@timestamp": "2016-11-18T11:31:21.584"
}
},
[.... here where some other Results]
]
},
"aggregations": {
"avg": {
"value": 2.8863636363636362
}
}
}
I was wondering why no alarm was created and no more debug messages logged.
Any idea?
regards
Christian

Hi @cherweg it appears the condition is not being matched for execution.
To confirm if this is the case, you can try change the following and set Kibana logs to verbose:
"condition": {
      "script": {
        "script": "payload.hits.total > 1"
      }
    },
    "transform": {},

Yes I followed the wiki tutorial.
I modified the watch as requested without any success:
{
  "_index": "watcher",
  "_type": "watch",
  "_id": "mos",
  "_score": 1,
  "_source": {
    "trigger": {
      "schedule": {
        "later": "every 55 seconds"
      }
    },
    "input": {
      "search": {
        "request": {
          "index": [
            "<mos-{now/d}>",
            "<mos-{now/d-1d}>"
          ],
          "body": {
            "query": {
              "filtered": {
                "query": {
                  "query_string": {
                    "query": "mos:*",
                    "analyze_wildcard": true
                  }
                },
                "filter": {
                  "range": {
                    "@timestamp": {
                      "from": "now-5m"
                    }
                  }
                }
              }
            },
            "aggs": {
              "avg": {
                "avg": {
                  "field": "mos"
                }
              }
            }
          }
        }
      }
    },
    "condition": {
      "script": {
        "script": "payload.hits.total > 1"
      }
    },
    "transform": {},
    "actions": {
      "email_admin": {
        "throttle_period": "15m",
        "email": {
          "to"<EMAIL_ADDRESS>          "subject": "Low MOS Detected: {{payload.aggregations.avg.value}} ",
          "priority": "high",
          "body": "Low MOS Detected:\n {{payload.aggregations.avg.value}} average with {{payload.aggregations.count.value}} measurements in 5 minutes"
        }
      }
    }
  }
}

the debug Log :
{"type":"log","@timestamp":"2016-11-22T16:19:55Z","tags":["status","debug","KaaE"],"pid":1,"message":"Reloading Watchers..."} {"type":"log","@timestamp":"2016-11-22T16:19:55Z","tags":["status","info","KaaE"],"pid":1,"message":"Executing watch: mos"} {"type":"log","@timestamp":"2016-11-22T16:19:55Z","tags":["status","debug","KaaE","WATCHER DEBUG"],"pid":1,"message":"{ _index: 'watcher',\n  _type: 'watch',\n  _id: 'mos',\n  _score: 1,\n  _source: \n   { trigger: { schedule: [Object] },\n     input: { search: [Object] },\n     condition: { script: [Object] },\n     transform: {},\n     actions: { email_admin: [Object] } } }"}
If i request the Cluster by curl:

 "took": 2,
 "timed_out": false,
 "_shards": {
   "total": 1,
   "successful": 1,
   "failed": 0
 },
 "hits": {
   "total": 86,
   "max_score": 1,
   "hits": [
     {
       "_index": "mos-2016.11.22",
       "_type": "mos",
       "_id": "AViMyCPhTDIkkYAWmKXZ",
       "_score": 1,
       "_source": {
         "mos": 5,
         "@timestamp": "2016-11-22T16:04:36.438"
       }
     },
[...some more hits]
   ]
 },
 "aggregations": {
   "avg": {
     "value": 3.197674418604651
   }
 }
}

I don't know what to do next to get things running.
Thank you for your assistance...
regards
Christian

Could you change:
 "index": [
            "<mos-{now/d}>",
            "<mos-{now/d-1d}>"
          ],

with:
 "indices": [
            "<mos-{now/d}>",
            "<mos-{now/d-1d}>"
          ],

I found an stacktrace in stderr of my Kibana Container:
Unhandled rejection Error: Bad Request
    at respond (/opt/kibana/node_modules/elasticsearch/src/lib/transport.js:238:15)
    at checkRespForFailure (/opt/kibana/node_modules/elasticsearch/src/lib/transport.js:201:7)
    at HttpConnector.<anonymous> (/opt/kibana/node_modules/elasticsearch/src/lib/connectors/http.js:155:7)
    at IncomingMessage.wrapper (/opt/kibana/node_modules/lodash/index.js:3095:19)
    at emitNone (events.js:72:20)
    at IncomingMessage.emit (events.js:166:7)
    at endReadableNT (_stream_readable.js:921:12)
    at nextTickCallbackWith2Args (node.js:442:9)
    at process._tickDomainCallback (node.js:397:17)

Could that be the reason?
regards
Christian

Have you implemented the query change I suggested? I also updated the wiki.

Thank you,
that did the trick!
Thank you very much..
regards
christian


Jsonlint does not support quotation marks

When I put a JSON document that contains quotation marks, it fails (like, for example '”'). If I replace those ones with the normal double quote (like this one '"'), it works perfectly.
Example:
{“status”: 200,”name”:
 “Tanya Anderssen”,
  ”version”: {
     “number”: “1.3.4",
     ”build_hash”: “a70f3ccb52200f8f2c87e9c370c6597448eb3e45",
     ”build_timestamp”: “2014–09–30T09:07:17Z”,
     ”build_snapshot”: false,
     ”lucene_version”: “4.9"},
   ”tagline”: “You Know, for Search”
}

Thanks

The JSON spec is clear that the only valid quote character is the normal one, " (U+0022).
Maybe the error message could be improved, but jsonlint is correct that fancy quotations marks ” aren't valid for JSON strings.

Right, maybe by improving the error message it's enough. Agreed.

jsonlint.com now has syntax highlighting so you can see that something goes wrong. Closing this issue, thanks for reporting.

:+1:
Thanks!


Installation Issue

after following this page to install Huginn https://github.com/cantino/huginn/blob/master/doc/manual/installation.md
...
All goes smoothly until this step "Install Gems" and stuck here... with the following error

bundle install -j4

Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
installing your bundle as root will break this application for all non-root
users on this machine.
Could not locate Gemfile or .bundle/ directory
any help with the installation please...

can you dump your log?  if i had to guess it might have been caught on mysql or pgsql dependency or the libcurl one.

Where I can find the log file?..

what appears on your console at the end of bundle install

what happens if you run
bundler package --path vendor/cache --no-install
not as root

Hi @nakouzia,
you are in the home directory of the root user, but the commands need to be executed in the directory where the huginn source is checked out. Also please use the command as they are provided in the guide, try doing this:
cd /home/huginn/huginn
sudo -u huginn -H bundle install --deployment --without development test

Stuck here can't complete...

root@moon:/home/huginn/huginn# sudo -u huginn -H bundle install -j4 --deployment --without development test
Fetching gem metadata from https://rubygems.org/
Fetching version metadata from https://rubygems.org/
Fetching dependency metadata from https://rubygems.org/
/usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/ui/shell.rb:99:in `[]': invalid byte sequence in US-ASCII (ArgumentError)
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/ui/shell.rb:99:in `strip_leading_spaces'
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/ui/shell.rb:104:in `word_wrap'
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/ui/shell.rb:90:in `tell_me'
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/ui/shell.rb:35:in `error'
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/friendly_errors.rb:21:in `log_error'
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/friendly_errors.rb:100:in `rescue in with_friendly_errors'
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
        from /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.12.4/exe/bundle:19:in `<top (required)>'
        from /usr/local/bin/bundle:23:in `load'
        from /usr/local/bin/bundle:23:in `<main>'

if I try to skip and go to nect command which is
Initialize Database
Create the database
sudo -u huginn -H bundle exec rake db:create RAILS_ENV=production
I got this error:
Could not find rake-10.5.0 in any of the sources
Run `bundle install` to install missing gems.

in your Gemfil can you add
Encoding.default_external = Encoding::UTF_8
Encoding.default_internal = Encoding::UTF_8
at the top?
I was having same issue with ascii and that solved it for me

Thanks Sir... Works perfectly...

Thanks for helping @mogorman!
@mogorman @nakouzia May I ask which distribution and image (maybe of which cloud provider) you used as a base to install Huginn? I think cause for the problem you noticed is that the system locate is not set to UTF-8.

i am using nixos on my laptop.  I have had other issues with ascii vs utf-8 all solved in prs i have open.  not sure why ruby is trying to use ascii
[mog@toadman 04:29:20 ~]
$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

I am using online VPS Linux Ubuntu 14.04.4 LTS 30GB SSD and 6GB RAM...


add missing parameters for record update

fix issue: https://github.com/IBM/dns-svcs-go-sdk/issues/6


Get GitHub repo last release number without API

This seems to work, and doesn't require the API.  Which is good since using goreleaser on travis.ci requires a GITHUB_TOKEN due to rate limiting.
wget -q -O - https://github.com/mpeterv/luacheck/releases/latest |\
 grep '<title>' |\
 awk  '{ print $2 }'

works since the <title> tag is formatted as so:
  <title>Release 0.21.2 · mpeterv/luacheck</title>

fixed in 261a496..4d431a8  master -> master


Local file plays when online, but wont play when offline.

I always play the file from a saved path and it works perfectly online. When I try to play it offline I get this stacktrace:
E/flutter ( 9516): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(error, Unsupported value: java.lang.IllegalStateException, null)
E/flutter ( 9516): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
E/flutter ( 9516): #1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:321:33)
E/flutter ( 9516): <asynchronous suspension>
E/flutter ( 9516): #2      AudioPlayer._invokeMethod (package:audioplayers/audioplayers.dart:319:10)
E/flutter ( 9516): #3      AudioPlayer.setUrl (package:audioplayers/audioplayers.dart:518:12)
E/flutter ( 9516): #4      _PlayStoryState._loadFile (package:chris_app_test/PlayMusic.dart:264:19)
E/flutter ( 9516): <asynchronous suspension>
E/flutter ( 9516): #5      _PlayStoryState.initState (package:chris_app_test/PlayMusic.dart:134:5)
E/flutter ( 9516): #6      StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4355:58)
E/flutter ( 9516): #7      ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
E/flutter ( 9516): #8      Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #9      Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #10     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
E/flutter ( 9516): #11     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #12     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #13     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
E/flutter ( 9516): #14     Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
E/flutter ( 9516): #15     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
E/flutter ( 9516): #16     ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
E/flutter ( 9516): #17     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #18     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #19     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
E/flutter ( 9516): #20     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #21     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #22     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
E/flutter ( 9516): #23     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #24     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #25     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
E/flutter ( 9516): #26     Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
E/flutter ( 9516): #27     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
E/flutter ( 9516): #28     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
E/flutter ( 9516): #29     ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
E/flutter ( 9516): #30     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #31     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #32     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
E/flutter ( 9516): #33     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #34     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #35     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
E/flutter ( 9516): #36     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #37     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #38     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
E/flutter ( 9516): #39     Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
E/flutter ( 9516): #40     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
E/flutter ( 9516): #41     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
E/flutter ( 9516): #42     ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
E/flutter ( 9516): #43     Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
E/flutter ( 9516): #44     Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
E/flutter ( 9516): #45

I'm going to fork this and try a fix if it's not able to be duplicated soon.
I'm using version:
audioplayers: ^0.15.1
Looking at my flutter version, that may be the issue. I'll try that first and update as well. My current version is :
1.12.13+hotfix.5
FYI, I switched this version before because one of the updates after this one broke my app in the past.

What is the code you have to actually play the audio (the line in which you can play/setUrl)? Are you really providing a local file with the isLocal flag?

Yes I had that flag set. In the initialize function I had for it, I had the url in case the file didn't download yet. In the play function, I even checked if it was local and called setUrl again with the local file. The fix I ended up doing was just setting an empty string path in setUrl of the initialize function.

Hi @cmcoffeedev can you check, is this still a thing with 1.x.x? Thx :)
Also it would be good to provide an example, if it still fails.

Closing as stale.


99-Recovery binary search tree LeetCode

this is amazing @jainvanshi3105
thanks for the contribution in my repo and please share in social media and tag me on twitter


Update ASCAT to 2.5

We're using 2.3, I do think it could be a good thing to try the new version at some point.
Could be related to #388

 ASCAT issues

I'm not sure if this update is relevant for CAW at this point. According to the brief documentation (just a note), the update added multi-sample segmentation for samples that are expected to share breakpoints. We analyse one sample at a time in CAW, so do we need this feature?
It seems that to use the feature we would have to redesign how we use Ascat (i.e. sending in primary tumor and relaps into the same process). Or am I thinking wrongly?

We can feed normal-tumour-relapse samples already, so it would be worth a try.

OK, I agree that it would be nice to have. But we would have to modify the process RunAscat so that it takes all tumor samples at once, and we would have to rewrite the bin/run_ascat.r script.

Add gc correction to ASCAT.
Also, set gamma to 1 in ASCAT run.

Working actively on it on nf-core/sarek, so no longer an issue