I'm using a Samsung Chromebook Plus v2 (NAUTILUS) Core m3 variant (Kaby Lake), I know this laptop doesn't support SOF, so I tried the NAMI board method to get sound working, but didn't get any positive results.
I did everything according to your instructions. After creating the flash drive, I updated the kernel to the ALT version (uname shows 5.10.70), but the setup-audio gives me an error
cp: cannot stat '/mnt/usr/share/alsa/ucm/kblda7219max.nami': no such file or directory.
Maybe I miss something?
For build.sh used Ubuntu Impish 21.10 with KDE and KEYMAP feature.
Everything else working perfect btw.

I feel like you have a different SKL audio device. What's the output of dmesg from the ChromeOS shell (not Crostini)?

For me, if i understand it correct, i hame kblda7219max audio divece.
Here the output
dmesg_output.txt

I think (within Breath) running rm -rf /usr/share/alsa/ucm2/kblda7219max*, and then:
export SND_BOARD=.nautilus

would work. If it doesn't, what does ls /usr/share/alsa/ucm/ output from ChromeOS?

Still get same error but with 'kblda7219max.nautilus'
Output for ls /usr/share/alsa/ucm is only one file README.md

What about ls /usr/share/alsa/ucm2 and lsmod?

Outputs that you requested
ls_ucm2_output.txt
lsmod_output.txt

This is interesting. What about find /usr/share/alsa/ucm2?

It find some folders
find_output.txt

From Breath, run modprobe snd_soc_kbl_da7219_max98357a, alsa reload, and then post the output of dmesg.

I done commands modprobe snd_soc_kbl_da7219_max98357a, alsa reload, ALSA was not installed, I got install alsa-utils and alsa-base, then retype these commands.
Output for dmesg
dmesg_log.txt

Seems like it's already working. Does speaker-test work after running apt remove pulseaudio* pipewire*?

Unfortunately no sound at all
speaker-test says that 'Playback device - default' and 'Unable to set hw options for playback: invalid argument', also 'Error setting hwparams: invalid argument'
pulseaudio and pipewire deleted

Also i have issue with sound control panel. It was completely removed by setup-audio script and i cant get it back. Even in KDE settings panel, there are no any setting for 'Audio' or 'Speaker'.

This is our primary issue:
[  205.992292]  Kbl Audio Port: ASoC: no backend DAIs enabled for Kbl Audio Port
[  205.992297]  Kbl Audio Port: ASoC: dpcm_fe_dai_prepare() failed (-22)

IIRC using the correct UCM would fix this, I'm pretty sure this is not a topology/kernel issue.
Download this and this and put both of those files (don't change their name) into /usr/share/alsa/ucm2/kblda7219max.
After that, run:
export SND_CARD=kblda7219max
sudo sed -i '1s/^/Syntax 2\n/' /usr/share/alsa/ucm2/${SND_CARD}/${SND_CARD}.conf
sudo sed -i '/Pin/{/Mux/ d}' /usr/share/alsa/ucm2/${SND_CARD}/HiFi.conf

Reboot, and then run:
modprobe snd_soc_kbl_da7219_max98357a && alsa reload && sleep 2 && alsaucm -c kblda7219max set _verb HiFi set _enadev Speaker

Do speaker-test, post dmesg, and post the link/file created by sudo alsa-info.

Hrm, speaker test is try to play some sound for left and right speaker, but nothing has changed, still no sound.
dmesg_log.txt
Link from alsa-info http://alsa-project.org/db/?f=24609afdd173ecd2df91d6a5f29b7bd1dd072940

I think you can fix this by playing around with alsamixer settings. Run the alsamixer command, and then press Space to enable/disable audio outs like SPK or Headphone.

@furnzo can you add me on discord : commando29#0615
Your issue needs more investigation.

I am closing this issue for inactivity

Closing because no answer, join our discord to make audio working (kabylake support is done).
https://discord.gg/WatsaYhXCa


Add guide for UTF8 usage

I thought it would be useful to have one place that covers UTF-8 from end-to-end -- scrape configuration, instrumentation, and querying.

squashed down and added coauthor line


twig branch for markdown consistency

superseded by https://github.com/openziti/ziti-doc/pull/314 due to protected branch hook prohibiting pushing unsigned commit


Piece move animations

I think this could be challenging depends on the animation we want. as every move you make creates a new board meaning we render the entire board every time.

I've merged the PR, thanks. I'm closing the issue, but still noting that we will need to consider how to handle animations better in the future. Specifically:

Variety of animations in different situations (Move, victory, mistake, wrong piece etc)
Different animations (possibly tied to themes)
Whether to use a library such as Mo.js


iOS OGG stream support

Firstly, thank you for your work on this library. It's a great solution for most of our needs.
But, we've discovered that OGG icecast streams will not play on iOS (works on Android), and throws an error code 0. I understand that iOS does not natively support OGG, and MP3 is working fine, so we tried to think of a workaround solution to transcode our streams to MP3 server side, but came to the conclusion it would create too much overhead for us.
Do you have any tips on how we could get this to work with OGG audio streams, or if you plan to introduce OGG support?
Much appreciated!

Hi @Guichaguri Any plans to target this?

hi there, any updates about this issue ?

Any updates?

ping

please

Any updates?

any update?

@mathews-p please help me I have an issue in react-native-video player  #1137 please let me know what is happning

Any update?

right now we've been focusing on the release of v2 we hope to add support for ogg on iOS after that!

Added to Project Backlog as a Feature Request. We can then review if this is or will be done in v2.

Curious if there are still plans to revisit this at some point.

any update on this ? or is there any way to play ogg files. If there plz tell me

Any update on this? @dcvz


Search packages and casks faster with using caches

A detailed description of the proposed feature
Search packages and casks faster with using caching.
The motivation for the feature
Ubuntu has the provides this functionality apt-cache search .
How the feature would be relevant to at least 90% of Homebrew users
You can list all available cask (or package) more quickly which allows to search for the needed cask (e.g. with fzf). Therefore a cask can be more quickly installed.
What alternatives to the feature have been considered
none

brew search is cached it just also searches the API. What command are you finding slow specifically?

I see. That speed is expected as we're written in Ruby and not C and generally have a fairly slow boot time.


CX Utilities/CodeGenUtil model validation bugs

There have been instances where it seems that when Model Validation is done via the CX CodeGenUtils class, that sometimes no failures are returned when, if those models were selected individually and the "right-click-validate" option provided by RSA is selected, then the validation will fail. The CodeGenUtil class also returns some model errors where RSA shows the model as valid.
We use the CodeGenUtil object you provide to validate models, generate IDL, and generate descriptors in two different ways. We have written a bash script that invokes one of our Java classes to call the CodeGenUtil object’s “validateModel()”, “generateIDL()”, and “generateDescriptors()” methods. We also provide an Eclipse menu option for CX Utilities that allows users to check all models in their workspace and validate them or generate model artifacts for multiple models instead of the need to right click every model the RSA way. Both our command line tool and Eclipse menu option invoke the CodeGenUtil methods the same way.
We are seeing issues where model validation is not consistent with the RSA output (which seems to be the correct output). Comparing the output to the RSA “right-click” method of validating models and generating model artifacts, we have noticed some issues. The RSA right-click method correctly validates clean models and correctly invalidates broken models. The CodeGenUtil object validates models that the RSA right-click method finds errors in and finds errors where the RSA right-click method finds none.

More information from email traffic:

We have seen about 2 different types of issues:

The CX utilities provided to us, wrapped as a plugin that we can call from the command line finds issues that RSA does not
a.	Unfortunately, no information is provided, so creating a test model to give to you might takes some work
b.	We believe these issues might be false positives.
The CX utilities provided to us, wrapped and called within eclipse as a menu contributor, does not catch model validation issues for UML modeling or the issues mentioned above.
a.	Specifically, it does not catch issues in Sequence and class diagrams
b.	A model to reproduce this is simple as any asynchronous/synchronous calls between life lines that have missing fields will show this
c.	The CX Utilities call from the command line, specified above does catch these errors.

One thing we would like is to have the validation capabilities be exactly the same as the RSA right click menu. If this can be done by tapping into IBMs API’s (if they exist) that might be the easiest route. Otherwise, we will continue working to gather the resources to provide you examples and possibly our plugin code for you to use to reproduce our issues.

We have identified the difference between validation done from the CX Utilities and Validate menu item. A fix is currently being reviewed.

In testing, We found two bugs.

Now, in order to run CX validation, the models have to be open in the worspace otherwise we get a URI error. This renders our script useless as none of the projects are open when we spawn the test from the command line and makes using the tool from the workspace tedious.
The validation tool finds errors in all DDS based models where a component port (DDS_Listen or Write) connects to a DDS EVENT.  When debugging, I can see the statuses children and they all say "Status INFO: com.ibm.xtools.uml.validation code 25007 Connector "<> " must connect at least one required interface to a compatible provided interface. null

with a different error code of 12."

@J17359 : Your utility is running headlessly, with a custom developed 'application', right? In order to open RSA models correctly, we moved to using IBM's UMLModeler class. But, that class requires a running workbench, which I imagine does not exist in your case.
If the above is the case, then the only solution I am aware of is to make your application start a workbench. You can see this pattern in the Eclipse Ant plugin, specifically, this class:
https://git.eclipse.org/c/platform/eclipse.platform.git/tree/ant/org.eclipse.ant.ui/Ant Tools Support/org/eclipse/ant/internal/ui/WorkbenchAntRunner.java
It starts a workbench, and installs an 'advisor' which gets notified when the workbench is up, allows Ant Runner to do the real work. When the advisor is done, it shuts down the workbench.
Also, we will look into disabling the offending IBM validation.

@elder4p - That is correct. Our command line application tells Eclipse to headlessly run a Java plugin we wrote that invokes "CodeGenUtil"'s validate method on models we specify in a given Eclipse workspace.
I notice IBM's "UML Model Validation" menu option doesn't require the model to be opened first. Is this separate from this "workbench" you're talking about? Meaning, once we start this "workbench" we won't need to open models in order to validate them, correct?

@J17359 : Yes, I believe that if you start a workbench from your 'headless' application, then magically, all the models will open for you.

@tuhin-github : Can you test and confirm that if CodeGenUtil will indeed open models that are closed. You can do your tests from a running workbench.

@J17359 : In reviewing the current code, we discovered that CodeGenUtil was not correctly opening closed models. Pull request #34 has addressed this. Can you try your headless application again? It may be that you do not need to follow the headless-workbench pattern I suggested yesterday.
We are still investigating how to turn off that IBM validation on connections from pub-sub ports. That will be a separate commit.

@elder4p We'll test our headless app against your master branch and get back to you. Thanks for the quick turn around!

@elder4p The fix to allow us to open closed models works in both our headless application and when RSA is open. Also, I noticed the validation error that we see seems to be just an information message, but the returned status is marked as not okay (status.isOK() == false).  Should we not use the IStatus method "isOK" but instead just check if the "getSeverity" method returns 2, 1 or 0? Or would you be able to have "isOK" return true if no errors occured??

@J17359 : The documentation for IStatus.isOK says that is is true only if the status is "neither info, warning, nor error". You might change your code to:
IStatus status = ... do your call ...; if (status.isOK() || status.matches(IStatus.INFO)) {     ... everything is fine ... }
By the way, you can OR together multiple status codes in matches(), if you want to check for multiple results.

Thanks again @elder4p. @j26151 will make the Java changes on our end tomorrow to allow INFO statuses and test to make sure there are no other errors in our model validation (via both our command line app and our graphical util).

@J17359 : Great. Once you've confirmed everything works, we'll close this issue (again).

I believe everything looks good. Feel free to close the issue.

Resolved via #24, #34 and #35. Closing


Add Webhook Unit Test Suite

This PR adds a comprehensive unit test suite for the Ray TPU webhook. These unit tests can be run with the command go test from the applications/ray/kuberay-tpu-webhook folder. These tests cover 75.3% of statements in the webhook including all major pieces of logic.
This PR also updates some of the logic in the webhook code to resolve corner cases found during testing. This includes adding a getNumTPUChipsRequested function which returns the google.com/tpu request value of a container, using that value to calculate the # TPU VM hosts for a given TPU worker group (rather than using acceleratorType to guess the machineType). This PR also removes the headlessServiceName var and instead dynamically generates the headless service name for any given cluster.
A follow-up PR will add end-to-end tests for the webhook.
This PR has been tested with:

[x] Unit tests
[x] Manual tests

/gcbrun


[Provisioning V2 UI, RKE2] On provisioning a new node, a warning should show if this can break apps

Note: Annotations will be introduced to all charts by the backend team, as prescribed in https://github.com/rancher/rancher/issues/36401.
Note: This issue should not be validated by QA until the backend issue is complete; however, UI can proceed with the changes assuming the defaults for these annotations described in the original ticket for all current charts.
UX Change
When a user tries to provision a new node, the Rancher UI should grab:

Set of all OSs currently running on nodes in this cluster (hasOS)
Set of all archs used by nodes in this cluster: (hasArch)

If the current OS or arch that will be added is already tracked in hasOS or hasArch, no further steps are required.
If not, we should show a warning that says adding this node could potentially break existing apps in your cluster or may require them to be upgraded in place, so after provisioning a user should navigate to the Installed Apps page and ensure that no apps show warnings.
Dependent on https://github.com/rancher/dashboard/issues/5057, which will show a user what broke as a result of the addition.

note: I edited the issue description to use catalog.cattle.io/deploys-on-os instead of catalog.cattle.io/os since catalog.cattle.io/os has an older definition that would break older Rancher setups if we choose to modify what it means.
Description should be up-to-date now with the expectations.

Rancher Version
v2.6-head b26b920
Steps:

Create a Custom cluster for RKE2 using 1.22.7
Add one linux controlplane and one linux worker
Deploy chart from apps and marketplace, I picked CIS Bencharks chart
Go back to cluster management and register a Windows worker node

Outcomes
Expected to see a warning when adding the Windows node for provisioning. No warning was given.

This issue is going to be superceded by a previous dashboard issue which captures everything and has all PRs linked up. You can see context https://github.com/rancher/dashboard/issues/5137#issuecomment-1062323770


Made bottom button functional, changed the footer paragraph

I made the button bottom button on navbar functional, corrected the grammatical errors in header and updated the footer paragraph.

Resolve the conflict

@goodchai0 Done, conflicts resolved !


GLIBC version mismatch when running pre-compiled 2.0.1 binaries on a Raspberry Pi 3B+

Howdy!
I'm trying to run espflash on my Raspberry Pi 3B+. I downloaded the 2.0.1 espflash-armv7-unknown-linux-gnueabihf.zip binary here from GitHub and placed it on my Raspberry Pi.
When executing espflash on the Pi, I get the following errors:
espflash: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.33' not found (required by espflash)
espflash: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.32' not found (required by espflash)
espflash: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.34' not found (required by espflash)

Version 1.7.0 of espflash does not yield such errors.

I have not yet tried reflashing my Raspberry Pi with a fresh version of Raspbian. What I have done, is following this guide in an attempt to ensure that my Raspberry Pi is up-to-date.
Running ldd --version on the Pi yields:
ldd (Debian GLIBC 2.31-13+rpt2+rpi1+deb11u5) 2.31
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

Further, uname -a gives:
Linux raspberrypi 6.1.41-v7+ #1667 SMP Wed Jul 26 17:52:08 BST 2023 armv7l GNU/Linux
And, finally, running cat /etc/os-release produces:
PRETTY_NAME="Raspbian GNU/Linux 11 (bullseye)"
NAME="Raspbian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

I'm happy to provide more information, if needed.

As a small update, I can tell that creating a release targeting Ubuntu 20.04 instead of 22.04, as done in this example https://github.com/LeCyberDucky/espflash/commit/57265f5ca4d61a35857fb056f893071dd9343dd0 yields a binary that will run on my Raspberry Pi without GLIBC errors. https://github.com/LeCyberDucky/espflash/releases/tag/v2.0.1
Thanks to the esp-rs matrix channel for the help :)

This should be resolved by #476, we will have a new release out in a week or two and new binaries will be built at that time.


psims dependency error

psims >= 0.1.35 causes Bruker API to throw Boost interprocess error on Linux
psims <= 0.1.45? causes the following error when trying to write out ion mobility arrays (this does not occur if --exclude_mobility flag is included):
File "~/psims/mzml/writer.py", line 549, in spectrum array, encoding=encoding[array_type], compression=compresssion, array_type=array_type, TypeError: unhashable type: dict

only occurs when using timsconvert backend

Boost interprocess error is most likely caused by use of pynumpress package.

If you can tell me what array_type is when it's blowing up, I can patch it up.

If you can tell me what array_type is when it's blowing up, I can patch it up.

Thanks for the offer, though I believe it's already been fixed in one of your updates last year/earlier this year. I realized I was using the newer array_type (tuple (array_type, array)) instead of the older one (tuple (str name, array)). This has been temporarily fixed.
This is more of a Bruker API issue that requires older versions of psims (<= 0.1.34) before pynumpress began being used. I don't know exactly how/why, but pynumpress doesn't seem to work well with the logger in Bruker's API on Linux. My current thoughts were to fork the current version of psims and use the older version of psims/mzml/binary_encoding.py that didn't use pynumpress. Though if there's a better solution I'm all ears.

It'd be simple enough to block the import of pynumpress via an environment variable.
What's the actual error that the Bruker library generates when pynumpress is imported?

It's boost::interprocess::interprocess_exception referenced in issues 8 and 13.
``>>>>>>>>|- ERROR in [bdal-logconf:logger_config.cpp:379] - XML analysis error: The resulting configuration is unusable - Falling back to default configuration:
Dynamic exception type: std::bad_cast
std::exception::what: std::bad_cast
terminate called after throwing an instance of 'boost::interprocess::interprocess_exception'
what(): boost::interprocess::intermodule_singleton initialization failed
.command.sh: line 3: 79273 Aborted``
Also, I'm not sure if this helps but this error has also occurred in MSFragger before.

I've added an environment variable PSIMS_NO_PYNUMPRESS which if it has a non-empty value will skip importing pynumpress and its features will be disabled in release v0.1.47.

I've added an environment variable PSIMS_NO_PYNUMPRESS which if it has a non-empty value will skip importing pynumpress and its features will be disabled in release v0.1.47.

Thank you for that. Unfortunately, the error still appears without loading pynumpress, so I will need to look into this issue again to see if I've missed something.

This appears to have been fixed as of 62ef7b2e4af17b95fde8f753424cad8dda8fa921 which uses psims 1.2.7.
TIMSCONVERT 1.5.0 was tested on Python 3.11.5 installed with Anaconda 2023.7-2 on Windows 10 22H2 and Ubuntu 22.04.3 LTS.


Set main process to fix standardized node import

Should probably solve https://github.com/vestusola/vue-chat-emoji/issues/6

Please do make a new release once possible! 😄

Please do make a new release once possible! 😄

Will do that.

Is the typescript issue solved #7 ?

Is the typescript issue solved #7 ?

Not as of yet, that one requires some more work


Can`t attach plots

Hi, why can't I attach my Chia plots?
win10

Close and open the client... Probably won't work then anyway though because it's beyond broken right now

I have the same problem

SOLUTION- for windows go to users/mypc/ and delete all the chia related files except the .chia file...then log in again in spare...I did this it worked for me


Contribution messages

🍰 Pullrequest
The Contribution Messages System for frontend and admin area.
graphql

creat contribution message for user
creat contribution message for admin

frontend

messages in contribution list

Issues

fixes #2132
fixes #2133

Merged

merge #2149
merge #2161
merge #2142

https://user-images.githubusercontent.com/1324583/187176838-056f4aa7-7f4e-434e-b499-59dc1f03bf09.mp4


Fixed bug for binning in Z direction

It was setting ppiclf_ndzgp to 1. It was missing an else statement.

Nice catch! Thanks for finding this.


How to create a joint for a rectangle?

I am trying to create a joint for a rectangle so I can simulate a flipper for a pinball prototype, but I had no luck.
I am creating a constraint like this:
    var axelA = Constraint.create({
        pointA: { x: xx, y: yy },
        bodyB: body,
        pointB: { x: -50, y: 0 },
        stiffness: 0.9999
    });

But the -50 pointB (100 rectangle width) creates an 100px elastic band even though it is connected to the correct position in the rectangle.
Anyways, any sample code of a pinball flipper is much appreciated!

Until pivot constraints are implemented (see #71 and #139) it would be better to implement this by changing the centre of mass of the flipper to be at the pivot point, and then manually set the body's angle (see the body manipulation example) when you press the key.


Switching to Legend style by TAB freezes me in place

When I switch to legend style by Tab, the main character is stuck in place most of the time. They also have a tendency to not attack until they're being attacked and/or not doing their style switching animations. It also happens when I switch from Legend to normal styles in a random encounter.
Note: It seldom happens in Mr. Shakedown battles, but in random encounters, this is a minor issue.

i'm not sure what's happening on your game but i've never had this issue while playing, are you on the latest version of the game?
as for a fix, i don't think i can help you with that as i've stopped playing for quite a while now.


KEEP calculation in LP pairs (keep-eth & keep-tbtc) staked in LP reward contracts

Depends on https://github.com/keep-network/keep-core/pull/2350
In this PR we calculate amount of KEEP which makes a LP pair token: KEEP-ETH & KEEP-TBTC.  These LP tokens are staked by stakers in two contracts: LPRewardsKEEPETH and LPRewardsKEEPTBTC.
KEEP calculation in LP pairs will become a part of a truth source in KEEP token tracker. KEEP staker balances will be stored in two files:

./tmp/keep-in-lp-keepeth-token-balances.json
./tmp/keep-in-lp-keeptbtc-token-balances.json

Calculation of each asset that makes a LP pair can be calculated using the formula below. For example consider KEEP-ETH pair:
KEEP_staker_owed = (LP_staker_balance * KEEP_total_liquidity_pool) / LP_total_supply_pool
Refer to calculation description for more context.
We discussed LP asset calculation also in this comment.

@pdyraga @nkuba all the comments addressed


Replacement page for old Advanced Types makes no mention of of in operator usage

Page URL:
https://www.typescriptlang.org/docs/handbook/advanced-types.html#using-the-in-operator
=>
https://www.typescriptlang.org/docs/handbook/2/types-from-types.html
Issue:
This URL:
https://www.typescriptlang.org/docs/handbook/advanced-types.html#using-the-in-operator
indicates deprecation, and:
https://www.typescriptlang.org/docs/handbook/2/types-from-types.html
is referred to as the new page.
However, it doesn't mention use of the in operator for type narrowing.
It seems like:
https://www.typescriptlang.org/docs/handbook/2/narrowing.html
might be the better page to indicate as a replacement, but this doesn't mention it either.
Recommended Fix:

Determine which page should have the information (one of the above or maybe one entirely separate)
Include the content in that page
Update the mentioned replacement page on the deprecated page (if needed)

This should probably live in the narrowing section, I agree


Padding is all-zeros everywhere in *_dc_rois.csv file

Related: #135

Guaranteed to always be the case, by these expressions: https://github.com/gerlichlab/looptrace/blob/70043bda26b9f13907692fca62a1fe0309048683/looptrace/SpotPicker.py#L543-L555


Remove the summary from editions

It turned out there was no need to maintain a separate field for the meta description and the short point text.
To avoid changing everything at once we are leaving the summary in the details hash in the schema. This can potentially be removed in favour of using the description field instead but there needs to be a decision on how we distinguish a guide from a point.

Yep, LGTM… 👍

I was going to break it into a separate PR.. but it's not worth it. I've added the show_description boolean to this PR.
This and https://github.com/alphagov/service-manual-frontend/pull/31 and https://github.com/alphagov/govuk-content-schemas/pull/336/files are now in sync.


wrong lpeg.V signature

Not only string and integers.

Could you please be more specific

From the documentation "The call lpeg.V(v) creates a pattern that represents the nonterminal (or variable) with index v in a grammar."
"v" is the index in a table, it can be a string, a number, a boolean, a function, everything that is not nil.
BTW, any contains nil.

Thank you for the clarification!
Could you please submit a PR?


fix publish github action pipeline

@kuhnroyal sorry for interrupting you again, can you confirm that the environment is NPM and the secrets are called NPM_TOKEN and ACTION_TOKEN respectively? just not that I am searching into the wrong direction..
because the publish pipeline fails with authentication errors on both sides. I am pretty sure I can fix the GH pages one, not sure about the npmjs part. there's (interestingly) not much resources out there about that.

tagging and version bump works, so I assume at least the ACTION_TOKEN is fine (used for pushing).
for now I've still manually released v9.0.0 and v9.0.1.

fix delivered in: #193.

that pipeline is so clean @kuhnroyal.. I almost can't get over it!
will also deliver a fix for pages in a second..

resolved in #198.


Gcs

Coverage remained the same at 71.882% when pulling 03a9cde680240a45b798de1c505f15bc4cfb135b on GCS into 1cae02c5f8fd5d7a3fe855a0547104105406f7e3 on development.


update link

per the subreddit https://www.reddit.com/r/privacytoolsIO/ the
maitainers have moved to the new domain https://privacyguides.org/
https://www.reddit.com/r/privacytoolsIO/comments/pnql46/rprivacyguides_privacyguidesorg_what_you_need_to/

signed-off-by: Abe<EMAIL_ADDRESS>

There seems to be little bit of controversy behind this story. Based on my understanding the owner of the site privacytools.io wasn't responding to the maintainers. Forcing the maintainers to rebrand. Although the link privacytools.io isn't broken, it seems that privacyguides.org has more relevant and updated information

IntelTechniques is no longer a mass scanner

signed-off-by: Abe<EMAIL_ADDRESS>

Unsubscribe
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Kausaselite @.>
Sent: Monday, February 28, 2022 1:03:37 PM
To: trimstray/the-book-of-secret-knowledge @.>
Cc: Subscribed @.***>
Subject: Re: [trimstray/the-book-of-secret-knowledge] update link (PR #301)
@Kausaselite approved this pull request.

—
Reply to this email directly, view it on GitHubhttps://github.com/trimstray/the-book-of-secret-knowledge/pull/301#pullrequestreview-895483034, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AW2JOH4NPA4QRUUHWEA46DTU5PBITANCNFSM5K2Y7NLA.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Sideways day 🤣 today is a sideways day

README.md

README.md

README.md

Sideways day is a great understatement _***_Krypto_Kevin**

Have over 5582 hours of study in BTC 💯 and ALT Coins for further gains in a struggling market.
Blockchain technology is going to take off just don't know when it will be incorporated into everyday life 🧬

When

Going to school now for Network engineering anything to do with wire or wireless for now

Leaning may things @NlTDA Blockchain
an experience which l have never  come across in life ****


Cleanup description

As far as I know, this script has noting to do with Azure Automation and runbooks. This is a powershell script that runs directly on the RD Connection Broker and uses scheduled tasks on the local server.  Please correct me if i'm wrong, because i'd love to get this off the RD CB server.
Also please fix the "Azure Resource Management Mode" This should refer to the Azure Resource Management Module for powershell.
Other than those fixes. thanks for your write up, this helped clear things up.

Hi @bsonnek ,
I have reviewed the description and are OK as they are. Here some clarifications:

Yes, this is a powershell script that runs directly on the RD Connection Broker and uses scheduled tasks on the local server. You need to create a Service Principal on the Azure AD to allow the powershell script to use the ARM API that scales the numbers of servers;
The "mode" is ok, it refers to the ARM mode instead of the "Classic" mode. This was written two years ago when documenting the between classing and ARM modes were necessary.


Question: How to have advanced control over previewer

I am currently trying to link fzf-lua to hrsh7th/nvim-gtd. So I am asking because I would like to know how to control the previewer.
Each candidate of nvim-gtd has the following structure and I can obtain information of the location I wish to preview. How can we reflect this?
{
  targetRange = {
    ["end"] = <1>{
      character = 4,
      line = 65
    },
    start = <table 1>
  },
  targetSelectionRange = {
    ["end"] = <table 1>,
    start = <table 1>
  },
  targetUri = "file:///home/uga/dotfiles/.config/nvim/lua/rc/plugins/nvim-cmp.lua"
}

I can preview the file itself, but I want to specify the position. Like the built-in lsp_definition.

I post the settings I am trying now.
    vim.keymap.set("n", "gd", function()
      require("gtd").exec({ command = "edit" })
    end)

    require("gtd").setup({
      sources = {
        { name = "lsp" },
        { name = "findup" },
        { name = "walk" },
      },
      on_locations = function(params, locations)
        local paths, path2loc = {}, {}
        for _, v in ipairs(locations) do
          local path = vim.uri_to_fname(v.targetUri)
          table.insert(paths, path)
          path2loc[path] = v
        end
        require("fzf-lua").fzf_exec(paths, {
          previewer = "builtin",
          prompt = "Select file> ",
          fn_selected = function(path, o)
            path = path[1]
            if path then
              local location = path2loc[path]
              require("gtd")._open(params, location)
            else
              print("Canceled")
            end
          end
        })
      end
    })

This would be possible with a custom previewer implementation, I believe in this case you will just need to implement the parse_entry function and then supply the custom previewer object to the previewer option, for example, take a look at how the previewer for jumps is implemented:
https://github.com/ibhagwan/fzf-lua/blob/0c8b3389ec433089ebbe9d138c2ec20a6a542ce0/lua/fzf-lua/previewer/builtin.lua#L887-L915
Let me know if you need help figuring this out further.

Please help.
I did the following and the preview itself disappeared. How do I register a custom previewer?
local gtd = require("gtd")
local fzf = require("fzf-lua")
local builtin = require("fzf-lua.previewer.builtin")

local custom_previewer = builtin.buffer_or_file:extend()

function custom_previewer:new(o, opts, fzf_win)
  custom_previewer.super.new(self, o, opts, fzf_win)
  return self
end

function custom_previewer:parse_entry(entry_str)
  local _, filepath, row, col = entry_str:match("^(%d+)%. (.+):(%d+):(%d+):$")
  return {
    path  = filepath,
    line  = tonumber(row) or 1,
    col   = tonumber(col) + 1 or 1,
  }
end

gtd.setup({
  sources = {
    { name = "lsp" },
    { name = "findup" },
    { name = "walk" },
  },
  on_locations = function(params, locations)
    local paths, path2loc = {}, {}
    for i, location in ipairs(locations) do
      local row = location.targetSelectionRange.start.line + 1
      local col = location.targetSelectionRange.start.character + 1
      local path = ("%s. %s:%s:%s:"):format(i, vim.uri_to_fname(location.targetUri), row, col)
      paths[i] = path
      path2loc[path] = location
    end
    fzf.fzf_exec(paths, {
      previewer = {
        _ctor = custom_previewer,
      },
      prompt = "Select file> ",
      fn_selected = function(path, o)
        path = path[1]
        if path then
          local location = path2loc[path]
          vim.pretty_print(params, o)
          gtd._open(params, location)
        else
          print("Canceled")
        end
      end
    })
  end
})

Minimal changes, not sure why, but when using the ::extend() outside of fzf-lua one more line is needed to copy the class metatable:
function custom_previewer:new(o, opts, fzf_win)
  custom_previewer.super.new(self, o, opts, fzf_win)
  -- this line must be added
  setmetatable(self, custom_previewer)
  return self
end

Registering the previewer is as easy as just setting  previewer to its object:
    fzf.fzf_exec(paths, {
      previewer = custom_previewer,
      prompt = "Select file> ",
      ...

Added a couple of examples customizing the builtin previewer to the Wiki:
https://github.com/ibhagwan/fzf-lua/wiki/Advanced#neovim-builtin-preview

Thank you so much! It worked exactly how I imagined it would!

Thank you so much! It worked exactly how I imagined it would!

Looks fantastic, happy I could help :)


Overwrite the Startup Namer codelab with the content from Start Namer Null Safety

The null unsafe startup_namer should be replaced with the content from startup_namer_null_safety.

@RedBrogdon I'm guessing this is blocked on flutter.dev updating something somewhere?

The website uses the codelabs repo as a submodule, so you should be safe to do this:

Update flutter/codelabs to make the swap.
In flutter/website, create a PR to:

Update the submodule to the latest version of flutter/codelabs
s/startup_namer_null_safety/startup_namer/ in /src/docs/get-started/codelab.md

According to grep, the codelab is only mentioned in code excerpts in that one file, so it shouldn't be a big hairy deal.

I hadn't before this realized the issue tracker for flutter/codelabs isn't enabled. How do you feel about that? I imagine we can turn it on.

I'm not fussed either way. I'd have to update all the codelabs to point at the new bug tracker 😂


Bump Dependencies #4233980507

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/4233980507

 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.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Implemented std::error::Error and std::fmt::Display traits for nom::Err

Related issue: #591
I came across this issue when I worked with nom. I thought having the Error and Display trait on nom::Err might be very helpful.
When I poked around the code I realized that there already was an old implementation that was commented out. Referring to the mentioned issue it might have been because of Error::description. But because this is now deprecated anyway I considered opening a PR.
If the removal of the old Error and Display implementations had other reasons, feel free to close this PR.

Coverage increased (+0.5%) to 86.786% when pulling 7952b6909e2e6d315fe6344d14fad084fe98bf89 on Jibbow:master into 851706460a9311f7bbae8e9b7ee497c7188df0a3 on Geal:master.

thanks!


curl /info now shows "PCF Healthwatch available"

curl -G healthwatch-api.SYSTEM-DOMAIN/info now returns 200 OK
with a message of "PCF Healthwatch available". Correct docs to reflect
this.

NOTE - I don't have access to the 1.3 source code so I cannot test it there. This is certainly true in 1.2. I am not sure if you are updating the 1.2 docs anymore, if so I can do another PR there. Please let me know.

Oops - I failed at reading comprehension and was curling HW and not HW-api, sorry for the noise.

no worries @matthewfischer!


SageMaker Studio Can't find entry point file

Hi
In the notebook:
https://github.com/awslabs/amazon-sagemaker-examples/blob/master/aws_sagemaker_studio/sagemaker_experiments/mnist-handwritten-digits-classification-experiment.ipynb
Can't find out the entry point of mnist.py
FileNotFoundError: [Errno 2] No such file or directory: 'mnist.py'

It looks the studio file path is /root but it is not in the Studio file path event I change to
/home/sagemaker-user/amazon-sagemaker-examples/aws_sagemaker_studio/sagemaker_experiments/mnist.py
The error full logs:
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-20-7f34dece62ba> in <module>
     46             "TrialComponentDisplayName": "Training",
     47         },
---> 48         wait=True,
     49     )
     50

/opt/conda/lib/python3.7/site-packages/sagemaker/estimator.py in fit(self, inputs, wait, logs, job_name, experiment_config)
    457
    458         """
--> 459         self._prepare_for_training(job_name=job_name)
    460
    461         self.latest_training_job = _TrainingJob.start_new(self, inputs, experiment_config)

/opt/conda/lib/python3.7/site-packages/sagemaker/estimator.py in _prepare_for_training(self, job_name)
   1645             self.code_uri = self.uploaded_code.s3_prefix
   1646         else:
-> 1647             self.uploaded_code = self._stage_user_code_in_s3()
   1648             code_dir = self.uploaded_code.s3_prefix
   1649             script = self.uploaded_code.script_name

/opt/conda/lib/python3.7/site-packages/sagemaker/estimator.py in _stage_user_code_in_s3(self)
   1696             directory=self.source_dir,
   1697             dependencies=self.dependencies,
-> 1698             kms_key=kms_key,
   1699         )
   1700

/opt/conda/lib/python3.7/site-packages/sagemaker/fw_utils.py in tar_and_upload_dir(session, bucket, s3_key_prefix, script, directory, dependencies, kms_key)
    377         source_files = _list_files_to_compress(script, directory) + dependencies
    378         tar_file = sagemaker.utils.create_tar_file(
--> 379             source_files, os.path.join(tmp, _TAR_SOURCE_FILENAME)
    380         )
    381

/opt/conda/lib/python3.7/site-packages/sagemaker/utils.py in create_tar_file(source_files, target)
    390         for sf in source_files:
    391             # Add all files from the directory into the root of the directory structure of the tar
--> 392             t.add(sf, arcname=os.path.basename(sf))
    393     return filename
    394

/opt/conda/lib/python3.7/tarfile.py in add(self, name, arcname, recursive, filter)
   1926
   1927         # Create a TarInfo object from the file.
-> 1928         tarinfo = self.gettarinfo(name, arcname)
   1929
   1930         if tarinfo is None:

/opt/conda/lib/python3.7/tarfile.py in gettarinfo(self, name, arcname, fileobj)
   1805         if fileobj is None:
   1806             if hasattr(os, "lstat") and not self.dereference:
-> 1807                 statres = os.lstat(name)
   1808             else:
   1809                 statres = os.stat(name)

FileNotFoundError: [Errno 2] No such file or directory: 'mnist.py'

Found.
The SageMaker Studio is mount under the EFS. In the studio terminal, I found /home/sagemaker-user to the path <IP_ADDRESS>:/200005
bash-4.2$ df -h
Filesystem         Size  Used Avail Use% Mounted on
overlay             60G  9.1G   51G  16% /
tmpfs               64M     0   64M   0% /dev
tmpfs              1.9G     0  1.9G   0% /sys/fs/cgroup
<IP_ADDRESS>:/200005  8.0E     0  8.0E   0% /home/sagemaker-user
/dev/nvme0n1p1      60G  9.1G   51G  16% /etc/hosts
shm                 64M     0   64M   0% /dev/shm
devtmpfs           1.9G     0  1.9G   0% /dev/tty
tmpfs              1.9G     0  1.9G   0% /proc/acpi
tmpfs              1.9G     0  1.9G   0% /sys/firmware

And, in the Jupyter Studio, the df command: /root map to the same <IP_ADDRESS>:/200005
Filesystem         Size  Used Avail Use% Mounted on
overlay             60G  9.1G   51G  16% /
tmpfs               64M     0   64M   0% /dev
tmpfs              1.9G     0  1.9G   0% /sys/fs/cgroup
<IP_ADDRESS>:/200005  8.0E     0  8.0E   0% /root
/dev/nvme0n1p1      60G  9.1G   51G  16% /opt/.sagemakerinternal
shm                 64M     0   64M   0% /dev/shm
devtmpfs           1.9G     0  1.9G   0% /dev/tty
tmpfs              1.9G     0  1.9G   0% /proc/acpi
tmpfs              1.9G     0  1.9G   0% /sys/firmware

So, the absolute path is at
./amazon-sagemaker-examples/aws_sagemaker_studio/sagemaker_experiments


Add an option to print nvFuser repros.

What does this PR do?
This adds a minor nvidia-specific debug option to print out reproduction information whenever possible.
This could be useful if there is a segfault, or if an nvFuser developer wants to drop all the fusions in a network for importing into their CI.
PR review
Anyone in the community is free to review the PR once the tests have passed.

How does differ from the util here?
https://github.com/Lightning-AI/lightning-thunder/blob/9c916d9df73f3920b51e5951303a76b25ab2d4d4/thunder/examine/__init__.py#L249

How does it differ from the util here?
https://github.com/Lightning-AI/lightning-thunder/blob/9c916d9df73f3920b51e5951303a76b25ab2d4d4/thunder/examine/__init__.py#L249

It's pretty similar, just a more user-accessible way to get at the same functionality really. Inside nvFuser it calls the same code.
The intent is to turn this on when nvFuser is segfaulting and then just grab the last repro printed out for a bug report. To satisfy that case with the existing entry points, one would need to first dump the thunder trace to get all the nvFusion<X> names, and then iterate through and print each one.

I have three issues with this

I don't like random options added to the .jit call it just turns into a giant mess over time.
It special-cases nvfuser a lot and pretty much duplicates the existing functionality. - We print on errors and we can print after the fact.
So the remaining use-case is segfaults. In my experience, these are really rare.

Thanks for taking a look!

So the remaining use-case is segfaults. In my experience, these are really rare.

Yes, indeed, segfaults are the main reason one would want this.
I'm happy to look at other options but it's not clear (to me) what other ones exist. Or maybe your intent is that we shouldn't do anything, and instead just manually edit thunder to print these repros when we hit such cases?

So lazily search segfault in the NVFuser repo issues gives 8 from this year, not all of which would apply here, maybe 3-4 that affected thunder CI. So my gut feeling is that it is exceedingly rare to hit those.

So lazily search segfault in the NVFuser repo issues gives 8 from this year, not all of which would apply here, maybe 3-4 that affected thunder CI. So my gut feeling is that it is exceedingly rare to hit those.

Yes, segfaults are rare (thankfully!).
Sorry, it's not clear what behavior or action you're recommending, or what debugging flow you'd like developers to use when they hit a segfault. Could you clarify?

I don't like random options added to the .jit call it just turns into a giant mess over time.

It's good to have as few options as possible for a general user to use Thunder. Going to the README of the project we would see "Thunder aims to be usable, understandable, and extensible.".  This option is not random, it aids usability and ease of reporting a problem for debugging. Unfortunately, due to the nature of active development nvFuser segfaults, while rare, are inevitable, and there can be other problems besides segfaults where the help from the nvFuser team would be needed.

It special-cases nvfuser a lot and pretty much duplicates the existing functionality. - We print on errors and we can print after the fact.

The scope of the change is nvFuser files. nvFuser should be able to introduce any options they think are necessary for a better experience. If there would be any other executor willing to reuse the same option for their reproducer generation they can do so.
@t-vi, what would you recommend doing here?

I would not consider this option specific to segfaults.  This option enables you to generally dump nvFuser repros. I would just consider it a productivity improvement as it takes less effort to add a single knob.   In addition, this would be necessary to catch a segfault.

Of course, it is not random to the people implementing it, but it seems relatively random to the user. Part of the problem is the option mechanism that Thunder provides here, which basically makes options very non-discoverable.
To my mind

options should be discoverable,
they should be documented,
we should avoid having many options to the jit cluttering that call

if it is specific to an executor or to a transform, maybe setting a flag there with a function / property is better and then
it can be documented in the executor class documentation.
for debug options in particular, I created a DebugOptions class that you can register options with in #1447 . Those options will be automatically added to the doc string and to the documentation of the DebugOptions class, so people can interactively find them or look them up in the docs. We will use these for debug verbosity options in the interpreter and for enabling trace checking etc.

This adds the third way to get nvfuser repros and to my mind, this is a bit much. I know that nvfuser is very dear to you, but still. If an option like the present one is adopted, will we drop @riccardofelluga 's way of doing it? Printing the repro on error seems to be great value, but why do we need to have two options to print it when no error happens?


Incremental Scala Compilation can fail when moving a class in a separate module

Incremental Scala Compilation can fail when moving a class in a separate module
I created a simplyfied setup with with two scala modules (A and B), where module A depends on module B with a compileOnly dependency.
Module B has two classes a Service class and a DTO class.
Module A has a single class that only imports the service not the DTO from module B
Module A does use DTO, but the type is not applied directly since it is used in a foreach construct
import module.b.services.Service

object ModuleA extends App {
  new Service().getDto().foreach(dto => println(dto.message))
}

The service in Module B is defined as
// import module.b.moved.dtos.MyDTO
import module.b.dtos.MyDTO

class Service {
  def getDto(): Option[MyDTO] = Some(new MyDTO)
}

The problem happens when the DTO is moved, if you see the commented out line above.
Gradle correctly rebuilds Module B but module A is not rebuild and running it fails with the following error:
Exception in thread "main" java.lang.NoClassDefFoundError: module/b/dtos/MyDTO
        at com.module.a.ModuleA$$anonfun$1.apply(ModuleA.scala:6)
        at scala.Option.foreach(Option.scala:257)
        at com.module.a.ModuleA$.delayedEndpoint$com$module$a$ModuleA$1(ModuleA.scala:6)
        at com.module.a.ModuleA$delayedInit$body.apply(ModuleA.scala:5)
        at scala.Function0$class.apply$mcV$sp(Function0.scala:40)
        at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
        at scala.App$$anonfun$main$1.apply(App.scala:76)
        at scala.App$$anonfun$main$1.apply(App.scala:76)
        at scala.collection.immutable.List.foreach(List.scala:381)
        at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
        at scala.App$class.main(App.scala:76)
        at com.module.a.ModuleA$.main(ModuleA.scala:5)
        at com.module.a.ModuleA.main(ModuleA.scala)
Caused by: java.lang.ClassNotFoundException: module.b.dtos.MyDTO
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 13 more

Checking dependencies with jdeps I get the following output for one class file
jdeps.exe '.\module-a\build\classes\scala\main\com\module\a\ModuleA$$anonfun$1.class'
ModuleA$$anonfun$1.class -> not found
ModuleA$$anonfun$1.class -> C:\Program Files\Java\jdk1.8.0_171\jre\lib\rt.jar
   com.module.a (ModuleA$$anonfun$1.class)
      -> java.lang
      -> module.b.dtos                               not found
      -> scala                                       not found
      -> scala.runtime                               not found

The problem was originally experienced in a big JAVA EE application on Wildfly.
My reproduction can be found here: https://github.com/KrauseStefan/gradle_5.2_issue_scala_incremental
I have two branches in this repository, switching between the branches moved the DTO class.
The below commands are all run from the root of the repository in Powershell.
Running building and running fails if a clean build succeed on the other branch
.\gradlew.bat build; .\run.cmd
A clean build always succeeds
.\gradlew.bat clean; .\gradlew.bat build; .\run.cmd
Expected Behavior

I expect incremental builds to work also when moving DTOs that the src does not directly depend on.

Your Environment

build scan URLs:

Clean build master branch: https://gradle.com/s/g6j33p3qd7usg
Incremental Build dependencyMoved branch: https://gradle.com/s/ua3ogagqtspju

I see I put in an older version of the Scala framework, I just tried it again with Scala 2.12.8 samme issue

I guess the problem the problem is that no change is made in A that would trigger a compilation, Gradle seems to relay on that the import would be updated when a package is moved.
The Scala plugin in Gradle would somehow need to trigger recompilation of the module if any implicit dependency has been moved, I imagine that this kind of issue would also occur if the dependency was a maven dependency.
I imagine that doing this would require that Gradle would need to test if a package that previous build ended up in depending on has moved... I guess the way to do that would be to add the moved file in module B to the input list of module A during an incremental build, then any change to that file would trigger a new build as well as local files.
I realize that this introduces some problems as well, now the will be a difference between the input of a clean build and an incremental build, I don't know a good way of solving that, besides compiling twice or have some uncacheable preanalysis step.
I do not know an if a integration with the compiler through Bloop could help solve this.
I however fear that the issue lies in an incompatibility between the way Gradle does incremental builds and the Scala language.
Do you have any ideas @big-guy?

Thanks for the reproduction case.  I suspect this is something happening in Zinc as Gradle delegates to Zinc for incremental compilation.  We pass everything to the Zinc compiler and it keeps a separate analysis file it uses for determining what's changed.  It makes sense that clean builds fix it because that deletes the analysis file.
The version of Zinc we integrate with is pretty old, so we're trying to merge https://github.com/gradle/gradle/pull/8485 for 5.4. I'm not sure if that will fix this problem.

Let me know if there is anything you need me to do.

I could confirm that the bug is fixed by #8485.


#185 Update index.html

Pull Request Template for GSoC 2024
changing the google translate buttoon on navigation bar.
[Issue no: #185 ]
I have made a smal change in marging and absolute to fixed position
[Provide a concise description of the changes introduced by this PR, detailing what’s been added, modified, or fixed.]
Implement type of pull request
Issue i find

Issue i have solved

[x] Bug Fix
[ ] New Feature
[x] Performance Improvement
[x] Documentation Update
[ ] Code Refactoring
[ ] Security Enhancement
[ ] Other (Specify): _______________

(Please check relevant boxes by entering an "X" inside them)
Screenshots / Demo (if applicable)
[Include any screenshots, GIFs, or videos that demonstrate the change or feature, if available.]
Checklist for Contributor
use'X' in [ ] to check it .

[x] I have reviewed my code before submission.
[x] I have read and followed the project's Contribution Guidelines.
[x] I have tested the code thoroughly.
[x] I have attached related issue numbers, screenshots, or videos (if applicable).
[x] I have added comments to my code where necessary for clarity.
[x] I have checked the existing code base and my changes do not introduce any breaking changes.
[x] My PR addresses only one issue; I have created separate PRs for other issues.
[x] I have ensured that the PR does not include unrelated files.
[x] I am mindful of the project's coding standards and best practices.

Additional Information
[Include any additional context or relevant information that may help in reviewing this PR.]
Contribution Guidelines Reminder
Thank you for contributing to our project! Please ensure you follow the guidelines below:
Contribution Levels

Task Categories:

Basic Tasks: Primarily focused on small changes like minor bug fixes, documentation improvements, and unit testing. Labeled as Easy.
Intermediate Tasks: Moderate-level tasks that involve enhancing existing features, code refactoring, or performance improvements. Labeled as Medium.
Advanced Tasks: Complex tasks like building new features, significant refactoring, or critical bug fixes. Labeled as Hard.

Acknowledging Effort:

Exceptional contributions will be recognized with a higher contribution level if substantial effort and innovation are demonstrated.

Review Process

PRs will be reviewed by the maintainers, and feedback will be provided. Contributors should address feedback promptly and resubmit the PR if necessary.

Contributors are encouraged to participate in the review process of other PRs for community growth.

We appreciate your time and effort in improving this project and look forward to your valuable contributions!

it is not proper @Piyushsahu99


abi_json_to_bin for Action newaccount Returns Incorrect Value

The issue appears to only happen with the newaccount action. It can be reproduced using
import requests

url = "https://eos.greymass.com/v1/chain/abi_json_to_bin"

payload = {"code":"eosio","args": {'creator': 'eosio', 'name': 'testtesttest', 'owner': 'EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq', 'active': 'EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq'},"action":"newaccount"}
response = requests.request("POST", url, json=payload)

print(response.text)

The output from above
{"binargs":"0000000000ea305590b1ca19ab9cb1ca"}

The expected output via the cleos command
cleos system newaccount eosio testtesttest EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq --stake-net '1.0000 EOS' --stake-cpu '1.0000 EOS' --buy-ram-kbytes 8 --json -d

"actions": [{
      "account": "eosio",
      "name": "newaccount",
      "authorization": [{
          "actor": "eosio",
          "permission": "active"
        }
      ],
      "data": "0000000000ea305590b1ca19ab9cb1ca0100000001000255fe1065407389fb7289347759ad884f0b792291c91ebddde702aea8339f6bcf010000000100000001000255fe1065407389fb7289347759ad884f0b792291c91ebddde702aea8339f6bcf01000000"
    }

It looks like creator and name are correctly processed but the keys are not returned.

I'm actually having the same issue. I'm also writing a python library for the RPC API. Creating an account is the first action that I tried to write.
Command that I ran:
cleos --url http://<IP_ADDRESS>:8888 system newaccount eosio --transfer goodblockio2 TLOS6tz6NzPEoeHp7AfKP4SVYjQBgbxBJYSjBJD2PXjMWtc8FXgShV --stake-net "100.0000 EOS" --stake-cpu "100.0000 EOS" --buy-ram "100.0000 EOS"
Below are the http requests sent by cleos that I've captured in wireshark. abi_json_to_binisn't used to encode any of the actions for the above command.

My code is nearly identical to @deckb's in this instance. I've looked over the cleos system newaccount subcommand, is either push_action or push_transaction method manually encoding action arguments?

I figured it out. If you look at the abi for eosio.system contract it's expecting an eosio::chain::authority and not a public_key_type. I ran the following command on the bin data scrapped from the cleos commands. As you can see below the owner and active parameters have been populated with an authority type. I was able to successfully run my code when modeling my arguments in the same way.
teclos convert unpack_action_data eosio newaccount '0000000000ea3055302e8588c69328650100000001000219ae5dc5057eedcdfa1a80481d86c6fc0d82a277357ed2d0e28b28bba53b7122010000000100000001000219ae5dc5057eedcdfa1a80481d86c6fc0d82a277357ed2d0e28b28bba53b712201000000'
{
  "creator": "eosio",
  "name": "goodblockor3",
  "owner": {
    "threshold": 1,
    "keys": [{
        "key": "TLOS55oLsFKcv3EEcJfDK81CX7UrbL8T9zfuLZHMXoSJSXBpvX4kxd",
        "weight": 1
      }
    ],
    "accounts": [],
    "waits": []
  },
  "active": {
    "threshold": 1,
    "keys": [{
        "key": "TLOS55oLsFKcv3EEcJfDK81CX7UrbL8T9zfuLZHMXoSJSXBpvX4kxd",
        "weight": 1
      }
    ],
    "accounts": [],
    "waits": []
  }
}

After correcting my python to use the Authority it worked but I agree with @ARoomWithABue that it should have failed when not given the correct data.

The correct command parameter should be something like:
curl --data-binary '{"code":"eosio","args": {"creator": "eosio", "name": "testtesttest", "owner":{"threshold":1,"keys":[{"key":"EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq", "weight":1}], "accounts":[], "waits":[]}, "active":{"threshold":1,"keys":[{"key":"EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq", "weight":1}], "accounts":[], "waits":[]}}, "action":"newaccount"}' http://localhost:8888/v1/chain/abi_json_to_bin

This is the output:
{"binargs":"0000000000ea305590b1ca19ab9cb1ca0100000001000255fe1065407389fb7289347759ad884f0b792291c91ebddde702aea8339f6bcf010000000100000001000255fe1065407389fb7289347759ad884f0b792291c91ebddde702aea8339f6bcf01000000"}

After correcting my python to use the Authority it worked but I agree with @ARoomWithABue that it should have failed when not given the correct data.

I agree. This bug and a few others in abi_serializer were fixed in PR #5680. I verified that running that python script against a local node with the changes in PR #5680 now correctly returns an error:
{
  "code": 500,
  "message": "Internal Service Error",
  "error": {
    "code": 3015014,
    "name": "pack_exception",
    "what": "Pack data exception",
    "details": [
      {
        "message": "Failed to serialize struct 'authority' in variant object",
        "file": "abi_serializer.cpp",
        "line_number": 407,
        "method": "_variant_to_binary"
      },
      {
        "message": "",
        "file": "abi_serializer.cpp",
        "line_number": 410,
        "method": "_variant_to_binary"
      },
      {
        "message": "",
        "file": "abi_serializer.cpp",
        "line_number": 410,
        "method": "_variant_to_binary"
      },
      {
        "message": "",
        "file": "abi_serializer.cpp",
        "line_number": 426,
        "method": "_variant_to_binary"
      },
      {
        "message": "'{\"creator\":\"eosio\",\"name\":\"testtesttest\",\"owner\":\"EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq\",\"active\":\"EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq\"}' is invalid args for action 'newaccount' code 'eosio'. expected '[{\"name\":\"creator\",\"type\":\"account_name\"},{\"name\":\"name\",\"type\":\"account_name\"},{\"name\":\"owner\",\"type\":\"authority\"},{\"name\":\"active\",\"type\":\"authority\"}]'",
        "file": "chain_plugin.cpp",
        "line_number": 1717,
        "method": "abi_json_to_bin"
      },
      {
        "message": "code: eosio, action: newaccount, args: {\"creator\":\"eosio\",\"name\":\"testtesttest\",\"owner\":\"EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq\",\"active\":\"EOS5YMv2UBcuiExv1C8fZjjnE4evofRdBh5Nrt8TYz44G7KC5tZNq\"}",
        "file": "chain_plugin.cpp",
        "line_number": 1723,
        "method": "abi_json_to_bin"
      }
    ]
  }
}


Made video on scholorship page responsive

#596
Fixed merge issues @rickr

Should be good to go now. I've been all over the place today. My wife was in a wreck last night, she's ok though. :pray:

I'll handle this tomorrow. Not sure what happened with the merge conflict.


Merg changes from Pako2

@Pako2  I am now merging to dev branch for testing.

I think the last solution (0.9.4) is not entirely correct.
In particular, the global wsbuf declaration is bad.
This is async server and i can imagine that there may be a request from another ws client ...
So I was thinking and maybe I found a much better option. You can look at my latest release.
Of course, very thorough testing is needed !!!


Please include sender in ItegrationEvent OnBeforeValidateAgainstRecursion in table "BOM Component"

In table "BOM Component":
Please include sender in ItegrationEvent
OnBeforeValidateAgainstRecursion(var Sender: Record "BOM Component"; ItemNo: Code[20]; var IsHandled: Boolean)

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Add cross-region statistics to admin dashboard

Motivation
We have a some activities and actions which are measured by quantitative numbers, e.g.

active contributors in Integreat and active contributors per region
~API usage statistics for all regions~ will be done with a different tool, see INFRA-281
which language is used how often
how many instances are online/hidden
whats the average amount of words?
whats the average translation status (how many pages are up to date, how many are not up to date

Proposed Solution
We could develop a analytics dashboard to show up this figures. does not need to be too graphical, because it is just for us to see if things develop the right way.
Alternatives

Additional Context

For reference: 2. is not relevant anymore since this will be solved in INFRA-281

Should be transfered to Jira

However, I wouldn't put too much Python code on our production servers without the normal reviewing process of our cms repo. So instead, I suggest to wait for https://github.com/digitalfabrik/integreat-cms/pull/2071 to get merged and implement all the stats methods as management commands, which can then be called on the prod server to write the stats to grafana.

@timoludwig yes, that's exactly what we discussed - we want to have all those statistics in grafana which is why Sven will transfer it to Jira Infra Board for himself

Yes, but I wouldn't recommend to implement these functions as scripts running only on the production server - instead, we should develop them as part of this repository (which also means we can properly test them), so the infra part can be reduced to "execute one command and send the result to grafana"...

I think it depends on what we need the data for and how often we need it. If this is some kind of frequent and permanent process that uses the information, then yes. If we only need this once or a few times, I'd reduce the effort as much as possible.

AFAICT this list would mainly serve one purpose: find regions where the content is not up to date.

@dkehne @osmers could you please provide some user stories or use cases?

We will convert this issue into some tasks for Grafana.


No module named pip / No module named 'pybind11'

starenka /tmp % uv venv tmp
Using Python 3.11.8 interpreter at /usr/bin/python3.11
Creating virtualenv at: tmp
starenka /tmp % source tmp/bin/activate
(tmp) starenka /tmp % python -V
Python 3.11.8
(tmp) starenka /tmp % pip --version
pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.11)
(tmp) starenka /tmp % uv pip install 'fasttext==0.9.2'
error: Failed to download and build: fasttext==0.9.2
  Caused by: Failed to build: fasttext==0.9.2
  Caused by: Build backend failed to determine metadata through `prepare_metadata_for_build_wheel`:
--- stdout:

--- stderr:
/tmp/.tmpXuExdC/.venv/bin/python: No module named pip
Traceback (most recent call last):
  File "<string>", line 38, in __init__
ModuleNotFoundError: No module named 'pybind11'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 10, in <module>
  File "/tmp/.tmpXuExdC/.venv/lib/python3.11/site-packages/setuptools/build_meta.py", line 366, in prepare_metadata_for_build_wheel
    self.run_setup()
  File "/tmp/.tmpXuExdC/.venv/lib/python3.11/site-packages/setuptools/build_meta.py", line 480, in run_setup
    super().run_setup(setup_script=setup_script)
  File "/tmp/.tmpXuExdC/.venv/lib/python3.11/site-packages/setuptools/build_meta.py", line 311, in run_setup
    exec(code, locals())
  File "<string>", line 72, in <module>
  File "<string>", line 41, in __init__
RuntimeError: pybind11 install failed.
---

it seems it has problems via pip too, feel free to close this. sorry

Seems like it's fixed by installing from github. #1446


spanner: make sample functions public and use snippet.go as a CLI wrapper

Please DO NOT merge it at the moment.
This PR updates snippet.go which is currently referenced in docs generation. The auto docs generation will be broken if this is merged. We need to coordinate the merge with the internal docs updates together.

I commented on the issue. But, I'm not sure I understand why these need to be exported. We can change the package to package main, add a func main, and it will work without exporting.

@tbpg I have tried what you said, changing the package to package main and func main, but it does not work. Please see my comments on the issue.

I have created a PR that changes to package main and func main is in snippet.go: https://github.com/GoogleCloudPlatform/golang-samples/pull/1513.
I tried the following ways to run the snippet.go, but they do not work.
$ go run snippet.go createdatabase projects/[project_id]/instances/[instance_id]/databases/snippet-test-db
# command-line-arguments
./snippet.go:36:38: undefined: write
./snippet.go:37:38: use of builtin delete not in function call
./snippet.go:38:38: undefined: query
./snippet.go:39:38: undefined: read
./snippet.go:40:38: undefined: update
./snippet.go:41:38: undefined: writeWithTransaction
./snippet.go:42:38: undefined: queryNewColumn
./snippet.go:43:38: undefined: queryUsingIndex
./snippet.go:44:38: undefined: readUsingIndex
./snippet.go:45:38: undefined: readStoringIndex
./snippet.go:45:38: too many errors

$ go run *.go createdatabase projects/[project_id]/instances/[instance_id]/databases/snippet-test-db
go run: cannot run *_test.go files (integration_test.go)

$ go run . createdatabase projects/[project_id]/instances/[instance_id]/databases/snippet-test-db
# github.com/GoogleCloudPlatform/golang-samples/spanner/spanner_snippets
runtime.main_main·f: function main is undeclared in the main package

snippet.go has a // +build ignore line, so that file is ignored, and there is no other func main. go build also fails with the same error. If you remove that line, you get real compile errors.

Yes, you're right. Sorry for missing this. go run . is working now. I will not do any changes to this PR until a final decision is made.

Hey @hengfengli, what's the next step for this PR?

I don't think this PR is needed any more. I'll close this.


Fix permission denied errors on running from scratch

This PR fixes "Permission denied" errors on starting the processing component of Diário Oficial project.
The errors are:

Given we cloned the repository as a normal user Linux with id 1000
When we run 'make setup && docker-compose up'
Then the processing component gives ' _gdbm.error: [Errno 13] Permission denied' creating the schedule database of Celery Beat.
And after fixing this error
Then we have a Permission denied error creating the data directory of the processing task

After investigating the issue, I concluded the system user gazette (id 101) has no permissions to write in a directory 1000:1000.
For the first error, the solution I've found is just pointing the schedule database file to be created in a directory with enough permissions.
For the second error, the  solution I've found is creating a docker volume for the directory that stores the PDFs and text files after processing the spiders.

I think there's a way to simulate the permission denied error.
What I've been doing is changing the crontab to 5 minutes + 3 hours from now.
I will explain with more details:
(Supposing now is 19:45)

docker-compose down (to remove the containers)
change line 23 of processing/tasks.py to crontab(hour=22, minute=50)
docker-compose up

When the containers are running, if you check date in the processing containers, it will be around 22:45. Then at 22:50 the celery will trigger the task that will try to create the data/full directory.
In my case, my linux user has id 1000, and gazette has id 102. So when the user with id 102 doesn't have permissions to write in a directory whose owner has id 1000.

Great @viniciusartur. Now I was able to reproduce it and everything seems to be back in place.
Thanks!


GeoPkgWriter

The geopackage export is not working the way I thought.  Trying to export a layer to a geopackage and there are holes.  But not on the WMS though.

This bug is becoming bigger than I thought.  I found the culprit but at this point I can't see if it's a data-integration problem or our plugin problem.  I am going to try to refactor the iterator plugin and see if that helps.
The problem is this.  I have a TileIterator step that extracts tiles out of a database and passes it onto the next step.  Connected is the GeoPackage writer that outputs the tile to a geopackage.  It appears rows are being duplicated but looking at the output of the iterator it is clear they are not being duplicated.  Not sure why they are duplicated for this causes a UNIQUE error in the geopackage writer.

Looking through the kettle code most of the steps that are record generators do it in a way that it generates a row at a time and then returns so that Kettle internals can do their thing for the next execution.  I have a couple  Kettle steps that will need to be refactored and will probably take about 2 days to complete.  I hope this will work for the bug.  If not then we will have to go a different route for the geopackage output

Need to do some more testing but I think I have it running better now.   Did my own allocation of the result buffer and put that on the result queue in kettle.  Will probably check it in tomorrow and hopefully integrate the cutting after the image ope step is completed

I am going to go ahead and close this out.  Things seem to be running much nicer with this flow now.  If problems arise I'll raise a new issue


Modified setup to install slickgrid.plugins dir

Modified setup to install slickgrid.plugins directory

@wasade approved and looks good to me ... merging!

Thanks!
On Wed, Apr 24, 2019 at 7:44 PM Antonio Gonzalez<EMAIL_ADDRESS>wrote:

Merged #484 https://github.com/jdereus/labman/pull/484 into master.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jdereus/labman/pull/484#event-2298964907, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AKFU7E637KQIRJNIF7QQCKLPSELG7ANCNFSM4HIIJ44Q
.


Add tables to enterprise tree

Load dictionary and database tables in the enterprise tree.

implement table context menu with the following commands

send to editor (investigate if we can drag & drop items from the tree into the editor)
generate insert
generate update
generate delete
generate select

implement schema viewer

on click load table schema in a webview panel

Other ideas:
- generate .puml representation of the table
- implement an ERD generator

Functions still missing:

edit table definition after checkout (add, edit columns, indexes and foreign keys)
browse table contents


Fix for polling on bad fd (tokio), with uvicorn reload

wip to fix #1618

its quite weird whats going on here, adding else block fixes the polling issue but now the channel has None values?
INFO:     Started reloader process [30798] using WatchFiles
2023-09-17T02:25:16.822011Z  INFO ThreadId(01) mirrord_layer: Initializing mirrord-layer!
2023-09-17T02:25:16.823108Z  INFO ThreadId(01) mirrord_layer: Initializing mirrord-layer!
2023-09-17T02:25:16.832788Z  INFO ThreadId(03) mirrord_layer: Received hook message: None
thread '<unnamed>' panicked at mirrord/layer/src/lib.rs:826:56:
called `Option::unwrap()` on a `None` value
stack backtrace:
2023-09-17T02:25:16.832985Z  INFO ThreadId(01) mirrord_layer::common: Sending hook message: Tcp(
    Close(
        8000,
    ),
)

its quite weird whats going on here, adding else block fixes the polling issue but now the channel has None values? the message to be sent here is the Close, but the channel received a None before Close as socket.close cant get the sender and fails on Err(CannotGetHookSender)?

Yes, because you changed it so it doesn't set it when it's not set so it's None

its quite weird whats going on here, adding else block fixes the polling issue but now the channel has None values? the message to be sent here is the Close, but the channel received a None before Close as socket.close cant get the sender and fails on Err(CannotGetHookSender)?

Yes, because you changed it so it doesn't set it when it's not set so it's None

yeah I realized that, question: why did we have to leak the sender in the first place on forks?

Because the Drop implementation didn't work post-fork.

Because the Drop implementation didn't work post-fork.

from my understanding, i think it is the case that the old sender is being used to send the message after its forgotten, maybe we should keep a hashmap of hook_senders mapping each to parent/child and blocking_sends can lookup the correct sender by thread id?

I have a solution for this - I'll try to implement it soon.
The idea is to re-use the sender/receiver, as it should be okay to re-use between runtimes. On fork, we would call a message to hooksender that will send us back the receiver, then we pass it.


Set of prompt selections for conflicts with another user restarting endlessly

I got a set of prompt selections for conflicts with another user (22 in total) during a long edit (+/-224 edits if i recall correctly). Some were not for edits that happened at the same time during mine, I believe some were about the former edits that were already in place, others indeed from a user that edited the same elements in between. That's not the big issue though. After having compared all prompts in favor of mine because far more influent (positionning, MP integrations, corrections...), I encountered a second set of prompt selections (3 of them which were part of the first set), i responded again but at the saving the second set was endlessly restarting itself. Had to save the XML... sigh
Further I closed the window, told myself that maybe if i relaunch what's temporarily saved, the bug will disappear. I got only 152 edits back.
Please, can someone upload my edits too?
By the way i know 224 edits is exaggerated but i enter often huge edits because of massive MP integrations
I do this because :

it's easier to create complex areas
it makes areas of multiple elements more clear while keeping its precision (less parallel or interconnected lines)
it lowers data usage
since Mapnik changed its Forest & Wood tiles with a transparency, the transparency will over tile the inner element if no relation is defined, many users plotted inner areas without relations, so now proper MP integration will be needed to be set or there will be errors in OSMi (in my home country Luxembourg, it's often near zero errors)
last but not least, for future edits in those MP, it's way easier and less time consuming, full beneficial.

Do you still have the xml file?  Can you share on Dropbox or another file sharing service?
I think you hit the bug in #2735 that has been fixed already..

Thank you for the fast reply!  :)
Trying for the first time Drive, you should be able to access it here :
https://drive.google.com/file/d/0BzU9J1u6HDyCUWpyQUd4dThjaGM/view?usp=sharing
Will check the other topic, tomorrow, it's near midnight here.

Looking into it more, I think some of this has been fixed already.. Do you still have the history saved in your browser?  Meaning, when you start iD, does it offer to restore your edits?  Or did you clear them?
If you still have them, you can try your save again when when we release the new version in a few days...

No the history didn't come up after i rebooted my computer. The XML i saved is all what is left. Can you import those changes in OSM's database?

I've never tried this, but I did try to make the XML something that JOSM can process.  There is some possibly helpful info here.
I really don't know how to help, but someone on IRC or the help forum may be able to.

I installed JOSM and can't run it, it needs to run an older Java version than the one i have now... So even if it will add security risks i tried download the older version. I click on the DL button and... i have to sign in... seriously???! This is crazy... it's the drop that makes the ship sink!

@SHARCRASH I've uploaded your changes in http://www.openstreetmap.org/changeset/33814222. Please check if everything is alright now.
I'm wondering why JOSM won't run on your machine. Have you tried the webstart version? Perhaps this is something you should report on JOSM's bug tracker?

Thank you! Really appreciated! :) Yeah, the big picture seems right.
I tried to reinstall Java... it seems that it was the source of the problem. JOSM starts normally now.


Support connection pool

Hi, kr
Connection pool for beanstalk go package, please take a look at this pr, thx.

@kr ping

@kr can u merge this?

@Assada use PR's author fork https://github.com/c77cc/beanstalk


Allow Multiple Reduction Functions

Allow multiple reduction functions instead of one simple reduction.
Adds a column header for each reduction and initializes the value as null in order to be used in min-max functions.
Addresses Issue #4  and I'll try to implement a draggable area with predefined functions to choose from (like rows-columns)

Adds a dragable area where you can drop values and select the aggregation function.


Adds "Near Me" Geolocation Mode to the Search Drop Down

This is an initial attempt to request the end user's location on load, and calculate the distance in miles to the meeting. If the user accepts, it will calculate the distance to the first meeting in the array and dump the results to the console.
@joshreisner, what do you think of this approach? My hope was simply to display the distance to each meeting with the address, if the user allows their location to be probed. After talking with our tech advisory group here in Philly, that seems to be the main concern for folks from out of town.

Hey @FlipperPA the current WP plugin has three "modes" : Search, Near Location, and Near Me. Only in the "Near Me" mode does it request user geo and show the distance column. You're able to link directly to the "Near Me" mode from the site. Doesn't look like Philadelphia is doing this but most other sites do. I'm open to making a UI change but that'd be separate conversation.
If the goal of this branch is to implement the "Near Me" mode as it works in the plugin that'd be awesome!
Running the branch locally I'm not actually seeing the new column. Do you know what the issue might be?

@joshreisner I was taking a slightly different approach, and requesting the user's location while in the standard search mode. In testing, I'm able to Geocode our 1,765 meetings in 134 milliseconds, so it really isn't that big a hit.
I hadn't fully implemented the distance yet, but let me finish what I'm thinking and then you'll be able to see it. Thanks!

It's not a question of processing time, it's a question of authorization and user expectations. I don't want the default view to immediately ask the user for their location before rendering the page. I'd prefer they opt in to sharing it, either by clicking a link like "show meetings near me" or selecting an interface element from the top (right now that's "near me" in the dropdown but could be made more prominent)
If the request is immediate, people are going to be more inclined to deny it, and once they've done that, it's pretty much game over. I think only a very slim minority of people are going to go in and re-authorize location sharing.

Fair enough! I'll pivot. Does the code for calculating distance and such look okay? It seems to match up well with the tests I've done at home, but I must admit, my trigonometry is very out of practice. :)

@joshreisner I think this is close to ready to go. Feel free to break out the red pen if you have suggestions on improving anything, as I'm still new to ReactJS. This has been refactored to use the "Near Me" in the dropdown.

@joshreisner PS: you asked earlier about the column not showing up; I've made a modification here to allow "Near Me" mode to show up with local development: https://github.com/code4recovery/react/blob/feature/user-location/src/helpers/data.jsx#L320

awesome thanks @FlipperPA ! i promise to review this soon and let you know

Hey @FlipperPA so this works really well in testing, but there are a few things I think we want to take care of before we merge this.

architecturally, i don't think the filtering belongs in the Controls component, probably it'd be better to move it to the Data helper
it's great to check for navigator.geolocation but we should probably do that when we're setting capabilities.geolocation since that's the intent of that var
the existing "near me" functionality doesn't simply display distances to the user, it also filters by distance. I think the default is 5 miles, but a new dropdown is exposed in place of the Region / District dropdown with like 1, 2, 5, 10, etc.
we should hide the distance column again if they switch modes
extremely minor, but we should use const and let instead of var
we should try to make the distance more prominent on mobile (the main use-case) like it is in the plugin

Sorry this sounds like a lot of stuff! I'm happy to merge if we can take care of 1 and 2. The rest of the stuff can be deferred for later.

Thanks for the feedback, @joshreisner! I'll be getting back to this in a day or two, as we've just pushed out the new version of our website. You might be interested in seeing this in action: https://www.aasepia.org
:)

@joshreisner I've amended this PR to take care of (1) & (5).
However, I have a questions about (2). The reason for having the navigator.geolocation where I do is that prompts the end user to allow their location to be used. It triggers after they set their mode to "Near Me."
If we were to trigger the request when setting the capabilities.geolocation variable, it would ask them to allow us to use their location before changing their mode to Near Me, which was what I refactored away from, right? Or am I missing something?
I'll add Issues for (3), (4), and (6), so they don't fall through the cracks moving forward.
I hope you're having a lovely holiday season, brother!

@FlipperPA navigator.geolocation just checks for the existence of the object; you have to run getCurrentPosition (or better yet probably watchPosition for mobile users) to actually pop the request. https://codepen.io/joshreisner/pen/xxbLPEK
Nice job on the site. I updated your API URL in the app so it's pulling from the new data source now.

I see the refactor to move the function, but I'm talking about actually moving the filtering. Let me approach it from a different angle:
See how in your dev environment if you switch the day to Tuesday the URL changes to https://react.test/?day=2 and then if you reload the page then Tuesday is still set? This is important functionality because it lets you permalink to Tuesday.
Similarly, when you set the mode to "Near Me" then the URL changes to https://react.test/?mode=me -- but if you reload it's no longer geolocating. This is because the trigger to geolocate is currently inside the control so you need to click or tap to make it go.
Instead we should remove lines 131-135 from controls.setMode and do all this navigator stuff inside data.filterMeetingData at about line 37, (probably make it an else condition on keyword search).
Hopefully that makes sense? If not lmk, I'm happy to do a zoom. I don't think it will take much more work, it seems very close…

Also before I forget, did you want to make 'near me' the default? Because you should be able to do that with this change, and by adding mode: 'me' to your config.defaults
        defaults: {
            title: true,
            mode: 'me', //add me to make the geo happen automatically
        },

AHA, that absolutely makes sense. I think I'll take you up on an hour on video, if that's cool, just so we can get some of this pushed across the finish line without going back and forth. My goal here is to get good enough with ReactJS to help the next person who wants to contribute!

Hey @FlipperPA ok lmk what you think of the state of it now. The main thing is: filterMeetingData runs at each render, but we will get a render a) when you change modes, and b) when the getCurrentPosition callback fires. So there's an if statement in filterMeetingData that says do we have a center? If not, ask for current position. If so, then do the filtering (although we're not there yet).
Distances are updated or cleared on each render,
This should actually close #38 -- this is happening now in table.jsx.
Also this should satisfy or get pretty close to #39 as well.

Question: should we be storing the center in the query string? It is currently. I could see that as a privacy concern, but also possibly a support win, if someone is able to share what they're seeing in terms of distances.
Related: are we getting too much precision on the geo? Maybe we should limit it to 3 or 4 decimal places? https://www.google.com/search?q=geo+coordinate+precision

@joshreisner I took at look at this, and I think we're getting close. I think we may just need some refinement on passing the URL parameters around depending on the mode.
If I come to the site, and search for bucks county, it gives me what I expect:

If I then switch mode to Near Me, and Allow Location Access, it reverts to the full meeting list without the search term (I believe this is as designed), and adds the distance:

Then, if I switch back to search, it doesn't re-apply the search I had done:

Of course, this might be something we need to add when we put the distance filter in place.

Yeah, I don't think we want to preserve the search terms.


Refactor client logic out of CLI

Fixes #547

Some of the coverage issues might be helped by #538, so will defer until then


Add support for Restify

restify is a node.js module built specifically to enable you to build correct REST web services. It intentionally borrows heavily from express as that is more or less the de facto API for writing web applications on top of node.js.

Restify has a very similar API to Express, but nevertheless has issues when used with Express driver. Probably, it will need it's own driver for clarity and maintainability.

Im not against it if you will maintain it

My resources are very limited at the moment (I think it goes for most of us here), but I definitely would like support for Restify, so I will try to implement it in the future, if no one does this before me of course.

Can anyone point to the areas that need adaption ? We are interested in using restify too.

I've added support for custom driver, so all you need to do is extend the BaseDriver class. Then you can create a routing-controllers app with createServer function.
Once you will be satisfied with the restify driver, you can create a PR with the new driver, but you also have to change test suite for the new driver 😉

We are moving away from custom/multiple driver support. RC will be shipped with a fixed driver.


I want to add footer

Hi @ApoorvShri, thanks for your interest. What kind of a footer did you have in mind and what would you put into it?

We can add copyright, GitHub repo, social links and contact info

Based on the nature and current design of the app, I don't think we're going to have a need for it at the moment.
Appreciate the suggestion tho. :slightly_smiling_face:


[BTS-413]

Scope & Purpose
Changed error message that appears when user tries to see server statistics in the "nodes" window by clicking on the server's short name and the statistics are disabled or the user is not logged into database _system.

[ ] :hankey: Bugfix
[x] :pizza: New feature
[ ] :fire: Performance improvement
[ ] :hammer: Refactoring/simplification

Checklist

[ ] Tests

[ ] Regression tests
[ ] C++ Unit tests
[ ] integration tests
[ ] resilience tests

[ ] :book: CHANGELOG entry made Obs.: not sure needed as it's a change to the message string
[ ] :books: documentation written (release notes, API changes, ...)
[x] Backports
[x] 3.10 https://github.com/arangodb/arangodb/pull/17949

Related Information
(Please reference tickets / specification / other PRs etc)

[ ] Docs PR:
[ ] Enterprise PR:
[x] GitHub issue / Jira ticket: https://arangodb.atlassian.net/browse/BTS-413
[ ] Design document:

LGTM