fixed typos in Shopware/Models/Customer/Customer::getNewsletter()

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/#/issues/SW-16237.
Please use this issue to track the state of your pull request.


[analyzer] No error if external constructor initializes fields

The following code produces an error in CFE but no error in the analyzer
class C {
  num x;
  external C(this.x); // CFE: Error: An external constructor can't initialize fields.
}

main() {
  print(C);
}

I can't find the exact statement in the spec that makes this constructor to be an error therefore cc @eernstg to confirm that this is an analyzer issue

I'll confirm that I intend it to be an error.
External methods and constructors have no implementation in the declaration, and assigning a parameter to a field is very much implementation.
External constructors are not allowed to have intializing formals or super-parameters, or any initializer list or body. They are neither redirecting nor non-redirecting (that's an implementation detail), but they can be factory or not, and const or not, because that's public API.
I'd even expect that their optional parameters cannot have default values, like a forwarding factory constructor, but we could have chosen to allow that as "documentation". So, not sure about that one. But the actual implementation can differ, it's not bound to documentation, or the names of positional parameters. (Our @patch implementation might check that we don't change names or default values, but in general that's not something the language cares, or knows, about).

@scheglov I assume we'll get the spec updated at some point, but just FYI.

Analyzer now reports the same error as the CFE.


Problems encountered while following the "Getting Started" documentation

The following is a description of a first time experience trying to set up Gutenberg as someone who's never used a static site generator before. I hope it's useful info to help smooth off some of the potential rough edges.
Walking through the "Getting Started" docs to experiment with setting up a site I get to the CLI usage and run gutenberg init guten-test. That initializes my site and ends with the message:

Web server is available at http://<IP_ADDRESS>:1111
Press Ctrl+C to stop

So I load http://<IP_ADDRESS>:1111 and it says:

Welcome to Gutenberg!
You're seeing this page because we couldn't find a template to render.
To modify this page, create a index.html file in the templates directory or install a theme.
You can find what variables are available in this template in the documentation.

Problem 1: When I go to the install a theme page and follow through the instructions it simply details how to install a theme. "But where are the themes?", I think to myself. Hmm. Looking in the left-hand menu bar I see there was a themes Overview page that comes before the current page. Maybe that page has a link to the available themes...but no. More by luck that any intelligence I realize that there's a Themes link at the very top of the site linking to a separate section of the site outside the documentation with a list of available themes.
Suggestion 1: Include a link at the very start of the install a theme page linking to the available themes for dimwits like me.
Moving on.
Since the initial instructions on http://<IP_ADDRESS>:1111 say "create an index.html file or install a theme" (emphisis mine), and since I just want to get something working as fast as possible to play with, I opt to not create an index.html initially. Instead I just installing the 'hyde' theme, set the theme variable of the configuration file, and reload the site in my browser.
Problem 2: Now my website is blank, and the useful four lines of instructions that used to be displayed are gone. "Darnit", I think. "Did I not follow those instructions properly?" But since they're gone, I can't know. I also remember that there were further instructions and links but can't remember what they were.
Suggestion 2: Preserve the basic instructions displayed on initial load of http://<IP_ADDRESS>:1111. If that's not reliably possible because themes may "theme" that information page in a way that renders it unreadable, then change the instructions in some way so that people aren't guided into this trap.
In my case I tried moving the 'hyde' directory out of the site and reload to get the instructions back. That didn't work, so I terminated the server and restarted it with gutenberg serve.
Problem 3: Running gutenberg serve now gives me the error:

Building site...
Error: No theme.toml file found. Are you in the right directory?
Reason: No such file or directory (os error 2)

"Argh", I think. "What now?" It took me a while to realize that my problem is that I made the mistake of leaving config.toml still pointing to a theme called "hyde". I should have figured this out sooner, but the error message mislead me.
Suggestion 3: It would have been better if the error happened earlier, at the automatic rebuild of the site on detecting the theme directory change.
Suggestion 4: The error "Are you in the right directory?" implies that "I" am in an existing directory, but and the problem is simply that it doesn't contain a theme.toml file. In fact its problem is that the directory doesn't exist at all. Much more helpful would be the message 'No theme "hyde" found in the "themes" directory". I would have immediately realized my error rather than wondering things like "did the rebuild get a partial cache of the theme from somewhere that's now corrupt? Help!"
At this point I've got the http://<IP_ADDRESS>:1111 instructions back, and am now at the stage of trying to figure out how adding an "index.html file in the templates directory" will help me get a basic site showing. I suspect these instructions are incomplete, and from some jumping around the docs trying to figure things out I get the impression that I'm going to have to add an _index.md and/or an index.md (what's the difference isn't really explained) and maybe some other things. The issues described above will suffice for now though, and I can follow up with any further issues I have and suggestions later on assuming the above is helpful.

I hope it's useful info to help smooth off some of the potential rough edges.

It is! Thanks a lot for that.

Suggestion 1: Include a link at the very start of the install a theme page linking to the available themes for dimwits like me.

Will do.

Suggestion 2

Not really possible :/  A message could tell users beforehand to lookup the README of the theme which should have the information to get started

It took me a while to realize that my problem is that I made the mistake of leaving config.toml still pointing to a theme called "hyde". I should have figured this out sooner, but the error message mislead me.

This error message does need to be improved.

Suggestion 3: It would have been better if the error happened earlier, at the automatic rebuild of the site on detecting the theme directory change.

Gutenberg doesn't watch the themes directory so that's not possible.
For the difference between index.md and _index.md, are https://www.getgutenberg.io/documentation/content/overview/ and https://www.getgutenberg.io/documentation/content/section/ not clear enough?
Same question for the templates with https://www.getgutenberg.io/documentation/templates/overview/ and the following sections.

For the theme.toml error message: https://github.com/Keats/gutenberg/commit/44a33c020c7514c4e72c0feb300850a8f619ee29

For the difference between index.md and _index.md, are https://www.getgutenberg.io/documentation/content/overview/ and https://www.getgutenberg.io/documentation/content/section/ not clear enough?

I'm afraid not. Not at all. :-(
Let me try and do some more out loud thinking through the eyes of someone new to this. So the Overview page says:

You might have noticed a file named _index.md in the example above. This file is used to store both metadata and content of the section itself and is not considered a page.
The content directory in this case has three sections: content, blog and landing. The content section has only one page, something.md

Okay, so _index.md stores metadata and content for the section (directory?). But wait, it's not a page? What does that mean? Does it mean that an index.html page will not be generated in the output folder for a directory containing an _index.md file? Does that mean I should ALSO have an index.md file in there if I want an index.html page to be generated for that dir? But then in what sense does the _index.md provide metadata for the section if there's also an index.md? And why not just make the index.md the place that the content and metadata is stored? And how do the two interact? And does this also mean that the metadata in the _index.md is used for something more than just generating the index.html? If so, what?
So far, so confusing.
Moving on to the Section page which says:

A section is created whenever a folder (or subfolder) in the content section contains an _index.md file. If a folder does not contain an _index.md file, no section will be created, but markdown files within that folder will still create pages (known as orphan pages).

Wait, this conflicts with what the Overview page said. It said "The content directory in this case has three sections" and named the "content" directory as one of those sections. But that directory didn't have an _index.md file, and the above text from the Section page says that to be a section it must contain an _index.md file. So which is it?
And what if I create an index.md file where I put links to the children pages in index.md's markdown? Are the pages still "orphan" pages now? What does that mean anyway?
The next paragraph goes on to say:

[lots of stuff.] your index.html template will then have access to that content and metadata.

This is the first hint of what might be going on here in the terminology and confusion. But it's only the slightest hint, not enough to make sense of things.
After several days on-and-off jumping around the docs and playing with a test site I'm starting to put the picture together, but it would be so much less painful if the concepts were laid out in a logical order. Also I still don't understand why the name of _index.md starts with an underscore.
I think the issue is that the docs assume a lot of prior knowledge both of templates and how static site generators work in general. That may be fine for anyone coming from another SSG, but it makes it really tough going for anyone interested in using Gutenberg as a first time SSG user.
I'd make concrete suggestions of how to improve the docs, but that's hard to do before understanding the concepts...and by the time I've understood the concepts I'll have lost my "new user" eyes. Hence all the out loud thinking above.
One thing that may be useful is to add a new "Basic concepts" page at the end of the Getting Started section with just enough of an overview for the sections that follow to make sense.

And thanks for the changes you've already made in response to my feedback. :-)

Also I still don't understand why the name of _index.md starts with an underscore.

Mostly so it's at the top of the folder in case you have tons of posts.
I would love to get some help on documenting that as it is pretty clear to me :/
The idea is: in each folder (other than folder for local assets), you can have a file called _index.md which represents it and that allows you to set some metadata: sorting, pagination, anchor links etc.
For example, my site has one section (other than the index one): blog  which I'm only using to decide how to sort pages in it. All other .md files in that blog directory are pages of it.

I'm happy to work on that, but probably won't get to it for a few weeks.

Made a topic about better docs / zola init on the forum: https://zola.discourse.group/t/improve-documentation-first-time-experience/24


[FLINK-13790][sql-client] Support -q option with a sql query statemen…

…t as input
What is the purpose of the change
Support -q option to execute a SQL query statement without entering interactive mode.
Brief change log
Support -q option to execute a SQL query statement without entering interactive mode.
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

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

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

This feature has been covered by the newly introduced -f sqlfile option.


chore: Rename subcommand from convert to migrate

Codecov Report
Base: 81.11% // Head: 81.11% // No change to project coverage :thumbsup:

Coverage data is based on head (5cc11fe) compared to base (0b9e8f7).
Patch coverage: 66.66% of modified lines in pull request are covered.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #43   +/-   ##
=======================================
  Coverage   81.11%   81.11%
=======================================
  Files          10       10
  Lines         413      413
=======================================
  Hits          335      335
  Misses         78       78

Flag
Coverage Δ

unittests
81.11% <66.66%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/airphin/core/transformer/route.py
96.42% <ø> (ø)

src/airphin/runner.py
58.33% <22.22%> (ø)

src/airphin/cli/command.py
48.57% <66.66%> (ø)

src/airphin/constants.py
100.00% <100.00%> (ø)

src/airphin/core/rules/config.py
87.82% <100.00%> (ø)

src/airphin/core/transformer/operators.py
93.10% <100.00%> (ø)

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


PHP7 Fixes and Cleanup

I have previously modified the class to do cleanup for PHP doc blocks, return statements, PHP 7 compatibility, and to add additional features that we needed such as setting collation or charset. I have attempted to backport these features by creating commits to try and break up these changes in an easy to review manner.
If you have any questions on these let me know, but I hope these changes can help others!

Thanks for the PR. I'm liking the additions to the caching system and camel casing improvements. I'm unsure about the need of the getCharset & getCollation methods if they justify their own methods or if it would be more beneficial to modify the select method to allow these to be run. I'm not a big fan of the beautification tho as I try to stick to PSR guidelines where possible. Due to the age of the original fork, this is reintroducing a number of bugs previously fixed, I can see that you addressed some updates made in your commits, but the beautification has made it difficult to quickly compare online.


[SHIRO-665] Upgrade to maven-bundle-plugin 4.1.0

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Shiro-pr/39/


Documentation page is down

Test Case
Documentation page on react router website is down.
Steps to reproduce
Go to "https://reacttraining.com/react-router/"
Expected Behavior
Doc page should be rendered.
Actual Behavior
Cloudflair 522 error page is shown

See #6835


Please invite me to the community

Name
davis
Additional Context
Please invite me to the community

Invitation sent to join the GitHub Organization. Welcome to Infraform 🎉Please check your mail to accept the invitation sent by GitHub! 🤖About usInfraform is a remarkable open-source solution tailored for serverless platforms, aimed at empowering creators to craft their infrastructure solutions. 💻 We're thrilled to welcome you into our vibrant community! ✨ We eagerly anticipate your valuable contributions! 🤓 Don't forget to explore our community on Github and connect with us on LinkedIn 💜 Feel free to spread the word about our community to like-minded individuals interested in development, DevOps, technology, and collaborative contributions. 👉💜👈


Allow programs using examples/entry to have exit codes

Any objection to allowing programs that use the examples/common/entry* stuff to have exit codes based on the return value of their _main_ function?
Currently, the run function in entry_*.cpp always returns 0.
Here's a pull request for linux and windows, the two platforms I can easily test on at the moment.

Why not just?
return thread.getExitCode();

"return EXIT_SUCCESS" was used in entry_x11, so I stayed consistent with that in case there was a good reason for it being that way...

Ok, I made it just pass value app thread returned.


Wikidata class search

#14 implement this feature, but searching for "human" does not show Q5 at the top result yet.


davidhopp issue

[] create a branch
[] edit a file
[] commit changes
[] create a pr
[] request a review
[] get approval
[]  merge the pr

+1


Add an example with godoc-tricks

Hi,
Did you know about https://github.com/fluhus/godoc-tricks ? This is a go module intended to show all the features of the go documentation (for instance the different levels at wich running examples can be attached).
It helped me check the output of my own tool; maybe it might be helpful for you as well.
If you publish it somewhere under https://abhinav.github.io/doc2go/, you can probably ask for a link to be added to its README, just like I did in https://github.com/fluhus/godoc-tricks/pull/18

This is good suggestion. I'll make this change when I have a second, or if someone else wants to take a stab at it, feel free.


[Benchmark] Forward the --experimental flag when setting the object cache.

Error when running the benchmark with any of the --cache-* options.
❯ ./tigerbeetle benchmark --cache-transfers=2GiB
2024-12-09 20:03:47.713Z error(vsr): --cache-transfers is marked experimental, add `--experimental` to continue.
thread 588607 panic: integer overflow

Ah, perhaps we should rather allow --experimental to be specified and passed through?

For context, initially, we had considered forwarding all command line options that are not from the benchmark to the TB process. But since we run a curated instance of TB, not all arguments make sense as being user-defined. Following this logic, we decided the benchmark should accept and forward only a subset of parameters that can affect the benchmark result; otherwise, the user should start a TB cluster by themselves and use the benchmark with the --addresses argument.
That said, for consistency, I don't think we should expose the --experimental flag as a benchmark thing, but I don't have a super strong opinion on that.
While writing this comment, I just realized that we also need to change the code that validates the incompatibility of forwarded arguments with clusters started by the user!
https://github.com/tigerbeetle/tigerbeetle/blob/c7145e6f382c3a4b5722fc16ff9a933ee27a0c0c/src/tigerbeetle/benchmark_driver.zig#L62-L64


karaf-camel-amq: add parameters to configure AMQ service name, user n…

…ame and password, remove fabric8 amq component and use fabric8-karaf for property resolution

@davsclaus can you review / merge ?

There is a merge conflict, you would need to rebase

@davsclaus Rebased

ok to test

[merge]


i2c: Fix write byte count stats

The I2C_MSG_WRITE flag wasn't being checked for correctly as its not actually a bit that is set.

Is there a test we need to update to check i2c stats are at least non-zero?

i2c testing is pretty limited and requires specific external parts for a fixture so... I'd guess not, the tests available are fairly limited

Sometimes this is written (msg[i].flags & I2C_MSG_RW_MASK) == I2C_MSG_READ, which makes it less likely for someone to think WRITE is a bit to test.  My quick regex count is that this is done 28 times, while the method used now in this code is the more common way, 41 times.


Allow Default Behavior for Win+Up Arrow

Windows Key + Up Arrow should keep the default behavior of maximizing the Window.  Fancy Zones should only override Windows Key + Left/Right Arrow.
Thanks,
JT

@jrtrue
this is already the default behavior when turning on


Can no longer override schema prefix for schema_migrations table

After upgrading to ecto-sql (postgres) the schema_migrations table has a hardcoded prefix of public but our schema_migrations is in a custom postgres schema.  Please provide a way to override the prefix or remove it and allow the search path to have been set.
https://github.com/elixir-ecto/ecto_sql/blob/17468a0f5b846f7d61de5a3ba255c14e150e3540/lib/ecto/adapters/postgres.ex#L200
elixir 1.10.2
ecto_sql 3.3.4
postgrex 0.15.3
macos 10.13.4
Precheck

Do not use the issues tracker for help or support requests (try Elixir Forum, Stack Overflow, IRC or mailing lists, etc).
For proposing a new feature, please start a discussion on elixir-ecto.
For bugs, do a quick search and make sure the bug has not yet been reported.
Finally, be nice and have fun!

Environment

Elixir version (elixir -v):
Database and version (PostgreSQL 9.4, MongoDB 3.2, etc.):
Ecto version (mix deps):
Database adapter and version (mix deps):
Operating system:

Current behavior
Include code samples, errors and stacktraces if appropriate.
If you can, please provide an example repository that reproduces the error that maintainers can clone and check locally. This will speed-up the process tremendously - it's very likely you'll be asked to provide one anyway.
Expected behavior
Describe expected behavior.

Can you please provide more information?
The code you are linking to was written 2 years ago. So you are either updating from a very old version or there is another root cause. So if you can include more information about what you are running and the error you are seeing (as the issue template asks), it will help us understand the problem better.
Thanks.

Please let us know if you have more information.

I had the same problem @jdobrzanski
Adding the search path as described in https://hexdocs.pm/ecto/multi-tenancy-with-query-prefixes.html#connection-prefixes solved the problem :)


Template in table_path

Fixes #105.
Based upon #104.

Hi @akurdyukov, apologies for missing your PRs. I'll review these now and turn on CI for public PRs.

Merged your main PR with the consolidated changes, thanks!


Finish replacing uber/jaeger with jaegertracing/jaeger

After #528 many instructions still incorrectly refer to uber

Coverage remained the same at 100.0% when pulling 89904bf90cd3dfb385cfb355a056a9162a7c8805 on fix-path-references into 5ffaa4777d14cce023d9268ca3e4050f1479b7e8 on master.


How to set permalink in Timber's twig?

I want to link to different posts from within a twig file. I expected I could do something like  but could not find any reference for this.
Right now, the only way to do it is using {{function('get_permalink',100) }}.
Is that best practice? What do you suggest me to do?

Try....

... TimberPost( 100 ) will retrieve a TimberPost object of ID 100 and then you can access the standard properties/methods on it


[PT Run] Highlight previous text on open

Similar to #4981 and #4982 but with a different solution
Currently, when you re-open PT Run after a previous search, the text you typed is persisted, the results box is open, and the item you last clicked is selected. However I rarely want to open multiple instances of the same app...
The only way to do a new search is to tab around a lot then delete the previous text or use your mouse to click in the search box - which defeats the purpose of PT Run...
My proposed solution would be to show the previous text and open results box but with the previous text selected and ready to overtype.
Your options are then:

Start typing a new search
Tab down to the previously visible result item you want to use
Type arrow-right to position the cursor at the end of the previously typed text to amend

If all of that is a pain then I would go with the option to start with an empty search box every time I alt+space as per #4981 and #4982
Thanks

For me the text is already highlighted when I open PT run, ready to be directly overwritten when I start typing

That's very strange - it's also doing that for me too - and I'm pretty sure
it was doing that on past releases as I'd never felt it was an issue
before...
Apologies, maybe just something temporary or maybe just me going mad!
On Tue, 14 Jul 2020 at 14:27, TxT<EMAIL_ADDRESS>wrote:

For me the text is already highlighted when I open PT run, ready to be
directly overwritten when I start typing
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/4985#issuecomment-658178615,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALDX27B6GQVFO3KGHJA4XOTR3RMMJANCNFSM4OZPFPLQ
.

"My proposed solution would be to show the previous text and open results box but with the previous text selected and ready to overtype."
This is our current approach, can you confirm this is not working?

Hi Sakariya
Sorry for the confusion and that my previous reply wasn't very clear - it
seemed to not be working earlier for me and then I looked on the issues
list and found #4981 and #4982 so I thought it might be a new bug - but
after TxT's reply I tried it again and it is definitely working correctly
for me now.
It might have been a temporary glitch or it might well have just been me
getting confused.
Either way, apologies, all working fine here now.
On Tue, 14 Jul 2020 at 18:04, sakariya<EMAIL_ADDRESS>wrote:

"My proposed solution would be to show the previous text and open results
box but with the previous text selected and ready to overtype."
This is our current approach, can you confirm this is not working?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/4985#issuecomment-658298775,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALDX27CIUPJXFATFM33U33LR3SFZZANCNFSM4OZPFPLQ
.

I'm able to reproduce this issue on my machine by mouse clicking the item (rather than hitting Enter key to select). Seems like last clicked item keeps focus on next launch (focus doesn't switch to textbox, textbox is not highlighted). Similar effect when mouse clicking the "Open containing folder" and "Run As Administrator" buttons.

Ok - so I'm not going mad :-)
I am able to reproduce exactly as Luke says - if you type, then select the
item with a mouse click, when you next alt+space the text is remembered but
not highlighted, the results box is open, and the previously selected item
is still selected but there's no easy way to get back to the search box.
You can arrow up/down the results list but that doesn't get you to the
search box. If you tab a few times then you do end up there eventually...
On Wed, 15 Jul 2020 at 13:18, Luke Westfall<EMAIL_ADDRESS>wrote:

I'm able to reproduce this issue on my machine by mouse clicking the item
(rather than hitting Enter key to select). Seems like last clicked item
keeps focus on next launch (focus doesn't switch to textbox, textbox is not
highlighted). Similar effect when mouse clicking the "Open containing
folder" and "Run As Administrator" buttons.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/4985#issuecomment-658733983,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALDX27GY56333MXMGY6VHDLR3WNCTANCNFSM4OZPFPLQ
.

Looks like there's actually a couple issues already tracking this behaviour: #4897 #4891

dup'ing this against #4897


Fixes lower and upper case for commands

What type of PR is this?
/kind code-refactoring
What does does this PR do / why we need it:
Fixes upper and lower case for devfile commands.

/lgtm


[BUG] FAILED string_test.py::test_initcap[DATAGEN_SEED=1700413755, INJECT_OOM, INCOMPAT] in 330cdh environment

Describe the bug
Mismatched CPU and GPU results. internal pipeline: rapids-it-cloudera1-raplab
FAILED ../../src/main/python/string_test.py::test_initcap[DATAGEN_SEED=1700413755, INJECT_OOM, INCOMPAT]
[2023-11-19T17:11:01.115Z] ### CPU RUN ###
[2023-11-19T17:11:01.115Z] ### GPU RUN ###
[2023-11-19T17:11:01.115Z] ### COLLECT: GPU TOOK 0.11538124084472656 CPU TOOK 0.6901013851165771 ###
[2023-11-19T17:11:01.115Z] --- CPU OUTPUT
[2023-11-19T17:11:01.115Z] +++ GPU OUTPUT
[2023-11-19T17:11:01.115Z] @@ -1114,7 +1114,7 @@
[2023-11-19T17:11:01.115Z]  Row(initcap(a)='Ⱥb3bb55a%@ab1é%  31ba%bⱥⱥÿ35-ÿⱥ3\t\né@5a5_a-%3éⱥÿa@\r @_@35abb3b5ⱥ3aÿ\t\tbÿb5bÿbÿ7_b7ⱥé%  ')
[2023-11-19T17:11:01.115Z]  Row(initcap(a)='Aa1b@3775b-3aé7\n\r7aⱥbbⱥ%b3_5abaⱥ\tÿé@313%b3bÿ%%5%\r B1ⱥ%-éÿ@ba_bé%ÿ\t\t_77ÿ7%ÿ_%bb1ÿ_é\n\n')
[2023-11-19T17:11:01.115Z]  Row(initcap(a)='3_ÿa1715ÿ1a_é7ÿ\r\t_aba1-5bb7é3ⱥÿ-\tÿ_b-%%é51%a@531\tbÿb5éⱥb5ⱥ@5b@_@\t\né3ⱥⱥbⱥ777bb_ⱥ37 ')
[2023-11-19T17:11:01.115Z] -Row(initcap(a)='ßo\x8e°}£\x11\x8aî\x94')
[2023-11-19T17:11:01.115Z] +Row(initcap(a)='SSo\x8e°}£\x11\x8aî\x94')
[2023-11-19T17:11:01.115Z]  Row(initcap(a)='3bb-1%_@aé%b7ab\r\n35ⱥ-@baaÿ1-é3ÿa \né3ba3@3b3ⱥ@55%1\r\n7ÿa3ÿ%bÿ--5ⱥⱥbÿ\n\na_bba7b%5bbb131\r ')
[2023-11-19T17:11:01.115Z]  Row(initcap(a)='É5@51@ⱥb7%ba7@3\r\naabⱥⱥÿa_-_--3b Aÿ@_3-a-3éÿ1a@_\r\nⱥ5-%7@bb7ÿ@b5b@\r\r15_-b%3a-éb%ba%\t\t')
[2023-11-19T17:11:01.115Z]  Row(initcap(a)='1ÿé%bbé_%ⱥb7_ⱥ5\r Ÿ-%@%_ⱥⱥ%ÿaⱥ3aa\t%77bÿ5@51-bⱥ@5- \n7bé%ÿⱥ%ⱥ33%-3é\r\ré71355ⱥ5ab3@35a\t\t')

Steps/Code to reproduce bug
try re-run the internal pipeline rapids-it-cloudera1-raplab
Expected behavior
pass the test
Environment details (please complete the following information)

Environment location: [Standalone, YARN, Kubernetes, Cloud(specify cloud provider)]
Spark configuration settings related to the issue

Additional context
Add any other context about the problem here.

Duplicate to https://github.com/NVIDIA/spark-rapids/issues/9247 and cudf agreed to fix the issue.


Is there a way to store (serialize) expensive first-time use JIT'ted methods?

I have a simulation of a PDE on which I would like to perform Bayesian inference. I can (easily, thank you guys!) compute the 'forward' and gradient of the PDE, more efficiently than NumPy can, but the first time use takes upwards of 30 minutes (think 500 degrees of freedom, time integration, etc. ). It would be nice to store the JIT'ted and finally compiled methods somehow, to make subsequent use faster, but this doesn't seem to appear in the documentation. Is this possible?
If needed, I can provide a complete working example.

This is not documented because JAX does not have that feature.
Can you try to use jax.xla_computation to see if that is fast? If so, then the bulk of the time
is taken by the XLA compiler. I do not understand how caching is done by XLA.
What changes between invocations in your use case? If it is only the input data, perhaps you can run the JAX program in an infinite loop reading inputs from somewhere else. If you actually change code, then how do you know that you don't need to recompile?

As a general proposition, if JAX builds a very large XLA computation, XLA may take a long time to compile it. That's probably what's happening here. It's hard to say why your computation is so large without a runnable reproduction. The most common source is Python loops, which often have the effect of unrolling the computation and should be replaced with lax loop constructs.
It would be possible to say more with a small runnable reproduction.

Thank you both! It is indeed a Python for loop, a minimal code is included below. Admittedly, it is maybe not as well implemented in JAX as it could be.
In every run, only the variable velocity_squared varies, the simulation code itself is constant. All the JIT operations and xla_computation's are on the order of tens of microseconds. The return object can also be rewritten as a single vector, or integrated with observations for a scalar output (the function at the very end illustrates this.
import jax
import jax.numpy as np
from jax import grad, jit
import numpy as onp
import scipy.signal as signal

def jax_wavesolver(velocity_squared):

    velocity_squared = np.asarray(velocity_squared)

    stf = np.zeros((2000,))

    # If scipy is not available, this statement can be removed. Should not influence the computation.
    stf = jax.ops.index_update(
        stf, jax.ops.index[:100], signal.ricker(100, 10)[:] / 10.0
    )

    p = np.zeros((500, 1))
    p_prev = np.zeros((500, 1))
    p_next = np.zeros((500, 1))

    dt = 0.25

    misfit = 0.0

    receiver_1 = np.empty_like(stf)
    receiver_2 = np.empty_like(stf)
    receiver_3 = np.empty_like(stf)

    for i in range(2000):

        p_next = jax.ops.index_update(
            p_next,
            jax.ops.index[1:-1],
            2 * p[1:-1]
            - p_prev[1:-1]
            + dt * velocity_squared[1:-1] * (p[0:-2] - 2 * p[1:-1] + p[2:]),
        )

        p_next = jax.ops.index_update(p_next, jax.ops.index[50], stf[i])

        receiver_1 = jax.ops.index_update(receiver_1, jax.ops.index[i], p_next[50,0])
        receiver_2 = jax.ops.index_update(receiver_1, jax.ops.index[i], p_next[425,0])
        receiver_3 = jax.ops.index_update(receiver_1, jax.ops.index[i], p_next[475,0])

        p_prev = p
        p = p_next

    return receiver_1, receiver_2, receiver_3

velocity_squared = onp.ones((500, 1))
velocity_squared[250:, :] = 4.0
velocity_squared[300:, :] = 1.0
velocity_squared[350:, :] = 4.0
velocity_squared[400:, :] = 1.0

# IPython timer for performance, remove as needed.

%time J_ws = jit(jax_wavesolver)

%time jax.xla_computation(J_ws)

# This would give the 'observations', but currently extremely slow
observations = J_ws(velocity_squared)

def jax_wavesolver_misfit(velocity_squared, observations):

    velocity_squared = np.asarray(velocity_squared)

    stf = np.zeros((2000,))
    stf = jax.ops.index_update(
        stf, jax.ops.index[:100], signal.ricker(100, 10)[:] / 10.0
    )

    p = np.zeros((500, 1))
    p_prev = np.zeros((500, 1))
    p_next = np.zeros((500, 1))

    dt = 0.25

    misfit = 0.0

    receiver_1_obs = np.asarray(observations[0])
    receiver_2_obs = np.asarray(observations[1])
    receiver_3_obs = np.asarray(observations[2])

    for i in range(2000):

        p_next = jax.ops.index_update(
            p_next,
            jax.ops.index[1:-1],
            2 * p[1:-1]
            - p_prev[1:-1]
            + dt * velocity_squared[1:-1] * (p[0:-2] - 2 * p[1:-1] + p[2:]),
        )

        p_next = jax.ops.index_update(p_next, jax.ops.index[50], stf[i])
        misfit += (receiver_1_obs[i] - p_next[50]) ** 2
        misfit += (receiver_2_obs[i] - p_next[425]) ** 2
        misfit += (receiver_3_obs[i] - p_next[475]) ** 2

        p_prev = p
        p = p_next

    return misfit

%time J_ws_misfit = jit(jax_wavesolver_misfit)

%time jax.xla_computation(J_ws_misfit)

# This would give the 'observations', but currently extremely slow
X = J_ws_misfit(velocity_squared, observations)

# This is what I am after ultimately:
gr_J_ws_misfit = jit(grad(jax_wavesolver_misfit))
G = gr_J_ws_misfit(velocity_squared, observations)

You need to use jax.lax.scan. Otherwise JAX will unroll the whole loop.

As a general proposition, if JAX builds a very large XLA computation, XLA may take a long time to compile it. That's probably what's happening here. It's hard to say why your computation is so large without a runnable reproduction. The most common source is Python loops, which often have the effect of unrolling the computation and should be replaced with lax loop constructs.
It would be possible to say more with a small runnable reproduction.

I think @larsgeb 's original question was not that the subsequent running within a single-time python file execution is slow, but every jitted function has to be re-compiled, when that file is closed and re-executed. That may become a performance bottleneck for larger problems, like his PDE simulator.
Actually, I had a similar problem in my application. Although the subsequent execution of my code is extremely fast, the first run costs ~2s. My question here is why the first run still needs to compile my jit decorated function. It'd be nice if that compilation procedure could be done at the time of function declaration (I know that could be hard, since the type/shape/.. of the inputs are not known at that time), or the compiled functions could be reserved and reused somehow.

Thank you both! It is indeed a Python for loop, a minimal code is included below. Admittedly, it is maybe not as well implemented in JAX as it could be.
In every run, only the variable velocity_squared varies, the simulation code itself is constant. All the JIT operations and xla_computation's are on the order of tens of microseconds. The return object can also be rewritten as a single vector, or integrated with observations for a scalar output (the function at the very end illustrates this.
import jax
import jax.numpy as np
from jax import grad, jit
import numpy as onp
import scipy.signal as signal

def jax_wavesolver(velocity_squared):

    velocity_squared = np.asarray(velocity_squared)

    stf = np.zeros((2000,))

    # If scipy is not available, this statement can be removed. Should not influence the computation.
    stf = jax.ops.index_update(
        stf, jax.ops.index[:100], signal.ricker(100, 10)[:] / 10.0
    )

    p = np.zeros((500, 1))
    p_prev = np.zeros((500, 1))
    p_next = np.zeros((500, 1))

    dt = 0.25

    misfit = 0.0

    receiver_1 = np.empty_like(stf)
    receiver_2 = np.empty_like(stf)
    receiver_3 = np.empty_like(stf)

    for i in range(2000):

        p_next = jax.ops.index_update(
            p_next,
            jax.ops.index[1:-1],
            2 * p[1:-1]
            - p_prev[1:-1]
            + dt * velocity_squared[1:-1] * (p[0:-2] - 2 * p[1:-1] + p[2:]),
        )

        p_next = jax.ops.index_update(p_next, jax.ops.index[50], stf[i])

        receiver_1 = jax.ops.index_update(receiver_1, jax.ops.index[i], p_next[50,0])
        receiver_2 = jax.ops.index_update(receiver_1, jax.ops.index[i], p_next[425,0])
        receiver_3 = jax.ops.index_update(receiver_1, jax.ops.index[i], p_next[475,0])

        p_prev = p
        p = p_next

    return receiver_1, receiver_2, receiver_3

velocity_squared = onp.ones((500, 1))
velocity_squared[250:, :] = 4.0
velocity_squared[300:, :] = 1.0
velocity_squared[350:, :] = 4.0
velocity_squared[400:, :] = 1.0

# IPython timer for performance, remove as needed.

%time J_ws = jit(jax_wavesolver)

%time jax.xla_computation(J_ws)

# This would give the 'observations', but currently extremely slow
observations = J_ws(velocity_squared)

def jax_wavesolver_misfit(velocity_squared, observations):

    velocity_squared = np.asarray(velocity_squared)

    stf = np.zeros((2000,))
    stf = jax.ops.index_update(
        stf, jax.ops.index[:100], signal.ricker(100, 10)[:] / 10.0
    )

    p = np.zeros((500, 1))
    p_prev = np.zeros((500, 1))
    p_next = np.zeros((500, 1))

    dt = 0.25

    misfit = 0.0

    receiver_1_obs = np.asarray(observations[0])
    receiver_2_obs = np.asarray(observations[1])
    receiver_3_obs = np.asarray(observations[2])

    for i in range(2000):

        p_next = jax.ops.index_update(
            p_next,
            jax.ops.index[1:-1],
            2 * p[1:-1]
            - p_prev[1:-1]
            + dt * velocity_squared[1:-1] * (p[0:-2] - 2 * p[1:-1] + p[2:]),
        )

        p_next = jax.ops.index_update(p_next, jax.ops.index[50], stf[i])
        misfit += (receiver_1_obs[i] - p_next[50]) ** 2
        misfit += (receiver_2_obs[i] - p_next[425]) ** 2
        misfit += (receiver_3_obs[i] - p_next[475]) ** 2

        p_prev = p
        p = p_next

    return misfit

%time J_ws_misfit = jit(jax_wavesolver_misfit)

%time jax.xla_computation(J_ws_misfit)

# This would give the 'observations', but currently extremely slow
X = J_ws_misfit(velocity_squared, observations)

# This is what I am after ultimately:
gr_J_ws_misfit = jit(grad(jax_wavesolver_misfit))
G = gr_J_ws_misfit(velocity_squared, observations)

Hi, have you solved your problem yet?
I'm also trying to solve a problem with lots of loops, and frequent data updating. I find using jax.lax.scan and jax.lax.fori_loop speeds up the compilation time for ~10-20 times in my application. Hope that trick could also help you.


feat: Templates to Editing

I have laid out the idea in the attachment below that the templates nav link currently leads directly to template editing, but we would like to move things along by having the templates page show you a variety of templates before taking you select a template to edit.
Please feel free to ask questions about it Thanks!.

i can help where needed @Perkitw2


BoringSSL + TLSv1.2 client side SSL renegociation fails

Expected behavior
BoringSSL based SSLEngine should support SSL renegociation out of the box like the JDK one.
Actual behavior
SSLEngine and connection crashes during renegociation.
This issue was originally reported against Gatling, see https://github.com/gatling/gatling/issues/4120 for more details.
Steps to reproduce
See pure Netty reproducer below.
Minimal yet complete reproducer code (or URL to code)
https://github.com/slandelle/netty-ssl-renegociation
Netty version
4.1.66.Final
JVM version (e.g. java -version)
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.292-b10, mixed mode)
OS version (e.g. uname -a)
Darwin Kernel Version 20.5.0: Sat May  8 05:10:33 PDT 2021; root:xnu-7195.121.3~9/RELEASE_X86_64 x86_64

As far as I remember we don't support renegotiation when using the OpenSSL / BoringSSL based engines   because these are considered not secure anymore.
https://boringssl.googlesource.com/boringssl/+/refs/heads/master/include/openssl/ssl.h#4056

If |ssl| is a server, peer-initiated renegotiations are always rejected and this function does nothing.

There is no support in BoringSSL for initiating renegotiations as a client or server.

Here, Netty is client side and the initiator is the server. Also, this request works fine with Chrome, whose TLS implementation is BoringSSL.
Doesn't renegotiation only bring security issues when the initiator is the client, not the server?

I suspect we would need to enable it explicit for BoringSSL:
https://boringssl.googlesource.com/boringssl/+/6b6e0b20893e2be0e68af605a60ffa2cbb0ffa64/PORTING.md#tls-renegotiation

Indeed.
Does it looks feasible to you to introduce a new option to be passed through SslContextOption to configure the underlying BoringSSL?

Yeah I guess something like this. That said I think we will also need to add some changes to ReferenceCountedOpenSslEngine

I'm off on vacation tonight, so I'll only be able to have a look in a few weeks. Thanks for your insights!

@slandelle no worries... I will also be on vacation soon 😆

Again??? You're just back! 😆

Let me pick this up this week again

This is also related to https://github.com/apple/swift-nio-ssl/pull/111

tcnative change that is needed: https://github.com/netty/netty-tcnative/pull/654


Postgres boolean type not properly converted

Bug Description
I apologize if I am doing something wrong but I can not get boolean type postgres data to work.
Any help is appreciated.
Minimal Reproduction
#[derive(Debug, Serialize, Deserialize)]
struct Test {
    random_bool: bool
}

#[tokio::main]
async fn main() {
   // skipping connection & getting transaction
   // ...
   let test_query = query_as!(Test, "SELECT true as random_bool").fetch_one(&mut **tx).await?;
}

This gives error
the trait bound `bool: From<std::option::Option<bool>>` is not satisfied
the following other types implement trait `From<T>`:
  <bool as From<subtle::Choice>>
  <bool as From<format_description::parse::format_item::HourBase>>
  <bool as From<format_description::parse::format_item::MonthCaseSensitive>>
  <bool as From<format_description::parse::format_item::PeriodCase>>
  <bool as From<format_description::parse::format_item::PeriodCaseSensitive>>
  <bool as From<format_description::parse::format_item::SignBehavior>>
  <bool as From<format_description::parse::format_item::WeekdayCaseSensitive>>
  <bool as From<format_description::parse::format_item::WeekdayOneIndexed>>
  <bool as From<format_description::parse::format_item::YearBase>>
required for `std::option::Option<bool>` to implement `Into<bool>`

Info

SQLx version: 0.7.3
SQLx features enabled: [ "runtime-tokio", "postgres", "chrono", "macros", "uuid" ]
Database server and version: postgres:16.1(Docker: postgres:16.1-alpine3.19)
Operating system: Windows 11 Pro 22631.3155
rustc --version: rustc 1.74.0 (79e9716c9 2023-11-13)

It looks like sqlx expects an Option type. You could change your struct to match, like this:
#[derive(Debug, Serialize, Deserialize)]
struct Test {
    random_bool: Option<bool>
}

But i think a simpler solution would be to force the type as not-null, like so:
 let test_query = query_as!(Test, r#"SELECT true as "random_bool!" "#).fetch_one(&mut **tx).await?;

Yup,  can reproduce with that single line:
let test = sqlx::query_scalar!(r#"select true as "ok""#).fetch_one(&pool).await?;

test is of type Option<bool> which seems to be incoherent.

It seems even worse for actually  nullable bool columns. Write Some(false), read None back!
#[derive(Debug, Clone, FromRow, Serialize)
struct Test {
    bool_with_important_nullability: Option<bool>
}

Reading returns:

NULL -> None
true -> Some(true)
false -> None

Any ideas on the root cause of the bug or a workaround?

@KeaganStevens
@axeld-galadrim

Yup, can reproduce with that single line:
let test = sqlx::query_scalar!(r#"select true"#).fetch_one(&pool).await?;

test is of type Option<bool> which seems to be incoherent.

You're selecting a literal expression which the macros cannot currently null-check, so they're forced to assume the column is nullable. How SQLx decides what columns are nullable and what aren't are described right in the documentation: https://docs.rs/sqlx/latest/sqlx/macro.query.html#nullability-output-columns
@otopetrik

It seems even worse for actually nullable bool columns. Write Some(false), read None back!
#[derive(Debug, Clone, FromRow, Serialize)
struct Test {
    bool_with_important_nullability: Option<bool>
}

Reading returns:
* `NULL` -> `None`

* `true` -> `Some(true)`

* **`false` -> `None`**

Any ideas on the root cause of the bug or a workaround?

This doesn't make any sense. Please provide an actual example to reproduce the problem.

Thank you for the clarification!

This doesn't make any sense. Please provide an actual example to reproduce the problem.

You are correct, not a bug in sqlx. The behavior observed was caused by combination of bugs in the layer above (many Option<Bool> fields with very similar names), wrong assignments due to typos were missed during debugging.
Sorry for the noise.


The publishing tool fails to combine files

Unfortunately I cannot provide the test data I am using as it is personal data.
Steps to reproduce
Redact two files containing different data (in this case, one from Spain, one from the US) from the same day
In the publishing tool, load both files
Publish the data
Expected behaviour
The file exported from the publishing process should contain both redacted datasets
Actual behaviour
Only one dataset is included.  The following is visible in the console:
Uncaught TypeError: Cannot read property 'length' of undefined
at updateStats (index.html:1504)
at updateExposurePoints (index.html:1404)
at updateDateRange (index.html:1343)
at HTMLDocument. (index.html:1314)
at e (jquery.min.js:2)
at t (jquery.min.js:2)

Additionally, I have compared the two files and they are semantically/syntactically equivalent.


Similar Puzzle Game for Desktop/Browser

Hello Rhys Rustad-Elliott,
Thanks for this addictive puzzle game. I really love playing this game in my leisure time.
Anyway, I'm looking for a similar puzzle game for desktop or web. So that, I can play this game on my computer too. Can you suggest me one?
Thanks.
[Please, consider suggesting only free/libre and open source software.]

Hi There,
I dug around a bit and found this JavaScript flood-fill game. No license is specified, so it is therefore not FOSS, however the unobfuscated source code is provided.
There is also this one, however it too is unfortunately not FOSS.
Thanks for the positive feedback :)

Thanks for your concern. :smiley:
I had searched for a similar game, in the meantime, found this one on GitHub. Unfortunately this also doesn't have any license information. :disappointed: I have created an issue, and asked the maintainer too add a license, if he had intended to make it a FLOSS.


Bash not always available

sadly this action is unusable on our self-hosted runner infra because bash is missing. Could you try to replace bash with sh ?

Hello @digitalkaoz, I've released v3.0.0, which has switched from bash to sh.  Let me know if you experience any issues with this update!


The definition of GMM linear layer may wrong? Or I have missed something?

hi ctallec,
In file mdrnn.py:
I observed the neural number in gmm_linear layer is too few, why is the output size defined as (2 * latents + 1) * gaussians + 2? Shouldn't it be 3 * latents * gaussians +2 (I also saw this definition in other implementation of mdn-rnn)? In your definition, you seem to share the pis to all gaussian element which is not feasible under my understanding of GMM. My understanding is that, each element of the latent vector has its own GMM, that is, for each z_i we have 3 mus, 3 sigmas and  3 pis. Or have I had some misunderstandings of GMM?
Best,

You could check this implementation https://github.com/zmonoid/WorldModels/blob/master/model.py for more information

I am a bit rusty with this library but, if I remember correctly, you are right.
This library uses an output such that each Gaussian mixture has a defined μ and σ for each element of the array z_{t+1}. I don't know about other implementations, but the original World Models uses the one you propose.
I don't think this approach is wrong, it is just a more restrictive one. If you use it with the proposed environments (carRacing and ViZDoom: Take Cover) you won't be able to see the difference.

I am a bit rusty with this library but, if I remember correctly, you are right.
This library uses an output such that each Gaussian mixture has a defined μ and σ for each element of the array z_{t+1}. I don't know about other implementations, but the original World Models uses the one you propose.
I don't think this approach is wrong, it is just a more restrictive one. If you use it with the proposed environments (carRacing and ViZDoom: Take Cover) you won't be able to see the difference.
Hi Alex,
Thank you so much for the very quick response!
I found issue when I was training the rnn, the gmm loss was always relatively high like (0.95), but after I changed the definition and loss function, respectively , I found the gmm loss was reduced to -0.005 which means the likelihood is near 1. Do you have any experience how the value loss should be? And could you give me some suggestion to sample the latent variable from the distribution according to "temperature"?
Best regards

I found issue when I was training the rnn, the gmm loss was always relatively high like (0.95), but after I changed the definition and loss function, respectively , I found the gmm loss was reduced to -0.005 which means the likelihood is near 1. Do you have any experience how the value loss should be?

I have the feeling I'm missing too much information to provide a faithful answer to your question (which environment you are using, size of the latent space, algorithm for the vision module, etc). I'll try to give you some general advice:

First of all, yes, that new value you are getting doesn't seem right. You might need to check your code for any errors. If you are using ViZDoom as an environment, check the World Models original repo. It uses the metric you propose and they have a logfile for their experiments with viZDoom: Take Cover. They get a final loss around 0.98 after 400 epochs

Using this library with the original configuration, and the loss function you propose, I got a  GMM loss of 1.05 on the carRacing game and 0.95 on ViZDoom: Take cover. I might be wrong about this one (this was a long time ago, I don't remember the exact details) but take these values as reference. I ran other environments and configurations, but my loss never varied as significantly as yours.

Pay a lot of attention to your vision algorithm and its resulting values. Sometimes you get very strange results from your memory module but the bug isn't there. The first thing that comes to mind is KL divergence of the VAE. The higher it is, the lower the loss of the memory module (but it doesn't mean the module is better).

Talking about KL divergence, the original paper uses "free bits", which I think was not implemented in this library (Have a look at these papers: paper 1, paper 2). It helps with the reconstructions of both test environments by setting a threshold on the KL divergence. Is your latent space informative enough?

And could you give me some suggestion to sample the latent variable from the distribution according to "temperature"?

Well, this is a completely different question. From my experience, there are a couple of things you need to know:

Using τ<1 never helped. The controller just learnt to trick the simulation more consistently.

Training offline (in a dream) was very VERY tricky. Models trained with the same configuration and architecture could yield very different results. And this affected the temperature value too. From my experience, values 1.2 < τ > 1.1 worked best.


This should be updated to reflect Copilot

This feature has evolved into a Copilot.

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

ID: cf7765d5-5166-ea69-65af-2c912f2b44da
Version Independent ID: cf7765d5-5166-ea69-65af-2c912f2b44da
Content: Quick measure suggestions - Power BI
Content Source: powerbi-docs/transform-model/quick-measure-suggestions.md
Service: powerbi
Sub-service: pbi-transform-model
GitHub Login: @Sujata994
Microsoft Alias: sunaraya

Thanks for your comment, @otravers. This issue has been assigned to the doc author for review.

Hi, I'll discuss with the doc owner. Thanks for the suggestion!


How to change color of navigation arrows?

I have a white background on the body, so i can't see arrow navigation button, screenshots below:

Can see the arrows, ok 😃.


Pleasure if add the function to delete history conversation，not just minimize

follow the title

I will, but maybe later

v2.1.8


revert azure sdk instrumentation fix

Description
Reverts https://github.com/adobe/node-openwhisk-newrelic/pull/57 as per @alexkli 's request https://github.com/adobe/node-openwhisk-newrelic/pull/57#issuecomment-1163945759
Fixes # (issue)
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have signed the Adobe Open Source CLA.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

@tmathern there's an integration test failing in circleci; is that a flaky one? Does it block the PR from merging?

re-running the ITs. Looks like probably just a flakey test
1)
       worker-pie
         psd -> png (interlace):
     Error: Request h6VJsEPNY8G4faWCdW9yc0lDVvm90amr timed out after 129000 ms
      at Timeout.<anonymous> (node_modules/@adobe/asset-compute-client/lib/client.js:346:24)
      at Timeout.wrapped (node_modules/wtfnode/index.js:237:27)
      at listOnTimeout (internal/timers.js:554:17)
      at processTimers (internal/timers.js:497:7)

re-running the ITs. Looks like probably just a flakey test
1)
       worker-pie
         psd -> png (interlace):
     Error: Request h6VJsEPNY8G4faWCdW9yc0lDVvm90amr timed out after 129000 ms
      at Timeout.<anonymous> (node_modules/@adobe/asset-compute-client/lib/client.js:346:24)
      at Timeout.wrapped (node_modules/wtfnode/index.js:237:27)
      at listOnTimeout (internal/timers.js:554:17)
      at processTimers (internal/timers.js:497:7)

Test is flaky - but probably not because of the worker. Lately events have taken more time to arrive, just enough time for ITs to timeout (I usually check the activation to see if the event was sent and lost in translation or not).


[vid.me] Vid.me site support

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.09.24. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[x] I've verified and I assure that I'm running youtube-dl 2017.09.24

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[ ] Bug report (encountered problems with youtube-dl)
[x] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
youtube-dl https://vid.me/Gyyhb --verbose
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'https://vid.me/Gyyhb', u'--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.09.24
[debug] Python version 2.7.13 - Linux-4.10.0-35-generic-x86_64-with-Ubuntu-17.04-zesty
[debug] exe versions: none
[debug] Proxy map: {}
[vidme] Gyyhb: Downloading JSON metadata
[vidme] Gyyhb: Downloading MPD manifest
[vidme] Gyyhb: Downloading m3u8 information
[debug] Default format spec: best
ERROR: requested format not available
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 788, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 842, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1594, in process_video_result
    expected=True)
ExtractorError: requested format not available
...
<end of log>

If the purpose of this issue is a site support request please provide all kinds of example URLs support for which should be included (replace following example URLs by yours):

Single video: https://vid.me/Gyyhb
Playlist: https://vid.me/Vidme

Note that youtube-dl does not support sites dedicated to copyright infringement. In order for site support request to be accepted all provided example URLs should not violate any copyrights.

Description of your issue, suggested solution and other information
I cannot download playlist/channel and single videos.

Install ffmpeg,


Add some radio input to the plugin, which allows us rearange of the panel overlay

Hi,
sometimes it can be hard to debug a page item, if the overlay is in there way (occupies the same coordinates and space). So it maybe a good idea to add some radio inputs to the options panel for...

left top / bottom
right top / bottom

...so the panel used that information to change there render location.

Good idea, thanks @lirtistan!


Reporting back Merge Conflict to the PR

When there is a Merge Conflict in the initial get for a PR workflow (as shown in your Example), the PR check is left in an unknown state .

**concourse-ci/status ** Expected — Waiting for status to be reported

What would be the best way to report a failure status back to the PR in that scenario? Thanks!

I think using on_failure with status: ERROR for the get step should have you covered, since get will exit with a non-zero exit status if the merge fails?

Closing this as it is stale, and I believe the proposed solution should work.


Prevent multiple collect in jinja template tags

This issue has been already fixed for Django templates — https://github.com/cyberdelia/django-pipeline/pull/455
But there is no request inside jinja extensions. So we need to make PipelineExtension more generic.

Hey @lexqt
I know this was two years ago but what's up with this PR?
I'm currently using django 1.11 with jinja and django-pipeline and it's sooo sloooow when using DEBUG=True. Every request takes about 2-4 seconds. I noticed the Collector.collect method has to do that crazy loop of loops against disk 5 times per request (I guess 5 because I have 5 things like {% javascript something %} in the jinja templates).

For now, to get a better dev environment I set:
PIPELINE = {
    ...
    'PIPELINE_COLLECTOR_ENABLED': False,
}


Error deploying AspireShop to Azure using 'azd up' on Windows 11

I pulled down copy of the aspire-samples repo and attempted to deploy to azure using azd init and azd up on my windows 11 machine and got the following error:
Please note: I was able to do the same deployment on my Mac M2 with out error.
Please advise
aspire-samples\samples\AspireShop\AspireShop.AppHost> azd up

Packaging services (azd package)

Provisioning Azure resources (azd provision)
Provisioning Azure resources can take some time.

Subscription: Azure subscription 1 (e1991798-1e03-4105-b5ab-d8454f2ccc73)
Location: East US

  (-) Skipped: Didn't find new changes.

Deploying services (azd deploy)

  (✓) Done: Deploying service basketcache
  - Endpoint: https://basketcache.internal.redtree-f7652f5c.eastus.azurecontainerapps.io/

  (✓) Done: Deploying service basketservice
  - Endpoint: https://basketservice.internal.redtree-f7652f5c.eastus.azurecontainerapps.io/

  (✓) Done: Deploying service catalog
  - Endpoint: https://catalog.internal.redtree-f7652f5c.eastus.azurecontainerapps.io/

  (x) Failed: Deploying service catalogdbmanager

ERROR: error executing step command 'deploy --all': failed deploying service 'catalogdbmanager': publishing container: dotnet publish on project 'C:\Users\Ericz\gitHub\dotnet\aspire-samples-2\samples\AspireShop\AspireShop.CatalogDbManager\AspireShop.CatalogDbManager.csproj' failed: exit code: 1, stdout: , stderr: MSBUILD : error MSB4166: Child node "2" exited prematurely. Shutting down. Diagnostic information may be found in files in "C:\Users\Ericz\AppData\Local\Temp\MSBuildTemp\" and will be named MSBuild_*.failure.txt. This location can be changed by setting the MSBUILDDEBUGPATH environment variable to a different directory.
MSBUILD : error MSB4166: C:\Users\Ericz\AppData\Local\Temp\MSBuildTemp\MSBuild_pid-20892_99e7bb86d13e47b586e03cd080b42056.failure.txt:
MSBUILD : error MSB4166: UNHANDLED EXCEPTIONS FROM PROCESS 20892:
MSBUILD : error MSB4166: =====================
MSBUILD : error MSB4166: 8/21/2024 8:58:50 PM
MSBUILD : error MSB4166: System.ArgumentNullException: Value cannot be null. (Parameter 'value')
MSBUILD : error MSB4166:    at System.ArgumentNullException.Throw(String paramName)
MSBUILD : error MSB4166:    at System.IO.BinaryWriter.Write(String value)
MSBUILD : error MSB4166:    at Microsoft.Build.Framework.TelemetryEventArgs.WriteToStream(BinaryWriter writer)
MSBUILD : error MSB4166:    at Microsoft.Build.Shared.LogMessagePacketBase.WriteToStream(ITranslator translator)
MSBUILD : error MSB4166:    at Microsoft.Build.BackEnd.NodeEndpointOutOfProcBase.RunReadLoop(Stream localReadPipe, Stream localWritePipe, ConcurrentQueue`1 localPacketQueue, AutoResetEvent localPacketAvailable, AutoResetEvent localTerminatePacketPump)
MSBUILD : error MSB4166: ===================
MSBUILD : error MSB4166:
MSBUILD : error MSB4166:
Build failed. Properties, Items, and Target results cannot be obtained. See details in stderr above.

PS aspire-samples\samples\AspireShop\AspireShop.AppHost>

cc @baronfel

Gush & Swoon the amazing @davidfowl saw my problem! Huge fan of your work Dave & just recently listened to your most recent interview on .NET rocks. Really looking forward to digging into Aspire!

@ericziko what SDK version are you using here? We had a regression in container publishing in 8.0.400, but if you update to the 8.0.401 hotfix you should be all fixed up.

@baronfel  - Thank you, updating to 8.0.401 fixed the issue


Connect GraphQL to the Tequila API (HttpRequest service)

We miss a Dev account for Tequila.
In progress.

Credential for Tequila should be in 1Password. You can find API key inside the tequila account.

something like this https://github.com/kiwicom/graphql/blob/master/src/common/services/HttpRequest.js


documentable start freezes when new files are added

A but has already been raised in Pod::To::Cached, but it might be workaround-able here.

Please add a test for adding new files.


Status?

What's the status of this project?
I've been looking for a simple compute framework (like sokol_gfx)...

Hi, now this is a repo I did not expect any activity on!
The project is pretty much in a weird limbo between complete/dead, it works well enough that I shipped a depth of field After Effects plugin with it, working on CUDA/OpenCL/Metal/CPU with the same set of shaders. It's also very nice to be able to debug the CPU shaders. I started a misguided rewrite of the project that in the way it always does got way too overengineered.
Unfortunately I don't have time to polish/maintain/document this as of now, but I'm still updating the sources to the newest ones from the actual project that used it, maybe it can be useful to someone.
But thanks for reminding that this project exists, it's actually pretty neat, maybe I'll end up revisiting this idea at some point in the future! (don't hold your breath though :D)

Thanks!
It's hard to find a nice, clean and simple library for compute. Everything  is very heavy, and overengineered. In particular, anything for Vulkan is outrageous.

Out of curiosity: what part of the Vulkan backend messed up your rewrite?

It didn't mess it up by itself, but it really helped kill off my motivation as I don't find the API "fun" to work with, which is pretty important for me when doing non-work projects. My main issues with the API are barriers and memory allocation, here the barriers would have been quite simple to implement but I really didn't want to implement a new Vulkan allocator (and using something like VMA would kind of defeat the purpose of a small one header library.
Thinking back on it, I will definitely want to revisit this concept. The API was just too nice and I can't overstate how magical it was to develop compute kernels on CPU and being able to debug them like any other code. Probably will do it after I finish up with ufbx, but there's still a lot of documentation and polish to be done.
Anyways thanks again for the interest, I had completely forgot about this project!

If you ever decide to revisit this (and add Vulkan/GL backend), let us know. I would be happy to test.
The idea of unified shaders (for CPU/GPU) is fantastic. I have seen a couple projects
along these lines:

Sean Baxter's circle language: https://github.com/seanbaxter/shaders
floor: https://github.com/a2flo/floor

Unfortunately both are super heavy...

I've started to tinker a bit with Vulkan and guppy. Vulkan is indeed an incredibly unpleasant API to work with.
Why would anybody design such thing is beyond me...
If you were doing Vulkan backend, how would you approach the kernel compiler?
Just add another wrapper that would take gp_kernel, gp_args and gp_buffer macros
and just spit out glsl code with layout descriptors, etc.?

Yeah Vulkan is really something else...
The issue with having unified kernels for Vulkan is that GLSL is very restrictive. The main issue is that GLSL does not support pointers, which all the other kernel languages in this project do support. I tried some Vulkan extensions that should add pointer support to the language, like VK_KHR_buffer_device_address, but couldn't get far with that.
One option would be to compile directly to SPIR-V from a non-GLSL language using something like clspv, but I haven't looked into it too much as that project seems quite experimental.

I thought that VK_KHR_buffer_device_address largely solved the problem of pointers.
What was the issue?
I looked at various options like clspv and some other custom compilers (https://github.com/heroseh/hcc), but
none are satisfactory.
It's too bad that we can't have a proper solution for compute. While GLSL is repulsive, is there a feature in OpenCL/CUDA
that could not be transpiled to GLSL at source level?


Missing license file

Could you please add a license file to this repository?

The license is specified by an SPDX identifier already: https://github.com/ZcashFoundation/ed25519-zebra/blob/main/Cargo.toml#L8
We can copy-paste those licenses in if you'd like (PRs welcome).


make c4 service call docker container rather than python script

should resolve current need for a "greg in the loop"
@disa-mhembere

@disa-mhembere here is test data so we can close this: http://mrneurodata.s3-website-us-east-1.amazonaws.com/KKI2009/sub-113/ses-1/

You can ignore the "func" folder as we don't use it in our pipeline.

The service is live. Try to use this data to see if it works 😊
On Mar 6, 2017 12:07 PM, "Greg Kiar"<EMAIL_ADDRESS>wrote:

You can ignore the "func" folder as we don't use it in our pipeline.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/neurodata/ndgrutedb/issues/220#issuecomment-284462346,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABtfJKpAAkAb8brAt-0TEviMZ0ZlS81sks5rjD0XgaJpZM4LQRp8
.

The traceback/error I get:
Environment:

Request Method: POST
Request URL: http://openconnecto.me/graph-services/c4/

Django Version: 1.8.4
Python Version: 2.7.6
Installed Applications:
('django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'pipeline',
 'registration',
 'django.contrib.admin',
 'django.contrib.admindocs',
 'django_tables2',
 'djcelery',
 'kombu.transport.django')
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware')

Traceback:
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "./pipeline/proc_views/raw_upload.py" in raw_upload
  74.       ru_model.save() # Sync to Db
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py" in save
  734.                        force_update=force_update, update_fields=update_fields)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py" in save_base
  762.             updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py" in _save_table
  846.             result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/base.py" in _do_insert
  885.                                using=using, raw=raw)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py" in manager_method
  127.                 return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py" in _insert
  920.         return query.get_compiler(using=using).execute_sql(return_id)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/sql/compiler.py" in execute_sql
  974.                 cursor.execute(sql, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/utils.py" in execute
  79.             return super(CursorDebugWrapper, self).execute(sql, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/utils.py" in execute
  64.                 return self.cursor.execute(sql, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py" in __exit__
  97.                 six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/utils.py" in execute
  64.                 return self.cursor.execute(sql, params)
File "/usr/local/lib/python2.7/dist-packages/django/db/backends/mysql/base.py" in execute
  124.             return self.cursor.execute(query, args)
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/cursors.py" in execute
  205.             self.errorhandler(self, exc, value)
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/connections.py" in defaulterrorhandler
  36.     raise errorclass, errorvalue

Exception Type: OperationalError at /graph-services/c4/
Exception Value: (1054, "Unknown column 'bvectorpath' in 'field list'")

django migrations are not getting applied for some reason :/ this is caused by changing the rawuploadmodel.

ok -- let's try again now

success! 🔥
proof


2.next cake5

First time submitting to an opensource project so forgive me if I am doing it wrong.
I have been through and updated all the errored functions. I have changed the almasaeed2010 dependency to master as there does not seem to be a v4 alpha.
I have added a search action which creates another index like template which adds an easily extensible search page. If you want to keep it I will add something to the docs

thanks!! I'll check soon


feat: preview mode add keyboard shortcuts

Description
Add o and q shortcut keys for preview mode.

Additional context

What is the purpose of this pull request?

[ ] Bug fix
[x] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[ ] Read the Contributing Guidelines.
[ ] Read the Pull Request Guidelines and follow the PR Title Convention.
[ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[ ] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

Hi!  Thanks for PR, we will discuss if we want to go forward with this feature in a coming meeting

We would like to include in Vite 4.4! I can take care of this refactor if you don't have time at the moment.

It would be really nice if you could refactor it.

When i use createServer(Node API), expect to use keyboard shortcuts. can it export?
node/index.ts
export { bindShortcuts, bindPreviewShortcuts } from './shortcuts'

example

import { createServer, bindShortcuts } from 'vite'

...
const server = await createServer(...);
await server.listen();
bindShortcuts(server)

@deot That sounds like something we can expose, but I don't think this is the right place to request for it. I'd suggest opening a feature request, or a PR directly.

@ArnaudBarre I wanted to merge this, but there's too many duplicated parts for me 😅 I went ahead and refactored it. Appreciate if you can review it again.


Added dependency on xmlrunner.

I just got this error while trying to build pybuilder:
[ERROR] Import error in test file c:\programdata\miniconda3\lib\site-packages\pybuilder\plugins\python\unittest_plugin.py, due to statement 'lambda stream: __import__("xmlrunner").XMLTestRunner(output
=project.expand_path("$dir_target/reports"),' on line 50
[ERROR] Error importing unittest: No module named 'xmlrunner'

So, adding the dependency in the plugin.

Coverage decreased (-1.8%) to 68.624% when pulling 029fad145922b20287067d2d33f70f1524495264 on svaningelgem:xmlrunner_dependency into 52751ce687c3c0aaeb2b541a38a2e12473683170 on pybuilder:master.

This should not be necessary at all as unittest-xml-reporting IS the xmlrunner. See: https://pypi.org/project/unittest-xml-reporting/
You can see that everything works in the master on Windows, Linux and OSX: https://travis-ci.org/pybuilder/pybuilder/builds/656972315

I would also really appreciate if you provide information about your environment and a debug log (-v -X)

I was trying to reproduce this, but failed to do so on both python 3.6 and 2.7.
I've no idea anymore how I got this!


Android 14 crash

One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts
This crash happens when target Android SDK is set to 34 (Android 14)

Hello odemolliens, I am using ur library for Esim activation and installation , lately there was crash on Android 14 (Target SDK 34) where Android has enforced us to have this check when registering reciever and explicitly specify whether reciever is EXPORTED or NOT

is there any updates on this? I am also seeing issues on android

Thank you for the PR!


forceHideTitleBar

Requirements

Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
All new code requires tests to ensure against regressions

Description of the Change
Way so we could please hide the title bar on Windows through a config value.
I created a custom titleBar package for atom: https://atom.io/packages/atom-windows-titlebar
To hide the titlebar it requires sort of a hack to change the frame: false in the atom-window.js
Now with asar we can not change the file inside at all because atom is locking the file
Alternate Designs
A simple config value I think will let us do the trick. Possibly using a different config name would be appropriate.
Why Should This Be In Core?
Other developers have created custom titlebar packages. I think it adds a bit more hackability to the editor
Benefits
More options for developers of packages
Possible Drawbacks
Someone accidentally setting this value or the package crashing and then the titlebar gets hidden. Possibly there is another way to hide the electron frame during runtime by opening new BrowserWindow

@sean-codes
I saw your package and wanted to install it - but within your README you never actually elaborated if one should run apm install and where the toggleframe.js is coming from.
Other than that, I definitively agree. It is already possible on MacOS, and it is also possible on Windows - at least Windows 10, as far as I am aware. Atom claims to be cross-platform, so therefore it should be expected that features are as cross platform as possible - which is not the case for the title bar case.

@IngwiePhoenix yes, run apm install from the folder toggleframe.js is in. It's also possible to install apm globally npm install apm -g!

Poking on this merge request.
Any reason why this hasn't been merged in?

The code should be updated:
https://github.com/atom/atom/blob/a239092460e9339ee4d56e5d73258ff7d04fd0d8/src/main-process/atom-window.js#L61:
  if (this.shouldHideTitleBar() || this.forceHideTitleBar()) {
   options.frame = false;
 }

  forceHideTitleBar() {
    return !this.isSpec &&
    (this.atomApplication.config.get('core.titleBar') === 'forcehidden');
  }

Hey @sean-codes, setting titlebar to hidden is now not restricted by platform.
https://github.com/atom/atom/blob/f4c48f2951a9ed4faa83abddcee075316ba7d4b7/src/main-process/atom-window.js#L406-L411
I am closing this PR since we don't need an additional setting.


[CS2103T-W16-2] BobTheBodyBuilder

Our product allows gym managers like Bob to have an easier time with administrative tasks that is required when managing a gym. Since Bob is a fast typer, our product is optimized for CLI users so that frequent tasks can be done faster by typing in commands.

Codecov Report

Merging #13 (cf0295c) into master (ba53b8c) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #13   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ba53b8c...cf0295c. Read the comment docs.


cocoon 503 and 502 from api/public/build-status & api/public/get-status

On the build dashboard:

It seemed to be transient, and I can still see tree status and individual builds.

Will take a look in a bit. Can you please link a pull request or sha where you saw this if that is possible?

this was from the build dashboard: https://flutter-dashboard.appspot.com/#/build

Looks like there was a transient error with access to redis:
"Bad state: StreamSink is bound to a stream
#0      _StreamSinkImpl.close (dart:io/io_sink.dart:182:7)
#1      _Socket.close (dart:io-patch/socket_patch.dart:2243:27)
#2      RespClient.close (package:neat_cache/src/providers/resp.dart:224:21)

From looking at this line: https://github.com/google/dart-neats/blob/master/neat_cache/lib/src/providers/resp.dart#L224 I think there's a bug that we're not actually catching this error. I'm guessing from reading the code the intention is that callers should never see this kind of error.

Okay I added to this open issue for the same problem here: https://github.com/google/dart-neats/issues/153. I see the following options moving forward:

We can add a retry when getting the value from the cache in order to recover from this issue.
We can use the getOrCreateWithLocking method to prevent a possible issue with multiple callers/threads getting encountering this situation.
We can catch the error and log it and wait for the next call to the status.
Or a combination of the above.

This issue has been open with neat-cache since 2021 so it appears that no one is in any hurry to fix it.
Or we can leave this open to track the problem to see how often it occurs.

Did some digging in the logs and it looks like it happens frequently enough that we can see it happen up to a few times a day. So far the most in recent history is 4 times on 04/11/23. I will add call to the locking cache methods first to see this will help to alleviate the issue.

Deployed a build with locking on the cache to see if has an effect on traffic.

Closing as fixed. Please reopen if encountered again.


Notifying users to update Liana (meta-discussion)

Many software would notify users when a new version is available, some will even propose to install it.
Currently Liana does not talk to any server. It has no way to "know" there is a new version. That's a feature, not a bug.
As a user though, I would like for my software to let me know when a new important version is released, especially if security related.
We already covered the topic of "talking to external servers" for things like displaying the exchange rate in local currencies, probably as an optional setting and not active by default.
I believe such a setting for checking for updates either at launch, or from time to time (weekly?) would be useful. It could also be a pop-up if the version is older than N months, asking "your version of Liana is N months old, would you like to check if a new version is available?".
I do not recommend auto-updating or even linking to the website, just displaying that a new release is available, with a changelog. Up to the user to decide if the changes are worth it.
As a side note for people reading this without context: Liana does not require to be up to date regularly. Changes are typically new features or user interface improvements. One can imagine that bugs might be found in the future, or that changes in Bitcoin Core could break some things in Liana, requiring an update.

Maybe up to package managers to deal with this? Not sure how this would work on Windows/Mac.


feat: added SecureTcpIp to eControlMethod enum for plugin.

Actual SecureTcpIp client is not currently available.
Closes #121

Added GenericSecureTcpIpClient, based off existing GenericSecureTcpIpClient_ForServer class, updated to implement ISocketStatusWithStreamDebugging.  New client is currently untested.


Deployment failure due to: Reason: Only one resolver is allowed per field

          Hi @ykethan I renamed a table in my local schema.graphql file and pushed back to Amplify but it failed. Here's the log:

dougalwatt@Dougals-M1-MacBook-Pro-2 seeka % amplify push --appId d2tkk8ivw3yqtf --envName seekadev --allow-destructive-graphql-schema-updates
✅ GraphQL schema compiled successfully.

Edit your schema at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema.graphql or place .graphql files in a directory at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema
⠋ Building resource api/ClimateDisclosure✅ GraphQL schema compiled successfully.

Edit your schema at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema.graphql or place .graphql files in a directory at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema
✔ Successfully pulled backend environment seekadev from the cloud.
⠧ Building resource api/ClimateDisclosure✅ GraphQL schema compiled successfully.

Edit your schema at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema.graphql or place .graphql files in a directory at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema

    Current Environment: seekadev

┌──────────┬───────────────────┬───────────┬───────────────────┐
│ Category │ Resource name     │ Operation │ Provider plugin   │
├──────────┼───────────────────┼───────────┼───────────────────┤
│ Api      │ ClimateDisclosure │ Update    │ awscloudformation │
└──────────┴───────────────────┴───────────┴───────────────────┘
✔ Are you sure you want to continue? (Y/n) · yes
✅ GraphQL schema compiled successfully.

Edit your schema at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema.graphql or place .graphql files in a directory at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema
⠙ Building resource api/ClimateDisclosure✅ GraphQL schema compiled successfully.

Edit your schema at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema.graphql or place .graphql files in a directory at /Users/dougalwatt/Documents/seeka/amplify/backend/api/ClimateDisclosure/schema

Deployment failed.
Deploying root stack ClimateDisclosure [ ---------------------------------------- ] 0/2
	amplify-climatedisclosure-see… AWS::CloudFormation::Stack     UPDATE_ROLLBACK_COMPLETE_CLEA… Mon May 29 2023 16:30:55…
	apiClimateDisclosure           AWS::CloudFormation::Stack     UPDATE_FAILED                  Mon May 29 2023 16:29:34…
Deploying api ClimateDisclosure [ ===------------------------------------- ] 3/42
	GraphQLAPIDefaultApiKey215A6D… AWS::AppSync::ApiKey           UPDATE_COMPLETE                Mon May 29 2023 16:29:43…
	GraphQLAPITransformerSchema3C… AWS::AppSync::GraphQLSchema    UPDATE_IN_PROGRESS             Mon May 29 2023 16:29:42…
	StrategyDevelopmentProcess     AWS::CloudFormation::Stack     CREATE_FAILED                  Mon May 29 2023 16:29:12…
	DynamoDBAccess71ABE5AE         AWS::IAM::Policy               CREATE_COMPLETE                Mon May 29 2023 16:29:04…

🛑 The following resources failed to deploy:
Resource Name: ListStrategyDevelopmentProcessResolver (AWS::AppSync::Resolver)
Event Type: create
Reason: Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 780240a7-dfb4-4133-9c8a-2ae279f4a373; Proxy: null)

Resource Name: SyncStrategyDevelopmentProcessResolver (AWS::AppSync::Resolver)
Event Type: create
Reason: Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 54e06c53-880a-4a9e-8424-737a3258eb74; Proxy: null)

Resource Name: QuerystrategyDevelopmentProcessesByGovernanceoversightactivitiesIDResolver (AWS::AppSync::Resolver)
Event Type: create
Reason: Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 0cf116d2-5a82-458f-a629-d371374dc603; Proxy: null)

🛑 Resource is not in the state stackUpdateComplete
Name: ListStrategyDevelopmentProcessResolver (AWS::AppSync::Resolver), Event Type: create, Reason: Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 780240a7-dfb4-4133-9c8a-2ae279f4a373; Proxy: null)

Name: SyncStrategyDevelopmentProcessResolver (AWS::AppSync::Resolver), Event Type: create, Reason: Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 54e06c53-880a-4a9e-8424-737a3258eb74; Proxy: null)

Name: QuerystrategyDevelopmentProcessesByGovernanceoversightactivitiesIDResolver (AWS::AppSync::Resolver), Event Type: create, Reason: Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 0cf116d2-5a82-458f-a629-d371374dc603; Proxy: null)

Learn more at: https://docs.amplify.aws/cli/project/troubleshooting/

Session Identifier: fa85458a-dd3f-4d2d-87e5-6c964c4f17ac

I notice the error is: Reason: Only one resolver is allowed per field.
This is the same error when I try and change the table from the Amplify Studio UI.
When I look in AppSync I can see that the resolver for that class (StrategyDevelopmentProcesses) now is not connected to any resolvers

but in the Amplify Studio UI it shows correctly:

and the table exists in DynamoDB:

I also noticed three other tables that show up in AppSync without resolvers, but their tables do exist in DynamoDB:

BusinessPlanningHorizon
CapitalDeploymentFundingProcess
ClimatePlanningHorizon

To cross-check this, I opened the Amplify Studio UI and created a new table StrategyDevelopmentProcess, deleted the old StrategyDevelopmentProcesses table, and linked GovernanceOversightActivities to the new table, then deployed. It also failed with the same error.
Next I returned to the UI and just created a new StrategyDevelopmentProcess table without changing anything else, and it again failed with the following UI log:
Command failed with exit code 1: amplify update api --headless --allow-destructive-graphql-schema-updates {"errorName":"UnknownFault","errorMessage":"Object type extension 'Query' cannot redeclare field listStrategyDevelopmentProcesses","resolution":"Please report this issue at https://github.com/aws-amplify/amplify-cli/issues and include the project identifier from: 'amplify diagnose --send-report'","link":"https://docs.amplify.aws/cli/project/troubleshooting/"} Amplify command hooks are disabled in the current execution environment. See https://docs.amplify.aws/cli/usage/command-hooks/ for more information. Session Identifier: cb42abc2-b24b-4f59-a76a-c3570c982690
Next I created a totally different table in the Studio UI called "NewStrategyProcessTable" and deployed it with the following error log
Command failed with exit code 1: amplify update api --headless --allow-destructive-graphql-schema-updates {"errorName":"UnknownFault","errorMessage":"Object type extension 'Query' cannot redeclare field listStrategyDevelopmentProcesses","resolution":"Please report this issue at https://github.com/aws-amplify/amplify-cli/issues and include the project identifier from: 'amplify diagnose --send-report'","link":"https://docs.amplify.aws/cli/project/troubleshooting/"} Amplify command hooks are disabled in the current execution environment. See https://docs.amplify.aws/cli/usage/command-hooks/ for more information. Session Identifier: cb42abc2-b24b-4f59-a76a-c3570c982690
This is very odd because the names of the new table is "NewStrategyProcessTable", not "StrategyDevelopmentProcesses".
Then to check it wasn't mixing up table names, I created a new table with a totally different name and no fields, using the Studio UI, and deployed it successfully, then I renamed it to "StratDevProcess" and added the same fields as from the original "StrategyDevelopmentProcesses" table and deployed that successfully. Next I deleted the relationship from the "GovernanceOversightActivitiesDataSet" table to the "StrategyDevelopmentProcesses" table, deployed that change, then linked the "GovernanceOversightActivitiesDataSet" table to the "StratDevProcess" table and successfully deployed that. Lastly I successfully deleted the no-longer-needed "StrategyDevelopmentProcesses" table.
This feels like an AppSync issue - it's clearly out of sync with the backend somehow and seems to confuse similar table names, or it can't handle changing tables with an existing relationship when there are a moderate number of tables.
I'm keen to see your feedback on this issue - seems like a pretty big issue that needs urgent attention as it makes Amplify very hard to use for apps with 30+ tables, which is a pretty common situation.
Originally posted by @DougalW in https://github.com/aws-amplify/amplify-studio/issues/916#issuecomment-1566519901

Hi @DougalW 👋 ,thanks for raising this issue.we are working on reproducing the issue. Could you please run below command and send us the project Id and report.
amplify diagnose --send-report.
Please refer here for diagnose instructions here

Hi @AnilMaktala here's the projectID: 0d79ebf1ecf027c8d81c4e9682adb0d1 and report attached
report-1685656762282.zip

Hi @DougalW, thanks for sharing your project. Reading through the issue I am little confused if the issue exists in Studio or via Amplify CLI. Can you please share more specific reproduction steps using either CLI or Studio so that we can debug further?

Hi 👋, We are closing this issue as we have not received any response from you. However, if you are still facing the same issue and require our assistance, please don't hesitate to leave a comment and provide us with the information our team had previously asked for. This way, we can reopen the issue and provide you with better assistance.
Thank you!


Integrate VEnhancer Model with the service

Problem
Current video output is limited to 480p resolution, resulting in lower quality final videos that don't meet production standards.
Solution
Integrate VEnhancer Video Upscaler model for super-resolution model to upscale video frames and recompile them into higher quality output.
Functionality

Frame extraction from low-res video
VEhancer video Upscaler model integration for 2x/4x upscaling
Batch processing of frames
Video recompilation with high-res frames
Quality preservation during frame interpolation
GPU-accelerated processing

changed description


There is no proper support for RTL

Hi , texts in RTL languages will be shown and rendered as LTR  in apps like Joplin and others.
any plan to fix this annoying bug ?

This is not related to markdown

This is not related to markdown


Some Models do not have a ._ext() attribute

Describe the bug
When wanting to initialise some files and write them, the ._ext() attribute is not available for all, so far ._filename() seems to be.
This was found for CrossLocModel, StorageNodeModel.
To Reproduce
CrossLocModel._ext()
Version info (please complete the following information):

OS: [e.g. Windows]
Version 0.3.1+ (dev)

@hboisgon : can you explain in some more detail what is not working for you?
Classes CrossLocModel, StorageNodeModel (and many more) are subclasses of IniModel, which has method _ext() defined (it will return ".ini").
For example:
from hydrolib.core.dflowfm import *

print(CrossLocModel._ext())
print(StorageNodeModel._ext())

Should produce:
.ini
.ini

Hi @hboisgon, I cannot reproduce this. With 0.4.1 I'm getting this:
from hydrolib.core.dflowfm import CrossLocModel
CrossLocModel._ext()
# Out[53]: '.ini'

Let us know if this still an issue for you.