Allow passing resvg variable via options to allow different plugins per path

Please consider adding a way to pass resvg regex via Options to allow different plugins to be applied per path.
My use case is that I want to apply eg. removeAttrs with attrs: "(fill|stroke)" to icons, but leave some full color SVG files alone.

Thanks for your feedback @ljani
Can you please give me a more elaborate example of how you'd want to use this?

Sure.
As the quickest hack, something like this:
import svg from "@poppanator/sveltekit-svg";

const config = {
  kit: {
    vite: {
      plugins: [
        svg({
          resvg: /[\\/]icons[\\/].*\.svg(?:\?(src|url|component))?$/,
          svgoOptions: {
            multipass: true,
            plugins: ["preset-default", { name: "removeAttrs", params: { attrs: "(fill|stroke)" }}],
          },
        }),
        svg({
          resvg: /[\\/]graphics[\\/].*\.svg(?:\?(src|url|component))?$/,
          svgoOptions: {
            multipass: true,
            plugins: ["preset-default" ],
          },
        }),
      ],
    },
  },
};

A better alternative would probably be a separate option such as:
import svg from "@poppanator/sveltekit-svg";

const config = {
  kit: {
    vite: {
      plugins: [
        svg({
          includePaths: ["./src/lib/icons/"],
          svgoOptions: {
            multipass: true,
            plugins: ["preset-default", { name: "removeAttrs", params: { attrs: "(fill|stroke)" }}],
          },
        }),
        svg({
          includePaths: ["./src/lib/graphics/"],
          svgoOptions: {
            multipass: true,
            plugins: ["preset-default" ],
          },
        }),
      ],
    },
  },
};

Does this clear up my use case?
Please note that includePaths should also support a backslash (\) as path separator in addition to forward slash (/).

@ljani Theres a beta version you can test if you want:
<EMAIL_ADDRESS>I haven't tested it widely, and I have no idea if it works properly on Windows for instance. But give it a go and see if it comes close to your expectation.
Thanks.

Great, thanks! It seems to fine work on Windows as well.
To be honest, I meant a simpler solution, such as includePaths being path prefixes, which are checked (see eg. svelte-preprocess-cssmodules, however be sure to normalize path separators), but globbing works fine as well 😊 For example webpack uses regexes, if you'd like to avoid another dependency.

Thanks @ljani, I tend to agree. As few dependencies as possible, and in this particular case I don't think the globbing adds any real value anyway. I'll make an update...

A new  beta version published<EMAIL_ADDRESS>

@poppa: Thanks. However, that version does not work on Windows. path.normalize will return backslashes on Windows and id will be with forward slashes. For example, id is C:/devel/mysite/src/lib/gfx/logo.svg?component and includePath is C:\devel\hoijan-site\src\lib\gfx and thus string.startsWith will fail.

@poppa: I saw your https://github.com/poppa/sveltekit-svg/commit/e0dad5fc78cfbff712b10ff7f895f4666dc2a1de while fetching upstream 🙂 That won't work either, here's me logging id and includePath:
C:/devel/mysite/src/lib/gfx/logo.svg?component -> /devel/mysite/src/lib/gfx

Yes, I noticed @ljani . I've got a Windows VirtualBox instance running now. I've merged your PR:s, so it seems it's all good to go.

Tested via npm install --save github:ljani/sveltekit-svg#4b5128e3ac34cf020b35cc7f4cb09d28499e6dd3 and everything seems to be working. I could not test directly from this repo because of missing prepare script. I just learnt that from StackOverflow.
Feel free to close the issue, thanks again!

Thanks for you help 🥇


Android: Unable to apply Text Styling

I want the notification text display to align right as it follows to the new line.But it always sticks to the left  or center of the screen. However, I have tried different style options:

direction: rtl
flex:display, flex-direction
flex:display, justify-content: flex-end
text-align: right

Unfortunately none of these worked for me. The strange thing is "text-align: center "works fine as shown in figure but not
"text-align: right"

Not very familiar with this as I've had no personal use case, but try using "text-align: end". (ref)
This is out of our control and totally based on what Android Html.fromHtml supports, see code: https://github.com/invertase/notifee/blob/cb6a2ebf093204831c0e87cb8da77dd9230be6f3/android/src/main/java/app/notifee/core/utility/TextUtils.java#L26)

After trying a couple of options.
I found a working solution for myself.
text-start: start

thanks for sharing your solution, will close the issue


Feature request - Trim capture

I feel that this plugin should have the option to quickly trim a capture, incase you didn't start or end it perfectly. I find myself having to retake captures If I mess up at the start or end.

Platform:
Kap Version:
Steps to reproduce
Current behaviour
Expected behaviour
Workaround

#115 😄


🧹 refactor evaluation server kafka usage

this pr contains these changes:

log the consumed message when exception occurred
rename IMessageProducer to IMqMessageProducer
replace IKafkaMessageHandler with IMqMessageHandler

Additionally, the IMqMessageProducer and IMqMessageHandler interfaces add extensibility to the evaluation server.

LGTM


Draft: Merge contents of jin/rules_maven

I'm ok (happy, actually) to have my commits being contributed to this project!

@davidsantiago (author of two commits) has consented to have their commits contributed to this project.


Accessibility statement update

Is your feature request related to a problem? Please describe.
The accessibility statement is a legal requirement and our current one doesn't reflect the latest version of the site.
Describe the solution you'd like
Update the statement. At some point, we may need a complete new audit, but this will probably do for now.
Here is the document with suggested changes. @xenatisch there are a couple of queries in there for you about things I was unsure about, so please could you have a look at those. Thanks.
5. Accessibility statement FD 27.05.21.docx

Accessibility statement is not relevant to this repository. It is handled by the content team. I'll move the issue to the relevant repository.


HTML Doc: Pattern string is being capitalized

The must match XXX badge from the schema is being capitalized (text-transform: capitalize)
Example:
schemas:
    Foo:
      type: object
      properties:
        bar:
          type: string
          pattern: "^hello$"

Is being shown as Must Match ^Hello$
In somehow it's related to https://github.com/asyncapi/generator/pull/62/files

Interesting. I can't find at first sight why this is happening. Thanks for reporting!

  string

    must match ^\w{4}\d{8}$

the capitalize class has:
text-transform: capitalize;

which breaks the pattern rendering:


Add sh script using promtool pinned by bingo

Hey there,
This adds a shell script, for folks that would prefer using bash or zsh instead of powershell.
Also uses promtool package pinned by bingo.
Let me know if this PR needs any modifications.

Thanks for the PR!


Better strategy for children accounts "hasGrant" setting

Originated from this Slack thread
In https://github.com/opencollective/opencollective/issues/5065, we've disabled the modal that allows for customizing the host fees structure for projects and events (to make sure they always inherit from the parent), but this modal also contains the "has grants" checkbox that shouldn't be hidden.
We have two options:

Similarily to host fees structure, make sure children inherit this setting from their parent ~ Medium complexity
Restore the modal, with host fees structure disabled/hidden for events/projects ~ Simple complexity

@Betree With OCF use case in mind, I think we want 2).

@znarf Alright thanks for this feedback, I'll prioritize it this week then. It's the simplest fix and I'm afraid more people may be blocked by this soon.

I'm wondering if option 2 is the best option for OCF. I think that option 1 might be better - I'll chat with @alanna about it

Okay, touched base with Alanna. "2" is the best option for now.

Cool, I think option 2 is safe - we're basically reverting things back to where they were. It's also the simplest. We can can on doing option 1 in the future, but it should have its own specs and prioritization


Quality configuration suggestion

I think it would be useful to add the possibility to reduce stream quality. I was running the bot for a little bit more than 15 hours on my VPS, and it has used up ~15 GB of bandwidth. Not too much, but still.
And thanks for your work anyway!

Yes it would be nice. Im running 6 bots and my bandwidth usage is very high.
I wish there was an option to select lowest quality possible.

Nice farming :smile: .
I'll try to find a solution how to switch stream quality.

Nice farming 😄 .
I'll try to find a solution how to switch stream quality.

What you think about this suggestion?
await driver.executeScript(`window.localStorage.setItem('video-quality','{"default":"160p30"}')`)


any option to Read all the key and value from formdata

is there any option available in form-data to read all the existing key and values.

https://github.com/form-data/form-data/issues/537


Added a HDAugmentedReality Framework Target to support Carthage

This target includes all necessary files (like ARAnnotationView, ARTrackingManager,...) to build an iOS shared framework which can be integrated via Carthage.

I did not want to include all commits on master. Will change this to commits tagged with a specific version


Palindrome Code

@satyamagrawalread @capblack222  Hi, Could you please review my code?

Hey @Zaid-Parkar , Thanks for the contribution!! Great work!


Feature/#315 add new label to details

New labels are now displayed for details as well, without making any changes to the database, which seems like a cleaner approach that might could be done for InfoItems and maybe Topics as well

Thanks for your contribution. ;-)
Please merge in our current upstream /develop/ branch.
This should fix your red Travis-CI E2E tests.

@symonra as we discussed in slack we would appreciate it if you could adapt the feature and use the same approach as we did with the new-label for items and topics.
We do not want different approaches for nearly the same feature. So please add a new attribute isNew and implement the analog logic as we have it for topics/items already.
Thank you in advance!

Thanks for your PullRequest.
I checked the functionality. IT really looks good to me! The "New" label will be very helpful in future protocols.
Please remember two things:

Before submitting a PR please make sure you got the latest /develop/ merged from our Repo into you branch. We had a merge conflict here, that I had to solve.
Even after solving the merge conflict the unit tests fail on your branch. This is a fact you could even see on your own Repo here: https://travis-ci.org/RobNeXX/4minitz/builds/296497351 - Please solve this issue and then re-submit the PR.

Thx for taking care.  ;-)

Travis went green on our /merge/ branch.
So, I will merge now.
Thx. for your contribution!


Update text-icon-rear-button-rounded.html

made the button rounded

Great work @pranavjainjs
Congrats 🎉, your PR got merged. To be eligible for the swags from ClueLess. Follow these steps.

Star this repository. ⭐
SignIn / SignUp in [ClueLess Website](https://www.clueless.tech/)
Go to the profile section from the top right-hand corner.

Comment your profile URL under this comment tagging the person who merged your PR.
That’s it. Follow the leaderboard!
And don’t forget to share your achievement with your friends.


Examples need to be moved over and updated

Just like the headline says; the examples need to be moved here from the main flame repo and they also need some updating to fit the refactoring.

Done by #3


B1 Completion

Please find the attached minified log files and node ID. The minified log files can also be used for my B2/B6 task completions which were previously submitted as pull requests.

confirmed:B1
node:b4331b8d600ed5f2

confirmed:B2

confirmed:B2

confirmed:B6

confirmed:B6


Prevent refresh for overflowing children while !window.scrollY

Bug report
Pull to Refresh will 'pull' when scrolling back inside an overflowing element while !window.scrollY. This is problematic when you have any overflowing containers (with overflow: auto for example) in the default viewport (when the user hasn't scrolled inside the body element). See my solution below.
Current behavior:
When you scroll inside an overflowing container while !window.scrollY pull to refresh will do it's thing.
Expected behavior:
Check the current scrollTop of an element (and it's parents) to be smaller than 0 before running PTR
Browsers affected:
All
My solution
Since this is quite an old repo I don't expect a fix soon. I thought I'd post my solution here if other people run into the same issue.
    // Pull to refresh
    // ---------------
    let shouldRefresh = true;
    document.body.addEventListener('touchstart', (ev) => {
      let el = ev.target;
      while (el.parentNode && el !== document.body) {
        if (el.scrollTop > 0) {
          shouldRefresh = false;
        }
        el = el.parentNode;
      }
    });

    document.body.addEventListener('touchend', (e) => {
      shouldRefresh = true;
    });

    PullToRefresh.init({
      shouldPullToRefresh: () => !window.scrollY && shouldRefresh
    });

What is happening here is that I use shouldPullToRefresh to also check if shouldRefresh is true. shouldRefresh is false whenever the following happens: on touchstart, if the target element, or it's parent (as long as this parent is not the body element) has any scrollTop that is larger than 0. On touchend; shouldRefresh is set back to false for the next round. It would be even better to check for the PTR mainElement; but in my case I don't need that..
The code above will make sure you can scroll inside overflowing containers when !window.scrollY., but if the scrollTop of the target element (or one of it's parents) is 0; PTR will do it's thing.
Hope this helps anybody running into the same problem.

Thank you for this!
I'm also checking against a few elements I don't want to take over, like shadcn/ui drawer:
        while (el.parentNode && el !== document.body) {
            if (el.scrollTop > 0) {
                shouldRefresh = false;
            }

            // Check if element has role=dialog
            if (el.getAttribute('role') === 'dialog') {
                shouldRefresh = false;
                break;
            }

            el = el.parentNode as HTMLElement;
        }

Hi @qcasey
Glad the code could help you! And great example on how to add other exceptions as well :)


Issue when running ncdu via SSH in Git Bash

Environment
Windows build number: 10.0.18363.0
Windows Terminal version (if applicable): 0.10.781.0

Any other software?

Git for Windows: 2.26.0

Steps to reproduce

Create a profile with the commandline: %PROGRAMFILES%/Git/bin/bash.exe -li.
SSH into a Debian64 machine (I'm using VirtualBox).
Run ncdu.

Expected behavior
Proper output/rendering.
Actual behavior
When I run where ssh, there are 2 SSH binaries:

C:\Program Files\Git\usr\bin\ssh.exe (OpenSSH_8.2p1, OpenSSL 1.1.1e  17 Mar 2020)
C:\Windows\System32\OpenSSH\ssh.exe (OpenSSH_for_Windows_7.7p1, LibreSSL 2.6.5)

I see different incorrect rendering between each of the 2.

Using the first (which is the default), I see rendering similar/the same as #4697 (which was closed without a resolution). See screenshot 1 below.
Using the second, the rendering is broken in a different way. See screenshot 2 below.

Why do they differ? What is missing in both cases?

Inside the VM:

TERM: cygwin
LANG: en_ZA.UTF-8
LC_ALL: ``

Hey, if you change your git bash commandline to include -li (like bash.exe -li), does the first rendering issue go away? We realized our guidance here was incorrect, and we updated it with the help of the git-for-windows folks.
For the second issue . . . that looks suspiciously like two things:

an off-by-one we definitely fixed in 0.10, so it shouldn't be back
LANG or TERM is set incorrectly; can you confirm the values of those? Thanks!

(I saw that you mentioned TERM/LANG for the cygwin case, but not the win32-openssh case :smile:)
Unfortunately, I can't reproduce this with ncdu 1.13 on debian when TERM is set to xterm-256color. If I set TERM to cygwin, i get the exact same rendering artifacts ... but that's expected, because Windows Terminal speaks xterm-256color, not cygwin!

For what it's worth, I see egregious artifacts when I run it using cygwin SSH to a linux machine, even outside of Windows Terminal;

it looks like they're doing something very, very wrong with VT parsing. Cygwin 3.1+ should fix.

Hey, if you change your git bash commandline to include -li (like bash.exe -li), does the first rendering issue go away? We realized our guidance here was incorrect, and we updated it with the help of the git-for-windows folks.

I'm already including -li (it's mentioned under Steps to reproduce). 🙂

(I saw that you mentioned TERM/LANG for the cygwin case, but not the win32-openssh case 😄)

I did so because the values are the same inside the VM, regardless of which SSH binary is used.
On the host, using Git Bash, the values are similar:

TERM: cygwin
LANG: en_US.UTF-8 (note: US not ZA)
LC_ALL: ``

When I run TERM=xterm-256color "C:\Windows\System32\OpenSSH\ssh.exe" ... then it works fine. So my question is this:
Which part of the system (Git Bash, Windows SSH, Windows Terminal, etc.) should be setting the correct TERM? This doesn't seem like a good default experience (in fact, the default experience even uses the Git Bash version of SSH, but that's another story).
How do I know for which applications TERM needs to be set to something other than the default?

For what it's worth, I see egregious artifacts when I run it using cygwin SSH to a linux machine, even outside of Windows Terminal;

I've had similar issues for a long time, where the screen is not cleared properly. I used to use ConEmu with Git Bash, and when I SSH'd into a machine and exec'd into a Docker container, I saw this type of problem. I never found a solution.
Anyway, I think it's clear that there are some serious issues with these older versions of Cygwin/MSYS2 (or whatever it's called), so for now I'm more interested in finding a clean solution for running Windows SSH ahead of Git Bash SSH, with the correct TERM set.
Thanks.

I noticed the following in the Git for Windows installer:

When I run Windows SSH using something like winpty "C:\Windows\System32\OpenSSH\ssh.exe" ..., then things also work correctly.
I've set up the following alias in my .bashrc file:
alias ssh='winpty "C:\Windows\System32\OpenSSH\ssh.exe"'

Still not an ideal default experience for many others who will possibly encounter these issues, but at least it's working now.

Thanks for following up! Once Cygwin 3.1 makes its way up to git's msys2 fork, a lot of this should simply go away. The latest version allows conhost to parse VT sequences instead of implementing an intermediary. That lets them completely deprecate the cygwin term value :smile:


issues with concurrent transaction

The proper way to atomically replace a view/table in Postgres/Redshift is:

begin transaction
rename model to "model_old"
rename new model to "model'"
commit
drop table "model_old"

Currently, dbt drops the table inside of the transaction, which can lead to errors like:
ERROR: table 12345 dropped by concurrent transaction

or
could not complete because of conflict with concurrent transaction

Via @teej
See also: this SO post
To fix this, dbt's table and view materializations need to be updated to drop the old model outside of the transaction.
This PR will ultimately require < 5 lines of code change, but since it involves the table and view materializations, we should be very cautious here. Is there a good way to write an integration test for this?

you might be able to simulate this behavior by:

starting a dbt run which builds a model in one thread
in a concurrent thread attempt to access the result of this model

however i think the model would have to take long enough to build to ensure that the test doesn't sporadically pass.

You can force this condition to trigger by adding a sleep in the model's SQL. You can sleep in Redshift with:
CREATE OR REPLACE FUNCTION f_sleep (x float)
RETURNS bool IMMUTABLE
AS
$$
  from time import sleep
  sleep(x)
  return True
$$ LANGUAGE plpythonu;

oooh nice idea @teej

We only started seeing this issue when updating from 0.8.0 to 0.9.1.
Is there any workaround? And, do we know which version introduced this issue?

@igrayson we overhauled how model materializations work in 0.9.0, but it looks like the core SQL logic was unchanged.
Ultimately, this is going to be a small code change, but it's a little daunting to make because Redshift's transaction management is pretty finicky.
Happy to point someone in the right direction if they're interested in tackling this, and if not, I think we'll be able to hit it pretty soon. @igrayson @teej @abelsonlive are you folks able to help test an alpha version of this fix when one is ready? That would go a long way towards making me feel good about any prospective fix.

@drewbanin can definitely help test anything you put out... have been a bit swamped but might still take a stab at this if my schedule clears up

thanks @abelsonlive -- we're focused on getting 0.9.2 out, we'll tackle this one for 0.9.3

Sounds good - as discussed on the Slack channel, this could potentially also fix an issue I've been having where DBT is forced to wait indefinitely due to Redshift failing to execute some statements (e.g. DROP VIEW) within a transaction block. When I check the stv_recents Redshift table, the query is left in a 'running' state and doesn't complete.

This change is going to apply to Redshift / Postgres / Snowflake

I could reproduce that bug when specifying a pre-hook at the model level like so docs

Running with dbt=0.14.3

@louisguitton that's surprising -- can you tell me which database you're using? We have definitely seen this issue when grants are applied to a schema, but i've never seen it happen when grants are applied to a specific model.
Eg, this can fail:
models:
  project-name:
    post-hook: "grant select on all tables in schema {{ this.schema }} to db_reader"

or
models:
  project-name:
    post-hook: "grant usage on schema {{ this.schema }} to db_reader"

What's the exact error message that you're seeing from the database?

Thanks for following up @drewbanin .
I'm using Redshift, and a pre_hook that creates 1 UDF.
I'm running dbt run --models model_1 model_2 with 8 threads and I get
Completed with 1 error and 0 warnings:

Database Error in model stg_localytics__users_match_viewed (models/staging/localytics/stg_localytics__users_match_viewed.sql)
  could not complete because of conflict with concurrent transaction
  compiled SQL at target/compiled/of_models/staging/localytics/stg_localytics__users_match_viewed.sql

Due to the error message, I assume this is to be expected: the UDF is created twice (once for model_1 and once for model_2) on separate threads so they end up being conflicting concurrent transactions.
If I run dbt run --models model_1 && dbt run --models model_2 it works fine.
I guess then I'm approaching creating the UDFs wrong.

Ah! ok - are you able to use something like an operation to create these UDFs? Ideally Redshift would let you create UDFs transactionally, but I suppose there isn't a ton of merit to creating the same UDF once for each model anyway


azure sd with public IP

What did you do?
trying to scrape azure instances with their public IP
What did you expect to see?
metrics
What did you see instead? Under which circumstances?
the current azure implementation https://github.com/prometheus/prometheus/blob/master/discovery/azure/azure.go#L38 does not allow for Public Azure IP's to be scraped thus every azure location/ ressource group would need their own prometheus instances

Prometheus version:
any

do we have any azure credit or already running instances I can use to test this?

I suspect that you are unable to get the metrics because you haven't configured the NSG (Network Security Group) to accept traffic on the required port(s).
You may want to create an Inbound Security Rule for that purpose, either in the Azure Portal, or via command line:
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/nsg-quickstart-portal
https://docs.microsoft.com/en-us/cli/azure/network/nsg/rule?view=azure-cli-latest
I've verified this case by running the following steps:

Create a Ubuntu 18.04 VM in Azure cloud
SSH to the VM and install Prometheus Node Exporter
Add Inbound Security Rule to allow TCP traffic for port 9100
curl http://:9100/metrics

nope, this got fixed with https://github.com/prometheus/prometheus/pull/5475  and this ticket just did not get updated.


File not found

Hi,
There is issue when set file in fastfile, the result :
File is not processed.
Try to upload file by yourself:
and same time the file uploaded it to diawi .

Hi, @alahammad. Could you share the size of your file, please?

@pacification around 2 Mb.

Ok. I fixed that. Now, in 1.2.0 release, first status check fired in 2 sec (number provided by diawi docs). If you still have this behavior take a look at last_hope_attempts_count in available options.


Update README.md to change Reddit to Youtube

Changes Reddit to Youtube, which is probably a copy paste from another template

@jlengrand Good catch, thank you! 🚀


[Feature]:  Expose class's fetch containerInfo timeout to user.

Module
Core
Problem

Some conditions container will excute long time to expose ports , but currently only wait 5 seconds to fetch containerInfo.
Solution
Expose class's fetch containerInfo timeout to user and with defalt value.
Benefit
We can wait more time for heavy container to started.
Alternatives
None.
Would you like to help contributing this feature?
Yes

Hi @kiview , Can you give me some advices? I'm waiting for your reply. Thank you~

@GOODBOY008 Can you please elaborate on your use case? This code is about container creation, it is independent of the ports becoming available (we have other code that checks for this condition).
Even heavy containers will have the actual container normally created in sub-seconds.
If you have a specific setup that is failing, sharing a reproducer would help:
https://github.com/testcontainers/testcontainers-java-repro

@kiview  Thanks for your reply , I have create a repo to reproduce my sceno. https://github.com/GOODBOY008/testcontainer-issue/tree/issue-6128 .

Hi @GOODBOY008! thanks for sharing! the issue is related to the host mode. I use the the following code
    private Network network = Network.newNetwork();

    @Test
    public void demonstration() {

        try (
                GenericContainer<?> OB_SERVER =
                        new GenericContainer<>("oceanbase/oceanbase-ce:3.1.4")
                                .withNetwork(network)
                                .withExposedPorts(OB_SERVER_SQL_PORT, OB_SERVER_RPC_PORT)
                                .withEnv("OB_ROOT_PASSWORD", OB_SYS_PASSWORD)
                                .waitingFor(Wait.forLogMessage(".*boot success!.*", 1))
                                .withLogConsumer(new Slf4jLogConsumer(LOG));
                GenericContainer<?> LOG_PROXY =
                        new GenericContainer<>("whhe/oblogproxy:1.0.3")
                                .withNetwork(network)
                                .withExposedPorts(LOG_PROXY_PORT)
                                .withEnv("OB_SYS_USERNAME", OB_SYS_USERNAME)
                                .withEnv("OB_SYS_PASSWORD", OB_SYS_PASSWORD)
                                .waitingFor(Wait.forLogMessage(".*boot success!.*", 1))
                                .withLogConsumer(new Slf4jLogConsumer(LOG));
        ) {
            Startables.deepStart(Stream.of(OB_SERVER, LOG_PROXY)).join();
        }
    }

and it worked. is it helps? Otherwise, I think you can follow #5151 due to this is duplicated.

@eddumelendez Thanks , it's worked.


Product metafields

Is it possible to get product metafields data? If so how do i get it?
Thank you

I got it
$productsClient->read($productId . "/metafields");
Thanks though


Changing Camera Exposure in updating SubViewport causes Flickering

Godot version
v4.1.2.stable.openSUSE [399c9dc39]
System information
Godot v4.1.2.stable (399c9dc39) - openSUSE Tumbleweed 20231108 (Kernel 6.5.9) - Wayland - Vulkan (Forward+) - dedicated AMD Radeon RX 580 Series (RADV POLARIS10) (Mesa 23.2.1) - Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz (8 Threads)
Issue description
When changing the exposure_multiplier of a Camera3D that is in a SubViewport, which is currently updating it's render target, the active Camera3D (not in the SubViewport) flickers for 1 frame.
If there is a 2nd SubViewport, which is currently updating it's render target, with a Camera3D that does not have it's exposure_multiplier changed, the image will flicker constantly between the 2 exposure multipliers.
https://github.com/godotengine/godot/assets/3923406/3c068e3c-fc27-4390-a648-674f8250e7dc
Steps to reproduce

Create a Scene
Create an active Camera3D
Create SubViewport > Camera3D (camera1)
Create another SubViewport > Camera3D (camera2)
Set BOTH SubViewports render target update mode to ALWAYS
add CameraAttributesPractical to BOTH cameras
camera1.attributes.exposure_multiplier = 8
image flickers

Minimal reproduction project
CameraExposureBugMRE.zip

I have just tested this again on v4.3.stable.openSUSE [77dcf97d8] and it is still a problem :(


xDS conformance test suite

It would be helpful to control plane implementors and client implementations to have an xDS conformance test suite that is independent of Envoy. I think this would largely look like some scripts (Python or Go) that create xDS gRPC connections and exercise some xDS exchanges.
A priority area here is delta xDS, which control plane implementors consider to be challenging to verify.
I think we could separate this work into two parts; building out the basic test infra and then building out an increasingly more complete test suite.
@snowp @howardjohn @derekargueta

@caniszczyk @mattklein123 I remember a while back we were discussing possibilities here; I think there was someone at Lyft interested in this and also CNCF funding. In any case, would be rad to learn what is possible here.

Thinking about this abstractly, I think starting with client conformance might be much easier even though it might have less value since afaik Envoy is the only conforming client (could be nice as out-of-tree integration tests I suppose).
Control plane conformance might be a bit difficult since there isn't a universal way to set the backing resources such as endpoints, listeners, routes, etc. Many control planes use Kubernetes ConfigMaps, some use databases like PostgreSQL, etc. So for the control plane being tested, the test suite would have to know how to set up the backing store such that the control plane will return certain resources, otherwise it's non-deterministic, especially true of delta xDS where to verify correctness it's useful to validate which resources aren't being sent. This becomes even more challenging for everyone building a private internal control plane that has its own idioms.
As a more concrete example, we could write a Go script that sends a DiscoveryRequest to the control plane with an empty resource_names to indicate return all resources, but without a way to set mock return values then if the control plane returns an empty list it's difficult to discern whether there really are no resources to return or if there's a bug in the control plane and it's actually not conforming. Ideally we'd have something like
[ test client scripts ] <---> [ control plane being tested ] <--- [ test data files to populate store ]

where the control plane can consume a file specification to return mock data but that might be a moonshot. Perhaps something we could bake into the (go|python|java)-control-plane libraries to make it an easy API to adopt?

@derekargueta yeah, this is a good point. I think a well written xDS server should have some ability to mock here, i.e. there is some support for dependency injection. Something like the go-control-plane should be hiding the intricacies of things like nonce handling or delta discovery from the rest of the system, so this is the main validation target, not the entire control plane.  Some kind of test harness for xDS server configuration makes sense.

I think I'm saying the same thing as Harvey here, but I think one thing to keep in mind is that the scope of these tests don't need to be expanded to necessarily handle all kinds of control plane interactions: the goal would to be validate the xDS implementation specifically, not the configuration pipeline etc.
In practice, this means that the conformance test run against the go-control-plane code, not the various control plane implementations that use it, as it doesn't leak the xDS implementation.
I can imagine implementing some basic mock API (file based/gRPC/whatever) that would simply update resources for a specific client (identified by its Node struct), with the ability to update things at the required granularity to verify that the xDS server behaves as expected. Given that the xDS protocol isolates individual clients, all we need to express is changes to the resources required by the one client that's connecting.
For go-control-plane & co this could likely be a small implementation that sits on top of its API, mapping mock calls to calls to updating the snapshot. For other implementations, I can imagine this encouraging a logical split within their code base between the xDS implementation and the rest (if one doesn't already), allowing them to integrate their xDS bits with the mock API to run against the conformance test.

This would be super useful for us. We have a test XDS server, and often times I cannot tell what is part of the XDS spec, what is an envoy implementation detail, and what is an implementation detail of our test server. This is especially common around handling ACKs.

I have been playing around with this a bit some thoughts:
I think implementing in Go will be the most useful because

It would be nice to provide the ability to just call xdsconformance.RunConformanceTest(t) for an existing go test. I realize not everyone has go control planes, but its certainly one of the most popular
It seems a hard requirement to provide a standalone binary that can run the tests. This will support non-go control planes. Doing this with python can be a bit of a pain, so this would push me towards using go
We can rely on go-control-plane for the generated go structs. Not sure what this looks like in python?

Regarding test input, there are a fair amount of parameters we will need (thinking from a server conformance perspective):

Address/connection settings (such as TLS) for the control plane
What feature sets are supported - server may serve CDS but not LDS for example

Likely want a label selection mechanism?

Node information to pass, unless we decide that to be a conformant xds server you must interact with arbitrary Nodes?
What resources are available. This is mentioned above about mock api. I am not sure we actually need deep introspection of the resources returned, I would think most tests will just check the DiscoveryRequest and not unmarshal the Resources field as this will break pretty quickly for any custom filters. It may be possible to instead just declare the resource names available? For example,  I may decide in my control plane for node=conformance-test-node I return endpoints mock-1 and mock-2. So in the test input I configure the node to identify as conformance-test-node, and I put endpoints: [mock-1, mock-2]. The test will then send an EDS request with this node and request mock-1 and mock-2 endpoints. For users who do not have/want a mock, they could instead configure the test to declare endpoints some-real-endpoint and run it against a live deployed XDS server?

I am building out some of the basic infra for this and trying to populate some super basic tests to see what this can look like at: https://github.com/howardjohn/xds-conformance. I am hoping we can get some idea of how this will work there then can merge it into envoyproxy org and add the actual tests

As discussed IRL, I agree we don't need deep mocking of resources, but there will need to be some sort of shim to allow named resources of different types to be created, deleted and updated (including version).

@howardjohn where did you end up with your explorations?

CNCF and @envoyproxy/api-shepherds have an RFP for vendors to bid on a project to build this in https://github.com/envoyproxy/envoy/issues/13165.

@howardjohn do you have any additional update? HH are spinning up on this project and would like to know if there's anything to be learned from the Istio experience. Thanks.

@htuch beyond https://github.com/envoyproxy/envoy/issues/11299#issuecomment-647711851 I haven't explored this much. I ran into issues with figuring out the "mock API" or inputs and how to make it generic. As a result, we just focused on expanding our own Istio-specific "conformance" tests which we have a fake ADS client, with Istio specific configurations. Most of these are in https://github.com/istio/istio/blob/8105c2bb98582ee78519dd7a19c7a5f1ab3faba6/pilot/pkg/xds/ads_test.go#L50-L49.


Remove "legacy code"

The recently released v0.20.0 was the last release to include the legacy implementation. In preparation for v1.0.0 it is time to actually say farewell to the legacy implementation. Here is a (likely non-exhaustive) list of related tasks:

Identify and remove legacy code, tests and documentation
Review and update continued resources as necessary

README (e.g. 1.0.0 release and legacy deprecation announcements)
some python-tuf/docs/
theupdateframework.io
TUF specification
'passing', 'silver' and 'gold' criteria on bestpractices.coreinfrastructure.org
...

Consider renames

ngclient -> client
IMO the name ngclient makes most sense in relation to the "old" client and so will lose its meaning after the old client has gone, at least after a while
api.metadata -> metadata
IIRC the api directory was a bit of a crutch to develop new code alongside legacy code without mixing them up, which we won't need after removing the legacy code. IMO api should be designated by other means, e.g. on RTD

ngclient -> client

I prefer keeping ngclient: this way any old code from tuf.client.updater import Updater fails immediately which I think is a good thing now that the API is slightly different. I don't think client is significantly more discoverable either: users are going to read the API reference or example code anyway.

api.metadata -> metadata

Fine by me (although I don't feel a strong need: imports look fine to me now). If we do this I would suggest we consider keeping the code where it is though (for git reasons) and solving the problem with clever imports.

Consider renames

ngclient -> client
IMO the name ngclient makes most sense in relation to the "old" client and so will lose its meaning after the old client has gone, at least after a while
api.metadata -> metadata
IIRC the api directory was a bit of a crutch to develop new code alongside legacy code without mixing them up, which we won't need after removing the legacy code. IMO api should be designated by other means, e.g. on RTD

Are we sure we won't lose the Git history if we do this?
If we do, then I will prefer if we don't rename...
See my comment https://github.com/theupdateframework/python-tuf/issues/1582#issuecomment-940436906.

I don't think client is significantly more discoverable either: users are going to read the API reference or example code anyway.

To me it's not about discoverability, but more about the baggage of the "previous generation"-client the name refers to, which I think is unnecessary.
The "error on import argument" is fair, although I don't think this will be a problem in practice.

I would suggest we consider keeping the code where it is though (for git reasons) and solving the problem with clever imports

Isn't part of the python zen to not be clever with imports? :) Also, an import alias wouldn't really solve the problem that the repo has an unnecessary subfolder.
So I'd either rename or leave as is. And I don't think git history is a problem, because many git features work across renames out of the box, and those that don't can usually be worked around when you know that there was a rename at some point, which can be communicated in the renaming commit's message.

Isn't part of the python zen to not be clever with imports

You make a valid point ... but as an example of something not-too-clever I think we aren't using __init__.py like we could -- so we could make from tuf.api.metadata import Metadata into from tuf.api import Metadata if we wanted and I think that would make the import less ugly?

Consider renames

After a meeting with @jku and @lukpueh it was decided that there is no need to do renames.

ngclient -> client
IMO the name ngclient makes most sense in relation to the "old" client and so will lose its meaning after the old client has gone, at least after a while

Using ngclient as opposed to the client has the advantage that when an user of the old code wants to integrate to the new client the imports will fail and this will lead him/her to read our RTD documentation.
Otherwise, if we use the client name the import will succeed and the API itself will fail at a later stage which will be strange.

api.metadata -> metadata
IIRC the api directory was a bit of a crutch to develop new code alongside legacy code without mixing them up, which we won't need after removing the legacy code. IMO api should be designated by other means, e.g. on RTD

There were no strong preferences between using using api or something else. We all agreed that renaming it to metadata specifically was a bad idea given the use case when the user wants do import Metadata from tuf.metadata.metadata which sounds... weird.


Advanced solution for Whereforarthou

Challenge Name

Issue Description

Browser Information

Browser Name, Version:
Operating System:
Mobile, Desktop, or Tablet:

Your Code

 function whatIsInAName(collection, source) {
  // "What's in a name? that which we call a rose
  // By any other name would smell as sweet.”
  // -- by William Shakespeare, Romeo and Juliet
  var srcKeys = Object.keys(source);

  // filter the collection
  return collection.filter(function (obj) {
    return srcKeys.reduce(function (res, key) {
      return obj.hasOwnProperty(key) && obj[key] === source[key];
    }, false);
  });
}

// test here
whatIsInAName([{ first: "Romeo", last: "Montague" }, { first: "Mercutio", last: null }, { first: "Tybalt", last: "Capulet" }], { last: "Capulet" });

Screenshot

if you use {first : "ron", last: "Capulet"} as the source, you get a false positive.  The last object in the collection is returned but it shouldn't be because it is not a 100% match.

@sethkoch Thanks for reporting. Please open this issue on the wiki repo.


Add support for WAR-deployment

Original issue 204 created by soi-toolkit on 2011-11-29T20:54:10.000Z:
WAR-deployment was removed when introducing support for Mule Studio, there is however still demand for the WAR-deployment model.
To have a consistent component model across deployment environments we also need to add support for deploying teststubs as WARs.

Won't fix. No current demand for WAR-deployments.


The mAP for classification on voc2007 is low after training

As I run the runme.sh, only 20 epochs are specified on VOC2007, but after 20 epoch, the mAP for classification is only 20%, far away from 80% reported in paper. And now I have iterate over 300 epoch, the mAP on trainval is only 53%, the mAP on test is 42%. So how many epochs should I train here?

@yeezhu Thank you. I use python2 instead of python 3, but no error occurs. I suspect it is because of the pretrained VGG16 model that have not been correctly used. At the first iteration, the classification mAP is only %8. Do you remember how much is the mAP for classification using the pretrained VGG16?

@yeezhu Thank you. I have not correctly loaded the pretrained model.
I started to train on voc2007 from scrach, after 479 epoch, the trainval mAP is 75%, the test mAP is 43%.
However, directly train from scrach should have comparable accuracy then using pretraind model, but in this case, the training data quantity for voc2007 is only 5k, so the result is worse.
This example illustrates that using the model trained from larger dataset can significantly accelerate the training speed and enhance accuracy.
With the pretrained model, the mAP for testing goes to 88% after 20 epoches


Bug in 13-setup-user

The following appears after typing the password.
arch-installer/scripts/13-setup-user.sh: line 10: root: command not found
Please type in a password for  user:

Solved with commit e8abc4f197d23b792003a59c0c16d1e1fa6f7ed4


Examples page showing all possible kinds of charting

Data:

Simple pairs
Table from csv.reader
Table from csv.DictReader
Indexing with accessor functions

Shapes:

Bars
Columns
Dots
Lines
Layering shapes

Scales:

Linear (numerical data)
Ordinal (category data)
Temporal (timeseries data)

Axes:

Changing tick count
Customizing tick format

Styling charts:

Changing theme values
Customizing chart defaults
Styling with row functions


edit math.stackexchange posts linking to pi-base

Not really an issue for this repo, but a project to help discoverablity.
https://math.stackexchange.com/search?q=url%3A"topology.jdabbs.com" shows posts that link to the old domain. Some of these redirect fine, others don't. In particular, several older references use URL params that are no longer supported for searches.
I've submitted edit requests for a handful of the first results, but hit my limit for pending edits. So this will be a slow process (but others could assist with it).

I started making some edits for this.  And then came across this one:
https://math.stackexchange.com/questions/4484979
where the answer from Samuel Adrian Antz links to topology.jdabbs.com and also to https://counterexamples.info.  This latter site seems completely up to date even!  Is this a link to the real one, or a pirated copy?

https://counterexamples.info/

Ha, I think that's just another domain James bought at some point. Next time I connect with him I'll suggest he set it up as a redirect or take it down.

All links have now been updated.


chore(main): release 0.9.1

:robot: I have created a release beep boop
0.9.1 (2024-09-12)
Bug Fixes

Hide list fields and fix remove then add (011db77)
Treat empty string as invalid (25fe845)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/philipcristiano/w2z/releases/tag/v0.9.1 :sunflower:


Support generic arguments for (named) constructors

Sometimes constructors need to have generics that don't appear in the class itself in order to fully express their type relationships. new Map.fromIterable() is a good example:
Map.fromIterable(Iterable elements, {K key(element), V value(element)});

If elements has a generic type, the key() and value() callbacks are guaranteed to be passed an argument of that type, but there's currently no way to express that. Using generic types here blocks inference and makes it very difficult to use this API in strong mode. I propose that we be able to declare:
Map.fromIterable<E>(Iterable<E> elements, {K key(E element), V value(E element)});

which would be called like new Map<String, String>.fromIterable<int>(...). This syntax allows the user to omit the generic argument to the constructor while retaining it for the class itself if desired.

I have encountered this in other parts of the core libraries as well.

The biggest issue is, that the syntax works much less nicely for unnamed constructors.

I have a few cases too where I could have used that too.
I don't think it's a big problem that it doesn't work for the unnamed constructor. Writing new Foo<int>(...) should be reserved for the plainest way to create a Foo. Do we know of cases where it's a problem?

I haven't encountered one yet, and I agree that this seems like a reasonable restriction.

I think it makes a lot of sense to have this feature. It shouldn't be much extra work on top of all the other kinds of generic routines we have already, and it looks like an oversight to omit it.
The main use for it would be to ensure consistency among type parameters used in the types of ordinary parameters.
It would probably not make much sense for the newly created object to store the actual arguments or anything else which is directly characterized by E (E should then probably have been a class type variable, not a constructor type variable). But I think that the mutually consistent types of ordinary parameters is already a fine justification for having this feature.

@eernstg @floitschG @lrhn @munificent
Is this something we can take on soon?  It seems useful.

One funny little thing is that a constructor may use a generic named constructor in a superinitializer, so we need support for super.theName<Some, Type, Arguments>(some, value, arguments) as well (there's no guarantee that the superinitializer takes the same type arguments, or even the same number of type arguments).
Given that there is no return value from a constructor we generally won't have a contextual expectation available during type inference for these type arguments, but the type arguments would presumably be used to "fill in some coordinated blanks" in the types of value arguments, so type inference is likely to be able to provide the type arguments.
So there will be some corners of this feature which are new, but probably no show-stoppers.

On minimal thought, I would expect that if we have:
class B<T> extends A<F<T>> {
  B.make<S>(...) { super.make(...); };
}

then you could use A<F> as the contextual expectation for the super call?  I might be missing some details though - definitely needs to be worked through.

The starting point is that we are adding a new construct: superCallOrFieldInitializer in the grammar would need to be modified to allow for passing actual type arguments. We might need to answer new questions in relation to that, and I was just checking out whether we're likely to have new and interesting problems when we implement this feature.
It's about the type arguments of a named constructor itself, not the type arguments of the enclosing class. E.g., in super.make below we pass <int> (or we could have it inferred):
class A {
  int x;
  A.make<T>(String s, int Function(T) f, T Function(String) g) {
    x = f(g(s));
  }
}

class B extends A {
  B.make(String s): super.make<int>(s, (s) => s.length, (i) => i);
}

I noted that we don't have a return type since this is a constructor, and the type arguments of the constructor itself would not be able to occur in the type of the newly constructed object, and hence we couldn't use a return type nor the type of this during inference of those actual type arguments.
In practice, I expect these type arguments to be used to bridge some gaps in the typing of the actual arguments, like in the example. This seems to imply that "transfer of information from one argument to another" will be important for this particular kind of inference.
However, my conclusion was that this isn't actually new (the same difficulties can arise in concrete examples today), so we should probably just get started. ;-)

I'm in favor of getting this done.
As Natalie mentioned: we have cases where we need those in the core library, and there shouldn't be any big show-stoppers.

I would really like this feature too. Map.fromIterable() is pretty frequently used, and the user experience is decidedly subpar right now.

Similar #30041

Assuming this doesn't make it into Dart 2.0, it wouldn't be considered a breaking language change, so that it could be added soon after, correct? Like Dart 2.1? I've gotten many questions about this, mostly regarding Map.fromIterable().

Don't hold me to this:

I don't think it's a breaking change to the language, though there may be a weird corner of the grammar I'm not considering. I believe, though, that the combination of generic methods and optional new in Dart 2.0 means that we've already absorbed the grammatical breakage we'd need for generic constructors.

I believe it probably is a (minor) breaking change to the core libraries to use generic constructors for things like Map.fromIterable(). Consider:
List<String> strings = [];
doubleInt(int i) => i * 2;
Map.fromIterable(strings, key: doubleInt);

I think this (not very useful) code would run in Dart 2.0 and fail statically if Map.fromIterable became generic when it tries to infer T.

On Sat, Feb 10, 2018 at 12:34 AM, Bob Nystrom<EMAIL_ADDRESS>wrote:

Don't hold me to this:

I don't think it's a breaking change to the language, though there
may be a weird corner of the grammar I'm not considering. I believe,
though, that the combination of generic methods and optional new in
Dart 2.0 means that we've already absorbed the grammatical breakage we'd
need for generic constructors.
If we could add any more features, this one would be top of the list. It
really is just a missing case of the existing generic method feature.

I believe it probably is a (minor) breaking change to the core
libraries to use generic constructors for things like
Map.fromIterable(). Consider:
List strings = [];doubleInt(int i) => i * 2;Map.fromIterable(strings, key: doubleInt);
I think this (not very useful) code would run in Dart 2.0 and fail
statically if Map.fromIterable became generic when it tries to infer T.
Constructors are basically static methods, and we don't have tear-offs of
them yet, so any change to the signature that allows all existing calls
should be safe.

The example above ... is a breakage I would be willing to allow. It's so
badly typed that it's not meaningful. The fact that we couldn't catch the
type error doesn't make the program valid, just lucky.
If we changed the constructor to:
Map.fromIterable(Iterable elements, {K key(T element), V value(T
element)})
then any good code should still work.
As usual, we'll have to make some test runs to see if there is code that
would need patching.
/L
Lasse R.H. Nielsen -<EMAIL_ADDRESS>'Faith without judgement merely degrades the spirit divine'
Google Denmark ApS - Frederiksborggade 20B, 1 sal - 1360 København K

Denmark - CVR nr. 28 86 69 84

It's not a breaking change to the language. It's just a case of a feature not making it into Dart 2.0, like a lot of other good features. It's pretty high on my list of annoyances to address ASAP.
Constructors are basically static methods, and we don't have tear-offs of them yet, so any change to the signature that allows all existing calls should be safe.
The example above ... is a breakage I would be willing to allow.
It's so badly typed that it's not meaningful. The fact that we couldn't catch the type error doesn't make the program valid, just lucky. If we changed the constructor to:
Map.fromIterable<T>(Iterable<T> elements, {K key(T element), V value(T
element)})

then any good code should still work. It took an empty list above to get something mis-typed through without causing a runtime error.

Can you be explicit and say new Map<Foo, Bar>.fromIterable<Baz>(...) ?

The support of generic arguments for named constructors is also needed in this case:
abstract class Filter<T> {
  Filter();

  factory Filter.type/*<C extends T>*/() = _TypeFilter<C, T>; // no other way to specify C here :(

  bool allow(T t);
}

class _TypeFilter<C extends T, T> extends Filter<T> {
  @override
  bool allow(T t) => t is C;
}

Any updates on this, now that we're post-2.0?

No update. We're currently hard at work on non-nullable types and extension methods, so we probablty won't get to this until those are done.


Form labels for the access permissions modal

We're using a model to edit access permissions and it needs some attention.
WDLL

add appropriate a11y label to the search form for finding existing users
"+" for adding permissions should be labeled

Made obsolete in #654


integeroverflow TileSystem.GroundResolution(latitude, zoom) and MapSize()

Issue Type
[X] Bug
Versions

org.osmdroid:osmdroid-android:6.0.1
org.osmdroid:osmdroid-mapsforge:6.0.1
org.mapsforge:mapsforge-map-android:0.6.1
org.mapsforge:mapsforge-map:0.6.1
android-7.1

When using osmdroid-<IP_ADDRESS> i get
tileProvider.getMaximumZoomLevel() = 29.0.
Calculating double roundResolution = TileSystem.GroundResolution(8.0 , 29); results in an integer overflow
public final class TileSystem {
	protected static int mTileSize = 256;

	public static double GroundResolution(double latitude, final int levelOfDetail) {
		latitude = Clip(latitude, MinLatitude, MaxLatitude);
		return Math.cos(latitude * Math.PI / 180) * 2 * Math.PI * EarthRadius
				/ MapSize(levelOfDetail);
	}

	public static int MapSize(final int levelOfDetail) {
		return mTileSize << (levelOfDetail < getMaximumZoomLevel() ? levelOfDetail
				: getMaximumZoomLevel());
	}
}

	public static int MapSize(final int levelOfDetail=29) {
		return 256 << 29; // this is more than maxint=4 294 967 295
	}

Changing int MapSize() to long MapSize() should fix the problem

@k3b You should use org.osmdroid.util.TileSystem rather than microsoft.mappoint.TileSystem. That solves everything.
@spyhunter99 Couldn't we just remove microsoft.mappoint.TileSystem?

thanks @monsieurtanuki that solved my problem. I was not aware that there are two classes.
I am not closing this ticket as a reminder for  remove microsoft.mappoint.TileSystem


Compiled with warnings

Hi.
I was running
npm run start

The result
Compiled with warnings.

../contracts/Counter.sol
Error: Command failed: zos push --network development --no-interactive
error: unknown option `--no-interactive'

../contracts/Wallet.sol
Error: Command failed: zos push --network development --no-interactive
error: unknown option `--no-interactive'

Search for the keywords to learn more about each warning.
To ignore, add // eslint-disable-next-line to the line before.

What's the keywords?
What should i search?

But I can see it.
It is zepkit running page.
→http://localhost:3000/counter

Add this photo.
running zos  push
The result
Using session with network development, sender address 0x~~
Compiling contracts with Truffle...
Cannot read property 'match' of undefined
Created zos.dev-1557913295593.json

Hey @takattty. Thanks for trying ZepKit!
We are about to release a new version of ZeppelinOS and got a bit ahead of ourselves.
Can you reinstall ZepKit with exactly these versions npm install -g<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>If you'll have any trouble feel free to create another issue.

Hi, @ylv-io .
Thanks to you, I finished all this tutorial(https://blog.zeppelinos.org/getting-started-with-zepkit/)
Thank you for giving me good advice.
Actually, There is an event to use Zepkit at May 22th in Japan.(https://hashhub.connpass.com/event/130255/)
so, may i create an article that is added some code and instructions in this tutorial for use in the event??
Thank you so much

Hey @takattty.
Absolutely. Go ahead!
ありがとう


The uploader_id template does not print asian characters or letters with diacritical marks on the yt site.

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that yt-dlp is broken on a supported site
[X] I've verified that I have updated yt-dlp to nightly or master (update instructions)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[ ] I've read about sharing account credentials and I'm willing to share it if required

Region
No response
Provide a description that is worded well enough to be understood
The template uploader_id doesn't print asian characters or letters with diacritical marks on the yt site. While the template uploader does.
Example Channel URL:

https://www.youtube.com/@으아-v1k
https://www.youtube.com/c/CONTROLMÁS-SUILERALTAMIRANO

Example Command:
yt-dlp -o "./%(uploader)s %(uploader_id)s/Videos/%(upload_date)s %(uploader_id)s %(title)s [%(id)s].%(ext)s" "Example_Channel_URL"
Output:
Name of the created folders

ㅇㅇ#
Suiler Altamirano - Control + NA

Using the --print argument.
Command:
yt-dlp -vU --print uploader,uploader_id "https://www.youtube.com/shorts/18NGQq7p3LY"
Ouput:
ㅇㅇ
NA

Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', '--print', 'uploader,uploader_id', 'https://www.youtube.com/shorts/18NGQq7p3LY']
[debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>from yt-dlp/yt-dlp [542166962] (win_exe)
[debug] Python 3.10.11 (CPython AMD64 64bit) - Windows-10-10.0.19045-SP0 (OpenSSL 1.1.1t  7 Feb 2023)
[debug] exe versions: ffmpeg 2024-07-07-git-0619138639-full_build-www.gyan.dev (setts), ffprobe 2024-07-07-git-0619138639-full_build-www.gyan.dev, phantomjs 2.1.1
[debug] Optional libraries: Cryptodome-3.21.0, brotli-1.1.0, certifi-2024.08.30, curl_cffi-0.5.10, mutagen-1.47.0, requests-2.32.3, sqlite3-3.40.1, urllib3-2.2.3, websockets-14.1
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets, curl_cffi
[debug] Extractor Plugins:
[debug] Post-Processor Plugins:
[debug] Plugin directories: []
[debug] Loaded 1839 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp)
[youtube] Extracting URL: https://www.youtube.com/shorts/18NGQq7p3LY
[youtube] 18NGQq7p3LY: Downloading webpage
[youtube] 18NGQq7p3LY: Downloading ios player API JSON
[youtube] 18NGQq7p3LY: Downloading mweb player API JSON
[debug] Loading youtube-nsig.f8f53e1a from cache
[debug] [youtube] Decrypted nsig uq0JCV23R3b7atLWxO4 => 9vigDFaIWXoXwA
[debug] Loading youtube-nsig.f8f53e1a from cache
[debug] [youtube] Decrypted nsig -T_DSjpoOPpyTJKSn0b => N9TXRFGASCEhbA
[youtube] 18NGQq7p3LY: Downloading m3u8 information
[debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec, channels, acodec, lang, proto
[debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec, channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
[debug] Default format spec: bestvideo*+bestaudio/best
[info] 18NGQq7p3LY: Downloading 1 format(s): 315+251
ㅇㅇ
NA

This looks like two distinct, though semi-related, issues

The extractor fails to return an uploader_id for the first channel's videos because the non-ASCII characters are being percent-encoded, both by yt-dlp and by Youtube. We would need to urllib.parse.unquote the values before regex searching for the @-handle:

diff --git a/yt_dlp/extractor/youtube.py b/yt_dlp/extractor/youtube.py
index fd9c7107c..6822aef8c 100644
--- a/yt_dlp/extractor/youtube.py
+++ b/yt_dlp/extractor/youtube.py
@@ -518,11 +518,12 @@ def ucid_or_none(self, ucid):
         return self._search_regex(rf'^({self._YT_CHANNEL_UCID_RE})$', ucid, 'UC-id', default=None)

     def handle_or_none(self, handle):
-        return self._search_regex(rf'^({self._YT_HANDLE_RE})$', handle, '@-handle', default=None)
+        return self._search_regex(rf'^({self._YT_HANDLE_RE})$', urllib.parse.unquote(handle),
+                                  '@-handle', default=None)

     def handle_from_url(self, url):
         return self._search_regex(rf'^(?:https?://(?:www\.)?youtube\.com)?/({self._YT_HANDLE_RE})',
-                                  url, 'channel handle', default=None)
+                                  urllib.parse.unquote(url), 'channel handle', default=None)

     def ucid_from_url(self, url):
         return self._search_regex(rf'^(?:https?://(?:www\.)?youtube\.com)?/({self._YT_CHANNEL_UCID_RE})',

The second channel does have the same percent-encoding thing going on, but more importantly, it does not have any @-handle. When I print the values we pass to handle_or_none() and handle_from_url(), this is the output:

http://www.youtube.com/c/CONTROLM%C3%81S-SUILERALTAMIRANO
/c/CONTROLM%C3%81S-SUILERALTAMIRANO

And since the channel has no @-handle, the uploader also does not have a display name in the comments:

@coletdjnz Any ideas about this?

This looks like two distinct, though semi-related, issues

The extractor fails to return an uploader_id for the first channel's videos because the non-ASCII characters are being percent-encoded, both by yt-dlp and by Youtube. We would need to urllib.parse.unquote the values before regex searching for the @-handle:

diff --git a/yt_dlp/extractor/youtube.py b/yt_dlp/extractor/youtube.py
index fd9c7107c..46b0eafda 100644
--- a/yt_dlp/extractor/youtube.py
+++ b/yt_dlp/extractor/youtube.py
@@ -518,11 +518,12 @@ def ucid_or_none(self, ucid):
         return self._search_regex(rf'^({self._YT_CHANNEL_UCID_RE})$', ucid, 'UC-id', default=None)

     def handle_or_none(self, handle):
-        return self._search_regex(rf'^({self._YT_HANDLE_RE})$', handle, '@-handle', default=None)
+        return self._search_regex(rf'^({self._YT_HANDLE_RE})$', urllib.parse.unquote(handle or ''),
+                                  '@-handle', default=None)

     def handle_from_url(self, url):
         return self._search_regex(rf'^(?:https?://(?:www\.)?youtube\.com)?/({self._YT_HANDLE_RE})',
-                                  url, 'channel handle', default=None)
+                                  urllib.parse.unquote(url or ''), 'channel handle', default=None)

     def ucid_from_url(self, url):
         return self._search_regex(rf'^(?:https?://(?:www\.)?youtube\.com)?/({self._YT_CHANNEL_UCID_RE})',

The second channel does have the same percent-encoding thing going on, but more importantly, it does not have any @-handle. When I print the values we pass to handle_or_none() and handle_from_url(), this is the output:

http://www.youtube.com/c/CONTROLM%C3%81S-SUILERALTAMIRANO
/c/CONTROLM%C3%81S-SUILERALTAMIRANO

And since the channel has no @-handle, the uploader also does not have a display name in the comments:

@coletdjnz Any ideas about this?

If there is no handle, then there is no uploader_id/uploader extracted. This is intentional so the behaviour for 2 is expected.

In the second case I think it's fine to print /c/CONTROLMMAS-SUILERALTAMIRANO as it would imply that there is no identifier. But changing the / character to ⧸ for file and folder names. I don't know if it's possible to do that but it's just a comment.
So is there a solution for both? Should I wait for the next update?

There is a solution for 1, but the lack of uploader_id for the 2nd case is intentional, so there will be no fix for that

I understand. The first case solution is the one I need the most at the moment so it's Ok. So I have to wait for the next update for the first case solution?

@iXDXD After #11818 is merged, you'll be able to run yt-dlp --update-to masterto get the fix. Or else wait until the next stable release

Great. Many thanks!!


[CT-3464] Remove usage of dbt.node_types in dbt/adapters

Resolved in https://github.com/dbt-labs/dbt-core/pull/9210/files#diff-8b301fa58dbc12c519f4bf6e3056605c09aea9da46b21d2ec5fd979cfd4f38adL16


[FR DateTimeV2] Resolving the time part of a date-time expression separately from date

For some expressions that would be evaluated as a single date-time in EN, the time is returned separately in FR:
•	FR: "hier soir vers 22h" returns 2021-01-14TEV and T22
•	EN: "last night around 10 p.m." returns 2021-01-14T22

Same for "hier soir à 22h" and "hier soir à 22 heures".

@tellarin , why did you close the issue ?

@cahann, it seems it was a mistake. I've even made edit and tagged the issue after that.
We have a fix coming for it, but it's not merged yet.
Thanks for catchig it!

/master branch code currently supports it. It will be included in release v1.6.1 coming out soon.


Lua keymaps and keymaps without actions

Nixpkgs channel: unstable
Home-manager version: master branch and home.stateVersion = "23.05";
Description
Since https://github.com/nix-community/nixvim/pull/605 I am unable to define keymaps with only a description and no action.
I used this to get nice prefixes in which-key. Instead it results in the following error:
Error detected while processing /home/maxh/.config/nvim/init.lua:
E5113: Error while calling lua chunk: vim/keymap.lua:0: rhs: expected string|function, got nil
stack traceback:
        [C]: in function 'error'
        vim/shared.lua: in function 'validate'
        vim/keymap.lua: in function 'set'
        /home/maxh/.config/nvim/init.lua:248: in main chunk
Press ENTER or type command to continue

In addition, keymaps that use actions defined in lua give the following error:
Error detected while processing /home/maxh/.config/nvim/init.lua:
E5113: Error while calling lua chunk: vim/keymap.lua:0: rhs: expected string|function, got boolean
stack traceback:
        [C]: in function 'error'
        vim/shared.lua: in function 'validate'
        vim/keymap.lua: in function 'set'
        /home/maxh/.config/nvim/init.lua:248: in main chunk
Press ENTER or type command to continue

Config
First keymap for the first error, second keymap for the second error:
programs.nixvim.enable = true;
programs.nixvim.plugins = {
   mini = {
      enable = true;
      modules = {
         bufremove = {};
      };
   }
};
programs.nixvim.keymaps = [
    { key = "<leader>f"; options.desc = "File"; }
    { key = "<leader>bk"; action = "MiniBufremove.delete(0)"; lua = true; options.desc = "Kill buffer"; }
];

For the second keymap the following does work:
programs.nixvim.keymaps = [
   { key = "<leader>bk"; action = "<CMD>lua MiniBufremove.delete(0)<CR>"; options.desc = "Kill buffer"; }
];

Hello !
For the lua issue, this is indeed not normal. I was not able to reproduce your bug.
Can you try to update nixvim to the latest version please ?
For the "keymap without action" scenario you are right. It is no more possible.
This is intended in the new design.
To provide a description without defining the mapping itself, you should now use plugins.which-key.registrations.
This is much more natural as it imitates what you would do in lua to do the same thing.

Hello!
Apologies for the delay.
I'll register the which-key definitions in the intended way ;)
As for the other issue,
keymaps = [
  {
    key = "<leader>tt";
    action = "function() print('hello') end";
    lua = true;
    options.desc = "Test"
  }
];

works for me as well.
I have updated nixvim to the latest version and my lua keymap issue still persists on my machine.
Calling MiniBufRemove.delete(0) from the command palette works as expected, but including it as a lua keybind breaks my config. The non-lua version works fine.

Thanks for your reply.
Your issue with MiniBufRemove.delete(0) has nothing to do with nixvim actually.
When you bind a lua action, you have to provide a function, not a call.
# valid (my_func is a function)
vim.keymap.set('n', '<leader>tt', 'my_func', {})

# invalid, here we provide a **call** to my_func
vim.keymap.set('n', '<leader>tt', 'my_func()', {})

# If my_func expect some parameter, you have to wrap it in a parameter-less function:
vim.keymap.set('n', '<leader>tt', 'function() my_func(42) end', {})

I will close this as I guess that there are no more nixvim-related bugs.
Feel free to re-open if I missed something :)

This indeed solves my problem.
Thank you very much for your help and patience!


Build errors when remote building ROS packages

Hi, I am getting build errors when I try to build this package remotely from my VM. I'm trying to build the ROS packages remotely and send the executables to my RPi which runs them. I've tried installing the libcamera-dev onto my VM but the error still persists.
CMake Error at /usr/share/cmake-3.22/Modules/FindPkgConfig.cmake:603 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/share/cmake-3.22/Modules/FindPkgConfig.cmake:825 (_pkg_check_modules_internal)
  CMakeLists.txt:20 (pkg_check_modules)

The CMake project is using pkg-config to search for libcamera. You can run pkg-config --modversion libcamera in the shell to check which libcamera version you have installed.
Which Linux distribution and version are you using to compile? And what is your target distribution and version on the Raspberry Pi? Are you trying to cross-compile or to compile on a virtualised arm machine? On Ubuntu 22.04, there is a binary package in the official ROS repository that you can install with sudo apt install ros-humble-libcamera.

Hi, im not sure what I did different but after i did the meson setup build and ninja build steps again, it worked for me. thank you!


Schedule created on 28-08-2020

Signal Interface requirements (Reset, Relationship between the channels etc). (Abhinandan & Priyanka) done by 1/9/2020
Transactions (Different Burst types - Fixed, Incremental & Wrap) Abhinandan & Shivakumar & VishnuPriya & Deeksha) in progress
Ordering Rules. (Sreeram & Jitendra ) Sequences to be done by 2/9/2020
Exclusive access. (Ashika & Rahul) Sequences to be done by 2/9/2020
Coverage. (Priya & Kavita Koli) basic documentation started
Assertions (Deeksha & Priyanka) document is completed coding in progress to be completed 1/09/2020
interface coding completed by Jitendra
8)Scoreboard Kavita Koli, Jitendra Priya

Pending from Priya issue creation and deadline in GIT hub to be finished by 1/09/2020
Abhinandan Basic write and Read Sequences in progress 2/9/2020
Testbench overall document in progress by Seema

Basic Write  Transcation is done  Basic Read also done  4/9/2020
Transactions Basic signals deceleration file checked in
(Different Burst types - Fixed, Incremental & Wrap) Abhinandan & Shivakumar & VishnuPriya & Deeksha) in progress
3,.Ordering Rules (Sreeram) new date 4/09/2020
Exclusive Access Rahul has to update
Coverage Basic documentation in progress Kavita
Assertion Document Uploaded Deeksha
Interface and scoreboard logic or basic read and write transactions done


Support XDG Base Directory Specification

Linux only
Hey.  I think it would be cool to support XDG BDS to avoid unnecessary littering of home directory.  The binaries can also automatically install into user's bin directory so they will "just work" without need to adding anything to $PATH etc.
https://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html

@Fuco1 that is a fantastic idea!
Also, we've had some issues with the way I'm handling this OS X. I'd like to get both to point where this just works.
Thanks @Fuco1 !

Will do in a few days time 📆

@zachcurry *cough :smile:

Feel free to send a pull request for this issue @tecosaur


Question - Any solution to Resume Parse docx file?

Hi there, I am trying to upload docx file but getting not supported docx file type in resume parse api.
Could you please let me know if any provider that's support docx?
Thanks,

Hello @pdns90,
For resume parser, their is Senseloaf that supports DOCx files. However, using the Edenai API, you can pass the parameter convert_to_pdf to *true, which will convert the file for you to pdf before parsing it


Graph serialization error with projects being replaced by binary dependencies

I am developing a annotation processor that runs on its own project, using a binary dependency. In order to avoid conflicts between project dependencies and binary dependencies, I'm curating my configurations carefully to isolate binary dependencies from the corresponding project dependencies. Dependency resolution, however, selects the a project dependency even if it's not present in my configuration.
Expected Behavior
The module resolution mechanism in a configuration should only draw candidates from the configuration itself. In particular, project dependencies that haven't been added to the configuration explicitly should not affect the resolution.
Current Behavior
In the current behavior, the project is added to the dependency resolution as an automatic candidate (in SelectorStateResolver, it seems), with no ability to configure. I put up a small repro of this issue here. In this example, the processor configuration contains v0.0.1 of the binary artifact. If the version of the project is set to v0.0.0, the configuration resolves the artifact to v0.0.1, but reports about a spurious conflict with v0.0.0:

If setting the project version to v0.0.2, the resolution selects the project, and does not report a conflict:

Context
In more complex projects, this seems to lead to downstream issues where the resolved project dependencies are dropped from their configurations entirely. Also, the binary store of dependencies gets corrupted in this configuration, which causes both the dependencies task and the build scan to fail with exceptions like the following:
Caused by: java.lang.RuntimeException: Problems reading data from Binary store in /private/var/folders/nr/qr07zfx91kx0mxjlg034l93h0000gp/T/gradle1279083698979558202.bin offset 28948 exists? true
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.store.DefaultBinaryStore$SimpleBinaryData.read(DefaultBinaryStore.java:132)
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.result.StreamingResolutionResultBuilder$RootFactory.lambda$create$0(StreamingResolutionResultBuilder.java:187)
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.store.CachedStoreFactory$SimpleStore.load(CachedStoreFactory.java:101)
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.result.StreamingResolutionResultBuilder$RootFactory.create(StreamingResolutionResultBuilder.java:185)
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.result.StreamingResolutionResultBuilder$RootFactory.create(StreamingResolutionResultBuilder.java:157)
        at org.gradle.api.internal.artifacts.result.DefaultResolutionResult.getRoot(DefaultResolutionResult.java:47)
        at org.gradle.api.internal.artifacts.ivyservice.ErrorHandlingConfigurationResolver$ErrorHandlingResolutionResult.getRoot(ErrorHandlingConfigurationResolver.java:201)
        ... 14 more
Caused by: java.lang.IllegalStateException: Corrupt serialized resolution result. Cannot find selected module (15) for runtimeClasspath -> project :blast:processor:test
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.result.DefaultResolutionResultBuilder.visitOutgoingEdges(DefaultResolutionResultBuilder.java:82)
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.result.StreamingResolutionResultBuilder$RootFactory.deserialize(StreamingResolutionResultBuilder.java:237)
        at org.gradle.api.internal.artifacts.ivyservice.resolveengine.store.DefaultBinaryStore$SimpleBinaryData.read(DefaultBinaryStore.java:130)
        ... 20 more

These issues are more involved to repro, but I can try to put something together if it helps.
Steps to Reproduce
https://github.com/cesar1000/gradle-recursive-dependency
Your Environment
I'm using Gradle v6.5.
Build scan URL:
With v0.0.0: https://scans.gradle.com/s/sba5ra5cxfcsy/dependencies?focusedDependency=WzAsMCwwLFswLDAsWzBdXV0&toggled=W1swXSxbMCwwXV0
With v0.0.2: https://scans.gradle.com/s/22nsrpchulvxw/dependencies?focusedDependency=WzAsMCwwLFswLDAsWzBdXV0&toggled=W1swXSxbMCwwXV0

Thanks for the detailed report. There are a couple of issues here, which I'll address separately.
Binary dependency is replaced by resolving project
First, when a configuration is declared for a project, the project module itself is always going to be the root node of the resolved configuration. So if project P configuration X has dependencies on A and B, the resolved graph is:
P -> A
 \-> B

The configuration X does not represent a module, doesn't have its own coordinates, and thus cannot exist independently in the graph. There's currently no way to use a module other than the resolving project as the resolution root.
Second, when 2 versions of the same module are present, Gradle chooses the newest one via conflict resolution.

This is why you get the binary dependency and see By conflict resolution : between versions 0.0.1 and 0.0.0, when the project version is 0.0.0
This is why you get the project dependency when the project version is 0.0.2. It's unfortunate that we don't print the conflict resolution message in that case.

Error: Problems reading data from Binary store
This issue has been reported a number of times, and we suspect there are multiple scenarios that can get Gradle into this broken state. #13316 #13251 #11844
It has proven extremely difficult to reproduce these issues reliably, so if you are able to provide a reproducer for you case, it would really help us out.

Thanks @bigdaz!
I understand from your response that the project is conceptually the root of the graph for practical reasons, which means that it needs to participate in the resolution. I don't think that's a problem in itself – the problem is that it doesn't look like there's a way to configure conflict resolution when the project is involved. The existing policies (latest module or prefer projects) can't be configured to select the binary dependency. Also, the conflict doesn't seem to be considered as such, as reflected in the absence of a conflict resolution message. I addressed this problem by removing the project version, and setting the version directly in the publication itself. Still, it would be useful for the behavior to be documented (I don't think it is?), and the response to it to be more consistent.
As for the issue with the binary store, I can repro consistently, and I'll try to set up a small reproducer. As far as I can tell, the graph resolution is dropping a bunch of valid nodes for no clear reason, but it's still emitting edges that point at the missing nodes.

Ah, it seems that the issue is caused by a combination of project and binary dependencies using BOM files, where some of the conflicts between project and binary dependencies are left unresolved. At the time of the graph resolution, the orphan nodes cause the graph traversal to be incomplete, dropping edges and leaving orphan nodes behind. The missing dependencies cause the build to fail, and the invalid graph causes the build scan to fail.
I built a reproducer from my original project and shared with @bigdaz and @jjohannes .

Thanks @cesar1000. I'm not going to have capacity to investigate the Binary store issue. Could you please also share your reproducer project with @ljacomet and @melix?

Done! Thanks for your direction yesterday, @bigdaz .

The privately shared reproducer will help a lot diagnose and fix the issue. Expect news on this early next week.
Sadly the fix for #13251 and #13316 does not fix this issue.

Awesome, thanks, Louis! Coincidentally, I just found another issue that repros in the same repo after a minor change. I think it's unrelated, so filed separately as #13353.

I have figured out the issue for the graph serialization issue.
However I have to admit this graph was really strange until I figured it out 😉
The initial report about the spurious conflict is real. Because the projects have no version defined, the moment a binary dependency with the same coordinates but a version enters the graph, it wins and pretty much replaces all the projects with the binary versions.
What's true is that we replace the undefined you see in module version identifiers with a 0.0.0 which can be confusing. I'll see if that could say undefined as well.
An alternative is to use resolutionStrategy.preferProjectModules() which will favor the project over binary versions.
Or, as you indicated by yourself, setting a version for the project.
The root cause of that behaviour is that the gradle-plugin project in your reproducer has a version and uses that in the plugin code itself, making that version visible into the graphs consuming it.
None of that is unexpected behavior, so once the binary store issue is fixed and the version conflict clarified, there should not be another change.
I'll follow up once I have a nightly that can be tested on the reproducer.

Yeah, it's an unusual graph! This is a layered annotation processor that runs on itself, so I need the processor classpaths to use a binary dependency, and the runtime classpath to use the project dependency, when available, and the binary dependency otherwise. I worked around by using preferProjectModules(), as you suggested.
The behavior that I saw, however, looked unexpected: the conflicting dependencies were dropped from the configuration altogether, not just resolved to unexpected dependencies. The resulting dependency graph did not match up edges and nodes correctly, which resulted in nodes being dropped even if referenced by some of the edges (which ultimately caused the crash). This would should up in the build as compilation failures with symbols not in the classpath. Is that what you're addressing in your fix?

I'm seeing an issue in this project where dependency resolution hangs in what seems to be an infinite loop (following a cycle in the graph?). I couldn't figure out how to isolate a repro. Before I put in any more time, is there a chance that this fix may address this kind of issue?

Hey @cesar1000,
You can try with the following nightly:
./gradlew wrapper --gradle-version=6.6-branch-ljacomet_dependency_management_graph_invalid_pending-20200615140556+0000
It fixes the original graph serialization issue.

Thanks! The nightly does fix the original issue. I does not fix the dependency resolution hanging in an infinite loop though – would you want me to add a separate ticket for that? What kind of information would help troubleshoot?

Please do open a new bug for that infinite loop issue, providing as much information as you can. A couple thread dumps could help as well.

Closing as the  fix for the underlying graph serialization problem has been fixed and merged.

Awesome, thanks! Reported #13450.


Make sure the service name is the same everywhere

The naming convention differs. Sometimes with capital, sometimes without. It's better to have them consistent, as this makes things more predictable.
Merging this PR will make everything use the central service designator, which will always be consistent.

@nicka updated :)

@svdgraaf @nicka This change actually limits the way to push different metrics (like from different exchanges) to different namespaces. It is set to to service: ${file(package.json):name} which is
{
  "name": "coinboss",
...


Implement a simple networked kv store, backed by badger

Right now, we have 3 options:

Badger, tied to the process that has the DB open.
TiKV, distributed k/v store, deployed as a cluster, with some minimal requirements (ex, you'll want at least 3 nodes + placement groups)
Bigtable, with some baseline costs that aren't 0$

It means, you either need to do some separate work (deploy tikv), pay some money (bigtable) if you want to break down your single-pod dfuse deployment.
To start decoupling your processes, an extremely simple networked k/v store would be ideal. Could live in dfuse-eosio as a simple app, like trxdb-simple-server or something, and all other components, instead of using badger:///local/filesystem/path, could use netbadger://<IP_ADDRESS>:....
I suggest we write a netbadger/ package in this repository, offering a gRPC service matching the interface of store.Store (in store/interface.go), and have it be backed by the badger implementation.  So really a thin shim.  This way, you can also reuse the badger database you built while running single-pod dfuseeos.

Done through 74bd191


Parse StopTimes

Parse StopTimes
Parse effiencitly to avoid OOM error

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#17  👈
#16
main

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

Join @ksharma-xyz and the rest of your teammates on  Graphite


Wrong route component instance gets deactivation notice

This is a followup to #1127, though there is no component reuse attempted in this example.
Repro:

Environment:

Dart 2-dev.42
Angular 5-alpha+8.

Download https://github.com/angular-examples/router/archive/5-dev.zip, then

unzip and
cd into folder

pub get
pub run build_runner serve
Launch chrome over http://localhost:8080/#crises, and open the JS console.
Note the number in parentheses after the Crisis Center title: (0). That number is the instance ID of the CrisisListComponent that is rendering.
Click the first crisis in the list. Note:

The CrisisListComponent instance ID displayed is now 1.
The CrisisComponent instance ID is 1.
The CrisisComponent instance 0 that was created was used during path matching.

Edit the crisis name by prefixing it with an "x".

Console logs the name change of CrisisComponent instance 1.

Click Cancel in the crisis detail view. Note:

CrisisComponent instance 0 (the instance used for path matching) receives the canDeactivate() and onDeactivate() calls.
CrisisComponent instance 1 (the instance that was actually rendered), receives no messages.

Expected behavior: A dialog should have appeared asking if you'd like to save changes to the name.
What actually happens: no dialog appears.
This is the JS console output that is generated:
[0] CrisisListComponent created
>> [0] CrisisList onActivate null (null) -> crises ...
>> [0] CrisisList _selectHero null
>> [0] CrisisList onActivate selected null
>> [0] CrisisList onSelect selected 1
[0] CrisisComponent created
>> [0] CrisisList onDeactivate crises -> crises/1
[1] CrisisListComponent created
>> [1] CrisisList onActivate crises (null) -> crises/1 ...
[1] CrisisComponent created
>> [1] CrisisList _selectHero 1
>> [1] CrisisList onActivate selected 1
>> [0] CrisisList onSelect selected 1, after gotoDetail
>> [1] Crisis onActivate crises (null) -> crises/1 ...
>> [1] Crisis name changed to Dragon Burning Cities
>> [1] Crisis onActivate name = Dragon Burning Cities
>> [1] Crisis name changed to xDragon Burning Cities
>> [0] Crisis canDeactivate crises/1 -> crises; null == null
>> [0] CrisisList onDeactivate crises/1 -> crises
>> [0] Crisis onDeactivate crises/1 (null) -> crises
[2] CrisisListComponent created
>> [2] CrisisList onActivate crises/1 (null) -> crises ...
>> [2] CrisisList _selectHero null
>> [2] CrisisList onActivate selected null

cc @kwalrath

Thanks for reporting @chalin. This definitely looks like a bug!


Add more PriorityClassName fields in Helm charts

Set priorityClassName when installing outside the kube-system namespace on Kubernetes 1.17 or higher. Add some priorityClassName fields that were missing.
Fixes #10504

This change is

Coverage decreased (-0.02%) to 45.688% when pulling 18dada2d7f3ee49325237bdd4a62281fc57b3e16 on johngmyers:priority-class into a5c0488510febf66298b2f4a866a1e2a306e6e94 on cilium:master.

test-me-please

VM provisioning issue:
https://jenkins.cilium.io/job/Cilium-PR-Ginkgo-Tests-Validated/17965/execution/node/114/log/

test-me-please

test-me-please

Build expired. Triggering...

test-me-please

test-me-please

test-me-please

test-me-please

test-me-please

test-me-please

Test failure looks like a flake?

yes it is @johngmyers . Thanks for your patience for all the requested changes!


File not found: pro_ema_inference_epoch138_model.pt

I am trying to run DynamicBind v1.0 and gets this error message below.
I have installed the wordir directory from zenodo as explained in the README.
How this issue can be solved?
Traceback (most recent call last):
  File "/app/dynamicbind/inference.py", line 152, in <module>
    state_dict = torch.load(f'{args.model_dir}/{args.ckpt}', map_location=torch.device('cpu'))
  File "/opt/conda/envs/dynamicbind/lib/python3.10/site-packages/torch/serialization.py", line 791, in load
    with _open_file_like(f, 'rb') as opened_file:
  File "/opt/conda/envs/dynamicbind/lib/python3.10/site-packages/torch/serialization.py", line 271, in _open_file_like
    return _open_file(name_or_buffer, mode)
  File "/opt/conda/envs/dynamicbind/lib/python3.10/site-packages/torch/serialization.py", line 252, in __init__
    super().__init__(open(name, mode))
FileNotFoundError: [Errno 2] No such file or directory: '/app/dynamicbind/workdir/big_score_model_sanyueqi_with_time/pro_ema_inference_epoch138_model.pt'
inference complete.
0it [00:00, ?it/s]
final step structure relax complete.
(dynamicbind) ls /app/dynamicbind/workdir/big_score_model_sanyueqi_with_time
ema_inference_epoch314_model.pt  model_parameters.yml

Note that it works if I copy ema_inference_epoch314_model.pt into pro_ema_inference_epoch138_model.pt but would be better if it could work out-of-the-box without renaming any file.
Thanks.

It seems that the ema_inference_epoch314_model.pt file is used id the --paper option is passed (https://github.com/luwei0917/DynamicBind/blob/main/run_single_protein_inference.py#L123-L125) but this is note the default and this is not documented in the README.

This has already been reproted by in https://github.com/luwei0917/DynamicBind/issues/5. I close.


[docs] Better explanation at azkfilejs/mounts doc section

azk version: 0.12.1
First of all, it should tell that there are 2 ways to mount folders inside the container: path and persistent. And then it should explain how they work.
Will path keep container updated with host machine or it will only copy the files at the time that azk executes?
Another thing that should be changed is that when use persistent('myfolder') the content of this folder will be kept in ~/.azk/data/persistent_folders/#{manifest.id}/myfolder instead of ~/.azk/data/persistent_folders/_SOME_ID_

@rafaelverger thanks for the feedback!
We're gonna update this section with the information you suggested, and also adding a troubleshooting section on deleting persistent database information :)

@rafaelverger would you mind telling us what you think of the changes we made? Is it better now? :dancer:
http://docs.azk.io/en/reference/azkfilejs/mounts.html

The how it works section is nice but :) Ah.. I think that this path isn't necessary: /Users/heitorsergent/.azk/data/vm/azk-agent.vmdk.link
And in the example section this is written:
* __persistent__: Persists the files within the container that are on the path
`/azk/bundler`. The files will usually be stored in the _host machine_ inside the folder
`~/.azk/data/persistent_folders/_SOME_ID_`.

mounts: {
   '/azk/bundler'          : persistent('bundler'),
}

I would replace ~/.azk/data/persistent_folders/_SOME_ID_ by ~/.azk/data/persistent_folders/#{manifest.id}/bundler

Agreed,
But I'd complement with the info that, in Mac OS X, that folder is stored in a virtual disk (~/.azk/data/vm/azk-agent.vmdk) in the path /azk/persistent_folders. Plus, this disk is mounted in the path /mnt/sda1 of the VM.
What do you think, @heitortsergent and @rafaelverger?

Agreed @nuxlli :+1: