Nialexsan/v3 1

#507

Looking nice!!
Only timbits I would change:

Can we move the position of Differences vs EVM in the sidebar to under ‘Getting Started’ and above ‘Basic Concepts’.
Under Build/Guides let’s put ‘More guides’ at the very bottom below ‘Building on Mobile’. Let’s also capitalize ‘G’ to ‘More Guides’ and capitalize ‘W’ in ‘Create a Web App on Flow’ and let’s change Dapp to App (to be more consistent).


Update per vscode issue

Signed-off-by: Paul Bastide<EMAIL_ADDRESS>

Thanks for jumping on this one Paul.  I still can't quite explain what I was seeing in vscode, but I'm now able to see the request and respond bodies from the vscode "DEBUG CONSOLE" with either System.err or System.out output.  Lets leave it as System.err for now (unless there is another reason to change it).


Multipart Form Data

From @slackfarmer on February 27, 2015 21:8
I was curious how one might go about creating an IntegrationTestSpec that would compose a multipartFormData request? Does anyone have an example of how to build up a multipart form object and convert it to bytes using this existing jaxrs framework?
Currently send request will only accept bytes as input
IntegrationTestSpec.groovy....

    @Override
    HttpServletResponse sendRequest(String url, String method, byte[] content) {
        defaultMixin.sendRequest(url, method, content)
    }

    HttpServletResponse sendRequest(String url, String method) {
        defaultMixin.sendRequest(url, method, ''.bytes)
    }

    @Override
    HttpServletResponse sendRequest(String url, String method, Map headers, byte[] content) {
        defaultMixin.sendRequest(url, method, headers, content)
    }

    HttpServletResponse sendRequest(String url, String method, Map headers) {
        defaultMixin.sendRequest(url, method, headers, ''.bytes)
    }

Jersey Client Example - how I might test multipart form using jersey client

    def static uploadTestAsset(String srcAsset, String destPath) {
        try {
            def asset = new File("./src/test/resources/${srcAsset}" as String)

            if (asset.exists()) {
                if (!destPath.startsWith('/')) {
                    destPath = "/${destPath}" as String
                }

                String endpoint = "http://localhost/api/repo/upload${destPath}" as String

                Client client = Client.create()
                WebResource webResource = client.resource(endpoint)

                def form = new FormDataMultiPart()
                form.field('filename', asset.getName())
                form.bodyPart(new FileDataBodyPart("fileUpload", asset, MediaType.APPLICATION_OCTET_STREAM_TYPE))

                def result = webResource
                        .type(MULTIPART_FORM_DATA)
                        .accept(V1_JSON)
                        .put(String.class, form)

                println "uploadTestAsset result: ${result}"
            }
        } catch (e) {
            e.printStackTrace()
        }
    }

Copied from original issue: krasserm/grails-jaxrs#61

From @slackfarmer on February 28, 2015 0:7
I figured out how to do it, by using an apache library(MultipartEntityBuilder) to compose the multipart body.
Added apache mime dependency

dependencies {
        compile('org.apache.httpcomponents:httpmime:4.4')
...

Body Building Code Sample
returns end point and a byte array

    public static Map getTestAssetProperties(String assetName){
        String destPath = "${REPO_TEST_ASSET_PATH}${assetName}"
        String endPoint = "/api/repo/upload/${destPath}"
        File asset = new File("./src/test/resources/${assetName}" as String)

        MultipartEntityBuilder e = new MultipartEntityBuilder()
        e.setBoundary("fnord")
        e.addTextBody('filename', asset.getName())
        e.addBinaryBody("fileUpload", asset)
        ByteArrayOutputStream baos = new ByteArrayOutputStream()
        e.build().writeTo(baos)

        return [endPoint:endPoint, bodyInBytes: baos.toByteArray()]
    }

Spock Test Example
Notice content type settings:  ['Content-Type': 'multipart/form-data; boundary=fnord']

    def "Execute revisions request"() {
        setup:
        String assetName = "testAsset1.jpg" as String
        def assetProps = SetupTeardownUtils.getTestAssetProperties(assetName)
        // upload it five times
        for (i in 1..5) {
            def result = sendRequest(assetProps.endPoint,'PUT',['Content-Type': 'multipart/form-data; boundary=fnord'], assetProps.bodyInBytes)
            println "setup is uploading 5 test assets. Endpoint:[${assetProps.endPoint}] status:[${result.status}]"
        }
        when:
        sendRequest('/api/repo/revisions/test/static/asset/upload/testAsset1.jpg', 'GET', ['Content-Type': V1_JSON])
        then:
        response.status == 200
        response.contentAsString == '{"truncated":"false","status":{"success":"true"}}'
        response.getHeader('Content-Type').equals(V1_JSON)
        cleanup:
        println "deleting the 5 test assets"
    }

From @marciomalewschik on August 11, 2015 2:28
Hello slackfarmer,
Could you please help me sharing how you did your resource to accept a MultipartFile.
I'm using this plugin in this verison:
compile ":jaxrs:0.11"
But until now I couldn't send a file to my resource.
In advance I thank you.

From @prabhatsubedi on December 9, 2015 5:51
hello @marciomalewschik I am too facing same problem. Did you find solution ?


Update the Cupcake website Guidelines/Grid page content

Is your feature request related to a problem? Please describe.
Carbon 2x Grid page content is updated and to not get our adopters confused, we need to update what we have.
Describe the solution you'd like
Update the Gird page content.
Describe alternatives you've considered
We can also update the content via markdowns.
Additional context

Grid guideline was worked on via issue 463 in sprint 18.

The Grid guideline will be updated in markdowns with the Gatsby live site.


Cypress tests never starts with wait-on

I am trying to setup this action with a simple Angular + Nodejs server, but I am stuck. No tests actually starts. This might be a possible duplicate of #41
- name: Run e2e tests
  uses: cypress-io/github-action@v1
  with:
    # we have already installed all dependencies above
    install: false
    start: npm run -s start:test & npm run -s start:test --prefix aveiro-server
    wait-on: http-get://localhost:4200/
    config-file: cypress.json
    wait-on-timeout: 180

But the wait-on property does not seem to work when executing on Github. When I look at the logs, I can confirm that both the server and angular is serving - but nothing happens. Then after 180 seconds the job times out.
The weird thing is that if i on localhost do npm run -s start:test & npm run -s start:test --prefix aveiro-server and in another window wait-on http-get://localhost:4200/ && echo Ready! everything works as expected - after the server and angular is up and running, I see "Ready!" in the other console window.
Any help is very welcome.

Thanks for the fix - amazing response time!


pasting clipboard not work on mac Sequoia

Before Submitting Your Bug Report

[x] I have verified that there isn't already an issue reporting the same bug to prevent duplication.
[x] I have seen the FAQ.

Maccy Version (see 'About' window)
2.0.0 (47)
macOS Version
15.0
Description
Maccy paste menu does not open when clicking ⌥V
No response
Steps to Reproduce
try to open Maccy clipboard by shortcuts
No response

I also have this problem

Paging @nitzcard  & @idorahamim
This is not a issue with Maccy; it's is a major bug in macOS Sequoia. There's a reddit thread about it here.
https://www.reddit.com/r/macapps/comments/1fjpiiw/psa_macos_15_breaks_optionkey_hotkeys/


Performance improvement in read_all_bytes

As @privat notified me of yesterday, a lot of time is wasted in read_all by boxing and unboxing bytes when doing the infamous _buffer.add operation in read_all_bytes.
This PR removes the boxing operations by bulk-writing a NativeString to a Bytes.
The buffer on files is also tenfold-bigger, which cuts I/O times while still retaining a reasonable size.
Performances
On the Batmobile™
Valgrind
Before:
standard___standard__BufferedReader___Reader__read_all_bytes: 90.816 MIr
After:
standard___standard__BufferedReader___Reader__read_all_bytes: 7.596 MIr
./ncall-best
Before
user	0m4.316s
After
user	0m4.182s
Close #1298

Now, you have the recalculate all the numbers with the new correct length given to append_ns_from. But since this reroll copies less data, maybe the number will improve more!  I tried again but the real issue what that the diff changed thus my attempt to comment a no-more existent line was futile.

Perfs
Valgrind
standard___standard__BufferedReader___Reader__read_all_bytes: 7.617 MIr
./ncall-best
after: user	0m4.122s

+1

+1


Compilation error.

Hi,
So I wanted to try out controlling a Canon EOS camera with openframeworks, sadly it didn't work. I have tried two official canon SDK versions (2.11 and 3.14), with openframeworks 0.9.0 and 0.9.3, on both windows 7 and windows 8. None of them got through the compilation, yet all of them showed the same error messages: Unknown characters, syntax error, character not allowed, etc. It just seemed like that the SDK, ofxEdsdk and openframeworks were totally incompatible. I have followed the steps included, and tried both blank projects and examples. All ended up the same. Think anyone has any idea?
Thanks,
Kaun

i have encountered the same issue... does anyone have a clue?


Stream is broken: number of input bytes consumed need to be returned

With reference to the code snippet below:

The codec may consume some of the input buffer, but run out of space on the output buffer and return LZMA_OK, with the next_in pointing a bit further along.
LZMA assumes here that the caller can flush the output buffer and call again with the same input, where next_in allows the codec to skip the already-read input.
The above is repeated until LZMA_STREAM_END (action for an encoder, return value for a decoder).
In the code below, if the above situation occurs, the caller will never know that only some of their input buffer has been consumed; the {next, avail}_in state is never passed out.  The code below inherently assumes that all of the input bytes are consumed.

As a result, sometimes the encoded LZMA stream will get corrupted; or the decoder will behave strangely.
Perhaps the simplest fix would be to return the number of input bytes consumed, so the caller can track it and call again with appropriate slices. For the process_vec variant, it might be a good idea to add a parameter that specifies an input offset that is factored into the slice that gets created when calling process_vec.
[stream.rs]
pub fn process(&mut self,
                   input: &[u8],
                   output: &mut [u8],
                   action: Action) -> Result<Status, Error> {
        self.raw.next_in = input.as_ptr();
        self.raw.avail_in = input.len();
        self.raw.next_out = output.as_mut_ptr();
        self.raw.avail_out = output.len();
        let action = action as lzma_sys::lzma_action;
        unsafe {
            cvt(lzma_sys::lzma_code(&mut self.raw, action))
        }
    }

Oh hm I thought this was solved by looking at total_in before/after the operation? (or total_out, depending on what the "interesting buffer" is)

Looking at your writer implementation, I see that you're right.
It was not obvious from the documentation on the stream module that the caller would need to checking total_in after each process call.
Perhaps the documentation can make this more clear?

Yeah makes sense! I'll tag this issue for docs.


Design a Landing Page

Design and code a landing page for the project. The landing page should have a link to the code editor.

@KshitijDarekar I want to work on this issue.

Hi @Aniket-508 , First of all, thank you so much for taking out the time to work on this issue.
Definitely 🙌, Please go forward to work on this issue. I am assigning this Issue to you 👍
📌Just to add a few things :
We can discuss the possible design ideas over the discord channel of OpenCode'22.
This project is a part of OpenCode'22. The registration is completely free and there are a lot of stuff like certificates and goodies in the room for participants..!
You can register through the registration form at the official website:
https://csirait.in/opencode/

Great work @Aniket-508
I really appreciate the way you resolved this issue. 💫
Really a wonderful quality PR's 🙌
Keep up the great work.
Looking forward to more contributions from your side 🔥 🙌


QA - Upload to Workspace

This issue is for testing the Upload to Workspace functionality. Below are steps intended to aid with testing. These are the features covered in this issue:
image drag and upload
Video drag and upload
Multi upload
keyboard shortcut
UX
QA Steps
For each of the upload tests the media files should be added to the active workspace (page) If the media is not uploaded immediately, show the uploading UI.

Drag an image from your local file system onto the workspace (page)
Ensure the Image is added to the page as background image (follow rule for first image added to Page will be set as a bg image) and the media library.
Drag multiple images from your local file system onto the workspace (page)
Ensure the images are staggered on the page
Drag a video from your local file system into the workspace (page)
Copy & Paste an image via keyboard shortcut from your local file system
Copy & Paste a video via keyboard shortcut from your local file system

@jauyong

"Uploading" UI isn't appearing for longer uploads

Waiting on #231 to file an issue for

"Uploading" UI isn't appearing for longer uploads

@csossi I'm not able to replicate this. Was this happening consistently for you?

Dragged and dropped a 1.02 MB jpg. Appeared on page rotated and stretched:

closing this as CUJ testing will cover any required tests


[SPARK-27474][CORE] avoid retrying a task failed with CommitDeniedException many times

What changes were proposed in this pull request?
https://issues.apache.org/jira/browse/SPARK-25250 reports a bug that, a task which is failed with CommitDeniedException gets retried many times.
This can happen when a stage has 2 task set managers, one is zombie, one is active. A task from the zombie TSM completes, and commits to a central coordinator(assuming it's a file writing task). Then the corresponding task from the active TSM will fail with CommitDeniedException. CommitDeniedException.countTowardsTaskFailures is false, so the active TSM will keep retrying this task, until the job finishes. This wastes resource a lot.
#21131 firstly implements that a previous successful completed task from zombie TaskSetManager could mark the task of the same partition completed in the active TaskSetManager. Later #23871 improves the implementation to cover a corner case that, an active TaskSetManager hasn't been created when a previous task succeed.
However, #23871 has a bug and was reverted in #24359. With hindsight, #23781 is fragile because we need to sync the states between DAGScheduler and TaskScheduler, about which partitions are completed.
This PR proposes a new fix:

When DAGScheduler gets a task success event from an earlier attempt, notify the TaskSchedulerImpl about it
When TaskSchedulerImpl knows a partition is already completed, ask the active TaskSetManager to mark the corresponding task as finished, if the task is not finished yet.

This fix covers the corner case, because:

If DAGScheduler gets the task completion event from zombie TSM before submitting the new stage attempt, then DAGScheduler knows that this partition is completed, and it will exclude this partition when creating task set for the new stage attempt. See DAGScheduler.submitMissingTasks
If DAGScheduler gets the task completion event from zombie TSM after submitting the new stage attempt, then the active TSM is already created.

Compared to the previous fix, the message loop becomes longer, so it's likely that, the active task set manager has already retried the task multiple times. But this failure window won't be too big, and we want to avoid the worse case that retries the task many times until the job finishes. So this solution is acceptable.
How was this patch tested?
a new test case.

cc @Ngone51 @pgandhi999 @squito @jiangxb1987 @zsxwing
I think this is a more robust fix.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9910/
Test PASSed.

Test build #104587 has started for PR 24375 at commit 9a7b053.

Test build #104587 has finished for PR 24375 at commit 9a7b053.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104587/
Test FAILed.

Retest this please.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9920/
Test PASSed.

Test build #104598 has started for PR 24375 at commit 9a7b053.

Test build #104598 has finished for PR 24375 at commit 9a7b053.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104598/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9932/
Test PASSed.

Test build #104611 has started for PR 24375 at commit eb427f7.

Yes it's kind of a variant of #21131. This PR covers the corner case that, an active TaskSetManager hasn't been created when a previous task succeed.
There is a corner case that is un-fixable: when a task from a zombie TSM completes, the active TSM has already submitted the task for the same partition. #21131 doesn't cover it, and this PR doesn't cover it either. But this PR does make it more likely to happen, because we go through the event loop, so the active TSM takes longer to know that a partition has completed.
Maybe we can combine the solution? e.g. when a task from zombie TSM completes, notify the active TSM immediately. Later the DAGScheduler notify the active TSM again, in case it was not created when the task from zombie TSM completes.

The issue cannot be 100% eliminated. Let's say task set 1.0 (zombie) has a running task for a partition, and task set 1.1 (active) has already submitted the task for the same partition and completed. Then there is nothing we can do.

Though we have nothing to do with finding 1, but what's wrong with it ?
task in TSM 1.1(active) submitted and completed successfully, and TSM 1.0(zombie) has a running task for the same partition. So, task in TSM 1.0 (zombie) would fail later, but it do not have any impact on TSM 1.1(active), and TSM 1.0/1.1 would both finished normally.

I think we are discussing the optimization(saving resource) instead of bug? Nothing will go wrong even without #21131

So, task in TSM 1.0 (zombie) would fail later

To correct, I don't think it will fail. It just gets ignored.

Test build #104611 has finished for PR 24375 at commit eb427f7.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104611/
Test FAILed.

retest this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9942/
Test PASSed.

Test build #104620 has started for PR 24375 at commit eb427f7.

Test build #104620 has finished for PR 24375 at commit eb427f7.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104620/
Test PASSed.

Yes it's kind of a variant of #21131. This PR covers the corner case that, an active TaskSetManager hasn't been created when a previous task succeed.

Does this pr really cover the corner case ? Do I miss something ?

That said, this PR tries to avoid the worst case described above. Even if we go through the event loop now, I don't think it will take a very long time that the task from the active TSM have already re-tried 3 times.

Yeah, I think this pr could avoid the worst case event if we go through the event loop. But, doesn't #21131 could do it either ? What's the advantage compares to #21131 ?

Maybe we can combine the solution? e.g. when a task from zombie TSM completes, notify the active TSM immediately. Later the DAGScheduler notify the active TSM again, in case it was not created when the task from zombie TSM completed.

I'm neutral on combining the solution since we're doing optimization(saving resource) instead of bug. Though, I'm wodering whether it would do a good help.

But, doesn't #21131 could do it either ? What's the advantage compares to #21131 ?

#21131 did not cover the corner case, that's why we open #23871 . Do I miss something? Maybe you were asking why I prefer this PR over #23871 . The reason is, we don't need to sync the states between DAGScheduler and TaskSchedulerImpl, which is fragile to me.

I've updated the PR description, to make it clearer about what the problem is and why propose this fix.

No, I'm asking "does this pr really covers the corner case that an active TaskSetManager hasn't been created when a previous task succeed." If does, how ? Because I didn't see it from the code.

I've added it to the PR description. let me quote it here

This fix covers the corner case, because:

If DAGScheduler gets the task completion event from zombie TSM before submitting the new stage attempt, then DAGScheduler knows that this partition is completed, and it will exclude this partition when creating task set for the new stage attempt. See DAGScheduler.submitMissingTasks
If DAGScheduler gets the task completion event from zombie TSM after submitting the new stage attempt, then the active TSM is already created.

Oh, yes, I get to know how this pr could fix the corner case and work finally. It's really a good solution. And now, I would suggest not combine #21131.

@cloud-fan I tested the PR a couple of times, tests look good. LGTM.

LGTM

So currently there are three places that tracks the partition status:

The MapStatusTracker keeps track of all shuffle partitions, it get updated by DAGScheduler.handleTaskCompletion(), and on FetchFailed it remove the corresponding shuffle partitions;
The ShuffleMapStatus keeps track of pendingPartitions itself, it's actually a fork of MapStatusTracker, and get cleared on stage submitted;
The TaskSetManager keeps track of pending and running tasks, when the number of successful tasks reaches the target number then it mark the TSM (eg. a stage attempt) as successful.

It shall be ideal that we keep track of the pending partitions of each stage in a data structure and update it in a synchronous way. The major problem here is that the DAGScheduler rely on MapStatusTracker to read the shuffle partitions statuses, which is updated asynchronously.
If we don't want to make major change to current infrastructure, the best approach I can think of is to just let DAGScheduler make all the final decision whether a stage has been completed, and all TSM shall update their own status according to that. The only shortcoming here is just there is a time window that some TSM(s) has finished all the tasks but the MapStatusTracker is not yet updated, in this case we shall see unnecessary tasks still running. To further avoid this case we can implement another approach that Wenchen suggested -- To have a status cache for TSM, when a task from zombie TSM completes, notify the active TSM immediately.

The PR looks good from my side. The only concern I have is whether we shall backport this to 2.4? I know the previous PRs are backported, but my feeling is, strictly speaking the PR is a improvement instead of a bugfix, and it's making major change to a relatively critical and fragile part of Spark. Considering there has been one instance that a PR has caused regression of 2.4.1,  personally I would suggest we be more conservative and only include this in master branch. Anyway it's just my two cents, feel free to correct me @squito @cloud-fan

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/10049/
Test PASSed.

Test build #104735 has started for PR 24375 at commit a58ac94.

Test build #104735 has finished for PR 24375 at commit a58ac94.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104735/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/10052/
Test PASSed.

Test build #104738 has started for PR 24375 at commit b148c6f.

Test build #104738 has finished for PR 24375 at commit b148c6f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104738/
Test PASSed.

cc @dbtsai

Retest this please.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/10100/
Test PASSed.

Test build #104789 has started for PR 24375 at commit b148c6f.

Test build #104789 has finished for PR 24375 at commit b148c6f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104789/
Test PASSed.

retest this please

Test build #104980 has started for PR 24375 at commit b148c6f.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/10282/
Test PASSed.

Test build #104980 has finished for PR 24375 at commit b148c6f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104980/
Test PASSed.

thanks, merging to master!


Fix for Casing problems Nugets

:sparkles: What kind of change does this PR introduce? (Bug fix, feature, docs update...)
Bug Fix:
When someone adds a nuget with dotnet add and gets the casing wrong, it will be added with the wrong casing to the csproj file and Nukeeper won't recognize it for updates.
Example:
dotnet add package newtonsoft.json -v 8.0.1
will add it as
<PackageReference Include="newtonsoft.json" Version="8.0.1" />
to the .csproj file.
Visual Studio has no problem with that but NuKeeper tries to match it to "Newtonsoft.Json" and does not recognize it.
:arrow_heading_down: What is the current behavior?
NuKeeper does not update nugets where the casing is wrong in the .csproj file
:new: What is the new behavior (if this is a feature change)?
NuKeeper will update nugets where the casing is wrong in the .csproj file because the checks have been made case-insensitive.
:boom: Does this PR introduce a breaking change?
 Feels like it should respect the casing defined by package author when saving it in the project file. Maybe create an issue for that?

The solution proposed should make it foolproof  (until they invent a bigger fool  😄 )

The solution proposed should make it foolproof (until they invent a bigger fool 😄 )


Lagon runtime support

Hello! I would like to discuss how we can land Lagon support on Hono. It's an open-source runtime and platform specifically made for the edge, similar to CF Workers / Deno Deploy, bootstrapped and driven by the community.
Some notes:

We can detect the runtime (https://github.com/honojs/hono/pull/644) using !!globalThis.__lagon__
I have already created an issue on Lagon repo to track the progress
It might be a good idea to add an example on both Hono examples repo and Lagon examples directory
Lagon implements the native Web APIs and follows WinterCG conventions

You can already test locally using the CLI (npm i -g @lagon/cli, and feel free to DM me if you want to try the cloud version), here is an example of the "Hello World" showcased on the website and adapter for Lagon:
import { Hono } from 'hono'

const app = new Hono()
app.get('/', (c) => c.text('Hello! Hono!'))

export const handler = app.fetch

Hi @QuiiBz !
Ultra cool!! It works on my machine!! Yes, let's go ahead.

Cool! Do you have a test suite that we could use to run Lagon on? I would happily create a PR at https://github.com/honojs/honojs.dev to add some documentation.

Currently, there is no lagon test command built-in. We can't use a jest environment, because the code will still run inside Node. I see two options for this:

Create a lagon test command that will wrap your code inside a handler function and run it (but I'm not sure if we can bundle Jest inside a non-node environment)
Use lagon dev and perform HTTP queries on the dev server to check for proper responses (similar to the test in the example mentioned above)

I'll try each built-in middleware and see if there are any issues.

Update on middlewares, I've tested most of the feature and middlewares built-in into Hono, using lagon dev and running Jest to make HTTP requests on the Lagon dev server:

The ETag middleware isn't working because CryptoSubtle#digest doesn't supports SHA-1 yet https://github.com/lagonapp/lagon/issues/400
The Cache middleware isn't working because the Cache API has not been implemented yet https://github.com/lagonapp/lagon/issues/401
The serve static middleware is useless in Lagon. You can specify an assets directory (defaults to public if exists) using -p <directory>/--public <directory> to serve static assets

@QuiiBz Thanks!
If so, you can write the documentation on the website. Please specify that some middleware doesn't work as you have looked into it. I think it's good that you place it after the Bun section in "Getting Started".

PR is always welcome.

And about the test. This is just a request. I think lagon test command or a jest environment would be great for the developer. Including me:)


Include httpclient5-fluent in what we load parent-first

Resolves #57.
When run without something like
export PACT_DO_NOT_TRACK=true

we get a stack trace from the pact-provider extension. The classes which are loaded parentfirst try to find the Apache Request class, but can't. I'm reluctant to add more classes to the parent first list in case it interferes with other libraries, and this stack trace is apparently harmless ... but it is noisy.
Hopefully once we have more control over the JUnit classloader we can remove everything from the parent-first section.

This also resolves grumpy warnings from the CI. Compare https://github.com/quarkiverse/quarkus-pact/actions/runs/4789411531 (with 6 errors in the 'Annotations' section) and the build for this change.


Feature Request: Support local run, so it's necessary to import replaced modules with self:: prefix.

Currently, we'll get the error like following:
error[E0659]: `memoise` is ambiguous
 --> src/bin/main_equiped.rs:3:5
  |
3 | use memoise::memoise;
  |     ^^^^^^^ ambiguous name
  |
  = note: ambiguous because of multiple potential import sources
  = note: `memoise` could refer to a crate passed with `--extern`
  = help: use `::memoise` to refer to this crate unambiguously
note: `memoise` could also refer to the module imported here

To suppress these, we can add self:: for them.

For normal imports, we need to replace only if it's not excluded.


Make GitRefs backward comp

Fix https://github.com/huggingface/huggingface_hub/issues/1956 (cc @PhilipMay)

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Enabling redis fails

Hi!
Enabling redis fails when trying to setup on a new server (Ubuntu 20.04.4 LTS (GNU/Linux 5.4.0-122-generic x86_64)).
Here are the errors:
- Installing redis-server                               [ DONE ]
Synchronizing state of redis-server.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable redis-server
Job for redis-server.service failed because a timeout was exceeded.
See "systemctl status redis-server.service" and "journalctl -xe" for details.
sed: -e expression #1, char 76: unknown option to `s'
Job for redis-server.service failed because a timeout was exceeded.
See "systemctl status redis-server.service" and "journalctl -xe" for details.

Output of systemctl status redis-server.service
● redis-server.service - Advanced key-value store
     Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
     Active: activating (start) since Sat 2022-10-01 14:50:43 UTC; 50s ago
       Docs: http://redis.io/documentation,
             man:redis-server(1)
Cntrl PID: 58607 (redis-server)
      Tasks: 4 (limit: 2274)
     Memory: 1.6M
     CGroup: /system.slice/redis-server.service
             └─58607 /usr/bin/redis-server *:6379

Oct 01 14:50:43 zurbox systemd[1]: Starting Advanced key-value store...
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:C 01 Oct 2022 14:50:43.558 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:C 01 Oct 2022 14:50:43.559 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=58607, just started
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:C 01 Oct 2022 14:50:43.560 # Configuration loaded
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:M 01 Oct 2022 14:50:43.565 * Running mode=standalone, port=6379.
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:M 01 Oct 2022 14:50:43.565 # Server initialized
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:M 01 Oct 2022 14:50:43.565 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot>
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:M 01 Oct 2022 14:50:43.566 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'ec>
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:M 01 Oct 2022 14:50:43.568 * Ready to accept connections

Hi,
I can't replicate this issue, but the redis-server service seems to be running:
Oct 01 14:50:43 zurbox redis-server[58607]: 58607:M 01 Oct 2022 14:50:43.568 * Ready to accept connections
Maybe related to memory limit? https://github.com/docker-library/redis/issues/14

Hi! I have pushed some fixes related redis installer.


[package] Replace got with undici

This could improve deno and bun compatibility and might offer slight improvements to performance.
https://github.com/nodejs/undici

Or with ky, which apparently works with bun
https://github.com/sindresorhus/ky


Create Plugin for stable-diffusion-webui

TODO: Will add details later

This would be awesome!

closing this in favor of #25


Handle ACDD publisher_type and publisher_email

Maybe they could be hardcoded in nc_to_mmd.py or defined based on the collection field.

These are not used in MMD. Only available in the nc-file.


add test case to verify that WriteStream interface can return the err…

Dear maintainers,
This PR is to add a test case which is to verify the return value when gets an error from the reader in WriteStream interface.
Please help to check it and welcome your suggestions. Thanks.

@hopkings2008 : there are some test failures :crying_cat_face:

@RichardScothern ，thanks for your checking,  rados driver is failed in this test case. I will check it.

Current coverage is 53.38%

Merging #1426 into master will decrease coverage by -3.91% as of e47eff0

@@            master   #1426   diff @@
======================================
  Files          124     124
  Stmts        12084   10409   -1675
  Branches       841     733    -108
  Methods          0       0
======================================
- Hit           6923    5557   -1366
+ Partial        841     733    -108
+ Missed        4320    4119    -201

Review entire Coverage Diff as of e47eff0

Uncovered Suggestions

+0.19% via .../driver/s3-aws/s3.go#240...259
+0.17% via ...ge/driver/gcs/gcs.go#471...488
+0.16% via ...ge/driver/oss/oss.go#150...166
See 7 more...

Powered by Codecov. Updated on successful CI builds.

Dear maintainers,
Please check this test case again. The test case will not run in short mode. And i have amended the rados storage driver in this case that if the rados failed to read from readstream, the driver's delete interface will not remove the uncompleted file.

@stevvooe , thanks for your checking and suggestion. And i have amended the PR, below is the behavior of rados in this testcase:
If rados fails to read data from readstream in writestream operation, the delete interface will remove the uncompleted path and return an error.
Please help to check this PR again, thanks a lot.

@stevvooe , i have added the error log when deleteoid failed also, add the condition that the delete error happens when fail to get total size of the object. Please check it, thanks.

LGTM

@RichardScothern , please check this PR again.

Dear maintainers,
Please check this PR again, i have amended the PR according to the @RichardScothern 's suggestion.
And @RichardScothern , if you have time, please check this again, thanks a lot.

Dear maintainers,
Could you please check this PR again? and welcome your suggestions. Thanks.

ok @hopkings2008 this LGTM.  Just needs a rebase.

@RichardScothern , thanks for your checking. I will rebase my change. Just see that some interfaces of storage driver are changed. I will check it and change accordingly.

Dear maintainers, I will close this PR since the driver interfaces has changed.


Could not find .tflint.hcl config file in the parent folders when using TERRAGRUNT_DOWNLOAD env

Reproducer:
mkdir demo
mkdir -p modules/foo
touch modules/foo/main.tf
cat > demo/.tflint.hcl <<-END
  config { format = "compact" }
END
cat > demo/terragrunt.hcl <<-END
  terraform {
    source = "../modules//foo"
    before_hook "lint" {
      commands = ["validate"]
      execute  = ["tflint"]
    }
  }
END
TERRAGRUNT_DOWNLOAD=/tmp/.terragrunt-cache terragrunt validate --terragrunt-working-dir demo

Fix released in https://github.com/gruntwork-io/terragrunt/releases/tag/v0.44.5

v0.49.1, this still happens even if TERRAGRUNT_DOWNLOAD is used.


Add functions for blackout window and a compliance summary

@seedb  I'm going to close this PR for now as I'm re-writing the architecture for the 3.0 release (to be compatible with both the older and newer API suite). Moving forward, this makes the commands much easier to maintain by abstracting the API pieces into a separate file. ❤


Multithreaded WSGI apps seem to block

Steps to reproduce the problem:
In Netlib, it looks like multithreading is enabled on the WSGIAdaptor class that mitmproxy uses: https://github.com/mitmproxy/netlib/blob/master/netlib/wsgi.py#L53
However a simple Flask app that should be able to take advantage of thread switching seems to block on a single thread (and block the main mitmproxy threads as well, making the console UI non-responsive): https://gist.github.com/zbuc/9ae9aed56914df70f462
What is the expected behavior?
You should be able to access the main index page while waiting on the thread running /slow to sleep.
What went wrong?
The main index (and the main mitmproxy UI) go non-responsive until /slow finishes loading

mitmproxy version: 0.11.4
Operating System: Mac OS X 10.10.2

Thanks for the excellent report. We currently have the @concurrent decorator for inline scripts, but as you pointed out, wsgi apps are still single-threaded. Wrapping this code in a separate thread should be sufficient. We'll fix that for the next release, but it may take a bit as @cortesi and I are fairly busy at the moment. As always, PRs in the meantime are appreciated. :smiley:
Cheers,
Max

Fixed!


wget no longer available

Hi,
Migrating to a new chromebook with Version 65.0.3319.0 (Official Build) dev (64-bit).  I get a wget not found error.  Seems that this is no longer available in chromeos and needs to be replaced with curl.
crouton-fedora-master/installer/main.sh: 16: crouton-fedora-master/installer/../installer/fedora/bootstrap: wget: not found

I have this issue as well

Build the github project chromebrew. and then type: crew install wget.

This is really old.  The current version of crouton-fedora uses curl.


Multiple Monitor Management.

Description of the new feature / enhancement
Being able to easily switch windows (with all of the other features in PowerToys e.g FancyZones).
Scenario when this would be used?
As a power user, it would be incredibly helpful to be able to seamlessly switch between monitors without breaking focus/workflow.
Supporting information
No response

Could you please explain a bit bette what exactly you want?

Issue is a duplicate
Thank you for your issue! We've linked your report against another issue #13036
Thanks for helping us to make PowerToys a better piece of software.


Firewall Rule Processing Logic

Hello Microsoft,
1.The example table in this section
https://learn.microsoft.com/en-us/azure/firewall/rule-processing#rule-processing-using-firewall-policy
is unclear on inheritance as well as which Rules fall under which Rule Collection /which Rule Collections fall under which Rule Collection Groups.
A diagram like here would simplify the scenario: https://learn.microsoft.com/en-us/azure/firewall/policy-rule-sets
2.Further,in table above,the line

AppRCG2
Application rule collection
1200
2
Parent policy

Needs to mention Application rule collection Group.
3.Is the last column(Inherited from) having correct rows referencing Inherited from Parent?
I assume the children should say inherited from parent(hence point 1 where diagram would make scenario much clearer)
4.The NOTE in section states:
Application rules are always processed after Network rules, which are processed after DNAT rules regardless of Rule collection group or Rule collection priority and policy inheritance.
I think this needs clarification.

-Is Rule Collection Group priority irrelevant? (I understand NO ;IT IS RELEVANT)
-Is Rule Collection priority only relevant within multiple DNAT/multiple Network/multiple Application Rules? (I understand YES)
-Are we saying that DNAT rules in child policy will be processed before Network/Application rules in parent policy? (I understand NO)
-Would this understanding be correct for Processing Logic?

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

ID: 6392b4a0-fa1e-fe5e-a31b-1eee48b860ef
Version Independent ID: 551028da-b651-30ac-0e77-9ee5eebf6bb0
Content: Azure Firewall rule processing logic
Content Source: articles/firewall/rule-processing.md
Service: firewall
GitHub Login: @vhorne
Microsoft Alias: victorh

@adi-garg , thank you for your feedback. We have assigned this to the content owner/author for review.
@vhorne , for your review.

Thank you for your dedication to our documentation.
Unfortunately, we have been unable to review this issue in a timely manner. We sincerely apologize for the delayed response. We are closing this issue. If you feel that the problem persists, please respond to this issue with additional information.
Please continue to provide feedback about the documentation. We appreciate your contributions to our community.
#please-close


Bug client can not connect: SocketException: No route to host (OS Error: No route to host, errno = 113)

E/flutter (  647): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: SocketException: No route to host (OS Error: No route to host, errno = 113)
E/flutter (  647): #0      _NativeSocket.startConnect (dart:io-patch/socket_patch.dart:719:35)
E/flutter (  647): #1      _NativeSocket.connect (dart:io-patch/socket_patch.dart:982:12)
E/flutter (  647): #2      _RawSocket.connect (dart:io-patch/socket_patch.dart:1865:26)
E/flutter (  647): #3      RawSocket.connect (dart:io-patch/socket_patch.dart:21:23)
E/flutter (  647): #4      Socket._connect (dart:io-patch/socket_patch.dart:2090:22)
E/flutter (  647): #5      Socket.connect (dart:io/socket.dart:750:21)
E/flutter (  647): #6      _ConnectWidgetState._onClickConnect (package:netshare/ui/client/connect_widget.dart:140:35)
E/flutter (  647): #7      _ConnectWidgetState._buildMainLayout.<anonymous closure> (package:netshare/ui/client/connect_widget.dart:94:36)
E/flutter (  647): #8      _InkResponseState.handleTap (package:flutter/src/material/ink_well.dart:1154:21)
E/flutter (  647): #9      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:275:24)
E/flutter (  647): #10     TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:654:11)
E/flutter (  647): #11     BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:311:5)
E/flutter (  647): #12     BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:281:7)
E/flutter (  647): #13     GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:167:27)
E/flutter (  647): #14     GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:469:20)
E/flutter (  647): #15     GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:445:22)
E/flutter (  647): #16     RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:331:11)
E/flutter (  647): #17     GestureBinding._handlePointerEventImmediately (package:flutter/src/gestures/binding.dart:400:7)
E/flutter (  647): #18     GestureBinding.handlePointerEvent (package:flutter/src/gestures/binding.dart:363:5)
E/flutter (  647): #19     GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:320:7)
E/flutter (  647): #20     GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:293:9)
E/flutter (  647): #21     _invoke1 (dart:ui/hooks.dart:186:13)
E/flutter (  647): #22     PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_dispatcher.dart:423:7)
E/flutter (  647): #23     _dispatchPointerDataPacket (dart:ui/hooks.dart:119:31)
E/flutter (  647):

Caused by router's issue. After changing another one, it works as expected. Closing

Caused by using diff network router. After using the same router for both client and server, it works as expected


Remove docker build tag for darwin builds

What does this PR do?
This PR removes the docker build tag for darwin builds. When instantiating the process-agent, it performs a containers check in order to auto-enable containers collection on the host. Currently, there's no ContainerImplementation for darwin which makes the process-agent crash on macOS when running alongside docker.
Motivation
The process-agent crashes on macOS when Docker is also running on the host
panic: Trying to get nil ContainerInterface
goroutine 1 [running]:
github.com/DataDog/datadog-agent/pkg/util/containers/providers.ContainerImpl(...)
	/private/var/cache/omnibus/src/datadog-agent/src/github.com/DataDog/datadog-agent/pkg/util/containers/providers/provider.go:20
github.com/DataDog/datadog-agent/pkg/util/docker.(*DockerUtil).ListContainers(0xc00014c000, 0xc0001d3010, 0xc0007ca600, 0x17, 0x1, 0xc0007ca600, 0x17)
	/private/var/cache/omnibus/src/datadog-agent/src/github.com/DataDog/datadog-agent/pkg/util/docker/containers.go:40 +0x121b
github.com/DataDog/datadog-agent/pkg/util/containers/collectors.(*DockerCollector).List(0xc00070d640, 0xc0007ca600, 0x17, 0x0, 0x0, 0x0)
	/private/var/cache/omnibus/src/datadog-agent/src/github.com/DataDog/datadog-agent/pkg/util/containers/collectors/docker.go:43 +0x37
github.com/DataDog/datadog-agent/pkg/process/util.GetContainers(0xc0007a1d28, 0x400e816, 0xc0007028e0, 0x20, 0x20)
	/private/var/cache/omnibus/src/datadog-agent/src/github.com/DataDog/datadog-agent/pkg/process/util/containers.go:62 +0x5fa
github.com/DataDog/datadog-agent/pkg/process/config.NewAgentConfig(0x6158797, 0x7, 0x618a402, 0x1f, 0x6196b39, 0x24, 0xd0, 0xd0, 0x5f17500)
	/private/var/cache/omnibus/src/datadog-agent/src/github.com/DataDog/datadog-agent/pkg/process/config/config.go:302 +0x34
main.runAgent(0xc0003d60c0)
	/private/var/cache/omnibus/src/datadog-agent/src/github.com/DataDog/datadog-agent/cmd/process-agent/main_common.go:95 +0x9f
main.main()
	/private/var/cache/omnibus/src/datadog-agent/src/github.com/DataDog/datadog-agent/cmd/process-agent/main.go:24 +0x3b8

Additional Notes
Anything else we should know when reviewing?
Describe your test plan
Write there any instructions and details you may have to test your PR.

@mbotarro
the osx_test linter is failing with this error
golangci-lint run --timeout 10m0s -c .golangci.yml --build-tags 'fargateprocess etcd jmx apm zk python kubeapiserver gce ec2 kubelet orchestrator consul process clusterchecks secrets zlib dovet' ./pkg/...
pkg/tagger/collectors/common.go:24:6: `retrieveMappingFromConfig` is unused (deadcode)
func retrieveMappingFromConfig(configKey string) map[string]string {
     ^
pkg/tagger/collectors/const.go:30:2: `dockerLabelEnv` is unused (deadcode)
	dockerLabelEnv     = "com.datadoghq.tags.env"
	^
pkg/tagger/collectors/const.go:31:2: `dockerLabelVersion` is unused (deadcode)
	dockerLabelVersion = "com.datadoghq.tags.version"
	^
pkg/tagger/collectors/const.go:32:2: `dockerLabelService` is unused (deadcode)
	dockerLabelService = "com.datadoghq.tags.service"
	^
pkg/tagger/collectors/common_test.go:17:6: `requireMatchInfo` is unused (deadcode)
func requireMatchInfo(t *testing.T, expected []*TagInfo, item *TagInfo) bool {
     ^
pkg/autodiscovery/listeners/common.go:69:6: `getCheckNamesFromLabels` is unused (deadcode)
func getCheckNamesFromLabels(labels map[string]string) ([]string, error) {
     ^

Instead of removing the docker build tag from darwin builds, we can prevent the docker collector from registering itself in the default catalog. This won't make Mac OS linter tests fail.
https://github.com/DataDog/datadog-agent/pull/7085

Instead of removing the docker build tag from darwin builds, we can prevent the docker collector from registering itself in the default catalog. This won't make Mac OS linter tests fail.
https://github.com/DataDog/datadog-agent/pull/7085


adding a fix to support variables as params

What makes this PR
close #84
This does work:

   @inlinedImage('https://picsum.photos/200/300')

This does NOT work:

   @php $src = 'https://picsum.photos/200/300' @endphp
   @inlinedImage($src)

As far as I understand any service provider is executed too early in an application lifecycle, so it cannot evaluate a variable value that is set in a controller.
To solve this all the code is now executed at the same time to be executed in the blade file directly.
The solution is probably not so elegant, but solves both cases, static strings and variables as params
Explanation with the solution
https://www.loom.com/share/00cc167045d04310ae194ac2af157d07?sid=a984958f-c830-4077-b263-684eda2378d6
@freekmurze if you can imagine a better solution I would be glad to implement it, thanks

There's now quite some duplication in the try/catch block which makes it hard to see what exactly is being catched.
Refactor this so that a variable $content is being set in the try/catch block. Under the try/catch block return the full image HTML. This will make it more readable.

Hi @freekmurze I found a complicate scenario that is why the code is written in this way, with the current code in main branch:
@inlinedImage('assets/images/logo.png')

Works as this code inside the package service provider is getting:
Blade::directive('inlinedImage', function ($url) {
    dd($url); // returns the string "assets/images/logo.png"
});

But with a variable from a controller or using php directive to set it:
@php $image = 'assets/images/logo.png'; @endphp

@inlinedImage($image)

It returns the variable name as a string
Blade::directive('inlinedImage', function ($url) {
    dd($url); // returns the string "$image"
});

I think this is a limitation I think because it is too early in the application lifecycle, so a variable is replaced I think when Blade compiles, that is why I had to set all the code at once.
If I set a $content variable if a file_content at that moment in the runtime (with a variable param) the code would execute something like this:
$content = base64_encode(file_get_contents(asset("$url")));
// or
$content = base64_encode(Http::get("$url"));

I think I did not miss anything, I would be looking forward your feedback, and thanks!

The Last commits make @inlinedImage:
[x] Works with static string as params
[x] Works with variables as params
[x] Cleanup Blade Directive Code
[x] Always returns an exception if an image fails to fetch (absolute path) or is not found (relative path)
Demo
https://www.loom.com/share/a7a760129c93452cb1006ff4cf21de53?sid=73be0c89-de9b-4367-aa6a-8b4c5118bdc1
It should close #84

Hi @freekmurze I know that you are probably a lot more busy, if you have any chance to check these new changes that add tests to generate images for headers and footers please let me know.
I am glad to help and if there is any feedback it would be welcome, I let you know how ingenious looks the workbench implementation is to test generated files from the package.

Thanks! I'll check on main if the tests pass there.

The tests are failing, could you send another PR to fix them?


Update CNN tutorial notebook to reflect recent changes in nolearn.

List of changes:

Use inbuilt L2 regularization (no more custom objective function in notebook)
visualize architecture
plot gradients
minor adjustments in text

Great, thanks!  I'll hold off with merging in case this requires changes in #252.


Loosen content-type check to allow MIME type parameters

I've noticed that the generated Wirespec response mapper handles the content type very strictly:
fun <B> RESPONSE_MAPPER(contentMapper: Wirespec.ContentMapper<B>) = { response: Wirespec.Response<B> ->
    when {
        response.status == 200 && response.content?.type == "application/json" -> ...
    }
}

It checks for an exact match. However, according to the specification (https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types), a MIME type can also have parameters, such as a charset. For example:  application/json; charset=UTF-8.
The current implementation would lead to an error in the response mapper when encountering such a MIME type.
Is it possible to loosen the content-type check?

We are dropping MIME_types altogether. This should not be a concern of wirespec and can be taken into account while mapping the requests/responses in your application. This should loosen up the check :)


Add tail sampling example

Adding a Kubernetes-based tail sampling example to the other-examples directory.  If there is a better spot for this, please let me know!

Discussed internally. Closing because this is not aligned with the repository's scope as defined in the contribution criteria.


Add chapter on using HLSL with Vulkan

This PR adds a new chapter on how to use HLSL with Vulkan. It contains some background information, syntax comparison, etc. It's meant as a general overview to let people know that HLSL is a first-class language in Vulkan.
I also added a shader model coverage table. Please note that I'm not too knowledgeable with HLSL's shader model to it may not be 100% complete or correct. I'm also not sure if we should explicitly mention extensions in there, as I did with SM6.6. But maybe we can build on this and improve the table over time.
Since this is my first chapter for the guide, I hope my stile of writing is fine and fits into the guide. I'm not a native speaker, so wording may sound odd in places and I bet there are commas in places where they don't belong ;)
Any feedback is appreciated :)
Fixes #122

I used Direct3D in a first draft, but even Microsoft refers to DirectX:
"HLSL is the C-like high-level shader language that you use with programmable shaders in DirectX." (from the official MS page for HLSL)


Do you have a more detailed tutorial on how to use it

Thank you for your comment.
This repository is still under development, so the tutorial is not well-organized yet. The usage might change with future updates, but here is a simple guide on how to use it:

Clone as a submodule

Clone this library as a submodule into the root of your project to make it easier to use:
git submodule add https://github.com/kage1020/Action-Segmentation-Utilities.git asu

This will create an asu folder in the root. You can also rename and place the cloned folder as needed.

Install poetry/dependencies

This repository uses Poetry, so it's recommended to install it. pip is also possible.
poetry install
# or
pip install -r requirements.txt

Run code

After that, you can write code like the following to start training:
from asu.base import Base, Config
from asu.manager import HydraManager
from asu.loader import BreakfastDataLoader
from asu.trainer import ASFormerTrainer, ASFormerCriterion, ASFormerOptimizer, ASFormerScheduler
from asu.models import ASFormer
from asu.evaluator import Evaluator

@HydraManager()
def main(cfg: Config):
    ctx = Base()
    dataloader = BreakfastDataLoader(cfg)
    model = ASFormer()
    model = Base.load_best_model(
        model, f"{cfg.base_dir}/{cfg.model_dir}", ctx.get_device(cfg.device)
    )
    criterion = ASFormerCriterion(
        num_classes=len(train_loader.str_to_int), mse_weight=0.15
    )
    optimizer = ASFormerOptimizer(model, lr=cfg.lr, weight_decay=cfg.weight_decay)
    scheduler = ASFormerScheduler(optimizer, mode="min", factor=0.5, patience=3)
    evaluator = Evaluator(backgrounds=cfg.backgrounds)
    trainer = ASFormerTrainer(
        cfg, model, criterion, optimizer, scheduler, evaluator
    )

    trainer.train(train_loader, test_loader)

if __name__ == "__main__":
    main()

Since it's not fully verified, please create an Issue or PR if you have any problems. We plan to update the documentation by August.

I've added the README, so I close this issue for now. If you have any questions, feel free to leave a comment.


Update package.json to Latest Mobx Angular

Hi,
mobx Angular changed its package.json name and now the dependencies are broken :frowning_face:
it's been changed to: mobx-angular in 1.3.0
Thank you :smile:

Fixed in #246 and will be released in the coming version

Fixed in 3.3.0


Debug messages

We have a --debug flag, but need to add useful debug messages throughout the various commands being run.

@garethr  can you clarify the requirement a bit more ?


Smartmeterobis: No or too long answer from Serial Device after last request.

err Error: No or too long answer from Serial Device after last request.
at SerialResponseTransport.handleSerialTimeout (/home/Consolino2IPFS/node_modules/smartmeter-obis/lib/transports/SerialResponseTransport.js:292:36)
at Timeout._onTimeout (/home/Consolino2IPFS/node_modules/smartmeter-obis/lib/transports/SerialResponseTransport.js:245:18)
at listOnTimeout (node:internal/timers:557:17)
at processTimers (node:internal/timers:500:7)
err Error: No or too long answer from Serial Device after last request.
at SerialResponseTransport.handleSerialTimeout (/home/Consolino2IPFS/node_modules/smartmeter-obis/lib/transports/SerialResponseTransport.js:292:36)

lets call it a "glitch"


Resume a training restarting with a different learning rate ?

Is it possible to resume a training restarting with a different (higher) learning rate ?
In the log, it seems the initial training is launched with LR=2, isn't it ? How to understand the values on this curve ?

Hi @EtienneAb3d
now with v4 you can restart a training from an already existing model with option --from-model. You can also change every possibile option of the underlying fairseq-train, including learning rate!
Thanks for your patience with this.


Request: libwebp.js

Hello Saschanaz... thank you for this awesome lib... I've used it to lossy compressed images and compare them to WebP. And it works perfectly, I just wanted to ask if you could do the same for WebP format (an in-browser encoder) they seem to already have a decoder in their repo... Perhaps you could also do one for mozjpeg and bundle all these libs into one awesomecore library WebImageCodecs. Would be glad to see the WebP wasm/asm.js version. Thanks

It seems there already is one: http://libwebpjs.appspot.com/ which supports encoding.

Yes... thanks for even looking the idea up... really appreciate it. I had already checked that out. A few things about it are:

No WASM or ASM.JS implementation (it is 100% JS, :-1: in performance)
No GitHub Repo or Source Code ( Check his repos
He hand ports most of his ported projects, which means they don't really follow upstream releases

Hmm, so it seems worth trying, although currently I don't have enough interest to work on it...

I perfectly understand... probably at ur free time... will keep checking ur repos to see when its done though :)


Update chloropleths with new datasets

Description
green_measures_itl_2_code_chloropleth.html couldn't be updated using the latest dataset - not sure why but there was a bug
Fixes # (issue)
Instructions for Reviewer
In order to test the code in this PR you need to ...
Please pay special attention to ...
Checklist:

[ ] I have refactored my code out from notebooks/
[ ] I have checked the code runs
[ ] I have tested the code
[ ] I have run pre-commit and addressed any issues not automatically fixed
[ ] I have merged any new changes from dev
[ ] I have documented the code

[ ] Major functions have docstrings
[ ] Appropriate information has been added to READMEs

[ ] I have explained this PR above
[ ] I have requested a code review

@lizgzil I made a little change to your regional analysis notebooks and was able to product the green_measures_itl_2_code_chloropleth.html graph - do take a quick look about my changes but I think we're in business!

thanks @india-kerle - this looks good - I've updated the images in the viz folder


Added ability to center x axis on scatter chart

This should resolve #2950, allowing the x axis to be set down the center of the graph. Also works with scatter plots.

I think we should add a test for this case. Should we support centerVertical as well for completeness?

@Joshuabaker2 just checking. Did you see my earlier comment?

Ah, apologies - I did not. I unfortunately don't have the time to do these suggestions right now (although I think they are good suggestions).
I can take another look at this when I have some more free time - I'm not certain off the top of my head when that might be though.
I've also allowed edits from maintainers for my branch in case you or one of the other maintainers would like to take a shot at it in the meantime.

ok, no worries. I'll leave this open for now :smile:

Closing as out of date


user guides: Section on best practices

It would be great to include a best practices section and it can also be used as something to link to our users when they are just starting out.
We could include things like:

unbound high cardinality
when to use ServiceMonitor vs PodMonitor
symptom vs cause-based Alerting
etc.

IMHO these are topics mostly relevant for the Prometheus Operator and should simply live in that repository.
Only if something doesn't belong in either repository docs, then we put it here, I'd say.
For example, list of talks and videos.

Would you want them to land on the webpage in the end?
Happy to do either, we can always transfer issue to Prometheus operator repo.

Yeah, I think it should be in the Prometheus Operator repository and then simply pulled in by the website during build-time.


Fix the wrong path of ApplicationSerializer file.

ApplicationSerializer's file path application/serializer.js should be serializers/application.js

Thanks!


[NEW GAME]: Simon Says (Advanced Version)

Simon Says (Advanced Version)
Project Overview
Simon Says (Advanced Version) is an engaging memory game that challenges players to remember and replicate increasingly complex sequences of colors and sounds. Players must follow the pattern shown by the game, pressing the corresponding buttons in the correct order. The game features multiple colors and patterns, increasing in difficulty as players progress through levels.
Key Features

Enhanced Memory Challenge: Players must remember longer and more intricate sequences of colors.
Visual and Audio Feedback: Each button press is accompanied by a visual cue and a sound, enhancing the gameplay experience.
Level Progression: The game becomes progressively harder as players clear levels, introducing more colors and longer sequences.
Score Tracking: Players earn points based on their performance and can compete for high scores.

Tech Stack

HTML5: For the game structure and layout.

Utilize <div> elements for color buttons and display areas.

CSS3: For styling the game interface.

Implement responsive design for compatibility across devices and appealing visual effects.

JavaScript (ES6): For game logic and interactivity.

Create functions to manage the game sequence, user input, and game state.
Utilize audio elements to play sound effects corresponding to button presses.

How to Build the Game

Set Up the Game Structure (HTML):

Create a container for the game and add buttons for each color.
Include elements for displaying the current sequence and the player's progress.

Style the Game (CSS):

Design visually appealing buttons with hover effects.
Implement animations for button presses to enhance user experience.

Implement Game Logic (JavaScript):

Game Sequence Generation: Create an array to store the sequence of colors.
User Input Handling: Add event listeners for button clicks to capture player input.
Sequence Display: Use setTimeout to highlight buttons in the sequence, with sound feedback for each button.
Scoring System: Track player score based on correct inputs and implement a level progression system.

Testing and Enhancements:

Test the game for functionality and bugs.
Add enhancements such as difficulty levels or a timed challenge mode for additional replayability.

By presenting the Simon Says (Advanced Version) with this structure and technical depth, I would like to request the assignment of GCCOC-EXT tag and LEVEL3  for this project.

Task Completed and made a PR #656
Need to add another PR so closing this issue Admins I hope its ok.


added functions to read tdms object data and return string dictionaries

added two functions to read tdms object data (Observation and tempObservation) and return dictionaries containing strings for sqldb.py use

Looks good.


new files not showing icons

For example, a untitled tab saved as something.js won't show the js icon.

maybe related to #193

Aye, definitely looks like a duplicate (or at least related) issue.
I'll see if there's another way we can fix this...

if you need any help, just let me now :)

Está bien, hombre. ;)

YA ESTÁ =)


test: upgrade axa-ch/input-text

Prevents compilation failures because of clashes
between lit and lit-html

Tested with Flow 9.0, 23.0, 23.1 and 23.2


Extra text in this challenge

Challenge http://www.freecodecamp.com/challenges/waypoint-generate-random-whole-numbers-with-javascript has an issue.
There is extra text in the challenge : "It's great that we can create random decimal numbers, but it's even more useful if we --- lot more useful to --- generate a random whole number."

https://github.com/FreeCodeCamp/FreeCodeCamp/issues/1920
Fixed.


What is the correct way to import tests from external files?

According to the docs, this is supported:

# Load & runs all test cases matching these filepaths
tests:
  # You can supply an exact filepath
  - tests/tests2.yaml

I've attempted that:
tests:
  - ../SomeDir/mytest.yaml

And mytest.yaml in the format:
vars:
  foo: bar

I get this error message:
/Users/natanyellin/.npm/_npx/81bbc6515d992ace/node_modules/promptfoo/dist/src/testCases.js:173
                for (const testCase of testCases) {
                                       ^

TypeError: testCases is not iterable
    at loadTestsFromGlob (/Users/natanyellin/.npm/_npx/81bbc6515d992ace/node_modules/promptfoo/dist/src/testCases.js:173:40)
    at readTests (/Users/natanyellin/.npm/_npx/81bbc6515d992ace/node_modules/promptfoo/dist/src/testCases.js:194:36)
    at resolveConfigs (/Users/natanyellin/.npm/_npx/81bbc6515d992ace/node_modules/promptfoo/dist/src/main.js:129:57)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async runEvaluation (/Users/natanyellin/.npm/_npx/81bbc6515d992ace/node_modules/promptfoo/dist/src/main.js:521:48)
    at async Command.<anonymous> (/Users/natanyellin/.npm/_npx/81bbc6515d992ace/node_modules/promptfoo/dist/src/main.js:680:9)

Node.js v20.14.0

Hey @aantn, it expects the test file to be a list of tests, not just a single test. Try this:
- vars:
    foo: bar

Thanks, that works. On a related topic, it would be great to get a warning
if the file doesn't exist. Right now it fails silently.
On Fri, Jun 21, 2024 at 11:32 PM Ian Webster @.***>
wrote:

Hey @aantn https://github.com/aantn, it expects the test file to be a list
of tests, not just a single test. Try this:

vars:
foo: bar

—
Reply to this email directly, view it on GitHub
https://github.com/promptfoo/promptfoo/issues/982#issuecomment-2183415050,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADYUBYAOFU7GEUWWJ7D57TZISEUTAVCNFSM6AAAAABJWSU5LOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBTGQYTKMBVGA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Ah thanks for flagging.  Warning added in e34933ad76e290a04fa75fc082833845e7d75161

Wonderful, thank you as always!
On Sat, Jun 22, 2024 at 9:28 AM Ian Webster @.***>
wrote:

Ah thanks for flagging. Warning added in e34933a
https://github.com/promptfoo/promptfoo/commit/e34933ad76e290a04fa75fc082833845e7d75161
—
Reply to this email directly, view it on GitHub
https://github.com/promptfoo/promptfoo/issues/982#issuecomment-2183853274,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADYUB7GJZ5RMZYUGXGJLO3ZIUKQZAVCNFSM6AAAAABJWSU5LOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCOBTHA2TGMRXGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


fix: correct uri equality check with comments service

Types

[x] 🐛 Bug Fixes

Background or solution

Changelog
correct uri equality check with comments service

/next

/next


Update readme: fix grammatical error in java.md

An grammatical error in the Java content, in the ACCESS MODIFIERS section.
Change:
1. defualt(No keyword required)

To:
1 . default(No keyword required)

Thank you :)


encoding/json should try to convert strings<->numbers without errors if it's possible

Trying to combine api/JSON/databases in Go is a pain. The problem is it's very hard with JS applications/frameworks to be sure about the correctness of JSON output. Most probably everyone ends up with something like this:
// let product= {id: "1", price: "100"}
product.id = +product.id;
product.price = +product.price;
// .. send to API

Go could help a lot in this cases and the code above could be avoided, because Go has all the information needed to correctly convert, for example, this JSON {"id": "1", "price": "100"} into this structure
type Product struct {
	ID    int64   `json:"id"`
	Price float64 `json:"price"`
}

... but instead of that it panics
Even more, there is a json.Number type which partially solves the problem, but still you should do a lot of checks and conversions (like product.id.Float64())  because it's not a basic type and also database/sql doesn't support it.
The only way I found to deal with this stuff is to create a new type, based on int64, and implement json.Unmarshaler interface. But it's still a lot of typing and error prone
The full example about what time-saving encoding/json could do out of the box (maybe with some flags to not break an existing code)
package main

import (
	"encoding/json"
	"fmt"
)

type Product struct {
	ID    int64   `json:"id"`
	Price float64 `json:"price"`
}

func parseJSON(p *Product, str string) error {
	err := json.Unmarshal([]byte(str), p)
	if err != nil {
		return err
	}
	return nil
}

func ExampleJson() {
	strs := []string{
		// works
		`{"id": 1, "price": 100}`,
		`{"id": 1, "price": 100.0}`,

		// this should work too because Go has enough information
		// to convert these strings into int64/float64, but it doesn't :(
		`{"id": 1, "price": "100"}`,
		`{"id": 1, "price": "100.00"}`,
		`{"id": "1", "price": 100}`,
	}
	for _, str := range strs {
		p := Product{}
		err := parseJSON(&p, str)
		if err != nil {
			fmt.Println(err)
		}
		fmt.Printf("%+v, discount: %v\n", p, p.Price*0.1)

	}
	// Output:
	// {ID:1 Price:100}, discount: 10
	// {ID:1 Price:100}, discount: 10
	// {ID:1 Price:100}, discount: 10
	// {ID:1 Price:100}, discount: 10
	// {ID:1 Price:100}, discount: 10
}

In my opinion, err shouldn't be nil only in case when Product.id can't be converted to int64, Product.price to float64 and so on. The client code shouldn't be aware of what internal types are we using
Also the same should be true about this case:
var id string
err := json.Unmarshal([]byte(`123`), &id)
if err != nil {
	panic(err)
}
fmt.Println(id)

Go has enough information to assume that we want to convert JSON number 123 to Go's string, because it's the only reasonable case and JS client code shouldn't be bothered what's our id's internal type. But instead it panics
If encoding/json could behave like this, it would make working with JSON in Go much more pleasant and concise

In JSON, 6 is the number six. "6" is a string containing the digit 6. So the answer to the question "Can json numbers be quoted?" is basically "no," because if you put them in quotes, they're not numbers anymore.

src

@cznic how is it relevant to my proposal? My point is json.Unmarshal  should be able to convert json string "6" as well as json number 6 into var id int64 or into var id string because it's obvious what result are we expecting.
To be clear, database/sql works already the same way
var idStr string
db.QueryRow("select id from categories limit 1").Scan(&idStr)
fmt.Printf("%+v\n", idStr)

var idInt int64
db.QueryRow("select id from categories limit 1").Scan(&idInt)
fmt.Printf("%+v\n", idInt)

Both idInt and IdStr are acceptable for .Scan because it knows exactly what type we're expecting and how to convert Database's int/string into Go's int64 and string. So there is no reason to not do the same for encoding/json

I'm not convinced that this has a place in encoding/json. Like you said, you can always implement the Unmarshaler interface. I don't understand why that would be more error-prone, as long as you get it right once, test it well and re-use the code.
Many features and enhancements to encoding/json have been discarded in the past. The reason is that the package should be simple and have few knobs, while still being reasonably extensible. If you need any convenience or extra features on top of that, you can always use an external JSON package, and there are many.
This issue is also proposing a non-trivial design change to a package, so I would strongly recommend writing a proposal: https://github.com/golang/proposal

My point is json.Unmarshal should be able to convert json string "6" as well as json number 6 into var id int64 or into var id string because it's obvious what result are we expecting.

My point is that it should better not do that. What numbers are the obviously expected results for strings like "10101", "0666" or "deadbeef", for example?

My point is that it should better not do that. What numbers are the obviously expected results for strings like "10101", "0666" or "deadbeef", for example?

For these particular examples and Go's int64 it's obvious: the result of the invocation:
n, err := strconv.ParseInt(str, 10, 64).

"10101" - 10101
"0666" - 666
"deadbeef" - 0, error

That's because "...octal and hexadecimal formats are not used" in JSON
For float64, the result of the invocation: strconv.ParseFloat

Being precise about whether a value is a number or a string is a feature, not a bug.
But if you find yourself in this situation, it should be possible to write your own value types for these ambiguous fields, have them implement json.Unmarshaler, and add whatever semantics make sense for your application. That's the extensibility hook that encoding/json expects users to make. Extending the app itself scales much better than putting every customization like this into the main package.
Please try that.


Review and update translations for ru - Russian

Up for grabs: please review and update/complete the translations in the ru.lproj/GMImagePicker.strings file for the language ru (Russian). Use the original labels in Base.lproj as a starting point.
Contributions are highly appreciated!

Polish and Norwegian were added with #51 (thanks!)

Russian was added with #55 Thanks!


NaN error when start and end co-ordinates are the same

Hi,
My name is Phil Lee, I'm a student at Brighton University studying Digital Games Production. My final year project is based on geolocation data visualisations. Your API is awesome just wanted to inform you of an error I have found.
I have noticed that if any of the start and end co-ordinates in a data set are exactly the same then 'leaflet-src.js' throws the error 'Uncaught Error: Invalid LatLng object: (NaN, NaN)'. I'm assuming this hasn't been noticed as most geolocation data sets do not have start and end co-ordinates that are exactly the same. For my use case I'll will strip out all the duplicates but it is a shame to see the whole data set fail on an uncaught error, especially with a data set of 30,000+. I would be interested to hear if you take any action on this.
Regards,
Phil Lee
<EMAIL_ADDRESS>or<EMAIL_ADDRESS>Trainee Web Developer BBC News
Student at University Brighton

Indeed, this should be one of the cases where arc.js throws a specific error.


Style package information panel

Currently there is no styling other than default HTML element styling applied to this panel.  We will need to look at the different content coming into this panel (including code blocks - see #800 ) and style it accordingly.

Closed by a3ab7ee4f498f77dba7b942d0ef6bab21bd5761f


change X and Y position of KCbutton

Hello, I am using the KC button programmatically and right now it is partly covering the location of a banner ad. How could I solve this by programmatically moving it up? Thank you for all assistance!

Hello, @SirSamShaw
You can use KCFAB's paddingX and paddingY.
😄

Hello, @kciter I could not locate this, could you give an example??

False alarm found it :) Thank you @kciter 👍

Good! 😄


ruby-2.2.2 hiredis-0.4.5  dyld: Symbol not found: _rb_thread_select

OSX = 10.12.4
ruby-2.2.2
hiredis-0.4.5
Rails 4.1.1
Processing by MoviesController#index as HTML
Movie Load (0.4ms)  SELECT movies.* FROM movies
Rendered movies/index.html.erb within layouts/application (140.3ms)
User Load (0.2ms)  SELECT  users.* FROM users  WHERE users.id = 1  ORDER BY users.id ASC LIMIT 1
dyld: lazy symbol binding failed: Symbol not found: _rb_thread_select
Referenced from: /Users/eecheverri/.rvm/gems/ruby-2.2.2/gems/hiredis-0.4.5/lib/hiredis/ext/hiredis_ext.bundle
Expected in: flat namespace
dyld: Symbol not found: _rb_thread_select
Referenced from: /Users/eecheverri/.rvm/gems/ruby-2.2.2/gems/hiredis-0.4.5/lib/hiredis/ext/hiredis_ext.bundle
Expected in: flat namespace
Abort trap: 6
Any help immensely appreciated

Solution
Deleted hiredis from the Gem file and used redis and redis-namespace:
#gem "hiredis", "~> 0.4.0"
gem 'redis'
gem 'redis-namespace'
In redis.rb
$redis = Redis::Namespace.new("my_app", :redis => Redis.new)

if you still require it, try again with hiredis 0.6.1


DragAndDropModule not able to scoll on mobile

Bug, feature request, or proposal:
feature request
What is the expected behavior?
I would like to be able to scroll on android devices and chrome device emulator.
What is the current behavior?
Scrolling is not enabled if the list fills the entire screen.
When using cdkDragHandle I'm not able to scroll pressing on the list elements.
What are the steps to reproduce?
Touch device (chrome emulator):
https://stackblitz.com/angular/glvkoklvppy?file=app%2Fcdk-drag-drop-sorting-example.css
cdkDragHandle:
https://stackblitz.com/angular/rklpvgllplv?file=app%2Fcdk-drag-drop-handle-example.ts
Set mat-app-background to height=5000px
e.g. div class="mat-app-background basic-container" style="height: 5000px"
What is the use-case or motivation for changing an existing behavior?
It would be nice to be able to scroll even if draggable elements fill entire screen
and drag handle does not block scrolling
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
7.0.2
Is there anything else we should know?
I'm currently using:
http://timruffles.github.io/mobile-drag-drop/demo/
where you can set a delayed drag so the user have to do "long" press before dragging otherwise it scrolls.
"holdToDrag: 200"

Some of this will be mitigated by https://github.com/angular/material2/pull/13780 where the touch-blocking styling will be confined to the handle.

Closed by #13780


Location searching issue

Hi,
While trying to search the location, it got automatically closed. I am using places api. It was working fine before. This issue happens within two three days ago. Can you help me to sort it out. Any help should be highly appreciated.
Thanks & Regards,
Cijo K Paul

Activate map sdk api in console and enable billing also , searching is paid feature you can't use it without enabling billing


[BugFix] Fix delete best expression not deal with enforcer when merge group

What type of PR is this：

[x] bug
[ ] feature
[ ] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #6956
Problem Summary(Required) ：

At merge group stage, we may delete the best exprssion, the enforcer is also need to be deleted when its input property is satisfied by the deleted group expression.

[FE PR Coverage check]
:heart_eyes: pass : 12 / 12 (100.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/optimizer/Group.java
12
12
100.00%

@Mergifyio backport branch-2.3


Autoplay stops on interaction

Autoplay stops on interaction and have to refresh page in order to restart autoplay,
I have tried to use disableOnInteraction:'false'but it's not working.

Check which version of swipper.js you have installed. I think this was fixed in the latest version. Another work around is to trigger startAutoplay() after a transition like this
$scope.onReadySwiper = function (swiper) {
swiper.on('slideChangeStart', function () {
var mySwiper = $('.swiper-container')[0].swiper;
mySwiper.startAutoplay(); //restart autoplay
});
};


added a second argument

I've seen customers define args as 2 separate #[ ] expressions; the arg needs to be a single "map"

@afelisatti Can you do a quick check of the mod?  Thanks!

I provided a complete XML-only standalone example of this @afelisatti @dukesphere about 10-15 mins ago.

looks ok


Fixed yii\helpers\Inflector::camel2words() to work with UTF-8

Q
A

Is bugfix?
yes

New feature?
no

Breaks BC?
yes

Tests pass?
yes

Fixed issues
this one

There are many uses of non-unicode-safe functions (strtolower, ucwords, ucfirst) in inflector.
I think it makes sense to make them consistently unicode safe.

Updated PR


More flexible CSS classes management/customization proposal

Because TCSS is all about adding lots of new CSS classes even for prebuilt components (thanks for your work, BTW:) having own subclasses is unavoidable, especially if two themes required to exist.
In my code I found subclassing PhlexUI components is the only way to avoid passing class: "xxxx" each time I'm using them. Not a big deal, that's ok.
But I found this approach more flexible:
module PhlexUI
  class Base < Phlex::HTML
    attr_reader :attrs

    def initialize(**user_attrs)
      @attrs         = PhlexUI::AttributeMerger.new(default_attrs, user_attrs).call
      @attrs[:class] = ::TailwindMerge::Merger.new.merge(@attrs[:class]) if @attrs[:class]
    end

    if defined?(Rails) && Rails.env.development?
      def before_template
        comment { "Before #{self.class.name}" }
        super
      end
    end

    private

    def default_attrs
      {class: default_classes}
    end

    # Always use array for class list
    # Lets us just push new items w/o messing with string concatenation and space preservation
    # Additionally we split attrs and classes. Attrs rarely customized on class-level, but classes are constantly
    def default_classes
      []
    end
  end
end

This semi-draft small code change lets me have components with no further customization needed (though still supported) like so:
module UI
  module Components
    class TypographyH1 < PhlexUI::TypographyH1
      CLASSES = %w[dark:text-slate-200].freeze
      private def default_classes = super + CLASSES
    end
  end
end

Existing PhlexUI components can be mostly updated with regexp
(class:)\s+"([^"]+)"
$1 %w[$2]

NB: as you probably noticed, I personally prefer to have classes in array for readability and ease of management. Compare these two snippets (TabsStrigger classes):
"inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow"

and
%w[
 inline-flex
 items-center
 justify-center
 whitespace-nowrap
 rounded-md
 px-3
 py-1
 text-sm
 font-medium
 ring-offset-background
 transition-all
 focus-visible:outline-none
 focus-visible:ring-2
 focus-visible:ring-ring
 focus-visible:ring-offset-2
 disabled:pointer-events-none
 disabled:opacity-50
 data-[state=active]:bg-background
 data-[state=active]:text-foreground
 data-[state=active]:shadow]

Thank you again for your work! :)

@qd3v, we now have a better way to do this. You can eject a component from the library and customize it. Take a look here


Uploading a new source image using byte or base64 encoded?

First of all, thanks for this API, it's working like a charm.
I've been using on my personal android application to create memes and share on Facebook with no problems so far.
Now i want to expand by creating my own images instead using existing ones.
I know it is possible to create new source images by using the /src_images endpoint but only with URL as source.
What i want to do is choose an image from my android pictures gallery and upload to the Memecaptain.
This could be possible if MemeCaptain API accept the byte content or maybe a base64 encoded data from the image itself.
JSON Example:
{
    data : "data:image/png,base64,iVBORw0KGgoAAAANSUhEUgAAA98AAAMmCAQAAABGZ/rqAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzA...",
    name : "My cool meme",
    private : false
}

Is it possible?
Thanks and sorry for my bad english.

You should be able to use a data URI like the one in your example in the url field. This is a relatively new feature so please open an issue if you run into any problems.


Deprecated Calls

Issue description:
I always use a plugin called "Log Deprecated Notices" (link) during wordpress development and noticed that kirki has two deprecated notices as shown in below snapshot.

I think it's a low priority issue to address but worth mentioning.
Version used:
3.0.25
Looking forward for 3.0.26!

These are added on purpose.
Apparently you're using an older syntax to define the color controls... Please refer to https://aristath.github.io/kirki/docs/controls/color.html#adding-an-rgba-colorpicker
Instead of adding a separate alpha argument, you'll need to use the syntax described in the docs.
That was changed a long time ago and for now we're keeping compatibility with older versions so the old syntax still works, but it should be changed 'cause the new methods are more future-proof.


Props not being generated for Type

Bug Report
Describe the bug
The props table (Props component) isn't displaying anything when using  typescript
To Reproduce
Please try to build a small repo with a repro of your problem and provide a link to it.
Doing that allows more people to quickly help you.
If you can't provide a repo then provide clear steps describing how to reproduce the issue.

npx create-docz-app my-docz-app && cd my-docz-app
Rename Alert.jsx to Alert.tsx
Replace code with the below

import React from 'react'

const kinds = {
  info: '#5352ED',
  positive: '#2ED573',
  negative: '#FF4757',
  warning: '#FFA502',
}

export interface AlertProps {
  children: React.ReactNode,
  kind: 'info' | 'positive' | 'negative' | 'warning'
}

export const Alert = ({ children, kind, ...rest }: AlertProps) => (
  <div
    style={{
      padding: 20,
      borderRadius: 3,
      color: 'white',
      background: kinds[kind] || kinds.info,
    }}
    {...rest}
  >
    {children}
  </div>
)

Alert.defaultProps = {
  kind: 'info',
}

export default Alert

Add a doczrc.js file to the root with the following content

export default {
  typescript: true
}

Run npm run docz dev
See error in browser

Expected behavior
I expect the props table to be filled with the props defined.
Environment

docz version: 2.1.1
OS: OS Catalina 10.15.1
Node/npm version: Node 12.13.0 / npm 6.12.0

Screenshot

Hello @stramel
This is probably because you didn't add a tsconfig.json to your project.
Try running yarn add -D typescript && yarn tsc --init and it should work as expected.
You can also check the typescript example :
npx create-docz-app my-app --example typescript

Going to close this, please feel free to re-open if the suggestions above don't work.

@rakannimer I have a base tsconfig.json at the root of my mono repo and a tsconfig.json that extends it in the library package level. I also do already have typescript installed as a dependency.
I'm unable to re-open the issue since you closed it.

Hi @rakannimer I think I'm encountering a similar issue. My setup is a monorepo (without any supporting tools like Lerna or Yarn Workspaces) with Typescript support.
It contains a tsconfig file, the typescript dependency, and typescript: trueindoczrc.js`.
Here's a sample repo with instructions. Your help would be appreciated as always!

We are having the same issue in a mono repo as well ... tried most things ... next step I guess is to take a look at the source code and debug 🗡
Funny, but the flow package works ... the typing is correct.

I fixed, after my comment, changing the typescript code (before I didnt add the type to the component as React.SFC) and adding a tsconfig in the root of the repo.
import * as React from 'react';
import Button from '@material-ui/core/Button';

interface Props {
  /** word to interpolate */
  text: string;
  /** word to interpolate */
  color: number;
}

const TsButton: React.SFC<Props> = ({ text }: Props) => (
  <Button>{text}</Button>
);

export default TsButton;

  "compilerOptions": {
    "target": "es2015",
    "moduleResolution": "node",
    "strict": true,
    "resolveJsonModule": true,
    "esModuleInterop": true,
    "skipLibCheck": false,
    "noEmit": true,
    "jsx": "react"
  }
}

Still very much an issue

I am encountering the same thing in a monorepo, the basic structure of which is:
├── packages
│   ├── components
│   │   ├── src
│   │   │   └── components
│   │   │       ├── Alert.mdx
│   │   │       ├── Alert.tsx
│   │   │       ├── Button.mdx
│   │   │       └── Button.tsx
│   │   ├── package.json
│   │   └── tsconfig.json
│   └── docz
│       ├── doczrc.js
│       ├── index.mdx
│       ├── package.json
│       └── tsconfig.json
├── package.json
└── tsconfig.json

A Clue
The tsconfig files in each of the packages extends the root tsconfig. doczrc.js looks like:
/* packages/docz/doczrc.js */
export default {
  typescript: true,
  files: ["./**/*.mdx", "../components/**/*.mdx"],
};

I've found that if i move the the tsx files to be in packages/docz, the props are being generated, even though the mdx files remain in packages/components. It seems like there may be some dependence on the ts source files 'belonging' to the same typescript project that docz does.
A solution?
Some poking around in docz-core lead me to try this config change:
/* packages/docz/doczrc.js */
export default {
  typescript: true,
  files: ["./**/*.mdx", "../components/**/*.mdx"],
  docgenConfig: {
    searchPatterns: [
      "../**/*.{ts,tsx,js,jsx,mjs}",
      "!**/node_modules",
      "!**/doczrc.js",
    ],
  },
};

And, after clearing docz cache, it worked!
It seems that the docgenConfig option is currently undocumented, see https://github.com/doczjs/docz-website/issues/90

Important in Monorepo structures like above:
docz and docgen will look for a tsconfig file in the docz root, not in the components package!
if you don't have one, the load process will stop and never use your searchPattern.
to initialize an default tsconfig you can execute this from your docz package:
./../../node_modules/.bin/tsc --init

What about allowing setting the tsconfig path from the config file? The typescript options is now a boolean, but it could also be possible to make that a path to the custom tsconfig file.


Autocomplete not showing up in Rust doc comments

In lib.rs rust uses //! comments to document landing page for docs.rs. This plugin doesn't work with it, but if the exclamation mark is removed, it stars auto-completing again
//! :joy:    < doesn't work
// 😂  < works
CLion version 2021.3

As well as Doc:
// 🌻 < works
/// :sunflower < doesn't work


Verify the feature is still displayed on the map before creating the …

…billboard
@gberaudo if you have a better idea (go through all the features of the source) to test if the feature is still displayed on the map, I take it.

Hi @oterral, I would prefer to avoid the graph traversal in rbush + creation of an array + iteration over all features.
We could listen on the source for clear and feature removal event and cancel the creation of the billboard.
I had a try, see https://github.com/openlayers/ol3/pull/4243 and https://github.com/oterral/ol3-cesium/compare/loadbill...gberaudo:loadbill.

@gberaudo yes you 've a much better solution. I test it.

@gberaudo here the clear event doesn't exist on layer, shouldn't we listen on source.on['removefeature', 'clear' ...   ?

Listening the source events it works as expected.

Right @oterral, I meant to listen on the source.

@gberaudo will you make a PR with your branch ?

Thank you @oterral for spotting the issue. It is really nice to have this fixed.


CIV-14058 batch 2

JIRA link (if applicable)
CIV-14058
Change description
Second batch of line break changes
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[X] No

Team 4 changes made removing paragraphs not needed for the ticket


Bug: Can't access any player data on eu-shard

Requesting a single player (myself or any of my team members) as documented below results always in a "301 Moved Permanently". Any hint would be appreciated!
Request
GET /shards/eu/players?filter%5BplayerNames%5D=<<Any Playername from my Team>> HTTP/1.1
Authorization: <<Our API Key>>
X-TITLE-ID: semc-vainglory
Accept: application/vnd.api+json
Host: api.dc01.gamelockerapp.com
Connection: close
User-Agent: Paw/3.0.16 (Macintosh; OS X/10.11.6) GCDHTTPRequest

Response
HTTP/1.1 301 Moved Permanently
Date: Thu, 02 Mar 2017 13:10:48 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 84
Connection: close
Location: /shards/eu/players/?filter%5BplayerNames%5D=<<The given Playername>>

<a href="/shards/eu/players/?filter%5BplayerNames%5D=<<The given Playername>>">Moved Permanently.

Valid Request: https://api.dc01.gamelockerapp.com/shards/sg/players/?filter[playerName]=NullKarma

What makes the difference, besides the missing URL-encoding?

It is playerName and not playerNames. Docs are wrong. :(

Ahh, thanks - but i get the same response even with the filter playerName. 😩

🤔 Probably the URL-encoding is the problem.

Error is pretty self-explanatory, there is currently a bug in the API, instead of hitting
/shards/eu/players?filter%5BplayerNames%5D=<<Any Playername from my Team>>
You should hit
/shards/eu/players/?filter%5BplayerNames%5D=<<Any Playername from my Team>>
This is likely to change after the API bug is fixed, but for now will get you your data.


added a link to ex-mode in readme

I added a link to the ex-mode plugin in the readme, since the two projects are closely related.

Great idea. Looks good except for the minor feedback above.

Line breaks are gone. ;)

Thanks!


Generate solana entrypoint function

This is an initial implementation of Solana entrypoint function.  The purpose of the function is to implement the interface between Solana run-time/VM and a Move entry function of a specific module. Move entry functions can accept arbitrary parameters. This implementation is limited to calling only entry functions that take no parameters. It extracts the requested entry function name from the instruction_data array passed as input to the entrypoint function from the Solana run-time, and calls the correct entry function. The next step is to implement deserialization of actual parameters and to pass them to entry functions that take arbitrary parameters.

I think I addressed all the comments. @nvjle could you, please, take another look when you have a minute? If no further comments, I will merge.
Thank you for reviewing and making good suggestions.