Shared external library sometimes not loaded before webpart is being loaded

Category

[x] Bug

Describe the bug
I have a project with multiple webparts. Some of the webparts use the @ckeditor/ckeditor5-build-classic NPM package which exports a class ClassicEditor. The requirement of this package is that it should be loaded once; and so shared among all webparts. I followed these steps to make it shared: https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/basics/add-an-external-library#share-a-library-among-multiple-web-parts
The bug that occurs is that sometimes the import is a class and sometimes not:
Expected:
console.log(ClassicEditor) // class Sb extends Sd{}

Not expected:
console.log(ClassicEditor) // r {}

Steps to reproduce

Have multiple webparts with React in place (created with the YO command)
Install NPM package @ckeditor/ckeditor5-build-classic
Share the build script as external in config.json with:

  "externals": {
    "ckeditor": {
      "path"<EMAIL_ADDRESS>      "globalName": "ClassicEditor"
    }
  }

Import the shared library in multiple webparts with

import ClassicEditor from 'ckeditor'

Put the console.log in a React render

<div>
  {console.log(ClassicEditor)}
</div>

Run gulp serve

Add different webparts with this shared dependency on the same page.

Notice the difference and see the bug occur.

Expected behavior
I expect the output of the import always the same:
console.log(ClassicEditor) // class Sb extends Sd{}

Developer environment

OS: Ubuntu 18
Framework: Node.js v8/v10
Browser(s): Chrome v80
Tooling: VS Code, https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/get-started/build-a-hello-world-web-part

Additional context

Hey @jaspermeijaard - That is somewhat old guidance.  I'll make a note to get it updated to point to the actual Library component type that came out a while ago.  It will be much better:
https://docs.microsoft.com/en-us/sharepoint/dev/spfx/library-component-overview is the overview, and here is a tutorial
https://docs.microsoft.com/en-us/sharepoint/dev/spfx/library-component-tutorial
That should make things much more robust for you, and avoids any sort of race condition that the browser / scripts / etc. will introduce.

@patmill while a library component may make sense here, wouldn't two components that reference the same external library still trigger it to be only downloaded once by the module loader?


feat: make email address log in validation case insensitive

Problem
Email addresses for user accounts are treated case sensitive.
This means that<EMAIL_ADDRESS>will create a different user account than<EMAIL_ADDRESS>Solution

Treat all email address input as lowercased on sign in (front end & backend)

Closes TOOL-119

Closes TOOL-119


Training,Fine-tuning

https://medium.com/@bhaskarbose1998/monocular-depth-estimation-using-zoedepth-our-experience-42fa5974cb59
Is this a way to train/finetune using custom dataset?
But It says it's a way to finetune on relative depth estimation. Anyone knows how to train/finetune on metric data?

i am finding a way to finetune on metric data too,do u find the solution？


fix: Simplify docs building process

Eliminate need to have a separate docs requirements.txt file.

Merging without review as this is trivial. Please revert if you would like to review this.


feat: Improve PodMonitor spec

Summary
This PR introduces new PodMonitor specs to customise even more the monitor capabilities, I propose a new spec that is intended to allow more and more integration between Prometheus CRD and CNPG monitoring support.
This in done deprecating the old Monitoring field - relabing configs - in favour of a new PodMonitoringConfiguration dictionary that implement the same fields plus more. This allow us to reduce the complexity of reconciling the PodMonitor with a unified interface+struct and to allow more and more customisation in the upcoming future.
Bug Fixes
This pr fix a bug introduced by the Plugin API which caused the reconcile failure for object not recognized by the operator, such as PodMonitor. The lifecycle hook now stop if the resource is not known but returns the original object so the reconcile can continue.
Description
This pr introduce new specs for PodMonitor functionality with the plan to implement 1:1 functionality as PodMonitor spec by also guard-railing the creation. This has been done by completely rewrite the PodMonitor logic implementing a new kind of Controller that will implement all the current and future logic. We choose to not use the prometheus CRD spec to prevent accidental issue with some fields calculated by the Cluster spec - such as PodMonitor endpoint port name.
This pr also propose the deprecation of the original PodMonitor field in favour of a more standardized sub-spec which can be improved more easily in the future; finally e2e test for PodMonitor are implemented to intercept eventual regression more easily.
Some other quirks and fixes have been implemented:

Add commodities for testing
Implement Prometheus CRD installation for e2e testing

Testing Done

Implemented monitoring_test.go
Implemented e2e tests

I think the approach so far has been to avoid providing too many knobs for podmonitors, you can always define your own separately if you need more control, you just need to match the labels on the pods, which you can control from the Cluster.

It would be nice that managing the PodMonitor would be done by the operator; if I recall correctly a discussion about 1:1 functionality is present somewhere in this repo. Can you describe why you would prefer letting the user manage the PodMonitor?

Because we have to draw the line somewhere 😅 and this operator's job is not to handle Prometheus operator's resources, we do that for simple scenarios because it might be convenient for less experienced users, but we should not try to offer full customization. Otherwise we risk having to keep up to date with all the features they might introduce there, just to let users with more complex requirements deploy a single resource instead of two.

Because we have to draw the line somewhere 😅 and this operator's job is not to handle Prometheus operator's resources, we do that for simple scenarios because it might be convenient for less experienced users, but we should not try to offer full customization. Otherwise we risk having to keep up to date with all the features they might introduce there, just to let users with more complex requirements deploy a single resource instead of two.

I agree that a line should be drawn and the pod monitor should not be parameterized too much, but I think that in a simple scenario and for a novice user, it is useful to be able to change the frequency of data scraping without having to re-implement it from scratch. I also do not see any big changes that require more effort to keep them up to date.
In addition, tests on the pod monitor have also been added with this PR, which identified a bug on the operator caused by the API Plugin implementation.

Either way, could you please split the fix to its own PR?

Hi. Will split the PR ASAP, I will also refer this PR in the other two so we can continue the discussion.
Thanks


Fix broken link to 'Guide'

The reference to guide.html was leading to a blank page. Added "/" to fix the issue.

That somehow didn't work when I tested it. It was my first attempt. 🤔


Implement container operators API function

JerryScript-DCO-1.0-Signed-off-by: bence gabor kis<EMAIL_ADDRESS>

@galpeter  Thank you for the review!

@rerobika  Thank your the review! i updated the pull request based on your review.

@rerobika  Thank your the review! i updated the pull request based on your review.


Switch from musl to glibc

Fix compatibility with Raspberry Pi OS (buster) on ARM.

https://wiki.alpinelinux.org/wiki/Release_Notes_for_Alpine_3.13.0#time64_requirements
https://musl.libc.org/time64.html

See: https://github.com/klutchell/unbound-docker/issues/29

Superseded by https://github.com/klutchell/unbound-docker/pull/42


Fix issues in Serenity.CoreLib.js when jQuery UI or jQuery validate is not loaded

Hi Volkan, before Im opening a new issug...
Since I upgrade a test project from NetCore 2.2.to 3.1. on changing a User Role on UI, I get following exception
jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:9600 Failed to load resource: the server responded with a status of 403 (Forbidden)
send @ jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:9600
jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:3827 Uncaught Error: Can't load script data: RemoteData.UserData!
    at Object.ensure (Q.ScriptData.ts:114)
    at Object.getRemoteData (Q.ScriptData.ts:177)
    at Object.get (Q.Authorization.ts:63)
    at Object.hasPermission (Q.Authorization.ts:13)
    at ReportOpenGrid.EntityGrid.hasInsertPermission (EntityGrid.ts:257)
    at Object.disabled (EntityGrid.ts:148)
    at HTMLDivElement.<anonymous> (Toolbar.ts:180)
    at HTMLDivElement.dispatch (jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:5183)
    at HTMLDivElement.$event.dispatch (jquery.event.drag.js?v=Q42_cWjms19Czv7rSFThUg:380)
    at HTMLDivElement.elemData.handle (jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:4991)

Also my newly generated modules with dotnet sergen g shows me the same exception.
does this issue pointing this?

No relation at all

Hi Volkan, before Im opening a new issue...
Since I upgrade a test project from NetCore 2.2 to 3.1. on changing a User Role on UI, I get following exception
jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:9600 Failed to load resource: the server responded with a status of 403 (Forbidden)
send @ jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:9600
jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:3827 Uncaught Error: Can't load script data: RemoteData.UserData!
    at Object.ensure (Q.ScriptData.ts:114)
    at Object.getRemoteData (Q.ScriptData.ts:177)
    at Object.get (Q.Authorization.ts:63)
    at Object.hasPermission (Q.Authorization.ts:13)
    at ReportOpenGrid.EntityGrid.hasInsertPermission (EntityGrid.ts:257)
    at Object.disabled (EntityGrid.ts:148)
    at HTMLDivElement.<anonymous> (Toolbar.ts:180)
    at HTMLDivElement.dispatch (jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:5183)
    at HTMLDivElement.$event.dispatch (jquery.event.drag.js?v=Q42_cWjms19Czv7rSFThUg:380)
    at HTMLDivElement.elemData.handle (jquery-3.3.1.js?v=agfan66TS68_dJ6Ha7_dlg:4991)

Also my newly generated modules with dotnet sergen g shows me the same exception.
does this issue pointing this?
P.S. the project was genereated from scratch with Serene and upgraded to Net Core 3.1

@kartalbas Hi, are you able to resolve this issue?? if yes can you please help me with the solution


[Doc][core-client] remove outdated @param credential

from ServiceClient constructor ref doc.

API change check
API changes are not detected in this pull request.

Is there a similar change needed in ts-http-runtime?

No, ts-http-runtime does not have a ServiceClient


Hard coded paths for models

There is some hard coded paths here that should by stored in a properties files.

This is handled with https://github.com/freme-project/freme-ner/blob/master/src/main/resources/applicationContext.xml#L31


Problem with bulk adding "Public" label. Sync broken

The integration seemed to be working correctly, but there appears to be an issue after I tried to sync 38 tickets at a time. Only 5 made it, and now the other tickets in the team don't sync. Even after refreshing the team's active-sync. Any suggestions?
Stellar work on this project btw. Love the details in that integration setup ✋
From the GH webhook 404 response:
{"success":false,"message":"Could not find issue's corresponding team."}

Thanks for the response @tedspare !

To clarify, what do you mean by refreshing the team's active sync?

I removed the integration on both services and tried again but didn't have any luck. Specific tickets just didn't want to sync over after adding the Public label.

As for bulk-handling not working, I'll think about how to design for this! Each mutation triggers one webhook, so it's possible the DB connections were maxed out or something. In the meantime, is it okay to work a few tickets at a time?

I ended up just writing a custom script to do the ticket migration from Linear's csv export, since that's really all I was trying to accomplish with synclinear anyway.
While my issue is resolved, I'm happy to check our Linear project for anything that may help debug this further. If not, you can consider this issue closed. Keep up the great work Ted. I wish we could have stayed with Linear. $1200/year to keep our team actively creating tickets just seems bonkers.


fix: change category key format

I think this one is still needed, otherwise the Built-in Snapserver Settings string will not get a translation?


Fixes: #805 Added h5 save format compatibility

from huggingface_hub import push_to_hub_keras
push_to_hub_keras(transformer, repo_url = "rushic24/keras-english-to-spanish", include_optimizer=True, save_format='h5', filepath='mpath')

@merveenoyan

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Thanks for the PR. Please add a test for the changes :)

Sure, can you just enable the workflows for once, I need to check if the tests pass in the github. They do pass locally.

@adrinjalali Is that normal? They do pass here.

Hey there, thanks for looking into this and your contribution!
I think this is a tricky issue, however. I'm not sure we want to use H5 format at all if at all possible. I believe it's suggested to use SavedModel everywhere. If there are issues with SavedModel that H5 solves, maybe we try to see if we can solve them SavedModel first.
I think this will actually add significant complexity in terms of usability, and will break in a variety of use cases. Imho I would avoid adding this feature altogether, but if we truly deem this necessary it will need some really good tests, docstrings, and example snippets to clear up its intended usage.

Hey,
Thanks for looking into it. This is needed because some keras models don't save without 'h5'. For e.g. If I want to save this transformer https://github.com/rushic24/keras-io/blob/master/examples/nlp/neural_machine_translation_with_transformer.py#L355.

@rushic24 Hello Rushi,
As far as I know it's quite discouraged to serialize models in the manner you mentioned. The models can be pushed to different repositories and then built locally in the manner you mentioned. When we save models as SavedModel, we have everything we need to serve a model with anything inside TFX ecosystem and that's why we support this format.

@rushic24 we appreciate contributions, thanks a lot for the input ❤

Yea thanks again @rushic24 - feel free to discuss further in the issues if the solution above doesn't work for you


[VTK] Fix compilation failure

Thi PR changes VTK port to temporarily use the internal GLEW in place of system one.
We should probably try to add a patch for the vtk cmake files and to use GLEW::glew target instead of the old fashioned variables. This however may be a problem if one then disables VTK_USE_SYSTEM_GLEW as in this PR.
Fixes #7519

Ah no, this is not a good fix. If necessary add a vcpkg_cmake_wrapper.cmake or add a FindGLEW.cmake to VTK if VTK needs some GLEW variables which are not anymore set by an updated version of FindGLEW.cmake from CMake. Alternativly just add CMakes old FindGLEW to the port and install it into the right VTK dir so that it is used over CMakes newer internal one!
To be clear here: Switching any SYSTEM dependency back to an INTERNAL one is not an option for a fix.

Hi @Neumann-A, ok gotcha.
I implemented the CMake's latest FindGLEW.cmake and what it does under Windows it simply redirects all the work to GLEW's CMake config files and nothing more. So the error should lie somewhere else. It seems that, in fact, even if we use the system-wide GLEW option, VTK tries to get internal GLEW file during compilation. I wasn't able/didn't have enough time to dig into vtk to find the source of error so I was just proposing a temporary workaround.
Not sure at this time what is vcpkg_cmake_wrapper, I'll try to see other port files using it. Can you point me to a good resource to better understand how it works?
If this PR is not acceptable, I'll just close it.

How the wrapper works:
macro(find_package name)
    string(TOLOWER "${name}" _vcpkg_lowercase_name)
    if(EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/${_vcpkg_lowercase_name}/vcpkg-cmake-wrapper.cmake")
        set(ARGS "${ARGV}")
        include(${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/${_vcpkg_lowercase_name}/vcpkg-cmake-wrapper.cmake)
    elseif() ....do normal find_package....
    .....
endmacro()

So it is just a file included by find_package. In the wrapper itself you can do a _find_package (extra underscore is important) call and then define the required variables by hand. The wrapper should be installed for GLEW in this case.

Ok, thanks.
I think we can close this PR then.


[WIP] uneven input support for DDP

What does this PR do?
WIP for Uneven input support for DDP
Fixes #3325
Does your PR introduce any breaking changes? If yes, please list them.

Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

Hello !
Is this PR still ongoing ?

Hello ! Is this PR still ongoing ?

Hi @anth2o! Currently, there is no progress. It is somewhat still on my radar, but I've been busy with higher priority items lately.
We still want to finalize it, but it doesn't have the highest priority, honestly, so there is no ETA.

Thanks for your answer, I'll try to find a solution on my end to handle this

Is there anything on this topic being worked on currently? What is the current best suggestion in the case of using iterable datasets on separate (possibly unequal) sharded data for each gpu in training and evaluation w/ torchmetrics?

Forgot to tag @carmocca @otaj. Also @anth2o did you find a solution here?

This would be really useful to get consistent evaluations of datasets that may not be divisible by the number of devices. Has there been any progress on this?


Can you provide a fully trained model?

Is there anyone providing a fully trained model? Thank you in advance. My email is<EMAIL_ADDRESS>

@0801130205 have you found any pre-trained models?


Dependencies and incompatibilities can accept invalid mod IDs

empty strings and any other other non-string values should be ignored

Closed with #91


does not apply patch after installation, on the right commit

E:\SD2\new web-ui\stable-diffusion-webui\stable-diffusion-webui\stable-diffusion-webui>git apply --ignore-whitespace extensions/sd_webui_SAG/automatic1111-CFGDenoiser-and-script_callbacks-mod-for-SAG.patch
error: patch failed: modules/script_callbacks.py:53
error: modules/script_callbacks.py: patch does not apply
error: patch failed: modules/sd_samplers_kdiffusion.py:9
error: modules/sd_samplers_kdiffusion.py: patch does not apply
E:\SD2\new web-ui\stable-diffusion-webui\stable-diffusion-webui\stable-diffusion-webui>

same issue here

Also experiencing this.

Vlad fork no longer requires patching since the change has already been merged to upstream in commit  cb465b1, I'll update README to reflect the changes.

it works well even show errors for patch.

it works well even show errors for patch.

It will show error if you apply the patch again. You only need to run the command once.

@ashen-sensored  can you add a message "patch already applied"?
this will help with the confusion


Fix broken link

Not sure why this gives 404: https://openscapes.github.io/quarto-website-tutorial/quarto-workflows/explore.qmd#confirm
something about a redirect sounds familiar from a previous link fix?

🤔 Julie updated link in this commit https://github.com/Openscapes/quarto-website-tutorial/commit/5265c570e57870cb8765f6bc67a255219bdf3a7d

other pages (RStudio & Jupyter) use html, not qmd in the link/explore.html#setup-github-action.
We should harmonize these when fixed

Ah yes please update to .qmd which is the better approach (which I didn't know before): this will make it possible to make into a pdf or word and still have links (i.e. not reliant on .html).

Aha! See https://github.com/Openscapes/quarto-website-tutorial/commit/5265c570e57870cb8765f6bc67a255219bdf3a7d#r78921889

broken link fixed in https://github.com/Openscapes/quarto-website-tutorial/pull/18.
I'll have to come back to make other links qmd not html


Pysal doesn't efficiently recognize all neighbors

I am using pysal function ps.weights.Queen.from_shapefile to calculate the neighbors of different polygons.
However it can't identify all the neighbours as seen in the photo attached these two polygons are not identified as neighbors, is there a way to solve this problem?
I have found this link also talking about the same problem.
https://stackoverflow.com/questions/45758233/pysal-doesnt-recognize-some-polygon-neighbors

There was a recent addition to libpysal that addresses what might be a related issue to this.

@sjsrey yes that's the same issue for me
looking forward for the new libpysal release as
pip install git+git://github.com/pysal/libpysal.git
didn't work for me

@sjsrey I managed to upgrade my libpysal but still I have the same problem.
Here is my code:
import libpysal import libpysal.api as lp w = lp.Queen.from_dataframe(df) [tt, A]=cg.connected_components(w.sparse) knn1 = ps.weights.KNN.from_shapefile("./OutputRandom/resultfinal.shp",k=1) w1 = libpysal.weights.util.attach_islands(w, knn1) [tt1, A1]=cg.connected_components(w1.sparse) w2 = libpysal.weights.util.nonplanar_neighbors(w1, df) [tt2, A2]=cg.connected_components(w1.sparse)
I tried using ArcGis, to get neighbors and it works fine but I have a problem using the cg.connected_components i get an error. I need the cg.connected_components, as I then use it to get rid of disconnected regions, as I use Maxp clustering afterwards.
Here is my other option with ArcGis:
NN=pd.read_table('Export_Output.txt',sep=',') #txt file from arcgis
NN.drop(['LENGTH','NODE_COUNT'],inplace=True,axis=1)
w.neighbors = {}
keys = range(max(NN.src_CL)+1)
for i in keys:
    w.neighbors[i] =NN.src_CL[NN.nbr_CL.loc[NN.nbr_CL==i].index.tolist()].tolist()
knn1 = ps.weights.KNN.from_shapefile("./OutputRandom/resultfinal.shp",k=1)
w = libpysal.weights.util.attach_islands(w, knn1)
[tt, A]=cg.connected_components(w.sparse)

If you can tell me how to fix any of the two options this would be of great help.
Here the neighbors are fine, but then I can't see how many disconnected areas I have.
Also here is the full picture of my map of Europe, as I am working on clustering energy potential data to be used in an energy system model for Europe.

When you say " i get an error. I need the scipy.sparse.csgraph.connected_components," can you be more specific and share the error message so that we might help?
Any chance you can also share the shapefile so we can try to help you get what you need?

@sjsrey  Sorry for being not specific
This is the error I get
ValueError: row, column, and data array must all be the same length
This error comes with all W attributes after changing anything in w.neighbors. (So same w.sparse w.islands, .... etc.)
I shared the shape file here (I tried sharing it earlier but it wasn't possible in the comments)
https://www.dropbox.com/s/ii1xdwbycopbp25/resultfinal.shp?dl=0
Here is also the text file for neighbors by ArcGIS
Export_Output.txt

Can you add the dbf and shx files?

Here they are @sjsrey
https://www.dropbox.com/s/sl88xj9nzvdju2i/resultfinal.dbf?dl=0
https://www.dropbox.com/s/fagckpeihc3d8gk/resultfinal.shx?dl=0

There seem to be some problems with the geometries in your shapefile:

You can check the errors in QGIS using the menu: Vector-Geometry Tools-Check validity

@sjsrey Thank you so much
will fix my shapefile and try again

@sjsrey I corrected my shapefile so now it is valid but still some neighbors are not identified by libpysal
Here is the code and in the link you will find the files.
Is it a problem with my shape file? How to fix it? According to the map here there is only one island and the rest polygons should be all connected to each other.
data = gpd.read_file('./Output/Datavalid.shp')
scaler= MinMaxScaler()
w = ps.weights.Queen.from_shapefile('./Output/Datavalid.shp')
w = libpysal.weights.util.nonplanar_neighbors(w, data)
knn1 = ps.weights.KNN.from_shapefile('./Output/Datavalid.shp',k=1)
w = libpysal.weights.util.attach_islands(w, knn1)
[tt, A]=cg.connected_components(w.sparse)

https://www.dropbox.com/sh/o2r0jssyin2udjy/AAACs6HFyUWPu7hUcu9TH0-ha?dl=0


https://github.com/dotnet/VisualStudioCodeClient/issues/1660

GitHubTags:#A11y_VSCode;#A11ySev2;#A11yTCS;#A11yMAS;#DesktopApp;#Visual Studio Code Client;#Focus Order;#Keyboard;#WCAG2.4.3;#Win32;#Win10;#AINotInScope;VisualStudioCode-Mac-Aug2021
Environment Details:
Application Name: Visual Studio Code
Standard Violated: Usability
Repro Steps:
1.Open Visual Studio Code editor
2.Tab till Welcome tab and press enter
3.Tab till "Show All" link and press Enter.
4.Tab till "Search field" and populate some random data in Search field.
5.Verify whether the status message will appear on the screen and Voiceover is reading the status message or not.
Actual Result:
When we populate some invalid data in the Search field "No status message" will appear on the Screen.
Note:
The similar  issue appears in Keyboard Shortcuts page.
Expected Result:
When we populate some invalid data the Status message like "No data available" or 'No results found" should appear on the Screen and also the Screen reader should read the status message.
User Impact:
Screen Reader users will find difficult in finding the Search results if no status message will appear on the screen and also the status message not read by the Screen Reader.

https://user-images.githubusercontent.com/89508906/130779613-a74c5c73-f58e-446a-b6b3-3361f6b2aaed.mp4

Logged the bug in  the wrong Repository.


Fix iss597 part2

Second PR for fixing #597:

Change the logic to find model names in read_e3sm_diags_metrics
Improve test name showing up in the legend box by including year range.


Nightly CI randomly fails due to hard coded IP address in test

Hard coded IP address in ansiblie-ci test task Try more detailed network specifications in test_networking.yml can collide with already allocated IP address.
TASK [Try more detailed network specifications] ********************************
fatal: [sf-1]: FAILED! => {"changed": false, "meta": "Failed to parse JSON:\n[[command: sf-client --json instance create cirros_netspec 1 1  -D size=8,base=cirros  -N network_uuid=28759585-6045-4012-924b-fff122bc3bb6,address=<IP_ADDRESS>,macaddress=02:42:4d:0a:86:fe -p  sf-1 ]]\n[[stdout: ERROR: Resource in use: address <IP_ADDRESS> in use\n]]\n[[stderr: ]]", "msg": "Error manipulating instance", "params": {"cpu": "1", "disks": null, "diskspecs": ["size=8,base=cirros"], "name": "cirros_netspec", "networks": null, "networkspecs": ["network_uuid=28759585-6045-4012-924b-fff122bc3bb6,address=<IP_ADDRESS>,macaddress=02:42:4d:0a:86:fe"], "placement": "sf-1", "ram": "1", "ssh_key": "", "state": "present", "user_data": "", "uuid": null}}

Occurred in https://jenkins.shakenfist.com/job/shakenfist_nightly/92/consoleFull

@mikalstill Is this now redundant after the CI test harness change?

Obsolete. The Ansible CI has been removed.


v4 docs - No mention of btn-default removal in migration

CSS ".btn-default" styling seems to have been replaced with ".btn-secondary". It would be helpful to add a mention of this in the migration docs.

Fixed by #17954.


Semantic Segmantion Classes

Can you please add a txt/yaml file containing the classes used for semantic segmentation and their indices?

Hi @YanivKatz, as the authors generated this dataset using Carla, I managed to find all the information about the classes and their indices for semantic segmentation from the Carla documentation page.

Thanks @waychin-weiqin for replying first! That is indeed correct.
To make it easy for everyone, we will also provide a file with the classes and indices used for semantic segmentation.
Leaving this issue open until then.

Hi @suniique , I found that some videos have unexpected pixel id of 23. Can you help double check that ? Thanks
In 0ec5-f0e2.mp4:
>>> np.unique(frame)
array([ 0,  1,  3,  4,  7,  9, 10, 11, 13, 19, 20, 23], dtype=uint8)

hey @HRHLALALA, thanks for the question! Yes, the decompressing of video sequences does require many environment settings, otherwise, you may not get exactly the same results. To simply that, we have released all the sematic segmentation labels in the plan zip files of PNGs.
You can download them on our server, for example, the semseg.zip under
https://dl.cv.ethz.ch/shift/continuous/videos/1x/train/front/


SQL functions should be case insensitive

This does not work:
$insertId = $database->insert('vouchers', [
  'code' => $code,
  'value' => $value,
  '#expires' => "from_unixtime($timeStamp)",
]);

But this does:
$insertId = $database->insert('vouchers', [
  'code' => $code,
  'value' => $value,
  '#expires' => "FROM_UNIXTIME($timeStamp)",
]);

SQL is case insensitive and therefore both versions should work!

Check out the new feature raw object https://medoo.in/api/raw. Case insensitive also works, but we recommend capitalize with this for better readability.


Websocket Wrong Control Frame

🐛 Bug Report

Very frequent websocket: control frame length > 125 messages recieved by server due to react native websockets
This is probably due to pong sent by react native client as response to ping message.
Close code is 1002
To Reproduce

Connect to websocket and keep recieving messages with server sending pings.
        this.socket.onclose = (e) => {
            alert('Socket closed.' + e.code + ' Reason: ' + e.reason);
        };

This gives code 1002
Expected Behavior

Should not be giving wrong data in pong and not disconnect very so often.
1002 indicates a protocol error, which may be caused by packet loss (lossy internet connection) or malformed packets sent by your websocket library.
Code Example

Environment

React Native Environment Info:
    System:
      OS: macOS 10.14.1
      CPU: (8) x64 Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz
      Memory: 1.36 GB / 16.00 GB
      Shell: 5.3 - /bin/zsh
    Binaries:
      Node: 8.9.4 - ~/.nvm/versions/node/v8.9.4/bin/node
      Yarn: 1.13.0 - ~/.nvm/versions/node/v8.9.4/bin/yarn
      npm: 5.6.0 - ~/.nvm/versions/node/v8.9.4/bin/npm
    SDKs:
      iOS SDK:
        Platforms: iOS 12.1, macOS 10.14, tvOS 12.1, watchOS 5.1
    IDEs:
      Xcode: 10.1/10B61 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.8.3 => 16.8.3
      react-native: ^0.58.5 => 0.58.5
    npmGlobalPackages:
      react-native-cli: 2.0.1
      react-native: 0.56.0

Any update on this?

@react-native-bot ??

There is no ios specefic fixes for websocket in 0.59 so dont want to update unnecessarily.

I read this somewhere: When you get a ping, send back a pong with the exact same Payload Data as the ping (for pings and pongs, the max payload length is 125).
Could this be possible because my client is getting almost 10+ messages every second and it might have confused the message data and put that in the pong data it sent?

@hramos Any idea on if this is a possible bug in React native websocket library


Darwin platform

Could you please provide target for darwin platform there should be very little incompatibility when building I think.
I have tried to do it myself and make a PR but failed maybe when I am done with reading all the pills,nixpkgs resources I will be able to contribute somehow I would really like this project succeed it looks great and exactly what I would like to use 👍
$ terraform init -upgrade

Initializing the backend...

Initializing provider plugins...
- Finding corpix/nixos versions matching "0.0.8"...
╷
│ Error: Incompatible provider version
│
│ Provider registry.terraform.io/corpix/nixos v0.0.8 does not have a package available for your current platform, darwin_amd64.
│
│ Provider releases are separate from Terraform CLI releases, so not all providers are available for all platforms. Other versions of this provider may have different platforms
│ supported.

Hi @kolpav . I have added cross-compilation for darwin (amd64 & arm64) and linux (arm64).
How provider should be available for Terraform on your platform.
But I think this is far from enough because there are probably a lot things to be done before anything could be deployed from OSX to NixOS host because of cross-compilation. I am sure there will be a lot of problems. Maybe I could address some of them on the Terraform provider level configuration wrapper. But I don't use OSX in my everyday life and can not test this changes. So, hopefully this could be done by somebody in future, I'll do my best to help

Forgot to mention: there is another way to deploy configuration to NixOS hosts from OSX, some of my teammates using this, you could run a Docker container with Nix like this:
docker run -it -v nix:/nix:rw -v $HOME/.ssh:/chroot/.ssh:rw -v $(pwd):/src -e HOME=/chroot -w /src --platform=linux/amd64 nixos/nix:2.9.0

It will run container with Nix. Inside this container you could run nix-shell -p terraform which will provide a Terraform tool.
This relies on the fact that Docker uses virtual machine on OSX.

@corpix That was quick, thank you. installation passed I'll give it a go, hopefully I'll be able to get rid of ansible soon. Since you mentioned using docker as an workaround for potential compatibility issues, there is also https://github.com/lima-vm/lima (docker/-compose) and https://multipass.run for quick cli vms might be useful for your teammates or future readers.


ref/mem: misleading sentence in sync.Once example

What version of Go are you using (go version)?
1.11/playground
Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
linux/amd64, playground
What did you do?
https://play.golang.org/p/w-CNHDQAGW-
What did you expect to see?
according to ref/mem as written, "1\n1 hello, 1\n2\n 2 hello 1\n"
What did you see instead?
the other way around
Observation: There's two things here that I think are potentially misleading, although both are sort of trivial. The first is that, according to the "goroutine destruction" section, there's no guarantee that anything gets printed, because nothing is waiting on these, and indeed, without the extra channel operations, nothing happens.
The second is the distinction between "the first call to doprint()", "the first call to doprint() which actually starts execution", and "the first call to doprint() which actually begins the once.Do() call". While in the trivial example, probably the first call to start executing will win that, it's not generally a given that two goroutines acting in parallel will always complete in the same order they start, even running identical code. But in particular, it's definitely not guaranteed that the "first call" will start executing first.
I'm fine with handwaving the synchronization thing, but I think the wording on "the first call" might benefit from cleaning up. Proposed wording:
The first call to doprint() to begin executing the once.Do() calls setup(), any calls that reach that point later do not, regardless of the order in which the goroutines are invoked or begin executing.

without the extra channel operations, nothing happens.

The channel is not necessary to the example: the goroutines are scheduled eventually, they're just not guaranteed to schedule before the program exits (if it does exit).
Contrast https://play.golang.org/p/XRbNXahEoY7.

it's definitely not guaranteed that the "first call" will start executing first.

The “first call” in the context of that sentence is the first call that “happens” in the happens-before relationship. There is not well-defined “first call” to sync.Once.Do itself. (The call of the function setup is what has a well-defined order, not the call of the method Do.)
You're right that the sentence “The first call to doprint runs setup once.” is misleading, but it's also not the important sentence in that section: we should probably just delete it.
The important sentence in that section is:

A single call of f() from once.Do(f) happens (returns) before any call of once.Do(f) returns.

The first call to doprint() to begin executing the once.Do() calls setup(), any calls that reach that point later do not, regardless of the order in which the goroutines are invoked or begin executing.

As noted above: there is no “first call […] to begin executing the once.Do”, because the execution of once.Do itself is not ordered within the memory model: only the return from once.Do is ordered, and only with respect to the return from whichever function happened to be executed.
The important behavior of sync.Once is that the execution of exactly one function passed to Do returns before any call to Do on that sync.Once returns. If there is more than one candidate for such a function, the memory model does not specify which one wins: only that the one that does happens before any of the calls returns.

A clearer fix might be to change the sentence:

The first call to doprint runs setup once.
to
The call to setup completes before either call to print begins.”

That's a good point. I'm pondering this, because I think there's a mild ambiguity there, but on reflection, I think it's just the general ambiguity that nothing promises that code ever executes at all. For instance, so far as I can tell, if a hostile implementor looked at the sample code, and decided that they could prove that two things would eventually reach the once.Do(), they would be allowed to implement it so that the first goroutine to reach that point necessarily blocks, and the second is allowed to run the provided function. But I guess that doesn't actually matter at all, as long as they don't block indefinitely for no particular reason.
Hmm.
Come to think of it:

Multiple threads can execute once.Do(f) for a particular f, but only one will run f(), and the other calls block until f() has returned.

Shouldn't that be "for a particular once"?
	switch(i) {
	case 1: once.Do(one)
	case 2: once.Do(two)
	}

On reading docs and trying it: It clearly should, given that the docs for sync say "if Do is being called for the first time for this instance of Once", and further clarify "regardless of the value of f". So they talk about it in terms of the first call to Do(), not the first invocation of f. That's probably important because it's possible for f to vary. Indeed, the docs suggest that you may need a local function literal, and so far as I can tell, even if it's the same source code text each time, each time you reach a function literal, you have a logically distinct "function" -- it's a closure, and will be bound to a different local environment each time.


Running Xcode Generated UITest Crashes on eDistantObject`SetupBlockInvocationForward

Add EG2UITests UI Testing Bundle to our project
Add Pod file changes:

    pod 'EarlGreyApp' (added to app target definition)

    target 'EG2UITests' do
        pod 'EarlGreyTest'
        pod 'iOSSnapshotTestCase'
        test_pods
    end

Run pod install
Run (generated) UI Test
App crashes on launch:

(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = step over
  * frame #0: 0x000000012a198324 eDistantObject`SetupBlockInvocationForward at NSBlock+EDOInvocation.m:49:5
    frame #1: 0x00000001075bf3a7 dyld_sim`ImageLoaderMachO::doModInitFunctions(ImageLoader::LinkContext const&) + 517
    frame #2: 0x00000001075bf7b8 dyld_sim`ImageLoaderMachO::doInitialization(ImageLoader::LinkContext const&) + 40
    frame #3: 0x00000001075ba9a2 dyld_sim`ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, char const*, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 456
    frame #4: 0x00000001075ba90f dyld_sim`ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, char const*, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 309
    frame #5: 0x00000001075ba90f dyld_sim`ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, char const*, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 309
    frame #6: 0x00000001075b97a6 dyld_sim`ImageLoader::processInitializers(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 188
    frame #7: 0x00000001075b9846 dyld_sim`ImageLoader::runInitializers(ImageLoader::LinkContext const&, ImageLoader::InitializerTimingList&) + 82
    frame #8: 0x00000001075b10f1 dyld_sim`dyld::runInitializers(ImageLoader*) + 82
    frame #9: 0x00000001075b501e dyld_sim`dlopen_internal + 909
    frame #10: 0x000000010db109d9 libdyld.dylib`dlopen + 171
    frame #11: 0x00000001081cc7a7 CoreFoundation`_CFBundleDlfcnLoadBundle + 151
    frame #12: 0x0000000108099302 CoreFoundation`_CFBundleLoadExecutableAndReturnError + 274
    frame #13: 0x0000000107a3021a Foundation`-[NSBundle loadAndReturnError:] + 356
    frame #14: 0x0000000107906184 XCTest`_XCTestMain + 1508
    frame #15: 0x000000010759dedd EG2UITests-Runner`_XCTRunnerRunTests + 258
    frame #16: 0x000000010759dddb EG2UITests-Runner`__67-[_XCTRunnerAppDelegate application:didFinishLaunchingWithOptions:]_block_invoke + 9
    frame #17: 0x000000010811f29c CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
    frame #18: 0x000000010811ea08 CoreFoundation`__CFRunLoopDoBlocks + 312
    frame #19: 0x0000000108119894 CoreFoundation`__CFRunLoopRun + 1284
    frame #20: 0x0000000108119066 CoreFoundation`CFRunLoopRunSpecific + 438
    frame #21: 0x000000011179fbb0 GraphicsServices`GSEventRunModal + 65
    frame #22: 0x000000010a27cd4d UIKitCore`UIApplicationMain + 1621
    frame #23: 0x000000010759e098 EG2UITests-Runner`main + 183
    frame #24: 0x000000010db0cc25 libdyld.dylib`start + 1

Downgrading to eDistantObject 0.9.0 as suggested in this seemingly similar issue did not work.

Kellie, which xcode version are your tests built?

Albert, I am running Xcode version: Version 11.3.1 (11C504)

Sorry for the latency. It is likely to be the dependency corruption at EarlGrey podspec. Could you check your Podfile.lock (auto generated beside your Podfile after pod install) that if the eDistantObject version is 0.9.1? If that's the case, try changing it back to 0.9.0 and rerun the test (this was how I make Demo/EarlGreyExample work).

I will check the Podfile and update if this resolves the issue.  Thanks so much @AlbertWang0116

Albert, I checked the Podfile and eDistantObject version is 0.9.0.

I see, so I guess you can run EarlGrey tests on the demo app but not on your own? From the place that error complains:
https://github.com/google/eDistantObject/blob/bf9291a29399afb4188e3454a448d7dc76be3c06/Service/Sources/NSBlock%2BEDOInvocation.m#L46
eDistantObject tries to add forwardInvocation: method into NSBlock but failed. Given it works on the demo app, it means apple doesn't implement forwardInvocation: to NSBlock by xcode 11.3.1. Do you happen to know any of your app's library does it?

Apologies for delayed response.  It does not appear that any of our code or any of our 3rd party dependencies add a method called forwardInvocation: to NSBlock.
We are going to continue to investigate the issue on our end, specifically to see if we have already come through SetupBlockInvocationForward() once and thusly already added the method to NSBlock.
Will post back with an update.  Thank you again @AlbertWang0116 for your help.

Hi Kellie, any luck on this? If it truly imported eDO twice, your should be able to hit the breakpoint of that symbol twice.

Hello Albert,
I am looking at this again right now.  I am stepping through now but I am not hitting the breakpoint before it crashes.

@AlbertWang0116 What I am noticing when stepping through the demo project is GREYTestApplicationDistantObject.load() method is called at the beginning of the test suite, establishing the test application eDistantObject.  However, when I run my sample test,  GREYTestApplicationDistantObject.load() is never called.

@kelliepersson GREYTestApplicationDistantObject doesn't have load method, do you mean this one?

Kellie, it would be super helpful for us if you were able to create a repro case / project we could clone and test out the issue.

@AlbertWang0116 I was able to get passed this error/crash  😅 .  We have a rather complicated Podfile setup.  To prevent duplicate linkage of static libraries, I added EarlGreyApp & EarlGreyTest to a list static  frameworks  passed toremove_static_framework_duplicate_linkage inside Podfile
post_install do |installer_representation|
    installer_representation.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES'] = '$(inherited)'
        end
    end

    static_frameworks = [
      'EarlGreyApp',
      'EarlGreyTest'
    ]
    remove_static_framework_duplicate_linkage({
      'Framework' => static_frameworks
    })
end

Nice! Thanks for the update Kellie!

I just want to confirm that with eDistantObject -v 1.0.0 this is still an issue. Downgrading to -v 0.9.0 did the trick for me. Is there something wrong with the 1.0.0 version? Is the setup documentation still up to date?

Hey Steven, you need to pair the current EarlGrey version (2.0) with eDistantObject 0.9.0. We are working on releasing a new EarlGrey version which will be paired with eDistantObject 1.0.0.
Sorry for the inconvenience.


Failed (/etc/insights-client/machine-id) is absent, cannot continue

Hello there,
I noticed an issue which is breaking the configuration on our systems.
Apparently the role RedHatInsights.insights-client is failing for my rhel8 host with following message file (/etc/insights-client/machine-id) is absent, cannot continue. The name of the failing task is RedHatInsights.insights-client : Change permissions of machine_id file so that Insights System ID can be read.
The fact that machine-id does not exist, implies that the host is not registered to Insights, and actually if I run following command:
[root@tower-isolated1 plays]# insights-client --status
This host is unregistered.

It indeed replies that the system is not registered. And if I check the return code of the command it's 0.
[root@tower-isolated1 plays]# echo $?
0

It looks to me that the task RedHatInsights.insights-client : Register Insights Client is not properly working, since this is what it is returning:
ok: [localhost] => {
    "changed": false,
    "invocation": {
        "module_args": {
            "display_name": "",
            "force_reregister": false,
            "insights_name": "insights-client",
            "state": "present"
        }
    },
    "message": "The Insights API has determined that this machine is already registered",
    "original_message": "Attempting to register insights-client"
}

My assumption is that this https://github.com/RedHatInsights/ansible-collections-insights/blob/master/plugins/modules/insights_register.py#L131 conditional is missing some logic.
Let me know your thoughts.
Thanks,

It looks like #46 fixed the issue, so closing.
Thanks!


Add third party Dart client to the platform docs

This PR adds a Dart client to the platform docs under Third-Party Clients. It can be used in both pure Dart and Flutter applications.
Link to the official package repository page https://pub.dev/packages/mistralai_client_dart
Link to the Github page https://github.com/nomtek/mistralai_client_dart
This is the same PR as https://github.com/mistralai/platform-docs-public/pull/30 but I had to reopen it to fix merge conflicts.

Hi @hrjn,
I'm one of the maintainers of the Dart package. Since @KacperKluka is off this week, I'll answer your question.
Thanks a lot for checking it out 🙇♂.  It looks like the Mistral API changed how strict it is about sent fields. We're working on fixing it and I'll let you know as soon as it's sorted.
For now, let's keep this PR open until we get it resolved.

@hrjn It should be now fixed in the repo of our package ;)


Use native $search in v4.

OData v4 supports the $search parameter natively:
http://www.odata.org/getting-started/basic-tutorial/#search

I remember that we use the $search query parameter but it was still only returning an exact match. That depends on the implementation, but for me only using $search was not leading to what I wanted. So I had to add the substring/contains methods. Does that not work for you? If you like to have an exact match, you can still use $filter.
Otherwise we might need an implementation that supports both ways, maybe by interpreting searchFunc?


Remove Python 2 compatibility code

Hi there 👋
I noticed there was still quite a bit of code that uses some constructs from Python 2 in the code base, even though Python 2 is not supported anymore. I used the 2to3 tool (while it still exists) to make the bulk of the changes, and then I adapted a little the result.
The most noticeable change comes from the Abstract Base Classes. The old syntax:
class X:
    __metaclass__ = abc.ABCMeta

has no effect in Python 3, so all of these were just plain classes. Fixing that revealed a couple errors with some unimplemented methods, so I added some dummy implementations.
I wanted to add a test that the abstract-ness is working, something like:
for expected_abc in (Canonical, Expression, Atom, Leaf, Reduction, Solver, Constraint):
    assert inspect.isabstract(expected_abc)

All of these fail before this PR. Do you have an idea where this test could fit? Looking at the tests directory, I couldn't figure out if there were similar tests somewhere or not.
Let me know your thoughts about this!

 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.

Maybe the test could go in test_problem? Or you could make a small new file test_base_classes.py

Thanks for catching these issues!


user_provided_service_instances returns 500 on empty name property

Issue
v2/user_provided_service_instances returns a 500 when posting with an empty name, but should return a 400 with a descriptive error message.
Steps to Reproduce
curl '<CLOUD_CONTROLLER_URL>/v2/user_provided_service_instances' -H 'content-type: application/json' --data-binary '{"name":"","space_guid":"<SOME_SPACE_GUID>"}'

Expected result
something like this:
{
  "code": 60001,
  "description": "Service instance name is required.",
  "error_code": "CF-ServiceInstanceNameEmpty"
}

Current result
{
  "error_code": "UnknownError",
  "description": "An unknown error occurred.",
  "code": 10001
}

Hi @wlindner,
We fixed this in commit b963f98. It will now return the following 400 error in the next CF release
{
   "code": 60003,
   "description": "The service instance is invalid: name presence",
   "error_code": "CF-ServiceInstanceInvalid"
}

Thanks,
@adowns01 && @youreddy


Configuration per environment

I would like to use the standard Strapi Upload when running in dev/local, but use Google Cloud Storage for upload when running in production. Is there any way to do this?
I see that this is possible for the S3 upload plugin.
Thank you for your help. I'm quite new to strapi.

Hello @noqcks,
I will update the documentation in the next update but for now, you can use environment variable like explain in README (optional parts).
The plugin does working like AWS 3 version, with latest update of Strapi (than remove administration part).
If you need more help about, you can talk to me on Strapi Slack.
Thanks,

New release with full documentation is now available !


Release Google.Cloud.Config.V1 version 1.0.0-beta01

Changes in this release:
Initial release.
PiperOrigin-RevId: 556961937

Created release for Google.Cloud.Config.V1-1.0.0-beta01


Update embedded-hal Dependency to 0.2.3 and and Use digital::v2 Trait

Description
Due to the dependency, it is currently not possible to use the recent version of hal crates that depend on embedded-hal = 0.2.3.
This pull request bumps embedded-hal dependency to 0.2.3 and uses hal::digital::v2::OutputPin instead of now deprecated embedded-hal::digital::OutputPin.
Type of change

[x] This change requires a documentation update

How Has This Been Tested?
I have tested on STM32F3Discovery.

[x] STM32F3Discovery + stm32f3xx_hal version 0.4.3 (Code)

Hi @pcein ,
Could you please take a look at this PR. It would be great to have a new version of this crate running on top of the up-to-date embedded-hal.
Regards,
Sergey


CONCEPT: Improving the software interaction process

As a development team, we want to analyze the entire integration process between the users and the components of the software in order to find missing user stories. In addition, it should help us to better understand the interactions between the components (architecture).

:thought_balloon:   Hints & Thoughts
From my point of view, this issue should be started in pairs, and then discussed with the whole team. Preferably, the PO should also take care of this ticket in order to directly derive the need for the following user stories.

:white_check_mark:   Conditions of satisfaction
Answers to the following questions should be provided, which should be summarized in the wiki (MD):

[x] Which individual steps occur in the interaction with our software? (Should be represented as a sequence diagram)
[x] What steps happen in the interaction with the software?
(Where is an frontend needed for interaction? -> please draft necessary User stories)
[x] Which steps happen in the software?
(where is a backend call, parsing etc. needed -> please draft necessary User stories)
[x] Why do these steps happen in exactly this order? (elaboration for technical presentation)
[x] Two-sentence answer: What can be achieved with our software at the end of the project?

Markdown has been added to the wiki.
The product owner has been informed about upcoming user stories and takes care of the customer pitch


Fix #751

Additionally maps some ArgumentType parameters.
#751 Has 6 upvotes and no downvotes. I think the pattern to use static imports is quite nice and should be enabled in mods.
Plus it makes things consistent with e.g. EntityArgumentType, where multiple parameterless create methods are already named in the same fashion.

Merging due to update, any more comments to a PR or issue, thanks a lot 👍


Elvui character pave bugs out

https://i.imgur.com/bLd2S7B.png
it bug out and becomes un usable

I am unable to reproduce this issue. What version of ElvUI and Drift are you using? Also, which version of WoW is this (retail or classic)?

Nevermind, I can repro this in retail. Looking into it.

Looks like this is only reproducible the first time the frame is opened after a fresh login. Following a UI reload, issue no longer occurs.
3x Action[SetPoint] failed because[SetPoint would result in anchor family connection]: attempted from: CharacterFrame:SetPoint.
[string "=[C]"]: ?
[string "=[C]"]: in function `SetPoint'
[string "@FrameXML/UIParent.lua"]:2989: in function `UpdateUIPanelPositions'
[string "@FrameXML/UIParent.lua"]:2605: in function <FrameXML/UIParent.lua:2594>
[string "=[C]"]: in function `SetAttribute'
[string "@FrameXML/UIParent.lua"]:3435: in function <FrameXML/UIParent.lua:3433>
[string "=[C]"]: in function `securecall'
[string "@FrameXML/UIParent.lua"]:2886: in function `SetUIPanel'
[string "@FrameXML/UIParent.lua"]:2733: in function `ShowUIPanel'
[string "@FrameXML/UIParent.lua"]:2598: in function <FrameXML/UIParent.lua:2594>
[string "=[C]"]: in function `SetAttribute'
[string "@FrameXML/UIParent.lua"]:3196: in function `ShowUIPanel'
[string "@FrameXML/CharacterFrame.lua"]:21: in function `ToggleCharacter'
[string "TOGGLECHARACTER0"]:1: in function <[string "TOGGLECHARACTER0"]:1>

Locals:
(*temporary) = CharacterFrame {
 BottomLeftCorner = Texture {
 }
 Center = Texture {
 }
 RightEdge = Texture {
 }
 LeftEdge = Texture {
 }
 0 = <userdata>
 OnBackdropLoaded = <function> defined @SharedXML/Backdrop.lua:152
 DriftModifiable = true
 SetPortraitShown = <function> defined @SharedXML/PortraitFrame.lua:91
 GetBackdropColor = <function> defined @SharedXML/Backdrop.lua:390
 BottomEdge = Texture {
 }
 TopEdge = Texture {
 }
 GetTitleText = <function> defined @SharedXML/PortraitFrame.lua:28
 SetBackdropBorderColor = <function> defined @SharedXML/Backdrop.lua:422
 SetPortraitTexCoord = <function> defined @SharedXML/PortraitFrame.lua:87
 BottomRightCorner = Texture {
 }
 SetPortraitTextureRaw = <function> defined @SharedXML/PortraitFrame.lua:79
 CharacterInfoHooked = true
 template = "Transparent"
 TopRightCorner = Texture {
 }
 DriftHookSet = true
 ApplyBackdrop = <function> defined @SharedXML/Backdrop.lua:294
 TitleContainer = Frame {
 }
 ClearBackdrop = <function> defined @SharedXML/Backdrop.lua:282
 SetTitleColor = <function> defined @SharedXML/PortraitFrame.lua:32
 GetBackdropBorderColor = <function> defined @SharedXML/Backdrop.lua:409
 Tabs = <table> {
 }
 TopLeftCorner = Texture {
 }
 GetBackdrop = <function> defined @SharedXML/Backdrop.lua:347
 ItemLevelText = FontString {
 }
 SetTitle = <function> defined @SharedXML/PortraitFrame.lua:36
 Inset = CharacterFrameInset {
 }
 SetBorderBlendMode = <function> defined @SharedXML/Backdrop.lua:266
 backdropInfo = <table> {
 }
 SetBackdrop = <function> defined @SharedXML/Backdrop.lua:329
 TokenFrame = TokenFrame {
 }
 PixelSnapDisabled = true
 SetBorder = <function> defined @SharedXML/PortraitFrame.lua:62
 layoutType = "PortraitFrameTemplate"
 SetPortraitAtlasRaw = <function> defined @SharedXML/PortraitFrame.lua:83
 SetTitleMaxLinesAndHeight = <function> defined @SharedXML/PortraitFrame.lua:49
 HasBackdropInfo = <function> defined @SharedXML/Backdrop.lua:278
 SetPortraitToBag = <function> defined @SharedXML/PortraitFrame.lua:75
 PortraitContainer = Frame {
 }
 SetPortraitToUnit = <function> defined @SharedXML/PortraitFrame.lua:71
 OnBackdropSizeChanged = <function> defined @SharedXML/Backdrop.lua:182
 SetPoint = <function> defined =[C]:-1
 DefaultPortraitTextureSizeAndOffset = <function> defined @SharedXML/PortraitFrame.lua:101
 GetPortrait = <function> defined @SharedXML/PortraitFrame.lua:58
 SetScale = <function> defined =[C]:-1
 NineSlice = Frame {
 }
 TopTileStreaks = Texture {
 }
 InsetRight = CharacterFrameInsetRight {
 }
 SetupTextureCoordinates = <function> defined @SharedXML/Backdrop.lua:214
 SetPortraitToAsset = <function> defined @SharedXML/PortraitFrame.lua:67
 SetPortraitTextureSizeAndOffset = <function> defined @SharedXML/PortraitFrame.lua:95
 GetEdgeSize = <function> defined @SharedXML/Backdrop.lua:188
 CloseButton = CharacterFrameCloseButton {
 }
 numTabs = 3
 Bg = CharacterFrameBg {
 }
 SetupPieceVisuals = <function> defined @SharedXML/Backdrop.lua:246
 SetBackdropColor = <function> defined @SharedXML/Backdrop.lua:399
 selectedTab = 1
 SetTitleFormatted = <function> defined @SharedXML/PortraitFrame.lua:40
}
(*temporary) = "TOPLEFT"
(*temporary) = "UIParent"
(*temporary) = "TOPLEFT"
(*temporary) = 16
(*temporary) = -116

This is fixed in Drift v2.2.1.


Create User collection

Moved banned user to user collection

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 4 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.4%) to 47.273%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

internal/bot/update.go
0
4
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.4%

Covered Lines:
104

Relevant Lines:
220

💛  - Coveralls


AStar: implementation of get_point_connections

Add set_point_connections methods to AStar.
Fixes #12567.

Your PR does not pass the static checks of the continuous integration. Please apply clang-format to the modified files and amend your commit :)
See here.

@groud,
Сorrected.

Would you mind adding the documentation for the method?
https://github.com/godotengine/godot/blob/master/doc/classes/AStar.xml

@Noshyaar,
added.

Thank you for contributing!


issue

User story
As a ..., I want to ..., so I can ...
Ideally, this is in the issue title, but if not, you can put it here. If so, delete this section.
Acceptance criteria

[ ] This is something that can be verified to show that this user story is satisfied.

Tasks
If relevant, you can make a checklist for tasks.

[x] This is an incomplete task.

//


Increase size of values in the "additional" map

Is your feature request related to a problem? Please describe.
When you create an entity in the connector, the properties that you pass which are not part of the infomodel will get added to property of the entity of type map and named additional:
E.g. the request POST /api/catalogs with this payload:
{
  "title": "Catalog name",
  "description": "Catalog description",
  "test": "something interesting",
  "important": false
}

Will create this catalog entity:
{
    "creationDate": "2021-11-02T11:11:48.099+0000",
    "modificationDate": "2021-11-02T11:11:48.100+0000",
    "title": "Catalog name",
    "description": "Catalog description",
    "additional": {
        "test": "something interesting",
        "important": "false"
    },
    "_links": {
        "self": {
            "href": "https://localhost:8081/api/catalogs/c1c18f41-db0a-42f1-a32b-cf03980db58b"
        },
        "offers": {
            "href": "https://localhost:8081/api/catalogs/c1c18f41-db0a-42f1-a32b-cf03980db58b/offers{?page,size}",
            "templated": true
        }
    }
}

In the IDS devs meeting on Nov 2, Fraunfofer confirmed that the size of the values in this map is limited to 255 (characters).
Describe the solution you'd like
For the API that creates an artifact, you can pass in an "API key", which is basically just a key-value pair that gets added to the HTTP headers of the request that fetches the artifact's accessUrl. The size of the value in this key-value pair was recently increased, as requested in issue #672.
Suggestions:

Please increase the size of the keys in the map mentioned in this issue (at least) to the same size.
Please document that the content of this additional map is passed to consumers, it has very important security implications.
Please also document the fact that everything gets converted to string before adding it to the additional map.

@juliapampus As this feature request is already addressed by a commit. Can this issue be closed?


two_node_network test in app_tests is failing

Test doesn't connect, which causes subsequent assert to segfault (it tries to get the first connected peer without checking if vector length is nonzero).

@emfrias Possibly related to currently broken p2p code.

don't think so, the p2p errors shouldn't have mattered for that test.  I've identified the change to block_database::open() as the cause (or at least, without that change, app_test passes)
https://github.com/cryptonomex/graphene/commit/2724939ffb5fbb644a1747c1bf630fd99112c2da#diff-76b01416e354adac72143229e73775d8L12

Confirmed fixed by the patch above.

This is still happening:
2912581ms th_a       thread.cpp:95                 thread               ] name:p2p tid:4598190080
2912582ms p2p        node.cpp:4111                 load_configuration   ] generating new private key for this node
2912582ms p2p        node.cpp:968                  trigger_p2p_network_ ] Triggering connect loop now
2912583ms p2p        node.cpp:4227                 listen_to_p2p_networ ] listening for connections on endpoint <IP_ADDRESS>:3939 (our first choice)
2912584ms th_a       application.cpp:85            reset_p2p_node       ] Configured p2p node to listen on <IP_ADDRESS>:3939
2912584ms p2p        node.cpp:875                  p2p_network_connect_ ] Starting an iteration of p2p_network_connect_loop().
2912584ms p2p        node.cpp:1619                 display_current_conn ] Currently have 0 of [20/200] connections
2912584ms p2p        node.cpp:1620                 display_current_conn ]    my id is c2f7efa23930bd8fc964a9bff2f5a2038ba6402b2783a8ae419fe1285978594f95
2912584ms p2p        node.cpp:1619                 display_current_conn ] Currently have 0 of [20/200] connections
2912584ms p2p        node.cpp:1620                 display_current_conn ]    my id is c2f7efa23930bd8fc964a9bff2f5a2038ba6402b2783a8ae419fe1285978594f95
2912584ms p2p        node.cpp:1014                 fetch_sync_items_loo ] beginning another iteration of the sync items loop
2912584ms p2p        node.cpp:1064                 fetch_sync_items_loo ] no sync items to fetch right now, going to sleep
2912584ms p2p        node.cpp:1098                 fetch_items_loop     ] beginning an iteration of fetch items (0 items to fetch)
2912584ms p2p        node.cpp:1169                 advertise_inventory_ ] beginning an iteration of advertise inventory
2912585ms p2p        node.cpp:4364                 dump_node_status     ] ----------------- PEER STATUS UPDATE --------------------
2912585ms p2p        node.cpp:4367                 dump_node_status     ]  number of peers: 0 active, 0, 0 closing.  attempting to maintain 20 - 200 peers
2912585ms p2p        node.cpp:4385                 dump_node_status     ] --------- MEMORY USAGE ------------
2912585ms p2p        node.cpp:4386                 dump_node_status     ] node._active_sync_requests size: 0
2912585ms p2p        node.cpp:4387                 dump_node_status     ] node._received_sync_items size: 0
2912585ms p2p        node.cpp:4388                 dump_node_status     ] node._new_received_sync_items size: 0
2912585ms p2p        node.cpp:4389                 dump_node_status     ] node._items_to_fetch size: 0
2912585ms p2p        node.cpp:4390                 dump_node_status     ] node._new_inventory size: 0
2912585ms p2p        node.cpp:4391                 dump_node_status     ] node._message_cache size: 0
2912585ms p2p        node.cpp:4401                 dump_node_status     ] --------- END MEMORY USAGE ------------
2912587ms th_a       application.cpp:169           startup              ] Allocating all stake to 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
2912590ms th_a       thread.cpp:95                 thread               ] name:p2p tid:4611846144
2912590ms p2p        node.cpp:4111                 load_configuration   ] generating new private key for this node
2912591ms p2p        node.cpp:968                  trigger_p2p_network_ ] Triggering connect loop now
2912592ms th_a       application.cpp:74            reset_p2p_node       ] Adding seed node <IP_ADDRESS>:3939
2912592ms p2p        node.cpp:968                  trigger_p2p_network_ ] Triggering connect loop now
2912592ms p2p        node.cpp:4304                 connect_to_endpoint  ] node_impl::connect_to_endpoint(<IP_ADDRESS>:3939)
2912592ms p2p        node.cpp:4227                 listen_to_p2p_networ ] listening for connections on endpoint <IP_ADDRESS>:4040 (our first choice)
2912592ms p2p        node.cpp:3885                 accept_loop          ] accepted inbound connection from <IP_ADDRESS>:58489
2912593ms th_a       application.cpp:85            reset_p2p_node       ] Configured p2p node to listen on <IP_ADDRESS>:4040
2912603ms p2p        node.cpp:875                  p2p_network_connect_ ] Starting an iteration of p2p_network_connect_loop().
2912603ms p2p        node.cpp:1619                 display_current_conn ] Currently have 1 of [20/200] connections
2912603ms p2p        node.cpp:1620                 display_current_conn ]    my id is f3375cafb5cf73763d22a0ebcb8bff6245beb629fc5e720a45a7c3116bec828a22
2912603ms p2p        node.cpp:1634                 display_current_conn ]    handshaking: <IP_ADDRESS>:3939 with<PHONE_NUMBER>00000000000000000000000000000000000000000000000000000000  [outbound]
2912603ms p2p        node.cpp:883                  p2p_network_connect_ ] Processing "add once" node list containing 1 peers:
2912603ms p2p        node.cpp:886                  p2p_network_connect_ ]     <IP_ADDRESS>:3939
2912603ms p2p        node.cpp:896                  p2p_network_connect_ ] Done processing "add once" node list
2912604ms p2p        node.cpp:1619                 display_current_conn ] Currently have 1 of [20/200] connections
2912604ms p2p        node.cpp:1620                 display_current_conn ]    my id is f3375cafb5cf73763d22a0ebcb8bff6245beb629fc5e720a45a7c3116bec828a22
2912604ms p2p        node.cpp:1634                 display_current_conn ]    handshaking: <IP_ADDRESS>:3939 with<PHONE_NUMBER>00000000000000000000000000000000000000000000000000000000  [outbound]
2912604ms p2p        node.cpp:1014                 fetch_sync_items_loo ] beginning another iteration of the sync items loop
2912604ms p2p        node.cpp:1064                 fetch_sync_items_loo ] no sync items to fetch right now, going to sleep
2912604ms p2p        node.cpp:1098                 fetch_items_loop     ] beginning an iteration of fetch items (0 items to fetch)
2912604ms p2p        node.cpp:1169                 advertise_inventory_ ] beginning an iteration of advertise inventory
2912604ms p2p        node.cpp:4364                 dump_node_status     ] ----------------- PEER STATUS UPDATE --------------------
2912604ms p2p        node.cpp:4367                 dump_node_status     ]  number of peers: 0 active, 1, 0 closing.  attempting to maintain 20 - 200 peers
2912604ms p2p        node.cpp:4382                 dump_node_status     ]   handshaking peer <IP_ADDRESS>:3939 in state ours(just_connected) theirs(just_connected)
2912604ms p2p        node.cpp:4385                 dump_node_status     ] --------- MEMORY USAGE ------------
2912604ms p2p        node.cpp:4386                 dump_node_status     ] node._active_sync_requests size: 0
2912604ms p2p        node.cpp:4387                 dump_node_status     ] node._received_sync_items size: 0
2912604ms p2p        node.cpp:4388                 dump_node_status     ] node._new_received_sync_items size: 0
2912604ms p2p        node.cpp:4389                 dump_node_status     ] node._items_to_fetch size: 0
2912604ms p2p        node.cpp:4390                 dump_node_status     ] node._new_inventory size: 0
2912604ms p2p        node.cpp:4391                 dump_node_status     ] node._message_cache size: 0
2912605ms p2p        node.cpp:4401                 dump_node_status     ] --------- END MEMORY USAGE ------------
2912605ms p2p        node.cpp:1645                 on_message           ] handling message hello_message_type 4591e3bfb6dc6ca1f023f5e01ade5bde736bb9e9 size 526 from peer <IP_ADDRESS>:3939
2912606ms p2p        node.cpp:1961                 on_hello_message     ] Received a hello_message from peer <IP_ADDRESS>:3939, sending reply to accept connection
2912606ms p2p        node.cpp:1645                 on_message           ] handling message connection_accepted_message_type 9c1185a5c5e9fc54612808977ee8f548b2258d31 size 0 from peer <IP_ADDRESS>:58489
2912606ms p2p        node.cpp:4053                 connect_to_task      ] Sent "hello" to peer <IP_ADDRESS>:3939
2912606ms p2p        node.cpp:1986                 on_connection_accept ] Received a connection_accepted in response to my "hello" from <IP_ADDRESS>:58489
2912606ms p2p        node.cpp:1645                 on_message           ] handling message hello_message_type 2285e120b572e5da9ad0187369c811d2dbe77839 size 526 from peer <IP_ADDRESS>:58489
2912606ms p2p        node.cpp:1645                 on_message           ] handling message address_request_message_type 9c1185a5c5e9fc54612808977ee8f548b2258d31 size 0 from peer <IP_ADDRESS>:3939
2912606ms p2p        node.cpp:2043                 on_address_request_m ] Received an address request message
2912607ms p2p        node.cpp:1961                 on_hello_message     ] Received a hello_message from peer <IP_ADDRESS>:58489, sending reply to accept connection
2912607ms p2p        node.cpp:1645                 on_message           ] handling message address_message_type c81b94933420221a7ac004a90242d8b1d3e5070d size 1 from peer <IP_ADDRESS>:58489
2912607ms p2p        node.cpp:1645                 on_message           ] handling message connection_accepted_message_type 9c1185a5c5e9fc54612808977ee8f548b2258d31 size 0 from peer <IP_ADDRESS>:3939
2912607ms p2p        node.cpp:2072                 on_address_message   ] Received an address message containing 0 addresses
2912607ms p2p        node.cpp:1986                 on_connection_accept ] Received a connection_accepted in response to my "hello" from <IP_ADDRESS>:3939
2912607ms p2p        node.cpp:1996                 on_connection_accept ] I don't know if I'm firewalled.  Sending a firewall check message to peer <IP_ADDRESS>:3939
2912608ms th_a       application.cpp:331           get_blockchain_synop ] reference_point:<PHONE_NUMBER>000000000000000000000000000000 number_of_blocks_after_reference_point: 0 result: ["0000000000000000000000000000000000000000"]
2912615ms p2p        node.cpp:1645                 on_message           ] handling message current_time_request_message_type 9738ef4a2c8451a2dcb8210cb6306cf4c182e01c size 8 from peer <IP_ADDRESS>:3939
2912615ms p2p        node.cpp:2284                 fetch_next_batch_of_ ] sync: sending a request for the next items after<PHONE_NUMBER>000000000000000000000000000000 to peer <IP_ADDRESS>:58489, (full request is ["0000000000000000000000000000000000000000"])
2912615ms p2p        node.cpp:1645                 on_message           ] handling message address_request_message_type 9c1185a5c5e9fc54612808977ee8f548b2258d31 size 0 from peer <IP_ADDRESS>:58489
2912616ms p2p        node.cpp:2043                 on_address_request_m ] Received an address request message
2912616ms p2p        node.cpp:1645                 on_message           ] handling message fetch_blockchain_item_ids_message_type 64fb04b7185d8fb73d7c4938215f09bb007b33a0 size 25 from peer <IP_ADDRESS>:3939
2912621ms p2p        node.cpp:2126                 on_fetch_blockchain_ ] sync: received a request for item ids after {"item_type":1001,"item_hash":"0000000000000000000000000000000000000000"} from peer <IP_ADDRESS>:3939 (full request: ["0000000000000000000000000000000000000000"])
2912621ms p2p        node.cpp:1645                 on_message           ] handling message check_firewall_message_type 2a9597be4ab20f69ce57c3504db6327b45617915 size 39 from peer <IP_ADDRESS>:58489
2912621ms p2p        node.cpp:3314                 on_check_firewall_me ] Peer <IP_ADDRESS>:58489 wants us to check whether it is firewalled
2912621ms p2p        node.cpp:2137                 on_fetch_blockchain_ ] reply_message: {"total_remaining_item_count":0,"item_type":1001,"item_hashes_available":[]} fetch_blockchain_item_ids_message_received.blockchain_synopsis: ["0000000000000000000000000000000000000000"]
2912621ms p2p        node.cpp:3288                 forward_firewall_che ] Unable to forward firewall check for node <IP_ADDRESS>:4040 to any other peers, returning 'unable'
2912625ms p2p        node.cpp:2157                 on_fetch_blockchain_ ] sync: peer is already in sync with us
2912625ms p2p        node.cpp:1645                 on_message           ] handling message current_time_reply_message_type 3531dcb1242d6916afd612ef38d10b577a0756fb size 24 from peer <IP_ADDRESS>:58489
2912625ms p2p        node.cpp:1645                 on_message           ] handling message address_message_type ce4826c4f6ff676d31b2e3ceb52f7e07216e8f45 size 54 from peer <IP_ADDRESS>:3939
2912626ms p2p        node.cpp:2072                 on_address_message   ] Received an address message containing 1 addresses
2912626ms p2p        node.cpp:1645                 on_message           ] handling message blockchain_item_ids_inventory_message_type 67c6fdf3cff497eefe3771d6d17fea69791725a4 size 9 from peer <IP_ADDRESS>:58489
2912626ms p2p        node.cpp:2300                 on_blockchain_item_i ] sync: received a list of 0 available items from <IP_ADDRESS>:58489
2912626ms p2p        node.cpp:2315                 on_blockchain_item_i ] sync: peer said we're up-to-date, entering normal operation with this peer
2912626ms p2p        node.cpp:2075                 on_address_message   ]     <IP_ADDRESS>:58489 last seen 2015-06-19T14:48:32
2912626ms p2p        node.cpp:968                  trigger_p2p_network_ ] Triggering connect loop now
2912626ms p2p        node.cpp:1645                 on_message           ] handling message current_time_request_message_type 1df558adec4d89665ae24e526ed87629fc529a5c size 8 from peer <IP_ADDRESS>:58489
2912626ms th_a       application.cpp:331           get_blockchain_synop ] reference_point:<PHONE_NUMBER>000000000000000000000000000000 number_of_blocks_after_reference_point: 0 result: ["0000000000000000000000000000000000000000"]
2912626ms p2p        node.cpp:2284                 fetch_next_batch_of_ ] sync: sending a request for the next items after<PHONE_NUMBER>000000000000000000000000000000 to peer <IP_ADDRESS>:3939, (full request is ["0000000000000000000000000000000000000000"])
2912627ms p2p        node.cpp:1645                 on_message           ] handling message fetch_blockchain_item_ids_message_type 64fb04b7185d8fb73d7c4938215f09bb007b33a0 size 25 from peer <IP_ADDRESS>:58489
2912627ms p2p        node.cpp:1645                 on_message           ] handling message check_firewall_reply_message_type 67ac11705e711367106a8f116afc6276d89f4b25 size 40 from peer <IP_ADDRESS>:3939
2912627ms p2p        node.cpp:2126                 on_fetch_blockchain_ ] sync: received a request for item ids after {"item_type":1001,"item_hash":"0000000000000000000000000000000000000000"} from peer <IP_ADDRESS>:58489 (full request: ["0000000000000000000000000000000000000000"])
2912627ms p2p        node.cpp:3413                 on_check_firewall_re ] Firewall check we initiated has returned with result: unable_to_check, endpoint = <IP_ADDRESS>:4040
2912627ms p2p        node.cpp:2137                 on_fetch_blockchain_ ] reply_message: {"total_remaining_item_count":0,"item_type":1001,"item_hashes_available":[]} fetch_blockchain_item_ids_message_received.blockchain_synopsis: ["0000000000000000000000000000000000000000"]
2912627ms p2p        node.cpp:2157                 on_fetch_blockchain_ ] sync: peer is already in sync with us
2912627ms p2p        node.cpp:1645                 on_message           ] handling message current_time_reply_message_type b175979ed3d82dc1ad8149d12149b658ea6ec731 size 24 from peer <IP_ADDRESS>:3939
2912630ms p2p        node.cpp:2719                 on_connection_closed ] Remote peer <IP_ADDRESS>:58489 closed their connection to us
2912630ms p2p        node.cpp:1619                 display_current_conn ] Currently have 0 of [20/200] connections
2912630ms p2p        node.cpp:1620                 display_current_conn ]    my id is c2f7efa23930bd8fc964a9bff2f5a2038ba6402b2783a8ae419fe1285978594f95
2912630ms p2p        node.cpp:968                  trigger_p2p_network_ ] Triggering connect loop now
2912630ms p2p        node.cpp:1528                 schedule_peer_for_de ] scheduling peer for deletion: ${peer} (this will not block)
2912630ms p2p        node.cpp:1533                 schedule_peer_for_de ] asyncing delayed_peer_deletion_task to delete 1 peers
2912631ms p2p        node.cpp:1492                 delayed_peer_deletio ] beginning an iteration of delayed_peer_deletion_task with 1 in queue
2912631ms p2p        node.cpp:2719                 on_connection_closed ] Remote peer <IP_ADDRESS>:3939 closed their connection to us
2912631ms p2p        node.cpp:1619                 display_current_conn ] Currently have 0 of [20/200] connections
2912631ms p2p        node.cpp:1620                 display_current_conn ]    my id is f3375cafb5cf73763d22a0ebcb8bff6245beb629fc5e720a45a7c3116bec828a22
2912631ms p2p        node.cpp:968                  trigger_p2p_network_ ] Triggering connect loop now
2912631ms p2p        node.cpp:1528                 schedule_peer_for_de ] scheduling peer for deletion: ${peer} (this will not block)
2912631ms p2p        node.cpp:1533                 schedule_peer_for_de ] asyncing delayed_peer_deletion_task to delete 1 peers
2912631ms p2p        node.cpp:1492                 delayed_peer_deletio ] beginning an iteration of delayed_peer_deletion_task with 1 in queue
2912631ms p2p        node.cpp:1495                 delayed_peer_deletio ] leaving delayed_peer_deletion_task
2912631ms p2p        node.cpp:1495                 delayed_peer_deletio ] leaving delayed_peer_deletion_task
tests/app/main.cpp:64: fatal error in "two_node_network": critical check app1.p2p_node()->get_connection_count() == 1 failed [0 != 1]
2913107ms th_a       node.cpp:4933                 close                ] ....   On other runs, it connects and passes just fine.

Appears to be fixed.


Value/Alias Nodes default to up-to-date

Just looking to confirm the behavior here (I think I tracked down the bug/error), just want to make sure this is actually a bug (and not expected behavior).
SCons 4.1.0
TLDR; File: SCons/Node/__init__.py, Method: children_are_up_to_date -- Return when no Node children exist (state==0)=True, this correct ?
Test:
Create an Alias/Value node and drop them as a dependency of something else that will be built (or force them to be part of the build in any other chosen way). In my use-case I'm abusing an Alias (for it's unique namespace ability), using a Value() as it's target and running an Action() when this target changes.
Now what I believe is a bug. The action of my Alias above will not be executed (so long as only Alias/Value nodes are the only children of this node). This seems to occur because the Alias/Value node will be considered to be up-to-date (as per code, so long as it's children are considered up-to-date, which when no children exist, by the class method is True). Intuitively, I think this should be the opposite (always, if not at least by default). i.e. Alias/Value nodes default to being NOT up-to-date.
As a workaround to make the above scenario work, I'm currently using AlwaysBuild() on these node types to get them to be considered not up-to-date (as this condition is early-exit checked in the that method, forcing the node to not be up-to-date).

Can you create a simple reproducer for us to look at?

Also try the latest version of SCons 4.3.0.
Which version of Python?
Which OS?
All the questions which are in the issue template which you seem to have ignored/deleted...

Please bring your issue to the SCons users mailing list before filing an issue here
See: https://scons.org/bugs.html
or join our Discord server : https://discord.gg/bXVpWAy
Describe the bug
A clear and concise description of what the bug is.
Required information

Link to SCons Users thread discussing your issue.
Version of SCons
Version of Python
Which python distribution if applicable (python.org, cygwin, anaconda, macports, brew,etc)
How you installed SCons
What Platform are you on? (Linux/Windows and which version)
How to reproduce your issue?  Please include a small self contained reproducer. Likely a SConstruct should do for most issues.
How you invoke scons (The command line you're using "scons --flags some_arguments")

I didn't get an issue template when creating this issue. However, seeing it now I'll fill in the questions and resubmit via the mailing list.

That's odd.  Did you click create issue and the bug buttons on github?
If you can join the discord server, that tends to be a bit more interactive to work on such..

Ah I see. Yes I created an issue in that manner. However, I didn't select Bug/Feature but went with a blank issue (as I wasn't sure if this was defined behavior or actually a bug). In any case I've bounced this issue onto the users mailing list.

Ah I see. Yes I created an issue in that manner. However, I didn't select Bug/Feature but went with a blank issue (as I wasn't sure if this was defined behavior or actually a bug). In any case I've bounced this issue onto the users mailing list.

Interesting.. Didn't realize you could do such! Learn something new every day.. ;)
We'll have to disable the blank issues to avoid this going forward.

@bdbaddog Confirmed behavior of Alias/Value Node's is correct. When both Node's are created they are in an up-to-date state (and with thus not be built, unless explicitly requested, via AlwaysBuild()).


L.divIcon incompatible with marker alt text

Hello, I'm using latest leaflet stable 0.7.3.

After creating a marker with a "regular' L.Icon and an alt text option set,
I change icon on certain user action using setIcon();
If the new icon is a L.divIcon one (only, no problem if not), the alt text wil disappear from the DOM.
If a change again and set the first icon, alt text comes back.

If I create a marker directly with a divIcon, there is no alt text at all.

--> DivIcon has no "alt text capabilities" ?
It is maybe intended, because documentation says : "DIvIcon Represents a lightweight..."
Note : I'm using divIcon in this case for animation of icon using css @keyframes. My divIcon is created like this :
var DraggableIcon = L.DivIcon.extend({ options: { className: 'drag-icon', iconSize :[38, 95], iconAnchor : [22, 94], popupAnchor : [-3, -76]} });
var dragIcon = new DraggableIcon({className: 'drag-icon'});

This works as intended since alt attribute is only defined for img, area and input elements: http://devdocs.io/html/attributes#alt
To make divIcon accessible, you could add some text inside the HTML and then hide it with CSS.

Of course! No alt attribute for div. Sorry I was sleeping :)
Actually, I use alt for accessibility and for adding a "hard coded" link between leaflet markers and their DOM representation : I put marker._leaflet_id (plus some text) in there in order to retrieve my markers (whose I put in an markerMap array) on some actions not covered by leaflet ($(document).keyup, ...)
It is a bit tricky but it works. That's why the lack of alt on divIcon made my code break :)
Sorry for disturbing and thanks for your reply


Support keyboard navigation on pagination

Do you want to request a feature or report a bug?
Feature.
A best practice for page navigation 💃

Support enabled | disable mode.
Support custom keys, default Left Arrow and Right Arrow.

What project are you opening an issue for?

react-instantsearch

@vinhlh Using connectPagination along with https://github.com/avocode/react-shortcuts or https://github.com/chrisui/react-hotkeys I believe you should be able to achieve what you want.
Then should our own widgets handle that for you and expose that to the user, that's a tricky question. @Shipow do you think our pagination widget should implement keyboard shortcuts abilities by default?
We did implement shortcuts for the searchbox for instance because multiple websites had defined default shortcuts to access searchboxes. As for pagination do you know any very common website that had implemented it?
Maybe first we could do a guide if this is something people are looking for.

@vvo thanks 👍  I believe that's all I need.
We should not put this feature into the library, connectPagination is too good enough.
And keyboard navigation is not really common, it's only available on some kinds of web application.


[Feature request] Work when logged out

Some sites will serve images differently depending if you are logged in or not.
Document these sites and handle the specific instances.
Pixiv is known to do something with this.

Twitter will show logged in users a different version than logged out users.


@AfterClass config method is executed for EACH @Test method when parallel == methods

TestNG Version
7.5 (also reproducible in previous releases: 7.3.0)
Expected behavior
a configuration method annotated with @AfterClass is executed only ONCE after all @Test methods in the class are finished
Actual behavior
a configuration method annotated with @AfterClass is executed multiple times after all @Test methods in the class are finished
Is the issue reproducible on runner?

[ ] Shell
[ ] Maven
[ ] Gradle
[ ] Ant
[ ] Eclipse
[x] IntelliJ
[ ] NetBeans

Test case sample
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

public class ATest {

    @BeforeClass
    public void setup() {
        System.out.println("BEFORE_" + Thread.currentThread().getName());
    }

    @AfterClass
    public void tearDown() {
        System.out.println("AFTER_" + Thread.currentThread().getName());
    }

    @Test
    public void testa() {
        System.out.println("testa_" + Thread.currentThread().getName());
    }

    @Test
    public void testb() {
        System.out.println("testb_" + Thread.currentThread().getName());
    }
}

Output:
BEFORE_TestNG-test=tqa-1
testb_TestNG-test=tqa-2
testa_TestNG-test=tqa-1
AFTER_TestNG-test=tqa-1
AFTER_TestNG-test=tqa-2

It looks like inst is never actually added to the m_classMethodMap.getInvokedAfterClassMethods()
https://github.com/cbeust/testng/blob/0ace1d4bdfc4f8c5ccd0849ad4768f4dd08146fd/testng-core/src/main/java/org/testng/internal/invokers/TestMethodWorker.java#L201-L206
 Set<Object> instances =
     invokedAfterClassMethods.computeIfAbsent(testClass, key -> Sets.newHashSet());
 Object inst = mi.getInstance();
 if (!instances.contains(inst)) {
   invokeInstances.add(inst);
   instances.add(inst);
 }


Rename master, fix publish.py and delete output folder

There is a big difference in the logic used to merge all the tables. I'm
still not sure it's the right thing to do, but we need more time to think
about it, write test cases, etc.
I'm solving the issue I mentioned in chat about the filesystem playing a
role in the order of the merges. To mitigate that, I'm joining with all
possible dates first to ensure no date or region gets dropped. Since all
merges are left outer joins, order no longer matters.
The main difference in the output is that now there are records for all
regions which are described in metadata.csv, even if they do not have any
epidemiological data, as long as at least one column outside of what's in
index.csv is not null. Tables like weather and mobility have very
comprehensive data sources so that ensures that almost no combination of
key-date gets dropped.
I think it's a good thing, but it makes the output significantly bigger.
On Wed, Jul 1, 2020, 23:49 Matthew Lee<EMAIL_ADDRESS>wrote:

@geening commented on this pull request.
In src/lib/net.py
https://github.com/open-covid-19/data/pull/209#discussion_r448732407:

 """ https://stackoverflow.com/a/37573701 """

headers = {"User-Agent": "Mozilla"}

headers = {"User-Agent": "Safari"} if spoof_browser else {}

Looks good, the one thing I would suggest if you haven't already done it
is to run the old and new versions of publish.py on the same inputs and
compare their outputs. As I understand it, the only changes to publish.py
are renaming of "master" to "main" and separating out the v1 stuff into the
separate backcompat script, correct?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/open-covid-19/data/pull/209#discussion_r448732407,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJ4H6HKCHEQWG5KUGBTUB3TRZP7S3ANCNFSM4OM5OIYQ
.


Release proposal: v1.44.0

We have some very notable changes:

[x] build regression fixes for various platform updates (#3428, #3419, #3423, #3413, #3431)
[ ] release tool improvements (https://github.com/libuv/libuv-release-tool/pull/13)
[x] better performing rw locks on Win32 (#3383)
[ ] support for posix_spawn API (https://github.com/libuv/libuv/pull/3257)
[ ] TCP resource management bug https://github.com/libuv/libuv/pull/3462

among other minor commits.

The neovim people seem to have hit a regression on openbsd in neovim/neovim#17219.

...which it looks like is fixed by https://github.com/libuv/libuv/pull/3428.

Nice, thanks for investigating. One more reason to get the release out. :-)

libuv Jenkins CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/2221/. Only the ipc_closed_handle test failed, which is nothing new.
Node.js + libuv integration CI: there is a green run between https://ci.nodejs.org/view/libuv/job/libuv-in-node/201/ and https://ci.nodejs.org/view/libuv/job/libuv-in-node/203/.
:shipit:

Hello! Is there anything holding up the release at this point?

Turned out to need a small bugfix still, which I missed in my reviews
How is https://github.com/libuv/libuv/pull/3462 going?

If there are still some things waiting to land, maybe we should cut a release to address the regression and the other changes can go out in the next release?

Yes, let's do that. #3462 isn't very important and #3257 isn't ready yet, it looks like.

https://github.com/libuv/libuv/pull/3257 is not far

Can we quantify "not far" here? Are you opposed to cutting two separate releases? I'm happy to take over this one if that will help.

...which it looks like is fixed by #3428.

That fixed the crashes we were seeing, but now the problem has changed to hangs.  Reverting back to 1.42.0 gets things stable again.  I can try and bisect what specifically introduced the problem.
I'm not sure if you have people that support the OpenBSD side of things, but it might be good to have it in CI.  We use sr.ht for that (and FreeBSD) in neovim.

I'm not sure if you have people that support the OpenBSD side of things

Don't think so. Volunteers welcome, of course. :-)

I expect that needs someone to set up accounts, credentials, etc.? I'm not volunteering but I'm happy to answer questions of anyone who does.

On the subject of the release: #3257 seems to have left a number of systems in a broken state. I'm inclined to revert, release, re-apply and sort out the damage later. The last release was three months ago, I don't want to keep stacking up things indefinitely.
@vtjnash @cjihrig Your thoughts?

There is an easy fall-back for that, just unexpected to need it for something required by POSIX over 20 years ago

+1 to reverting and releasing as soon as we can do so.
Regarding OpenBSD CI - is that something we could incorporate into the GitHub Actions CI?

Regarding OpenBSD CI - is that something we could incorporate into the GitHub Actions CI?

After a little searching, I found https://github.com/cross-platform-actions/action which looks promising.

I don't want to sidetrack this issue too much. Would you mind opening a new issue regarding OpenBSD in the CI. We already have a QEMU based CI that we might be able to extend.

We are hopefully closing in on a release, since I have prepared a fix that simply does detection if it is available in the build environment (https://github.com/libuv/libuv/pull/3512)
However, https://github.com/libuv/libuv/pull/3499 also broke zOS, so we still not quite converging to a stable state yet.

CI looks good now:
https://ci.nodejs.org/view/libuv/job/libuv-test-commit/2233/
https://ci.nodejs.org/view/libuv/job/libuv-in-node/209/


Adding KB (timekeeping-best-practices-for-windows-servers.md)

timekeeping-best-practices-for-windows-servers.md

Made the change you suggested in a new commit.