Best practices for dispatching actions

Hey all,
tldr:
I guess in the end my questions boils down to how to handle situations where there is one "action" (some async action, usually triggered by the user) which will update multiple parts of our state (which means multiple reducer will have to do something).
I have a few general questions about how and where to dispatch actions in rather big applications. The use case is the following:
There are actions which potentially lead to changes in multiple components of the app. Say our app has the entity content. There is ContentService which abstracts the dispatching of actions for us and ContentApi which abstracts http requests.
After a http request we want to update the content somehow in the content reducer. But we also want to show a notification to the user that the action was successful/failed.
So we have also the entity notification (and a NotificationService). My question is now how/where to dispatch the showNotification action.
We could add the NotificationService as a dependency to ContentService and call some method on it at the given point in time which will dispatch an action:
class ContentService {
  constructor(..., private notificationService: NotificationService) {
    // ...
  }

  //...

  get(...) {
    contentApi.get(...)
     .subscribe(content => {
        this.store.dispatch(getContentSuccessAction);
        notificationService.show('success');
     })
     .catch(_ => {
        this.store.dispatch(getContentFailAction);
        notificationService.show('fail');
     })
  }
}

But we will end up doing that a lot of times in different services and there methods. I have the feeling that we introduce a lot of dependencies which makes it harder to test the application and also harder to  comprehend whats going on.
What we could also do is to keep the NotificationService out of the ContentService and do some additional work in the NotificationReducer, say we do not call the NotificationService explicitly but in the NotificationReducer we react to the getContentSuccessAction like that:
export const failureReducer = (state: NotificationState = initialState, action: Action): NotificationState => {

  switch (action.type) {
    case GET_CONTENT_SUCCESS_ACTION:
      return [...state, new Notification('Some success message')];
     // ...
  }
}

The problem here is that in some cases we will uses the NotificationService to add Notifications and some times do the way I just described which feels totally wrong.
So after writing all this I have the feeling that the first approach is ok, but is there another option? Any hints what to improve?
I guess in the end my questions boils down to how to handle situations where there is one "action" (some async action, usually triggered by the user) which will update multiple parts of our state (which means multiple reducer will have to do something).
Sorry for the long blabla, at least it was helpful to write about it but I would appreciate any feedback!

I think both options are valid to use. Using services and combining them to be able to react to different things may give you more control, but also results in a bit more complex setup.
Did you take a look at ngrx/effects? The effects library is built to handle side-effects such as http requests in a ngrx way. Maybe thats helps if you are not happy with your current solution.

@bzums Re-open this issue if you are still having problems. Alternatively, feel free to ask this question in our community Gitter channel or StackOverflow. Thanks!


Fixed links to notebooks in README.md

REQUIRED: Add a summary of your PR here, typically including why the change is needed and what was changed. Include any design alternatives for discussion purposes.

--- YOUR PR SUMMARY GOES HERE ---

REQUIRED: Fill out the below checklists or remove if irrelevant

If you are opening a PR for Official Notebooks under the notebooks/official folder, follow this mandatory checklist:

[ ] Use the notebook template as a starting point.
[ ] Follow the style and grammar rules outlined in the above notebook template.
[ ] Verify the notebook runs successfully in Colab since the automated tests cannot guarantee this even when it passes.
[ ] Passes all the required automated checks. You can locally test for formatting and linting with these instructions.
[ ] You have consulted with a tech writer to see if tech writer review is necessary. If so, the notebook has been reviewed by a tech writer, and they have approved it.
[ ] This notebook has been added to the CODEOWNERS file under the Official Notebooks section, pointing to the author or the author's team.
[ ] The Jupyter notebook cleans up any artifacts it has created (datasets, ML models, endpoints, etc) so as not to eat up unnecessary resources.

If you are opening a PR for Community Notebooks under the notebooks/community folder:

[x] This notebook has been added to the CODEOWNERS file under the Community Notebooks section, pointing to the author or the author's team.
[x] Passes all the required formatting and linting checks. You can locally test with these instructions.

If you are opening a PR for Community Content under the community-content folder:

[ ] Make sure your main Content Directory Name is descriptive, informative, and includes some of the key products and attributes of your content, so that it is differentiable from other content
[ ] The main content directory has been added to the CODEOWNERS file under the Community Content section, pointing to the author or the author's team.
[ ] Passes all the required formatting and linting checks. You can locally test with these instructions.

@edgarbc Hi Edgar, thanks for the suggestions of using short links vs full links. The READMEs are generated by an automated process. Since the process does not know the final destination of the README, we opt'd to use full links.


ArgumentError (no or unsupported ffprobe version found. (version: 2.7.2))

I saw in the commit logs that 2.7.2 was added and I'm using:
gem 'ffprober', github: 'beanieboi/ffprober'
to run the latest from github.
Also, it's running from a Rails process in a controller just for testing.  Not sure if that is supported or not.
Rails sees ffmpeg fine from using a raw system call.

ffprobe version 2.7.2 Copyright (c) 2007-2015 the FFmpeg developers
built with Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/2.7.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libmp3lame --enable-libvo-aacenc --enable-libxvid --enable-libfreetype --enable-libvorbis --enable-libvpx --enable-libass --enable-ffplay --enable-libfdk-aac --enable-libopus --enable-libquvi --enable-libx265 --enable-nonfree --enable-vda
libavutil      54. 27.100 / 54. 27.100
libavcodec     56. 41.100 / 56. 41.100
libavformat    56. 36.100 / 56. 36.100
libavdevice    56.  4.100 / 56.  4.100
libavfilter     5. 16.101 /  5. 16.101
libavresample   2.  1.  0 /  2.  1.  0
libswscale      3.  1.101 /  3.  1.101
libswresample   1.  2.100 /  1.  2.100
libpostproc    53.  3.100 / 53.  3.100

hey thanks for the report, i will look into this

i ran it locally and it worked fine.
cat you please look into your Gemfile.lock and see which version you are running. maybe you need to update. to do that you can run bundle update ffprobe

i also just release 0.4.5 which is the latest release. you don't need to use the build from GitHub anymore

ffprober supports upto 2.8.2 now, i will close this for, thanks for the report!


Solving node template type mismatch

This PR solves the issue #229 .

The main contribution is to remove the line of code that changed the node types. Then, it also
removes the tests that checked whether the node types had changed (this issue had not been accidental, but at some point we had thought that it was the correct solution)
Adds some log messages
Adds a file with a test AAM

@adriannieto Since you raised issue #229, could you check this PR?

Current coverage is 36.61%

Merging #234 into master will decrease coverage by -0.10% as of 1f05438

@@            master    #234   diff @@
======================================
  Files          329     329
  Stmts        12029   12032     +3
  Branches      1538    1538
  Methods          0       0
======================================
- Hit           4417    4406    -11
+ Partial        441     440     -1
- Missed        7171    7186    +15

Review entire Coverage Diff as of 1f05438

Powered by Codecov. Updated on successful CI builds.

It looks good enough to merge but I'm curious about how your changes solved the issue.

The problem of #229 was not about changing the types, but changing to the right ones. The issue was that during the generation of the necessary files we were changing a MySQL  to a WebCluster, which was obviously wrong.
I think that having the scalable option is a nice addition, so fixing the issue should focus on improve the non-scalable -> scalable mapping instead of removing it.

@adriannieto I've understood your comment. Thank you.
Now, I've been discussing and learning about the modification of types and the information on them.
The mapping you have proposed  from non-scalable to scalable types is OK and will also entail adding the correct property values that "scalable" types require, because scalable types (like different kinds of clusters) have different properties from the MySQL of Jboss7server types. This information is out of hand of the information managed by the optimizer. So it will not be able to change it to the correct scalable type with the appropriate value for its properties.
Therefore, I understand that this change of types from non-scalable to scalable should be done in other part of the code. I'm going to close the PR. Thus, types in the ADP will be still changed from an incorrect type (because they are non-scalable) to another incorrect type (scalable but yet incorrect).
When we know what is the suitable way to solve this issue I can reopen the PR to make the optimizer keep the same types as it has received as input, which is what this PR does.

PR reopened for avoiding type change in the optimizer.

I agree with this. When DamGenerator will work we will try to include the dynamic types management.
Thanks a lot @perezp


Feature/release pipeline

Pypi now requires 2FA and as such publishing new releases needs either an api token or setting a 'trusted publisher'  and a release workflow.  Uploading dist files using twine and entering username/password is no longer supported.
I have added a release pipeline to the .github folder. which is set up to use Trusted publishers.  this could be changed to use an API token instead. and adding
      with:         user: __token__         password: ${{ secrets.PYPI_API_TOKEN }}
The pipeline is triggered on publication and uses the gh-action-pypi-publish git hub action.  The script is an amalgam of the example scripts there and the default publish to pypi action from the actions pane.

There is currently a syntax error on line 14 of the release.yml pipeline.  I cant quite figure out the issue and would appreciate any insights others may have.

There is currently a syntax error on line 14 of the release.yml pipeline. I cant quite figure out the issue and would appreciate any insights others may have.

I think this was an issue with indents in the steps block which I have now resolved.

Note that Trusted publishing has now been set up on pypi for this org/repo with release.yml as the specified workflow and the environment specified as pypi.  I have also created the pypi environment.  Currently I and @adamsardar have permissions to review and approve deployments.  We can have up to 6 people with that permission.  Alternatively we can remove the environment specification and then anyone with commit permissions will be able to trigger a release.


Fix #1945: allow using Numpy ufuncs in AOT compiled code

This minimizes our API contact surface with Numpy, and has the nice side-effect of standardizing on a single implementation for more math functions.
Note we could try to remove even more of our dependence on Numpy C functions (given it's most of time for redundant implementations of functions otherwise implemented for the math and cmath modules). I just did the minimum required to solve the AOT compilation issue.
Based on PR #1946.

[Current coverage][cc-pull] is 87.22%

Merging [#1952][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.02%

@@             master      #1952   diff @@
==========================================
  Files           299        299
  Lines         53272      53272
  Methods           0          0
  Messages          0          0
  Branches       5501       5501
==========================================
- Hits          46477      46465    -12
- Misses         5883       5894    +11
- Partials        912        913     +1

Powered by Codecov. Last updated by [b0aa4ba...73eeecf][cc-compare]
[cc-base-branch]: https://codecov.io/gh/numba/numba/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/numba/numba/compare/b0aa4ba03c3c6faf4d62a66fc5bb5030f25056b8...73eeecf21b11137c09a7653a242d4c709b07f1bf
[cc-pull]: https://codecov.io/gh/numba/numba/pull/1952?src=pr

@sklam: Can you review?

Perhaps first validate #1946?

Ah, right.  @sklam, you should start with #1946.  :)


Constraining poe2arb version for a project

To prevent different people from one project from using different poe2arb versions (which may result in different ARB outputs, bloated diffs, etc.) we may introduce something like a poe2arb-version constraint in l10n.yaml, which would specify a required poe2arb version to be run with.
It could specify:

a specific version 0.5.1
version range >= 0.5.-, >=0.5.0 <0.7
minor version ^0.5.0

That's rather low priority

Or poe2arb binary could be distributed through a pub package, and leave version management to pub. "Constraining poe2arb version for a project" is not enough, we would then need to solve the problem of having many poe2arb version on one system. Pub would solve both problems, usage would then be through pub run.


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

EchoBot/Utility.cs, line 77 at r1 (raw file):

                {
                    //check if valid member
                    bool validMember = validateMessageComponent(fullName, guildMembers);

Why assign to a variable if it is only used once? Why not:
if (validateMessageComponent(fullName, guildMembers))

EchoBot/Utility.cs, line 82 at r1 (raw file):

                    {
                        //check if valid amount
                        bool validAmount = validateMessageComponent(kudosAmountOrLastName, kudosAmounts);

Why assign to a variable if it is only used once? Why not:
if (validateMessageComponent(kudosAmountOrLastName, kudosAmounts))

EchoBot/Utility.cs, line 114 at r1 (raw file):

    }

}

Needs a CRLF at the end here :grin:

Comments from Reviewable

EchoBot/Utility.cs, line 114 at r1 (raw file):
Previously, PlagueHO (Daniel Scott-Raynsford) wrote…
Needs a CRLF at the end here :grin:

how do i do this?

Comments from Reviewable

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

EchoBot/Utility.cs, line 77 at r1 (raw file):
Previously, PlagueHO (Daniel Scott-Raynsford) wrote…
Why assign to a variable if it is only used once? Why not:
if (validateMessageComponent(fullName, guildMembers))

good spotting, ill fix this now....

EchoBot/Utility.cs, line 82 at r1 (raw file):
Previously, PlagueHO (Daniel Scott-Raynsford) wrote…
Why assign to a variable if it is only used once? Why not:
if (validateMessageComponent(kudosAmountOrLastName, kudosAmounts))

good spotting, ill fix this now....

Comments from Reviewable

thanks for the thorough PR Dan :-)

Comments from Reviewable

Hehe - devs gotta keep other on their toes right? ;)

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

EchoBot/Utility.cs, line 114 at r1 (raw file):
Previously, smileyfist (Reece Hewitt) wrote…
how do i do this?

Just add a line feed after the }

Comments from Reviewable

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

EchoBot/Web.config, line 12 at r3 (raw file):

    <add key="MicrosoftAppId" value="" />
    <add key="MicrosoftAppPassword" value="" />
    <add key="AzureTableName" value="DevGuild004" />

You should not do this! :) Once someone has your storage key they'll use it as a data dump site. I'll set up some safe deploy code for this once your PR is through.

Comments from Reviewable

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

Comments from Reviewable


Add a community standards or CoC doc

I like Julia's http://julialang.org/community/standards/. It's very relevant to Shapely. Perhaps we have a Toblerity org CoC that Shapely can share with Fiona.

Done.


Improve server list config

Instead of requiring a server list in discord-config.json, add an option to automatically enable all servers the bot is a member of. This will allow easier setup, and require less maintenance for public bots. The bot can be invited to a server and immediately its d-zone will be online.
Server options such as password, channel/user ignores, etc can still be defined in discord-config.json.

Closing since this is planned for the rewrite.


[Workshop] The "Призупинити набір" link is missing on the workshop card after successful editing.

Environment: Windows 10, 64-bit, Google Chrome 107.0.5304.107.
Reproducible: always.
Preconditions
1.Go to https://oos.dmytrominochkin.cloud/#/
2.Log in as service provider with "комунальна" form of ownership.
3.SP has one or more workshops without limitation of places in the workshop.
Steps to reproduce

Go to the "Мої гуртки" tab of personal cabinet (by clicking the button in the top right corner).
Click on "Редагувати" button on the workshop card.
Change the radio button "Кількість доступних місць" and set the limit of available seats (for example, 5).
Save changes.
Pay attention to the workshop card.

Actual result
The "Призупинити набір" link is missing on the workshop card.

Expected result
After successful editing and the set limit of available places in the workshop, the "Призупинити набір" link appears on the workshop card.
Labels to be added
"Bug", Priority ("medium"), Severity ("medium"), Type ("UI, "Functional").

Fixed


Allow exports map entries to point at .ts source files

Fixes #48369

Seems like questionable functionality to be honest... I'm not sure why we would want to do this yet.

I snuck this into main in #47925 (input files are .ts files!), so once the merged and up-do-date test addition comes back green, I'll merge the test.


Download from dl.google.com doesn't work: : v1.18.0/linux.amd64

Bug Description
Hi, I'm not sure what's happening but since the latest tag was pushed once I try to download the proxy with this command:
wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
chmod +x cloud_sql_proxy

On an docker image based from openjdk:8-jre-alpine I'm not able to execute the binary for some reason, and this image was working perfectly fine in the morning but if change it to https://dl.google.com/cloudsql/cloud_sql_proxy.linux.386 then it works fine. This issue is weird because this has been working perfectly fine until a few hours ago so I'm wondering if the latest changes could have caused this problem.
Is it possible that you have released the wrong binaries with wrong architectures? so that amd64 is actually 386 or the other way around? I know it might sound crazy but my issues started to happen around the same time the latest tag was released
Does anyone is able to help with this?
Thanks

What error message are you seeing?
What command are you running?

Ran in to the same issue and it fails silently when following the guide from the quickstart:
wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
chmod +x cloud_sql_proxy

And in the shell it looks like this:
/app # wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
Connecting to dl.google.com (<IP_ADDRESS>:443)
cloud_sql_proxy      100% |*********************************************************************| 15.6M  0:00:00 ETA
/app # chmod +x cloud_sql_proxy
/app # ls -l cloud_sql_proxy
-rwxr-xr-x    1 root     root      16444117 Sep  9 09:36 cloud_sql_proxy
/app # ./cloud_sql_proxy
/bin/sh: ./cloud_sql_proxy: not found

What error message are you seeing? What command are you running?

/cloud_sql_proxy -instances="$GCLOUD_PROJECT:$CLOUDSQL_ZONE:$CLOUDSQL_INSTANCE"=tcp:3306 -credential_file=creds.json
/cloud_sql_proxy: not found

I'm getting the same thing here on the amd64 binary, here's a Dockerfile which shows the problem (the binary isn't executable):
FROM alpine:3.10.3 as build
RUN cd / && \
    wget https://storage.googleapis.com/cloudsql-proxy/v1.18.0/cloud_sql_proxy.linux.amd64 && \
    mv cloud_sql_proxy* cloud_sql_proxy && \
    chmod +x cloud_sql_proxy && \
    mv cloud_sql_proxy /usr/local/bin/cloud_sql_proxy

At least on my machine, the binary is working well for me:
wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy
chmod +x cloud_sql_proxy

Logs:
$ /cloud_sql_proxy -instances=$INSTANCE_CONNECTION_NAME=tcp:3306
2020/09/09 08:55:15 current FDs rlimit set to 32768, wanted limit is 8500. Nothing to do here.
2020/09/09 08:55:16 Listening on <IP_ADDRESS>:3306 for $INSTANCE_CONNECTION_NAME
2020/09/09 08:55:16 Ready for new connections
2020/09/09 08:55:49 New connection for "$INSTANCE_CONNECTION_NAME"
2020/09/09 08:55:50 Client closed local connection on <IP_ADDRESS>:3306

@kurtisvg try specifically with https://storage.googleapis.com/cloudsql-proxy/v1.18.0/cloud_sql_proxy.linux.amd64 ?

@Stono I did try that one before I closed your other issue :) - unfortunately it also works fine for me.
The Dockerfile helps, I will try that now.

As another data point, I can download https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 and https://storage.googleapis.com/cloudsql-proxy/v1.18.0/cloud_sql_proxy.linux.amd64 from both my desktop computer at home and a random virtual machine (running on Google's Compute Engine). All four downloads are the same binary (sha1sum says 396154989ee09383d74a14cb51d7a8334a3daf62).
@Stono what system are you running this on? And what does file cloud_sql_proxy.linux.amd64 say?
For the record, mine says:
$ file cloud_sql_proxy.linux.amd64
cloud_sql_proxy.linux.amd64: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, Go BuildID=sNSuE9RIbzyUXmGP4Lqq/sj43aYTSTLrKLu1iwPJf/IZkWddv9FyfGaVxQJfgk/nIIYvZ0bwGOJPbZ8Qgip, not stripped

In the alpine environment I'm able to successfully reproduce the issue.
I traced this back to the fact that in our new release pipeline, we don't set CGO_ENABLED=0 when building the binaries. My reasoning was that this is automatically configured for cross-build compilations, but in hindsight obviously the linux.amd64 build isn't a cross-build since it's compiled on those machines. 🤦
Recompiling with this flag and copying it into the docker image work as expected.
I'll re-trigger the distribution of these binaries momentarily.

Successfully built 67459fb57c77
Successfully tagged eu.gcr.io/at-artefacts/infra-cloudsql-proxy:latest

====================================
====== Test file: common.yaml ======
====================================
=== RUN: Command Test: cloudsql proxy version should work
--- PASS
stdout: Cloud SQL Proxy: 1.18.0

=====================================
============== RESULTS ==============
=====================================
Passes:      1
Failures:    0
Total tests: 1

/lgtm :)

Looks like both GCS and the dl.google.com links are now working 👍


[BnF] après + date

Manage this case http://data.doremus.org/artist/612f6e35-e4b8-3551-9f3b-5f5728dc2dda

a date with ... means that there is uncertainty: 176. means "at some time between 1760 and 1769"
and 17.. means "at some time in the XVIII. century".
In some cases we can assert something, either because there are historical evidences or just because we know the person died let's say in 1799 and was not so old, so 17.. is a minimalistic assertion.
in this specific case (1...-après 1753), the problem is we don't know if we should write 17.. or 16.. for the birth date, so in my opinion this is equivalent to "unknown".
Do you already know how to treat the "après 1753" case?

Answering @pierrechoffe :
birth 1...
I would write "1000" and set ecrm:P79_beginning_is_qualified_by as "precision at millennium".
It means applying the same rules we use for TimeSpan.
death après 1753
I would write "1753" and set ecrm:P81_end_is_qualified_by as one of the following:

uncertain, value already in use
not before or after


Updated dotenv type version

#63
Updated dotenv and @types/dotenv to current versions and corrected exported interface name.

Pull Request Test Coverage Report for Build 182

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 96.954%

Totals

Change from base Build 178:
0.0%

Covered Lines:
144

Relevant Lines:
144

💛  - Coveralls


Does it works for PropertySource which uses specific file name?

Hi,
I have a question for Spring Cloud Config.
I want to use PropertySource which uses custom file name not '{servicename}-{profile}.properties' like:
@Configuration
@PropertySource("classpath:/com/myco/a-${env}.properties")
public class OracleConfig {
     @RefreshScope
     @Value("${oracle.url}")
     private String url;
}

Does it have any problem?
Bound variables are updated well when source change is pushed to git. right? (assuming use of Spring Bus)
Thanks
Minsu

@ryanjbaxter
Thanks for your answer


Fix regression in copyToImage

Description
When the source image is flipped, we want to read the source data backwards and thus need to keep subtracting the "iterator" on the source data.
Regression introduced with 01836ccea4f5655e16ad6d7cf4aac6f023234c53 as part of #1846
Reported here by @texus
Tasks

[ ] Tested on Linux
[X] Tested on Windows
[ ] Tested on macOS
[ ] Tested on iOS
[ ] Tested on Android

How to test this PR?
Testing wise it's a bit tricky, as the crash doesn't seem to happen with Visual Studio itself.
One source where the m_pixelsFlipped flag is set, would be when you copy the contents from a window, so I've created this example below.
#include <SFML/Graphics.hpp>

int main()
{
	auto window = sf::RenderWindow{ { 1280u, 720u }, "Test" };
	window.setFramerateLimit(60);

	auto rectangle = sf::RectangleShape{ { 200.f, 200.f } };
	rectangle.setPosition({ 150.f, 150.f });
	rectangle.setFillColor(sf::Color::Green);

	auto texture = sf::Texture{};
	texture.create(window.getSize().x, window.getSize().y);
	auto sprite = sf::Sprite{ texture };
	sprite.setColor(sf::Color{ 200u, 200u, 200u, 200u });
	sprite.setPosition({ 10.f, 10.f });
	auto textureIsSet = false;

	while (window.isOpen())
	{
		for (auto event = sf::Event{}; window.pollEvent(event);)
		{
			if (event.type == sf::Event::Closed)
			{
				window.close();
			}
			else if (event.type == sf::Event::KeyReleased && event.key.code == sf::Keyboard::Return)
			{
				texture.update(window);
				textureIsSet = true;
			}
		}

		window.clear();
		window.draw(rectangle);

		if (textureIsSet)
		{
			window.draw(sprite);
		}

		window.display();
	}
}

I can confirm that this PR fixes the segmentation fault in my code.
Your example code doesn't crash on linux either, but I can reproduce it with the following:
#include <SFML/Graphics.hpp>

int main()
{
    sf::RenderTexture target;
    target.create(100, 100);

    target.clear();
    target.display();

    target.getTexture().copyToImage();
}


C# Mono [Export] not working in heirs if value is default

Godot version: Godot_v3.2.1-stable_mono_x11.64
OS/device including version: Linux mint
Issue description:
I have two classes
Unit:
using Godot;

public class Unit : Node2D
{
    [Export]
    public int Health;

    public override void _Ready()
    {
        GD.Print("Health: " + Health);
    }
}

and Player:
public class Player : Unit
{
}

Two scenes
Unit.tscn:
[gd_scene load_steps=2 format=2]

[ext_resource path="res://Unit.cs" type="Script" id=1]

[node name="Unit" type="Node2D"]
script = ExtResource( 1 )
Health = 50

and Player.tscn inherited from Unit.tscn:
[gd_scene load_steps=3 format=2]

[ext_resource path="res://Unit.tscn" type="PackedScene" id=1]
[ext_resource path="res://Player.cs" type="Script" id=2]

[node name="Player" instance=ExtResource( 1 )]
script = ExtResource( 2 )

Player.tscn prints "Health: 0". But the value must be taken from the parent.
If you change Health in Player.tscn, it works correctly.
Minimal reproduction project: cstest.zip

How did you even make this? If you instance the Unit scene and try to set it as root, Godot gives back a message of "Instantiated scenes can't become root".
I can confirm the behavior is weird, but also, it really seems like you're not supposed to do this...

in gdscript player.tscn prints 50

I think this is a duplicate of #36480


CC2530 internal pull-up resistor seems not enabled in later versions of ptvo

I am not sure if this is not some settings issue, but I cant figure it out. I did a test with older version of ptvo firmwave (2021-07-05) and also latest versions 2023-02-07 & 2023-04-22. Both never versions behave same way with same setup. GPIO pin set as switch mode, seems to not have enabled pull up resistor, because when I watch zigbee2mqtt messages, it gets triggered by random noise, the longer the sensor cable, the more frequently it triggers, which is not the case with old ptvo version. I am doing the test on P05 pin with reed switch as in scheme.

The configuration and behaviour comparison of old and new firmwave setup is on following image. Left is the old firmware setup and state_l5 graph from mqtt explorer, on the right is latest ptvo firmware setup and state_l5 graph, which is full of false triggers.

I couldnt find on your site any further documentation about the setup of newer firmware, if there is any difference to older one, nor any other people with similar issue. The setup was taken from https://community.home-assistant.io/t/diy-zigbee-weather-station/378652.

@Goodwillson It seems that this issue it related to an incompatibility of ADC and GPIO with an internal pullup resitor on the same port (P0x).  If it is possible, add external pullup resistors and re-configure GPIO P00, P07, P05. Or move these GPIO to P1x.


fncUploadFile default to CF3:/

the function sendFiles(sftp,ftpFiles) by tdefault sends ftpRemoteFiles to CF3. Allow a user to define the remote location

done in 8.0.4


About training epochs

Thanks for sharing the code.
Does mixstyle need increase the training epochs  like mixup?

hmm, good question
in all our experiments, we kept the training params the same for all baselines (using the same epochs)
we didn't tune the optimization params to evaluate the impact, but this might be worth exploring
thanks!


Paths mismatch in clearBreakPoints

When called from setBreakPointsRequest, clearBreakPoints does a path comparison between local and remote paths. Thus breakpoints are never cleared.

I made a quick patch on my fork 9df4fae0742876f3013278807de2b1614c99a41b, for both this issue and #381

Hi ! The path mappings are relative in my configuration. With absolute paths, detection of OS works correctly, but breakpoints don't.
I used relative paths because, when pausing while my code is executed, the stacktrace shows relative paths. These paths are written in the binary by the compile right ? I guess that's why absolute paths won't work.
However I found a way to make absolute paths work but there's a catch. Suppose my project structure is:
my-project/
  |-- my-exe/
    |-- main.cpp
  |-- my-lib/
    |-- src/
      |-- hello.cpp

and is installed in the folder /src on remote. In the stacktrace cpp files are referenced as ../my-exe/main.cpp  and ../src/hello.cpp. Here's how the configuration would look like:
"ssh": {
  "cwd": "/src/my-project/my-exe",
  "sourceFileMap": {
    "/src/my-project/my-exe": "${workspaceRoot}/my-exe",
    "/src/my-project/my-lib/src": "${workspaceRoot}/my-project/my-lib/src",
  },
}

Breakpoints will work in main.cpp but not in hello.cpp. I think this is because
"sourceFileMap"."/src/my-project/my-exe"/main.cpp = "cwd"/../my-exe/main.cpp
whereas
"sourceFileMap"."/src/my-project/my-lib/src"/hello.cpp != "cwd"/../src/hello.cpp
Maybe OS detection could be manually overridden with a parameter ?
Nevertheless, it has no impact on the comparison of source and index.file in clearBreakPoints. The former is a local path, and the latter is a remote path.

I don't believe you should need to specify absolute paths on the local side, only the remote.  The extension is able to determine the system it is running on, just not the remote system.  Therefore, try using relative paths for the local paths but absolute paths for the remote path, in the path mapping.
Additionally, if you want, it is possible to force absolute paths in your debug information using -fdebug-prefix-map, although I don't think that is required in this case.
If possible, can you include the log output for the problem where you enable showDevDebugOutput in your configuration?

I can't include the log output since it's company code, and I could not produce a MRE. I added the parameter ssh.pathKind in my fork, and I can do a PR if that's ok with you.
Concerning the setBreakPointsRequest bug, is there a reason why clearBreakPoints is passed a local path, whereas addBreakPoint is passed a remote path ?

Adding ssh.pathKind might be an option, but I wonder if we could use the ssh.cwd instead.  I believe that is a required field, and I'd assume it would be an absolute path.  Do you have that specified and is that an absolute path?  If so, that might be the preferred solution rather than introducing another configuration parameter.
As for the setBreakPointsRequest, yes that looks like a bug.  Please submit a PR with your fix.  Thanks!

cwd should work five also with relative (to the workspace) paths, if absolute paths in there work for this scenario, while relative doesn't then it would be the extension configuration code which should make that path absolute first.

My ssh.cwd is an absolute path, so that would work in my case.
Another idea could be to send a uname through ssh, and fallback to win32 if it fails ?


Spyder 6.0.0 and 6.0.1 do not start up, even in freshly set up environment

Problem Description
Spyder versions 6.0.0 / 6.0.1 hang within the startup, not reaching the GUI but only producing 100% CPU load.
What steps reproduce the problem?
conda install -c conda-forge spyder=6.0.0  or 6.0.1
Invoke spyder on the CLI.
Instead of the GUI starting up, the command does not complete, but is simply stuck, with no output resulting.
In the top-list, one can see that a spyder processes has started and produces 100% CPU load.
Only CTRL-C on the CLI (or killing the process) will stop this.
Upon stopping spyder, one can see in the CLI that the most recent call consistently is
 "..../envs/py/lib/python3.9/site-packages/spyder/utils/qthelpers.py", line 842, in set_monospace_interface_font
     QFontMetrics(plain_font).xHeight() != x_height

I'm happy to provide more info if you tell me how in this situation.
Spyder version 5.5.5 starts with no problem.

Spyder version:  6.0.0 or 6.0.1
Python version:  3.9.20
Qt version: qt-main 5.15.8
PyQt version: 5.15.9
Operating System name/version: linux

(I can't check spyders' 6.0.0 and 6.0.1 dependencies, as they don't start ...)

I am aware that my initial issue description may have been somewhat vague. Therefore  I have changed the title and added some (hopefully) clarifying remarks.
The issue I am facing is that versions 6.0.0 and 6.0.1 do not run within a freshly set up environment with an updated base environment.
What I do to get this is:

I am not using the base env, but anyway, just to make sure, I do conda activate base and then conda update --all and then conda deactivate
Next I do conda create -n sptes python=3.9, then conda activate sptes, then conda install -c conda-forge spyder=6.0.1
Finally, without any further ado, I invoke spyder on the CLI of this freshly generated sptes env.
After that spyder does not start a GUI but just runs with 100% CPU load in the top-list. This is the same behavior I reported previously from within my actual envs.

I don't know if it helps, but my OS is an openSUSE Leap linux.

B.t.w.:
This issue is accompanied by weird additional side effects: After returning to version 5.5.5, which is working, I find that versions 6.0.0 and 6.0.1, for each attempted, yet malfunctioning invocation, do modify spyder's user preferences in spyder.ini without telling the user so. I.e. in my case they change editor/run selection = Shift+Return to editor/run selection = F9 although they do not start the GUI. In my case this produces a conflict with another preference once I'm back to the functioning older version 5.5.5. Are such hidden changes to spyder.ini really necessary?

Hey @xaverm, thanks for reporting. Please run spyder --reset and try again (another person reported that that fixed this problem).
If not, I'm afraid you're using a monospace font for which Spyder is unable to get it's height as expected, which is the reason why it gets stuck in an infinite loop.
In any case, we'll try to fix this bug in 6.0.3 or 6.0.4, both to be released before the end of the year.
You also said:

This issue is accompanied by weird additional side effects: After returning to version 5.5.5, which is working, I find that versions 6.0.0 and 6.0.1, for each attempted, yet malfunctioning invocation, do modify spyder's user preferences in spyder.ini without telling the user so.

That's a side effect of going back to a previous version. Since some options changed between Spyder 5 and 6, they are reset to their default values. I don't think we're going to address that because things have being working like that for close to 10 years.

Hi @ccordoba12: Yes, I was using a monospace font in 5.5.5 at Preferences->Appearance->Fonts->Plain text for what is called Preferences->Appearance->Fonts->Monospace in 6.0.1 today. For now, I've changed that font into something else from within a running 5.5.5 and that solved the issue for me in 6.0.1 (no spyder --reset needed.)
(B.t.w.: The width of the drop down list for fonts in the Preferences of 6.0.1 is rather narrow, i.e., some font names get truncated as compared to 5.x.y.)

You also said:

This issue is accompanied by weird additional side effects

things have being working like that for close to 10 years and no one has complained so far.

So I've been experiencing this also for close to 10 years - and never realized it/complained - I'd never complain about spyder anyway.
Keep it up and running!

For now, I've changed that font into something else from within a running 5.5.5 and that solved the issue for me in 6.0.1 (no spyder --reset needed.)

Great! Glad you were able to do that without resetting your current options.

(B.t.w.: The width of the drop down list for fonts in the Preferences of 6.0.1 is rather narrow, i.e., some font names get truncated as compared to 5.x.y.)

Please open a new issue about it, attaching a screenshot showing the problem to it, so we don't forget to take a look at it.

So I've been experiencing this also for close to 10 years - and never realized it/complained - I'd never complain about spyder anyway.

We reset default option values rarely, so that's probably why you didn't notice that behavior before.


Should implement Provenance, Century and Notation detail pages

Currently, on source-detail pages, there are hyperlinks following "Provenance:" and "Date:" in the right sidebar. These hyperlinks currently link to "#", as we don't have any provenance or century views. These views should list all sources connected with that particular provenance/century.
EDIT: we also have a similar dead link following "Notation:".
We should have Detail views for both Provenance and Century, at least. It would not be hard to set up list views for these models, though it would be worth discussing how users should be able to access these list views, if they're implemented (the page header is full, and no other logical place to add a link is coming immediately to mind).
This is mentioned in the "Wishlist" google doc (referring, it seems, to behavior currently exhibited on OldCantus):

hyperlinks to some controlled vocabularies

"these should all work
For instance, if I click ""14th century"" in a list of sources, it doesn't pull up everything from the 14th century like I think it should (it's blank).
Also, if I click on a provenance place name, I want to get some results of sources from there (and it's also blank)."

is this GoogleDoc wishlist viewable somewhere?
For this to work nicely, it seems like you'd want the centuries/provenances to be sort of nested, e.g  "14th century, 2nd half" should turn up along with "14th century"--as they already do in the search results for "14th century". (Which I guess raises the question of whether there is a point to a list view that basically replicates the search results.)
Geography would be trickier--I don't think a list view of the single source tagged "France" is useful to anybody, really, but unless somebody goes through all the sources and adds other data to them there's not much else to get. This needs some thought.

is this GoogleDoc wishlist viewable somewhere?
You should have access now!

Yeah, glancing at the Centuries currently in the database, some seem to represent full centuries, some half centuries, and some quarter centuries. There may be an easy way to set up a nesting structure (though someone would have to go through the data and set up the nesting relationship by hand, I think. There are only ~50 of them, though, so it might not be too onerous).
If I was in charge of the data in CantusDB, judging by what's already in there, I'd just break things down into quarter-centuries, and assign manuscripts to multiple "Centuries". But that's not my job, so I'll let the musicologists sort out how you all want things to be saved.

I added an edit to the initial post - there's a similar dead link for Notation objects.
@annamorphism , is there nesting within Notations as well?

One possibility is to set up simple detail views for the Centuries/Provenances/Notations we currently have, and eventually come back, adding sub_centuries and super_century (or child_centuries/parent_century) fields (and analogous ones for provenances/notations).
This definitely goes into "enhancement" territory, and would involve adding data to the database manually to make it work.

@jacobdgm yes, I think Notations should also be sort of nested. The current notations field (only applied to Sequences) has some strange options, but show this nested idea (Rheinmass:square vs Rheinmass: Lotharingian). Or maybe there should be several facets related at the sibling level (which, again, would mean coming back and adding/changing data.)


fix bug in batch SimpleFIN startDate logic

The comparison here wasn't comparing like for like and was always passing, resulting in the start date being ignored

@coderabbitai full review
It seems to be struggling to pass...


Add spice to tasks and achievements

Added icons, readable timestamps, and hover features to tasks and achievements

So spice!


[#1537] fix(UI): Fix Metalake list page table layout

What changes were proposed in this pull request?
Fix Metalake list page table layout.

Why are the changes needed?
Fix: #1537
Does this PR introduce any user-facing change?
N/A
How was this patch tested?
N/A

Do you have a similar issue in catalog/schema/table list?


Add existing representative diagrams of availability sets and managed…

… availability sets
Add existing representative diagrams of availability sets and managed availability sets, since diagrams help users understand the concepts easier.

Reused from here: https://docs.microsoft.com/en-us/azure/virtual-machines/windows/manage-availability

@laraaleite : Thanks for your contribution! The author, @iainfoulds, has been notified to review your proposed change.

Thanks for the contribution, @laraaleite. This looks good to me.
Adding @cynthn who should be the listed author for these docs to give final sign off.

@cynthn - Would you review the proposed changes? Thanks.

#sign-off

@cynthn: I'm sorry - only the author of this article, @iainfoulds, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.


New label: drawio

Added label for draw.io universal installer

Duplicate of #480

ah - didn't see the dupe. all good.


GWS.GMAIL.15, GWS.GMAIL.18, GWS.GMAIL.19; Contradictions and Duplications

GMAIL.15.1 contradicts 18.1 and 18.2.
GMAIL.15.2 overlaps and is redundant with 19.1 which is also redundant with 19.2.

Note that addressing these issues require large changes. So, pushing this issue to the backlog for now.
Policy 15.1 says to not use email allowlists, yet 18.1 and 18.2 says that we should? Also 18.2 duplicative of 18.1 except for the caveat.
#### GWS.GMAIL.15.1v0.1
An email allowlist SHOULD not be implemented.

#### GWS.GMAIL.18.1v0.1
An Approved Senders List SHOULD be configured to keep legitimate emails out of the spam folder.

#### GWS.GMAIL.18.2v0.1
An allowed senders list MAY be added but SHOULD NOT add allowed domains.

Policies 15.2, and 19.1, and 19.2 all are saying the same thing. We should choose one then delete the others.
#### GWS.GMAIL.15.2v0.1
A connection filter policy to create a Blocked Senders list MAY be implemented.

#### GWS.GMAIL.19.1v0.1
A blocked senders list SHOULD be configured to prevent emails from known malicious sources.

#### GWS.GMAIL.19.2v0.1
Blocked senders or domains MAY be added to the blocked senders list.

Duplicated by #137.


Add description on github

on https://github.com/gdg-x firefly should look better than this:

Desc

Would "Google Developer Groups event discovery webapp" be a good suggestion?

Much better than the existing description. Sounds good!
Am 04.03.2015 16:54 schrieb "Erick Mendonça"<EMAIL_ADDRESS>
Would "Google Developer Groups event discovery webapp" be a good
suggestion?
--
Reply to this email directly or view it on GitHub
https://github.com/gdg-x/firefly/issues/28#issuecomment-77183755.

I used "GDG Events Site built on GDG-X Hub data APIs. Angular front-end, Node back-end." for my fork.


[Nox.Types] Remove DatabaseGuid

Remove this NoxType completely
Replace existing yaml in tests and samples by the Guid type
If a Guid is part of/ or key, on the EntityFactory generate and set the field, this will be the default behavior => Update EntityFactory.template.cs, override the CreateEntity  method call it and set the field with the new Guid

https://regusit.atlassian.net/browse/MP-9144


blog: home page should only show previews instead of full posts

The read more on the homepage of the goLang website leads to a tunnel which has bad User Experience
What version of Go are you using (go version)?

$ go version

Does this issue reproduce with the latest release?
What operating system and processor architecture are you using (go env)?
go env Output
$ go env

What did you do?

What did you expect to see?
What did you see instead?

Can you be a bit more specific about exactly is the bad user experience you are having?

WaitingForInfo check out this url https://blog.golang.org/

Do you mean that the list page of each entry on Go Blog should omitted the content, and add a "read more" link to go to the permalink?

The fact that the https://blog.golang.org homepage is a huge page where the latest n blog entries are included in full without being clear where one ends and the following one begins is also something that has always bugged me. I'm guessing this is what the OP is reporting.

Two different suggestions for a possible solution:

List the first few paragraphs of the latest 5 entries, after each one a "read more" button with links to the full entry. Change the spacing/style of the page to clearly demarcate the starting of a new homepage item
List on the homepage the latest blog entry in full, leave the read-more link at the bottom for the index with all the entries

Another possible solution:
There should be pagination and sidebar with categories

Do you mean that the list page of each entry on Go Blog should omit the content, and add a "read more" link to go to the permalink?

The  https://blog.golang.org/ is unnecessarily long and can bore the users.
Pagination can be applied

@andybons

Let’s start with only showing previews (with a “read more”) instead of full posts.

help wanted  I am a UI/UX Developer i can help revamping the blog page #helpwanted  #NeedsFix #NeedsDecision @agnivade

Feel free to go ahead. And just a small note that mentioning hashtags does not have any effect here.

my preference is to leave it alone
but can't certain gophers use a feed reader
e.g., Atom | Copyright | Terms of Service | Privacy Policy | Report issue
appearing in the blog footer
categories complicate feeds

it only shows a title and subtitle now.


Reading New Card Formats

Card.io currently does not seem to work with the new credit card formats where they put the all the info (numbers, name, exp date) on the back of the card.
I've come across 2 different layouts

Numbers are on single line (ex: new Citi cards)

Numbers are broken into 4 sets of 4 and vertically stacked. (ex: CapitalOne Venture cards)

Would be great if Card.io could recognize these.

I agree with ryedog,...see new CapitalOne format.

Adding non-embossed, non-traditional format credit cards is indeed something that we would like to do.
However, this is a very large task, which will involve collecting appropriate videos of many such sample cards, considerable experimentation with the algorithms for detecting the card numbers from these samples, and, finally, working on the machine-learning aspect of identifying the digits. We do not expect to accomplish this in the foreseeable future.


Question about Physics

Hey, it's me with the questions again.

The Physics Debug renderer is a great help to visualize what I'm doing with the configs, otherwise I would have to waste a lot of time.
I'm using the included preset and it's pretty good, but I want to add some more jiggle or remove from some weapons. Do you mind telling what values does this? I guess it's something in the rotation scaling? I tried messing around but the weapons started behaving weirdly.
Speaking of the renderer, is it possible to implement something similar to the transform configs? Sometimes when creating a display for an item, changing the rotations axes don't go as I expect them to. Nothing wrong with IED in this regard, but I think it's how the mesh is made, it feels like it rotates the same way when changing two different axes. Maybe with a visual representation would help.

Hey,
you'll mainly want to play around with spring stiffness and constraints (make sure the node has plenty of room to move around, green ball in the dr), rotation scale is the magnitude of rotational movement. It's a very basic implementation (based on cbp), i'm not really happy with some aspects, for example linear motion directly translating to angular motion. On the upside, it's very cheap to run and heavily optimized (uses multiple cpus, simd instructions and shuts down simulation on nodes w/o 3D) so it barely makes a dent in frametimes (you can measure the avg delta time per frame in stats, actor processor, toggle physics in settings).
Re second question, lookup gimbal lock
On June 15, 2023 4:43:53 PM GMT+02:00, GiraPomba @.***> wrote:

Hey, it's me with the questions again.

The Physics Debug renderer is a great help to visualize what I'm doing with the configs, otherwise I would have to waste a lot of time.
I'm using the included preset and it's pretty good, but I want to add some more jiggle or remove from some weapons. Do you mind telling what values does this? I guess it's something in the rotation scaling? I tried messing around but the weapons started behaving weirdly.
Speaking of the renderer, is it possible to implement something similar to the transform configs? Sometimes when creating a display for an item, changing the rotations axes don't go as I expect them to. Nothing wrong with IED in this regard, but I think it's how the mesh is made, it feels like it rotates the same way when changing two different axes. Maybe with a visual representation would help.
--
Reply to this email directly or view it on GitHub:
https://github.com/SlavicPotato/ied-dev/issues/48
You are receiving this because you are subscribed to this thread.
Message ID: @.***>

I think it's great, well I wouldn't know how to compare anyway haha. But the freedom to create configs with the UI, for different actors(I'm applying to horses) and for different conditions, it's already better than CBP imo, regarding equipment/displays anyway.
About the gimbal lock. Yeah, that makes sense, I didn't know about that.
I guess I'll need to change the other axis to "unlock" then.
Thanks..

You get everything that cbp has + additional stuff like constraints with none of the weird framerate issues that cbp had (and i think cbpc has to this day), so a fairly stable simulation at variable framerates with substepping, delta-t averaging...  I might add a more accurate implementation down the line when I get some free time
On June 15, 2023 6:00:10 PM GMT+02:00, GiraPomba @.***> wrote:

I think it's great, well I wouldn't know how to compare anyway haha. But the freedom to create configs with the UI, for different actors(I'm applying to horses) and for different conditions, it's already better than CBP imo, regarding equipment/displays anyway.
About the gimbal lock. Yeah, that makes sense, I didn't know about that.
I guess I'll need to change the other axis to "unlock" then.
Thanks..
--
Reply to this email directly or view it on GitHub:
https://github.com/SlavicPotato/ied-dev/issues/48#issuecomment-1593340825
You are receiving this because you commented.
Message ID: @.***>

That's awesome, looking forward to it.


Small speedup improvement on the inspection logic in Python

In addition to https://github.com/jupyterlab-contrib/jupyterlab-variableInspector/pull/309 to get through improving the extension performance #307

This PR adds more checks for simple primitive types before doing the "heavy load" for more complex types.
In this situation:

It goes from:
803 ms ± 19.1 ms per loop (mean ± std. dev. of 7 runs, 1 loop each) for _jupyterlab_variableinspector_dict_list
to
265 ms ± 14 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
Note that this means without #309 and this PR we were adding almost 1 second delay for each cell execution when the variable inspector UI was not open. Even though I'm not testing with so many variables and my arrays aren't too big.
This is a first PR of hopefully more performance improvements

cc. @trungleduc

Thanks for your suggestion, I will have a try


City is not being returned in lookup result

Hi
I have downloaded the mmdb database from here
https://dev.maxmind.com/geoip/geoip2/geolite2/
And I use Geolix.set_database(:city, "city.mmdb.gz") \\ :ok to set the path.
However, I get the following results (note how the name field for both country and city is missing)
Geolix.lookup "some ip address"

%{city: %Geolix.Result.City{city: nil,
   continent: %Geolix.Record.Continent{code: "EU", geoname_id: 6324238,
    name: nil,
    names: %{de: "Europa", en: "Europe", es: "Europa", fr: "Europe",
      ja: "ヨーロッパ", "pt-BR": "Europa", ru: "Европа",
      "zh-CN": "欧洲"}},
   country: %Geolix.Record.Country{geoname_id: 26221321, iso_code: "DK",
    name: nil,
    names: %{de: "Dänemark", en: "Denmark", es: "Dinamarca", fr: "Danemark",
      ja: "デンマーク王国", "pt-BR": "Dinamarca", ru: "Дания",
      "zh-CN": "丹麦"}},
   location: %Geolix.Record.Location{latitude: 55.6761, longitude: 12.5683,
    metro_code: nil, time_zone: "Europe/Copenhagen"}, postal: nil,
   registered_country: %Geolix.Record.Country{geoname_id: 2623242,
    iso_code: "DK", name: nil,
    names: %{de: "Dänemark", en: "Denmark", es: "Dinamarca", fr: "Danemark",
      ja: "デンマーク王国", "pt-BR": "Dinamarca", ru: "Дания",
      "zh-CN": "丹麦"}}, represented_country: nil, subdivisions: nil,
   traits: %{ip_address: {some ip...}}}

Sorry for the confusion regarding the name fields of the results.
Up until now there was no default locale in place if you did not pass one explicitly to Geolix.lookup/2.
If have released version v0.10.1 to hex with a changed and hopefully more intuitive behaviour (should also be more in line with other mmdb2 libraries). With that update you should always get the english result names by default when not passing a locale.
Thank you for bringing this up :+1:

Cool, thanks for the quick response
However, the city is still nil
Any ideas?

Can you share the IP you are looking up?
Just testing various random IPs always gives me a proper result for the city. You might have found an entry that does not have any city data while being in the city database...

I am trying with
Geolix.lookup "<IP_ADDRESS>"
You're right, I tried with some other ones and I did find a city, but inspecting the CSV database, I do find entries for the city I am in and also nearby cities

I just did a check with the most current free database and the official python library:
>>> import geoip2.database
>>> city = geoip2.database.Reader('./GeoLite2-City.mmdb')
>>> city.city("<IP_ADDRESS>").city
geoip2.records.City(geoname_id=None, confidence=None, _locales=['en'], names={})

RIPE says it is registered to a university. Those IP ranges are sometimes just like company associated ranges just not mapped to any particular city. Paid databases and the official webservice API (check the input on the MaxMind website) may always give better results.

Ah I see
I was just looking at http://dev.maxmind.com/geoip/geoip2/javascript/
There's a response with the exact same IP, and it also returns the city and subdivisions. I wasn't aware that data was more limited on the downloaded database, compared to the online webservice
Anyway, thanks for the heads up


Log and antilog calculator

Is your feature request related to a problem? Please describe.
So many times it is difficult to calculate log and antilog to some base
.
Describe the solution you'd like
I would like to make a logarithmic and anti logarithmic calculator.
Additional context
I am contributor at gssoc'22.
Please assign this task to me.
Steps Followed✅
Check the box with [x] If you followed all the steps.

[x] Is your feature request related to a problem? Please describe.
[x] Describe the solution you'd like
[ ] Describe alternatives you've considered
[x] Additional context

Code of Conduct✅

[x] I agree to follow this project's Code of Conduct.
[x] I checked the current issues for duplicate problems.
[x] I have gone through project README.

already many calculators exists in project


dvcyaml: Prevent duplications

In order to prevent duplication (mainly plots), we could try to check if there is an existing dvc.yaml with overlapping information.

@dberenbaum I don't recall if we discussed this already but makes sense to me to add a simple parsing check looking for overlaps with the root dvc.yaml.

What would you consider a duplicate?

Literal duplicate. Path and props matching.

It will be harder to explain and understand than the current behavior,

I feel like it is already hard today, not sure if the change would make it harder.
At least it would prevent pitfalls, I doubt someone intentionally wants the duplication

Okay, I'm also not sure whether it would be better or not, but no strong opinion from me if you want to try it.

Closing in favor of #687


Cli Bulk command Guide - draft

coverage: 94.376%. remained the same when pulling 057e22b7105c8595d805be3af2ecb11f417ddaa9 on tony-create-bulk-faq into 192e7a64ccf39801b5668026cb315eebd7285259 on main.


'placeholder' feature request

Can I ask you to look at this PR. I want to plug this library into gitui, but I am blocked waiting for this
It adds support for hint text when the text box is empty - like placeholder in the html textbox widget

Closed as #16 was merged.


pins at arduino

hey there, great projekt.
can you please tell me which group is connected to which pin at the arduino?
my hardwarepart is ready but it's hard to find the right pins...
regards
jonny

could you please tell us which pin is connected to which group?
i'm not the only one with this problem:
http://hackaday.com/2012/01/07/minimalist-rgb-led-cube-has-a-very-short-bom/#comments
(comments)
thanks

I apologise for not getting to this sooner. It has now been fixed and can be viewed on the website aglick.com/charliecube
the wires are colour coded and there is a chart matching the colours to the Arduino pins and the AVR pins

thanks a lot :)

you've changed the entire wiring layout, don't you?

I have not changed the entire layout, I have changed the colours of the wire and the fourth section is rotated 90 degrees however the old wiring scheme will work as well. I changed the colours so that they would better match up with the ID colours in the table. If you would like to see the old diagrams you can go to aglick.com/charliecubeold.html. If the documentation is still too confusing I will continue to work on it until it makes sense.

works like a charme with the new wiring, thanks a lot :)
http://www.youtube.com/watch?v=eaxJQpWh0MY


GraphQL calls such as the countries and states lists should be cached

In my opinion much data fetching such as the lists of countries and state/region data could be cached locally. This could also help in preventing multiple calls going out for the full list of countries/regions data.
I understand we always want to fetch a fresh Quote/Cart object, however this does not count the same for data like countries / regions. Rarely if ever does this data change during the checkout process. Why dont we add some form of caching for these?

@peterschriever we do cache country/states requests. So the country list fetches request will happen only once and state fetch request will happen per-country basis.
An example, we are fetching states of the country initially provided that the default country is Germany. We are now switching the country from Germany -> France and now states of France will be collected. Now, if you again switch to Germany, the states won't be fetched since we already fetched German states previously.
However, if the checkout page is reloaded, these processes will happen again. we are not keeping those states/countries in the local storage. Are you saying we need to keep this in local storage?
There will be a plan to merge multiple requests sending initially to a single request too.

@peterschriever No inputs on this and hence, closing this issue


[kube-prometheus] How to install Grafana plugins with monitoring-grafana image?

The kube-prometheus manifest for Grafana deployment currently uses the image quay.io/coreos/monitoring-grafana:5.0.0. This image does not use the run.sh entrypoint like the official Grafana docker image does, and it appears to have no obvious way of installing plugins dynamically when creating a container. With the official image, it can be done via the environment variable GF_INSTALL_PLUGINS.
How can I add a plugin when using the quay.io image?

This is probably because we're explicitly setting the path in the config.ini. I think Grafana takes precedence in the config over env variables. We should remove that line, or at least modify the path to something people can actually mount something into.
Would you like to shoot us a PR for this? :slightly_smiling_face:

Hi @brancz,
I've been looking into the differences between the two images, and I am not sure that the path setting is the culprit.
The official image uses the run.sh script as an entrypoint. That script handles certain environment variables, among them GF_INSTALL_PLUGINS.
The quay.io image currently used by kube-prometheus does not use that script (presumably due to the issues it's causing on K8s). Instead, it starts grafana-server directly, and has no apparent way of handling plugin installs.
Are you suggesting to look into the path mapping so that users can drop required plugins into a host path and then map that as a container volume?

Yes you're right. The official Grafana image is actually currently being re-worked, and it seems that all the issues we had with the original image will be gone, so I'd prefer to put our energy into the proposed changes to the upstream image than improve ours.

Any info on this? Is there a way to install plugins at run time?

@ArjonBu if you are using the jsonnet based stack, you can do this as described here: https://github.com/brancz/kubernetes-grafana#plugins

Closing due to inactivity.


Fix a bug around internal node search

When searching internal ip, KubernetesContainerManager does not properly search nodes. It should iterate all the nodes options like external IP search. Otherwise, it will always use the last node of previous node.items iteration.

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

Jenkins test this please


Add a missing #include

This change fixes the "implicit declaration of function 'getenv'" warning. Since stdlib.h is completely portable, as it is defined by the C standard, we can safely include it unconditionally.

Thanks so much!


Basic Auth not working with Rest API

Hi,
I have opened the BMP proxy server using
sh browsermob-proxy -port 9090
and then started a proxy on the port 9091:
curl -X POST http://localhost:9090/proxy
Then I used the REST api to enable the basic authentication. I have user Chrome's Postman client to hit this post request.
http://localhost:9090/proxy/9091/auth/basic/the-internet.herokuapp.com/
and the request body looks like:
{"username":"admin","password":"admin"}
It return me 200 response code.
But now when I am trying to open this website "http://the-internet.herokuapp.com/basic_auth". It still shows me authentication pop-up.
When I tried the same thing with java, it worked.
Thanks,
Amit.

Auto auth isn't currently supported by the LittleProxy implementation (issue #271).  You can use the legacy implementation by specifying --use-littleproxy false on the command line, or you can use beta-2 (there was only 1 minor change to legacy in beta-3).
I'll close this since it's a duplicate.

Thanks with this flag "--use-littleproxy false" it is working fine.


Add method to request signatures via deeplink

So not just a payment, but ideally any of our sign methods could be called via deep link.

Hey, I'm trying to assets the same thing, request signatures via deeplinks but I cound find anything related. So, I'm wondering why this issue was closed? @Cal-L, Is there a way to address it? Or there is some work around for it?


ngrx4 compatibility?

hi,
It doesn't seems to work with latest ngrx 4, am I adding it wrongly or any plan to upgrade it?
I find this logger really useful!

https://github.com/ngrx/platform/issues/170#issuecomment-318031101

@btroncone can you please align the package.json peer dependecy in order to avoid problem when working with the last version of ngrx?
╭─phra at kali in /home/phra/git/bloqwallet (refactor/redux ●9✚2)
╰─λ yarn run commit;                                                                                0 < 18:01:24
yarn run v0.27.5
$ yarn; yarn run validate; yarn run lint
warning<EMAIL_ADDRESS>The platform "linux" is incompatible with this module.
error "ngrx-store-logger#<EMAIL_ADDRESS>doesn't satisfy found match of "<EMAIL_ADDRESS>warning "<EMAIL_ADDRESS>could be deduped from "5.4.3" to<EMAIL_ADDRESS>error Found 1 errors.
error Command failed with exit code 1.

@btroncone i suggest to update the README with the comment cited before and close this issue! :rocket:

README has been updated and next version has been published. Sorry for delay, I thought I had closed this earlier.

:rocket:


Rebuild the structure of openapi

重新调整 openapi 相关接口的代码结构，接口现迁移至 openapi 目录下
PR 对应问题单nacos-group/r-nacos#62

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Cheng Weiss seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

需要处理cargo clippy的报警后再合并到master

已处理 cargo clippy 的 warning 并 执行了 cargo fmt

用项目自带的测试脚本./test_cluster.sh start_debug运行结果还有问题，需要处理下。

已调调整代码问题，测试脚本执行通过

上面有个nacos社区统一加的license/cla协议，需要签署下才能合并。


Suggestion: a more general shabang?

Hey, thanks for developing this package. It just proved really useful for me :-)
BTW, may I suggest you use "#!/usr/bin/env python" in the shebang? I believe it is more portable.
See: https://stackoverflow.com/questions/6908143/should-i-put-shebang-in-python-scripts-and-what-form-should-it-take
All the best,
G.

Well, ideally you'd use pipx run findimports or pipx install findimports or pip install --user findimports or some other variation where pip takes care of generating the right shebang.
But sure, #!/usr/bin/env python is fine.  Or, maybe better, #!/usr/bin/env python3?


Added .cache to ignore_paths

When using testinfra this directory is created, and will fail
validators.

:+1:


Expand all kubectl calls to fully qualified names

Description of changes:
Expanding all kubectl calls to have their full qualified API names to avoid conflicts.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve

/cherry-pick release-0.14


Rename Pep8 and Pep257 Hooks

The pep8 and pep257 projects have been renamed to pycodestyle
and pydocstyle, respectively.
To reflect these changes:

The references to the former projects in README.md and default.yml
have been updated.

The ruby files under pre_commit for the former projects have been
kept for backwards compatibility with existing .overcommit.yml
files.

New ruby files have been created under pre-commit.

@trotzig – so that an existing .overcommit.yml with a Pep8 section would result in overcommit calling pycodestyle? I was assuming that the user might not have pycodestyle installed yet, but would likely still have pep8 installed.

I was thinking we could just inject the name of the binary to some shared code. But yeah, probably not worth the effort.
One thing we could do is to add a comment in the default config at the place for the old hooks to mention that they are deprecated.

The appveyor failure looks unrelated to your change. @sds, looks like it could be failing because of changes you made to LineEndings in afdebb. Do you have any ideas?

@trotzig – I've added comments to the default config as requested.

Thanks!

@trotzig I don't have access to a Windows machine to look into that failure, but given the test that's failing is for a pretty minor feature, I've changed it to not run on Windows environments for now (see  d44631403a3c06b08ffbe818eef58cb4cf7e91e6).


boulet_alexis_lesson1

Please give me a good grade, I accomplished all questions well

Coverage decreased (-37.5%) to 12.5% when pulling 665a92e87cb68ef680b9fb19ced2092563e7a04d on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

add testing files

Coverage increased (+34.08%) to 84.08% when pulling 2d619252bf84f0f66444f37314d93e34a920a4b8 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+34.4%) to 84.39% when pulling 1dde52ac04398eac6af808406345a4f534409f99 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+34.9%) to 84.906% when pulling c1fd52b56ef68244315c8b94d3080be68fdebeb3 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+34.9%) to 84.906% when pulling eedd4f44f06ea707e1abb9941c699537a0d84750 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+38.3%) to 88.258% when pulling a049307921237c7952c8e2de4e23f4fee403f8b3 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+38.8%) to 88.768% when pulling c75d0168917f0fb03f4991421e412ffee228e78d on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+38.8%) to 88.768% when pulling f622fdf3ec10bea66fc21812bdd3b0a425e04ab6 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+38.04%) to 88.043% when pulling 24d250f9ee1cf1d93f9fe99344cd83ab46e1be9d on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+38.8%) to 88.768% when pulling 8d05d595d40200133e682eb6d284962c14486896 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.

Coverage increased (+38.04%) to 88.043% when pulling ec657212afd4af3b5d429b2f66d061127479d1c2 on kingofzeloose:master into 807b3f29991103355530d3f43d5f6eed88f1893e on albenoit:master.


Significant error codes

I just started working on this https://github.com/fishtown-analytics/dbt/compare/development...nave91:development?expand=1, glad to see you guys taking care of it.

@nave91 cool! I like your approach, but I want to make sure our implementation works with other commands (like test, archive, and seed). I have to make a couple tiny changes here (typo, it looks like), but we should be able to merge this relatively soon


Fixed few stuff about animation curve example

In C, the struct is not allowed to have default values, as used in examples/animation_curve/gui_curve_edit.h . This PR fixes that and one minor line of code.

@AnstroPleuton Good catch! Thanks for the review! 👍🙂


void Motor::SetSetpointWithTime(float newTargetInDegrees, float speedDegPerSec) missing in header

@gcl8a you forgot to put the prototype in the header, this code didnt compile.
Can we have a convention that we compile the code before pusing changes?

Ha! Yes. It’s totally untested. Rookie mistake. Looks like a zero for this assignment...
My mac doesn’t have all the ESP32 stuff on it…but I didn’t think of that when I started doing dev work. I’ll make sure it’s checked in the future.

On Jul 11, 2020, at 1:16 PM, Kevin Harrington<EMAIL_ADDRESS>wrote:
@gcl8a https://github.com/gcl8a you forgot to put the prototype in the header, this code didnt compile.
Can we have a convention that we compile the code before pusing changes?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/WPIRoboticsEngineering/RBE1001Lib/issues/11, or unsubscribe https://github.com/notifications/unsubscribe-auth/AF5JK5AJXQY7GXWIJCUDDWLR3CM6LANCNFSM4OXMQ7NQ.

there is a bundled Sloeber for mac withthe compilers. Brad has the issue with the driver figured out, so you should be able to work on you mac if you prefer.


Only query authority quality issues for authorities of the BELTRANS corpus

The general SPARQL queries to identify authorities with duplicate identifiers (https://github.com/kbrbe/beltrans-data-integration/commit/27f0d058af040042b71f03f877dc3fff363dcb07 from https://github.com/kbrbe/beltrans-data-integration/issues/155) query all data of the integrated data named graph.
For example:

869 authorities with duplicate ISNI identifiers (quality issue int4)
793 authorities with duplicate VIAF identifiers (quality issue int5)
192 authorities with duplicate Wikidata identifiers (quality issue int6)
935 authorities with duplicate KBR identifiers (quality issue int7)
429 authorities with duplicate BnF identifiers (quality issue int8)
131 authorities with duplicate NTA identifiers (issue int9)

However, likely only a subset of this data is actually part of the BELTRANS corpus.
If we additionally filter on Belgian nationality, we miss out for examples non-Belgian authors of a translation from which the illustrator is Belgian.
Instead of querying all contributors, the query should query only BELTRANS-relevant contributors.
This could be achieved, by explicitly annotate manifestations with information that they are part of the BELTRANS corpus. Because then we can adapt the SPARQL queries to detect the quality issues by filtering on that annotation.
Currently the nationality filter is applied in the dataprofile-aggregated.sparql query, a shorter variant of this query can be used to INSERT for example a schema:isPartOf triple to indicate that a manifestation is part of the BELTRANS corpus. Alternatively, a dedicated class BELTRANSTranslation could be created such that a manifestation is a schema:CreativeWork and a BELTRANSTranslation.

The commit above added necessary SPARQL filters which affected the quality measures as follows (only counting contributors linked to at least one BELTRANS translation):

154 instead of 869 authorities with duplicate ISNI identifiers (quality issue int4)
219 instead of 793 authorities with duplicate VIAF identifiers (quality issue int5)
33 instead of 192 authorities with duplicate Wikidata identifiers (quality issue int6)
216 instead of 935 authorities with duplicate KBR identifiers (quality issue int7)
361 instead of 429 authorities with duplicate BnF identifiers (quality issue int8)
36 instead of 131 authorities with duplicate NTA identifiers (issue int9)

An example of an adapted SPARQL query is https://github.com/kbrbe/beltrans-data-integration/blob/feature/149-documentation-litl/data-quality/detectors/int4-duplicate-isni.sparql


graphql js stuff in final bundle

Steps to reproduce
I'm trying "@urql/svelte": "0.1.3" and it works great!
Expected behavior
I'm also using babel-plugin-graphql-tag and it work if I remove urql (using let's say Apollo with the same queries).
Actual behavior
If I just add initClient() in my App.svelte the final bundle contains graphql js too in it (42 KB!).

How to fix it?

I’ve created an experiment branch that attempts to crunch down the size of what we’re importing: https://github.com/FormidableLabs/urql/pull/700
This will only have an effect if tree-shaking isn’t fully removing some parts of the GraphQL package.
Overall we may see a slight decrease in the minzipped size. You can test the above change by installing the test packages that CodeSandbox CI has created for the PR 📬

Closing this for now since #700 does as much as we currently can :heart:
If you have any more questions regarding this though feel free to leave some questions in more comments 🙌

I created two identical projects:

one with @urql/svelte: https://github.com/frederikhors/svelte-urql-app

one with svelte-apollo: https://github.com/frederikhors/svelte-apollo-app

URQL size is amazing!
Final bundle sizes:

@urql/svelte: 66 KB!

apollo: 147 KB!!! (116 with a "trick" I'm going to tell you...)

urql can still be better than 66 KB!
HOW:
In this commit: https://github.com/frederikhors/svelte-apollo-app/commit/a0924f14bd7619964e5a508a6f53012bf6818a15 I added the magic: https://github.com/gajus/babel-plugin-graphql-tag.
With it (and Babel, of course) apollo drops from 147 KB to 116 KB!
Unfortunately @urql/svelte doesn't seem to care!
So my question: WHY?
Additional context
I also published the two source-map-explorer reports:

@urql/svelte: https://github.com/frederikhors/svelte-urql-app/blob/master/README.md

svelte-apollo: https://github.com/frederikhors/svelte-apollo-app/blob/master/README.md

As you can see the difference is graphql package:

@urql/svelte: 41.2 KB (with parser.mjs, lexer.mjs, printer.mjs, visitor.mjs, kinds.mjs, printLocation.mjs, etc.)

svelte-apollo: 10.5 KB (only with printer.mjs, visitor.mjs)

Is this how it should be?
Can we remove from @urql/svelte all that 30,7 KB ?!
I hope you will appreciate the love I have for Urql and Svelte.

The main part why these are still included is because we don't enforce the usage of graphql-tag as you can see here https://github.com/FormidableLabs/urql/blob/master/packages/core/src/utils/request.ts#L21
This won't bee tree-shaken out since it's a runtime process

Yes, the difference is mostly that Apollo now enforced the usage of graphql-tag. They even export the gql tag themselves.
But urql also supports just passing in the query trying directly (which is actually used really frequently) without graphql-tag
So that means we always include parse from graphql


Web module fails to run

Hi,
We were able to run all the modules (except Web module), in the order mentioned in the readme documentation.

When trying to run the Web module it fails with below error.
Failed to resolve reference for provided property: ..........................................-hana-shine-xsa#core_xsjs_api#url

Also when trying to access the URLs generated for Indvidual module, it gives "Unauthorized" message.

Any hints on where we would have gone wrong?

Hi @LalithManokar , would it be possible for you or any of your colleagues to provide some hints on this issue we are facing at the moment. Thank you.


Bump generator-jhipster to v7.7.0

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'postRepositoryWithBagRelationshipsImpl': Unsatisfied dependency expressed through field 'entityManager'; nested exception is org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'javax.persistence.EntityManager' available: more than one 'primary' bean found among candidates: [org.springframework.orm.jpa.SharedEntityManagerCreator#0, org.springframework.orm.jpa.SharedEntityManagerCreator#1]

We are relying on spring-boot to create EntityManagers.
Looks spring-native specific.
I will drop the many-to-many relation to get this merged.

@mshima I re-created my postgres-mvc example and it still works. It has a many-to-many relationship in it and it still seems to work. I installed your v7.7.0 branch before I re-created it. All e2e tests pass too.


Feat/githubfirststeps

Added the github firststeps tutorial without the disputed squash tutorial

Please add the tutorial to the guide.json

Problem unknown, any ideas how to solve it? (It seems ok when I want to change it and also in my files)

@gilgda Tried saving the file in UTF-8? Maybe my ISO2UTF bash script can solve the problem (here). Please check the encoding of the file and write it here.

@gilgda Nice :+1: You fixed the encoding. Now one thing, can you please rename the .txt files to end with .MD


Remove lbrynet daemon dependency, add sd blob reflector (WIP)

-remove use of lbrynet-daemon, instead use just a lbrynet dht node and blob manager to provide the minimal functionality required
-break out use of lbrycrd from lbrynet LBRYcrdWallet, avoiding a headache when it is removed from lbrynet
-refactor returned availability and costs fields
-add reflector server that will only accept sd blobs from winning claims
-don’t take three days to start up from scratch (now ~10 seconds), and don’t make my laptop cpu break a sweat

can you explain why lighthouse is running a reflector server now? what data is going to be sent to it and how? what happens if it misses some data (its down, it doesnt get sent anything, etc)?

Jack - I ran into a few bugs while trying to get lighthouse to run under lbry-in-a-box, which is what the commits in here are from.

@jackrobison still curious about my previous question:

can you explain why lighthouse is running a reflector server now? what data is going to be sent to it and how? what happens if it misses some data (its down, it doesnt get sent anything, etc)?

@lyoshenka It's running a reflector server so that it doesn't need to download anything to update - updates are pushed to lighthouse rather than pulled by it.
In addition, lighthouse used to return an estimated cost field - which was a source of woe. That depended on lighthouse having the sd blob and having an up to date exchange rate, and was subject to inaccuracy. In addition to the old cost field, there was an boolean availability field, which just meant if lighthouse did or didn't have the sd blob - which is not necessarily a good indicator of availability. This pull request replaces the estimated cost field with a stream_size field, which has an int value in bytes if lighthouse has the sd blob and None if the sd is unknown. Then, separately, availability returns a peer count from the lbrynet dht. This allows the UI to more accurately know what is and isn't available, and how much a thing will cost to download.
In the event lighthouse doesn't get an sd blob, it won't have the stream size but it'll still know it's available. Whereas before it would continue to be 'unavailable' until lighthouse got the blob.

copied from slack:
so just to confirm, if lighthouse doesnt receive any blobs via its reflector server, it still works fine?
it won't have the right cost estimate
but it will at least have an estimate, and everything else will work?
will lighthouse attempt to download the blobs the old way if it didnt get them via reflector?

so just to confirm, if lighthouse doesnt receive any blobs via its reflector server, it still works fine?

It just won't have a stream size to report for that name. This won't alter the peer_count.

it won't have the right cost estimate but it will at least have an estimate, and everything else will work?

In the case of a blank stream_size, when the client calls get_est_cost in the lbrynet api they'll be passing only a name parameter - which means lbrynet daemon will try to download the sd blob on its own. When given a size parameter it won't need to download anything. In the event that lighthouse doesn't have the size and it locally cannot be determined, then the cost is an estimate based just on a key fee (if there is one).

will lighthouse attempt to download the blobs the old way if it didnt get them via reflector?

No, it doesn't run a full lbrynet session, only a dht node.


3.5.1: Dictionaries no longer loading

Upgraded to 3.5.1, dictionaries typically don't load. Perhaps 1 time in 10 they load.
Downgraded to 3.5.0, they load again every time.
Specifically, https://korean.dict.naver.com/koendict/#/search?query=### and https://en.dict.naver.com/#/search?query=###
Possibly related to https://github.com/LuteOrg/lute-v3/issues/464 and https://github.com/LuteOrg/lute-v3/pull/459?

Well that's a drag, sorry about that!  I tested with some other dicts and it was fine, but obv. it's no good.  So I'll revert that change and maybe we can work something else out.  Should be out soon, thanks.

It happens 😄 Maybe someone else can double-check to ensure it's not just an issue I'm having.

It happens 😄 Maybe someone else can double-check to ensure it's not just an issue I'm having.

@jamesdeluk I'm having trouble replicating this. Could you post what browser you're using and the version?
 Do they show up if you wait a while (10-15 seconds) after selecting a term or does the dictionary pane just keep the background color without any indication of loading?
Also if you have any other dictionaries failing to load please post them as well so I can check them. Thanks.

Firefox 129.0.2 (64-bit) on Windows 11.
I've just re-upgraded to 3.5.1 and the issue persists.
Waiting for extended periods doesn't work.
Other dictionaries (e.g. https://en.wiktionary.org/wiki/###) load fine.
The network does do a GET request for the URL, but nothing loads.
When I click off and on again, I get en.dict.naver.com content already loaded. (or korean.dict.naver.com content already loaded.) in the console, so it thinks it's loaded.
Downgrading to 3.5.0, everything loads again instantly.

Hey @jamesdeluk , I'm going to back out the change in 3.5.1.  Too bad :-/  but it's causing other issues too.  @cblanken spent a whack of time trying to come up with workarounds, but no dice.  Thanks for the detail!

Change reverted, this should be fixed when 3.5.2 is launched.  Thanks @jamesdeluk and @cblanken , cheers!

Launched in 3.5.2


 Supported versions are: 1.15, 1.16, 1.17, 1.18") (no value) used as value
../../../../pkg/mod/github.com/bytedance/sonic@v1.3.0/internal/loader/loader.go:47:50: too many arguments in call to registerFunction
	have (string, uintptr, uintptr, int, int, uintptr, uintptr, uintptr)
	want (string, uintptr, int, int, uintptr)

将sonic的版本改为1.4.0之后，就能成功编译了
What type of PR is this?

What this PR does / why we need it (en: English/zh: Chinese):

en:
zh:
Which issue(s) this PR fixes:

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Which version of golang and hz are you using? Work fine with me on go1.18.5 and hz version v0.2.0.
go version
hz --version

go version : go version go1.19 darwin/amd64
hz version v0.2.0.

https://github.com/cloudwego/hertz/issues/212
We may need make a full test, then upgrade the Hertz dependencies

@hygkui  refer to https://github.com/cloudwego/hertz/pull/191 and you can use go get github.com/bytedance/sonic  upgrade sonic's version


Implement the exact point mass cloud

This is problematic for large point clouds where there is a point mass in $\xi$ and we get division by zero.  It should be straight forward for smaller point clouds.

We need a solution for singular points before we can use this for a full pixmap, but for a small cloud we could possibly do it as is.  OTOH, maybe we then want to work arbitrary clouds instead?


Bump @actions/core to latest

I get the following warning when I use this action.
Warning: The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

I think upgrading to the latest version of @actions/core (1.10.0) will fix this warning.
https://github.com/totallymoney/assign-reviewers-by-labels-action/pull/104
Could this pull request be merged?

Thanks @ashwin153 for reporting -- should be resolved in latest version


CNF-14215: Remove ClusterLabels from ClusterInstance API

This PR removes the ClusterLabels field from the ClusterInstance API. This field is no longer required since cluster labels should be specified through the recently introduced ExtraLabels field (https://github.com/stolostron/siteconfig/pull/75) with the key ManagedCluster as shown in the example below.
apiVersion: siteconfig.open-cluster-management.io/v1alpha1
kind: ClusterInstance
metadata:
  name: "cnfdg6"
  namespace: "cnfdg6"
spec:
  ...
  clusterName: "cnfdg6"
  extraLabels:
    ManagedCluster:
      common: "true"
      group-du-48core: ""
      sites : "cnfdg6"
      vendor: "auto-detect"

/cherry-pick release-2.12


Need a way to access a layout from a page

Currently, if a page has a layout, there doesn't appear to be any way for the page to get a reference to it.  This can be very frustrating if you want to pass parameters from the route data to the layout, for example.
Is there a way to do this that isn't obvious?  If not, can it get added to the next release?

Ideally the page could pass parameters to the layout.  Or vice-versa, but then the layout would need to be able to get [Parameter] injection and then pass parameters to the rendering of the body.

In general the parameter flow goes downwards, i.e., from parent to child, not in the other direction, because the rendering flow goes in that direction. That's why there isn't a way to pass parameters upstream (e.g., to a layout), because then there's be no single defined render order.
So for what you're trying to do I'd recommend using a regular component with ChildContent instead of a layout. For example, in the default template, change MainLayout.cshtml by removing @inherits BlazorLayoutComponent and adding a ChildContent parameter, e.g.:

    <NavMenu />

        About

        @ChildContent

@functions {
    [Parameter] private RenderFragment ChildContent { get; set; }
    [Parameter] private string SomeOtherParameter { get; set; }
}

Since this is no longer a native layout, also go to your Pages\ViewImports.cshtml and remove the @layout MainLayout directive.
Then for each page that wants to use the layout, you can wrap its output in <MainLayout>, e.g.:
@page "/"

<MainLayout SomeOtherParameter="HOME">

Hello, world!

    Welcome to your new app.
</MainLayout>

I'd be interested to know how you get on with this approach since it is quite unusual.

Before I get in to a more thorough response: Thank you for taking the time to look at this issue and to comment so extensively on it.  I know your time is precious and I wanted you to know it's appreciated.  You did even answer my own internal question of "does the page own the layout, or does the layout own the page", so much appreciated there too!
Anyway....
I found the Blazor/Redux component (https://github.com/torhovland/blazor-redux) and this suits my needs, so far.  I don't really agree with your assertion that what I'm doing is "quite unusual", though.  (I don't want to devolve in to an argument, I'd just like to state my case)  I suppose it could be unusual in the Razor style of page building, which I admit I'm not terribly up to date on.
I come from a React/Redux world, where the router is an explicit component like any other, rather than the somewhat implicit routing we have here in Blazor. (Not knocking it!  Just saying it's different!)  When you have the control to declare the router and the routes as a custom component, it's quite trivial to implement the top-down flow of props for your pages.
With Blazor I'm able to fake that ability through a common root custom component that injects my store rather than each component receiving it, but it works well enough.
Incidentally, if the routing is going to be made more flexible to be a component we can declare and implement, then that would help tremendously in supporting those transferring over from ReactLand.

I come from a React/Redux world, where the router is an explicit component like any other, rather than the somewhat implicit routing we have here in Blazor.

The router is also an explicit component in Blazor. In the default template, you'll find it in App.cshtml. The thing that's more different between Blazor and react-router is that Blazor has a layout system whereby a component can nominate its own layout. With react-router you don't really have layouts as a build-in notion; instead you just create a hierarchy of components where you vary the render output at some point in the tree based on the current route. We could do the same in Blazor but have designed the current system to be more familiar to Razor Pages developers. Maybe we'll end up changing it. I'd appreciate any feedback you come up with about advantages and disadvantages of different possible approaches.

I'd like to add a comment on this topic.
In MVC I used ViewBag in the _Layout to dynamically show the title depending on the current page. The ViewBag's title property is set in the page.
So now in Blazor there is no ViewBag. I tried to use a simple service class injected by DI to accomplish this but was unsuccessful.
It seems there is currently no way to modify a property in a layout component from a page.

Hi @SteveSandersonMS ,
thanks for your fast reply. I currently got it working as you described. I will post my demo code here:
Edit:
I found a possible workaround. I only wanted to pass a headline/title from the page to the layout.
Define a simple ViewData class that implements INotifyPropertyChanged (I call it ViewDataService):
public class ViewDataService : INotifyPropertyChanged
{
    public event PropertyChangedEventHandler PropertyChanged;

    protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
    {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
    }

    private string _caption;

    public string Caption
    {
        get => _caption;
        set  {
            _caption = value;
            OnPropertyChanged();
        }
    }
}

Register this class as a singleton service to the DI container in Startup.cs:
services.AddSingleton<ViewDataService>();
Inject the service into your page:
@inject Services.ViewDataService ViewDataService
And set the title in the page's code accordingly:
  protected override void OnInit()
  {
     base.OnInit();
     ViewDataService.Caption = "Caption set from Page";
  }

Now inject the service into your layout (MainLayout) with @inject Services.ViewDataService ViewDataService
Usage of property Caption:
<h2<EMAIL_ADDRESS>And attach the PropertyChangedHandler to register for property changes:
protected override void OnInit()
{
    base.OnInit();
    ViewDataService.PropertyChanged += OnPropertyChanged;
}

private void OnPropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
      StateHasChanged();
}

That's it.

Does this apply to parameters as well?  I have a need to access the current page's route parameter when rendering navigation links from the layout.  I really don't think this is unusual.

@Yen Thanks for the feedback! Unfortunately, this is a closed issue in a repo that we're aren't using to track future Blazor work. Could you please provide this feedback through an issue on the https://github.com/aspnet/aspnetcore/issues repo?

@Yen you can use cascadingparameters for this.


Documentation creating, testing, and submitting new exercises

Some things that might be worth touching on:

basics of setting up test files
how to use xlisp-test
maybe some style-guide-ish stuff

I think the pull request covers what was needed by this issue.


ci: don't install bats if it's already present

Signed-off-by: Dmitry Voytik<EMAIL_ADDRESS>

LGTM

lgtm