Fixed bug to allow filenames with spaces in assets_precompile.rb

#510 moved to a branch

This change is

@dzirtusss There's no need for a separate PR. You can do a push -f to replace what the server has for your old branch. First change the old branch to some new name, then rename this branch to the old name. And then do a push force.

It was my mistake in that I asked Sergey to rename his fixes to a branch. The original review comments are in #510. I should have asked Sergey to rebase to origin/master on the remote, which means creating a named remote, such as "shakacode" (rather than origin, as that's Sergey's fork) and rebasing on top of that. My bad.

 I'll update the CHANGELOG.

Reviewed 3 of 3 files at r1.
Review status: all files reviewed at latest revision, 4 unresolved discussions.

CHANGELOG.md, line 10 [r1] (raw file):

- React on Rails server rendering now supports contexts outside of browser rendering, such as ActionMailer templates [#486](https://github.com/shakacode/react_on_rails/pull/486) by [eacaps](https://github.com/eacaps).
- React on Rails now correctly parses single-digit version strings from package.json [#491](https://github.com/shakacode/react_on_rails/pull/491) by [samphilipd ](https://github.com/samphilipd ).
- Fixed assets symlinking to correctly use filenames with spaces [#510](https://github.com/shakacode/react_on_rails/pull/510)

Update this to 513. I'll do this. And we should have the author!

lib/react_on_rails/assets_precompile.rb, line 46 [r1] (raw file):

        FileUtils.chdir(dest_path) do
          File.symlink(target_filename, symlink_filename)
        end

:+1:

spec/react_on_rails/assets_precompile_spec.rb, line 29 [r1] (raw file):

                        .symlink_file(filename, digest_filename)

        expect(File.readlink(assets_path.join(digest_filename)).to_s).to eq(filename)

It's worth noting that digest_filename and filename are all relative paths in the manifest.
I would have probably kept in the removed test that verified that confirms the value of readLink is not the absolute path of filename. Then again, it's clear from the code a few lines above that calls File.basename. :smile:

spec/react_on_rails/assets_precompile_spec.rb, line 40 [r1] (raw file):

        expect(assets_path.join(digest_filename).lstat.symlink?).to be true
        expect(File.identical?(assets_path.join(filename),
                               assets_path.join(digest_filename))).to be true

Critical that we fixed this.

Comments from Reviewable

Review status: all files reviewed at latest revision, 4 unresolved discussions, some commit checks failed.

CHANGELOG.md, line 10 [r1] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> Update this to 513. I'll do this. And we should have the author!

Done.

lib/react_on_rails/assets_precompile.rb, line 46 [r1] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> :+1:

Done.

spec/react_on_rails/assets_precompile_spec.rb, line 29 [r1] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> It's worth noting that digest_filename and filename are all relative paths in the manifest.
>
> I would have probably kept in the removed test that verified that confirms the value of readLink is not the absolute path of filename. Then again, it's clear from the code a few lines above that calls File.basename. :smile:

In #510 you commented - *If we test for equality, that's a bit more of a sure thing. Only having an "expectation not" can result in a test that passes due to an error in writing the test.*
Actually I totally agree with that comment. To be double-proof we can have both expects:
expect.to eq(filename)          # positive expectation
expect.not_to eq(global_path)   # negative expectation

Than we check for both filename and path.
Should do like this?

spec/react_on_rails/assets_precompile_spec.rb, line 40 [r1] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> Critical that we fixed this.

I'm really-really sorry I don't understand here. What would U like to fix here?
We have exact same test (original) at L:12 for filename without spaces, and then this new one, which specially tests for fix condition - for filename with spaces "temp file". Test is exact replica of original only with spaces in filenames.
If U want to test it on old source without fix, then first test will pass and this will fail.

Comments from Reviewable

ok

Review status: all files reviewed at latest revision, 4 unresolved discussions, some commit checks failed.

Comments from Reviewable

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

CHANGELOG.md, line 10 [r2] (raw file):

- React on Rails server rendering now supports contexts outside of browser rendering, such as ActionMailer templates [#486](https://github.com/shakacode/react_on_rails/pull/486) by [eacaps](https://github.com/eacaps).
- React on Rails now correctly parses single-digit version strings from package.json [#491](https://github.com/shakacode/react_on_rails/pull/491) by [samphilipd ](https://github.com/samphilipd ).
- Fixed assets symlinking to correctly use filenames with spaces. Begining in [#510](https://github.com/shakacode/react_on_rails/pull/510), end in [#513](https://github.com/shakacode/react_on_rails/pull/513) by Sergey Tarasov [https://github.com/dzirtusss]

see other names in the changelog for the format

Comments from Reviewable

couple comments

Review status: all files reviewed at latest revision, 3 unresolved discussions.

spec/react_on_rails/assets_precompile_spec.rb, line 29 [r1] (raw file):
Previously, dzirtusss (Sergey Tarasov) wrote…
> In #510 you commented - *If we test for equality, that's a bit more of a sure thing. Only having an "expectation not" can result in a test that passes due to an error in writing the test.*
>
> Actually I totally agree with that comment. To be double-proof we can have both expects:
> ```
> expect.to eq(filename)          # positive expectation
> expect.not_to eq(global_path)   # negative expectation
> ```
>
> Than we check for both filename and path.
>
> Should do like this?
>

Sure.

spec/react_on_rails/assets_precompile_spec.rb, line 40 [r1] (raw file):
Previously, dzirtusss (Sergey Tarasov) wrote…
> I'm really-really sorry I don't understand here. What would U like to fix here?
>
> We have exact same test (original) at L:12 for filename without spaces, and then this new one, which specially tests for fix condition - for filename with spaces `"temp file"`. Test is exact replica of original only with spaces in filenames.
>
> If U want to test it on old source without fix, then first test will pass and this will fail.

I'm saying :+1:  on this fix. Great job. That's it.

Comments from Reviewable

Changes Unknown when pulling 799b60a077bd488399ac73183d10c7ff52256251 on dzirtusss:fix-spaces into ** on shakacode:master**.

Done

Review status: 1 of 3 files reviewed at latest revision, 3 unresolved discussions.

CHANGELOG.md, line 10 [r2] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> see other names in the changelog for the format

Done

spec/react_on_rails/assets_precompile_spec.rb, line 29 [r1] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> Sure.

Done.

spec/react_on_rails/assets_precompile_spec.rb, line 40 [r1] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> I'm saying :+1:  on this fix. Great job. That's it.

Done.

Comments from Reviewable

one more comment

Reviewed 2 of 2 files at r3.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

CHANGELOG.md, line 10 [r3] (raw file):

- React on Rails server rendering now supports contexts outside of browser rendering, such as ActionMailer templates [#486](https://github.com/shakacode/react_on_rails/pull/486) by [eacaps](https://github.com/eacaps).
- React on Rails now correctly parses single-digit version strings from package.json [#491](https://github.com/shakacode/react_on_rails/pull/491) by [samphilipd ](https://github.com/samphilipd ).
- Fixed assets symlinking to correctly use filenames with spaces. Begining in [#510](https://github.com/shakacode/react_on_rails/pull/510), ending in [#513](https://github.com/shakacode/react_on_rails/pull/513) by [Sergey Tarasov](https://github.com/dzirtusss)

almost...see other entries. We use the github id.

Comments from Reviewable

Be sure to run rake lint before pushing!
Offenses:
spec/react_on_rails/assets_precompile_spec.rb:31:13: C: Style/MultilineMethodCallIndentation: Use 2 (not 4) spaces for indenting an expression spanning multiple lines.
.not_to eq(File.expand_path(assets_path.join(filename)).to_s)
^^^^^^^
91 files inspected, 1 offense detected
rake aborted!
Command failed with status (1): [cd /home/travis/build/shakacode/react_on_r...]
/home/travis/build/shakacode/react_on_rails/rakelib/task_helpers.rb:20:in block in sh_in_dir' /home/travis/build/shakacode/react_on_rails/rakelib/task_helpers.rb:20:in each'
/home/travis/build/shakacode/react_on_rails/rakelib/task_helpers.rb:20:in sh_in_dir' /home/travis/build/shakacode/react_on_rails/rakelib/lint.rake:7:in block (2 levels) in <top (required)>'
/home/travis/.rvm/gems/ruby-2.3.1/gems/rake-11.2.2/exe/rake:27:in <top (required)>' /home/travis/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in eval'
/home/travis/.rvm/gems/ruby-2.3.1/bin/ruby_executable_hooks:15:in `'
Tasks: TOP => default => lint => lint:lint => lint:rubocop
(See full trace by running task with --trace)

Review status: all files reviewed at latest revision, 1 unresolved discussion, some commit checks failed.

Comments from Reviewable

Done

Review status: 1 of 3 files reviewed at latest revision, 1 unresolved discussion.

CHANGELOG.md, line 10 [r3] (raw file):
Previously, justin808 (Justin Gordon) wrote…
> almost...see other entries. We use the github id.

:confused:  Done

Comments from Reviewable

Changes Unknown when pulling 1bead685a8d3a65e3fab0194f337167f75675450 on dzirtusss:fix-spaces into ** on shakacode:master**.

Reviewed 2 of 2 files at r4.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Done, squashed commits

Review status: all files reviewed at latest revision, all discussions resolved, some commit checks pending.

Comments from Reviewable

Changes Unknown when pulling 035ecb0089237f93e1adc6e89c02bbeb23798f18 on dzirtusss:fix-spaces into ** on shakacode:master**.

Review status: :shipit: all files reviewed at latest revision, all discussions resolved, all commit checks successful.

Comments from Reviewable


Can a sample be added to show how to add Options?

Hi @maiak. Thanks, yes the user settings under Tools > Options.   Looking forward to seeing them.  Have you got a planned release date?

@maiak any news on this new feature?

@cjdutoit, we still don't have an exact date for this feature, but we're actively working on it and we're excited to release it as soon as we can. Please follow this ticket for updates: https://developercommunity.visualstudio.com/t/VisualStudioExtensibility-Add-options/10563563


Added endpoint for searching for Fediverse users

refs AP-352
Added a new endpoint to enable searching for Fediverse users by their handle or URL

@allouis Yeh i wasn't sure on whether to store this as it might not be data we want to keep around forever (i.e only 1 user ever searches for this specific user). Also we would have no idea if the data was up to date or not 🤔 Could be a good candidate for whatever caching mechanism we end up implementing?


🔴 🚀[R_READINESS][CONCEPT] Concept for Transfer to open PI Planning in Tractus-X for post-consortia

As ...
I want ...
so that ...
Hints / Details
Acceptance Criteria

[ ] concept for open PI planning is defined

Out of Scope

...

won't do


Remove temp language on backward-incompatible changes and deprecation intended for testing phase

I approve changes (I forgot to click approve).


Data classification: Training failed with error "Score column 'Score' not found" when un-check "Fast Forest" algorithm for Microsoft SQL Server data.

System Information (please complete the following information):
Windows OS: Windows-11-Enterprise-22H2
ML.Net Model Builder 2022: <IP_ADDRESS>1001 (Main Build)
Microsoft Visual Studio Enterprise: 2022(17.5.2)
.Net: 6.0
Describe the bug

On which step of the process did you run into an issue:
Training failed with error "Score column 'Score' not found" when un-check "Fast Forest" algorithm for Microsoft SQL Server data.

TestMatrix
https://testpass.blob.core.windows.net/test-pass-data/wikipedia-detox-250-line-data.tsv
To Reproduce
Steps to reproduce the behavior:

Select Create a new project from the Visual Studio start window.
Choose the C# Console App (.NET Core) project template.
Add model builder by right click on the project.
Select Data classification scenario.
Go to the Data page, choose Microsoft SQL Server data source and choose "Sentiment" column to predict.

Go to Train page, click "Advanced training options..." link, then go to "Trainers" tab and un-check "Fast Forest" algorithm.

Click "Start training" button, the training would be failed.

Expected behavior
Training successful.
Screenshot

Additional context

The bug has been fixed on the latest main build <IP_ADDRESS>1302.


[Feature] Navbar for the site

Problem: Just noticed that there is no navbar on this site.
Proposed Solution: I can add the navbar after finalising a design keeping in mind the overall theme of the site.

Was working on the Navbar and noticed that this site is a single-page application with no signup system either. So should I add dummy headings to pages like about us /contct-us, otherwise navbar will not be serving any functional purpose.
Would like to know your thoughts on this and how to go about it ?

Was working on the Navbar and noticed that this site is a single-page application with no signup system either. So should I add dummy headings to pages like about us /contct-us till they are made, otherwise navbar will not be serving any functional purpose. Would like to know your thoughts on this and how to go about it ?

Yes Add ! but don't add any links to those .


Validate signed http requests claims if present

Log a warning for skipped validation of a present claim for signed http requests
Fixes #1393

Closing as there are still questions around how we want to implement this.

@keegan-caruso i agree it makes sense to close this for now as we aren't sure what 'done' looks like.


Add batching

It would be nice to be able to compare two lists of datasets, resuing intermediate data structures to speed up the processing, instead of restarting the computation for each unique pair of datasets.

Addressed in  #67


Goal concept

I am not sure about the use of blank nodes for goals in the taxi example. We may want to reference the goal later on, e.g. when we create a proposal from it, or to reference it in connection with the validation result. My feeling is that it should be a named node, something like :goal1, or maybe :taxiRideGoal

event:event1 agr:propose :pickup-solution . is wrong.
According to the spec (in the agreements paper) the proposal is made by proposing other messages, not graphs inside the same message:
msg:event1 agr:propose msg:event2.
This means that you have to send two messages for making a proposal, one containing the data you want in the proposal, and one containing the proposing triples. We've defined that the message containing the proposing triples itself cannot be part of the proposal (i.e. its content graphs are not added to the data that becomes the content of the proposal). We could look if we want to relax that, but there was some reason to disallow the proposing message's content into the proposal.

updated document

added information requests example, ready for review


Add Permissions to github Workflows

Improve GITHUB_TOKEN permissions in the workflows.
Signed-off-by: Soule BA<EMAIL_ADDRESS>

@souleb please rebase


Trim bearer prefix no matter the case

Motivation
if Authorization header is passed and bearer token is used, it should not matter in what case is the key word "bearer"
Pull Request status

[x] Initial implementation

Pull Request Test Coverage Report for Build 1303

2 of 2 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.757%

Totals

Change from base Build 1285:
0.0%

Covered Lines:
2193

Relevant Lines:
2390

💛  - Coveralls

Maybe a test that validates that the case doesn't matter


chip shell coredumps on sending ping command

chip shell coredumps on sending ping command
$ ./out/debug/linux_arm64_gcc/chip-shell
Init CHIP Stack
Init Thread stack
CHIP:DL: ../../src/platform/Linux/ThreadStackManagerImpl.cpp 94: Otbr ClientError 23
ThreadStackMgr().InitThreadStack() failed

CHIP:DL: CHIP task running
ping -r 1 <IP_ADDRESS>
IP address: <IP_ADDRESS>
CHIP:IN: TransportMgr initialized
CHIP:IN: TransportMgr initialized
CHIP:IN: local node id is 0x000000000001b669
CHIP:IN: New pairing for device 0x0000000000bc5c01, key 0!!
Establish secure session succeeded
Send echo request message with payload size: 32 bytes to Node: 12344321
CHIP:IN: Secure message was encrypted: Msg ID 0
CHIP:IN: Sending msg from 0x000000000001b669 to 0x0000000000bc5c01 at utc time: 57959404 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Rxd Ack; Removing MsgId:00000000 from Retrans Table
CHIP:EM: Removed CHIP MsgId:00000000 from RetransTable
CHIP:EM: Sending Standalone Ack for MsgId:00000001
CHIP:EM: Failed to send Solitary ack for MsgId:00000001:4003
Echo Response: 1/1(100.00%) len=32 time=0.002ms
CHIP:EM: Sending Standalone Ack for MsgId:00000001
Aborted (core dumped)

Log on the echo responder
$ ./out/debug/linux_arm64_gcc/chip-echo-responder
Init CHIP Stack
CHIP:IN: TransportMgr initialized
CHIP:IN: local node id is 0x0000000000bc5c01
CHIP:IN: New pairing for device 0x000000000001b669, key 0!!
Listening for Echo requests...
CHIP:EM: ec pos: 0, id: 17767, Delegate: 0xb7ce9008
Echo Request, len=32 ... sending response.
CHIP:EM: Piggybacking Ack for MsgId:00000000 with msg
CHIP:IN: Secure message was encrypted: Msg ID 0
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257334589 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257339568 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Retransmit MsgId:00000000 Send Cnt 1
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257339820 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Retransmit MsgId:00000000 Send Cnt 2
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257340077 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Retransmit MsgId:00000000 Send Cnt 3
CHIP:EM: Failed to Send CHIP MsgId:00000000 sendCount: 3 max retries: 3
CHIP:EM: ec pos: 0, id: 17767, Delegate: 0xb7ce9008
Echo Request, len=32 ... sending response.
CHIP:EM: Piggybacking Ack for MsgId:00000000 with msg
CHIP:IN: Secure message was encrypted: Msg ID 1
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257480672 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257485618 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Retransmit MsgId:00000001 Send Cnt 1
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257485868 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Retransmit MsgId:00000001 Send Cnt 2
CHIP:IN: Sending msg from 0x0000000000bc5c01 to 0x000000000001b669 at utc time: 257486125 msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Retransmit MsgId:00000001 Send Cnt 3
CHIP:EM: Failed to Send CHIP MsgId:00000001 sendCount: 3 max retries: 3

Not able to reproduce this issue on the latest commit:  2265b34f59030e4039ab4d0aa4ac56901fc8c6f4
yufengw@yufengw-SEi:~/Workspace/connectedhomeip/out/host$ ./chip-shell
Init CHIP Stack
Init Thread stack
CHIP:DL: ../../src/platform/Linux/ThreadStackManagerImpl.cpp 94: Otbr ClientError 23
ThreadStackMgr().InitThreadStack() failed

CHIP:DL: CHIP task running

ping -r 1 <IP_ADDRESS>
IP address: <IP_ADDRESS>
CHIP:IN: TransportMgr initialized
CHIP:IN: TransportMgr initialized
CHIP:IN: local node id is 0x000000000001b669
CHIP:IN: New pairing for device 0x0000000000bc5c01, key 0!!
Establish secure session succeeded

Send echo request message with payload size: 32 bytes to Node: 12344321
CHIP:IN: Secure message was encrypted: Msg ID 0
CHIP:IN: Sending msg from 0x000000000001b669 to 0x0000000000bc5c01 at utc time:<PHONE_NUMBER> msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Rxd Ack; Removing MsgId:00000000 from Retrans Table
CHIP:EM: Removed CHIP MsgId:00000000 from RetransTable
CHIP:EM: Sending Standalone Ack for MsgId:00000000
CHIP:IN: Secure message was encrypted: Msg ID 1
CHIP:IN: Sending msg from 0x000000000001b669 to 0x0000000000bc5c01 at utc time:<PHONE_NUMBER> msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Flushed pending ack for MsgId:00000000
Echo Response: 1/1(100.00%) len=32 time=0.002ms
Send echo request message with payload size: 32 bytes to Node: 12344321
CHIP:IN: Secure message was encrypted: Msg ID 2
CHIP:IN: Sending msg from 0x000000000001b669 to 0x0000000000bc5c01 at utc time:<PHONE_NUMBER> msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Rxd Ack; Removing MsgId:00000002 from Retrans Table
CHIP:EM: Removed CHIP MsgId:00000002 from RetransTable
CHIP:EM: Sending Standalone Ack for MsgId:00000001
CHIP:IN: Secure message was encrypted: Msg ID 3
CHIP:IN: Sending msg from 0x000000000001b669 to 0x0000000000bc5c01 at utc time:<PHONE_NUMBER> msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Flushed pending ack for MsgId:00000001
Echo Response: 2/2(100.00%) len=32 time=0.002ms
Send echo request message with payload size: 32 bytes to Node: 12344321
CHIP:IN: Secure message was encrypted: Msg ID 4
CHIP:IN: Sending msg from 0x000000000001b669 to 0x0000000000bc5c01 at utc time:<PHONE_NUMBER> msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Rxd Ack; Removing MsgId:00000004 from Retrans Table
CHIP:EM: Removed CHIP MsgId:00000004 from RetransTable
CHIP:EM: Sending Standalone Ack for MsgId:00000002
CHIP:IN: Secure message was encrypted: Msg ID 5
CHIP:IN: Sending msg from 0x000000000001b669 to 0x0000000000bc5c01 at utc time:<PHONE_NUMBER> msec
CHIP:IN: Sending secure msg on generic transport
CHIP:IN: Secure msg send status No Error
CHIP:EM: Flushed pending ack for MsgId:00000002
Echo Response: 3/3(100.00%) len=32 time=0.001ms
Done

@cjandhyala
Could you retest on the ToT and see if you still see the issue, if so, please lets me know the commit of your branch and on which platform you run the test.

@cjandhyala can we close this one?


feat(checkbox): Add new checkbox element

top: plain css
bottom: svg

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Add a Sheet Write tasks

For now, we handle write to sheet with Upload from drive.
This works well for a single Tab Sheets but can't work with multiple Tabs.
Only the sheets write api will be able to handle that

Currently, there are tasks to read a Google Sheet or a range of values:
io.kestra.plugin.googleworkspace.sheets.Read

io.kestra.plugin.googleworkspace.sheets.ReadRange

We need also a task to write to a Google Sheet to allow a reverse scenario e.g. a typical use case when business users want to regularly pull data from some external source to a spreadsheet.

Done in https://github.com/kestra-io/plugin-googleworkspace/pull/118


Enable logging to file causes some recorded tests to fail.

Describe the bug
When logging to file is enabled on the CLI. It causes some recorded tests to fail with the following error:
CannotOverwriteExistingCassetteException during progress reporting: No match for the request (<Request (GET) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.insights/eventtypes/management/values?api-version=2015-04-01&$filter=eventTimestamp%20ge%202018-10-02T03%3A40%3A40Z%20and%20correlationId%20eq%20%273ea0529b-0428-4d5f-949c-032b0e04b73c%27>) was found. Can't overwrite existing cassette ('/Users/tosin/Repos/azure-cli-wktree/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/latest/recordings/test_vm_custom_image.yaml') in your current record mode ('once').
ErrorResponseException during progress reporting: Operation returned an invalid status code 'Not Found'
CannotOverwriteExistingCassetteException during progress reporting: No match for the request (<Request (GET) https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.insights/eventtypes/management/values?api-version=2015-04-01&$filter=eventTimestamp%20ge%202018-10-02T03%3A41%3A56Z%20and%20correlationId%20eq%20%276a58f73a-451d-4b0d-8d4f-cca35ab2d228%27>) was found. Can't overwrite existing cassette ('/Users/tosin/Repos/azure-cli-wktree/src/command_modules/azure-cli-vm/azure/cli/command_modules/vm/tests/latest/recordings/test_vm_custom_image.yaml') in your current record mode ('once').

Live tests still pass.
To Reproduce

Run az configure
Select y to enable logging to file
run test_vm_custom_image or test_vm_create_with_market_place_image

Expected behavior
This configuration should not lead to recorded tests failing. If a live test passes (leading to a recording being generated), then the recorded test should pass.
Environment summary
Additional context

closing this due to lack of team bandwidth and urgency


Draft C# 7.2 language spec for ref structs, missing clause on iterators defined on ref structs?

The compiler forbids iterator methods on ref structs, e.g.
public ref struct RefStruct
{
    public IEnumerator<int> GetEnumerator()
    {
        yield return 1;
    }
}

This makes sense, however I can't see any wording in the spec which explicitly forbids it. The closest it gets is:

Neither a ref local, nor a local of a ref struct type may be in scope at the point of a yield return statement or an await expression.

I suspect it simply didn't consider that this is always in scope for this case, and can be a ref struct. It also doesn't cover fields which are themselves ref structs (although this being a ref struct implicitly covers this case). Perhaps it could do with a tweak to cover this case?

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

ID: d07ca1ab-2178-2c31-ceda-773ee5bd03b4
Version Independent ID: b815bff8-7b47-d637-c10a-96c5e411e2d1
Content: Compile time safety for ref-like types - C# 7.2 specification proposals
Content Source: proposals/csharp-7.2/span-safety.md
Product: dotnet-csharp
Technology: csharp-spec
GitHub Login: @dotnet-bot
Microsoft Alias: wiwagn

Associated WorkItem - 52135

Ping @RexJaeschke I know you have been working on spec language for this, but I can't find the right PR to link to this. Can you point me in the right direction?

@BillWagner, yes, it's on my back burner, and it will be some time before I create a PR for it.

This should be fixed by #795.


[hotfix][docs] Update KDA to MSF in vendor solutions docs (1.16)

What is the purpose of the change

Docs update to rename Amazon Kinesis Data Analytics for Apache Flink to Amazon Managed Service for Apache Flink and update website
https://nightlies.apache.org/flink/flink-docs-release-1.16/docs/deployment/overview/#vendor-solutions

Brief change log

Updated en and cn docs

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

@flinkbot run azure


Cmd-G should work in Explorer

VSCode Version: 1.8.1

Steps to Reproduce:

Search for something
Hit Cmd-Shift-E to activate explorer
Hit Cmd-G
Nothing happens

Cmd-F still works.
I found this out when I was looking for something in some specific files. I clicked on the file, hit Cmd-G and expected matches in that file to be highlighted.

The reason that cmd+f works while cmd+g doesn't is simple
{
  "key": "cmd+g",
  "command": "editor.action.nextMatchFindAction",
  "when": "editorFocus"
}

{
  "key": "cmd+f",
  "command": "actions.find"
}

cmd+g only works when editorFocus is true while when the focus is on the explorer, the value is false. To make it meet your need, you just need to add one single keybinding to your settings:
{
"key": "cmd+g",
"command": "editor.action.nextMatchFindAction"
}

Sure, but it would be sensible to make this the default binding.


How can I configure storybook as server side on react.

I am using server side react and therein I am unable to use my storybook in my existing project, so how can I use storybook as server side react and what all changes need to make.

Below is my sample app.js file from where my react application is started on server 3000
app.js

if (process.env.NODE_ENV === 'development') {

    const webpackConfig = require('./webpack.config'),
          compiler = webpack(webpackConfig);

    app.listen(3000, '<IP_ADDRESS>', function(req, res) {
        // print a message when the server starts listening
        console.log("server starting on 3000");
        //process.env.ORIGIN = req.get('origin');
    });
    app.use(webpackDevMiddleware(compiler, {
        publicPath: webpackConfig.output.publicPath,
        stats: {colors: true}
    }));

    app.use(webpackHotMiddleware(compiler, {
        log: console.log
    }))

}

I am not sure I got your question. Do you want to build a static version of Storybook and serve it with your app?

I am using node with react, from node application I am connecting my graphQL, redis and mongodb. Components created in react are communicating via node for fetching up the output for my component, when I am using storybook as per described to start are as follows:-
npm start storybook

and in stories/index.js, where I am binding my component with storybook doesn't fetch the Initial content from node application as it's not started and configured with npm start storybook
Hence I need a work around wherein I can start storybook on same port inside my node application so as to consume my node services in react component.
below I am attaching the app.js code base
import express from 'express';
import React from 'react';
import { renderToString } from 'react-dom/server';
import App from './client/App';
import Html from './client/Html';

const port = 3000;
const server = express();

server.get('/', (req, res) => {
  /**
   * renderToString() will take our React app and turn it into a string
   * to be inserted into our Html template function.
   */
  const body = renderToString(<App />);
  const title = 'Server side Rendering with Styled Components';

  res.send(
    Html({
      body,
      title
    })
  );
});

server.listen(port);
console.log(`Serving at http://localhost:${port}`);

Can you run your node application and storybook in two different processes?

Your react components are directly fetching the data from your node application, am I right?

Yes, My React Components fetching data from node and configuring storybook doesn't allow to fetch data from node server and I want to configure storybook in such a way where In I can fetch data from node application.

Can you run your node application and storybook in two different processes?

Yes we are running storybook and node application in different process but importing the react component in storybook doesn't communicate to node service as they now become difference instance.

Can you please share an example of such a component?
Anyway, I think it's not possible to integrate the Storybook dev (server side) mode to a different node server. You can serve a static version though (also, a static version can be run with the watch mode). Or, to make them communicate (I don get it, why can't they do this ?)
Side note:
IMO the most common usage of Storybook is to isolate your components from the application, hence if these components need a state from the outside, you probably want to mock it.

Can you please share an example of such a component?
Anyway, I think it's not possible to integrate the Storybook dev (server side) mode to a different node server. You can serve a static version though (also, a static version can be run with the watch mode). Or, to make them communicate (I don get it, why can't they do this ?)
Side note:
IMO the most common usage of Storybook is to isolate your components from the application, hence if these components need a state from the outside, you probably want to mock it.

Thanks for your quick update, I too thinking of same process that I need to isolate my component from Node and pass on my props data for the behavior response.
Just in my case there been around 10 components that are child component of parent and all are inter-related to node service for configuration and data fetching for the first time.
That includes major rework for that single parent component to make it isolate from Node.

If you have a fetching logic as a separate module, you can just mock it with babel or webpack (in storybook I mean)


Need a support to Sass/Scss module

I wanted to use sass instead of plain css in the react-static-boilerplate project, is this possible already or it needs to be implemented?

You can use the postcss/postcss-scss plugin if you want to use SCSS alongside CSS. This will transform those stylesheets into something PostCSS can understand.
If you wish, you can fully emulate SCSS or just pick and choose the features you want by using any number of plugins. Have a look at this article for further information.

In my practice, using plain CSS via PostCSS /w plugins, eliminates the need of Sass/SCSS/LESS. If you have some logic or computations in you CSS styles, it might be a better idea to move that into JavaScript code inside your React components - a more natural place for that stuff. If you still need to enable Sass, it should be easy to do, just follow this instruction from docs:
https://github.com/kriasoft/react-static-boilerplate/blob/master/docs/recipes/how-to-use-sass.md
Please, let us know if you still have any issues. Will close this one for now.

Hey Guys. This is very confusing for me, where should I put step3? https://github.com/kriasoft/react-static-boilerplate/blob/master/docs/recipes/how-to-use-sass.md#step-3


App breaks when enter input in swap page without connecting wallet

now inputs are disabled if no token is selected
https://github.com/soroswap/frontend/assets/56497105/a607535e-8981-42d6-ae2e-6cb1eb450fec

If there are two tokens selected but there is not liquidity for that pair it will let you type an amount in the second input but not in the first input... shouldn't it just let you type anything but the button show "Insufficient Liquidity" or not let you type on any of the inputs

@abstract829 the comment of @joaquinsoza still happens when one of the tokens is a stellar classic asset.

Currently you can enter an amount only on the second input when tokens are selected.

Expected behavior:
When not connected to a wallet, it should let you enter values to any of the inputs only if tokens are selected but the button should never say something else other than "Connect Wallet" currently if the pair doesnt exist it changes to "Route not found".
Another Error
When a pair doesnt exist and it shows "Route not found" in the button (also when not connected with the wallet) if you click the button it shows you the Connect wallet modal and after trying to connect it shows this error

only if clicking on the "Route not found" button, it should align with the previous expected behavior... it should not even show you the "Route not found" text


Homepage

The homepage has been coded by Malte but is not part of this repo yet, add it!

WIP PR here: https://github.com/Autodesk/molecular-design-applications/pull/54

PR merged!


[Course Details Page] The button arrow is missed to the left of the 'Course details' tab

Environment: Windows 7x64, Google Chrome 90.0.4430.93
Reproducible: always
Build found: 318d8f1 commit from https://github.com/ita-social-projects/what-front/tree/taqc-bug-fix
Pre-conditions:
WHAT project is opened by local host http://localhost:8080/
One of the users (Admin/Secretary) is existed in the system
At least 1 course is added to the lesson table.
The (Admin/Secretary) user is logged in the system
The 'Courses' page is opened after clicking the 'Courses' tab
The Courses table is displayed at least 1 course
Click the course row of the first course in the table. The user is redirected to the 'Course Details' tab.
Steps to Reproduce:
Click the Button arrow, to the left of the 'Course details' tab.
Expected result:
The user is redirected to the Course List.
Actual result:
The button arrow is missed to the left of the 'Course details' tab.
Labels to be added

"Bug", Priority (" High"), Severity ("minor"), Type ("functional")

bug doesn't represent


[BUG] - nix-build -A scripts.testnet.node broken between 1.27.0 and 1.29.0

Internal/External
External
Area
Other deployment script or this guide (depending on how you look at it)
Summary
The article/guide How to build and run cardano-wallet using Nix says to issue the following command to build and run cardano-node.
nix-build -A scripts.testnet.node -o testnet-node-local && ./testnet-node-local

On 1.27.0 it works as expected: testnet-node-local is a BASH script that runs the built cardano-node with the expected arguments. On 1.29.0, however, the same target is a folder which contains the script to run, thus breaking the above article/guide:
$ ls -R testnet-node-local
bin

testnet-node-local/bin:
cardano-node-testnet

Steps to reproduce
Steps to reproduce the behavior:

Go to https://iohk.zendesk.com/hc/en-us/articles/900000672303-How-to-build-and-run-cardano-wallet-using-Nix
Perform step 2
Run: git checkout 1.29.0
Perform step 3

Expected behavior
cardano-node is started
Actual behavior
The shell cds into the testnet-node-local folder
System info (please complete the following information):

OS Name: macOS
OS Version: 11.5.2
Node version:

cardano-node 1.29.0 - darwin-x86_64 - ghc-8.10
git rev 4c59442958072657812c6c0bb8e0b4ab85ce1ba2

CLI version: N/A

Closing this. If this is still relevant please reopen.


Add pseudocount to avoid saying zero probability

Josh's changes LGTM. @beshaya  can you LGTM my tiny adjustment?

bad git practice, fixing


Use Puppeteer to detect only used CSS, and then inline it and lazily load the rest

🧩 Feature request
Using the info spelled out on web.dev and using the API in puppeteer, detect the critical css per view rendered, and then inline it and lazily load the css from the Angular build. This would allow for the most efficient version of Scully to run.
Link to the web.dev article: https://web.dev/unused-css-rules/
Description
 A clear and concise description of the problem or missing capability...
Describe the solution you'd like
 If you have a solution in mind, please describe it.
Describe alternatives you've considered
 Have you considered any alternative solutions or workarounds?

I already started to create a plugin for this a couple of days ago. I just learned about the "official" tool fir this, so I will use that instead of juice.

Now that Angular cli supports this out of the box (https://github.com/angular/angular-cli/issues/11395), is there any change needed for this feature on the scully side?

@hisham Our critical-CSS tool works differently from what Angular is doing.
Also, we do inline all the CSS that is needed above the fold for that 1 exact route, and then lazy load the rest.
As the CLI doesn't know what route it is going to serve, it needs to put way more blocking CSS in place.
 Our Critical-CSS plugin might now be a bit more optional as before, but it still brings a pretty good optimization to the table. Also, it does include all 3rth party CSS in the app. even the parts that are dynamically loaded by some routes.


Add shims for ct_run and typer

Related to #38.
#38 adds some shims which have since been added - that pull request can be closed.
This pull request adds shims for ct_run.exe and typer.exe. The RabbitMQ team has been updating their test suites to run on Windows, and ct_run.exe needs to be in the PATH. If Erlang is installed via Chocolatey, it is not in the PATH without these shims.

Hi Luke!
Thanks so much for this PR.  It may take me a while to get it into the code base--but I do appreciate the contribution!

I cannot see any good reason not to pull this in.  However the change won't show up in the CNG package until the next time I build it.


Question about model size

Hello,
In your paper, Table 3, may I inquire about the configuration used for the model with 77 million parameters?

Please check Table 10. You can simple replace the backbone with ResNet-50 and enlarge the input size to 800 * 800


CASMTRIAGE-7475: IMS importer: Fix bug determining IMS data files

This fixes two bugs in the tool used by the IMS importer to determine the target data files inside the IMS pod:

Currently it creates a list of the matching filenames it finds. Because it is a list, if it finds the same name twice, it acts like it has found two different possibilities, when in fact there is just one. This PR modifies it so that it uses a set, which will automatically remove duplicates.

The pattern it is looking for appears in a couple comment lines, and those names should be ignored by this tool. So this PR modifies it so that it discards commented lines when it is reading in the app.py file.

I have tested this on drax (the system where the problem was reported) and verified that it corrects the problem.

/backport release/1.5 release/1.4 release/1.3


Xamarin

Would this work in a Xamarin forms projects?

Hi!, actually, i have never tried, but i think it won't, because i think the wkhtmltopdf tool doesn't work on ARM, the c# code would have no issue, the problem is the tool.


Security > Logging; Ensure to log who is doing what in ChargingStationService (Like in Tenant)

Dups of #1193


HHH-10489 : DB2400Dialect could use the same LimitHandler as DB2Dialect

HHH-10489 : DB2400Dialect could use the same LimitHandler as DB2Dialect
HHH-11150 : DB2 on AS400 (DB2400 Dialect) fails to paginate.
Leveraged code from the DB2 Dialect and placed in DB2400Dialect. This was then tested on an AS400 successfully.

Applied upstream. Thanks.


[FR] can you make a new unbound + pihole based on Alpine?

Hi,
I like the fact that your unbound image is quite tiny (28,9MB), but, if I use your compose.yaml file to deploy also pi-hole, there are two issues:

The two images are independent (so, two IP addresses)
The pihole image is based on the latest pihole - while this is good, it means that this image is 301,3MB.

Would it be possible to create a new docker image that uses your unbound as a prerequisite, but deploys pihole inside that unbound?
There is something similar already done (cbcrowe/pihole-unbound:latest), but based on Debian, and not on Alpine (and its size is 342,6MB).
Thanks!

I'll check that, thank you for suggesting.

Hi, if it helps, you can borrow some ideas from https://www.reddit.com/r/linux/comments/ovuzcm/pihole_for_alpine_linux_x86_and_x86_64/
I have not tested it yet (maybe tomorrow I will give it a try on a plain vanilla Alpine Linux).
Thank you very much for looking into it.

Hi,
sorry for my late reply and that I may disappoint you. I've checked it by trying to install it on a plain Alpine Image and there's too much effort needed to make it work and even if I released it, I wouldn't have the time to maintain install scripts, workarounds and such. There are some hints around the web, I guess you found them already by yourself and even if it will start it runs quite unstable. I just don't want to spend much more time into a Kobayashi Maru mission. May one day the Pi-hole devs make an Alpine compatible version. Until then, your best bet is to use the official image which does a great job running perfectly stable.


Ignore Warning: Clauses are not together in the source-file

Can we ignore the Warning: Clauses are not together in the source-file for Prolog solutions?
I have cases where the students must add new clauses for a given predicate or in particulars exercises adding examples in extra code. This warning appears until the exercise is done and it's very annoying and confused.

Hi, i just found something that may be of your interest! It is a predicate of arity 1 named discontiguous, which pretty much resolves this issue.
It informs Prolog that the predicate given by parameter is not defined alltogether in the source file (or at least that describes in the documentation).

Hi @PalumboN, i just found something that may be of your interest! It is a predicate of arity 1 named discontiguous, which pretty much resolves this issue.

I like this solution, since It is not trivial to know which predicates are expected to be extended by student and which not. @PalumboN please try this solution and close this issue.


Integrate server unread counts into topic_data.js.

This is a fairly challenging issue, not so much in terms of the code you'll need to write, but in understanding various Zulip data sources.
The file topic_data.js is a pretty small module that stores all the recent topics we know about, using per-message granularity when possible, but also using server counts for "historical" messages.
We need to make it so that when the server tells us about historical unread messages (not to be confused with historical topic counts), we update the relevant data structures in topic_data.js.
The tricky scenarios to test will be:

somebody renames a topic
somebody clicks on "more topics"
very new topics
topics with tons of messages (more than the browser fetches at first)

We'll also want node tests here--they should be fairly simple since this is all just data, but we do want to capture some edge cases in the data if possible.

The nice thing here is that topic_data just needs a max_message_id and a count; if we just use the maximum unread message ID on the topic from our unread_msgs data for max_message_id, that'll do something reasonable; so the tricky part will be just figuring out a way to handle the count issue (which ties into the editing things).  I guess one possible version is that we don't edit the update logic with count at all, and just have the topic_data output interface functions like get_recent_names query unread.js for the topic, and just take the max ID of the unread messages for the topic and what it has.  (Which I guess might for perf reasons require some changes to unread.js, but it would nicely preserve the model that the internal topic_data.js data structures just have messages that we have in message_store)

I think that approach might be pretty reasonable.  Thanks to the way the n key works under the hood, I think we're only ever asking for lists of topics one stream at a time, so whenever we want the list, I think we can just graft in something from unread.js along the lines of Tim's suggestion.  I don't think this will require deep surgery to unread.js--it probably just requires some really simple methods on the existing data structures.


form action urls not followed?

Describe the bug
Given the page http://localhost containing
<form action="/xss.php">
  <input type="text" id="xss" name="xss"><br>
  <input type="submit" value="Submit">
  </ul>
</form>

the command
dalfox url http://localhost

fetches from
http://localhost/?xss=DalFox

when it should fetch from
http://localhost/app.php?xss=DalFox

It seems ParameterAnalysis() is ignoring the url part of the form action?   See
https://github.com/hahwul/dalfox/blob/c344c5842423f76e05e98db99965c504bc413e8b/pkg/scanning/parameterAnlaysis.go#L177
doc.Find("form").Each(func(i int, s *goquery.Selection) {
        action, _ := s.Attr("action")
        if strings.HasPrefix(action, "/") || strings.HasPrefix(action, "?") { // assuming this is a relative URL
                url, _ := url.Parse(action)
                query := url.Query()
                for aParam := range query {
                        p, dp = setP(p, dp, aParam, options)
                        count = count + 1
                }
        }
})

Environment

Dalfox Version: c344c5842423f76e0
Installed from: github clone

Is the intent to delegate all crawling to some external tool like katana?


fix(cli): add resolve.fallback for node dependencies in the export-dynamic-plugin CLI for frontend plugins.

As spotted by the CI workflow that exports all<EMAIL_ADDRESS>plugins to dynamic, running the export-dynamic-plugin Janus CLI command on the @backstage/api-docs plugin produces the following error:
Error: Failed to compile<EMAIL_ADDRESS>  Module not found: Error: Can't resolve 'fs' in '/home/dfestal/git/backstage/upstream/backstage/node_modules/@asyncapi/parser/esm'

That's related to the fact that the webpack configuration created for the dynamic frontend plugin export doesn't include the  resolve.fallback option which is included by the backstage CLI when the whole frontend application is built through webpack.

Merged based on Patrick's comments in slack and the LGTM above.


Dead link on homepage

When I visit "http://www.habitus.io"
And I click on "Instructions for OSX"
Then I receive a "HTTP/1.1 404 Not Found"

Thank you @corvus-ch for the notice.


ReleaseNotesTask failed in vs2022 preview

VS loads version 7 of fsharp.core in preview version which seems to result in MissingMethodExceptions when accessing paket's releasenote parsing functionality

seems like aardvark.build is using aardvark.build to publish itself with correct version. my fix includes using a helper library, which is not packed when using dotnet pack (which could be the source of all the problems also), and is not easy to fix without paket...
Anyhow, when switching to paket  for publishing the package, i needed to compile the test project, otherwise paket complains about the project not being built (Test.exe).
When changing pack.cmd to build the it (which is strange since the test project needs the pack command run beforand), i get Paket failed with ->..\aardvark.build\bin\Release\net6.0\Test.exe: bad cli header, rva 0
not sure how to proceed here...

Maybe just run the entire code in a new AssemblyLoadContext (this way we should be sure that nothing is pre-loaded) how would an additional lib help here?

because the additional lib returns vanilla dotnet type - and it seemed to work in my repro case. packaging the thing was my problem then....

thanks. i unlisted the package however :/

the situation is still unclear.

VS seems to (sometimes) load FSharp.Core (prerelease versions for example)
aardvark.build uses fake.releasenotes
the interface for reading releasenotes uses a type defined in f#.core
the idea was to isolate the build from the environment using AppDomain or AssemblyLoadContext. Both do not work, since  aardvark.build should be netstandard2.0

I found out it seems to work when wrapping the call (read : string -> list<..> to read : string -> Tuple<...>```) to have dotnet vanilla types resolves the problem at least on my test setup.
Anyhow, having a build plugin which references a lot of stuff is not robust for the future. Also having a build time dependency fixing dependencies to particular versions is bad. So everyhing should be "statically linked", which seems impossible to do in a robust way:

Linking FSharp.Core using standalone does not work because of duplicated types in Fake and this (closed) issue: https://github.com/dotnet/fsharp/issues/3473
Using ilmerge approaches is not smart since https://github.com/gluck/il-repack seems abandoned  and runs in net4.0 https://github.com/gluck/il-repack/blob/033e89aa521d5865dbdeb094cd521aaa03208359/ILRepack/ILRepack.csproj#L7

Either we investigate more or, we try it with my fix..

I think the upshot is quite simple: you will never be able to load two different fsharp.core versions directly, so i guess there's no way around AssemblyLoadContext/AppDomain which both don't exist in netstandard...
Is the msbuild plugin running in a netframework environment?

Afaik msbuild is running on netframework4.8 under VisualStudio, which would be terrible since there's no AssemblyLoadContext for isolating the thing. The only other way i can think of is some command-line thing which is also sort of terrible due to serialization/platform problems/etc.

Maybe just copy the Release-Notes parser and be agnostic about FSharp.Core versions?

i just tried to peel of release notes parsing from fake. without success, burried deeper, no idea what the real cause of the missing method exn is.
the whole idea of using packages within a build task is robust. cmd line tool is the only option

Its really simple: the return type for the method cannot be resolved since the requested FsharpList from 6.0 can indeed not be found

no it is not. at that time hunderts of lines of f# have worked. and it is not possible to load 2 different fsharp.core's. so something is strange. also i cannot reproduce it anymore

execution runs till here:

Notes is not found, although the runtime type has a get_Notes.

That is still how it is, most of fsharp.core is backwards compatible, so 90% of things just work, but the list used for compiling Fake.ReleaseNotes seems to be incompatible with the one from your Fsharp.core
That doesn't necessarily mean different, its just some tokens/etc being different and that is precisely what happens.
Without our "accept every lib having the correct name" loading stuff your code would explode way earlier, so this is danger zone

so it is the FSharp.Core >= which causes the problem at some point. which results in - one cannot simple use fsharp.core in such scenarios

i did not know about this one ;) just found it in Utilities. So in the end we need to create a cmd line tool - and invoke it just like paket.

Most likely yes, but that is a pain in the XXX since it needs to work on all platforms without opening terminal windows, etc.

i just linked fsharp.core statically, mono and sharpziplib are hopefully unproblematic, just trying to get a version out. What makes me wonder is that old aardvark.build versions had an empty dependency list - builds generated using pack.cmd have dependencies. i assume no dependencies is the right way

Hey, since this is a build-only thing it shouldn't give you any transitive dependencies...
So having no deps is actually quite important

i went the "let us just parse that little file ourselfs" path. when we have better solutions for isolated environments (or static link bugs fixed), we could switch to more robust FAKE again. I just wanted to make it work for all people being blocked by annoying failures.

would be cool but this moves us away from standard release notes files. wouldn't it be simpler to just write a current_release_notes.md which tracks the changes, and finally when done it is copied into the real release_notes?

The natural way would be prepending bullet-points without a version-heading? I think that should be fairly easy to ignore in the parser

the PR includes the final fix (without this feature request). please check if readme.md is appropriate in the PR https://github.com/aardvark-platform/aardvark.build/pull/6


Thanks for your work!

I want to thank you for vitetris, which was ported to Entware repo five years ago. Here is an asciicast of playing vitetris between me and @zyxmon on MIPS-based home routers.

Thanks again!

Good to hear!


add babel to syntax checking (alongside javascript & jsx)

Adding 'babel' to the syntax checking function as reported in this issue https://github.com/emmetio/emmet-atom/issues/237

Thanks, pushed to v.2.3.16


List index out of range

Hello,
Sorry if this is a naive question very new to python. I'm running the code in a colab note book and I keep getting this error for the train.py script
Traceback (most recent call last):
File "train.py", line 335, in
main()
File "train.py", line 257, in main
samples0, _ = librosa.load(train_split[0], sr=None, mono=True)
IndexError: list index out of range
I'm using all default parameters.
Thanks
Ash

@AshleighHazel Hi there, thanks for getting in touch. This looks like a problem with your dataset, either its contents or the location you're passing.
Your dataset should be a folder of audio chunks, prepared using the chunk_audio.py script (technically you don't need to use that script, as long as you have a folder of audio chunks of equal length that willbe fine). Typically I work with 8 second chunks.
Or perhaps the issue is the location of the dataset. Are you sure you're passing the right path, via the --data_dir param to train.py?

@relativeflux Thanks so much for your response, it seems like my data set was just too small for the parameters I was using, I uploaded a longer audio file and it is working now. Thanks for pointing me in the right direction and for the code, loving the results!


Docker Image

Hi,
i'm trying to build a docker image using the Dockerfile in the proyect, but i'm getting this error:
Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './lib/parser' is not defined by "exports" in /build/node_modules/postcss/package.json
Am I doing something wrong or the dockerfile is not right?
Thank you

Just a quick update: using FROM node:16 AS base instead of FROM node:current-alpine AS base the container builds just fine.

Actually it is not related to Docker, it just doesn't work with the latest Node.js, I had to use the LTS (16) version.

Hi, is there an official prebuilt docker image available on some registry ? I can't find any on docker hub
This would ease self-hosting instead of letting everyone build it !
Thanks, great work by the way !


Expose more thread bindings for BSD-like OSes.

Fixes https://github.com/rust-lang/libc/issues/2721

r? @Amanieu
(rust-highfive has picked a reviewer for you, use r? to override)

Is there anything I can do to let the Cirrus CI work?

other than that you can fill libc-test/semver/netbsd.txt and libc-test/semver/openbsd.txt lists so they will appear in the docs.

Looks ok now nice !

@bors r+

:pushpin: Commit 4454b978d16c5714b25e85270c836555d19b4869 has been approved by Amanieu

:hourglass: Testing commit 4454b978d16c5714b25e85270c836555d19b4869 with merge f6338e352294656068a9aba58080d825d1e82db4...

:broken_heart: Test failed - checks-actions

Current error is:
error[E0658]: use of unstable library feature 'proc_macro_is_available'
  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/proc-macro2-1.0.36/src/detection.rs:28:21
   |
28 |     let available = proc_macro::is_available();
   |                     ^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = note: see issue #71436 <https://github.com/rust-lang/rust/issues/71436> for more information
   = help: add `#![feature(proc_macro_is_available)]` to the crate attributes to enable

For more information about this error, try `rustc --explain E0658`.
error: could not compile `proc-macro2` due to previous error
warning: build failed, waiting for other jobs to finish...
error: failed to compile `semverver v0.1.48`, intermediate artifacts can be found at `/tmp/cargo-installzIFZ77`

Caused by:
  build failed
Error: Process completed with exit code 101.

actual error is this
error[E0412]: cannot find typesched_paramin this scope     --> src/unix/bsd/netbsdlike/netbsd/mod.rs:2516:53      | 2516 |     pub fn sched_getparam(pid: ::pid_t, param: *mut sched_param) -> ::c_int;      |                                                     ^^^^^^^^^^^ not found in this scope      | help: consider importing this struct      | 2790 |         use sched_param;

actual error is this
error[E0412]: cannot find type `sched_param` in this scope
    --> src/unix/bsd/netbsdlike/netbsd/mod.rs:2516:53
     |
2516 |     pub fn sched_getparam(pid: ::pid_t, param: *mut sched_param) -> ::c_int;
     |                                                     ^^^^^^^^^^^ not found in this scope
     |
help: consider importing this struct
     |
2790 |         use sched_param;

Interesting! How were you able to find it? I will fix it if there is just this one error, but I don't know how to actually check if it builds cuz I don't have an openbsd. :(

Click on the checks-actions link from bors then scroll on the left to find the actual builder that failed. Ignore the semver builders, the result from those is currently ignored.

@bors r+

:pushpin: Commit 576f86d26f588a620240ef294994c6e9dcd9d6c2 has been approved by Amanieu

:hourglass: Testing commit 576f86d26f588a620240ef294994c6e9dcd9d6c2 with merge 02bdb0a39f414bc5e0434dc48270747b3812e619...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13
Approved by: Amanieu
Pushing 02bdb0a39f414bc5e0434dc48270747b3812e619 to master...

Thanks everyone.


Improve voluptuous and login errors for Asus device tracker

Description:
Related issue (if applicable): fixes #2978
Example entry for configuration.yaml (if applicable):
  - platform: asuswrt
    host: <IP_ADDRESS>
    protocol: ssh
    username: !secret asus_un
    password: !secret asus_pw

Checklist:
If code communicates with devices, web services, or a:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[x] New dependencies have been added to the REQUIREMENTS variable ([example][ex-requir]).
[x] New dependencies are only imported inside functions that use them ([example][ex-import]).
[x] New dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[x] New files were added to .coveragerc.

🐬


[IR][Pass][Instrument] Pass instrument framework

This commit provides utilities to instrument passes:

Add a new namespace tvm.instrument

Introduce PassInstrument and PassInstrumentor to PassContext
Example

passes_mem = #... Impl of memory instrument
passes_time = tvm.instrument.PassesTimeInstrument()

with tvm.transform.PassContext(
   pass_instrumentor=PassInstrumentor([passes_mem, passes_time])):

   tvm.relay.build(mod, 'llvm')

   passes_mem.rendor()
   passes_time.rendor()

Integrate existing PassContext::Trace() and timing profile

Thanks for contributing to TVM!   Please refer to guideline https://tvm.apache.org/docs/contribute/ for useful information and tips. After the pull request is submitted, please request code reviews from Reviewers by @ them in the pull request thread.
Hi @altanh @tqchen:
I tried to integrate current passes profile mechanisms and make it more extendable, usage is as the commit's code example.  Many parts are inspired by LLVM and MLIR.
How do you think?
This is my first attempt to TVM :),   I have read through the guideline, but it there are stilling something wrong, please let me know.
Regards,
Zack

@tqchen @tkonolige Here is the RFC:
https://discuss.tvm.apache.org/t/pass-instrument-framework-proposal/9874
And here is some reply for previous questions:
I would like to separate runtime profiling and pass instrumentation, too. This PR only focuses on pass profiling mechanisms like the passes time profiling, wants to make it easier to add more passes profiling implementations.
You might notice that this PR introduces a new namespace tvm.intrument. It intends to cover all instrument related (not limited to pass, but this PR only shows pass instrument), instead of mixing instrumentation/profiling code with transformation codes in tvm.transform. RuntimeProfiling could be add to this namespace, eg: tvm.instrument.Runtime.Profiling.

I will try and comment over the weekend, thanks for the PR!

Hi @tqchen @jroesch
The CI failed, because of the following message:
docker: write /var/lib/docker/tmp/GetImageBlob707223609: no space left on device.

See 'docker run --help'.

script returned exit code 125

I think it may be not related to the change but the CI environment, right?
And another thing is the workflow:
1 workflow awaiting approval
First-time contributors need a maintainer to approve running workflows

I think it may require someone to help approve, right?
Or I need to do something else?

I will try and comment over the weekend, thanks for the PR!

Hi @jroesch:
Just a gentle ping to receive feedback on this PR.
Thanks,
Zack

Sorry for the long delay. @zackcquic I have added review comments. One thing that would be helpful to get put more thoughts on is the naming. in particular what is the argument name when passing a list of pass instrumentors.
cc @junrushao1994 @vinx13 @altanh @zhiics @yzhliu Please also help to take a look

@tqchen Thanks a lot for review.
I will change it in these days.

@tqchen I just made modification based on comments.

cc @jroesch @Hzfengsy @junrushao1994 @vinx13 @areusch @mbrookhart @yzhliu would be great if you can help to review this PR

cc @jroesch @Hzfengsy @junrushao1994 @vinx13 @areusch @mbrookhart @yzhliu would be great if you can help to review this PR

@tqchen requested changes updated

thanks for the PR and sorry for delay, I'll review this today!

@tkonolige Thanks a lot for review.
Changes are done.

What is the reasoning behind having instrumentation be able to turn on and off passes? It seems like this feature should be separate.

I don't have strong reason (examples).
This is inspired by LLVM. llvm::PassInstrumentation::runBeforePass()

I think this is a valuable change and should pave way for more powerful tools in debugging and profiling TVM compilation. Others have left good comments, I have a few additional questions:

what happens when PassContexts are nested? I'm not sure if this is allowed today but it feels to me like they could compose
the disabled_pass option feels redundant now for PassContext, perhaps we should keep it for backwards compatibility but it could be easily replaced using a DisableByName instrument (or something like that).
is there a reason why we couldn't overload the superclass (PassNode) operator() for doing the before and after instrumentation? the new changes have some duplicated lines for each type of PassNode.

Related to the last point, we also have a problem with the new design regarding the previous Pass timing profiling: in particular, as passes can be nested, every nested pass invocation must use the operator()(IRModule, PassContext) overload to ensure the pass is recorded in the timing. I'm pretty sure this is not the case in a lot of existing passes, so we must fix this globally for the timing to be precise. But since passes can be called without a PassContext, it might be possible that there is no PassContext- maybe there's a global/thread local one? I'm not sure.
Thanks for the work!

Hi @altanh, thanks a lot for reviewing along with these great questions. 👍
Q. What happens when PassContexts are nested? I'm not sure if this is allowed today but it feels to me like they could compose.
A. Yes, PassContext can be nested. Instrument will be active in the same level (in the view of PassContext).
def test_print():
    x, y, z = [tvm.relay.var(c, shape=(3, 4), dtype="float32") for c in "xyz"]
    e1 = op.add(x, y)
    e2 = op.subtract(x, z)
    e3 = op.multiply(e1, e1 / e2)
    mod = tvm.IRModule.from_expr(e3 + e2)

    @tvm.instrument.pass_instrument
    class NamePrinter:
      def run_before_pass(self, mod, pass_info):
        print(pass_info.name)
        return True

    print_name = NamePrinter()
    with tvm.transform.PassContext(instruments=[print_name]):
        mod = tvm.relay.transform.AnnotateSpans()(mod)
        with tvm.transform.PassContext():
          mod = tvm.relay.transform.ToANormalForm()(mod)
          mod = tvm.relay.transform.InferType()(mod)

test_print()

# output:
# AnnotateSpans
# InferType             # Note: InferType is a nested pass, same pass ctx with AnnotateSpans. Still instrumented, since finally it goes through ModulePassNode::operator().
#
# Inner level passes are not printed, since no instruments provided.

Q. The disabled_pass option feels redundant now for PassContext, perhaps we should keep it for backwards compatibility but it could be easily replaced using a DisableByName instrument (or something like that).
A. Yes, I agree. I left it here. Maybe use another PRs to add/remove these in the future.
Q. Is there a reason why we couldn't overload the superclass (PassNode) operator() for doing the before and after instrumentation? the new changes have some duplicated lines for each type of PassNode.
A. Yes, I aware that.
Basically, this PR is just an enhanced "trace"  (with PassContext(treace=xxx)), I just replace how the trace are implemented.
For the reason not to overload superclass, I don't know, but I have a guess, maybe need someone to confirm:
Currently, only FunctionPass, ModulePass, SequentialPass and PrimFuncPass extends Pass.
FunctionPass calls  InferType at the end  (see the comments for detail) while SequentialPass is just like a wrapper.
In these cases, InterType and SequentialPass maybe not want to be traced/instrumented.
Q. Since passes can be called without a PassContext, it might be possible that there is no PassContext- maybe there's a global/thread local one? I'm not sure.
A. I thought about that, but I prefer the old "trace" way (No pass context, no trace/instrument).
If I missed something, please let me know. e.g. There is a way to enable "trace" globally

@altanh @tkonolige thanks for reviewing.
Changes are done.

given there is a precedence of API, (LLVM/MLIR) that fuses runBefore and shouldRun. I actually agree with @zackcquic that we should follow the previous API precedence so we get better consistency per https://tvm.apache.org/docs/contribute/code_review.html?highlight=review#deliberate-on-api-and-data-structures "Be consistent with existing well-known package’s APIs if the features overlap."

I agree that following precedent is useful for consistency, but it seems like it will cause a lot of problems here. What happens in this case:
The first instrument run before the pass initializes some state and returns true. The second returns false. Now there is no matching after pass call for the first instrument. When the next before pass gets called, the instrument doesn't know if it is now more deeply nested or if it had actually been canceled.
Also, given we already have a way to disable passes, wouldn't it make more sense to keep the existing interface?

@tqchen @tkonolige @areusch
Thanks for the discussions.
For ShouldRun  and runBeforePass problem, I will check how LLVM and MLIR deal with multiple instrument instances in detail these days.
Also @areusch points to error handling, I really appreciate it. 👍
I will check these too, and then come up a solution.
If you have any other ideas/state of art impls,  like  after_pass with a "result" notion., please also let me know.

For the reason not to overload superclass, I don't know, but I have a guess, maybe need someone to confirm:
Currently, only FunctionPass, ModulePass, SequentialPass and PrimFuncPass extends Pass.
FunctionPass calls InferType at the end (see the comments for detail) while SequentialPass is just like a wrapper.
In these cases, InterType and SequentialPass maybe not want to be traced/instrumented.

I disagree with this, mainly because some (perhaps not so) surprising results I got with my initial pass profiling implementation is that InferType is called a lot and often due to the FunctionPass/SequentialPass design, leading to quite a bit of compilation slowdown. This information would not have been obtained if we didn't include all passes that are run in the profiling.
Now, I wonder if we should introduce a "universal" pass context which every PassNode must respect and has access to (perhaps a thread local one)? I definitely want to make sure the timing instrument can time all passes that are run.

@altanh Thanks.
Just checked, YES, InferType is called a lot than I expected.
So I updated like you suggested, instrument in Pass::operator() instead of subclasses' operator().

Collector of pass instrumentation instance
Following table shows the class and API that collects a set of pass instrumentations in different projects:
Note:

[IO] = Pass instrumentations are processed in order
[RO] = Pass instrumentations are processed in reverse order
Entry empty = No mapping API
mlir::PassInstrumentor provides thread-safety.

This PR (PassContext.instruments)
llvm::PassInstrumentation
mlir::PassInstrumentor

[IO] bool InstrumentBeforePass()
[IO] bool runBeforePass()
[IO] void runBeforePass()

[IO] bool InstrumentAfterPass()
[IO] void runAfterPass()
[RO] void runAfterPass()

[IO] void runAfterPassInvalidated()

[RO] void runAfterPassFailed()

[IO] void runBeforeAnalysis()
[IO] void runBeforeAnalysis()

[IO] void runAfterAnalysis()
[RO] void runAfterAnalysis()

[IO] void runAnalysisInvalidated()

[IO] void runAnalysesCleared()

[IO] void InstrumentEnterPassContext()

[IO] void runBeforePipeline()

[IO] void InstrumentExitPassContext()

[RO] void runAfterPipeline()

Pass instrumentation instance
Following table shows the class and API to implement a pass instrumentation in different projects:
Note:

In LLVM, a pass instrumentation provides a set of callbacks and register them in llvm::PassInstrumentationCallbacks,
which will be called in collectors at different instrumentation points.
In MLIR and this PR, pass instrumentation subclassing base class and overriding methods.

This PR (instrument::PassInstrumentNode)
llvm::PassInstrumentationCallbacks
mlir::PassInstrumentation

virtual bool ShouldRun()
void registerShouldRunOptionalPassCallback(CallableT)  // CallableT = bool(StringRef, Any), called in llvm::PassInstrumentation

void registerBeforeSkippedPassCallback(CallableT)  // CallableT = void(StringRef, Any), called in llvm::PassInstrumentation

void registerBeforeNonSkippedPassCallback(CallableT)  // CallableT = void(StringRef, Any), called in llvm::PassInstrumentation

virtual void RunBeforePass()

virtual void runBeforePass()

virtual void RunAfterPass()
void registerAfterPassCallback(CallableT)   // CallableT = void(StringRef, Any, const PreservedAnalyses &), called in llvm::PassInstrumentation
virtual void runAfterPass()

void registerAfterPassInvalidatedCallback(CallableT)  // CallableT = void(StringRef, const PreservedAnalyses &), called in llvm::PassInstrumentation

void registerBeforeAnalysisCallback(CallableT)   // CallableT = void(StringRef, Any), called in llvm::PassInstrumentation
virtual void runBeforeAnalysis()

void registerAfterAnalysisCallback(CallableT)  // CallableT = void(StringRef, Any), called in llvm::PassInstrumentation
virtual void runAfterAnalysis()

void registerAnalysisInvalidatedCallback(CallableT)   // CallableT = void(StringRef, Any), called in llvm::PassInstrumentation

void registerAnalysesClearedCallback(CallableT)  // CallableT = void(StringRef), called in llvm::PassInstrumentation

virtual void EnterPassContext()

virtual void runBeforePipeline()

virtual void ExitPassContext()

virtual void runAfterPipeline()

RunBeforePass API
Following is the code snip from  bool llvm::PassInstrumentation::runBeforePass().
It splits the ShouldRun() and RunBefore() logic from a pass instrumentation, like @areusch recommended.
  /// BeforePass instrumentation point - takes \p Pass instance to be executed
  /// and constant reference to IR it operates on. \Returns true if pass is
  /// allowed to be executed. These are only run on optional pass since required
  /// passes must always be run. This allows these callbacks to print info when
  /// they want to skip a pass.
  template <typename IRUnitT, typename PassT>
  bool runBeforePass(const PassT &Pass, const IRUnitT &IR) const {
    if (!Callbacks)
      return true;

    bool ShouldRun = true;
    if (!isRequired(Pass)) {
      for (auto &C : Callbacks->ShouldRunOptionalPassCallbacks)
        ShouldRun &= C(Pass.name(), llvm::Any(&IR));
    }

    if (ShouldRun) {
      for (auto &C : Callbacks->BeforeNonSkippedPassCallbacks)
        C(Pass.name(), llvm::Any(&IR));
    } else {
      for (auto &C : Callbacks->BeforeSkippedPassCallbacks)
        C(Pass.name(), llvm::Any(&IR));
    }

    return ShouldRun;
  }

In the updated commit, I use this way.

@tkonolige @areusch @altanh @tqchen Changes are done.

Thanks for the changes, this looks much better now! Mostly spelling nits here, but also could you please add back the test for the PassTimingInstrument? Looks like it got removed here (previously was in tests/python/relay/test_pass_profiler.py).

I renamed test_pass_profiler.py to test_pass_instrument.py, and PassTimingInstrument are tested in this file.

Thanks for the changes, this looks much better now! Mostly spelling nits here, but also could you please add back the test for the PassTimingInstrument? Looks like it got removed here (previously was in tests/python/relay/test_pass_profiler.py).

I renamed test_pass_profiler.py to test_pass_instrument.py, and PassTimingInstrument are tested in this file.

Thanks, sorry I missed it (looks like github collapsed the file and I scrolled too fast...)

@areusch @tqchen changes are done.
Thanks a lot.

@areusch @tqchen change request are all done.
Thanks a lot for reviewing efforts. 👍

Hi @tqchen,
Just a ping for reviewing :), thanks a lot.

Thanks @zackcquic @areusch @tkonolige @altanh

Thanks @zackcquic for putting all the hard work polishing the API, improving the code and bring the implementation.
It would be great if we can followup to add design docs and examples :)

Thanks @zackcquic for putting all the hard work polishing the API, improving the code and bring the implementation.
It would be great if we can followup to add design docs and examples :)

Sure, I will add it. Thank you very much.


Allow passing an element to alertify functions instead of message string

I'd like to be able to pass a DOM element to Alertify instead of a message string. I want to do this because I'm working with a binding framework and I'd like to be able to use Alertify as a general modal solution. The framework will create a view slot that's bound to a DOM element, and it will create all of its changes in that element. As such, I want to call document.createElement and then pass that element to Alertify to use as its content.
This should be a fairly trivial change - in the build method, we can check if the message parameter is actually a DOM node. If so, we can add the element itself instead of using the message template.
Any thoughts? I'd be happy to submit a PR for this.

Sure that makes perfect sense. That's a good approach, too. I'd be happy to
merge such a PR.

So I'm looking more at this and I'm realizing that there's a bit of work to do to make this really viable. I'll list the issues here.

There's no way to programmatically close the modal - at least not from the external API.
The modal styles make a lot of assumptions about how the data will be formatted - using child selectors and wildcard selectors (*) fairly liberally. This causes a lot of style clashes with the full view.
Another style issue - the width is capped to 400px, which works well for alerts and prompts but badly for viewmodels. The width property would need to be pulled into a separate class.
Because the modal is built using innerHTML, adding a DOM element is a little messy (running this.build and then appending the item after the innerHTML has been built, bad separation of concerns). It'd be nice to clean this up.

Some of this stuff might cause breaking changes. At the moment, I think I'll fork, and we might be able to decide which features you'd like me to merge upstream.

Sounds good, you're right on all of those issues, I didn't really think about it in that way. The general goal that I think we're trying to stick with is to keep everything super-simple and very light - a few kb's at most.
I don't think the changes you propose are incompatible, but wanted to mention just so you have that in mind.
That all being said, if you've been able to make those changes (or will in the future) I think it would be a nice addition and we could add it to the next "breaking changes" release, probably a minor release.
Let me know if that's something you'd be interested in helping out with.


Google App Engine compatibility

Introduction
Google App Engine is a sandboxed environment. We can't make calls to the outside world without using the net/http's Request to create a http.Client by:
import (
        "net/http"

        "google.golang.org/appengine"
        "google.golang.org/appengine/urlfetch"
)
ctx := appengine.NewContext(r)
client := urlfetch.Client(ctx)

Without doing that, the library doesn't work.
The way Stripe-Go-Library handles it is like this: https://github.com/stripe/stripe-go#google-appengine
Basically Stripe allows Google App Engine users the ability to feed in their own http Client and the library will then use that.
	ctx := appengine.NewContext(r)
	httpClient := urlfetch.Client(ctx)

	sc := client.New(key, stripe.NewBackends(httpClient))

The way I handle it is like this:
https://github.com/pjebs/optimus-go/blob/master/gae.go
https://github.com/pjebs/optimus-go/blob/master/standalone.go
My way may be a lot easier to implement.
In your code, everytime you refer to a http Client, you instead call: client() from the files above.
There will be no affect to the rest of your code.
More information
https://cloud.google.com/appengine/docs/go/issue-requests
https://cloud.google.com/appengine/docs/go/urlfetch/reference

Since you are using gorequest library @L102(https://github.com/dogenzaka/go-iap/blob/master/appstore/validator.go#L102)

I think it's not as simple since the client this library creates has the jsonKey baked in.
My current code looks like this:
func New(ctx context.Context, jsonKey []byte) (Client, error) {
	//conf, err := google.JWTConfigFromJSON(jsonKey, androidpublisher.AndroidpublisherScope)
	tokenSource, err := google.JWTAccessTokenSourceFromJSON(jsonKey, "myapp-123456.appspot.com")

	if err != nil {
		return Client{}, err
	}

	httpClient := &http.Client{
		Transport: &oauth2.Transport{
			Source: tokenSource,
			Base: &urlfetch.Transport{
				Context: ctx,
			},
		},
	}

	return Client{
		httpClient: httpClient,
	}, err
}

But I'm getting an error in VerifyProduct: error: googleapi: Error 401: Invalid Credentials, authError.  I'm not sure if the problem is using "myapp-123456.appspot.com" as my audience in the call to google.JWTAccessTokenSourceFromJSON or if it's something else.

I'm doing app store verification manually.  But to get play store verification working, I copied the playstore/validator.go to my project and edited it.  Gist here:
https://gist.github.com/mltucker/db4df00918d7b917f49b60012b615c02


Create powermeter-1.json

Thank you for contributing to the Azure IoT Plug and Play Models repository
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact<EMAIL_ADDRESS>with any additional questions or comments.
The repository pipeline will ensure minimum validation of incoming DTDL models.

PR validation steps are described in the tools Wiki.
The same validation can be run locally via the dmr-client CLI.

Requested info template for model(s) submission
When submitting models to the repository we ask that you provide as much of the following meta information around your models and related devices as possible. This info will be used to improve Plug and Play.
:star2: Please replace the markdown comment examples with your own values.
Company Info

IoT Plug and Play Device Info

Model Submission Goals

Code Owners & Reserved Names

Company Info
Techware
http://www.techware.com.tw
IoT Plug and Play Device Info
SecurityMate
Model Submission Goals
Device Certification
Code Owners & Reserved Names

Company Info
Techware
http://www.techware.com.tw
IoT Plug and Play Device Info
SecurityMate
Model Submission Goals
Device Certification
Code Owners & Reserved Names


Remove sqlite3 dependency

I see that the sqlite gem is required in the development gems, given that mysql is used what are the thoughts on removing this extra dependency?

Not used since April 2012: https://github.com/alphagov/signonotron2/commit/7b55f8dcd9c0368370738a77104d85fc1dd2fbb3


[consensus] Prepare for reconfiguration in execution

This addresses #783.  In this PR, the vote structures prepare for reconfiguration by decoupling ExecutedState from the VoteData.  As a part of decoupling, we reduce unnecessary information sharing and improve integration with execution.

Votes do not require the full executed state, only the executed state root hash to agree on.  This minimizes the voting information to what
is necessary and also minimizes the information for QuorumCert and TimeoutCertificate.  As a result, for instance, the root of BlockTree also doesn't require the ExecutedState since it is committed.
InsertError::ParentVersionNotFound is no longer possible, as a Block that doesn't have an ExecutedState is a violation of consistency unless it is the root.
Reduced VoteData protobuf definition to be minimal and preserved the order in the struct VoteData
ExecutedState now contains the validators to support the epoch change.
StateComputeResult now passes back the version so consensus can use it without recalculating it

@dmitri-perelman, great suggestions.  This PR is going to include a lot more cleanup soon.

Thanks @dmitri-perelman, rebased, no other changes.


Add back color() support

Hey @jonathantneal,
Thanks for all the work you do on this plugin! I've been following the thread about color-mod() vs color() in this repo and in your postcss-color-mod-function repo.
The CSS Working group has confirmed that color-mod() is deprecated and color() is the spec that is in the latest working draft as of January 2019.
Is it possible this plugin will be revived?

Hi @resource11. That’s a fair question, and thanks for reviewing that other thread.
I believe the CSSWG was only answering the first half of your question, which was whether color-mod() was officially deprecated. color-mod() is officially deprecated.
Unfortunately, their response left some ambiguity in regards to the second half of your question, which was whether color-mod() was specifically deprecated in favor of color(). color-mod() is not deprecated specifically in favor of color()
color() and color-mod() are unrelated functions that accomplish very different things. color() is for specifying color profiles, whereas color-mod() was for modifying colors.
For what it’s worth, color() (for specifying color profiles) has shipped in Safari since 2017.

If you’re curious as to why this plugin still exists and hasn’t been updated, it is because:

In the spec, color-mod() was once named color() and this plugin as written before that name was changed. No one at that time knew how unstable the name was.
This plugin did not change when the spec changed because the change was confusing to understand. This is understandable if you followed the other thread.
The maintainer of the library that powered this plugin did not want to drop the old name and break backward compatibility. This is understandable because they viewed this plugin as a piece of software and not just a reflection of the spec.

This is one of the reasons why I created cssdb; to report early spec stability and to track spec changes. I then push breaking changes following semver.

Thanks for the clarification, @jonathantneal.
Re: points 1-3, yes, I read through entire thread (and all the sub-threads that followed), and bookmarked that glorious cssdb a while back.
However!
This is great info for anyone else who wants the background without digging through the threads of two libraries or the most recent version of the draft spec.
It's still good to know the additional history behind point 3 (the css-color-function dependency). For anyone curious, here's that thread behind the keeping color().
Personally, I'm still using this older library while the spec on color-mod() is further developed. It still works pretty great in our config.

Closing as color() will not be re-added for modifying colors. I also hope this closed issue helps other. Thanks for following up, @resource11.


WikiConv example Jupyter NoteBook Code not working

Situation
Hey there, I am want to work with the WikiConv corpus and think the ConvoKit framework should make that a lot easier.
To get started I tried to follow along the example notebook. I downloaded the 2003 corpus on my machine via
corpus_dir_path_cluster = "my/path/"
wikiconv_2003 = Corpus(filename=download("wikiconv-2003", data_dir = corpus_dir_path_cluster))
And started copying the code from the notebook into a python file step by step to make it work.
Now when using print_final_conversation everything works fine as long as the modification, deletion and restoration lists are not used.
The problem
No for example when I only put conversation with id '1275892.3573.3573' in the random_conversations list like:
random_conversations = [wikiconv_2003.get_conversation('1275892.3573.3573')]
and call
print_final_conversation(random_conversations,  wikiconv_2003)
then we get into function check_lists_for_match with param str(utterance) =
Utterance(id: '1277066.3845.3845', conversation_id: 1275892.3573.3573, reply-to: 1275892.3573.3573, speaker: Speaker(id: Ruhrjung, vectors: [], meta: {'user_id': '10582'}), timestamp:<PHONE_NUMBER>.0, text: 'Germany is no state of USA. That is established, even in Wikipedia_talk:Naming_conventions_(city_names), where virtually no arguments for the comma-notion are presented, although the debate there seems to have fallen asleep (about July 22nd). ', vectors: [], meta: {'is_section_header': False, 'indentation': '1', 'toxicity': 0.0887862, 'sever_toxicity': 0.01593855, 'ancestor_id': '1275929.3845.3845', 'rev_id': '1275929', 'parent_id': None, 'original': ({'id': '1275929.3845.3845', 'root': '1275892.3573.3573', 'reply_to': '1275892.3573.3573', 'timestamp':<PHONE_NUMBER>.0, 'text': 'Germany is no state of USA. That is established, even in Wikipedia_talk:Naming_conventions_(city_names), where virtually no arguments for the comma-notion are presented, although the debate there seems to have fallen asleep. ', 'meta': {'is_section_header': False, 'indentation': '1', 'toxicity': 0.0887862, 'sever_toxicity': 0.01593855, 'ancestor_id': '1275929.3845.3845', 'rev_id': '1275929', 'parent_id': None, 'original': None, 'modification': [], 'deletion': [], 'restoration': []}}), 'modification': [({'id': '1277066.3845.3845', 'root': '1275892.3573.3573', 'reply_to': '1275892.3573.3573', 'timestamp':<PHONE_NUMBER>.0, 'text': 'Germany is no state of USA. That is established, even in Wikipedia_talk:Naming_conventions_(city_names), where virtually no arguments for the comma-notion are presented, although the debate there seems to have fallen asleep (about July 22nd). ', 'meta': {'is_section_header': False, 'indentation': '1', 'toxicity': 0.06772689, 'sever_toxicity': 0.009684636, 'ancestor_id': '1275929.3845.3845', 'rev_id': '1277066', 'parent_id': '1275929.3845.3845', 'original': None, 'modification': [], 'deletion': [], 'restoration': []}})], 'deletion': [], 'restoration': []})
and therefore str(modification_list) =
Modifications[({'id': '1277066.3845.3845', 'root': '1275892.3573.3573', 'reply_to': '1275892.3573.3573', 'timestamp':<PHONE_NUMBER>.0, 'text': 'Germany is no state of USA. That is established, even in Wikipedia_talk:Naming_conventions_(city_names), where virtually no arguments for the comma-notion are presented, although the debate there seems to have fallen asleep (about July 22nd). ', 'meta': {'is_section_header': False, 'indentation': '1', 'toxicity': 0.06772689, 'sever_toxicity': 0.009684636, 'ancestor_id': '1275929.3845.3845', 'rev_id': '1277066', 'parent_id': '1275929.3845.3845', 'original': None, 'modification': [], 'deletion': [], 'restoration': []}})]
That leads to the check
if (utterance_val.id == next_utterance_value.reply_to):
that produces
AttributeError: 'Utterance' object has no attribute '_id'
My insights so far
When looking at the modifications list I see 'id': '1277066.3845.3845' which I guess should correspond to the utterance's _id. So I don't get why the id is said to be missing.
I am not to familiar with Python, but I wonder why str(utterance) has the id printed as id: '1277066.3845.3845' without '' while the utterance in the modification list has 'id': '1277066.3845.3845' where id is wrapped in  ''. To me it looks like the utterances in the modification list are in a json like format and I don#t know why.
Also the notebokk was update last in Nov 20, 2019 while the wikiconv models where updated last on Dec 1, 2020. So maybe the notebook is outdated?
Conclusion
It would help me a lot if anyone could check if they can reproduce this AttributeError, or if this is a problem sole for me.
Thank you all for your help.

As of 03/21/2022, the ConvoKit WikiConv corpora have been updated so the modification metadata now work correctly, so the workaround described in the last comment is no longer needed.


Allow for datetime strings formatted following the default cftime format in cftime_range and partial datetime string indexing

This PR adds support for datetime strings formatted following the default cftime format (YYYY-MM-DD hh:mm:ss) in cftime_range and partial datetime string indexing.

[x] Closes #4337
[x] Tests added
[x] Passes isort . && black . && mypy . && flake8
[x] User visible changes (including notable bug fixes) are documented in whats-new.rst

Thanks for the review @mathause and @dcherian.


chore: fix conda env creation

Related Issues/PRs

#xxx
What changes are proposed in this pull request?
Briefly describe the changes included in this Pull Request.
How is this patch tested?

[ ] I have written tests (not required for typo or doc fix) and confirmed the proposed feature/bug-fix/change works.

Does this PR change any dependencies?

[ ] No. You can skip this section.
[ ] Yes. Make sure the dependencies are resolved correctly, and list changes here.

Does this PR add a new feature? If so, have you added samples on website?

[ ] No. You can skip this section.
[ ] Yes. Make sure you have added samples following below steps.

Find the corresponding markdown file for your new feature in website/docs/documentation folder.
Make sure you choose the correct class estimators/transformers and namespace.
Follow the pattern in markdown file and add another section for your new API, including pyspark, scala (and .NET potentially) samples.
Make sure the DocTable points to correct API link.
Navigate to website folder, and run yarn run start to make sure the website renders correctly.
Don't forget to add <!--pytest-codeblocks:cont--> before each python code blocks to enable auto-tests for python samples.
Make sure the WebsiteSamplesTests job pass in the pipeline.

/azp run

Codecov Report

Merging #1748 (3061f17) into master (558f5d8) will decrease coverage by 7.33%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1748      +/-   ##
==========================================
- Coverage   84.31%   76.97%   -7.34%
==========================================
  Files         278      278
  Lines       14603    14603
  Branches      791      791
==========================================
- Hits        12312    11241    -1071
- Misses       2291     3362    +1071

Impacted Files
Coverage Δ

...soft/azure/synapse/ml/cognitive/AudioStreams.scala
0.00% <0.00%> (-87.88%)
:arrow_down:

...ft/azure/synapse/ml/cognitive/AzureSearchAPI.scala
2.59% <0.00%> (-87.02%)
:arrow_down:

...osoft/azure/synapse/ml/cognitive/AzureSearch.scala
9.35% <0.00%> (-78.42%)
:arrow_down:

...e/synapse/ml/cognitive/FormRecognizerSchemas.scala
7.69% <0.00%> (-76.93%)
:arrow_down:

...ure/synapse/ml/cognitive/FormOntologyLearner.scala
14.28% <0.00%> (-75.52%)
:arrow_down:

...t/azure/synapse/ml/cognitive/SpeechToTextSDK.scala
18.03% <0.00%> (-73.34%)
:arrow_down:

...crosoft/azure/synapse/ml/cognitive/SpeechAPI.scala
0.00% <0.00%> (-70.00%)
:arrow_down:

.../synapse/ml/cognitive/AnomalyDetectorSchemas.scala
33.33% <0.00%> (-66.67%)
:arrow_down:

...ft/azure/synapse/ml/cognitive/TextTranslator.scala
33.33% <0.00%> (-52.06%)
:arrow_down:

...synapse/ml/cognitive/SpeakerEmotionInference.scala
44.82% <0.00%> (-48.28%)
:arrow_down:

... and 38 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

/azp run