Add #104 Type support for actions-exec-wrapper added

Looks good, can you add the types field as well to the package.json file of this, it's needed to get this linked. Also the commit prefixes in this org usually follow start case, basically feat should go as Feat though it's fine for this

Sorry for the inconvenience. Added the fix now.
Regarding commit message.
Githhoks haven't been setup in my clone of original repo. Hence my mistake didn't trigger an error. Won't happen again.


VS2017 and automatic type acquisition

I'm using VS2017 with a csproj for TypeScript; I don't use the VS Open folder, is it possible to disable the automatic type acquisition feature? I did put this in my tsconfig.json but I suspect it doesn't work that way when using a csproj right?
I used the tsconfig with as defined here
"typingOptions": {
  "enableAutoDiscovery": true
}

but I still see a node process (after restarting VS) with a commandline for typinginstaller.js. I wish to disable this feature because it is conflicting with my other definitions which are part of the source code and the downloaded definitions by TypeScript.
I do not have @types packages in my package.json btw
VS 15.1 (26403.3)

I wish to disable this feature because it is conflicting with my other definitions which are part of the source code and the downloaded definitions by TypeScript.

Can you share some information about what you are seeing? are you seeing the same symptoms as https://github.com/Microsoft/TypeScript/issues/14565? Can you try using 15.2?

Will reopen when I have more info and when I have access to that pc. Symptoms where similar to the issue you mentioned

Ah, 15.2 is preview; not allowed to install that on this pc. The symptoms are similar so I suspect it is fixed. Will wait for it to become available in a public release and report back when I still have the issue.
Though a setting to disable ATA might still be desirable from within VS :)


Organise imports creates many blank lines

re #46589

running TypeScript 2.9dev20180327
run organise imports on https://github.com/Microsoft/vscode/blob/master/src/vs/workbench/api/node/extHostTask.ts#L26
:bug: there are now four blank lines below the imports

Thanks. Opened https://github.com/Microsoft/TypeScript/issues/22914 to track this upstream


Sorting Jobs - Sidebar Fix

Sorting Jobs - Sidebar Fix

Can you delete the package-json.lock please ?


fix tests to work with ufo2ft >= 2.29.0

Description
Fixes #3940 using the workaround suggested in that issue.
I'm not too sure if this is a complete solution -- this patch only puts the workaround in the tests, I'm not sure if elsewhere in the real code the .reader attribute may be missing. But the tests pass with this change.
To Do

[ ] update CHANGELOG.md
[ ] wait for all checks to pass
[ ] request a review

thanks, @danc86


Docs version auto update

This is a dupe of https://github.com/dagger/dagger/pull/2369. Closing and continuing with that one instead.


1.3.8 - Detected by microsoft windows defender as Trojan:Win32/Tnega!ml

Trojan:Win32/Tnega!ml

Windows defender isn't flagging any of my vmPing executables on my system. I know you will get a Windows Defender SmartScreen warning when you first run the .exe, but that is because I haven't paid for a code signing cert and SmartScreen flags everything that's unsigned. If you open PowerShell, try Get-FileHash <path_to_vmping.exe> - Mine is showing ECBA43A378DAC6395EFAC726E0F74D6CDA20F1212C3E1E687885032A3DEA1CA1

Yes, the hash is correct. But windows defender does like new file. This happened after latest update of windows defender database. I was succesfully using this app after update, but only today I found that I'm unable to start it, because defender started to block it.
PS C:\Users\VTA\Downloads> get-filehash .\vmPing.exe
Algorithm       Hash                                                                   Path

SHA256          ECBA43A378DAC6395EFAC726E0F74D6CDA20F1212C3E1E687885032A3DEA1CA1       C:\Users\VTA\Downloads\vmPing...
Antimalware Client Version: 4.18.2101.9
Engine Version: 1.1.17800.5
Antivirus Version: 1.331.1878.0
Antispyware Version: 1.331.1878.0

I updated currently windows defender database and now it does not block vmping :)
Seems to be, that microsoft fixed the problem :D

fixed version is:
Antivirus Version: 1.331.1892.0
Antispyware Version: 1.331.1892.0

Awesome. I turned on the automatic sample submission setting for Windows defender on my build machine which will hopefully stop false positives in the future. I previously had the setting disabled due to another project I work on.


Add HttpPipeline abstraction

We will need an abstraction to be able to replace an http pipeline.
This abstraction might have some optional items like

Add pipeline policy

As well as some required things

Send
Auth
request builder

covered in https://github.com/microsoft/typespec/pull/4438


git-secret: 0.2.3 -> 0.2.4

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/git-secret/versions.
These checks were done:

built on NixOS
/nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4/bin/git-secret passed the binary check.
/nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4/bin/.git-secret-wrapped passed the binary check.
2 of 2 passed binary check by having a zero exit code.
1 of 2 passed binary check by having the new version present in output.
found 0.2.4 with grep in /nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4
directory tree listing: https://gist.github.com/d460daac78bbcef226d1fff7918d150d
du listing: https://gist.github.com/ea683543c922a9c179a97faf441a1797

meta.description for git-secret is: '"A bash-tool to store your private data inside a git repository"'.
cc @lo1tuma for testing.
Experimental: this build is cached with Cachix. To use the cache follow these experimental instructions:
One time setup in nixpkgs Git checkout:
cachix use r-ryantm
git remote add r-ryantm https://github.com/r-ryantm/nixpkgs.git

Test this build:
git fetch r-ryantm && git checkout 802ea37863d7b62f83b502212c6bb2a0671e6df1 && nix-shell --pure -I nixpkgs=. -p git-secret

Success on x86_64-linux (full log)
Attempted: git-secret
Partial log (click to expand)
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4
gzipping man pages under /nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4/share/man/
strip is /nix/store/4mf2xm9p32lzrim927yk92xhx35yaz62-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4/bin
patching script interpreter paths in /nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4
/nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4/bin/.git-secret-wrapped: interpreter directive changed from "/usr/bin/env bash" to "/nix/store/0aa1ngxygf1iqanfbpdb10klc7r343c0-bash-4.4-p19/bin/bash"
checking for references to /build in /nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4...
/nix/store/rhxzf1mc0jz2m3rp0rg5wqn81ykfshay-git-secret-0.2.4

Success on x86_64-darwin (full log)
Attempted: git-secret
Partial log (click to expand)
building
build flags: SHELL=/nix/store/7jlpy03vrh1v74b6rnrclbqc9s40ixkg-bash-4.4-p19/bin/bash
installing
post-installation fixup
gzipping man pages under /nix/store/yq6kgqp2an1nrlvq4gdizb3434db722s-git-secret-0.2.4/share/man/
strip is /nix/store/8q05v40n0f7amgw70pk6bkb23r7hrzgn-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/yq6kgqp2an1nrlvq4gdizb3434db722s-git-secret-0.2.4/bin
patching script interpreter paths in /nix/store/yq6kgqp2an1nrlvq4gdizb3434db722s-git-secret-0.2.4
/nix/store/yq6kgqp2an1nrlvq4gdizb3434db722s-git-secret-0.2.4/bin/.git-secret-wrapped: interpreter directive changed from "/usr/bin/env bash" to "/nix/store/7jlpy03vrh1v74b6rnrclbqc9s40ixkg-bash-4.4-p19/bin/bash"
/nix/store/yq6kgqp2an1nrlvq4gdizb3434db722s-git-secret-0.2.4

Success on aarch64-linux (full log)
Attempted: git-secret
Partial log (click to expand)
installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/2gsg5si00916ysnngs2k8nyh1ckgbkgh-git-secret-0.2.4
gzipping man pages under /nix/store/2gsg5si00916ysnngs2k8nyh1ckgbkgh-git-secret-0.2.4/share/man/
strip is /nix/store/min150lkigznaayzpwvf8d4jdl1dqvx6-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/2gsg5si00916ysnngs2k8nyh1ckgbkgh-git-secret-0.2.4/bin
patching script interpreter paths in /nix/store/2gsg5si00916ysnngs2k8nyh1ckgbkgh-git-secret-0.2.4
/nix/store/2gsg5si00916ysnngs2k8nyh1ckgbkgh-git-secret-0.2.4/bin/.git-secret-wrapped: interpreter directive changed from "/usr/bin/env bash" to "/nix/store/23kq49wszxq7k41dqfk82q5vqwlq5sww-bash-4.4-p19/bin/bash"
checking for references to /build in /nix/store/2gsg5si00916ysnngs2k8nyh1ckgbkgh-git-secret-0.2.4...
/nix/store/2gsg5si00916ysnngs2k8nyh1ckgbkgh-git-secret-0.2.4


Add multitenancy

Also update logs to contain project key.

The issue itself does not have enough context. We could add a more descriptive feature/issue type later if we need that. Hereby I'm closing the issue.


Multithread processing source files

Previously every source file was formatted / linted one by one. On our
codebase this took a full project format from ~17 minutes to ~5 minutes.

I think we should wait until we update the formatter to the latest version of swift-syntax

Formatter has been updated.🙂

After rebasing I believe I'm still seeing the stack issue that was mentioned with a debug build, I can try release tomrorow

Use a Thread with a custom stack size, as I mention in https://bugs.swift.org/browse/SR-11170

@keith, I have just gotten a chance to take a look at the stack overflow issue. It seems like the problem I had, resurfaced. I just opened https://github.com/apple/swift-syntax/pull/205 which should solve the issue. Could you try your changes in combination with my patch?

With that change it does work with debug builds

@keith Great. I have just merged the changes. Once a tag has been created for the new version, could you also adjust the version of SwiftSyntax that swift-format depends on in Package.swift?

I've updated swift-format to include that change, unfortunately I had to use a commit instead of a tag here https://forums.swift.org/t/no-new-master-snapshots-since-2-21/34200

I've rebased this again and dropped my Package.swift changes since those are no longer required. I would love to know what we can do to get this merged!

If we're going to support a parallel mode, I think we either need to provide our own diagnostic consumer that synchronizes its handle method, or make SwiftSyntax's PrintingDiagnosticConsumer do it by default. @akyrtzi

Yes, it makes sense to have PrintingDiagnosticConsume synchronize its writes to stderr so that it writes out a full diagnostic uninterrupted, but I don't think it is enough, you'd want to avoid interposing diagnostics from different files.
I would propose that diagnostics should be collected for each file and then printed as a group for each file in a sensible manner at the end, instead of printing to stderr as soon as something comes up.
That would also give you the opportunity to improve presentation as well later on, maybe optionally put out an html report or something, instead of printing to stderr.

You could have one diagnostic engine and one consumer per file, and then they can replay their diagnostics out to the outside engine

@akyrtzi Just that at the time it was written, there was no reason for it to be, so we could avoid the startup delay of collecting everything up front if someone ran the tool with --recursive on a large directory structure.

Does this startup delay really matter, the total time find+process files will still be the same at the end. And if you go with collecting the diagnostics to avoid having diagnostics printed to stderr interposed from different files, then you'll still not see some diagnostic until all the files are processed.

Is DispatchQueue.concurrentPerform preferred over OperationQueue, which also provides control over the number of concurrent jobs?

The benefit is that you'd just let Dispatch decide how many threads to use, instead of having to manually chose. But either way would be better than just continuously doing async on a concurrent queue.

And if you go with collecting the diagnostics to avoid having diagnostics printed to stderr interposed from different files, then you'll still not see some diagnostic until all the files are processed.

I agree that we don't want the diagnostics from different files to be interposed, but I still think we can do better than deferring the output of all diagnostics until all files are processed.
If we have to write our own diagnostic consumer that collects diagnostics and groups them by file, then we can just have a method on that consumer that says to flush the diagnostics for that file, call it when processing of that file is complete, and synchronize around that. (For diagnostics with unknown files, we could just emit those immediately, also synchronized.) Or as @harlanhaskins suggested above, use separate engines for each file, but that one worries me a bit because in the future we might want to have a JSON output mode that keeps all the diagnostics in a single output file and separate engines would make that harder since we'd have to merge them all afterwards.

The benefit is that you'd just let Dispatch decide how many threads to use, instead of having to manually chose. But either way would be better than just continuously doing async on a concurrent queue.

OperationQueue also has defaultMaxConcurrentOperationCount which lets the system decide how many jobs to run concurrently, but I don't know the details of how it selects that number compared to DispatchQueue.performConcurrent.
However, as I mentioned in one of my replies to Keith above, I think it would be fine to have --parallel mode eagerly evaluate the iterator into an array while leaving non-parallel mode to do it lazily, and doesn't require any changes to the way we traverse the file system.

At this point with debug or release mode I see crashes in SwiftSyntax:
Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
abort() called
swift-format(12906,0x7000042ba000) malloc: Incorrect checksum for freed object 0x7ff84ac8b7a8: probably modified after being freed.
Corrupt value: 0x3000080184b7284f

Thread 0:: Dispatch queue: com.apple.root.user-interactive-qos
0   swift-format                  	0x0000000103c5027c partial apply + 108
1   swift-format                  	0x0000000103c4d2ca SyntaxRewriter.visit(_:) + 330 (SyntaxRewriter.swift:4534)
2   swift-format                  	0x0000000103c4dc80 SyntaxRewriter.visitChildren<A>(_:) + 2224 (SyntaxRewriter.swift:5052)
3   swift-format                  	0x0000000103b9bc1e SyntaxRewriter.visit(_:) + 206 (SyntaxRewriter.swift:324)
4   swift-format                  	0x0000000103bcf19d SyntaxRewriter.visitImplBooleanLiteralExprSyntax(_:) + 1661 (SyntaxRewriter.swift:2147)
5   swift-format                  	0x0000000103c52428 partial apply + 104

What does TSan say? These structures should be immutable...

So with tsan I first hit many other issues. Looks like we're hitting some non-thread safe code elsewhere, like the use of DiagnosticEngine in rules:
https://github.com/apple/swift-format/blob/5786e26754c100f5e4e7d8df9e75ab50be9a9ce7/Sources/SwiftFormatWhitespaceLinter/WhitespaceLinter.swift#L344-L354

The Swift project moved the default branch to main and deleted master branch, so GitHub automatically closed the PR. Please re-create the pull request with main branch.
More detail about the branch update - https://forums.swift.org/t/updating-branch-names/40412

If someone is interested in picking up this change that would be great! Last I remember I believe the next blocker is that the diagnostics reporting types do not support multithreading

I'm facing the same threading issues with my use of the SwiftFormatter API for swift-doc. Running with TSAN, it found a data race here:
https://github.com/apple/swift-format/blob/d4bba6e22891ff1813e8267e36f2b00307684366/Sources/SwiftFormatCore/Rule.swift#L34
SUMMARY: ThreadSanitizer: data race Rule.swift:34 in static Rule.ruleName.getter
==================
==================
WARNING: ThreadSanitizer: data race (pid=13716)
  Read of size 8 at 0x0001115c6888 by thread T4:
    #0 static Rule.ruleName.getter Rule.swift:34 (swift-doc:x86_64+0x1003c1c50)
    #1 SyntaxFormatRule.visitAny(_:) SyntaxFormatRule.swift:34 (swift-doc:x86_64+0x1003ce72f)
    #2 SyntaxRewriter.visitImplSourceFileSyntax(_:) SyntaxRewriter.swift:2778 (swift-doc:x86_64+0x100f27e82)

Thanks for catching that one; it's not one of the original data races we dealt with in earlier iterations of this PR (the linked code was added later; it wasn't a race before because we inadvertently were never updating the cache 😬) but we'll need to go back and synchronize that now too.
@keith is correct about the original blocking issue being that DiagnosticEngine in SwiftSyntax not being thread-safe. Last I chatted with @akyrtzi he wasn't opposed to just synchronizing inside that class by default, so I can try to put together a PR for that soon unless someone else beats me to it.

Here's a change to make DiagnosticEngine thread safe: https://github.com/apple/swift-syntax/pull/243

Here's a change to fix the issue Mattt mentioned that I also hit once DiagnosticEngine was usable from multiple threads: https://github.com/apple/swift-format/pull/242

Here's a new PR for this change https://github.com/apple/swift-format/pull/243


much ado

Fixes #9 by passing numpy arrays as buffers instead of returning them. This makes it work far better across numpy versions
Fixes #7, #8, by allowing the user to index doc dicts and pass query dicts, thereby allowing for easy indexing and retrieval of models like EPIC, SPLADE, etc.

Are we good Sean? Have we tested with SPLADE?

Running now!


dialyzer defaults (rebar.config)

no_return is on by default, so having it there is redundant.

Soon will be updated bootstrap script where will be added option build plugin with clean option. Will be included this too. Thanks.


Create a Multi-Signature Wallet

Project title
Multi-Signature Wallet
Project Description
It is a multi-signature wallet contract where more than one user is required to sign the wallet transactions.
Domain

[] Solidity

@Vikash-8090-Yadav can I work on this?

please do mention if u r contributing to hacktoberfest or not .

@nirban256 Yes u can ..

@Vikash-8090-Yadav yes I am contributing to hacktoberfest

ok @nirban256  start working on this

@Vikash-8090-Yadav in which folder do I have to keep the contract files?

in level1

@Vikash-8090-Yadav if I add the contract without a live view or screenshots but explain all the functions in the readme will it be ok?

@nirban256 of this in level2 folder then video mandatory . if doesn't then ss is mandatory to explain the wotking of the project ..


Profiles & Formats (Excel Spreadsheet with Images)

Request from Marc Bach -
He asks if it would be possible to generate an excel file (.xlsx) with images.
Found couple of excel related libraries
https://github.com/damuellen/xlsxwriter.swift
https://github.com/CoreOffice/CoreXLSX

Probably. Although Excel already natively imports CSV and TSV. Is an actual xlsx file crucial to the workflow?

Is an actual xlsx file crucial to the workflow?

It was Marc Bach's request. I don't use excel in particular. Maybe he can reply to this thread when he is available.

Excel is always a funny thing. It's not really a data interchange format, but over the years it's somewhat become one - mostly because it's familiar and some platforms have started supporting it (Google Sheets? stuff like that). So I get it. It might be worth looking into if it's fairly easy to implement.

I checked out some open-source libraries and have a basic proof-of-concept, so it can definitely work.
I can probably throw together an Excel profile without much trouble.

I can probably throw together an Excel profile without much trouble.

I believe embedding of images to each respective row cell would be a challenge?
But as a basic option, we can provide .xlsx format. Improve and refine it further in future versions if it is feasible.
One a side note -
It is much easier to embed images in Apple Numbers as opposed to Excel.

New Excel profile is added. Will be in 0.3.8.

At this point, it's basically a carbon copy of the CSV content with no special formatting other than using bold text for the header row.
All cells are of "General" Excel cell format type, which is basically raw text values.
Generates thumbnail files on disk same as CSV profile.

Not sure if it's possible with the library I'm using to resize (or auto-resize) columns, or include images. I'll see if it's possible.

There's no way to auto-size columns to their contents with the XLSX library. (And in fact there's no way to write to the XLSX format to tell Excel to auto-size columns).
Column widths can either be left as default (the narrow uniform widths in the screenshot above) or set explicit width(s) for columns.
I was able to come up with a calculation that analyzes the table's data and sets column widths to be a little larger than their contents, up to a sensible maximum width.

Embedded image support may not be viable. There's no support in the XLSX library for any image-related operations. And images are considered floating objects on a worksheet and it's not really possible to embed an image in a single cell.

Embedded image support may not be viable. There's no support in the XLSX library for any image-related operations. And images are considered floating objects on a worksheet -- it's not really possible to embed an image in a single cell.

Noted! Basic excel file is a good as it gets.
If users want to want to embed images, they can easily use Apple Numbers App.

Agreed.
There isn't much more I would do to improve the Excel output at this stage.

None of the fields are number or time types that would make sense, so all values are General text. Excel doesn't understand timecode so you definitely don't want to have cells formatted as Date/Time.
No point doing any fancy formatting font/style wise, as users will not care or would want to apply their own formatting any way.

As far as Numbers files, I'm not sure if the file format is open or even something we could output. And it's a lot less in-demand than Excel. (But yeah, for a lot of things I do love using Numbers more than Excel.)

FWIW - I'm pretty sure there's some build-in macOS Terminal commands for converting a CSV file to an Excel Doc, Numbers Doc, etc. so you might just be able to output a CSV and convert into another format?

built-in macOS Terminal commands

News to me if so! But Excel is implemented and it works at least. And might be less brittle over time if it's not relying on an external tool that isn't under our control and Apple could remove or mangle at any time.

The XLSX request comes from the necessity of creating One Line Continuity reports. Those are spreadsheets where you have a representative frame grab of the scene with the scene name a synopsis of it that should fit in a line (or 2). It's used in scripted and documentary editing to quickly get a grasp of the flow of the scenes and check for any continuity conflicts (like "it's supposed to be daytime", "clothes don't match" or "I can't have this scene before that one because I'm missing info"). CSV doesn't have a solid image integration so using XLSX was a possible solution. (I could be interesting to create a Notion template for them).

The XLSX request comes from the necessity of creating One Line Continuity reports.

Interesting - that's useful info.
Incorporating images in the Excel sheet is a level of complexity I'm not sure is easily achievable at this time. I'd need to find an open-source Swift XLSX file write library that has image operations - and from early searches there's not much out there. Excel is a very archaic application with how it structures its documents (in order to maintain decades of backwards compatibility with millions of systems out there) so it's not fun to deal with.
I'm almost wondering if it's worth investigating if a VBScript within Excel could be used to take each row's image filename and then import/resize/position each image into the document, as a one-time operation.
If Excel is not critical and it's not important for the data to be mutable, other file formats could be considered. I would suggest PDF and/or HTML output as an additional export profile for MarkersExtractor. That way it's easy to integrate tables and images into a single document. Initially the layout and formatting may be dictated by the tool, but eventually custom formatting templates might be possible.

PDF and HTML could work fine.

I'm almost wondering if it's worth investigating if a VBScript within Excel could be used to take each row's image filename and then import/resize/position each image into the document, as a one-time operation.

@Marcplanb
https://github.com/TheAcharya/MarkersExtractor/assets/118706051/c9c6d960-6ae7-496f-adc3-150f90e2de87
With the aid of ChatGPT, I have written a VBScript to automate importing images row by row based on Image Filename column.
Here is the script  -
Sub InsertImages()
    Dim ws As Worksheet
    Dim imgFilename As String
    Dim imgFullPath As String
    Dim img As Shape
    Dim cell As Range
    Dim lastRow As Long
    Dim originalWidth As Single
    Dim originalHeight As Single
    Dim newWidth As Single
    Dim newHeight As Single
    Dim maxWidth As Single
    Dim maxHeight As Single
    Dim ratio As Single

    ' Set the maximum width and height for the inserted images
    maxWidth = 100 ' Adjust as needed
    maxHeight = 100 ' Adjust as needed

    ' Set the worksheet to the first sheet in the workbook
    Set ws = ThisWorkbook.Sheets(1)

    ' Get the last row with data in the Image Filename column
    lastRow = ws.Cells(ws.Rows.Count, "V").End(xlUp).Row ' Assuming column V is the Image Filename column

    ' Loop through each cell in the Image Filename column
    For Each cell In ws.Range("V2:V" & lastRow) ' Adjust the range if your data starts on a different row
        imgFilename = cell.Value
        imgFullPath = ThisWorkbook.Path & "/" & imgFilename

        ' Check if the image file exists
        If Dir(imgFullPath) <> "" Then
            ' Insert image using Shapes.AddPicture
            Set img = ws.Shapes.AddPicture(imgFullPath, _
                                           msoFalse, msoCTrue, _
                                           cell.Offset(0, 2).Left, cell.Top, -1, -1)

            ' Get the original dimensions of the image
            originalWidth = img.Width
            originalHeight = img.Height

            ' Calculate the new dimensions while maintaining aspect ratio
            If originalWidth > originalHeight Then
                ratio = originalHeight / originalWidth
                newWidth = maxWidth
                newHeight = maxWidth * ratio
            Else
                ratio = originalWidth / originalHeight
                newHeight = maxHeight
                newWidth = maxHeight * ratio
            End If

            ' Resize the image
            img.LockAspectRatio = msoTrue
            img.Width = newWidth
            img.Height = newHeight

            ' Adjust the row height to fit the image
            cell.EntireRow.RowHeight = newHeight
        Else
            ' If the file does not exist, you could add an error message or handle it differently
            cell.Offset(0, 2).Value = "File not found"
        End If
    Next cell

    MsgBox "Images have been inserted and row heights adjusted.", vbInformation
End Sub

Feel free to expand and tweak the script to your liking.

@orchetect I think we can safely release 0.3.8 with Excel Profile. 😀🙏

With the aid of ChatGPT, I have written a VBScript to automate importing images

Clever. AI's taking our jobs for sure.

can safely release 0.3.8

Done!

The XLSX library is kind of a house of cards. It works but, in short, we have to fork two libraries in order to make it compile.
This wasn't evident at the start because of how Xcode decides to throw compiler errors.
Basic explanation:

The XLSX library (A) is a Swift wrapper around another dependency (B).

A references B using a branch name because B is not using proper SemVer repo tags. So Swift Package Manager can't understand its version numbers. This means we're forced to reference by branch name.
This compiles ok because all dependencies are using branch names (unstable references).

While developing the MarkersExtractor package in isolation, no compiler issues presented because Xcode is building the package as-is, without reference to a version or branch of itself. It's just using the files on disk to compile.

However, when an app or package attempts to use MarkersExtractor as a dependency, we almost always use a stable version. ie: "from 0.3.8". And not a branch name. Xcode refuses to compile this because there is a mix of stable and unstable dependency references. MarkersExtractor is referenced at 0.3.8 (stable) but internally, MarkersExtractor is referencing the XLSX library by branch (unstable).

The cleanest way to a solution is to have both libraries A and B use proper SemVer tags on their repos, and the Package.swift files all reference stable version numbers. However we don't have control over those repos and convincing the repo maintainers to do so may not be possible.

The next best way to a solution is to just fork both libraries and make the needed changes. The downside is that any time either of those libraries have new versions, some work is required to update our forks manually.

For the time being, I've opted for the manual forking approach.

Thanks for the detail explanation!

Found another XLSX library. Although it is targeted for iOS I am not sure if there is any benefit in utilising this library. The repo seems to be somewhat regularly maintained. If it is possible, we can switch to this library as opposed to using the fork two libraries.
https://github.com/3973770/SwiftXLSX


[FEAT] CommandBar

whatchu want?
blocked by this.
These days everyone expects a vs-code style command bar that you can just start approximately typing what-you-want into and it gives you the option to do it, so I guess we should do that.

[] command bar on ctrl+space (but adjustable in the user config) that opens a bar you can type into that we'll make all app commands/capabilities available on.

Decided I don't want this


Dependency CI caching doesnt work

The conditions for the cache-busting and the check actually running are the same
The combined effect is it never runs with a cache
Not quite sure on the best solution - possibly there is something obvious, otherwise we could do something with azp cache's restoreKeys and a versioned base cache

this does actually kinda work - if you make changes to non-bzl dependency files


plutus-tx: Prelude exports quoted Builtins.error

By exporting Builtins.error as a quoted expression we ensure that it
is used in exactly the same way as everything else that is exported from
that module

Thanks!


Feature Request: DC Filter

Would be possible to make a DC filter node that blocks dc offsets in audio signal please?
This could be very useful.
I did some research about it and a lot of people saying about using a highpass filter
with a frequency range about 0 - 20 Hz.
https://stackoverflow.com/questions/20948111/how-can-i-remove-a-wandering-dc-offset-from-an-audio-clip
I also found these algorithms:
https://github.com/oampo/Audiolet/blob/master/src/dsp/DCFilter.js
https://wiki.analog.com/resources/tools-software/sigmastudio/toolbox/filters/dcblocking
https://ccrma.stanford.edu/~jos/filters/DC_Blocker.html
Other references:
https://en.wikipedia.org/wiki/DC_bias
https://www.soundonsound.com/glossary/dc-offset
also Please correct me if I am wrong,
but I tried making my own by using the highpass filter method. Unfortuenly I didn't had any audio i could use that already had ad dc offset so I had to record sample and make my own one by using Tone.Subtract(0.5). Then I used Tone.OnePoleFilter({type: "highpass", frequency: 5}); to filter the offset.
These are the results. I used Audacity to show the waveform difference. I used my favorite song 'Daft Punk - One More Time' to test this. 😄 🎵
The Original sample to test it with

This one above show my version of making a dc offset signal.
I'm not sure if I done this correctly, but I tried it anyway.

And this one show the result of the filter dc offset using ```Tone.OnePoleFilter({type: "highpsass"});```.
but yeah. Sorry if this is a lot to take in.
but is dc filter feature achievable? 😄

Is the OnePoleFilter code that you showed good for removing the DC offset: Tone.OnePoleFilter({type: "highpass"});?
According to this site that you link to, should be easy enough to implement with the IIRFilterNode. Not sure of the math off the top of my head, but if you could turn the transfer function from that CCRMA link into the proper coefficients, i would gladly accept a PR for such a module.

OMG! 😄 Thank you very much. I'm not a expert at maths and I'd never calculated coefficients before but I will try my best to calculate the them even that means to get some extra help from other people and or more research. 🤓 📚 📖  But I will post a comment with coefficient calculations on it when it's done.
Also to answer your question:

Is the OnePoleFilter code that you showed good for removing the DC offset: Tone.OnePoleFilter({type: "highpass"});?

To be honest I'm not entirely sure, maybe. The screenshots from my computer of audacity does show proof of the waveform moving up into position on the 3rd image but when I played it, it sounded ok unlike the 2nd image where it was crackling and popping etc as expected. I only thought of it because the filter doesn't really need a big of a slope and some of the research especially  wikipedia says that dc offset can be reduced in real time by using a high pass filter. So I thought I will try using Tone.OnePoleFilter({type: 'highpass'}) (since it also has a -6db rolloff), to see if it works. Trust me after reading about the high pass filter methods and finding those algorithms, I was scratching my head a lot. 🤔

I got an update for you.
I did some more research and other stuff and I think I found some answers that might help you on how to build it with a IIRFilterNode like you said.

should be easy enough to implement with the IIRFilterNode

Firstly I looked these frequency response graphs to get a basic idea on what where trying to achieve here, so I was a little bit lazy and tried to find a frequency response calculator online and thankfully I did find one and it uses coefficient as input which is good. I played around with it until I found some coefficient numbers that matches magnitude and phase response graphs in CCRMA site for the dc blocker.
In the interactive frequency response grapher site from earlevel.com, try putting in a coefficients side (zeros) to 1.0 for a0 and -1.0 for a1 and on the b coefficients side (poles), put 1.0 for b0 and any number between 0 and -1 for b1 (also known as R).
And just you are wondering about why put a number between 0 and -1? Is because when you put a number between 0 to 1 the results doesn't really exactly match the frequency responses and phase response graphs in the CCRMA site. You'll see what I mean  you try it. Also the numbers I suggested to you to try on the grapher, I noticed that it's similar to your OnePoleFilter class for the filter type high pass. So mabye could be a consider using. Still not fully sure. I'd do suggest you have try to see the result.
Anyway I also found this:
R = 1 - (2 * Math.PI * frequency / sampleRate);

from this site: https://www.musicdsp.org/en/latest/Filters/135-dc-filter.html. This code came from some comment on the page. I hope this could be useful.
And also I strongly recommend looking at these sites:
http://peabody.sapp.org/class/dmp2/lab/dcblock/
https://www.knowles.com/docs/default-source/default-document-library/dc-blocking-filter.pdf?sfvrsn=fdb77b1_6
These 2 sites above both follow the algorithm from the CCRMA site but with different presentation like data tables and graphs and it has diagrams too. I personally think you might find the first URL more useful than the second one.
I don't know if any of these sites below are any useful to you but I put on here just in case.
https://www.iro.umontreal.ca/~mignotte/IFT3205/Documents/TipsAndTricks/DCBlockerAlgorithms.pdf
http://sam-koblenski.blogspot.com/2015/11/everyday-dsp-for-programmers-dc-and.html
https://www.embedded.com/dsp-tricks-dc-removal/
Apologies if you hoping for some code but
I really do hope this info that I found can help you give a bit more of an idea on how to possibly make a dc filter using an IIRFilterNode. If you got any questions feel free to ask.
😄 👍

Hey
I think i have a solution.
look at this image that I took a screenshot of from this site.

It basically is saying pretty much the same thing that is says in the CCRMA site.
But it if you look at the routings of the feedforward and feedback graph, I think it's safe to say try doing this code:
//a is the parameter. Make sure 'a' is a negative between 0 to 0.999
//feedforward:   [1, -1]
//feedback:      [1, -a]
let filter = Tone.context.createIIRFilter([1, -1], [1, a]);

I do suggest using this calculator to look at it's magnitude and phase response compared to the CCRMA site that show the frequency and phase responses here by putting in the 'a terms (zeros)' 1, -1 and in b the terms (poles),  1 and a negative number between 0 and 0.999. Just in case you ask why a negative number? Is because a positive number on the calculator produces some weird interesting results. Well results that I don't think is what we need for a dc filter. I do suggest have a playground with it though to see what result you can compare with the frequency responses that are in the CCRMA site.
here's and example comparison that i did using the calculator to prove this could be the solution:

If you compared them together, do you see what what I mean?
I do hope this works and a bit more of an idea on how it could be done with an IIRFilterNode. 😄

Hey
I think i have a solution.
look at this image that I took a screenshot of from this site.

It basically is saying pretty much the same thing that is says in the CCRMA site.
But it if you look at the routings of the feedforward and feedback graph, I think it's safe to say try doing this code:
//a is the parameter. Make sure 'a' is a negative between 0 to 0.999
//feedforward:   [1, -1]
//feedback:      [1, -a]
let filter = Tone.context.createIIRFilter([1, -1], [1, a]);

I do suggest using this calculator to look at it's magnitude and phase response compared to the CCRMA site that show the frequency and phase responses here by putting in the 'a terms (zeros)' 1, -1 and in b the terms (poles),  1 and a negative number between 0 and 0.999. Just in case you ask why a negative number? Is because a positive number on the calculator produces some weird interesting results. Well results that I don't think is what we need for a dc filter. I do suggest have a playground with it though to see what result you can compare with the frequency responses that are in the CCRMA site.
here's and example comparison that i did using the calculator to prove this could be the solution:

If you compared them together, do you see what what I mean?
I do hope this works and a bit more of an idea on how it could be done with an IIRFilterNode. 😄

moved to #1025


[MRESOLVER-88] Use Java 7 features and style fixes

ok, now it's ready for review. That's all that I found to be improved - then we have a better base to implement other improvements like migrating to NIO.

thx for review and approval. Then I should send this to ML, right?

Not necessary, I was the only one lately working on resolver. Go ahead and merge please!


Add Brest, FR

With public transportations (for the whole metro area).
If needed the import logs are on https://gist.github.com/XioNoX/a4b285eb34634d3c7da1c94dfc8b84c0 I see lots of warning and errors happy to fix (some of) them if I know how.
I named the file "city" as the Brest metro area includes adjacent cities. If I add those later on then it probably makes sens to name them data/system/fr/brest/
I'm also interested in how I can add elevation data as the city is quite hilly.
Thanks! Starting to get familiar with your tool, it's awesome.

Hi, and thanks for the PR! It's awesome to see a new map with GTFS support.
I can finish the import and upload to the A/B Street S3 bucket like other maps, but I wanted to first shrink the geojson file. Since everything's in one git repo, ideally we can shrink much more than 190KB. I used mapshaper.org simplify tools and got it down to about 3KB, but the coastline is trimmed a bit: https://gist.github.com/dabreegster/d938c80d296160c00e4e13c7a2f5d91c. We could also try convex hull or just manually draw something around the original relation multipolygon you extracted. The boundaries don't need to exactly clip to any official boundary; it all depends on the area you want to study and having sufficient buffer around it. What would you prefer to do here?

I see lots of warning and errors happy to fix (some of) them if I know how.

Those all look normal to me; the warnings are probably too noisy at this point.

I'm also interested in how I can add elevation data as the city is quite hilly.

You'd need to find a DEM source and add it to https://github.com/eldang/elevation_lookups. That handles a bunch of different input formats, so hopefully the hard part is just finding the data. After rebuilding the Docker image, we'd then update importer/src/map_config.rs where it sets elevation

Thanks for your quick reply!
I think this works fine as well. I guess we can fine tune it in the future if this approximation becomes problematic?
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {},
      "geometry": {
        "coordinates": [
          [
            [
              -4.549977266245776,
              48.35112096321657
            ],
            [
              -4.42146691507142,
              48.38290771778398
            ],
            [
              -4.464560402357165,
              48.43512568316484
            ],
            [
              -4.501832529976298,
              48.43594391060566
            ],
            [
              -4.523346221286147,
              48.41048177327892
            ],
            [
              -4.568566082000757,
              48.38855593346918
            ],
            [
              -4.549977266245776,
              48.35112096321657
            ]
          ]
        ],
        "type": "Polygon"
      }
    }
  ]
}

For the elevation data, I might be able to get them from the city but I need to email them (https://geo.brest-metropole.fr/portal/home/item.html?id=d041b7c624894f54b812af17d8dfb737)
Seems like this blogpost have other options (of different quality) too (in French): https://christophe-lebas.medium.com/où-trouver-des-heightmaps-des-mnt-et-des-données-lidar-pour-faire-des-cartes-3d-9dbc4b2f2944

Yep, we can always adjust the polygon. The smaller one looks great to me! And sounds good about the elevation sources, let me know if you hit any troubles.
I can't push a commit to the branch of this PR, so instead I'll merge this one and immediately push another commit on main with the uploaded data and smaller polygon. After that, if you pull from main and rebuild, it should show up as a downloadable city in the big list on the left. Thanks again for the PR! I'll try and get to the other issues ASAP, please do keep reporting anything you find broken or ideas you have for improvements

Awesome, thanks, I opened https://github.com/eldang/elevation_lookups/issues/32 for the elevation data.


Prevent of patching $PROFILE

Let's use unix way with $HOME/.profile.d directory for requiring shell scripts without dirty hacks with ~/.profile. I've realised basic patcher profile_patcher to do so.

Can you elaborate on what you think the "unix way" is, and what nvm is doing that's a hack? All profile files in the user directory are typically totally fine for the user to edit in any way they like.

The first reason is simplification and clearness (the unix way). We have /etc/profile.d where files are stored with semantic names. And if i want to turn something off I can just rename it. It's just one command. And everyone know that. But when i want to turn nvm on or off I need to know special nvm commands or to patch ~/.profile manually. It's unclear and make me remember all action i do. I'm working with multiple utils and machines at the same time and I just can't and shouldn't know how does every of them patch my .profile.
Also it simplify access with another utils without heavy coding. Look at current nvm isntallation code it looks complicated.
The second reason is simple versioning it's simple to diff two files. But how to diff patch result?
The third is security. Patch result could not have shasum and thus could not be signed and file could.

There won't be any signatures, so the third point is irrelevant. Diffing a patch result is very simple - a patch is itself a diff, so the second point is also irrelevant.
It seems like managing profile.d and maintaining a separate file is a lot of complexity (that no user has ever previously asked for), and is something that's pretty trivial for you to do yourself?

Signaturing is an example of opportunities. Patch itself is not a diff because it isn't a static diff file it's a program.
Yes the main feature is to make it managable using unix experience. Current discision works but it's too custom. Yep, there is no so much users who care about simplicity but don't you think that standard behaviour is the thing that makes everything simple and clear?


Thanks for your interest - we're hoping to have this ready in 1-2 weeks.


Restructure grpcserver package

Motivation
Follow up to https://github.com/spacemeshos/go-spacemesh/pull/4277: move config and interfaces / mocks into the grpcserver package
Changes

some of the handwritten mocks have been replaced by generated ones
cmd.Version and cmd.Commit are passed into the service instead of accessing it in the cmd package (to avoid cyclic dependencies)

they shouldn't change during runtime so this shouldn't break anything

Test Plan
Existing tests pass
TODO

[x] Explain motivation or link existing issue(s)
[x] Test changes and document test plan
[x] Update documentation as needed

DevOps Notes

[x] This PR does not require configuration changes (e.g., environment variables, GitHub secrets, VM resources)
[x] This PR does not affect public APIs
[x] This PR does not rely on a new version of external services (PoET, elasticsearch, etc.)
[x] This PR does not make changes to log messages (which monitoring infrastructure may rely on)

Hey @fasmat why did you merge the config package with the grpcserver package?
That seems like it's going to cause problems with tight coupling and circular dependencies (and already did in this PR).
Now anyone depending on the config package has to pull in all the dependencies of the grpcserver package, which contains a whole ton of functional dependencies which are totally unnecessary for understanding the config which if kept in a separate package only has a dependecy on the std time package.

@fasmat I'd also like to know why you merged the API package with the grpcserver package, I don't see any problems with that, but I'd like to know your reasoning?

The api package contained 3 things: grpcserver, config (the config for the grpcserver package) and interfaces & mocks (that ware only used in the grpcserver package). I feel like these belong functionally together thats why I merged them. 🙂

Hey @fasmat why did you merge the config package with the grpcserver package?
That seems like it's going to cause problems with tight coupling and circular dependencies (and already did in this PR).
Now anyone depending on the config package has to pull in all the dependencies of the grpcserver package, which contains a whole ton of functional dependencies which are totally unnecessary for understanding the config which if kept in a separate package only has a dependecy on the std time package.

The api/config package does not stand for itself. There were only 2 packages using it: cmd/node and config. The former already has a dependency on grpcserver. The later serves as some kind of meta-package that imo we don't need - see below.
Additionally all of these separate config packages introduce types that are called config.Config and config.DefaultConfig, wouldn't names like hare.Config, tortoise.Config, etc. make more sense? Imo it makes no sense to have separate sub-config packages for everything. They are not used without the package they belong to (except for our global config package).
The reason the global config exist is because we need to have some way to parse command line options and configuration files. The problem is now our configuration files are tightly coupled to our implementation. I cannot change any config of any service without also implicitly changing the layout of our config files. Imo this is wrong; our configuration should not be defined by our implementation but vice versa.

bors merge


Remove alignLeft, alignCenter, alignRight, alignAuto

Remove:
alignLeft(val, len, [pad])
alignCenter(val, len, [pad])
alignRight(val, len, [pad])
alignAuto(val, len, [pad])
setAlignLeft(idx)
setAlignCenter(idx)
setAlignRight(idx)
setTitleAlignLeft()
setTitleAlignCenter()
setTitleAlignRight()
setHeadingAlignLeft()
setHeadingAlignCenter()
setHeadingAlignRight()

None of the methods provide value to the package. It only makes the API looks less approachable and use less predictable. Removing these methods in favour of keeping just align, setAlign, and setHeadingAlign would reduce the complexity of the API.

Agreed, the new refactor will eliminate all of these methods, including align, setAlign, and setHeadingAlign. There will be a single table configuration method to set all of these values.

Any reason to refactor ascii-table than to continue work on https://github.com/gajus/table, which already has modular code base?

My primary reason is that I intend this codebase to be a single file exportable to both node and the browser, and would like to make this codebase as minimal as possible.  I like what you are doing with the table package, but I think you and I differ on how a project should be structured and the API it should have.
One of my primary issues with the table package is how modular it is, this should be a very small codebase and not require multi-file abstraction, in my opinion.
This module was build many years ago, and I intend to upgrade it with what I know now along with your suggestions on API design.

@gajus Would you mind having a more in depth discussion about this? I'm not sure github comments are a good discussion or brainstorming tool, send me an email at<EMAIL_ADDRESS>I think we can at the very least improve both our libraries

My primary reason is that I intend this codebase to be a single file exportable to both node and the browser.

This sounds like a case of over-engineering. If the intention is to have a shared API between server-side code and client-side code, then have two separate packages that implement the same interface.

I think you and I differ on how a project should be structured and the API it should have.

If your concern is the API, then raise an issue and propose a different API/ additions to the existing API. It must mention the benefits of the proposed changes over the existing API. Furthermore, the underlying implementation is granular enough to enable pretty much whatever API. Proposing changes to an existing project is a lot easier first step to take then to write/ reimplement yet another library.

One of my primary issues with the table package is how modular it is, this should be a very small codebase and not require multi-file abstraction, in my opinion.

All modules are implemented following principles of functional programming (namely: single-responsibility, no side effects, no state).

@gajus Would you mind having a more in depth discussion about this? I'm not sure github comments are a good discussion or brainstorming tool, send me an email at<EMAIL_ADDRESS>I think we can at the very least improve both our libraries

Thank you for the invitation to the discussion. However, given that we are discussing open-source projects, I think that GitHub comments is an appropriate place to have such discussion.


Port to 1.19.3?

Hey, I have a back-port request for the “Container Tooltips” mod of yours. Is it ok if you back-port the mod to the specified version, in this issue’s title?

I can take a look. If there have not been any major changes in the API, it would be probably pretty straightforward to implement.

Alright, thanks!

Sorry for the slow response. But I did take a look at backporting this mod to 1.19.3. Unfortunately it isn't as straightforward as I had hoped. There are quite a few changes between 1.19 and 1.20, which means I would have to write quite a bit of rendering code. So I will have to decline this request.

Oh - Ok. Thanks for responding, Jere Teitteinen.
On Fri, Apr 12, 2024 at 9:00 AM Jere Teittinen @.***>
wrote:

Sorry for the slow response. But I did take a look at backporting this mod
to 1.19.3. Unfortunately it isn't as straightforward as I had hoped. There
are quite a few changes between 1.19 and 1.20, which means I would have to
write quite a bit of rendering code. So I will have to decline this request.
—
Reply to this email directly, view it on GitHub
https://github.com/Urokhtor/container-tooltips/issues/3#issuecomment-2052038409,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A27ZHSSVASHO6YPSBHVGJTDY5AAKLAVCNFSM6AAAAABFWMQJC2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANJSGAZTQNBQHE
.
You are receiving this because you authored the thread.Message ID:
@.***>


mei v3 to v4 xslt should generate<appInfo> entry

The mei30To40.xsl does a very good job in adding a <change> corresponding to its own execution, thus documenting it has been executed on the file. Nevertheless this change points from its @resp to a @xml:id that cannot be resolved against the resulting document.
Ideally this would be fixed by also introducing an entry in the <appInfo> referencing the script, potentially identifying the processor or transformation engine.

alternatively it could point to this repo and the XSLT in the respective release version

opinions?

@bwbohl Can we use the same approach as in the mei40to50 XSLT here?


AgBot gets wrong token in all-in-one deployment.

I deployed an all-in-one, but no agreements ever formed, even though node registration succeeded. Looking at the agbot logs I saw lots of credential errors.
Looking inside the container, we discovered that the /etc/horizon/anax.json file had somehow gotten the wrong token! Editing this file to contain the correct token, and then stopping and starting the container fixed the problem. Agreements with registered nodes now happen as expected.
I noticed that this bind happens for the agbot container:
"Binds": [
                "/etc/horizon/agbot.json:/etc/horizon/anax.json.tmpl:ro"
...

Notice the .tmpl suffix. This file contains the correct token and is identical to the bound host file (as expected since it it s readonly bind). So I assume that the AgBot is supposed to copy this bound file into anax.json (without the .tmpl suffix) but for some reason it didn't just copy it; it edited the token, which broke the agbot.

@TheMosquito did this error occur on ubuntu or macos?

@bmpotter  This was on ubuntu 18.04, running on an Intel NUC i7/16GB.

@TheMosquito hmmm, i have no idea how to debug this, because it works fine for me. Is this repeatable?

I figured out the problem: by default it generates random pw/tokens so the user doesn’t have to specify any args if they don’t want to (this can be overridden). So on the 2nd run, the agbot token was being changed in the exchange, but the running agbot wasn’t picking it up. In the fall timeframe we always restarted the agbot because of that bug where it wasn’t picking up the org. But i removed that recently, because the agbot bug was fixed. And that’s when this no-agreement problem started showing up on rerun. I fixed it such that it now restarts the agbot if the token has changed.

Tested by many people over the last 4 months.


TST: use types.api in plotting

[x] tests added / passed
[x] passes git diff upstream/master | flake8 --diff

remove warning related to #13147 and #13621

Current coverage is 85.25% (diff: 100%)

Merging #13867 into master will increase coverage by <.01%

@@             master     #13867   diff @@
==========================================
  Files           140        140
  Lines         50455      50455
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits          43014      43015     +1
+ Misses         7441       7440     -1
  Partials          0          0

Powered by Codecov. Last update 59f2557...8450250

thanks!


[WIP] Support Danger

          1 Warning

:warning:
PR is classed as Work in Progress

  Generated by :no_entry_sign: Danger


Rpi Error: cannot import name Padding

Bug report
I have try several time to install Netflix addon on Raspberry pi 3 and kodi 18.x
I have install all dependencies according the doc for raspbian but I got an error message that warn of missing libraries and an
error details: cannot import name Padding
Your Environment

Netflix add-on version: 1.6.1
Operating system version/name: Raspbian full
Device model:  Raspberry Pi 3

Used Operating system:

[ ] Android
[ ] iOS
[ ] Linux
[ ] OSX
[X] Raspberry-Pi
[ ] Windows

Describe the bug
The addon do not launch there is a alert box with messages described above. If I clic ok to close the message box kodi navigate to the video page
Expected behavior
Open the addon
Actual behavior
Error messages
Steps to reproduce the behavior

Install dependencies
Install addon according the doc
Navigation to addon browser clic on Netflix addon icon

Possible fix

pip install Padding # but it's the same
Debug log
2020-07-16 21:21:33.385 T:1622073568   ERROR: [plugin.video.netflix (0)] Traceback (most recent call last):
                                              File "/home/pi/.kodi/addons/plugin.video.netflix/resources/lib/run_service.py", line 48, in init_servers
                                                from resources.lib.services.msl.http_server import MSLTCPServer
                                              File "/home/pi/.kodi/addons/plugin.video.netflix/resources/lib/services/msl/http_server.py", line 32, in <module>
                                                from .msl_handler import MSLHandler
                                              File "/home/pi/.kodi/addons/plugin.video.netflix/resources/lib/services/msl/msl_handler.py", line 25, in <module>
                                                from .msl_requests import MSLRequests
                                              File "/home/pi/.kodi/addons/plugin.video.netflix/resources/lib/services/msl/msl_requests.py", line 21, in <module>
                                                from resources.lib.services.msl.msl_request_builder import MSLRequestBuilder
                                              File "/home/pi/.kodi/addons/plugin.video.netflix/resources/lib/services/msl/msl_request_builder.py", line 33, in <module>
                                                from .default_crypto import DefaultMSLCrypto as MSLCrypto
                                              File "/home/pi/.kodi/addons/plugin.video.netflix/resources/lib/services/msl/default_crypto.py", line 28, in <module>
                                                from Cryptodome.Util import Padding
                                            ImportError: cannot import name Padding

Additional context or screenshots (if appropriate)
Installation

[ ] I'm using other Netflix Repo
[ ] I'm using a different source

Other information

Screenshots

I had the same problem on my Raspberry Pi 4.
Solved it by installing:
sudo pip install pycryptodome

With my Raspberry Pi 3 and osmc, same bug, I solved it by executing sudo apt install python-pycryptodome

Same problem. Same solution

also solved it by: sudo pip install pycryptodome

I'm still getting the error.  On Kodi 19, ran install pycryptodome.  The one thing I notice is that I also have python 3.7 on and the crypto is in the python 2.7 dir.
The error is " ImportError: cannot import name 'Padding' from 'Crypto.Util' (/usr/lib/python3/dist-packages/Crypto/Util/init.py)"
What's the solution to this?

So I'v installed a blank OSMC with only this addon installed and I'm also getting this error message while installing all the required apps as described in the readme. So there is a serious issue here as when it doesn't work with a blank installation.


refactor MaxmindLocal lookup

We were trying to use this in a production system when we encountered a big performance issue. I tracked down the main cause: calling ActiveRecord::Base.connection.execute(query).first will query the entire table, then produce the first result of the results array. This was probably not the intention of the person who wrote this and by calling first on the actual query (as in LIMIT 1) query time can be reduced from a constant 400-500ms to something around 10-50ms (depending on the position of the looked up IP address in the index).
Further improvements include enabling caching (if configured). Even if this query runs on the local database, it's still a pretty huge table, especially if you're using request.location on every request.
My intention was to get rid of the SQL in there, in favour of proper ActiveRecord queries. The ActiveRecord::Base.connection.execute call made me think that ActiveRecord is a dependency here so I could make use of it. However I stumbled upon a problem while running the test suite, that made me discover that ActiveRecord is actually mocked in the tests. So I tried my own mocking, maybe you can suggest something else.
The database layout is not very ActiveRecord-ish (e.g. I had to use table_name= because of the singular), but I figured that renaming the tables and columns would be a breaking change. Anyhow, I think it looks better with the Models in there and with proper relationships.
Let me know what you think :squirrel:

sorry for the lack of reaction on my side but I never found the time to finish this PR. so I'll close this :baby_chick:


⚠ Bofrost.de has degraded performance

In 94f5b5b, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1828 ms

Resolved: Bofrost.de performance has improved in f84436b.


Finetuning for better voice cloning

Could you be more specific?

Hi @yl4579, sorry for the confusion. I was wondering if it was possible to fine tune the model on a dataset of my voice to make it sound more like me. Is this possible? Thanks!

Yes, see the fine tune script and colab demo for more details.

OK, thanks!


docker-compose: file exists at %!s(MISSING), can't create volume there

I'm have been using nginx-proxy with docker-compose on CentOS 7 successfully, but after updating Docker using the latest yum package (from 1.5.0-1.el7 to 1.5.0-28.el7.centos), I began receiving an error.
# docker-compose --verbose up -d
Compose version 1.1.0
Docker base_url: http+unix://var/run/docker.sock
Docker version: KernelVersion=3.10.0-123.el7.x86_64, Arch=amd64, ApiVersion=1.18, Version=1.5.0-dev, GitCommit=fc0329b/1.5.0, Os=linux, GoVersion=go1.3.3
docker containers <- (all=True)
docker containers -> (list with 0 items)
Creating munkicluster_proxy_1...
docker containers <- (all=True)
docker containers -> (list with 0 items)
docker create_container <- (name=u'webcluster_proxy_1', image=u'jwilder/nginx-proxy:latest', environment={}, volumes={u'/app/nginx.tmpl': {}}, detach=True, ports=[u'443'])
file exists at %!s(MISSING), can't create volume there

Here is the docker-compose service:
# THIS DOESN'T WORK
proxy:
  image: jwilder/nginx-proxy
  privileged: true
  volumes:
    - templates/nginx.tmpl:/app/nginx.tmpl
    - /var/run/docker.sock:/tmp/docker.sock
    - certs:/etc/nginx/certs
  ports:
    - "443:443"

As you can see, I am replacing the default nginx.tmplwith my own custom config. This appears to be the source of the issue -- if I remove this volume directive, the build succeeds.
# THIS WORKS
proxy:
  image: jwilder/nginx-proxy
  privileged: true
  volumes:
    - /var/run/docker.sock:/tmp/docker.sock
    - certs:/etc/nginx/certs
  ports:
    - "443:443"

Of course, the proxy will not function as I need it without the extra configuration contained in the cstom template, but the container will build without error.
Moreover, if I instead run the equivalent command using just docker, it executes normally:
docker run --privileged \
  -d --name proxy \
  -v /webcluster/templates/nginx.tmpl:/app/nginx.tmpl \
  -v /var/run/docker.sock:/tmp/docker.sock \
  -v /webcluster/certs:/etc/nginx/certs \
  -p "80:80" jwilder/nginx-proxy

I'm guessing this may be only indirectly related to nginx-proxy, but if anybody knows a little more about the cause appreciate your input.
Thanks,
B.

I just got the same error testing your docker-compose.yaml in a directory that was missing templates/nginx.tmpl. When I did that, docker created the templates/nginx.tmpl as a directory in my home directory. I think the issue is that it then tries to bind mount over /app/nginx.tmpl, expecting it to be a directory, then fails when it sees that it's a file instead.

Interesting. After reading this, I tried moving the custom nginx.tmpl into templates/app and then using...
proxy:
  image: jwilder/nginx-proxy
  privileged: true
  volumes:
    - templates/app:/app
    - /var/run/docker.sock:/tmp/docker.sock
    - certs:/etc/nginx/certs
  ports:
    - "443:443"

This nukes the /app directory, but the container DOES build.
Do you think it is safe to assume this is a problem with docker-compose?

Do you think it is safe to assume this is a problem with docker-compose?

It looks like it. Did you try putting ./templates/nginx.tmpl:/app/nginx.tmpl by any chance? That's probably what I'd try, though I wouldn't necessarily expect it to act any differently.
This issue looks related: https://github.com/docker/compose/issues/424

I did -- no change -- I have tried every permutation I can think of.

Thanks for the clarity on this. I have added a comment to thread you cited.
Should this issue be closed?

This is the result of some RHEL patches to Docker 1.5.0. Closing.


Language Server Protocol server MVP

This is work by @mhuisi and myself adding an initial implementation of an LSP server.
What works so far:

Connecting from

VSCode using lsp-sample
Emacs using lsp-mode

Parsing opened files with the new frontend and emitting diagnostics
Like Lean 3, on receiving changes the server only recompiles parts of the file below the change. I manually fuzzed this for a while with rapid edits, emojis, etc. and the server-side state seems to hold okay, but more testing is probably needed.

What's not here yet:

Cleanup of compacted regions on file being closed/recompilation of imports
Go-to definition, hovers, refactoring, etc.
An easy way to start the server with companion editor extensions

I'm also a bit worried about the performance. It's unfortunately not entirely clear to me when Lean is able to apply destructive updates, so likely a lot of unnecessary copying of non-persistent data structures is happening.
CC @Kha

:tada: :tada: :tada:

Would you have testing instructions for lsp-mode as well?

I'm also a bit worried about the performance. It's unfortunately not entirely clear to me when Lean is able to apply destructive updates, so likely a lot of unnecessary copying of non-persistent data structures is happening.

Are you experiencing performance problems?
We don't have good infrastructure for diagnosing this kind of issue right now. We have the following low-level primitive
def dbgTraceIfShared {α : Type u} (s : String) (a : α) : α :=

At runtime, it will display s with RC(a) > 1.
If we are in "desperate mode", we use set_option trace.compiler.ir.reset_reuse true.
Another option to be safe is to use PersistentArray instead of Array.

Are you experiencing performance problems?

Not yet, fortunately! The worry is purely preemptive, regarding how the server is going to scale on mathlib-sized files/projects. We haven't measured any timings, so perhaps a good investment would be to try to come up with some benchmarks for it.
Thank you for the diagnosing tips. I will try out the shared checks and potentially move to PersistentArray.

@leodemoura Ready to merge?

@leodemoura Ready to merge?

Thanks for reviewing the PR. I will merge it right now.


Examples won't compile

The examples won't compile and throw the following error:
   Compiling imgui-examples v0.1.0 (/tmp/imgui-rs/imgui-examples)
error[E0308]: mismatched types
   --> imgui-examples/examples/support/mod.rs:36:29
    |
36  |         .set_window_builder(builder)
    |          ------------------ ^^^^^^^ expected `WindowBuilder`, found a different `WindowBuilder`
    |          |
    |          arguments to this method are incorrect
    |
    = note: `WindowBuilder` and `WindowBuilder` have similar names, but are actually distinct types
note: `WindowBuilder` is defined in crate `winit`
   --> /home/xxx/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.29.8/src/window.rs:118:1
    |
118 | pub struct WindowBuilder {
    | ^^^^^^^^^^^^^^^^^^^^^^^^
note: `WindowBuilder` is defined in crate `winit`
   --> /home/xxx/.cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.28.7/src/window.rs:105:1
    |
105 | pub struct WindowBuilder {
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    = note: perhaps two different versions of crate `winit` are being used?

Steps to get there were git clone into cargo test.

Steps to reproduce in docker:
docker run -it rust:latest /bin/bash
git clone https://github.com/imgui-rs/imgui-rs.git
cd imgui-rs
cargo test

Will fail with the following output:
error[E0277]: the trait bound `glutin::surface::WindowSurface: glium::glutin::surface::SurfaceTypeTrait` is not satisfied
  --> imgui-glium-renderer/examples/glium_01_basic.rs:91:47
   |
91 | fn create_window() -> (EventLoop<()>, Window, glium::Display<WindowSurface>) {
   |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `glium::glutin::surface::SurfaceTypeTrait` is not implemented for `glutin::surface::WindowSurface`
   |
   = help: the following other types implement trait `glium::glutin::surface::SurfaceTypeTrait`:
             glium::glutin::surface::WindowSurface
             glium::glutin::surface::PbufferSurface
             glium::glutin::surface::PixmapSurface
note: required by a bound in `glium::Display`
  --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/glium-0.33.0/src/backend/glutin/mod.rs:83:23
   |
83 | pub struct Display<T: SurfaceTypeTrait + ResizeableSurface + 'static> {
   |                       ^^^^^^^^^^^^^^^^ required by this bound in `Display`

error[E0277]: the trait bound `glutin::surface::WindowSurface: glium::glutin::surface::ResizeableSurface` is not satisfied
  --> imgui-glium-renderer/examples/glium_01_basic.rs:91:47
   |
91 | fn create_window() -> (EventLoop<()>, Window, glium::Display<WindowSurface>) {
   |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `glium::glutin::surface::ResizeableSurface` is not implemented for `glutin::surface::WindowSurface`
   |
   = help: the trait `glium::glutin::surface::ResizeableSurface` is implemented for `glium::glutin::surface::WindowSurface`
note: required by a bound in `glium::Display`
  --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/glium-0.33.0/src/backend/glutin/mod.rs:83:42
   |
83 | pub struct Display<T: SurfaceTypeTrait + ResizeableSurface + 'static> {
   |                                          ^^^^^^^^^^^^^^^^^ required by this bound in `Display`

For more information about this error, try `rustc --explain E0277`.
error: could not compile `imgui-glium-renderer` (example "glium_01_basic") due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
error[E0308]: mismatched types
   --> imgui-examples/examples/support/mod.rs:36:29
    |
36  |         .set_window_builder(builder)
    |          ------------------ ^^^^^^^ expected `WindowBuilder`, found a different `WindowBuilder`
    |          |
    |          arguments to this method are incorrect
    |
    = note: `WindowBuilder` and `WindowBuilder` have similar names, but are actually distinct types
note: `WindowBuilder` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.29.8/src/window.rs:118:1
    |
118 | pub struct WindowBuilder {
    | ^^^^^^^^^^^^^^^^^^^^^^^^
note: `WindowBuilder` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.28.7/src/window.rs:105:1
    |
105 | pub struct WindowBuilder {
    | ^^^^^^^^^^^^^^^^^^^^^^^^
    = note: perhaps two different versions of crate `winit` are being used?
note: method defined here
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/glium-0.33.0/src/backend/glutin/mod.rs:321:12
    |
321 |     pub fn set_window_builder(mut self, window_builder: winit::window::WindowBuilder) -> Self {
    |            ^^^^^^^^^^^^^^^^^^

error[E0308]: mismatched types
   --> imgui-examples/examples/support/mod.rs:37:16
    |
37  |         .build(&event_loop);
    |          ----- ^^^^^^^^^^^ expected `EventLoop<()>`, found a different `EventLoop<()>`
    |          |
    |          arguments to this method are incorrect
    |
    = note: `EventLoop<()>` and `EventLoop<()>` have similar names, but are actually distinct types
note: `EventLoop<()>` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.29.8/src/event_loop.rs:40:1
    |
40  | pub struct EventLoop<T: 'static> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: `EventLoop<()>` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.28.7/src/event_loop.rs:35:1
    |
35  | pub struct EventLoop<T: 'static> {
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    = note: perhaps two different versions of crate `winit` are being used?
note: method defined here
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/glium-0.33.0/src/backend/glutin/mod.rs:333:12
    |
333 |     pub fn build(self, event_loop: &winit::event_loop::EventLoop<()>) -> (winit::window::Window,...
    |            ^^^^^

error[E0308]: mismatched types
   --> imgui-examples/examples/support/mod.rs:60:48
    |
60  |         platform.attach_window(imgui.io_mut(), &window, dpi_mode);
    |                  -------------                 ^^^^^^^ expected `Window`, found `winit::window::Window`
    |                  |
    |                  arguments to this method are incorrect
    |
    = note: `winit::window::Window` and `Window` have similar names, but are actually distinct types
note: `winit::window::Window` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.28.7/src/window.rs:44:1
    |
44  | pub struct Window {
    | ^^^^^^^^^^^^^^^^^
note: `Window` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.29.8/src/window.rs:54:1
    |
54  | pub struct Window {
    | ^^^^^^^^^^^^^^^^^
    = note: perhaps two different versions of crate `winit` are being used?
note: method defined here
   --> /imgui-rs/imgui-winit-support/src/lib.rs:333:12
    |
333 |     pub fn attach_window(&mut self, io: &mut Io, window: &Window, hidpi_mode: HiDpiMode) {
    |            ^^^^^^^^^^^^^

error[E0308]: mismatched types
   --> imgui-examples/examples/support/mod.rs:106:9
    |
106 |         window,
    |         ^^^^^^ expected `Window`, found `winit::window::Window`
    |
    = note: `winit::window::Window` and `Window` have similar names, but are actually distinct types
note: `winit::window::Window` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.28.7/src/window.rs:44:1
    |
44  | pub struct Window {
    | ^^^^^^^^^^^^^^^^^
note: `Window` is defined in crate `winit`
   --> /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/winit-0.29.8/src/window.rs:54:1
    |
54  | pub struct Window {
    | ^^^^^^^^^^^^^^^^^
    = note: perhaps two different versions of crate `winit` are being used?

For more information about this error, try `rustc --explain E0308`.
error: could not compile `imgui-examples` (example "test_window") due to 4 previous errors
error: could not compile `imgui-examples` (example "long_table") due to 4 previous errors
error: could not compile `imgui-examples` (example "text_input") due to 4 previous errors
error: could not compile `imgui-examples` (example "test_drawing_channels_split") due to 4 previous errors
error: could not compile `imgui-examples` (example "disablement") due to 4 previous errors
error: could not compile `imgui-examples` (example "keyboard") due to 4 previous errors
error: could not compile `imgui-examples` (example "creating_windows") due to 4 previous errors
error: could not compile `imgui-examples` (example "id_wrangling") due to 4 previous errors
error: could not compile `imgui-examples` (example "progress_bar") due to 4 previous errors
error: could not compile `imgui-examples` (example "long_list") due to 4 previous errors
error: could not compile `imgui-examples` (example "tables_api") due to 4 previous errors
error: could not compile `imgui-examples` (example "slider") due to 4 previous errors
error: could not compile `imgui-examples` (example "radio_button") due to 4 previous errors
error: failed to run custom build command for `sdl2-sys v0.34.5`

I'm getting the same error.

sigh, trying to find a working immediate mode rust gui. I guess this is life at the bleeding edge.

Ok I am not quite sure what happened, the examples did certainly work for me at the time of my PR. The problem seems to be that the patch mentioned in my PR was not tied to a specific git commit of glium, which advanced to an incompatible state in the meantime.
I specifically mentioned that my PR is not stable enough to be merged, which happened anyways, so sorry for that.
It seems that glium 0.34.0 finally works without a cargo patch, so I will open a new PR fixing this problem shortly.

#765 fixes this problem.

Thanks @Rob2309, much appreciated!

FYI, it seems #774 fixed this issue.


Adding Packages to Release bundle

Issue #, if available:
Description of changes:
Testing (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/test eks-anywhere-e2e-presubmit


@conda-forge-admin, please update circle

@sannykr, the CircleCI build wasn't actually run because the project "has no followers." It's a weird infrastructure thing with Circle; this bot command should fix it.

@dougalsutherland : Thanks. I hope to see wagtail on conda-forge soon.

This didn't work and I don't know why. Trying again:
@conda-forge-admin, please update circle

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I updated the circle-ci deploy key and followed the project.

Okay @sannykr, I just hit rerun and it's building now, should be up in a moment: https://circleci.com/gh/conda-forge/wagtail-feedstock/18


The engine "node" is incompatible with this module

package: create-strapi-app
version: 3.5.4
$ yarn create tauri-app
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">=10.16.0 <=14.x.x". Got "16.14.0"

Can it support the LTS version nodejs?

Error with my local yarn.


[DOC] adding note for ami_image_name generic name

When filling 'config.yml' file for an event and when using AWS worker, one can put generic AMI name under 'ami_image_name'. It will automatically point to the latest version of the image created running the pipeline.

@frcaud any idea why CIs fail here?

@agramfort green now. Seems GitHub actions were having issues previously.

Thx @frcaud


Filter out invalid nested types from typealias override checking

The lookupDirect means that we can see (nominal) type declarations nested inside of a protocol. If we do not filter these invalid declarations, we will offer a bogus fixit on top of a cycle diagnostic.  Remove these types from consideration entirely so we don't crash and don't offer bogus fixits.
Resolves rdar://57003317

@swift-ci please smoke test and merge

@swift-ci please smoke test

@swift-ci please test Linux platform

@swift-ci please test Linux platform

Build failed
Swift Test Linux Platform
Git Sha - cca76a2ed50d9ad3e2263f175b3b7a358193a6bb

⛵


Crash: assigning/initializing 128-bit int

void foo(void) {
    __int128 x = 0;
}

Crashes in intCast in Value.zig since new_ty's size is 16. Not sure how we should handle that - just treat it like a 64-bit value?

Fixed by #541


Allow using keyboard in CameraControl?

Hi, I'm just learning about three-d and was confused about things like FirstPersonControl only using the mouse, I thought it'd be possible to move with the WASD keys, but that seems not possible at the moment.

You're welcome to improve the controls (see #334)
adding keyboard input should be easy.


mv the structs VmXXX and related method in hypervisor/pod.go to hyperstart/api/json/spec.go

please fix the commit title
avoid to use master branch when create pr.


Allow local labels to be referenced through their parent

This is an extremely useful feature that's been in use in the Telefang disassembly.
Example:
Parent:
.child:
	db 0
NotParent:
	dw Parent.child

I have added an error message for when a symbol reference has multiple dots.  I also added tests.

Note, the reason I used fatalerror() instead of yyerror() is because the latter quadruples the error message, like so:
ERROR: remote-local-noexist.asm(7):
	'Parent.child.fail' is a nonsensical reference to a nested local symbol
ERROR: remote-local-noexist.asm(7):
	'Parent.child.fail' is a nonsensical reference to a nested local symbol
ERROR: remote-local-noexist.asm(7):
	'Parent.child.fail' is a nonsensical reference to a nested local symbol
ERROR: remote-local-noexist.asm(7):
	'Parent.child.fail' is a nonsensical reference to a nested local symbol
error: Assembly aborted in pass 1 (4 errors)!

Do you know why this might be?

I've finally found some time to test this. There is a big problem with it, child labels can't be used from other source files. That is, if they are assembled to different object files. I'm wondering if we should just save all labels as parent.child internally so that they can be exported to the object file the same way as others.  When the label is created, the parent name should be appended to the child label, and then they can all be treated the same way. After all, that's how the names are exported to the object, sym and map files.

That does sound like a problem! Using an internal parent.child label does sound much simpler, but we'll just have to make sure we don't allow silly things like multiple .s, and that things like the following are caught:

As far as I see, the solution isn't that complicated, but I'm trying to decide two things:

How to export child labels. With the -E option, all labels are exported, including child labels. This can be helpful, but it may not be what somebody wants to do, as there is no longer the option of having private labels. Possible ways of handling this:

If the parent label is exported, every local label is exported as well. The problem is that, for functions, every local label used for loops or any kind of jump would be exported. It wouldn't be too much of a problem, but it is unnecessary noise in the object file.

Support the format .child::.

Also, I think that the format Parent.child: should be allowed. If there is a big file with a parent label and a long list of data followed by a child label, it would be helpful to have that syntax in order to identify the parent easily. Of course, if the parent label hasn't been defined or the label is in a different scope, it would be considered an error.

In response to those points:

Hmm… Both methods have their pros and cons.
At first thought, I liked the idea of i, as it makes it quicker to export things, and I don't think that adding noise to the object file is a massive problem in the grand scheme of things.
However, I wouldn't be surprised if someone wanted to expose a subroutine, but not support calls to an arbitrary local label within the subroutine. e.g. MemClear::, but not MemClear.Loop::. Sure, this can be worked around, but requiring .child:: suggests that the developer has considered that this label may be used elsewhere. Of course, the counterargument to this is that assembly is inherently unsafe, so this kind of 'safety' would merely get in the way of an experienced developer.

Ah, I was anticipating someone putting an arbitrary parent in a Parent.child label. Although it's more verbose, I don't see any reason for disallowing Parent.child as a substitute for simply .child (which seems to be what you're suggesting from the caveats you've described).

Can we merge this knowing the caveat that it only works within a single file, and work out the rest later?  The feature is very useful as is, and selfishly, I'd like to make Telefang compatible with upstream rgbds and have new Windows binaries, which I can't build, soon :)

I'd rather it be fully fleshed out before we merge it, personally! 😉 But I appreciate that you'd like this to be implemented sooner rather than later, so I'm currently taking a look at implementing this in a way such that local labels can be exported. I'll make a PR for it as soon as it's there 😊

Sorry for not answering before, I thought I could finish a few things in a different project and then focus on this but it's taking longer than expected.
As @Ben10do says, I'd rather have the full version to merge it. My plan was to take a look at the code and see which changes are needed to make it work in all cases.
Anyway, I still can't decide about how to decide whether to export labels or not. Probably the easiest way is to export all child labels inside a parent label that is exported. That way, the parser doesn't have to change (which is my main concern), and it wouldn't break compatibility or anything (after all, two global parent labels can't have the same name, so there cannot be clashes with child labels).

Closing now that this is merged: https://github.com/rednex/rgbds/pull/181


Remove Operator information from README.md

Operator moved to https://github.com/observatorium/operator

Thanks!


Cross-compiler not running

I have installed binutils like said and it appears that it does not work because this happens:
i386-elf-gcc: command not found

Any fixes?

Is the command in your path?

actually, I think it's easier to just use the files from within the unzipped folder.


Device provisioning failed is shown though sending telemetry is successful

I wonder about the following behavior. Could you confirm that?
After deploying a flow I got the error message, but sending telemetry is succeeded.
[error] [azureiotdevice:b32006bf.0cdd38] test -> Device provisioning failed.

The configuration is like the below. (Device ID is correct, that is the actual registered name)

Anyway, Thank you for this node. I'm tired of that many other nodes to connect Azure IoT Hub are out of maintenance.

@dzeyelid I will research the issue. Am I correct that you are conecting a device using direct connection string?

@iotblackbelt Thanks so much.
Strangely when I retry my node flow to get more information to you, the error message is not shown now... Both of the connection strings that are in shared access policies or linked to a device are available now.
So can I close this issue?


Feature/coupons

Coverage increased (+0.9%) to 90.793% when pulling 7c5366367771f26daa8eeccf6ea0a15cbc317f26 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+0.9%) to 90.793% when pulling 03d504f75390d1b81485e8a39a43ad5532b8dd9e on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+0.9%) to 90.793% when pulling 90a9ec97558840e93426fd5b3fa54927019c7b7b on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.6%) to 91.475% when pulling 2461c0e8088b5030ca3e4c7bc83d93008f309ab7 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.6%) to 91.475% when pulling 2461c0e8088b5030ca3e4c7bc83d93008f309ab7 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.6%) to 91.475% when pulling 2461c0e8088b5030ca3e4c7bc83d93008f309ab7 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.6%) to 91.486% when pulling 7f8565ee55089f841232f18f362d4b3df9353a7e on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.6%) to 91.486% when pulling 7f8565ee55089f841232f18f362d4b3df9353a7e on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.6%) to 91.486% when pulling 7f8565ee55089f841232f18f362d4b3df9353a7e on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.6%) to 91.467% when pulling 0411a2decb021b0239d740301d6f3a7ac18f4c39 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.7%) to 91.534% when pulling 8837339e655fa4833b4b4cff841c358f04b3b412 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.7%) to 91.534% when pulling 8837339e655fa4833b4b4cff841c358f04b3b412 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.7%) to 91.534% when pulling de673e9e210eb2e0f5f090887b0eda833c44d7aa on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.7%) to 91.534% when pulling de673e9e210eb2e0f5f090887b0eda833c44d7aa on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.7%) to 91.534% when pulling de673e9e210eb2e0f5f090887b0eda833c44d7aa on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.8%) to 91.634% when pulling f4d859e3239a282a569d19a277b1c91d64c242cf on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.8%) to 91.678% when pulling d8a6afe1430955753572b696ffdfd2c71c147264 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.8%) to 91.678% when pulling 2119e403a3e0cbf6e339975ede4f4449db4d7bd5 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.8%) to 91.678% when pulling 6908d5f55cf93bad5947a83ac7a3cbae2687dda5 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.8%) to 91.678% when pulling 6908d5f55cf93bad5947a83ac7a3cbae2687dda5 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.8%) to 91.678% when pulling 6908d5f55cf93bad5947a83ac7a3cbae2687dda5 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+1.4%) to 91.282% when pulling ca8e205609d9ec20eccc23a3862b959a9a86aa54 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+2.0%) to 91.816% when pulling 5d5acb685fe46ad0feeafaebfcac6ff8a5cc13b1 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+2.0%) to 91.816% when pulling 3ec5fa5f6b56ead6c9ebf5545104a84da3a829a4 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+2.0%) to 91.816% when pulling 402b6d4520951046094cf42bb1302466dd69c689 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.

Coverage increased (+2.0%) to 91.816% when pulling 8c2c42875d6e8adfbc88e309f26e38cc12d45bf3 on feature/coupons into 669eb28a78c03dfa35cf3cbf9fe29cbcf671144a on master.


Stream Sharing

It would be nice if you added the ability to split an incoming stream to multiple clients. xTeVe does this. Here is an example.
You pull in one stream from Fox News then 5 TVs in your home can all watch Fox News at the same time. So you are only pulling 1 copy of the stream, not 5.
Also xTeVe will send a video image to clients if there are no more "tuners" available so they don't just get weird errors because there are no more tuners available. Instead on the client they see a screen saying "Sorry. There are no more free tuners available for this channel. Please try this channel later."
I personally think the xTeVe web interface stinks and it has not been updated in over a  year.

This seems like a great idea, but has a few gotchas that need to be worked through.  Thought I would lay out some thoughts on the topic.
Good news is that there is a separate process per stream and a single multi-threaded process containing all client requests, so we can tie multiple client threads to a single stream process, fairly easily.
It would help with providers that do not like multiple connections from a single IP.
  It would basically keep feeding the segments to the new client; although, how we restart the second client stream could easily cause some deja vu replaying of segments when buffered or missing segments, if not buffering.
Also, we need to address the VOD channels.  These provide the entire movie at one time to the client.  Should we in this case start a separate provider stream to start the movie from the beginning, or start at some point in the middle based on the current client connection.  My thought currently is to use separate process streams.
The biggest issues is the operating system forking errors. There is an operating system condition with python that the new forked process does not establish communication pipes like it should.  Right now, when the pipes fail to establish, the stream process is terminated and restarted.  Then, it is checked again to see if the pipe has formed correctly.  This actually happens quite often.
So, in summary, we need to:

Determine how to handle the startup of the second stream associated with buffering.  We could just send the current stream (no buffering), which for the pvr-tvh issue would lose at least one segment. Or, we could send what we have currently for backup and that would give the stream some buffering, which for pvr-tvh would cause a deja vu condition.
Determine how to handle VOD.  VOD is special case, in that, the entire movie is provided at the start and normally it is the client that squelches the data rate (not Cabernet).  If we use the same provider process, it would make sense to not start at the beginning (which may not be what is expected). Or, provide a new stream process for each VOD and do not mux the stream together.  That way the streams would all play from the beginning.
Determine how to handle the case when a forked process fails to start correctly and the pipes between processes do not work.  Currently the process is terminated, but if multiple clients are connected to the process, then it does not make sense to restart the process.

As for sending video back to the client, there are two groups on that. One is to terminate the connection when too many tuners are in use.  The other is to send something that makes it looks like a tuner is available to the media server.  We are currently doing what TVH does, which make it consistent with our logical processes.  That means we termination of the connection when too many connections are in use.  This helps a ton when starting a recording and some of the tuners just need to timeout.  TVH will go through a timeout and then retry the connection to see if the connection will work.  This also works great when the provider is giving connection refused and needs to go through a timeout before it will work correctly.  I do not see any advantage for displaying a video on the screen, considering all the negatives.

Plan is to implement during the 0.9.12 updates.

Too many changes for 0.9.12, moving to start of 0.9.13

Fixed in <IP_ADDRESS>


Add the ability for Screen Readers to read current active option

Summary
Resolves #1887
The previous pull request didn't accurately depict the results to the user. This time, we are using the aria-live region to directly communicate not only the active element, but the active elements that are selected to screen readers.

There will be a translation request sent when more people look at this PR.

I think that's because there are two messages there. The first is that it's announcing the user input to the user, and the next is to alert the name of the selected option. I'll see if I can find ways around that, but I think we are getting thin on possible options for this.

Translations have been addd, and it should be ready to be fully reviewed

The stutter when reading options with VoiceOver on Safari desktop seems like it still exists. In my opinion, this creates a jarring exprience.
It makes me wonder if we should ditch the role=listbox / role=option to avoid the stutter and rely on aria-live soley for communicating the options. We made need to add tabIndex="-1" to enable navigating between the options on iOS with VoiceOver as I believe these roles offer some heuristics that VoiceOver picks up to enable navigating through them.

I've migrated the code in this PR into https://github.com/cerner/terra-core/pull/2236. Closing in favor of https://github.com/cerner/terra-core/pull/2236


devel_metabolomics: disable mQTL.NMR

Package http://bioconductor.org/checkResults/devel/bioc-LATEST/mQTL.NMR/
has to be disabled since it causes failure:
https://hub.docker.com/r/bioconductor/devel_metabolomics2/builds/bsmjp3nbsmy2hmufp5pjsde/
due to missing dependency https://cran.r-project.org/web/packages/GenABEL/index.html
Package ‘GenABEL’ was removed from the CRAN repository.
Formerly available versions can be obtained from the archive.
Archived on 2018-05-25 as check problems were not corrected despite reminders.

Yours, Steffen

Fixed in https://github.com/Bioconductor/bioc_docker/commit/bbb1094266e78ab58fe713c8f96e7b8fd131785e