Use conda activate instead of source activate/. activate to activate a conda environment for newer versions

Environment data

VS Code version: 1.54.3
Extension version (available under the Extensions sidebar): v2021.3.680753044
OS and version: linux x64 5.9.16-1
Python version (& distribution if applicable, e.g. Anaconda): 3.9.2 conda 4.9.2
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): conda
Relevant/affected Python-related VS Code extensions and their versions: Jupyter v2021.3.684299474
Value of the python.languageServer setting: Jedi

Expected behaviour
for the command '. activate' to work in integrated terminal. (but the source command DOES work!- i.e source activate & conda activate)
Actual behaviour
. activate returns an error: No such file or directory, but weirdly enough - the command will work after deactivating the environment:

Steps to reproduce:

. activate conda_env_name

Consequence
This is actually affecting a error when using the jupyter extension: whenever I need to activate a virtual environment other than base in a notebook, the following command is used:
. activate mech && echo etc.

returning a command failed message saying: activate: No such file or directory.

I've had this problem in the past, and it disappeared for a while, but now it's back.
Also, a weird observation: if code is called from terminal, this issue does not happen.

Thanks for the bug report! We investigate issues in order based on priority and severity, which includes the impact it has on your ability to use the extension to do productive work, and the number of people affected. If other users come forward and leave a comment demonstrating they are seeing/reproducing the problem then we will raise this issue's priority.
Thanks for your understanding and patience!

Can you try this?

Anaconda prompt and cd to your workspace.
Activate the environment using conda activate
Start VS Code using code .

related #10626

Hey, @karrtikr.
Apparently it's a well known issue! I'm sorry if I missed it from the issues page. starting vscode from conda prompt did solve it!
Thanks for your attention!

Yes, your issue seems very similar to earlier issues like this one https://github.com/microsoft/vscode-python/issues/14123#issuecomment-701568328. conda activate is more reliable than source activate or . activate, so we'll change the code to do that instead, so you don't need to open VSCode using conda prompt everytime.

I came here by way of #8770. I've started using conda create -p {directory} more often than using named environments and it's really obnoxious that I have to manually activate the environment when it works as expected for conda environments created with -n.

To workaround this I had to find the location of my activate executable and set python.condapath to the conda executable in the same directory.
I my case activate was at /opt/conda/bin/activate so I set python.condapath to /opt/conda/bin/conda. (Even though which conda results in a different path: /opt/conda/condabin/conda)

Currently when you launch an integrated terminal, you have to wait as it does this:
source /opt/conda/bin/activate
conda activate myenv
user@host:~ $ source /opt/conda/bin/activate
(base) user@host:~ $ conda activate myenv
(myenv) user@host:~ $

The source is not needed and a waste of time

Activate enviroment myml returns an error: No such file or directory when the enviroment is created by non-root user.
This env list in my system. machine-learning is global env (created by root user), myml is user env (created by user deep).

env create by non-root user.

env create by root user.

Hello, I have fixed this issue  in PR https://github.com/microsoft/vscode-python/pull/18989

Fixed with https://github.com/microsoft/vscode-python/pull/18989.

Fix should be out in the pre-release version of the extension in a day, use the following to try it out:


Prepare 5.2 release

Adding better Domain normalization
Adding better PublicSuffix normalization
Adding better Rules::getPublicSuffix method
Improve PSR-16 Interoperability #213

@Dolondro @jeremykendall If no bug is found this will be merge next week and I will release as 5.2.0


Update what-model-should-i-use.md

Added Links to the corresponding GitHub repos

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


docs($http): Corrects a typo

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Missing letter: seeing 'his', instead of the word 'this'
What is the current behavior? (You can also link to an open issue here)
What is the new behavior (if this is a feature change)?
Does this PR introduce a breaking change?
No, but corrects documentation. And makes it cleaner.
Please check if the PR fulfills these requirements

[ X] The commit message follows our guidelines: https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#commit-message-format
[ ] Tests for the changes have been added (for bug fixes / features)
[ X] Docs have been added / updated (for bug fixes / features)

Other information:
Correcting a typo line 558: To prevent "this" as a proposed replacement to prevent "his".

Thx for the PR. You need to have signed the CLA, before we can merge this.
(It's a one-of process and pretty straight-forward :smiley:)

I signed it.
Contributor License Agreements
Individual Agreements
Individual agreements we have on file for you:
Agreement	Name	Date Signed	Manage
Google Individual CLA	Anna P. Schwab	Apr 14, 2016 09:14 PDT	Edit Contact
Information
On Wed, April 13, 2016 6:40 pm, googlebot wrote:

Thanks for your pull request.  It looks like this may be your first
contribution to a Google open source project. Before we can look at your
pull request, you'll need to sign a Contributor License Agreement (CLA).
:memo: Please visit https://cla.developers.google.com/ to sign.
Once you've signed, please reply here (e.g. I signed it!) and we'll
verify.  Thanks.

If you've already signed a CLA, it's possible we don't have your GitHub
username or you're using a different email address.  Check your existing
CLA data and verify that your
email is set on your git
commits.
If you signed the CLA as a corporation, please let us know the company's
name.

You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/angular/angular.js/pull/14430#issuecomment-209715998

Kind regards,
Anna P. Schwab

code. apps. web

Hello Georgios,
I signed it.
Contributor License Agreements
Individual Agreements
Individual agreements we have on file for you:
Agreement	Name	Date Signed	Manage
Google Individual CLA	Anna P. Schwab	Apr 14, 2016 09:14 PDT	Edit Contact
Information
If there's any confusion my associated email for google is
<EMAIL_ADDRESS>but my github cloverharvest is with<EMAIL_ADDRESS>We're learning Angular now.
Thanks,
Anna
On Thu, April 14, 2016 12:34 pm, Georgios Kalpakas wrote:

Thx for the PR. You need to have signed the CLA, before we can merge
this. (It's a one-of process and pretty straight-forward
:smiley:)

You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/angular/angular.js/pull/14430#issuecomment-210112862

Kind regards,
Anna P. Schwab

code. apps. web

You are a contributor now :sunglasses:
Thx !

Awesome! Thanks, Georgios!

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub


[GRPC] fails to create cmake config

Describe the bug
After running the following commands the cmake [package]-config.cmake files are all created but the grpc-config.cmake and gRPCConfig.cmake fail to be created.
After finished all of the dependencies generate correct and complete config file however the grpc port does not contain this which does not align with the information provided in the instructions for linking the port.
Environment

OS: Windows 10

To Reproduce

 git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
 .\bootstrap-vcpkg.bat
 .\vcpkg integrate install while in a admin terminal
.\vcpkg install grpc or .\vcpkg install:grpc:x64-windows

Expected behavior
I expect to see a grpc-config.cmake file in order to use the findpackage functionality while vcpkg is included in the  CMAKE_TOOLCHAIN_FILE.
find_package(gRPC CONFIG REQUIRED)
message(STATUS "Using gRPC ${gRPC_VERSION}")

Failure logs
No direct failure but to verify I did do a full system search and no such file was built on my machine no matter where I try to download vcpkg.
No failures happen during build and it's evident the full build gets completed and the following message is prompted.
PS C:\vcpkg> .\vcpkg.exe install grpc:x64-windows
Computing installation plan...
The following packages are already installed:
    grpc[core]:x64-windows
Package grpc:x64-windows is already installed

Total elapsed time: 129.4 us

The package grpc:x64-windows provides CMake targets:

    find_package(gRPC CONFIG REQUIRED)
    # Note: 8 target(s) were omitted.
    target_link_libraries(main PRIVATE gRPC::gpr gRPC::grpc gRPC::grpc++ gRPC::grpc++_alts)

    find_package(modules CONFIG REQUIRED)
    target_link_libraries(main PRIVATE c-ares::cares)

Additional context
This file at some point existed on my previous build machine but is no longer built on this machine. I however am very new to this so it's entirely possibly I'm doing this incorrectly.

Seems like this was an issue in the following issue in the GRPC repo:
https://github.com/grpc/grpc/issues/11378

https://github.com/grpc/grpc/pull/12469
This should have been fixed in the following PR, however it doesn't seem that it is correct.

Thanks for posting this issue. After installing grpc successfully, the VCPKG will create files as below, it include the file gRPCConfig.cmake.

Yeah that's interesting on my machine that's not showing up in that local folder relative to vcpkg or anywhere using the search anything utility.
I've moved on to cloning it locally and automating a build with cmake.
I can try to provide more info soon.

Hi @HiceS, does this issue still occur?

@LilyWangL I just re-cloned and installed the latest GRPC and it seems to now create the required files. Maybe it was my local machine but now they get built correctly thank you. I can close this or you can if you feel it's satisfied.

Thanks for posting this issue. This issue has been fixed. So I am closing this issue for now.


Toast way to hide column on mobile?

Does toast have way to hide column for example on mobile? Like: col--m-0-of-2?

Not from what I see in the source code, but you could easily create some helpers to fulfill this.
Bootstrap's approach is still a good one in my opinion ("Responsive utilities" in their documentation), you'd just have to use the media queries already in place (using the "$toast-breakpoint-" variables) and put some "hidden-s" and "hidden-md" classes in it.
My guess is that this grid's goal is to remain as minimalist as possible, to me it's an interesting working base, simple enough to be customized and enhanced depending of projects' needs.


feat: Add data protection policy support

Description
Add data protection policy resource.
Motivation and Context
https://github.com/hashicorp/terraform-provider-aws/pull/30008
https://docs.aws.amazon.com/sns/latest/dg/message-data-protection.html
Breaking Changes
No.
How Has This Been Tested?

[x] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[x] I have tested and validated these changes using one or more of the provided examples/* projects

[x] I have executed pre-commit run -a on my pull request

This PR is included in version 5.2.0 :tada:


unwanted email sending from beta.hydroshare

Description of the bug
The Celery task for sending quota emails sent 8 emails out to users last week from beta.hydroshare This should only be possible if beta is in DEBUG mode. I'm not sure why it would've been...
However, this incident makes it clear that our email sending logic on beta might need revision.
Should we add more safeguards to ensure that unintended emails don't go out?
Change the django email backend configs?
Use a mailinator?

I vote that we

create a custom email backend just for Beta
add that backend as the default in /projects/hydroshare/hsdata/zdt/beta/deploy (and add it to local_settings.template under source control)
modify /projects/hydroshare/hsdata/zdt/beta/deploy/hs_email so that it seds this new backend appropriately

I created a draft PR https://github.com/hydroshare/hydroshare/pull/4724 that demonstrates my thinking for this.
Right now this beta-specific django email backend will only send activation emails
@hydrocheck @martinseul are there other emails that beta should actually send, for testing etc?

an alternative is to whitelist specific emails on beta that are used for testing etc. Not sure which approach is better for our needs...I'm guessing probably the whitelisting by email type (example only activation emails) is preferable...


PHOENIX-5025 Tool to clean up orphan views

@kadirozde I have a few comments. Looks really good overall!

LGTM, thanks for the patch @kadirozde .


When deleting tag or group : not deleted in event model

Client v1.1.5 (1217) - API v1.1.5 (1217)

I create a group called "Test", associate my user account to it
I create an event model, calling "Test" as participant

-> when I create an event, I get the notification in my app

I delete the group "Test". It is still shown in the event model
I create a new "Test" group, associate my user account to it

-> when I create an event, I don't get the notification in my app
I encounter the same behaviour with tags.
Solution today : delete the old "Test" group from the participants and call it again to get the new one.
2 ideas about it :

Showing a message when deleting a group or tag, to remind that it's used in event models
Delete the group or tag set in the event models

Already reported in https://github.com/kalisio/aktnmap/issues/263


Fix several ResourceWarning: unclosed file and some related improvement

Hello,
This is a little patch to fix several file descriptor leaks first, and also to prefer the use of the with context manager when dealing with files to ensure file descriptors are always cleanly closed.
I tried to separate commits as much as possible. Let me know if it needs more work/rebase or if some changes are not acceptable as is :)
About the change in unicode.py I think this patch could be better:
diff --git a/Lib/fontTools/unicode.py b/Lib/fontTools/unicode.py
index 00e13bb6..ef3ed695 100644
--- a/Lib/fontTools/unicode.py
+++ b/Lib/fontTools/unicode.py
@@ -4,7 +4,6 @@ from fontTools.misc.py23 import *
 def _makeunicodes(f):
 	import re
 	lines = iter(f.readlines())
-	f.close()
 	unicodes = {}
 	for line in lines:
 		if not line: continue
@@ -19,8 +18,11 @@ class _UnicodeCustom(object):

 	def __init__(self, f):
 		if isinstance(f, basestring):
-			f = open(f)
-		self.codes = _makeunicodes(f)
+			with open(f) as fd:
+				codes = _makeunicodes(fd)
+		else:
+			codes = _makeunicodes(f)
+		self.codes = codes

 	def __getitem__(self, charCode):
 		try:

WDYT?

@anthrotype, thank you for the review. You are totally right and I applied changes as requested :)

@anthrotype what is the status? Do you think it is good enough to be merged?

looks good, thanks!


Issue #21 - Memory leak

This is my first contribution to an open source project and my first use of GitHub so if I did anything incorrectly, just delete this entire thing.
If the remote server does not respond to the HTTP request, line 223 (for example) returns from the PUT function before doing the CURL cleanups on lines 229 thru 231. This causes a memory leak.
I tested the following code change with the PUT function and it resolves the leak. I made changes in all functions that had similar code.
if (res != CURLE_OK)
{
ret.body = "Failed to query.";
ret.code = -1;
//return ret; //Commented the return
} else { //else added here
long http_code = 0;
curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &http_code);
ret.code = static_cast(http_code);
}
...Followed by CURL cleanup and return statement.
Functions now have only one return statement.

I looked at the failing checks and I don't believe they are related to the changes I made.

@watsocd thank you so much for taking the time to contribute! The tests have had some problems which I was meaning to look into, so they are likely unrelated. I'll take a closer look at the changes in the coming days and will comment then.

@watsocd I changed master to fix the tests. Would you mind to merge it so we can have the build succeed here?

also this fixes https://github.com/mrtazz/restclient-cpp/issues/21, right?

The one leak issue was already fixed. This second issue takes care of a second leak in the same code.
I looked at the testing code. Are we positive the test server is functional?

I am new to Github. It won't let me merge. It says:
This branch is up-to-date with the base branch
Only those with write access to this repository can merge pull requests.

ah yea I meant merge master into your pull request branch.

Looks like it passed now.

hmm that's interesting. Not sure why they pass now. It looks like your branch is still using the old test setup which should be completely defunct. But don't worry about that. Can you just merge in master and write a test to run all methods against a non-existing URL maybe so we can have tests running against this new functionality?

@watsocd any updates on this?

this should be fixed via https://github.com/mrtazz/restclient-cpp/pull/39 now


[eleventy-plugin-local-respimg] Right way to exclude certain images or files

Currently, the plug will transform all  in an Eleventy project into <picture><picture> tags. This may not be desirable for some images:

...that are used for UI. After respimg transform styles may break.
... already have srcset attribute set.

What would be an ideal way to exclude such images? I made an attempt to exclude through outputPath regex. But then realized, UI images will be present in all the pages. How can we exclude them?
Should we do class or data attribute based filtering? Ex.  will not be touched?

Or, transform all  without any classes by default. Then, the  with classes need to be explicitly opted in like  or


Allow using custom Camunda input variables and output names in DMN headers

added -cv option for reading and parsing Camunda input and output variables
added null checks for description and annotation
added fat jar

Not all Camunda DMNs have header names exactly like the Camunda process variables.
ColumnName1, VersionIn, and VersionOut could be used, but in some instances when the DMNs contain a lot of columns, these are not appropriate for column names.
Camunda Modeler has the possibility to map a column to a Camunda process variable by clicking on the header and adding Input Variable for input and  Output Name for output

 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.Mircea Curticapean 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.


llvm: Allow llvm-readelf

Enable multiple names for the readelf program under llvm

When this merges, what's the process to backport it to 3.5? We really need this fix to get CI working for a downstream project that needs to be on a release branch.

Well since this is a feature enhancement and not a bug fix, it won't


Ascii: Simplify file handling.

Description
This PR simplifies the file handling in get_ascii() by making get_distro_colors() explicitly set the ascii file to use. This speeds up the script and removes a tr call on systems using bash 3. This also allows us to more easily fix ascii detection on Void Linux and Gentoo/variant.
This does make the function and script much larger but this is just a side effect of simplifying the file handling in get_ascii(). The script is actually faster with these changes!
Features

Removes a call to tr!
Removes the assumption that first word in distro --> ascii file name.
Removes the long lists in the case statement.
Removes Travis ascii art since it's no longer used.

Issues

[x] distro_variant doesn't work.

TODO

[x] Alphabetize the distros to make it easier to edit them later on.
[ ] Make some distro matching less greedy.
[ ] Testing

[ ] Test all distros.

I'll write a script to loop over all ascii files.

Note
@konimex, this is the other idea I had. This might not fix the detection issues yet as we'll need to update the matching for Void and Gentoo.

Works fine in Void here. All Gentoo variants should be fine too.

I think that's a bug, I'll take a look.


build: enable codeql scanning

Codecov Report

Merging #99 into master will decrease coverage by 0.59%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #99      +/-   ##
==========================================
- Coverage   78.88%   78.29%   -0.60%
==========================================
  Files           9        9
  Lines        1009     1009
==========================================
- Hits          796      790       -6
- Misses        191      195       +4
- Partials       22       24       +2


tests for fallback ID of GeckoDriver

from https://github.com/sclevine/agouti/pull/150#issuecomment-370195916

Add a unit test for the fallback behavior in the bus.

Did this.

Looks great! Thanks for contributing!


fix issue #206 and remove some unused files

@whitefen  @Radar3
Could you please review this PR, which was tested on my local machine.
thanks


Controller needs to listen on public IP to get requests from outside docker network

Container's IP need to be passed to gotgt frontend so that the LUNs are accessible from outside docker network.
Currently the Controller's control commands can be triggered from inside the container as it's listening only on localhost:9501, need to add one more listener so that these requests can be posted from outside.

Container's IP is now being passed to gotgt frontend.
Now the controller is listening on *:9501 and the port 9501 needs to be exposed while starting the container.


Documentation

Some documentation along with scenario examples of how this library comes handy would be a nice addition to the readme file.

If you want you can always add it to the readme if you are willing and have time to make a PR.

I do not have the time, unfortunately. Closing this then.

I will see if I can document the usage then, so that way new users will be able to properly use the generator.
Also note: I plan to change the way I deploy the actual runtime code that is currently in nuget packages in the form of a special runtime pack that would need to eventually be installed as an .NET workload. But since dotnet workload install does not allow 3rd party workloads to be installed yet it will require a .NET global tool to be installed globally that would then handle all of the workload installation, uninstalation, and updating of the workload needed for it.
Also it would require a minor csproj change as well:
<UseElskomSdk>true</UseElskomSdk>

I will see about changing the default references to the other nuget packages the workload references as well (like analyzers). Also the cool thing about the workload thing is that the Sdk pack that will be in the workload will reference this generator automatically as well too.

I forgot to push 1.0.13 to nuget oops. Will push it seen and hopefully with documentation as well.

@starikcetin do you think this will work?


mhchem TeX extension breaks internally when leaving out closing bracket

Issue Summary
TeX mhchem input extension produces an error from the internals when not closing the \ce command.
Steps to Reproduce:
Live minimal reproducible example here: https://codesandbox.io/s/nice-dhawan-yu49p?file=/index.html

Load latest tex-chtml.js
Render the equation \ce{H2O
Notice uncaught error:

TypeError: t.slice is not a function
    at u.Machine (mhchem.js:1:410)
    at e.parse (tex-chtml.js:1:245691)
    at t.parse (tex-chtml.js:1:212776)
    at t.parse (tex-chtml.js:1:256801)
    at t.controlSequence (tex-chtml.js:1:220763)
    at e.t.parse (tex-chtml.js:1:243417)
    at t.parse (tex-chtml.js:1:212776)
    at t.parse (tex-chtml.js:1:256801)
    at t.Parse (tex-chtml.js:1:257409)
    at new t (tex-chtml.js:1:256142)
    at e.compile (tex-chtml.js:1:197284)
    at e.t.compile (tex-chtml.js:1:44978)
    at Object.renderMath (tex-chtml.js:1:35007)
    at e.renderConvert (tex-chtml.js:1:35820)
    at e.t.convert (tex-chtml.js:1:44865)
    at e.t.convert (tex-chtml.js:1:38921)
    at tex-chtml.js:1:22644
    at e (tex-chtml.js:1:717213)
    at new Promise (<anonymous>)
    at Object.e.handleRetriesFor (tex-chtml.js:1:717178)
    at Object.e.MathJax.<computed> [as tex2chtmlPromise] (tex-chtml.js:1:22597)
    at convert (yu49p.csb.app/:57:17)
    at HTMLInputElement.onclick (yu49p.csb.app/:133:11)

I would expect that with noerrors loaded, I would see some output at least. This error appears to break the rendering though.
The error appears to be originating here:
https://github.com/mathjax/MathJax-src/blob/2dd53ce6c8af3c9cceba0baf014ea9b065130774/ts/input/tex/mhchem/MhchemConfiguration.ts#L51-L53
The catch appears to assume that the error is an array, but the actual error emitted here is the following object:
{
  id: 'MissingCloseBrace',
  message: 'Missing close brace'
}

and thus there is no .slice().
Technical details:

MathJax Version: 3.2.0
Client OS: Windows 10 Pro
Browser: Chrome 98.0.4758.82

Supporting information:

Please supply a link to a (live) minimal example page, when possible.

https://codesandbox.io/s/nice-dhawan-yu49p?file=/index.html

If your issue is with the display of the mathematics produced by MathJax, include a screen snapshot that illustrates the problem, when possible.
Check your browser console window for any error messages, and include them here.
Include the MathJax configuration you are using, and the script tag that loads MathJax itself.

<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script>
    window.MathJax = {
        loader: { load: ["[tex]/noerrors", "[tex]/mhchem"] },
        tex: { packages: { "[+]": ["noerrors", "mhchem"] } },
    };
</script>
<script
    id="MathJax-script"
    async
<EMAIL_ADDRESS>></script>

https://github.com/mhchem/MathJax-mhchem/ is a better place for mhchem issues. https://github.com/mhchem/MathJax-mhchem/issues/20 looks potentially similar.

Thanks! Looks like a match indeed.

On another thought, I'm not sure if the issue is with mhchem, but with the integration of the extension in the MathJax code. The issue is that the MhchemConfiguration file's catch assumes that the error is an array instead of an object, which is on MathJax' side - not mhchem's side.

@wb-joona, thanks a lot for this bugreport, in particular your live minimal reproducible example. That was very helpful.
The issue is in MhchemConfiguration.ts
  try {
    let arg = parser.GetArgument(name);
    let tex = mhchemParser.toTex(arg, machine);
    parser.string = tex + parser.string.substr(parser.i);
    parser.i = 0;
  } catch (err) {
    throw new TexError(err[0], err[1], err.slice(2));
  }

Link to Source
The issue is that the first line (parser.GetArgument()) throws errors as TexError ({id: ..., message: ...}), while the mhchemParser in the 2nd line throws errors as an array of two strings (['id', 'message']).
As the TeXErrors are catched further above, anyway, it should be enough to "try" mhchemParser, shouldn't it? @pkra
  let arg = parser.GetArgument(name);
  try {
    let tex = mhchemParser.toTex(arg, machine);
  } catch (err) {
    throw new TexError(err[0], err[1]);
  }
  parser.string = tex + parser.string.substr(parser.i);
  parser.i = 0;


build Cortex M3 example with GHS

Hi Team,
Recently, I dowonloaded latest version threadx for github, and built it with my GHS MULTI environment.
I am using example project in ports\cortex_m3\ghs\example_build\azure_rtos_workspace.gpj
But below error message happens,
"
"........\common\src\tx_thread_create.c", line 276: error #20: identifier
"__IPSR" is undefined
if (TX_THREAD_GET_SYSTEM_STATE() >= TX_INITIALIZE_IN_PROGRESS)
^
"
Could you please help to check whether I need do some configuration in my Multi workspace or not?
Many thanks!
Br,
Xiangyu

Forgot to tell you my Multi version is 5.06, is that too old to use latest threadx GHS sample?

I do not have access to MULTI 5.06. We are using MULTI 7. I just tried with MULTI 7.1.6 and the latest version builds correctly.


cmd/go: cannot resolve subpackages of unfetched modules

In the fix for #26238, @rsc introduced a new +incompatible convention for projects using legacy build tags.
However, that mechanism does not seem to work for resolving packages that are not at the root of the module tree.
$ go version
go version devel +a9e638380f Tue Jul 24 16:59:54 2018 -0400 linux/amd64
$ cd $(mktemp -d)
$ export GOPATH=$(pwd)
$ mkdir -p src/proxy
$ cd src/proxy

src/proxy$ cat > proxy.go
package proxy
import _ "github.com/google/martian/httpspec"

src/proxy$ GO111MODULE=on go mod -init -module example.com/proxy
go: creating new go.mod: module example.com/proxy

src/proxy$ GO111MODULE=on go get<EMAIL_ADDRESS>go: finding github.com/google/martian/httpspec v2.0.0-beta.2
go: finding github.com/google/martian/httpspec latest
go: finding github.com/google/martian v2.0.0-beta.2+incompatible
go: downloading github.com/google/martian v2.0.0-beta.2+incompatible
go get<EMAIL_ADDRESS>cannot find module providing package github.com/google/martian/httpspec

src/proxy$ GO111MODULE=on go list github.com/google/martian/httpspec
go: finding github.com/google/martian/httpspec latest
go: import "github.com/google/martian/httpspec": cannot find module providing package github.com/google/martian/httpspec

src/proxy$ GO111MODULE=off go get github.com/google/martian/httpspec

src/proxy$ GO111MODULE=off go list github.com/google/martian/httpspec
github.com/google/martian/httpspec

This was found while attempting to produce a module definition for golang.org/x/build.

I can reproduce this by moving a small block of mod_get_commit.txt to the beginning of the test (before  the attempts using the module root path):
https://github.com/golang/go/blob/db810b6e394c38a0bd0eb52c3475d0fbc08469f8/src/cmd/go/testdata/script/mod_get_commit.txt#L11-L18
(CC @rsc, but I'm going to see if I can fix it tomorrow.)

This turned out to be a complex of compensating bugs and surprises.

modload.Import happily imports module roots as if they were packages, even if they aren't.
go get uses the output of modload.Import to decide which module to fetch.
search.CleanImportPaths returns "." if len(args) == 0.

As a result, a bunch of our existing tests end up compiling and installing empty packages in response to go get -u without arguments. There needs to be some step where we skip installation entirely if we invoked get without args in a module root that is not a package, and I haven't yet figured out how to do that cleanly. (I have a pretty big subset of the change done, but without that the tests fail right and left.)


[ir-compiler] add syntax and compilation of vec-related calls

Motivation
A follow-up of #6991. Updating the IR compiler also enables writing new IR testcases for the bytecode verifier passes recently updated.
[NOTE: unfortunately, this PR includes #6991 because GitHub does not support building PR on top of another PR... The actual code on the IR compiler is in the second commit of this PR]
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
Existing tests need to pass, new tests will be written.

Old PR, feel free to re-open.


Adding a Memcached chart

Hey @groundhog2k
Would you consider merging a chart for Memcached if I would make a PR?

Yes, why not. Thx!


Launch Checklist

In order to launch we should have:

[ ] LFE as a submodule in x-api
[x] at least 10 problems
[ ] a "how to get started" topic in the help repo repo (app/pages/languages/getting-started-with-lfe.md)
[x] one to a handful of people willing to check exercism regularly (daily?) for nitpicks to ensure that the track gets off on the right foot
[ ] add track implementors and other designated nitpickers as mentors to the track
[ ] toggle "active" to true in config.json

Some tracks have been more successful than others, and I believe the key features of the successful tracks are:

Each submission receives feedback quickly, preferably within the first 24 hours.
The nitpicks do not direct users to do specific things, but rather ask questions challenging people to think about different aspects of their solution, or explore new aspects of the language.

For more about contributing to language tracks on exercism, check out the Problem API Contributing guide: https://github.com/exercism/x-api/blob/master/CONTRIBUTING.md

Re: "how to get started"
I added a getting-started-with-lfe.md at yurrriq/docs@2aa00cd95d3bb7f0ce2794ce9529b80b7976f442 and will make a PR when it's ready. @kytrinyx, is that the preferred approach?
Re: regular nitpickers
I'm willing to check exercism daily, and I'm guessing Duncan would be willing with reasonable frequency.
Re: designated nitpickers
I'm not sure I understand this fully, but hopefully Robert can get on board too.
Re: contributing guide
I'll pore over it and make sure to follow the guidelines.

Yeah, that's a great approach for the getting started page, thanks!
The designated nitpickers is basically just the regular nitpickers, but they can be given access to nitpick all the problems in the track without having to do the exercises themselves. We don't need them, but it's sometimes nice to have.
If you find anything that is unclear or confusing in the guidelines, let me know!

Ah, that sounds great actually. We've got a thread on the LFE email list, but @oubiwann and I, at least, are for sure on board for being nitpickers. Thanks for making exercism and for all your help in this!

Opened exercism/x-api#66 to add LFE as a submodule.

@kytrinyx, how do we go about adding designated nitpickers? Is it in a config file somewhere?

I think we're basically ready for the big time here. I can keep adding exercises as I nitpick submissions. I'm excited to see how this track fares in the wild!

@yurrriq there's no interface for it yet--if you give me the list of github usernames, I'll make it so.

I think we're basically ready for the big time here.

w00t! I'll deploy so we can go live.

Let's do @yurrriq, @oubiwann and @rvirding for now. No promises on Robert but he should be on the list, just in case.

I'll maybe add a couple more (I think I did a few out of order) and the flip the flag. Thanks for all your help and for exercism in general!

Robert's not in the system yet. Remind me if/when he's logged in so that I can add him.

👍

This is probably not the best place to ask, but what's the process for adding new exercises, just adding a test and an example?
Someone on the LFE list raised the concern that a lot of the exercises aren't very Erlang-specific and lend themselves more to the C family of languages.

Yeah, most of the exercises were made up for the initial ruby track, and probably don't lend themselves to functional languages.
I've put a section about adding new exercises to the contributing guide: https://github.com/exercism/x-api/blob/master/CONTRIBUTING.md#submitting-new-problems -- start there, and feel free to ask questions if anything is unclear.

Awesome, thank you!

The flag is flipped.

sweet!

:tada:


Using Typemill as a static website generator

Well, Typemill is quite fast and the caching works well. But it would be cool to have a way to generate/update a complete static website with Typemill.

Yes, that was an idea for typemill version 2, but it is a long way to go....


Current json theme logic is case sensative

My current logic for loading the json themes is a bit crude, one example is it looks for files ending in ".json", which should work fine on Windows, as *nix is case sensitive need to make some changes to allow for that.

This was resolved in commit 24403b3


cookie_authentication_handler failing to achieve successful cookie auth due to aggressive default timeout

I have a fairly empty clean install of CouchDB with httpd/authentication_handlers set to {couch_httpd_auth, cookie_authentication_handler}, {couch_httpd_auth, default_authentication_handler}
Expected Behavior
I'm attempting to authenticate using only a cookie header. Something like:
curl http://upstream:5984/db -H "Cookie: AuthSession=d29ya2VyOjVCREMzNkRGOoASAazydw8meb2W5VoGcXDPD_UH;" -H "Content-Type: application/json"

Current Behavior
It isn't working with failure {"error":"unauthorized","reason":"Authentication required."}. The debug output for this lookup is:
[notice] 2018-11-02T13:01:56.383470Z<EMAIL_ADDRESS><0.29344.42> 41bae4dc6e upstream:5984 <IP_ADDRESS> undefined GET /db 400 ok 0
[debug] 2018-11-02T13:02:02.431594Z<EMAIL_ADDRESS><0.29314.42> 699405e1e2 cache hit for worker
[debug] 2018-11-02T13:02:02.431645Z<EMAIL_ADDRESS><0.29314.42> 699405e1e2 timeout 600

Possible Solution
Just to see if the timeout was blocking the lookup, I increased it to 3000 (didn't work) and 30000 (does work!)  Even with this massive timeout, the lookup seemed almost instantaneous (like couple ms not 300 seconds).
Your Environment

Version used: 2.2
Operating System and version (desktop or mobile): Ubuntu 18.04

@kennsippell I think you left the ; at the end of your cookie, try taking that off?
Can you include a full example of the commands you're using? I'm unable to reproduce - here's my worked example following along with our documentation:
$ curl localhost:15984/
{"couchdb":"Welcome","version":"2.2.0-f350d5f5d","git_sha":"f350d5f5d","features":["pluggable-storage-engines","scheduler"],"vendor":{"name":"The Apache Software Foundation"}}
$ curl localhost:15984/_users
{"db_name":"_users","purge_seq":"0-g1AAAAFDeJzLYWBg4MhgTmHgz8tPSTV0MDQy1zMAQsMcoARTHguQZGgAUv___5-flciAU2WSApBMsgcqw6cKYt4DiHl4VSYlgMyrJ8q8AxDz7hNWuQCicj9emx1ANscTsDmRIUkeoiQLAMIZVnY","update_seq":"1-g1AAAAFDeJzLYWBg4MhgTmHgz8tPSTV0MDQy1zMAQsMcoARTIkOS_P___7MSGXAqSVIAkkn2hFQ5gFTFg1Ux4laVAFJVT8CsPBYgydAApIAK5xNWuQCicj9hlQcgKu8TVvkAohLkziwAHyFWdw","sizes":{"file":38110,"external":5361,"active":2322},"other":{"data_size":5361},"doc_del_count":0,"doc_count":1,"disk_size":38110,"disk_format_version":7,"data_size":2322,"compact_running":false,"cluster":{"q":8,"n":1,"w":1,"r":1},"instance_start_time":"0"}
$ curl -X PUT localhost:15984/_users/org.couchdb.user:wohali \
>   -H "Accept: application/json" \
>   -H "Content-Type: application/json" \
>   -d '{"name": "wohali", "password": "apple", "roles": [], "type": "user"}'
{"ok":true,"id":"org.couchdb.user:wohali","rev":"1-eeaf91cbeec553b1bb511be8e209bfda"}
$ curl -vX POST localhost:15984/_session   -H "Content-Type: application/x-www-form-urlencoded"   -d "name=wohali&password=apple"
Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying ::1...
* TCP_NODELAY set
* connect to ::1 port 15984 failed: Connection refused
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to localhost (<IP_ADDRESS>) port 15984 (#0)
> POST /_session HTTP/1.1
> Host: localhost:15984
> User-Agent: curl/7.52.1
> Accept: */*
> Content-Type: application/x-www-form-urlencoded
> Content-Length: 26
>
* upload completely sent off: 26 out of 26 bytes
< HTTP/1.1 200 OK
< Cache-Control: must-revalidate
< Content-Length: 39
< Content-Type: application/json
< Date: Fri, 02 Nov 2018 17:37:35 GMT
< Server: CouchDB/2.2.0-f350d5f5d (Erlang OTP/19)
< Set-Cookie: AuthSession=d29oYWxpOjVCREM4QjVGOt5WmL3C4JxHbMDbyBtF6zLDQhnJ; Version=1; Path=/; HttpOnly
<
{"ok":true,"name":"wohali","roles":[]}
* Curl_http_done: called premature == 0
* Connection #0 to host localhost left intact
$ curl -vX PUT localhost:15984/mydatabase \
>   --cookie AuthSession=d29oYWxpOjVCREM4QjVGOt5WmL3C4JxHbMDbyBtF6zLDQhnJ \
>   -H "X-CouchDB-WWW-Authenticate: Cookie" \
>   -H "Content-Type:application/x-www-form-urlencoded"
*   Trying ::1...
* TCP_NODELAY set
* connect to ::1 port 15984 failed: Connection refused
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to localhost (<IP_ADDRESS>) port 15984 (#0)
> PUT /mydatabase HTTP/1.1
> Host: localhost:15984
> User-Agent: curl/7.52.1
> Accept: */*
> Cookie: AuthSession=d29oYWxpOjVCREM4QjVGOt5WmL3C4JxHbMDbyBtF6zLDQhnJ
> X-CouchDB-WWW-Authenticate: Cookie
> Content-Type:application/x-www-form-urlencoded
>
< HTTP/1.1 401 Unauthorized
< Cache-Control: must-revalidate
< Content-Length: 64
< Content-Type: application/json
< Date: Fri, 02 Nov 2018 17:38:55 GMT
< Server: CouchDB/2.2.0-f350d5f5d (Erlang OTP/19)
< Set-Cookie: AuthSession=d29oYWxpOjVCREM4QkIwOsxazK0odiw0o-B2dPfhC8wrdxQS; Version=1; Path=/; HttpOnly
< WWW-Authenticate: Cookie
< X-Couch-Request-ID: 2b2016a76b
< X-CouchDB-Body-Time: 0
<
{"error":"unauthorized","reason":"You are not a server admin."}
* Curl_http_done: called premature == 0
* Connection #0 to host localhost left intact

OK, so I tried something for which I'm not authorized, but it did work.

So... I lied. It wasn't a clean&empty database. Definitely my mistake there. I had more in there than I was aware of.
I have a repro on a fresh install with my configuration/ddocs. I'm basically running the script you have above in a loop with 15kb payload per document. It fails after about 750 iterations. I'll continue to dig in to see if I can isolate particular aspects of the configuration which make this worse.
But I'll rephrase this issue -- how did you arrive at 600 as the default value for timeout and do you have any guidance on when to adjust this value?  Maybe you have some reference material or pointers to info about that which I haven't seen in your docs.

@kennsippell By default, a _session  token is valid for 10 minutes. CouchDB cookies are stateless, meaning we do not store the session information on the server at all. The 10 minute / 600 second setting is in default.ini, you can override it in local.ini with:
[couch_httpd_auth]
timeout = 3600 ; or whatever number of seconds you want

I presume your 750 iterations don't take the full 10 minutes?
If this is an actual bug we'll need your full configuration and test script to reproduce. Thank you for working to make that as minimal as possible! :handshake:

User Error! Thanks for helping me through it.
Feedback -- found this a bit vague.
timeout = Number of seconds since the last request before sessions will be expired.


Upload D3.1 requirements

Chapters:

[ ] Code repositories
[ ] The README file
[ ] Code collaboration
[ ] Versioning
[ ] R
[ ] R functions
[ ] R packages
[ ] R analysis code
[ ] Python
[ ] Tutorials

Conversion per chapter:

[ ] Convert text to Markdown
[ ] Verify headers
[ ] Verify tables (use Markdown tables)
[ ] Verify all monospace uses code
[ ] Verify all external links resolve
[ ] Wrap all bare URLs in <url>
[ ] Verify all internal links resolve (within page and to other chapters). Use /page-name/#anchor-name even there is no page yet
[ ] Indicate language to code blocks
[ ] Upload images
[ ] Remove repeating empty lines

Editorial per chapter:

[ ] Move lead author to metadata, add ORCID.
[ ] Add above table ## Requirements
[ ] Use guide instead of chapter
[ ] Use B-Cubed instead of B3
[ ] Link to figure use [Figure 1](#figure-1) in text. Add {: #figure-1 } above figure.
[ ] List relevant citations at the bottom with [yovche_2023]: url "Full citation" and reference in text as [Author et al. 2023][yovche_2023]

Todo:

[ ] Is in-page TOC setup ok?
[ ] Where to organize images (in assets)?
[ ] How to link to images?
[ ] How to display author?
[ ] How to set permalinks for all in Frontmatter default

Guide is online at https://docs.b-cubed.eu/dev-guide/ Needs some proofreading to test all links. @LauraAbr is that something you can do?

I've written a little script to mine all the external links of the dev guide, I've included them below.
With this list, I used httr2 to check the http response code of the link. All but 2 resolved:
• https://support.posit.co/hc/en-us/articles/200526207-Using-RStudio-Projects
• https://github.com/b-cubed-eu/documentation/tree/main/tutorials

The first one is blocking my user agent as an anti mining measure. The web page loads fine, it's a false positive.
The second one is actually broken, and should actually be an internal link.

Complete list of external links:
- https://github.com/just-the-docs/just-the-docs
- https://github.com/b-cubed-eu/documentation
- https://www.rfc-editor.org/rfc/rfc2119
- https://b-cubed.eu/storage/app/uploads/public/65e/1b2/2a0/65e1b22a0b85c121473896.pdf
- https://docs.b-cubed.eu/dev-guide/
- https://docs.github.com/en/get-started/quickstart/github-glossary
- https://github.com
- https://github.com/orgs/b-cubed-eu/repositories
-<EMAIL_ADDRESS>- https://docs.github.com/en/repositories/creating-and-managing-repositories/quickstart-for-repositories
- https://github.com/organizations/b-cubed-eu/repositories/new
- https://b-cubed.eu/storage/app/uploads/public/64e/f45/6cd/64ef456cd4da1356663578.pdf
- https://docs.github.com/en/migrations/importing-source-code/using-the-command-line-to-import-source-code/adding-locally-hosted-code-to-github#initializing-a-git-repository
- https://en.wikipedia.org/wiki/.DS_Store
- https://citation-file-format.github.io/#/what-is-a-citation-cff-file
- https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files
- https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics
- https://devguide.ropensci.org/grooming.html#github-repo-topics
- https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-access-to-your-personal-repositories/inviting-collaborators-to-a-personal-repository
- https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes
- https://www.makeareadme.com/
- https://docs.python-guide.org/writing/documentation/
- https://devguide.ropensci.org/building.html#readme
- https://github.com/frictionlessdata/frictionless-r/#readme
- https://docs.ropensci.org/frictionless/
- https://docs.python-guide.org/writing/documentation/#restructuredtext-ref
- https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax
- https://docs.github.com/en/actions/monitoring-and-troubleshooting-workflows/adding-a-workflow-status-badge
- https://shields.io/badges
- https://dev.to/cicirello/badges-tldr-for-your-repositorys-readme-3oo3
- https://www.repostatus.org/
- https://lifecycle.r-lib.org/articles/stages.html
- https://data.research.cornell.edu/data-management/sharing/readme/
- https://datadryad.org/stash/best_practices#describe-your-dataset-in-a-readme-file
- https://www.contributor-covenant.org/
- https://docs.github.com/en/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github
- https://opensource.guide/
- https://opensource.guide/code-of-conduct/
- https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-code-of-conduct-to-your-project
- https://docs.github.com/en/account-and-profile/managing-subscriptions-and-notifications-on-github/setting-up-notifications/about-notifications#default-subscriptions
- https://docs.github.com/en/get-started/quickstart/github-glossary#mention
- https://docs.github.com/en/account-and-profile/managing-subscriptions-and-notifications-on-github/managing-subscriptions-for-activity-on-github/managing-your-subscriptions
- https://docs.github.com/en/get-started/using-github/github-flow
- https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/managing-a-branch-protection-rule
- https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors
- https://gist.github.com/peterdesmet/e90a1b0dc17af6c12daf6e8b2f044e7c
- https://tidyverse.tidyverse.org/CONTRIBUTING.html
- https://docs.github.com/en/issues/tracking-your-work-with-issues/creating-an-issue
- https://dev.to/opensauced/how-to-write-a-good-issue-tips-for-effective-communication-in-open-source-5443
- https://code-review.tidyverse.org/issues/
- https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/configuring-issue-templates-for-your-repository
- https://desktop.github.com/
- https://docs.github.com/en/desktop/installing-and-authenticating-to-github-desktop/setting-up-github-desktop
- https://semver.org/
- https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository
- https://inbo.github.io/tutorials/tutorials/git_zenodo/
- https://devguide.ropensci.org/releasing.html#news
- https://cran.r-project.org/package=sp
- https://cran.r-project.org/package=rgdal
- https://cran.r-project.org/package=maptools
- https://rspatial.org/raster/pkg/1-introduction.html
- https://cran.r-project.org/package=rgeos
- https://r-spatial.github.io/sf/
- https://rspatial.github.io/terra/reference/terra-package.html
- https://devguide.ropensci.org/building.html#recommended-scaffolding
- https://style.tidyverse.org/
- https://covr.r-lib.org/
- https://testthat.r-lib.org/
- https://rstudio.github.io/shinytest/
- https://doi.org/10.1002/9781118448908
- https://devguide.ropensci.org/
- https://doi.org/10.5281/zenodo.6619350
- https://swcarpentry.github.io/r-novice-gapminder/
- http://doi.org/10.5281/zenodo.3265164
- https://data.agu.org/resources/introduction-to-open-science-agu
- https://www.britishecologicalsociety.org/wp-content/uploads/2019/06/BES-Guide-Reproducible-Code-2019.pdf
- https://doi.org/10.1371/journal.pcbi.1008770
- https://doi.org/10.1371/journal.pcbi.1003285
- https://r4ds.hadley.nz/
- https://bookdown.org/yihui/rmarkdown/
- https://data.agu.org/resources/r-guidance-agu-authors
- https://support.posit.co/hc/en-us/articles/200526207-Using-RStudio-Projects
- https://www.britishecologicalsociety.org/wp-content/uploads/2018/12/BES-Reproducible-Code.pdf
- https://r-pkgs.org/workflow101.html#benefits-of-rstudio-projects
- https://swcarpentry.github.io/r-novice-gapminder/02-project-intro.html
- https://devguide.ropensci.org/building.html#pkgdependencies
- https://httr2.r-lib.org/
- https://jeroen.r-universe.dev/curl
- https://docs.ropensci.org/crul/
- https://arxiv.org/abs/1403.2805
- https://xml2.r-lib.org/
- https://cran.r-project.org/web/packages/rgdal/index.html
- https://cran.r-project.org/web/packages/rgeos/index.html
- https://cran.r-project.org/web/packages/maptools/index.html
- https://www.r-bloggers.com/2023/06/upcoming-changes-to-popular-r-packages-for-spatial-data-what-you-need-to-do/
- https://r-spatial.org/r/2023/04/10/evolution3.html
- https://r-spatial.org/r/2022/04/12/evolution.html
- https://readr.tidyverse.org/
- https://recology.info/2018/10/limiting-dependencies/
- https://r-pkgs.org/dependencies-mindset-background.html#sec-dependencies-pros-cons
- https://simplystatistics.org/posts/2015-11-06-how-i-decide-when-to-trust-an-r-package/
- https://www.tidyverse.org/blog/2022/09/playing-on-the-same-team-as-your-dependecy/
- https://usethis.r-lib.org/
- https://github.com/r-lib/styler
- https://lintr.r-lib.org/
- https://devguide.ropensci.org/building.html#code-style
- https://r4ds.hadley.nz/workflow-style
- https://r-pkgs.org/testing-basics.html
- https://devguide.ropensci.org/building.html#testing
- https://mtlynch.io/good-developers-bad-tests/
- https://books.ropensci.org/http-testing/
- https://www.manning.com/books/unit-testing
- https://testthat.r-lib.org/articles/snapshotting.html
- https://vdiffr.r-lib.org/
- https://ggplot2.tidyverse.org/
- https://ggplot2.tidyverse.org/reference/ggplot_build.html?q=layer_data#details
- https://www.tidyverse.org/blog/2022/09/playing-on-the-same-team-as-your-dependecy/#testing-testing
- https://docs.ropensci.org/pkgcheck/
- https://inbo.github.io/checklist/
- https://en.wikipedia.org/wiki/Static_program_analysis
- http://mangothecat.github.io/goodpractice/
- https://russhyde.github.io/dupree/
- https://roxygen2.r-lib.org/
- https://www.njtierney.com/post/2023/11/10/how-to-get-good-with-r
- https://r4ds.had.co.nz/functions.html#functions
- https://style.tidyverse.org/functions.html
- https://r-pkgs.org/code.html#sec-code-organising
- https://rstudio.github.io/rstudio-extensions/rstudio_snippets.html
- https://design.tidyverse.org/inputs-explicit.html
- https://r4ds.had.co.nz/functions.html
- https://www.njtierney.com/post/2023/11/10/how-to-get-good-with-r/#write-functions
- http://design.tidyverse.org
- https://www.stat.berkeley.edu/~statcur/Workshop2/Presentations/functions.pdf
- http://swcarpentry.github.io/swc-releases/2017.08/r-novice-inflammation/02-func-R/
- https://en.wikipedia.org/wiki/Code_refactoring
- https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
- https://startup-cto.medium.com/moist-code-why-code-should-not-be-completely-dry-1f06f2d31c31
- https://kentcdodds.com/blog/aha-programming
- https://enterprisecraftsmanship.com/posts/dry-damp-unit-tests/
- https://en.wikipedia.org/wiki/Rubber_duck_debugging
- https://en.wikipedia.org/wiki/Extract,_transform,_load
- https://inbo.github.io/coding-club/sessions/20230926_functions_in_r.html#1
- https://youtu.be/7oyiPBjLAWY?feature=shared
- https://yihui.org/en/2018/06/cache-invalidation/
- https://style.tidyverse.org/functions.html#naming
- https://style.tidyverse.org/syntax.html#object-names
- https://design.tidyverse.org/important-args-first.html
- https://design.tidyverse.org/required-no-defaults.html
- https://magrittr.tidyverse.org/
- https://design.tidyverse.org/defaults-short-and-sweet.html
- https://design.tidyverse.org/enumerate-options.html
- https://design.tidyverse.org/boolean-strategies.html
- https://roxygen2.r-lib.org/articles/roxygen2.html
- https://forcats.tidyverse.org/
- https://r-pkgs.org/man.html
- https://devguide.ropensci.org/building.html#roxygen2-use
- https://github.com/r-lib/pkgdown
- https://r-pkgs.org/
- https://cran.r-project.org/doc/manuals/r-release/R-exts.html
- https://adv-r.hadley.nz
- https://devguide.ropensci.org/building.html#naming-your-package
- https://r-lib.github.io/available/
- https://www.njtierney.com/post/2018/06/20/naming-things/
- https://yihui.org/en/2017/12/typing-names/
- https://codemeta.github.io/
- https://docs.ropensci.org/codemetar/index.html#why-create-a-codemetajson-for-your-package
- https://devguide.ropensci.org/building.html#console-messages
- https://cli.r-lib.org/
- https://github.com/hadley/assertthat
- https://cli.r-lib.org/reference/cli_abort.html
- https://github.com/frictionlessdata/frictionless-r/commit/aad0cd8e894a5a556d2a197348ba9169c267a55b
- https://usethis.r-lib.org/reference/use_readme_rmd.html
- https://usethis.r-lib.org/reference/badges.html
- https://usethis.r-lib.org/reference/use_github_action.html
- https://pkgdown.r-lib.org/articles/pkgdown.html
- https://enpiar.com/2017/11/21/getting-down-with-pkgdown/
- https://devguide.ropensci.org/building.html#website
- https://ropensci.org/blog/2018/10/08/orcid/
- https://r-pkgs.org/description.html
- https://cran.rstudio.com/doc/manuals/r-release/R-exts.html#The-DESCRIPTION-file
- https://devguide.ropensci.org/building.html#citation-file
- https://docs.ropensci.org/cffr/reference/cff_gha_update.html
- https://docs.ropensci.org/cffr/
- https://ropensci.org/blog/2021/11/16/how-to-cite-r-and-r-packages/
- https://mit-license.org/
- https://r-pkgs.org/license.html
- https://dplyr.tidyverse.org/
- https://style.tidyverse.org/files.html
- https://pytest-cov.readthedocs.io/en/
- https://docs.pytest.org/en/latest
- https://docs.readthedocs.io/en/stable/intro/getting-started-with-sphinx.html
- https://docs.python-guide.org/
- https://virtualenv.pypa.io/en/stable/user_guide.html
- https://conda.io/projects/conda/en/latest/user-guide/index.html
- https://pip.pypa.io/en/stable/user_guide/#requirements-files
- https://peps.python.org/pep-0008/
- https://pypi.org/project/pycodestyle/
- https://docs.pytest.org/en/latest/how-to/index.html#how-to
- https://packaging.python.org/
- https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
- https://docs.b-cubed.eu/
- https://github.com/b-cubed-eu/documentation/tree/main/tutorials
- https://docs.ropensci.org/frictionless/articles/frictionless.html

My little script
It also identifies headers and internal links, but I didn't actually check those.
# Test all links on a webpage

## GOAL 1 : list all links
## GOAL 2: test all links

# for the anatomy of a url, I referred to
# https://www.netmeister.org/blog/urls.html

# load libraries ----------------------------------------------------------

library(rvest)
library(httr2)
library(purrr)
library(dplyr)

# set domain to test ------------------------------------------------------

home_url <- "https://docs.b-cubed.eu/dev-guide/"
hostname <- "https://docs.b-cubed.eu"

get_links <- function(url){
  rvest::read_html(url) %>%
    rvest::html_nodes("a") %>%
    rvest::html_attr("href")
}

home_links <- get_links(home_url)
# internal links ----------------------------------------------------------

# should be prefixed with the hostname
prefix_with_hostname <-
  function(pathname, hostname = "https://docs.b-cubed.eu") {
    paste0(hostname, pathname)
  }

## all pages of the dev guide ---------------------------------------------
pages_to_test <-
  home_links[stringr::str_starts(home_links, stringr::fixed("/dev-guide/"))] %>%
  prefix_with_hostname()

# check if url resolves ---------------------------------------------------

# Return error when url does not resolve
check_url <- function(url) {
  httr2::request(url) %>%
    httr2::req_retry(max_tries = 3, max_seconds = 2) %>%
    httr2::req_user_agent(string = "r_link_checker") %>%
    httr2::req_perform() %>%
    httr2::resp_check_status()
}

# get links of the dev guide ----------------------------------------------

all_links <-
  purrr::map(pages_to_test, get_links) %>%
  purrr::set_names(pages_to_test)

# if it starts with # it's a link within the same path, if it starts with / it's
# a link starting from the hostname

prefix_with_page_url <- function(pathname, page_url){
  paste0(page_url,pathname)
}

# convert to a tibble with a column for url, is_heading for #, is_internal_link
# for internal links, and is_external_link for external links

identify_links <- function(links_vector) {
  dplyr::tibble(
    url = links_vector,
    is_heading = stringr::str_starts(url, stringr::fixed("#")),
    is_interal_link = stringr::str_starts(url, stringr::fixed("/")),
    is_external_link = !(is_heading | is_interal_link)
  )
}

# extract the external links only

external_links <-
  purrr::map(all_links, identify_links) %>%
  purrr::map_dfr(~dplyr::filter(.x, is_external_link)) %>%
  dplyr::distinct(url) %>%
  dplyr::pull(url)

# test the external links -------------------------------------------------

external_links_test_result <-
  purrr::map(external_links, purrr::safely(check_url),
           .progress = TRUE) %>%
  purrr::set_names(external_links)

external_links_broken <-
  purrr::keep(external_links_test_result,
              function(x) {
                !is.null(purrr::chuck(x, "error"))
              })

# print a little report ---------------------------------------------------

cli::cli_h2("The following external links are broken:")
cli::cli_li(items = names(external_links_broken))

I've added a small .gitkeep file to the tutorials directory, so that directory becomes available: https://github.com/b-cubed-eu/documentation/tree/main/tutorials
That means there are no more broken links. Thanks for checking!


Fix CallNeedsPermissionDetector to scan only annotated classes

Issue
Fixes https://github.com/permissions-dispatcher/PermissionsDispatcher/issues/502
Overview
Fix CallNeedsPermissionDetector to scan only annotated classes.

It seems to me too restricted to requires signed commits


Pass all test cases for metrics and display_metrics

What would cause my code to fail the backend test?

What would cause my code to fail the backend test?

Seems like the change in MatchingMetrics (adding your metric-specific attributes) is not backwards compatible with the older implementation of MatchingMetrics which is called in metrics_test.py. This can be solved by giving default assignments for distribution_in_final_set and  distribution_in_community in the type definition for MatchingMetrics (see line 64).


bgpv1: Enable cilium-dbg bgp routes advertised command without specifying a peer

This PR enhances the cilium-dbg bgp routes advertised CLI command to allow dumping advertised routes without the need to specify an exact peer IP. In this case, the CLI will dump the advertised routes for each configured peer.
This also allows to include the dump of advertised BGP routes in the bugtool.
Additionally, this PR adds defaulting of table type and AFI / SAFI to the CLI, to allow simple use with even less typing.
Examples
Simplest dump of all advertised routes of all peers on all vrouters:
$ cilium bgp routes advertised
(Defaulting to `ipv4 unicast` AFI & SAFI, please see help for more options)

VRouter   Peer       Prefix        NextHop    Age     Attrs
65001     <IP_ADDRESS>   <IP_ADDRESS>/24   <IP_ADDRESS>   35m7s   [{Origin: i} {AsPath: 65001} {Nexthop: <IP_ADDRESS>}]

The same as yaml:
$ cilium bgp routes advertised -o yaml
- neighbor: <IP_ADDRESS>
  paths:
    - agenanoseconds:<PHONE_NUMBER>79
      best: false
      family:
        afi: ipv4
        safi: unicast
      nlri:
        base64: GAoBAA==
      pathattributes:
        - base64: QAEBAA==
        - base64: QAIGAgEAAP3p
        - base64: QAMECgABAg==
      stale: false
  prefix: <IP_ADDRESS>/24
  routerasn: 65001

Before this change, the only option to dump  advertised routes was to provide AFI & SAFI + peer IP:
$ cilium bgp routes advertised ipv4 unicast peer <IP_ADDRESS>
VRouter   Prefix        NextHop    Age     Attrs
65001     <IP_ADDRESS>/24   <IP_ADDRESS>   4m10s   [{Origin: i} {AsPath: 65001} {Nexthop: <IP_ADDRESS>}]

Simplest use of the routes command:
$ cilium bgp routes
(Defaulting to `available ipv4 unicast` routes, please see help for more options)

VRouter   Prefix        NextHop    Age     Attrs
65001     <IP_ADDRESS>/24   <IP_ADDRESS>    2m19s   [{Origin: i} {Nexthop: <IP_ADDRESS>}]
65001     <IP_ADDRESS>/24   <IP_ADDRESS>   2m12s   [{Origin: i} {AsPath: 65000 65002} {Nexthop: <IP_ADDRESS>}]

/test

/test


Update docs on epoch- vs. expiration-based leases

Fixes #5563.

This change is

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/90498ffb0752e7b6d10154a31f8b85efc392ce9e/
Edited pages:

v19.1/architecture/replication-layer.md
v19.2/architecture/replication-layer.md

irfan sharif<EMAIL_ADDRESS>writes:

The language around "lets us avoid tracking leases for every range" is actually what originally tripped me up. We still do track leases for every range, but we're smarter about it. By assuming leases don't expire until a node loses connection, each leaseholder does not have to individually renew their own lease. By tying lease lifetimes to the node itself (that holds many many leaseholders), we eliminate a substantial amount of traffic and Raft processing we would otherwise incur. I'd include something to this effect here instead. Everything else LGTM.

Ah, I missed/forgot that that was the crux of the issue.  Replaced that paragraph with a rephrasing of what you said above that I hope makes things clearer.  PTAL.

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/0525c03a9677178c5396b79d74da2ff85362b67b/
Edited pages:

v19.1/architecture/replication-layer.md
v19.2/architecture/replication-layer.md

Everything LGTM. Thanks!

irfan sharif writes:

(extreme) nit: I wouldn't say "system ranges must use expiration-based leases", I'd just say "system ranges use expiration-based leases instead".

Updated to say that.  And I appreciate the clarification!  I would prefer not to use "must" except when it's the truth.
Thanks for the thorough review!

Online preview: http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/859aa0bc466fcab1cade3d213547b719719067e5/
Edited pages:

v19.1/architecture/replication-layer.md
v19.2/architecture/replication-layer.md

Thanks Eric!


A way to select the OPC server

Is your feature request related to a problem? Please describe.
Problem is that i am working with a SCADA software that publish all its items via OPC DA also for internal functionings, futhermore is not possible for me to turn off all the unnecessary (for me) servers but i need to access only one of them
Describe the solution you'd like
the possibility to indicate the server i need to communicate with, or a solution to access only the server i need
to tell you something more about my issue,
i managed to install the server and everything seems to work correctly,

the https://localhost/opc.websocket.html loads fine and shows the connected message,

but when i try a command nothing happens and after few second the page shows the DISCONNECTED message without giving any kind of error in the console

i am currently working with the GENESIS64 software by Iconics inc. which behaviours as previously mentioned,
Therefore i think that the issue resides in what youi mentioned somewhere in ISSUE #8 in which you say that the software is mentioned to work on machines which has only a single OPC server installed,
here's the machine's scenario, i need to connect only to the ICONICS.FwxServerOPC.1

also i can give you the Event Viewer's error, if can give you any hint

Can you save your related event viewer log to a file and send to<EMAIL_ADDRESS>Thx!

I have this configuration feature ready over the weekend. Let me know when you are ready to test. Thx!

hello duduyoyo, thank you very much for the effort, you are a god, i am ready to test in any moment

You need send me an email so I can reply back with a new dll to test.

just wrote one

Replied with new dll. Good luck!

installed the dll, something seems to work but still getting immediately the disconnected message
here's the logs

It looks like you have AE server, but don't have x64 proxy dll installed. There is a x64proxy folder in installation, and register x64 AE dll like "regsvr32 opc_aeps.dll" in command line with admin privilege. See if that helps.

Do you have AE server running properly in production environment? Or have you ever uninstalled AE server in it? For your test environment, does it have AE server? Is it running properly?

i discovered it was auto selecting another AE server that was not online, i removed the server and the AE error disappeared, but still the w3wp.exe / OPCModule.dll is giving error :
here you can see that servers selection now happens correctly

but still after launching browse command

an error is raised (in browser i have the DISCONNECT message)

also a error report  is issued

attached you can find the report generated by the file
Report.txt

I sent you an email, please check it.


filebeat error

I'm trying to run your project in docker but it keep raising an error that can not connect to logstash from filebeat. Any ideal for this ?

filebeat has dependency with logstash. So, you should check logstash container work well and 5044 port mapping to open outside.

Logstash container was fine as I tested it with postman. I was also exec into filebeat container to ping to logstash:5044 and with was connected. Then I remove everything, repo, docker image, container, clone your repo back again and only run it with docker-compose at first and still, the error was the same.

Okay, then you should wait for 1~2 minutes.
Because logstash takes longer to ready than filebeat.
Here is my logs

filebeat

2022-11-30T11:12:08.638Z	ERROR	pipeline/output.go:100	Failed to connect to backoff(async(tcp://logstash:5044)): dial tcp <IP_ADDRESS>:5044: connect: connection refused
2022-11-30T11:12:08.638Z	INFO	pipeline/output.go:93	Attempting to reconnect to backoff(async(tcp://logstash:5044)) with 1 reconnect attempt(s)
2022-11-30T11:12:11.398Z	ERROR	pipeline/output.go:100	Failed to connect to backoff(async(tcp://logstash:5044)): dial tcp <IP_ADDRESS>:5044: connect: connection refused
2022-11-30T11:12:11.398Z	INFO	pipeline/output.go:93	Attempting to reconnect to backoff(async(tcp://logstash:5044)) with 2 reconnect attempt(s)
2022-11-30T11:12:18.327Z	ERROR	pipeline/output.go:100	Failed to connect to backoff(async(tcp://logstash:5044)): dial tcp <IP_ADDRESS>:5044: connect: connection refused
2022-11-30T11:12:18.327Z	INFO	pipeline/output.go:93	Attempting to reconnect to backoff(async(tcp://logstash:5044)) with 3 reconnect attempt(s)
2022-11-30T11:12:26.945Z	ERROR	pipeline/output.go:100	Failed to connect to backoff(async(tcp://logstash:5044)): dial tcp <IP_ADDRESS>:5044: connect: connection refused
2022-11-30T11:12:26.945Z	INFO	pipeline/output.go:93	Attempting to reconnect to backoff(async(tcp://logstash:5044)) with 4 reconnect attempt(s)
2022-11-30T11:12:35.698Z	INFO	[monitoring]	log/log.go:145	Non-zero metrics in the last 30s	{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":30,"time":{"ms":31}},"total":{"ticks":360,"time":{"ms":367},"value":360},"user":{"ticks":330,"time":{"ms":336}}},"handles":{"limit":{"hard":65536,"soft":32768},"open":11},"info":{"ephemeral_id":"64dafced-9d58-4ee4-ace0-6077f180dd2b","uptime":{"ms":30134}},"memstats":{"gc_next":8393888,"memory_alloc":5790736,"memory_total":11621672,"rss":48709632},"runtime":{"goroutines":40}},"filebeat":{"events":{"active":6,"added":9,"done":3},"harvester":{"open_files":3,"running":3,"started":3}},"libbeat":{"config":{"module":{"running":0}},"output":{"type":"logstash"},"pipeline":{"clients":1,"events":{"active":6,"filtered":3,"published":6,"retry":24,"total":9}}},"registrar":{"states":{"current":3,"update":3},"writes":{"success":4,"total":4}},"system":{"cpu":{"cores":2},"load":{"1":3.94,"15":0.45,"5":1.27,"norm":{"1":1.97,"15":0.225,"5":0.635}}}}}}
2022-11-30T11:12:57.783Z	ERROR	pipeline/output.go:100	Failed to connect to backoff(async(tcp://logstash:5044)): dial tcp <IP_ADDRESS>:5044: connect: connection refused
2022-11-30T11:12:57.783Z	INFO	pipeline/output.go:93	Attempting to reconnect to backoff(async(tcp://logstash:5044)) with 5 reconnect attempt(s)
2022-11-30T11:13:05.698Z	INFO	[monitoring]	log/log.go:145	Non-zero metrics in the last 30s	{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":30,"time":{"ms":1}},"total":{"ticks":370,"time":{"ms":6},"value":370},"user":{"ticks":340,"time":{"ms":5}}},"handles":{"limit":{"hard":65536,"soft":32768},"open":11},"info":{"ephemeral_id":"64dafced-9d58-4ee4-ace0-6077f180dd2b","uptime":{"ms":60133}},"memstats":{"gc_next":8393888,"memory_alloc":6066816,"memory_total":11897752},"runtime":{"goroutines":40}},"filebeat":{"harvester":{"open_files":3,"running":3}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":6,"retry":6}}},"registrar":{"states":{"current":3}},"system":{"load":{"1":4.61,"15":0.62,"5":1.71,"norm":{"1":2.305,"15":0.31,"5":0.855}}}}}}
2022-11-30T11:13:35.701Z	INFO	[monitoring]	log/log.go:145	Non-zero metrics in the last 30s	{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":30},"total":{"ticks":370,"time":{"ms":5},"value":370},"user":{"ticks":340,"time":{"ms":5}}},"handles":{"limit":{"hard":65536,"soft":32768},"open":11},"info":{"ephemeral_id":"64dafced-9d58-4ee4-ace0-6077f180dd2b","uptime":{"ms":90135}},"memstats":{"gc_next":8299072,"memory_alloc":6432928,"memory_total":12432488,"rss":360448},"runtime":{"goroutines":40}},"filebeat":{"harvester":{"open_files":3,"running":3}},"libbeat":{"config":{"module":{"running":0}},"pipeline":{"clients":1,"events":{"active":6}}},"registrar":{"states":{"current":3}},"system":{"load":{"1":4.14,"15":0.72,"5":1.89,"norm":{"1":2.07,"15":0.36,"5":0.945}}}}}}
2022-11-30T11:13:43.834Z	ERROR	pipeline/output.go:100	Failed to connect to backoff(async(tcp://logstash:5044)): dial tcp <IP_ADDRESS>:5044: connect: connection refused
2022-11-30T11:13:43.834Z	INFO	pipeline/output.go:93	Attempting to reconnect to backoff(async(tcp://logstash:5044)) with 6 reconnect attempt(s)
2022-11-30T11:13:43.835Z	INFO	pipeline/output.go:105	Connection to backoff(async(tcp://logstash:5044)) established
2022-11-30T11:14:05.698Z	INFO	[monitoring]	log/log.go:145	Non-zero metrics in the last 30s	{"monitoring": {"metrics": {"beat":{"cpu":{"system":{"ticks":30,"time":{"ms":5}},"total":{"ticks":380,"time":{"ms":14},"value":380},"user":{"ticks":350,"time":{"ms":9}}},"handles":{"limit":{"hard":65536,"soft":32768},"open":12},"info":{"ephemeral_id":"64dafced-9d58-4ee4-ace0-6077f180dd2b","uptime":{"ms":120134}},"memstats":{"gc_next":8299072,"memory_alloc":5790128,"memory_total":14074200,"rss":372736},"runtime":{"goroutines":41}},"filebeat":{"events":{"active":-6,"done":6},"harvester":{"open_files":3,"running":3}},"libbeat":{"config":{"module":{"running":0}},"output":{"events":{"acked":6,"batches":1,"total":6},"read":{"bytes":6},"write":{"bytes":675}},"pipeline":{"clients":1,"events":{"active":0,"retry":12},"queue":{"acked":6}}},"registrar":{"states":{"current":3,"update":6},"writes":{"success":1,"total":1}},"system":{"load":{"1":2.56,"15":0.7,"5":1.72,"norm":{"1":1.28,"15":0.35,"5":0.86}}}}}}

2022-11-30T11:13:43.835Z	INFO	pipeline/output.go:105	Connection to backoff(async(tcp://logstash:5044)) established

Okay let me check it, thanks


Fix deprecation warnings

Summary
This PR fixes two deprecation warnings:

TestQGAN: "UniformDistribution is deprecated as of version 0.17.0 and will be removed no earlier than 3 months after the release date. It moved to qiskit_finance.circuit.library.UniformDistribution."
ad_hoc_data: "PendingDeprecationWarning: the matrix subclass is not the recommended way to represent matrices or deal with linear algebra (see https://docs.scipy.org/doc/numpy/user/numpy-for-matlab-users.html). Please adjust your code to use regular ndarray."

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

11 of 13 (84.62%)  changed or added relevant lines in 1 file are covered.
3 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.1%) to 81.598%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit_machine_learning/datasets/ad_hoc.py
11
13
84.62%

Files with Coverage Reduction
New Missed Lines
%

qiskit_machine_learning/datasets/gaussian.py
3
35.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.1%

Covered Lines:
2328

Relevant Lines:
2853

💛  - Coveralls


Add python linter in engine tests

@gaaclarke suggested I run a linter against a new python script I added.  I has assumed this was already being done in a pre-submit linter (like ./ci/bin/lint.dart or somewhere else).
Add python lint checks if they don't already exist.  Fix issues the linter finds.

Closing as duplicate of https://github.com/flutter/flutter/issues/100772


Merge release/v1 into develop

Merge release/v1 branch into develop.

@kgerheiser just to let you know that I started working on this, it's waiting for some old status checks that I need to fix, other than that it seems to be going well. I will be out July 1st-4th, if it's ok let's finish this off after the long weekend.

@kgerheiser I updated the required status checks, now it's all good to go.


Fix compatibility with Python 3.

It should be double checked...

I confirm that it didn't break anything in python 2.7. I didn't check with python 3.


Improve video alternative text

Show label for video to everyone.
We used to have an invisible label for users of assistive technologies that explained the video was complementary and did not have any audio.
We've moved this onto the page for everyone to see based on @selfthinker 's recommendations since this will make it useful for people that are using other assistive technologies such as magnification tools.
I have used aria-labelledby to associate this label with the video to keep the existing behaviour.
Thanks to @amyhupe  for improving the content for the label.

Add a consistent focus style for the video
I think this was one of the only thing we've forgot to add a focus style to that follows the new guidelines.

Fixes https://github.com/alphagov/govuk-design-system/issues/904

You can preview this change here:
Built with commit 3262bab6834df2487ffa8305af9217e8c6b3ee2e
https://deploy-preview-1067--govuk-design-system-preview.netlify.com

I've made some updates since I mistakenly thought we only had one video:

I've applied the same pattern to the payment card details, and adjusted the spacing slightly.

I'm going to be cheeky and get this merged since our commit history on this repo is not that well organised or important as GOV.UK Frontend 👼


need for use another keymapper occasionally

now keyMapper is a class method
so it's settle down before run.
but, sometimes I want to use another keymapper for one or two time
for example, I want to get under_score case to camelCase json string in some cases, not all the time
to meet this need, there is some solution:

add keyMapper method for object ( - )
add toJSONStringWithKeyMapper: method or something like this

You could achieve this by subclassing your model and giving overriding the key mapper in the subclass.


Change how Vue sends input to the WASM

We are currently binding keys in Vue. This was set up as a temporary measure. We'll want to properly send input events to the WASM code without involving Vue. Some considerations:

All keyboard input should be sent to the WASM
Only mouse inputs targeting the viewport should be sent, not those involving clicks on GUI elements
Mouse that has dragged outside the viewport should continue to be sent until (and including) release
Properly handle (to the best of its abilities) events when the application has been removed from focus in the OS
Use input to outside-the-viewport items to help reconstruct the status of inputs that may have been interrupted while mouse button was down in a viewport interaction and then focus lost
Support multiple panels at once
Generic approach so it can be used in other panel types, like the Layer Graph
Consideration should be put into pen inputs, and other types of input devices

Alt + Shift keys are combined into a meta key press.

One way of fixing this would be to send the current modifier state (+ pressed mouse key)
as additional information in the events to the input preprocessor. This gives the input preprocessor more information to work with and reduces the impact of missed key events.

Add scroll wheel handling to the js and the input preprocessor.
https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent

I'm moving this back to Available, but it will require some experience in webdev to properly implement this in a way that doesn't conflict with Vue. If you take this issue, please work closely with me to make sure all considerations are dealt with.

We should standardize on the names of each key defined in https://www.w3.org/TR/uievents-code/#key-alphanumeric-writing-system


shyaml keys show function dump representations

I use the test.yaml from README in the example shyaml keys. The same happens with my custom yaml file (I cannot put that here). I use commit d35421826a0fb8dc8c02183beb65622fa29d883f
installed via python setup.py install
cat test.yaml | shyaml keys
<function dump at 0x7f526cac3938>
<function dump at 0x7f526cac3938>
<function dump at 0x7f526cac3938>
<function dump at 0x7f526cac3938>
<function dump at 0x7f526cac3938>

Oops, my bad. This reminds me that this project really need some sort of automated test system. However this is a major regression, so I'll first patch and release the fix.
Many thanks for your feedback.
Fixed and released shyaml 0.3.3, can you tell me if all is okay for you also ?


Does ScrollArea support horizontal scrolling?

Question
For usage questions, please use Stack Overflow or use GitHub Discussions instead of posting an issue. This helps us keep bugs and feature requests prioritized, and it increases the liklihood that more people see your question and can answer it more qiuckly!

Hi @aungbobotun,
Yes it does. In fact the demo on the website is already ready to support horizontal scrollbar too.
All it needs is content wide-enough that it will create overflow.
Here I've forked that demo and added a larger fixed-width to the thing that's inside the scroll area: https://codesandbox.io/s/scrollarea-both-directions-v3eupm?file=/App.js

Yeah. Thx for the support

how do i adjust the width of the thumb? by default it has flex of 1 so it's not taking any width properties.
@benoitgrelard


chore(Probability/Kernel/CondCdf): cleanup

[x] depends on: #10298

Can you comment on the change of imports? Does that add many files?

I replaced import Mathlib.Data.Set.Image with Mathlib.Data.Set.Intervals.Disjoint and sorted the import alphabetically. Not sure how many more files that makes. Is there an easy way to list all imports of a file recursively?

I asked around how to check imports: lake exe graph --to X --from Y out.pdf can give a view of the imports between files, one you have cache. In this case, it looks like you added almost nothing.

The command I listed gives only the files between the two files in the command. That's indeed not the same as the files additionally imported.
I don't understand the list you posted. Can you explain the format "Mathlib.Tactic.GuardHypNums" -> "Mathlib.Tactic.Common"; ?

Yeah let me explain, I arrived at the list in the gist with the following commands:
lake exe graph --reduce  --to Mathlib.Data.Set.Image all_image.dot
lake exe graph --reduce  --to Mathlib.Data.Set.Intervals.Disjoint  all_disjoint.dot
sort all_disjoint.dot > all_disjoint.dot.sorted
sort all_image.dot > all_image.dot.sorted
comm -23 all_disjoint.dot.sorted all_image.dot.sorted

So this basically list all additional edges in the import graph

by the way, I think I will propose to add functionality to the ImportGraph package to just get a list of imports as a sorted list instead of the entire graph...

If I understand correctly, the interesting info in the list you posted is the list of files that appear in the list of edges. Those are the files imported by the new import and not the old one.
But what really interest us is the difference between the list of files imported by the union of all new imports, minus the list of files imported by the union of all old imports. It might be that Mathlib.Data.Set.Intervals.Disjoint imports many more files than Mathlib.Data.Set.Image but those files might be mostly imported by other import lines anyway.

That makes sense, calculating only the new edges by running
lake exe graph --reduce --to Mathlib.Data.Real.Archimedean all.dot

twice once with the new imports in place and once with only the old imports (building lake build Mathlib.Data.Real.Archimedean in between) gives only this diff
  "Mathlib.Data.Set.Intervals.Disjoint" -> "Mathlib.Data.Real.Archimedean";
  "Mathlib.Data.Set.Lattice" -> "Mathlib.Data.Set.Intervals.Disjoint";

So the only extra file seems to be Mathlib.Data.Set.Lattice

bors r+


is it posible to set the Keyboard Shortcut?

to insert the smart semicolon is with key " ´ " so i would like to change the keyboard shortcut to " Shift + , (comma) " if it is, how it can be changed?
Edit: lol nevermind i found out after searching

@AngelNegrete why don't you post the solution then?

It can be found under File->Preferences->Keyboard Shortcuts and is called Smart Semicolon: Insert


[Feature] Show if commit is signed with gpg

Commits can be signed using gpg so my expectation was to see some information about cryptographic signatures for every commit.
I would imagine to have some indicator that shows me if a commit is:

unsigned
signed, signature is broken
signed, signature is good

Maybe an icon changing colors depending on the status (grey/red/green).
It would already be an improvement to have access to the output of git verify-commit without using the cli.

I have a few ideas on how to implement this. If @love-linger is okay with it, I'd be happy to take a look.

To verify a commit, the public key is needed...

For example, without public keys:

According to the git log document

There's no 'G' printed.

One more thing, the above command sometimes takes more than 1 second on my PC (14700K)...

One more thing, the above command sometimes takes more than 1 second on my PC (14700K)...

GPG signature checking is calculated for each commit individually, so the more commits you check, the more time it takes to complete. Github's commit list also displays signature status very slowly and asynchronously.
GitKraken, which has a GPG signature check feature, only displays the signature status in the commit details and does not seem to rely on the gpg.ssh.allowedSignersFile configuration. It may have implemented additional signature checks on its own.

GitKraken, which has a GPG signature check feature, only displays the signature status in the commit details and does not seem to rely on the gpg.ssh.allowedSignersFile configuration. It may have implemented additional signature checks on its own.

You can just set -c gpg.ssh.allowedSignersFile=/dev/null in git log command if gpg.ssh.allowedSignersFile is not set by user. For example:
git -c gpg.ssh.allowedSignersFile=/dev/null log -10 --date-order --no-show-signature --decorate=full --pretty=format:"%H %G?"

GitKraken, which has a GPG signature check feature, only displays the signature status in the commit details and does not seem to rely on the gpg.ssh.allowedSignersFile configuration. It may have implemented additional signature checks on its own.

I don't see a problem with this approach. SublimeMerge only displays the signature status in the commit details as well and it works very well.

I've pushed the commit that shows the gpg signing status in commit details panel.

Works like a charm, thank you very much!


Add Java 22 image

This PR adds a yolk for Java 22, which has some optimisations to the Java platform module system (JPMS) that benefits Forge.

+1 can be merged?

+1 for merge

Thank you for your submission.
Typically only LTS versions of Java are added to the core pterodactyl yolks unless they are absolutely necessary for a stock egg to run.
As Java 22 doesn't meet that criteria and is also out of support entirely. We're going to decline this PR.
A java 22 image has been added to the official community egg repo and is available here ghcr.io/ptero-eggs/yolks:java_22


The speed test is not getting the same results as the Python speed test

I'm uncertain that the answer we are getting is wrong, there can be a number of ways to describe a set of differences, but I would like to at least be able to explain why they are different.
According to the Python speed test there should be the following:

1816 bisects,
862 equalities,
638 inserts, and
687 deletions.

Instead we are getting

1792 bisects,
865 equalities,
641 inserts, and
690 deletions.

Can't seem to find an actual problem here.  It seems the answer given is correct, but not quite as optimal as the Python. I believe it is due to the fact that we are not doing the linesToChars optimization.


chore(docs): updated the description of npm run seed in the how-to-setup-freecodecamp-locally page

Checklist:

[x] I have read and followed the contribution guidelines.
[x] I have read and followed the how to open a pull request guide.
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #49414

@Sboonny
Thank you for merging my pull request!


Make prerelease packages available

Wherever the WebHooks prerelease feed is (https://myget.org ? https://dotnet.myget.org ? Somewhere else?), it hasn't been updated recently. Should get something going.

@Eilon

Any updates about this? I'd love to try it! :)

@Havret We're working on making dev builds publicly available and we should have an official preview early next year.

Created new feed here:

https://dotnet.myget.org/F/aspnetwebhooks/api/v3/index.json (it's empty right now, of course)

And the gallery will be here (once there are packages)

https://dotnet.myget.org/gallery/aspnetwebhooks

Assigning back to @dougbu to do the needful on the CI to get signed packages pushed to the new feed.


SocketIO Redis Adapter - not working in cluster

Information

Type
Version

Question
2.18.1

Description
When trying to use socket IO on the server, we have a 2 server setup and need to use redis as the intermediary adapter. I have set up the adapter options like this:
import * as ioRedis from 'socket.io-redis';

const socketIO: any = {
  serveClient: false,
  origins: '*',
};

if (config.REDIS_HOST && config.REDIS_PORT) {
  socketIO.adapter = ioRedis({
    host: config.REDIS_HOST,
    port: config.REDIS_PORT,
  });
}

This is registering on the server without any issue at all -- but when an event comes through, it does not get emitted to both nodes. A sample emit event is the following,
io.to(`user:${friend.friendId}`).emit('receive', {
        eventName: 'user:online-status',
        payload: {
          id: decoded.session.user.id,
          status: onlineStatus,
        },
      })

Is there a step im missing, or something like that in order to get the event to broadcast to both nodes?

Hi @ryanpager,
If you have installed the socket.io  server Ts.ED, you need to configure the socket.io with the Adaptater.
I think it should be something like that:
In your server:
import {ServerLoader, ServerSettings} from "ts-express-decorators";
import "ts-express-decorators/socketio"; // import socketio Ts.ED module

@ServerSettings({
    rootDir: __dirname,
    socketIO: {
        // ... see configuration
    },
   socketIORedis: {
     host: 'localhost',
     port: 6379
   }
})
export class Server extends ServerLoader {

}

Then in the service:
import * as SocketIO from "socket.io";
import {SocketService, IO, Nsp, Socket, SocketSession} from "ts-express-decorators/socketio";

const redis = require('socket.io-redis');

@SocketService("/my-namespace")
export class MySocketService {

    @Nsp nsp: SocketIO.Namespace;

    constructor(@IO private io: SocketIO.Server, serverSettings: ServerSettingsService) {
         io.adapter(redis(serverSettings.get("socketIORedis"));
    }
}

Try this configuration and tell me if it works :)
See you,
Romain

@Romakita
Worked super great -- thanks a ton. One thing to note -- theres a setting on the socketIO config called 'adapter' which doesn't seem to do anything; if this is the normal way to do that setup -- should the docs change?
Id be happy to do a PR with the docs change if needed.

@ryanpager I think it's the default interface to configure the Socket server (SocketIO.ServerOptions).
https://github.com/Romakita/ts-express-decorators/blob/master/src/socketio/services/SocketIOService.ts#L28
But the documentation can be improved with an example to adding an Adaptater ;)
PR are welcome :)
See you,
Romain

#243


Investigate/Fix Cryptographic issues

As mentioned by @cdpxe in #16:
Some important points has to be investigated and fixed (see: https://onlinelibrary.wiley.com/doi/full/10.1002/sec.1471):

Sniffing of header/payload: The payload is usually SSH/VPN/stunnel based and encrypted. But it is still possible to do a payload or timing analysis to detect the encapsulated protocol. Also the header is not encrypted and therefor can leak important data to middleboxes.
Man-in-the-middle attack: Data send/recv is neither authenticated nor integrity checked - header/payload data can be modified ad libitum. The client/server has no chance to discover such cases.

One more comment: I believe that a low-haning fruit would be to implement the magic number as described in section 5.1 of our paper. This will already prevent several rules (e.g. Snort rules) from working correctly as they simply filter for the magic number :) It would then also make it easier to prevent rule-based blocking of the ping tunnel traffic.


UTF16 support

Hello. I was kind of shocked when I saw your wrapper does not support for UTF16 strings. I don't know why, but I through it supports all the features of sqlite.
From sqlite site: Support for both UTF-8 and UTF-16 text.
I understand sizeof(wchar_t) on Linux is 4 bytes will not be portability if you use it.. but really, I think there are another solutions(ex: if sizeof(wchar_t) != 2 -> shrink to fit or kind of own string class implementation with underlying int16_t or.. I don't know).
My problem is about working with files and no ASCII / UTF8 filenames, but UTF16. What should I do ? Do you mind if you add such a support or do I need to use the sqlite library directly ?
Thanks, Andrei.

Hi, yes this is related to question  #33 No wstring overloads: I do not plan to add full UTF16 support as this is not portable or will require much work on my part (that I don't have).
You could try to add this support where you need it, and provide me with a pull request so that I could integrate it into the master branch!
Cheers!

Hello ! Thanks for your response.
I will see if I can do anything. I am still not sure if I'll go for adding the support or not.


Remodel collections, membership, ordered and ordinal collections, etc.

Umbrella issue to point to all collection-related issues.

Closing - using label to identify all collection-related issues instead.


Implement schema based multi tenancy

I've been trying to implement schema based multi tenancy using this guide, it requires me to inject a custom request scoped connection in the services. Could you help me out with implementing this, please?

I have no experience with multi tenancy.

We managed to get it to work by doing this:

Step 1: Create a `TypeOrmConfigService` that extends `TypeOrmOptionsFactory` in which you inject the request to extract the tenant id.

import { Inject, Injectable } from '@nestjs/common';
import { DataSource, DataSourceOptions } from 'typeorm';
import { REQUEST } from '@nestjs/core';
import { TypeOrmModuleOptions, TypeOrmOptionsFactory } from '@nestjs/typeorm';
import type { Request } from 'express';

@Injectable()
export class TypeOrmConfigService implements TypeOrmOptionsFactory {

  private databaseID: string;

  constructor(@Inject(REQUEST) readonly req: Request ) {
    this.databaseID = /* Extract the databaseID/tenantID from the request */;
  }

  createTypeOrmOptions(): TypeOrmModuleOptions {
    return {
      ...yourBaseOrmConfig,
      database: this.databaseID,
    };
  }

  static async getOrCreateDataSource(options?: DataSourceOptions): Promise<DataSource> {
    /** Create and initialize the DataSource here. */
  }
}

Step 2: in your `app.module.ts`, use TypeOrm.forRootAsync with the service you created.
import { Module, NestModule } from "@nestjs/common";
import { TypeOrmModule } from "@nestjs/typeorm";
import { TypeOrmConfigService } from "./config/TypeORMConfig.service";

@Module({
  imports: [
    TypeOrmModule.forRootAsync({
      useClass: TypeOrmConfigService,
      dataSourceFactory: (options) => TypeOrmConfigService.getOrCreateDataSource(options),
    }),
    // Other imports
  ],
})
export class AppModule implements NestModule {}

And you should be good to go. Now when you inject a repository in your services with @InjectRepository(), they automatically become request-scoped and use the right connection.


Successfully merged to HacktoberFest_22 repo.
🚀🚀👍


Didymium Glass

Details
Didymium Glass is used as a safety glass for procedures that emit amounts of light that could damage vision. Didymium Glass filters out light with a wavelength of about ~589 nm and is used in safety glasses for people who work as blasksmiths, glassblowers, etc.
Production
4 lanthanum dust + 3 neodymium dust + 1 praseodymium dust + 1 small samarium dust + 1 small gadolinium dust -> Mixer -> 6 Didymium Dust
1 Didymium Dust -> Arc Furnace -> 1 Didymium Glass
Picture

Sources
https://en.wikipedia.org/wiki/Didymium

Finally an use for praseodymium:)


Renaming a layer fails

Maybe this is by design, but when trying to rename a layer I get an error (it seems is identifying the layer by the new name, therefore it cannot find it):
name = 'mylayer'
cat = Catalog(some_geoserver_url)
print 'Renaming layer %s' % name
layer = cat.get_layer(name)
layer.name = '%s_old' % name
cat.save(layer)
cat.reload()
error I get:
*** FailedRequestError: Error code (404) from GeoServer: No such layer: mylayer_old

@ischneider how did you achieve your goal? I'm trying to set-up different layers that have the same table as source and I can't find how to do it. Any tips?

@Ricardo-C-Oliveira did you ever figure out a work around?


Add support for const keyword

Currently writing const looks like an other invalid expression, fix this by adding support for the const keyword and thus const expressions

I have just pushed a fix for this. It should be available in the Jetbrains marketplace in a couple of days once they approve the update

This should be available on the Jetbrains market place now. Let me know if this fixes your problem.,

Thanks! This works unfortunately only partially, the const keyword doesn't get flagged anymore, but the / in:
const INV_ATLAS_SIZE: f32 = 1.0 / 2048.0; does get marked red

This is going to take a bit of fixing properly. The issue is the grammar is expecting the value to be a simple constant. I will change it to allow any expression.

This should be fixed in the 0.0.22 release on the Jetbrains marketplace now.


palindrome-products:  verify ordering of actual/expected

In the Jasmine testing framework, it is convention to:
expect(actual).fn(expected)

But some test suites have the following:
expect(expected).fn(actual)

This causes the error messages to be confusing.
Please verify the palindrome-products exercise to make sure that the expectations are ordered correctly. If they are, then this can be closed.
This issue will help to close #111

Got it

Very nice contribution, thanks!


Fix a bug in identifying the header line in embulk-guess-csv

We found a case that the Java-reimplemented embulk-guess-csv was not working fine.
This PR adds a test for the case (you see failing at 8a7feea58c605906a2e5f9d7dcb22ce51909881e), then fixes it.

Thanks!