this.RequireHttps() broken for Linux hosts?

Hello.
I don't know if this is a bug or just missing documentation... following this tutorial:
https://github.com/NancyFx/Nancy/wiki/Accessing-the-client-certificate-when-using-SSL
I was able to create simple SSL enabled, self-hosted application, and force SSL on certain modules by adding "this.RequireHttps()", however this only works on Windos - since on Linux there is no "netsh" command to enable SSL on certain port, I used nginx following this tutorial:
https://github.com/NancyFx/Nancy/wiki/Hosting-Nancy-with-Nginx-on-Ubuntu
with the following nginx configuration:
server {
listen       80;
listen       443 ssl;
ssl_certificate    /home/james/sslCert2/server.crt;
ssl_certificate_key /home/james/sslCert2/server.key;

server_name  localhost;
root /home/james/nancywebpageroot/NancyWebPage.DPL.Services/bin/Debug/;

location /Content/ {
    alias /home/james/nancywebpageroot/NancyWebPage.DPL.Services/bin/Debug/Content/;
    location ~*  \.(jpg|jpeg|png|gif|ico|css|js|ttf)$ {
        expires 365d;
    }
}

location / {
        proxy_pass http://<IP_ADDRESS>:8080;
}

}
while the above enables SSL on port 443, it makes "this.RequireHttps()" worthless (if I use it - Chrome reports ERR_TOO_MANY_REDIRECTS), so in order to secure certain modules with SSL I would have to use paths inside nginx config file - which is not acceptable :(
Question is - is "this.RequireHttps()" Windos only option or am I missing somethig in my configuration? Also could someone explain a bit more what does "EnableClientCertificates" host configuration option does? Is it require to enable SSL? Documentation is rather scarce...
Thanks in advance.
Best regards.
P.S.
I already asked a question about this on stackoverflow:
http://stackoverflow.com/questions/29634033/nancyfx-ssl-how-to-make-this-requirehttps-work-on-linux
But since there is no answer I'm trying here :)

OK, today I tested some more and now I know that "this.RequiresHttps()" works (that is it does what it's supposed to - checks if URL is secured and if not - redirects), problem is with the nginx configuration I posted - when we point to some SSL only module, and are redirected to https://<IP_ADDRESS>:443 - nginx actually makes request to Nancy on proxy_pass url - that is: http://<IP_ADDRESS>:8080 - so we have the following "Catch 22" situation:

We request - for example: http://<IP_ADDRESS>:8080/auth
Nancy checks the url and since it is not HTTPS enabled, it redirects
nginx catches the request correctly end enables SSL, then request the page again on proxy_pass url
Nancy gets request with URL pointing to: http://<IP_ADDRESS>:8080/auth again - since it is not secured it redirects...

The loop is completed.
Question remains - how can we "fool" Nancy to think it got request from https enabled URL? I think this can be done by properly configuring nginx - but my experience there is very limited, I can say I tried:

Setting:

proxy_redirect  http:// https://;
or something similar - while in curl I can see that the "Location" header is being pointed to https - Nancy doesn't seem to use "Location" header during requests

I also tried some rewrites inside location block - but couldn't get them to work.

If this can't be done by server configuration alone, what else is required?
Best regards.

Check out #1679 for a solution to SSL offloading. Basically you can use that hook to "trick" Nancy to think it's HTTPS, even though it's over HTTP. It uses either the  X-Forwarded-Proto or the Forwarded header, make sure you configure Nginx to include one of them.

You can check out https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-load-balancing-with-ssl-termination for config samples on how to include a X-Forwarded-Proto header (I think :stuck_out_tongue:)

Let me know if you get it working so we can close this and write up an answer on SO that we can point to (or people will find) in the future :smile:

Thanks for the answer, combination of "SSLProxy.RewriteSchemeUsingForwardedHeaders (pipelines);" and the following nginx config:
server {
listen       80;

server_name  localhost;
root /home/james/nancywebpageroot/NancyWebPage.DPL.Services/bin/Debug/;

location /Content/ {
    alias /home/james/nancywebpageroot/NancyWebPage.DPL.Services/bin/Debug/Content/;
    location ~*  \.(jpg|jpeg|png|gif|ico|css|js|ttf)$ {
        expires 365d;
    }
}

location / {
proxy_pass http://<IP_ADDRESS>:8080;
}
}

server {
listen       443 ssl;
ssl_certificate    /home/james/sslCert2/server.crt;
ssl_certificate_key /home/james/sslCert2/server.key;

server_name  localhost;
root /home/james/nancywebpageroot/NancyWebPage.DPL.Services/bin/Debug/;

location /Content/ {
    alias /home/james/nancywebpageroot/NancyWebPage.DPL.Services/bin/Debug/Content/;
    location ~*  \.(jpg|jpeg|png|gif|ico|css|js|ttf)$ {
        expires 365d;
    }
}

location / {
proxy_pass http://<IP_ADDRESS>:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

Did the trick, now "this.RequireHttps()" works as it should, thanks for the help - I would like to ask one more, related question - in ASP.NET, the RequireHttpsAttribute can be use to force SSL on whole class or on selected methods - I wonder if the latter is possible with Nancy's "this.RequireHttps()" somehow?
Best regards.

Just call the method in the constructor of a module (outside route definitions)?

You can even add it to the whole application by calling it in the bootstrappers ApplicationStartup function like:
protected override void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines)
{
    pipelines.BeforeRequest.AddItemToStartOfPipeline(SecurityHooks.RequiresHttps(true, 443));
}

Thanks for the answers but you misunderstood me :)
I know I can secure whole module (or even entire application) by using either way you posted - however I would like to know if securing only selected path (not the whole module) is possible, I tried something like this:
public class TestModule : NancyModule
{
	Get["/secured"] = x =>
	{
		this.RequiresHttps(true, 443);
		return "TEST";
	}

	Get["/unsecured"] = x =>
	{
		return "TEST";
	}
}

But this doesn't seem to do anything for the "/secured" path, there is no redirect when user tries to access it without SSL - so I wonder if something like the above is currently  possible with Nancy... I'm sorry if my earlier question wasn't clear enough on that :)
Best regards.

OK, guys since there is no answer let's conclude that there is no equivalent to: "this.RequireHttps()" on path level :) This isn't a big deal let's just ignore it for now.
I will close this issue since the original problem was resolved :) - more specific instructions, as well as some more explanations are available at stackoverflow:
http://stackoverflow.com/questions/29634033/nancyfx-ssl-how-to-make-this-requirehttps-work-on-linux/29832733#29832733
Thanks for all your help.
Best regards.

It would be simple enough to add following the same model as the security hooks now use whereby they either add a hook, or execute the code that would go into the hook immediately, depending on whether it's in the ctor or in the route itself - it was done for all the security bits, but we didn't do it for anything else.


Check for dnsmasq port Error

fatal: [node1]: FAILED! => {"changed": false, "elapsed": 180, "failed": true, "msg": "Timeout when waiting for <IP_ADDRESS>:53"}

[root@k8s-node-28 ~]# kubectl get pods --namespace=kube-system
NAME                                  READY     STATUS              RESTARTS   AGE
dnsmasq-1797577894-wsjjv              0/1       ContainerCreating   0          9m
dnsmasq-autoscaler-1155841093-p6x43   0/1       ContainerCreating   0          9m

[root@k8s-node-28 ~]# kubectl describe --namespace=kube-system pods/dnsmasq-autoscaler-1155841093-p6x43
{kubelet localhost}             Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "POD" with RunContainerError: "addNDotsOption: ResolvConfPath \"/opt/docker/containers/da4c5e3a5ebd076c4f5ce399b1fbc64e42e47fa745dae31839fcaf7ad9940d07/resolv.conf\" does not exist"

  9m    9m      1       {kubelet localhost}             Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "POD" with RunContainerError: "addNDotsOption: ResolvConfPath \"/opt/docker/containers/a9d2f19bc420241954ee2f3b75c63d12df28623a17693d2541c7d7668cc99464/resolv.conf\" does not exist"

  9m    9m      1       {kubelet localhost}             Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "POD" with RunContainerError: "addNDotsOption: ResolvConfPath \"/opt/docker/containers/d53210b880db886e2f9340a7d6e6143d32b956a3b9aecb01e26eb551e1c4ae7e/resolv.conf\" does not exist"

  9m    6s      147     {kubelet localhost}             Warning FailedSync      (events with common reason combined)
  9m    6s      125     {kubelet localhost}             Warning FailedSync      (events with common reason combined)
  9m    5s      127     {kubelet localhost}             Warning FailedSync      (events with common reason combined)
  9m    5s      118     {kubelet localhost}             Warning FailedSync      (events with common reason combined)
  9m    4s      128     {kubelet localhost}             Warning FailedSync      (events with common reason combined)

pls  help me

me to

This error is due to {{ docker_daemon_graph }}

What is the workaround this ?

@jicki would you mind sharing your solution, I have the same problem :-)

did anyone find what can solve this issue?I am facing the same problem.

Also having this issue.  It does appear to be related to {{docker_daemon_graph}} but not sure how to fix.

I had a similar problem with kubernetes pods getting stuck in ContainerCreating after I changed the "docker_daemon_graph" variable.
It looks like the kubelet configuratin is faulty if you change "docker_daemon_graph". I successfully made it work for me by editing the file "kubelet-container.j2" and change the line:
-v {{ docker_daemon_graph }}:/var/lib/docker:rw

into:
-v {{ docker_daemon_graph }}:{{ docker_daemon_graph }}:rw

I don't really know why this helps, but it did for me.

Disclaimer: Whoops, removed the comment by mistake, so here it is again lol.
I had a similar problem with kubernetes pods getting stuck in ContainerCreating after I changed the "docker_daemon_graph" variable.
It looks like the kubelet configuratin is faulty if you change "docker_daemon_graph". I successfully made it work for me by editing the file "kubelet-container.j2" and change the line:
-v {{ docker_daemon_graph }}:/var/lib/docker:rw

into:
-v {{ docker_daemon_graph }}:{{ docker_daemon_graph }}:rw

I don't really know why this helps, but it did for me.


Simplify testing for new contributors

Addresses some difficulties encountered when trying to get up to speed contributing to the project.

Fixes pytest.ini to ignore things like build dirs when looking for tests
Fixes resolving vendored test packages when running tests outside the repo root
Add some docs on development setup and testing

There are a few more structural decisions that this doesn't address:

repo pipenv shadowing global package when bootstrapping (pypa/pipenv#2557)
The docker-compose image doesn't have python 3.7, so make test doesn't work
The test Dockerfile is outside this repo, so ^ can't be fixed as easily

Is there any way to see the output of buildkite without being added to the org?
A copy/paste would be much appreciated. :)

Ok, pushed a change to set the package dir explicitly and tested it from /, /tests and /tests/integration to verify. And yay, buildkite passed!
It's a bit larger of a change, but it removes the implicit dependency of setting the env var before pytest  loads the plugin (which happens before conftest.py). pytest-pypi will still have a env-var based vendor dir if run as __main__, but otherwise it will need to be primed explicitly to be populated.

Thanks for your efforts on this, feel free to reach out via your preferred real-time communication channel if you want to solicit specific feedback (I'm available on IRC/slack/whatever really)

I need to make sure VSTS still builds against this before I can merge

I run the tests on my local Windows machine. One failure:
_____________________ test_install_venv_project_directory _____________________
[gw5] win32 -- Python 3.7.0 c:\users\uranusjr\documents\programming\pipenv\.venv\scripts\python.exe

PipenvInstance = <class 'tests.integration.conftest._PipenvInstance'>
pypi = <pytest_pypi.serve.Server object at 0x0000027CF2455F28>

    @pytest.mark.install
    @pytest.mark.virtualenv
    def test_install_venv_project_directory(PipenvInstance, pypi):
        """Test the project functionality during virtualenv creation.
        """
        with PipenvInstance(pypi=pypi, chdir=True) as p:
            with temp_environ(), TemporaryDirectory(
                prefix="pipenv-", suffix="temp_workon_home"
            ) as workon_home:
                os.environ["WORKON_HOME"] = workon_home.name
                if "PIPENV_VENV_IN_PROJECT" in os.environ:
                    del os.environ["PIPENV_VENV_IN_PROJECT"]
                c = p.pipenv("install six")
                assert c.return_code == 0
                project = Project()
>               assert Path(project.virtualenv_location).joinpath(".project").exists()
E               AssertionError: assert False
E                +  where False = <bound method Path.exists of WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv/.project')>()
E                +    where <bound method Path.exists of WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv/.project')> = WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv/.project').exists
E                +      where WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv/.project') = <bound method PurePath.joinpath of WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv')>('.project')
E                +        where <bound method PurePath.joinpath of WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv')> = WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv').joinpath
E                +          where WindowsPath('C:/Users/uranusjr/Documents/programming/pipenv/.venv') = Path('C:\\Users\\uranusjr\\Documents\\programming\\pipenv\\.venv')
E                +            where 'C:\\Users\\uranusjr\\Documents\\programming\\pipenv\\.venv' = <pipenv.project.Project object at 0x0000027CF2483BE0>.virtualenv_location

tests\integration\test_install_basic.py:365: AssertionError
---------------------------- Captured stdout call -----------------------------
$ pipenv install six
Installing six…
Looking in indexes: http://<IP_ADDRESS>:3348/simple
Collecting six
  Downloading http://<IP_ADDRESS>:3348/six/six-1.11.0-py2.py3-none-any.whl
Installing collected packages: six
Successfully installed six-1.11.0

Adding six to Pipfile's [packages]…
Installing dependencies from Pipfile.lock (2a6c8a)…
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.

Creating a virtualenv for this project…
Pipfile: R:\9893bf199154429c87a8c5cb903351c0\Pipfile
Using c:\users\uranusjr\documents\programming\pipenv\.venv\scripts\python.exe (3.7.0) to create virtualenv…
Already using interpreter c:\users\uranusjr\documents\programming\pipenv\.venv\scripts\python.exe

Using base prefix 'C:\\Users\\uranusjr\\AppData\\Local\\Programs\\Python\\Python37'

c:\users\uranusjr\documents\programming\pipenv\.venv\lib\site-packages\virtualenv.py:1041: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses

  import imp

New python executable in R:\1bf6f8b890de4da391d12c1747a1b67e\9893bf199154429c87a8c5cb903351c0-fG1u2CNc\Scripts\python.exe

Installing setuptools, pip, wheel...done.

Virtualenv location: R:\1bf6f8b890de4da391d12c1747a1b67e\9893bf199154429c87a8c5cb903351c0-fG1u2CNc
Creating a Pipfile for this project…
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (2a6c8a)!

  It installs the package without creating a virtualenv -- for all intents and purposes there should be a new virtualenv created before we do the installation.
I think this all relates to the definition of project = Project(which=which) in core.py.  It doesn't re-evaluate what the relevant project is on every call so we keep using the old one during installation.  Thoughts? Does this wind up working if you switch that to project = lambda: Project(which=which) ?

I give up. resorted to parsing the virtualenv’s location directly from command output. Much simpler. We’ll deal with the Project mess later.


Udiscretize function

Hello,
While reading the code, I found it weird that the function udiscretize (in BaseDiscretizer) samples from a normal distribution defined by the data and then limits it to [min,max] if it goes beyond its bounds. Correct me if I'm wrong but it seems to me that this creates a weird distribution (two peaks in min and max).
For me a better way to do it is to use a truncated normal distribution (I found one in scipy : scipy.stats.truncnorm )

You are right on the peaks. Good suggestion, do you want to do a quick pull request? If not that's fine
: )

fixed in ec51505acf4f66be7535368e084e59f3e4ac6ff2


Various widget errors and red screen

https://b.corp.google.com/issues/146385325.
cc @cbracken who's looking at it now. Chris, if this looks like a blocker or critical, please so note when you're investigating.

Fixed upstream.


Browser light node size

I was running the browser-demo and first of all is already great this can even run and be a thing, I bet there's still a lot of things to do to have browser light nodes ready for primetime. One such an improvement to pay attention to could be caring about the final size of the WASM that is shipped to browsers, ~19Mb when I compiled the demo.
I bet several optimizations could be done to trim the size down or later find ways to break things up into pieces that can be lazy loaded. Is needless to say that for the web specially on mobile devices where this kind of nodes would be very attractive to have bandwidth and lading speed as crucial and a fatty dependency makes usability quite poor.
Any low hanging fruits that might already shave some bytes off for example?

CC @Stefie @expenses

Hi @olanod & thanks for your comments!
The Browser Demo is just the 1st proof of concept implementation that running a Substrate Wasm Light Client in the browser is possible, but there's a lot of work to be done on the Light Client side in the following months.
We're aware that the size of the Wasm binary is an issue but there are also some mayor issues with the syncing speed and in-browser data-storage. The easiest way to reduce the size around 20% would be to use Binaryen's wasm-opt, but on top of that there will be some major refactoring so it doesn't make sense to work on smaller low hanging fruits at this point.
If you're generally interested in the topic, I ca recommend this great talk by Alon Zakai on shipping tiny WebAssembly builds from this years WebAssembly Summit https://www.youtube.com/watch?v=_lLqZR4ufSI

I can also recommend running twiggy top to get a view of what's taking up space in the wasm file.


⚠ Bofrost.at has degraded performance

In fe8f4e0, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1011 ms

Resolved: Bofrost.at performance has improved in 35dbaa4.


Placeholder issue

Issue Description
Placeholder for internal issue 2078
Environment

IBM Event Streams Version:
IBM Cloud Private (ICP) Version:
Operating system of ICP install:
Browser (for UI issues):

No longer required, closing


Use proper output streams for messages output by PSScriptAnalyzer

This issue is a great example of why issue #193 should be approved and implemented.
Today if you run Invoke-ScriptAnalyzer on a moderate sized module recursively with the -Verbose switch, you get 38 verbose output messages per file in your module.  For one of my modules that has 58 files (I put each function in its own file if the module is only small-to-medium in size), this results in 2204 verbose messages being sent to the console.  These 2204 verbose messages are nothing but noise to me.
For each of the files that are processed, I get one verbose message that indicates a file is being analyzed and then I get 37 messages (one for each rule, so that will only grow over time) indicating that a rule is being processed for that file.  Those should be progress messages, not verbose messages, and so they should be output using WriteProgress, not WriteVerbose.  Verbose should be reserved for non-progress messages that provide some additional detail about what is happening behind the scenes -- some small amount of information that would be useful for the invoker to know if they want the additional detail, but that they don't see regularly.  This is exactly why the PSProvideVerboseMessage rule needs to go away -- it encourages users to wrongly add verbose message output where there shouldn't be any.
The reason why I invoked Invoke-ScriptAnalyzer with -Verbose in the first place is because I wanted to see if it was writing a verbose message to the output stream when a rule is found but suppressed.  It is not doing this, but that is a great example of the kind of output I would expect to be in a verbose stream for this command.  This verbose output would not be noise, because it includes additional detail that is not visible by default (and rightly so) that would add value to a caller trying to figure out why a particular rule is not showing up in certain scenarios.  This verbose output would also be highly useful to the community because it would allow them to catch scripts and/or modules that were a little too "suppress-happy", in which case they could inform the author about the error in their ways.
In summary, Invoke-ScriptAnalyzer should:
a) convert the current WriteVerbose calls that output what are really progress messages to the verbose stream to WriteProgress calls (this will also help wrt performance, so that end users see the progress as it is happening)
b) add WriteVerbose calls that output verbose messages indicating when a rule is suppressed, identifying the rule that is suppressed, the line/file where it would have been raised, and ideally the line/file where the attribute to suppress that rule was defined (the source of the suppression).

These are good suggestions @KirkMunro, we will revisit the output streams and modify some as to your suggestions.


Cfgrib refactor

Function added in cfgrib_.py for the new api implementation --> open_backend_dataset_cfgrib(). Imports were also added onto the file.
cfgrib added to the ENGINES dictionary in apiv2.py

[ ] Passes isort . && black . && mypy . && flake8
[ ] Passes all tests for backends.

Hello @TheRed86! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file xarray/backends/apiv2.py:

Line 6:1: F401 '..core.dataset.Dataset' imported but unused
Line 7:1: F401 '..core.utils.close_on_error' imported but unused
Line 7:1: F401 '..core.utils.is_grib_path' imported but unused
Line 230:9: F841 local variable 'overwrite_encoded_chunks' is assigned to but never used

In the file xarray/backends/h5netcdf_.py:

Line 345:14: W292 no newline at end of file


Named export 'BloomEffect' not found. The requested module 'postprocessing' is a CommonJS module

Description of the bug
I'm trying to use the library in an Astro project, when I run build I get the following error
  Named export 'BloomEffect' not found. The requested module 'postprocessing' is a CommonJS module, which may not support all module.exports as named exports.
  CommonJS modules can always be imported via the default export, for example using:

  import pkg from 'postprocessing';
  const { DotScreenEffect, BloomEffect, GlitchEffect, ChromaticAberrationEffect, ShaderPass, EffectPass, EffectComposer, RenderPass } = pkg;

  File:
    src/pages/experiments/[slug].astro
  Stacktrace:
file:///Users/alvarosabu/Projects/tres-playground/dist/chunks/post-processing-manual.1775ceb4.mjs:6
import { DotScreenEffect, BloomEffect, GlitchEffect, ChromaticAberrationEffect, ShaderPass, EffectPass, EffectComposer, RenderPass } from 'postprocessing';
                          ^^^^^^^^^^^
SyntaxError: Named export 'BloomEffect' not found. The requested module 'postprocessing' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:

import pkg from 'postprocessing';
const { DotScreenEffect, BloomEffect, GlitchEffect, ChromaticAberrationEffect, ShaderPass, EffectPass, EffectComposer, RenderPass } = pkg;

    at ModuleJob._instantiate (node:internal/modules/esm/module_job:124:21)
    at async ModuleJob.run (node:internal/modules/esm/module_job:190:5)`

To Reproduce
See log https://app.netlify.com/sites/tresjs-playground/deploys/6405e36f41f59a0008fbc4fc
Expected behavior
Adding  "type": "module" to the package.json will solve the issue
Library versions used

Three: "three": "^0.150.1",
Post Processing: "postprocessing": "^6.30.1",

  System:
    OS: macOS 13.2.1
    CPU: (8) arm64 Apple M1 Pro
    Memory: 95.61 MB / 16.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 18.14.1 - ~/.nvm/versions/node/v18.14.1/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 9.3.1 - ~/.nvm/versions/node/v18.14.1/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 110.0.5481.177
    Safari: 16.3`

Postprocessing defines entry points for ESM and CommonJS so this is likely a bundler or build setup issue. You could try importing from postprocessing/module as a workaround if your build tool insists on importing from main.
Changing the package type to module is a breaking change that will be included in v7.


Termux emulator cannot be connected by external IP using JSON-Server

I want to use Termux simulator to build JSON-Server on my mobile phone. My problem is that I cannot connect to the JSON-Server using the IP (http://<IP_ADDRESS>:3000) on another computer. Use http://localhist:3000 on the mobile phone to connect normally.
I tried to use http-server again. Result: Both IP and localhost can be connected normally.
Does anyone know how to solve this problem?

The solution I got: json-server --watch db.json --port 8080 --host <IP_ADDRESS>
This can be used within the local area network.


07.01.01

As a claimant, I want to submit an expense claim for approval, denoting the claim status as submitted, with no further changes allowed by me to the claim information (except the tags).

Added to wiki, need check case name


At line:380 char:43
+             if ((Get-PSReadLineKeyHandler -Key Spacebar).Function -eq ...
+                                           ~~~~
    + CategoryInfo          : InvalidArgument: (:) [Get-PSReadLineKeyHandler], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.GetKeyHandlerCommand

Get-PSReadLineKeyHandler : A parameter cannot be found that matches parameter name 'Key'.

 I have the same setup as you do, using Oh-My-Posh and I've encountered the same error as you did


No High-Availability example

The examples page includes "high-availability" example which is simply a redis client example without sentinel:
https://github.com/Cylix/cpp_redis/wiki/Examples#high-availability

Hi,
Thanks for reporting this, I'm working on this and the example will be updated by tmr.
Best

Hi,
The example has been updated, in both the wiki and source code.
I'm closing this issue but do not hesitate to re-open it if you find any other issues I can assist you with.
Best!

Thanks very much!


Add Jitters to Contributors list

Hi  @umudkip, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added social share  to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.

Super simple and quick!

@umudkip, is that a shiny mudkip? ;). I’d urge you to continue contributing to other open source projects.
We also have a slack team to help/mentor people trying to contribute to open source projects.
You can join the team by going to https://firstcontributions.herokuapp.com

A special, shiny mudkip :) Thanks! I intend to contribute in open source projects for improving people's online lives. I'll join your slack!


regression: <IP_ADDRESS>-1: restart running-container (nonroot): executable file not found

$ podman run --detach alpine sleep 60
9e97f53461ea0ba6f60e90991c57a8ea8d4a877017eb60bcbe42f0d19aa17a19
$ podman restart 9e97f53461ea0ba6f60e90991c57a8ea8d4a877017eb60bcbe42f0d19aa17a19
container create failed: container_linux.go:344: starting container process caused "exec: \"sleep\": executable file not found in $PATH"
: internal libpod error

Works fine as root. Only seems to happen with running containers; restarting a stopped one works fine.
podman-<IP_ADDRESS>-1.git66d3499.fc29

@giuseppe PTAL
I'm betting this is the fuse-overlayfs mount issue we were discussing in the other issue - we'll probably need to join the user namespace of the container if it's running when we try to restart it

good catch, I've opened a PR here: https://github.com/containers/libpod/pull/1975


[enhance]: reduce goroutine when write too many data families

Please describe enhancement
The current wal is isolated by data family. At the same time, a wal will have a goroutine for consuming data. When there are many data families, many consuming goroutines will be created. However, in time series scenarios, generally only the current data family is active There is no need to use independent goroutine.

My proposed solution is as follows:

Disable the goroutine of ReplicatorPeer.
Add new methods, such as "Forward," to Partition and ReplicatorPeer. Invoking this method should consume and replicate some data until no new sequence (seq) is returned.
Allocate a goroutine for each WriteAheadLog, continuously iterate through its familyLogs, and invoke the Forward method of Partition.

Please evaluate. Thank you.

It can allocate a goroutine for each partition not family log, can try to iterate each family log through reflect.Select. but it should be noted that family log is dynamic.


Undo Output Control by Erik Temple steps on #undef from 6.3.3 compiler

I don't know if it is practical to do anything to fix this, but ... in Undo Output Control, the user is allowed to specify new words for "undo" and "oops." This gets in the way of code such as
Include (-

	#Undef OOPS1__WD;
	Constant OOPS1__WD = 'o//';
	#Undef OOPS2__WD;
	Constant OOPS2__WD = 'o//';
	#Undef OOPS3__WD;
	Constant OOPS3__WD = 'o//';

-) after "Language.i6t".

Which is simpler, and it's usable for compiler version 6.3.3 and above. (We are at 6.3.6, but 6.3.3 has been around for years.)
Though this was a very forward-thinking thing for Erik to do, and it provided immediate flexibility, he couldn't look into the future and see #Undefs. The result was, I couldn't figure how/why the OOPS word was still enabled in Ailihphilia.
My test case was that I 1) set AGAIN1__WD etc. elsewhere and 2) assumed the same would work for OOPS1_WD (it works fine without this extension and seems like a better general approach.)
So is it worth upgrading Undo Output Control to note this? Should we assume that people have/want the latest compiler version? Is there a way we can/should document things so other people are less likely to run into the same dead end I did?
The code in question would be
To decide which value is undo word #1:
	(- 'undo' -)

To decide which value is undo word #2:
	(- 'undo' -)

To decide which value is undo word #3:
	(- 'undo' -)

To decide which value is oops word #1:
	(- 'oops' -)

To decide which value is oops word #2:
	(- 'o//' -)

To decide which value is oops word #3:
	(- 'oops' -)

And changing "undo word #1" in the code to UNDO__W1, etc.

I'm pretty sure it's feasible. I am enmeshed in an entirely different programming project and can't do it myself right now, but after the last time I tore apart Undo Output Control and put it back together, I'm pretty sure it's feasible.
On Sun, Mar 6, 2022, at 7:07 AM, Andrew Schultz wrote:

I don't know if it is practical to do anything to fix this, but ... in
Undo Output Control, the user is allowed to specify new words for
"undo" and "oops." This gets in the way of code such as
Include (-

	#Undef OOPS1__WD;
	Constant OOPS1__WD = 'o//';
	#Undef OOPS2__WD;
	Constant OOPS2__WD = 'o//';
	#Undef OOPS3__WD;
	Constant OOPS3__WD = 'o//';

-) after "Language.i6t".

Which is simpler, and it's usable for compiler version 6.3.3 and above.
(We are at 6.3.6, but 6.3.3 has been around for years.)
Though this was a very forward-thinking thing for Erik to do, and it
provided immediate flexibility, he couldn't look into the future and
see #Undefs. The result was, I couldn't figure how/why the OOPS word
was still enabled in Ailihphilia.
My test case was that I 1) set AGAIN1__WD etc. elsewhere and 2) assumed
the same would work for OOPS1_WD (it works fine without this extension
and seems like a better general approach.)
So is it worth upgrading Undo Output Control to note this? Should we
assume that people have/want the latest compiler version? Is there a
way we can/should document things so other people are less likely to
run into the same dead end I did?
The code in question would be
To decide which value is undo word #1:
	(- 'undo' -)

To decide which value is undo word #2:
	(- 'undo' -)

To decide which value is undo word #3:
	(- 'undo' -)

To decide which value is oops word #1:
	(- 'oops' -)

To decide which value is oops word #2:
	(- 'o//' -)

To decide which value is oops word #3:
	(- 'oops' -)

And changing "undo word #1" in the code to UNDO__W1, etc.
--
Reply to this email directly or view it on GitHub:
https://github.com/i7/extensions/issues/77
You are receiving this because you are subscribed to this thread.
Message ID: @.***>

Solved during my update of Undo Output Control for Inform v10.  Basically I removed the old Undo Output Control mechanism and told people to use the most modern method (which isn't actually #Undef any more, it's "replacing"... it's in the docs for the extension).  This is now on the 'master' branch and I am working on getting it pushed into the 10.1 branch.

Um, I'm not sure why that didn't close this issue.  Trying again.


BUG: UI Drag

Describe the bug
Hi. When pagingEnable = {false} the pull fails. Is there any way to fix it?. Thanks
Visual demo
https://user-images.githubusercontent.com/53886386/186808680-6ad6c25b-04ae-4ec3-ad03-26f9d0abcc19.mp4
Environment:

react-native-week-view: e.g. version 0.16.0, master branch
react-native: 0.64.2
react: 17.0.1
OS: e.g. android 9, emulator

Are you using pagingEnabled={false} to scroll a different amount of days at the time? That feature is not supported yet: #128
I will address this soon


Does AMS support azure redis with JS backend?

I have been searching for code samples and tutorials on how to connect to azure redis but haven't been able to find any. Do you guys support azure redis? Thanks.

The JavaScript backend for Mobile Services only supports SQL Server at the moment. Other back ends are something we're thinking about.


[CCAP-216] V3 - Reorganize Tag tree and fixed accessibility violation…

…s for Page 2
🔗 Jira ticket
CCAP-216
✍ Description
Pages 1 & 2 of the CCAP Application PDF revamped for accessibility.
📷 Design reference

✅ Completion tasks

[ ] Added relevant tests
[ ] Meets acceptance criteria

Thanks @cram-cfa! These changes can be merged anytime.


Error: insertBefore when reusing vnodes

Reproducable example:
var sharedNode = h('div', {}, 'Selected');
var vnode1 = h('div', [
  h('div', {}, ['One']),
  h('div', {}, ['Two']),
  h('div', {}, [sharedNode]),
]);
var vnode2 = h('div', [
  h('div', {}, ['One']),
  h('div', {}, [sharedNode]),
  h('div', {}, ['Three']),
]);
patch(vnode0, vnode1);
patch(vnode1, vnode2);

This example crashes on the second patch.
The reason is that when the actual DOM node for sharedNode on position two is created, it assigns it as vnode.elm. The vnode is still that same sharedNode, that the third node still has a reference to (as it is not yet processed). When the third node gets created, it tries to do insertBefore with vnode.elm which is not the actual elm from the last patch (on position 3), but the new dom node of sharedNode created in this patch (position 2). Thus the insertBefore crashes as the element is not a child of the parent of the third node.
Note that this issue only happens in this direction (first insert, then remove) if you swap the two patches this does not happen, as first the node gets removed (and thus the reference) and then a new one gets inserted
This is the cause for https://github.com/cyclejs/cyclejs/issues/713
I am not sure what is the best way to solve this.

The only solution that I can think of is assigning the vnodes to a new property _elm and after all patching is done, traversing the tree again and assigning them to elm, but obviously this comes at a huge performance cost.

Another solution would be copying vnodes to get rid of equal references which is also expensive

If noone finds a better solution I would add a section to the README with something like

## Common Errors
`insertBefore: node is not a child ...`
This is caused when vnodes have the same reference (aka are the exact same object) as vnodes in the last patch. Solution: do not reuse vnodes like here:
```js
var sharedNode = h('div', {}, 'Selected');
var vnode1 = h('div', [
  h('div', {}, ['One']),
  h('div', {}, ['Two']),
  h('div', {}, [sharedNode]),
]);
var vnode2 = h('div', [
  h('div', {}, ['One']),
  h('div', {}, [sharedNode]),
  h('div', {}, ['Three']),
]);
patch(vnode0, vnode1);
patch(vnode1, vnode2);
```

Snabbdom does not allows reusing vnodes like that as it stores the DOM elements in the vnodes for performance reasons.
Adding a section like that to the readme is a great idea :+1:

It's sad that referential transparency can't be maintained but I guess performance is king


Mixpanel instance is not defined during mixpanel.init loaded event

See example here:
http://codepen.io/anon/pen/vOMPVM
As you can see here: https://github.com/mixpanel/mixpanel-js/blob/master/mixpanel.js#L4718 The instance is not set on the window until after the loaded event. Reported this already but posting it here, seems kinda serious.

Hi, thanks for the report and code sample. It looks like the documentation is a bit out of date here. The loaded callback is passed the specific mixpanel lib object as a parameter, which you should use to access it rather than the global (also useful if you're juggling multiple implementations on a single page). An example from the test suite: https://github.com/mixpanel/mixpanel-js/blob/b944e9d193e4fe07417d02fb2fc2f1920a30189a/tests/tests.html#L29-L31
I'll leave this issue open until we get the documentation updated.

Where is the documentation?

This also then needs to be changed. https://mixpanel.com/help/questions/articles/how-to-prevent-getdistinctid-and-getproperty-from-returning-undefined

Thanks for the heads up!

This sharp edge on the API broke my page in a manner that took forever to diagnose, for two reasons:

The breakage only happened some of the time, depending on how long it took the mixpanel external js to load. (For that reason, adding a breakpoint made the problem go away.)
The error that would have caught this -- "You must name your new library: init(token, config, name)" -- is only printed if you pass the undocumented {debug: true} flag in the mixpanel config.

It would be very very helpful if the documentation called out the fact that the init function on the mixpanel stub and the init function on the full mixpanel object are in fact two completely different functions that just happen to have the same name, and that's why it's bad to call mixpanel.init late. It also would be nice if the usage error were always printed and not hidden behind a debug flag.

Documentation has been updated at https://mixpanel.com/help/reference/javascript-full-api-reference#mixpanel.get_distinct_id and https://mixpanel.com/help/questions/articles/how-to-prevent-getdistinctid-and-getproperty-from-returning-undefined. Thanks all.

I just tripped over this issue today.
I'm new to mixpanel and this is definitely still not made obvious at all in the docs.
For instance, here are the docs for mixpanel.init: https://mixpanel.com/help/reference/javascript-full-api-reference
They point to this 'example config' which shows a loaded fn without a mixpanel arg: https://github.com/mixpanel/mixpanel-js/blob/8b2e1f7b0e066482836e2c5484558e3c356d492a/src/mixpanel-core.js#L95
This is pretty unintuitive, and I don't understand why this has to be the case - presumably the line callback(mixpanel) exists somewhere -- why not just add window.mixpanel = mixpanel before that line?
Genuine question, I am sure there is a good reason why this isn't done :-)


changes on get updated on website.

1 - Describe the bug
Changes are not being updated on the website.
Because dist/sbuttons.min.css file is not being updated
2 - Expected behavior of what should have happened (if applicable)
compiled file make changes in the sbuttons.min file so to make changes properly it should also change file sbuttons.min.css
3 - Screenshots (if applicable)
NA
4 - Additional notes
I was trying to add a new button in existing type and it is compiled correctly to sbuttons.css file but it is not updating sbuttons.min.css file.

Hi @mayankmohak this is actually not a bug. This is because in the contributing guidelines it states that you only need to run npm run compile. However, after changing the website and using sbuttons.min.css from the repository, you also need to run npm run clean-css.
I think we should change the issue to fix the contributing guidelines instead to add a note about this. I'll close this issue and add a new issue about this. Thank you for reporting this!


Not working in shadow DOM

Hello,
I am new to polymer, trying to implement paper-steps for one of our requirement. This element is really awesome, but when I try add this element in Shadow Dom, it is not rendering correctly. Am I missing anything here? Your response is appreciated.
Thanks
Mani

Hello, no you're not missing anything,  I haven't made it shadow dom compatible yet. It is on my near to do list though. So currently it only uses shady dom.

blockquote, div.yahoo_quoted { margin-left: 0 !important; border-left:1px #715FFA solid !important; padding-left:1ex !important; background-color:white !important; }  Thanks for the reply Patrick.
Sent from Yahoo Mail for iPhone
On Friday, July 22, 2016, 3:30 PM, Patrick Miller<EMAIL_ADDRESS>wrote:
Hello, no you're not missing anything, I haven't made it shadow dom compatible yet. It is on my near to do list though. So currently it only uses shady dom.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@manikandan0682 I have a branch, paper-steps/shadow-dom which fixes this issue. The tests succeed locally in Chrome and Firefox, but they keep failing on Travis CI. Would you like to clone that branch and test it in your project to see if it works for you?
Thanks,


Peering Request

Full Name
ABACLOUDA
ASN
56987
PeeringDB Integration

[X] My PeeringDB Entries are current
[X] Peer at ALL EXCHANGES (and skip the Peer Address(es) field below)

Peer Address(es)
Hello,
We would like to add AMS-IX session in addition to our existing multi-hop session.
Multihop

[ ] Multihop Peering Request

Thanks for getting in touch with RouteViews! I've set up the BGP sessions at AMS-IX now as per your PeeringDB entry:
Neighbor                    V         AS   MsgRcvd   MsgSent   TblVer  InQ OutQ  Up/Down State/PfxRcd   PfxSnt Desc
<IP_ADDRESS>              4      56987         0         0        0    0    0    never       Active        0 Abaclouda
2001:7f8:1::a505:6987:1     4      56987         0         0        0    0    0    never       Active        0 Abaclouda

Our collector details are:
IPv4: <IP_ADDRESS>
IPv6: 2001:7f8:1::a500:6447:2
ASN: 6447
FQDN: amsix.ams.routeviews.org

Please let us know if you have any issues with bringing up the BGP sessions.
Best wishes!

Sessions are UP, thank you


Gradient and Hessian of RMSLE

I'm trying to implement the RMSLE custom function to train XGBoost, but I'm getting a constant training and validation error.
Here is my function:
def RMSLE(ypred, dtrain):
y = dtrain.get_label()
return np.sqrt(np.mean((np.log1p(ypred) - np.log1p(y)) ** 2))

#### Returns GRADIENT, HESSIAN of the RMSLE function

def RMSLEobj(ypred, dtrain):
    y = dtrain.get_label()
    N = len(y)
    grad = (1/(N * RMSLE(ypred, dtrain) )) * (np.log1p(ypred) - np.log1p(y)) / (1 + y)
    hess = ( ( 1/ (ypred + 1) * (y + 1) * N )  - grad ** 2) / RMSLE(ypred, dtrain)
    return grad, hess

Can someone help me figure it out?
Thanks in advance!

@med96 Can you specify XGBoost version and complete parameters set you used?  I tried to use default parameter on my local branch and didn't see any error.

@med96 Any update?  Could you provide a reproducible script without using pickle?
Don't close this for now.


I’m a beginner, and I encountered an issue while trying to mimic the stream example in the examples directory

Hi, I’m a beginner with pcap. I was experimenting with the stream example in the examples directory and noticed something unusual.
I used a small image file (around 1.5KB) for testing, but no packets were captured. However, when I switched to a larger image file (around 1.3MB), packets were successfully captured.
Is this expected behavior? Does the asynchronous stream approach have limitations when capturing small amounts of network data? Or am I missing something in my setup?

what example exactly ? This just look like buffering.

I referred to the examples/streamlisten_mt.rs file.。this is my picture that used to tested.

Can you explain in more detail what you are doing?

What command are you using to execute the example?
How are you using the image file?
Did you modify the example in any way?
What is your OS?

OS: win11 22631.4460
rust version: 1.82.0
pcap and pnet is latest version.

I just used the curl command as shown in the image to initiate a simple network request.I have no use for the image in the response, as I am solely focused on the content of the network packets in a single request.
this code:
use futures::StreamExt;
use pcap::{Active, Capture, Device, Error, PacketCodec, PacketStream};
use std::error;

pub struct SimpleDumpCodec;

#[derive(Debug, PartialEq, Eq)]
pub struct PacketOwned {
    pub header: pcap::PacketHeader,
    pub data: Box<[u8]>,
}

impl PacketCodec for SimpleDumpCodec {
    type Item = PacketOwned;

    fn decode(&mut self, pkt: pcap::Packet) -> Self::Item {
        println!("SimplePacketCodec decode");
        PacketOwned {
            header: *pkt.header,
            data: pkt.data.into(),
        }
    }
}

async fn start_new_stream(device: Device) -> PacketStream<Active, SimpleDumpCodec> {
    match new_stream(device) {
        Ok(stream) => stream,
        Err(e) => {
            println!("{:?}", e);
            std::process::exit(1);
        }
    }
}

fn new_stream(device: Device) -> Result<PacketStream<Active, SimpleDumpCodec>, Error> {
    // get the default Device
    println!("Using device {}", device.name);

    let cap = Capture::from_device(device)?
        .immediate_mode(true)
        .open()?
        .setnonblock()?;
    cap.stream(SimpleDumpCodec {})
}

#[tokio::main(flavor = "multi_thread", worker_threads = 10)]
async fn main() -> Result<(), Box<dyn error::Error>> {
    let inter_name = "XXXXXXXXXX-D6FE-49C9-8993-XXXXXXXXXXX";

    let device = Device::list()?
        .into_iter()
        .find(|d| d.name.contains(inter_name))
        .unwrap();
    let stream = start_new_stream(device).await;

    let fut = stream.for_each(move |s| {
        println!("{:?}", s);
        futures::future::ready(())
    });
    fut.await;
    Ok(())
}

Hi @trumansdo I just tried your code on my laptop on a test image of about 1.2 kB and the packet capture worked for me.  Your example code is fine.
However, I use linux and set_immediate_mode is done differently on Linux and on Windows. And based on your description of the issue this could be the problem. Could you start the example and try downloading the small image multiple times, say 20 times? Does this cause the packet capture to work?
If that will work then it would show that the problem is with set_immediate_mode

Also, do you have the same problem when running single threaded?

I experimented with different combinations of promisc and immediate_mode, and found that the println output indeed appears after multiple calls. Additionally, this issue does not occur under single-threaded conditions.

That sounds like a bug. Multithreaded with immediate mode set to true should work just like the single threaded version. It also sounds like a Windows-specific issue.
Unfortunately, I don't use Windows so we have to wait until a Windows contributor picks up this issue.


androidExtras branch: Desktop builds now compile and run under gestalt v7.

Description
The pull request builds upon the androidExtras branch and allows it to compile using gestalt v7. It also includes an optimised version of the ArchiveFileSource class, which allows the game to load significantly faster than with the built-in one.
Testing
Testing with the Desktop build

Clone this pull request and build the game.
The game should compile successfully and should not crash on start-up.
Start a new game and play it through. Ensure that it does not crash at any point.

Testing with the Android build

Follow the instructions here, but do not change the remote.
Change the line in build.gradle from:

    //println "Fetching $repo from $uri"

to
    branch = 'androidExtras'

Run the build and check that it does not crash on start-up
Try to play a new game and check that it does not crash at any point

Notes

When making source changes and the Android facade is in your workspace, try to use the gradlew lint command to check that the Android build will also still run (this is built-in to the Android gradle plugin).
Generally the testing instructions #418 can be used here for testing, with both the android build and the desktop one.
The optimised archive classes use the ZipFile class, rather than ZipInputStream one, which makes them more performant. The OptimisedArchiveFileSource code was taken and modified from its original source here.
The DestinationSolModuleFactory code was mostly taken and modified from its original source here.
As with #433 (which this pull request can be merged into), this depends on https://github.com/MovingBlocks/DestSolAndroid/pull/2

Hooray Jenkins reported success with all tests good!

Works well! Thanks a bunch. Merging into androidExtras now :D

Thank you again so very much @BenjaminAmos ! Your work remains impeccable :-) Are you aiming to participate in GCI again this year, as either student or mentor? You were a solid contender for a grand prize last year, mostly community involvement pushed the other two ahead. You certainly also have the skill and GitHub chops to mentor, even if you would rather stay off chat, so long as you can do without the extra coordination

Now I just need to tidy up a couple of my messes and we should actually be able to merge this and at long last release v2.0.0 on PC, Steam, and Android 🎉
Thanks @NicholasBatesNZ as well for testing, poking, and tweaking!

Thank you for your kind comments.
Hopefully I will be able to enter GCI this year, although since I have many commitments to uphold at the moment, I can't say for sure. Mentoring sounds interesting (though a new experience) and I would like to find out a bit more about that, though I am not sure at the moment if I can/will volunteer. Any more information would be appreciated, though for the moment I am tentative. For the time being, assuming that I can find the time, I should be participating as a student.
Regarding community participation, I will try to work on that. Is the IRC bridged with the discord? If so, I should be able to monitor that at intervals. Also, are the #terasology and #destinationsol channels used separately, or is the preference still to use the #terasology for both?
If the androidExtras branch is to become the main android staging branch, then I will try to apply the following commits in another pull request:

https://github.com/BenjaminAmos/DestinationSol/commit/f7ad8331f7a96e05adc6a56179b518a2875390d5 - This commit fixes a crash that will occur once the androidExtras branch is rebased against develop
https://github.com/BenjaminAmos/DestinationSol/commit/59d7fda635dc080dc16f02823ce3b58b859e0159 - This commit fixes a minor UI issue where the side buttons overlap

That should bring this branch up-to-date with my latest changes.
I'm glad to see that I've helped make progress towards Destination Sol 2.0.0. I still have a couple more things that I think would help with the game but I will create separate GitHub issues for those.

We do hope that you find the time for GCI :)
Discord, Slack and IRC are all bridged together so joining the #destination-sol IRC channel will get you to the right place. That channel does tend to be used separately from #terasology, although there is not always someone around in #destination-sol.
I think that androidExtras will be the main android branch, as it has a lot of progress already. As such, a PR with those fixes you mention would be greatly appreciated :)
And yes, bring forth the issues!

The #destination-sol branch on IRC is very lonely, yes, but it does bridge to a large amount of people in Discord, and Slack too, so yeah that's fine :-) Anybody who would notice #terasology should also notice #destination-sol
That one drawback is that if you only connect via IRC you won't see the chatlog available on Discord & Slack, unless of course you use some sort of persistent IRC setup that keeps you online.
For GCI: you'd do great either as student or mentor 👍 More potential short-term rewards as a student, more potential long-term rewards as mentor - but if you can participate as a student again this year you could always mentor in the future. We'll still be around!
Mentoring is generally lurking on chat waiting for student questions and checking the GCI site for tasks awaiting review, with the usual sort of checking on a PR, testing it, providing student feedback and so on. For GCI since all tasks are small'ish that's generally easy, and the biggest challenge is if we have gaps in coverage (timezones, mentor availability, heavy traffic spikes from student activity) as opposed to any sort of technical challenge, which is more of a GSOC thing.
Another thing is helping prepare GCI tasks ahead of the work period actually starting. You can do that by just writing good issues and noting if you think some are ideal for use in GCI :-)


ngOptions documentation and example directly contradict each other

From the docs:

Do not use select as and track by in the same expression. They are not designed to work together.

Then immediately following that, there is an example where they are used together in the same expression:
item.subItem as item.label for item in values track by item.id

Either the code example directly contradicts the previous statement, or I'm misinterpreting this and the documentation is very confusing. I ran this by a couple of other devs to validate that others are interpreting it the same way I am.

This is a duplicate of #11768, and there is a PR in progress #13007.

Oops. My bad. I tried looking but didn't see that other issue. Thanks for taking a look.


Logout Button Colour

The logout button is blue against the blue background, could it be white against the blue background so it can be visible?


some fixes and improvements

added aspect ratio option to plots
use data time not browser time #27
added polar speed percentage #30
added option to hide rings in the overlay
hide widget if there is no position
explicitly set source when writing data to store

Hi Adam,
you cannot set STW to -1 in #501 if it is not existing in original data, because then $VHW is sent even if there is no STW in original data because the check for existence of STW in #514 then results always as True (due to the -1).

Very good point, thank for finding it. This is a leftover of a workaround for https://github.com/wellenvogel/avnav/issues/347 and can be removed.


Documentation ambiguities

Describe the bug
The documentation on integrating Ambassador and Istio is riddled with ambiguities. I need to use mTLS for HIPAA compliance.  I don't want to spend a week trying to figure this out. Please help. :)
Example 0
Istio's basic ingress controller is very limited, and has no support for authentication or many of the other features of Ambassador

While the sentence is factually true, it is misleading.  Istio offers a Gateway now. So, comparing Ambassador to the Istio Ingress Controller is inappropriate.
Example 1
(Note that if you are planning to use mutual TLS for communication between Ambassador and Istio/services in the future, then the order in which you deploy the ambassador-admin service and the ambassador LoadBalancer service below may need to be swapped)

Well, what does this mean in practice.  What is the order?  What should the order be?  How does one affect the order, particularly if one is implementing GitOps?
Example 2
Optionally, delete the Ingress controller from the bookinfo.yaml manifest by typing kubectl delete ingress gateway.

What ingress gateway?  Is this created by istio?  Why is this optional? What happens if you don't delete it?  Why should one delete it?
Example 3
---
apiVersion: v1
kind: Service
metadata:
  labels:
    service: ambassador
  name: ambassador
  annotations:
    getambassador.io/config: |
      ---
      apiVersion: ambassador/v1
      kind:  Mapping
      name:  httpbin_mapping
      prefix: /httpbin/
      service: httpbin.org:80
      host_rewrite: httpbin.org
      ---
      apiVersion: ambassador/v1
      kind:  Module
      name: tls
      config:
        server:
          enabled: True
          redirect_cleartext_from: 80
        client:
          enabled: False
        upstream:
          cert_chain_file: /etc/istiocerts/cert-chain.pem
          private_key_file: /etc/istiocerts/key.pem

This includes a Mapping and a Module.  Why?  Why not just include a Module?  The point is the certs, right?  How else can one provide the Module outside of a service?  Why are these combined here?
Example 4
This will define an upstream that uses the Istio certificates. We can now reuse the upstream in all Ambassador mappings to enable communication with Istio pods.

What is an upstream?  How can it be reused?  Why do I care?
Example 5
First we need to change our Ambassador Deployment to use the Prometheus StatsD Exporter as its sidecar. Do this by applying the ambassador-rbac-prometheus.yaml:

What does StatsD have to do with Prometheus?  Why is a StatsD exporter needed?

Thanks for the feedback. I addressed #0 in the docs. In general, the assumption in this guide is that reader has covered the concepts section (which covers things like upstream). Regarding 1/2/3, would be great if you could contribute learnings back to improve our docs! We are not experts on Istio, and Istio changes at a very high rate. Finally, #5 is covered in the linked monitoring docs; it doesn't make sense to duplicate it here.


[CheatEnabler] How to disable sandbox mode

When enabling sandbox mode with the mod, adding a few veins and disabling it again, how can you avoid that the save is flagged with sandbox mode and how do you remove the sandbox mode flag from an existing save.

I don't think you can do this with embedded cheat functions, you may need other mods.
Anyways I may add this as an individual function to CheatEnabler some time.

disable sandbox mode is implemented in official Dev Shortcuts, check in-game tips for details


is this working

is this workingm or still under development

Yes it works, you can check the examples at https://github.com/SNSA/agario-client2/tree/master/examples

When will you finish it

I dont know.


Move to pin-project-lite

Closes #60

Some quick cleanup while I was in here for #59 :)

Thanks!
CI failure will be fixed by #63.
bors r+


Added support for processing setext headers

Added support for setext headers
Title 1
======

Title 2
------

Also fixes a bug where whitespace is placed at the start of elements like ATX headers.

Thank you very much for the PR. will try to review as soon as possible!

Thank you so much for your contribution!


Added Generators.Blazor

Generators.Blazor Nuget is a source generator for improving performance in Blazor. The project also contains analyzers to detect common issues. Please consider adding it to the awesome-blazor collection.

Very interesting, thank you.
Added in the release https://github.com/AdrienTorris/awesome-blazor/releases/tag/v2020.W47


Makefile issues

I'm trying to debug an issue in (https://github.com/SymbiFlow/sv-tests/issues/1501) which is triggered by sv-tests' runners.mk:
	cd $(RDIR)/uhdm-integration && $(MAKE) image/bin/surelog

Looking at the uhdh-integration Makefile I see no rule for image/bin/surelog which could be attributed to an sv-tests bug, but I still see things I don't understand in the Makefile:

All the XXX_BIN vars point to ${root_dir}/../image/bin/XXX but the clean rule points to $(root_dir)/image, not $(root_dir)/../image
Are all the XXX_BIN tool references point to plain builds, built externally by their respective tools, or are these modified builds in some way, as explained in https://github.com/alainmarcel/uhdm-integration#readme ?

Good catch, the make clean target is not valid here anymore. This is because the modified tools (Verilator and Yosys with added UHDM support) used to be submodules in this repository, but are now used on their own and this repository hosts only tests.

#323 will take care of cleaning the makefile here
tool references expect modified versions of Verilator and Yosys. Those tools will also build their own Surelog binary that is guaranteed to be compatible and store it in their image folder to avoid interfering with system-wide installed tools.

Thanks for your reply.
What is the recommended build flow for someone starting from scratch for a working Surelog and its related projects in particular, and the whole sv-tests repo in general? Obviously the current build instructions are outdated.
What is the roadmap for the Surelog integration in Verilator and Yosys? I see that the antmicro repos are not github forks and so it is harder to see as to what extent are they trying to keep it aligned with the original projects


Ribbon client errors never handled?

As far as I can tell, a @LoadBalanced RestTemplate never feeds back any error information to the load balancer, making most of the Ribbon features unusable.
Circuit breakers are never tripped, AvailabilityFilteringRule (the default) and RetryRule are essentially useless - behaving exactly the same as RoundRobinRule, and the monitors' stats are never updated.
I can't see that response time stats are ever updated either, making WeightedResponseTimeRule likewise identical to RoundRobinRule.
The only location where there's currently an opportunity to get this information is RibbonHttpRequest.executeInternal, but that just passes back out to generic RestTemplate code that has no ribbon knowledge.
The RestClient does have an HttpClientLoadBalancerErrorHandler as a retry handler, but this is never called either.
In fact none of the noteX methods in LoadBalancerContext are ever called in any circumstances I can find.
These are the sort of exceptions I expect to be interacting with the load balancers:
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://ribbon-client":com.sun.jersey.api.client.ClientHandlerException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:7443 [localhost/<IP_ADDRESS>] failed: Connection refused: connect; nested exception is java.io.IOException: com.sun.jersey.api.client.ClientHandlerException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:7443 [localhost/<IP_ADDRESS>] failed: Connection refused: connect
	at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:607) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:572) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:523) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at MyController ~[classes/:na]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) [tomcat-embed-core-8.0.28.jar:8.0.28]
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) [spring-webmvc-4.2.3.RELEASE.jar:4.2.3.RELEASE]
    ... 102 frames omitted
Caused by: java.io.IOException: com.sun.jersey.api.client.ClientHandlerException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:7443 [localhost/<IP_ADDRESS>] failed: Connection refused: connect
	at org.springframework.cloud.netflix.ribbon.RibbonClientHttpRequestFactory$RibbonHttpRequest.executeInternal(RibbonClientHttpRequestFactory.java:125) ~[spring-cloud-netflix-core-1.0.7.RELEASE.jar:1.0.7.RELEASE]
	at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:53) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at org.springframework.http.client.InterceptingClientHttpRequest$RequestExecution.execute(InterceptingClientHttpRequest.java:94) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at MyAuthenticator.intercept ~[classes/:na]
	at org.springframework.http.client.InterceptingClientHttpRequest$RequestExecution.execute(InterceptingClientHttpRequest.java:84) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at org.springframework.http.client.InterceptingClientHttpRequest.executeInternal(InterceptingClientHttpRequest.java:69) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:53) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:596) ~[spring-web-4.2.3.RELEASE.jar:4.2.3.RELEASE]
	... 127 common frames omitted
Caused by: com.sun.jersey.api.client.ClientHandlerException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:7443 [localhost/<IP_ADDRESS>] failed: Connection refused: connect
	at com.sun.jersey.client.apache4.ApacheHttpClient4Handler.handle(ApacheHttpClient4Handler.java:184) ~[jersey-apache-client4-1.11.jar:1.11]
	at com.sun.jersey.api.client.Client.handle(Client.java:648) ~[jersey-client-1.13.jar:1.13]
	at com.sun.jersey.api.client.WebResource.handle(WebResource.java:680) ~[jersey-client-1.13.jar:1.13]
	at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74) ~[jersey-client-1.13.jar:1.13]
	at com.sun.jersey.api.client.WebResource$Builder.post(WebResource.java:568) ~[jersey-client-1.13.jar:1.13]
	at com.netflix.niws.client.http.RestClient.execute(RestClient.java:621) ~[ribbon-httpclient-2.0.0.jar:2.0.0]
	at com.netflix.niws.client.http.RestClient.execute(RestClient.java:527) ~[ribbon-httpclient-2.0.0.jar:2.0.0]
	at org.springframework.cloud.netflix.ribbon.RibbonClientHttpRequestFactory$RibbonHttpRequest.executeInternal(RibbonClientHttpRequestFactory.java:122) ~[spring-cloud-netflix-core-1.0.7.RELEASE.jar:1.0.7.RELEASE]
	... 135 common frames omitted
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:7443 [localhost/<IP_ADDRESS>] failed: Connection refused: connect
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:151) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:117) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) ~[httpclient-4.5.1.jar:4.5.1]
	at com.sun.jersey.client.apache4.ApacheHttpClient4Handler.handle(ApacheHttpClient4Handler.java:170) ~[jersey-apache-client4-1.11.jar:1.11]
	... 142 common frames omitted
Caused by: java.net.ConnectException: Connection refused: connect
	at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method) ~[na:1.8.0_65]
	at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85) ~[na:1.8.0_65]
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[na:1.8.0_65]
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[na:1.8.0_65]
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[na:1.8.0_65]
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) ~[na:1.8.0_65]
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_65]
	at java.net.Socket.connect(Socket.java:589) ~[na:1.8.0_65]
	at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:337) ~[httpclient-4.5.1.jar:4.5.1]
	at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:134) ~[httpclient-4.5.1.jar:4.5.1]
	... 152 common frames omitted

Perhaps I've missed something in my config?
The Apache HttpClient is configured and shared with other (non-balanced) components elsewhere.
  @RibbonClient(name = "ribbon-client", configuration = CoreRibbonConfig.class)
  public static class CoreRibbonConfig {

    @Bean
    public IClientConfig ribbonClientConfig() {
      IClientConfig config = new DefaultClientConfigImpl();
      config.loadProperties("ribbon-client");
      return config;
    }

    @Bean
    public ILoadBalancer ribbonLoadBalancer(IClientConfig config) {
      AbstractLoadBalancerRule rule = new AvailabilityFilteringRule();
      rule.initWithNiwsConfig(config);

      AbstractServerList<Server> serverList = new ConfigurationBasedServerList();
      serverList.initWithNiwsConfig(config);

      return LoadBalancerBuilder.newBuilder()
          .withClientConfig(config)
          .withPing(new NoOpPing())
          .withRule(rule)
          .buildFixedServerListLoadBalancer(serverList.getInitialListOfServers());
    }

    @Bean
    @SuppressWarnings("deprecation")
    public RestClient ribbonRestClient(IClientConfig config, ILoadBalancer loadBalancer, HttpClient httpClient) {
      RestClient client = new RestClient(config);
      client.setJerseyClient(new ApacheHttpClient4(new ApacheHttpClient4Handler(httpClient, null, false)));
      client.setLoadBalancer(loadBalancer);
      Monitors.registerObject("Client_" + client.getClientName(), client);
      return client;
    }

  }

The load balanced RestTemplate only uses the ribbon configuration for picking a server. It does not (yet) use Ribbon's retry mechanism. See https://github.com/spring-cloud/spring-cloud-netflix/issues/648 for details.

We ended up overriding Spring Cloud's RibbonClientHttpRequestFactory to serve up a modified version of the RibbonHttpRequest that uses "executeWithLoadBalancer". I can verify that this does use Ribbon's retry mechanisms. I am hoping to get another pull request together for this issue along with integration tests that exercise the retry mechanism.
A secondary issue you are likely to run into is there was  not an easy way to change the RetryHandler in the RibbonClientConfiguriation. This too has been addressed by the Spring Team (thanks Spencer!) via this issue: https://github.com/spring-cloud/spring-cloud-netflix/issues/931
This fix will allow you to specify the AvailabilityFilteringRule (or you might want to use BestAvailableRule) for your client. The BestAvailableRule will pick servers based on lowest concurrent connections and it skips servers that are in circuit breaker state. Hope that helps you! There was not a lot of documentation on the retry stuff and most of this was learned by trial an error.

Closing as duplicate.

I see that v1.1.0 calls RibbonStatsRecorder.recordStats in RibbonHttpRequest.
Is that going to allow AvailabilityFilteringRule and WeightedResponseTimeRule to work?
I assume it will still have no effect on retry logic.

I see that v1.1.0 calls RibbonStatsRecorder.recordStats in RibbonHttpRequest.
That makes AvailabilityFilteringRule and WeightedResponseTimeRule (and servo stats) work, but not RetryRule.


Added OSBuild generation tests

This PR adds tests for OSBuild generation and creation code.

@jakub-dzon I had one more comment before merging the UT


Issues with removed lights

With the new version, I can't save my config if it includes a deleted light, but I also can't remove the deleted light from my config.

.

closing as I found https://github.com/basnijholt/adaptive-lighting/issues/220


Added just in time encoding for events signatures

#57  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @AmineAfia and the rest of your teammates on  Graphite


Is possible to use a different ingress controller?

Like gce

Not my P1, but the next time I will have an GKE/GCE cluster running, I am gonna investigate a bit.
I think every ingress object in k8s creates a separate forwarding rule in GCE, that will become an issue with the forwarding of the well-known paths.

Can we start with: https://github.com/kubernetes/contrib/pull/1289#discussion_r69826486?
I think getting a well documented cross platform implementation will help more than something that works out of the box on a single platform. We should converge to a 0 user action cross platform model, but for that we'll need to declare that a given Ingress configures an existing IP/hostname explicitly (through a claim, like we do for volumes).

@bprashanth the latest release of kube-lego 0.1.1, should support GCE ingress classes. (see the examples folder).
It handles the well-known acme endpoint on the original ingress and makes sure that there's a service inside the namespace with NodePort exposed. (It's modifying the endpoints for that in a selectorless service)

@simonswine fantastic! I'll give it a shot soon and let you know


[CHORE] Update correct email in the code of conduct

Note: In order to prevent site deployment errors, #211 must be merged before this or any other site PR.

Ignoring the linter.


Merge jobcollection results

Adds flag (defaults to True) to download_results in order to merge all data.json from a JobCollection into a single data.json with updated up42.data_path
Keep folder structure when unpacking results from tar file
Adds tests for unpacked result download and DIMAP file download
Ignore not-callable temporarily

Nice, LGTM


ConfigWindow: After a save you are able to open a second config window

This happens because saving restarts the tray icons, meaning the configWindow variable is null again.

Idea: Add a CacheManager where we can cache things globally

Better idea: Dont restart Sniper instances, only restart the popup menu.
How did i not come up with that sooner...

Fixed :^)
Now you can only have one config window open at the same time, as having more then one can lead to out of sync issues.
Lovely.


how do I get Node.js to know the Interface c++ library methods?

how do I get Node.js to know the Interface c++ library methods. When I call c++ lib from c++ (or java) I use #include [filename]. What’s the procedure for node.js

only function name can get from dll
Struct/Macro must get from header file

only function name can get from dll
Struct/Macro must get from header file

How does node-ffi refer to the interface in C++?


remove unnecessary file

https://github.com/fluent/fluent-bit-website-hugo/blob/master/.hugo_build.lock

Thank you for the PR @Arhell


Update README.md

Huggingface -> Hugging Face

@eltociear hey Ikko, i see you doing this for a number of repos
you can't game the contributor system like this

I am sorry if I have offended you.
I meant to help.


add search bar into BIMDataDropdownList component

[ ] I have tested my component
[x] I have updated the documentation or there is no documentation needed

Libraries that use the DS (need to merge first)

[ ] BCF Components
[ ] BIMData Components
[ ] Building maker

Repos that use the DS (and that I need to check after libraries have been merged)

[ ] Viewer
[ ] Platform
[ ] SDK
[ ] Marketplace
[ ] Documentation

:tada: This PR is included in version 2.1.0-rc.2 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 2.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add json-loader, required by rollbar.

Add json-loader, required by rollbar, to prevent error on startup:
ERROR in ./~/rollbar/lib/notifier.js
Module not found: Error: Cannot resolve module 'json' in<EMAIL_ADDRESS>14:18-44

Thanks! Any chance you can add this into the shrinkwrap as well?

Yes, sure

Done. Btw, I'm working to update this starter kit to the latest Apollo API. Going to prepare PR the next couple of days. But because changes are not very trivial PR will need code review from you.

That sounds great, thanks! If you can get an example of updating client
store from a mutation and SSR in there I think that actually captures
everything I want to update this kit to.
On Tue, Sep 6, 2016 at 12:30 PM Victor Vlasenko<EMAIL_ADDRESS>wrote:

Done. Btw, I'm working to update this starter kit to the latest Apollo
API. Going to prepare PR the next couple of days. But because changes are
not very trivial PR will need code review from you.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/saikat/react-apollo-starter-kit/pull/5#issuecomment-245008547,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAFHRrWvoNz3eGJCBn46Lal5felQr6rmks5qnZUngaJpZM4JzzNs
.

Yes, will do

Ok. When you merge this one, I have another two PR's prior main PR with API upgrade.


Closure killer iterate segment lanes

Killed IterateSegmentLanes with struct enumerators to simplify code and remove heap allocations.

is this code used in performance critical part of the code?

is this code used in performance critical part of the code?

I think so.


chore/content test

feat(reference): add terminology page
feat(guides): first attempt at thoughts on time
feat: playful introduction?
chore: load pages and allow mdoc

Enjoyed reading that :)


feat: add gnosis mainnet

when i try to sign, in UI it doesn't show anything, in console it says
ChainMismatchError: The current chain of the wallet (id: 1) does not match the target chain for the transaction (id: 10200 – Gnosis Chiado).

Current Chain ID:  1
Expected Chain ID: 10200 – Gnosis Chiado
but in brave i have Gnosis Chiado rn

when i switch chain to Gnosis, the chain on wallet is not switched, and no prompts for it

and it doesn't see my Gnosis account at all, no balance of xdai, the button is not active


types are based on 1.x popper.js

I'm not sure if someone here is maintaining @types/react-datepicker.  Maybe this is better filed at DefinitelyTyped?
Describe the bug
I was trying to use popperModifiers and I was getting:
  Types of property 'shift' are incompatible.
    Type '() => { name: string; options: { rootBoundary: string; tether: false; altAxis: true; }; } | undefined' has no properties in common with type 'BaseModifier'.  TS2322

I thought this was odd because 'shift' is no longer used in Popper 2.x.
I think this is because @types/react-datepicker is pulling in dependencies from Popper 1.x:
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/c0214a16f47fd26fee174ba828d113e02ba345c7/types/react-datepicker/index.d.ts#L22
That's not how you import from Popper in 2.x
To Reproduce
Reproduction here: https://codesandbox.io/s/cool-sun-92mjc?file=/src/App.tsx

Hi! Popper v2 was just merged into master yesterday and hasn't been released yet. However, I'm not actively updating types, I don't think anyone is actively doing that so I wouldn't be surprised if things are outdated.

What would you suggest? Can these be automatically updated? Or should we remove it completely?

Someone or the other I misled myself to think that Popper v2 was already being used.
So, actually I don't think anything is broken and I'm just making noise, sorry!
Whenever Popper v2 is rolled out into a release, then the current types will be broken.  I don't think it's a terribly huge undertaking to update them as it's a pretty simple interface.  Depending on how busy I am, I might be able to update the types at that time if someone thinks to ping me.

No problem! I'll keep you posted on the release.

I believe that react-datepicker v4.1.1 now uses Popper v2.

This appears to have been fixed by https://github.com/DefinitelyTyped/DefinitelyTyped/commit/296d2df84bb6a161976613c5560cd0f5595ecff9, which appears to be part of @types/react-datepicker v4.1.4 (there is no changelog, release notes or even VCS tags as far as I can see, but that version no longer shows the problematic behaviour of earlier versions).


Proxy & JWT Authentication Guides missing

The authentication section of the security user guides only have information on basic and cookie authentication but there is nothing on proxy and jwt authentication. The only information on these authentication types can be found in the API reference. And the information there (especially about jwt authentication) is (at least in my opinion) not very clear.

@hadrysmateusz, @Syedpash Is this still an issue?

This is documented now https://docs.couchdb.org/en/stable/api/server/authn.html#jwt-authentication
Closing as completed.


Revert "Merge pull request #126 from travis-ci/anja-update-actionmailer"

This reverts commit ee9a51f63b6f00c3381d04283c8be24addb965fd, reversing
changes made to ccca1749652be7774422faa08b4ccc86a34d0cac.
a bunch of stuff broke after this upgrade:
https://sentry.io/travis-ci/com-tasks-production/issues/462149350/
https://sentry.io/travis-ci/com-tasks-production/issues/492157665/

So sad :cry:


Added command exec shortcode. See #796

Currently what it can is receive 2 arguments (the command and options) and then insert stdout to the called point. Flowing inner text into stdin is not now.
Whitelist is configurable and only cat (for unix) and type (for windows) are available in default.
Now I am trying it on my site. Just cat command reduced so many copy and paste on the source.
I am looking forwarding to being it official.

 You should sign our Contributor License Agreement in order to get your pull request merged.

Can you fix the commit message to be in line with guidelines? (it's ok to amend your commit and do a push -f).

I done it, but my English ugly. Please point out them if unacceptable...

The English is just fine, and now the commit message looks good.

It would be great if you could add a few words about your new shortcodes in documentantions

I'm curious if we can write tests for this, as well.

You mean making a commit which adds description of the shortcode and some test codes?
I can write the documentation but I have not written any test codes, so I may be going to ask for help.

You mean making a commit which adds description of the shortcode and some test codes?

That would be nice additions before we merging it.
We should at least add some test cases for the allowed default commands cat and type. We could test cat easily with a temporary file that is created during the test. The ouput of cat and the written content should be the same.
Does anyone has some good ideas for other test cases?


DocumentAssembler, OpenXmlRegex, UnicodeMapper bugfixes

This pull request aims to fix erroneous handling of

w:lastRenderedPageBreak elements
xml:space="preserve" attributes on w:t elements

lastRenderedPageBreak elements are included in DOCX files by Word when it saves, I guess as a sort of temporary placeholder to indicate where Word's layout engine last broke content across pages when it laid out the file. They do not represent any part of the document content itself. However, the OpenXmlRegex code was unable to match regexes when the match happened to include one of these elements. I traced the problem back to the implementation of UnicodeMapper.RunToString, where I added some code to ignore these lastRenderedPageBreak elements, and added a unit test to check for proper handling.
Also, Word has a certain way of handling the xml:space attribute on  elements, but most of the OpenXmlPowerTools seem to be ignoring that attribute and its meaning. I added a helper method to UnicodeMapper that aims to emulate Word's behavior when converting from XML elements -> Unicode text strings, and a unit test to assert/explain the behavior. I also added code (and a unit test) to DocumentAssembler, so when it inserts content that may begin or end with intentional whitespace, the whitespace actually shows up in the DOCX file (instead of being ignored as it was before).

@EricWhiteDev is this fork being maintained anymore?

Doesn't look like this project is being maintained anymore, or has forked to somewhere else. The code base is very old, and in desperate need of some TLC.
I've created a new branch, and began a refactoring process. All the viable outstanding PRs here have been implemented. I'm doing this on the weekends, so will take a bit of time to have a nuget up and running, but stage 1 is already complete and pushed.
https://github.com/danbetts/OpenXml-PowerTools-v2


fix: trigger release

:tada: This PR is included in version 0.14.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Adding subusers to Dedicated IP Addresses

Description of the change:
Reason for the change:
Link to original source:

Closes #

Hello @xtineledlie,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


gradle-6.3-all.zip Does not contain sources

Hello everyone,
when I download https://services.gradle.org/distributions/gradle-6.3-all.zip, the sources are not available, even though they are available when downloading https://services.gradle.org/distributions/gradle-6.2.2-all.zip
jar tf gradle-6.3/lib/gradle-kotlin-dsl-6.3.jar | grep kt -> Returns empty result
jar tf gradle-6.2.2/lib/gradle-kotlin-dsl-6.2.2.jar | grep kt -> Returns many failes ending with .kt
As a consequence, IDEA only resolves definitions to decompiled .class files
Kind regards,
Gabriel

@eskatos @bamboo was this an intentional change you remember?

OTOH It would be great if intelliJ was able to download the sources directly instead of forcing the project to use all distribution (even imat CI where you don't care about sources and samples)

In the original report it looks like the sources were inside the kotlin-dsl Jar. Which should not be the case.  So it might have been wrong before. The "sources" belong inside the "src" folder directly insider the "-all" zip. Which is the case for the latest nightly (*.kt files are also there).
I can navigate to the sources in IDEA.


Nuxt 3 (Vite) Changes Almost All Output File Names For Small Change

Environment

Operating System: Darwin
Node Version:     v18.18.2
Nuxt Version:     3.12.2
CLI Version:      3.12.0
Nitro Version:    2.9.6
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      ssr, logLevel, builder, sourcemap, vite, buildId, telemetry, nitro, experimental, dir, devtools, hooks, app, css, plugins, i18n, modules, sentry, webpack, image, eslint, runtimeConfig
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Vite config:
vite: {
  css: {
    preprocessorOptions: {
      sass: {
        additionalData: `@use "~/assets/css/common/variables.sass" as *
$imageBaseURL: '${env.imageBaseURL}'
`
      },
      scss: {
        additionalData: `@use "~/assets/css/common/variables.sass" as *;
$imageBaseURL: '${env.imageBaseURL}';
`
      }
    }
  },
  esbuild: {
    drop: env.environment === ENVIRONMENT.PRODUCTION ? ['console', 'debugger'] : undefined
  },
  plugins: [
    sentryVitePlugin({
      authToken: env.sentryAuthToken,
      release: {
        name: env.gitCommitHash
      },
      telemetry: false,
      sourcemaps: {
        filesToDeleteAfterUpload: './.nuxt/**/*.map'
      }
    }),
    removeSourceMapURLPlugin()
  ],
  build: {
    rollupOptions: {
      output: {
        chunkFileNames: '_nuxt/chunk/[hash].js',
        entryFileNames: '_nuxt/entry/[hash].js',
        assetFileNames: '_nuxt/[ext]/[hash].[ext]'
      }
    }
  }
}

experimental config:
experimental: {
  defaults: {
    nuxtLink: {
      prefetchedClass: 'prefetched-link'
    }
  },
  appManifest: false
},

sourcemap config:
sourcemap: {
    client: true,
    server: false
  },

hooks:
hooks: {
  'build:manifest': (manifest) => {
    fs.writeFileSync('manifest.json', JSON.stringify(manifest, null, 2))
    for (const file of Object.values(manifest)) {
      file.dynamicImports = []

      // Remove all prefetch assets from the manifest
      if (file.assets) {
        file.assets = file.assets.filter(
          asset => ['gif', 'jpg', 'jpeg', 'png', 'svg', 'webp'].every(ext => !asset.endsWith(`.${ext}`))
        )
      }
      if (file.preload === true) {
        file.preload = false
      }
      if (file.prefetch === true) {
        file.prefetch = false
      }
      if (file.resourceType === 'script') {
        file.css = []
      }
    }
    fs.writeFileSync('edited_manifest.json', JSON.stringify(manifest, null, 2))
  }
},

Reproduction
Just change a single any line in any component's mounted method.
Describe the bug
I am trying to upgrade my project from Nuxt 2 to Nuxt 3. However, I noticed some difference in the output bundle. Let's say I have a Component.vue file. In Nuxt 2, when I change a line in this Component.vue file, only a few file's names are changed in the bundle. However, the same kind of change causes more than half of file names to be changed in Nuxt 3. Is there an option I can set in Vite or Nuxt config so that the unchanged files will not be renamed?
Additional context
No response
Logs
No response

This has been a topic recently, see e.g. https://github.com/nuxt/nuxt/issues/25133 and should be better with the latest release. Do you have a small reproduction showcasing files that are not related to the change being updated?
Think of Component MyComp.vue in pages/a.vue. Having e.g. pages/b.vue should stay unchanged when changing MyComp (while a.vue and the component file shouldn't)

This has been a topic recently, see e.g. #25133 and should be better with the latest release. Do you have a small reproduction showcasing files that are not related to the change being updated?
Think of Component MyComp.vue in pages/a.vue. Having e.g. pages/b.vue should stay unchanged when changing MyComp (while a.vue and the component file shouldn't)

I am aware of the recent changes. I had to upgrade from Nuxt 3.11.2 just because of that. Before the upgrade, most of the file names would change even without making any code changes. Right now, as long as the code remains the same, it creates the exact same bundle, however, still any change causes more than half of the files to be updated.
In my pages/index.vue files, I have this code:
<ClientOnly>
  <BookingSocketWrapper v-if="isLoggedIn()">
    <BookingTouchPoint v-if="replacements" :replacements="replacements" />
  </BookingSocketWrapper>
</ClientOnly>

This is an async component:
components: {
    Welcome,
    Banners,
    BlogCategoriesSection,
    BookingSocketWrapper,
    BookingTouchPoint: defineAsyncComponent(() => import('@/components/HomeSections/BookingTouchPoint')),
    ServiceShortcuts,
    ActiveServices,
    FeaturesSection,
    InsuranceSection,
    TestimonialsSection,
    MobileAppDownloader
  },

All I have to do is add this to the BookingTouchPoint:
mounted() {
  console.log('test')
}

And just this change is enough for 432 out of 700 bundle file names to be changed. I have hundreds of components and pages and the homepage is the only place where this component is loaded.
I cannot provide the full code because this is a production project but let me try creating a new project and reproduce it.

I cannot provide the full code because this is a production project but let me try creating a new project and reproduce it.

That's fine. Let me know when a repro is up 👍🏻

I cannot provide the full code because this is a production project but let me try creating a new project and reproduce it.

That's fine. Let me know when a repro is up 👍🏻

Here is a demo: https://github.com/Huseyin-Yilmaz-98/nuxt3-build-demo/tree/main/.output-consolelog2
There are two output folders here and the only code difference between them is I changed the line in components/B.vue from console.log('1') to console.log('2'). And as you can see, just this change caused every single file under public/_nuxt/chunk and public/_nuxt/entry to be renamed. Only the CSS files remain the same.

I have just added the same outputs with Webpack as well. As you can see, unlike Vite, Webpack did not rename all files, but just a few of them.

Could the entry file be the cause of the problem here? There is an array called __vite__fileDeps at the beginning of the entry file which contains all chunk names. And the chunk files start with a line like import {_ as n, t as c, v as _, L as r} from "../entry/Cx7qvxDe.js";. So is it possible that when any of the chunks are modified, it causes the contents of the entry file to be modified because of the __vite__fileDeps array and then when the entry file is renamed, it causes the other chunks to be renamed. If this is the problem, then what would be the solution?

You are exactly right. This is a limitation of vite, because all the chunks are listed in the entry file. So if any of the chunks import the entry, their hashes update too.
There might be something more we can do here but maybe not. I'll take a little look.

During production releases, we keep the old instances and the new ones alive at the same time for a couple of minutes to make sure that not all users will go to the new build in case there are any problems with the new one. During that period, the users who load the old build have no problems because the old build files are all cached in the CDN, however the new build users get 500 errors if any of the files they try to fetch has not been cached yet.
With Nuxt 2, we could ignore this because usually only 20-30 (maybe 100 at max if we were releasing a major update) were renamed so only a couple of users would have problems. But now, regardless it's a minor code change or not, we will have ~400 files that are not in cache.
Honestly, if we knew Vite had this problem, we would have kept using Webpack after the upgrade but we have been testing with Vite for weeks and only realized this problem right before releasing the Nuxt 3 upgrade. Because of the huge Webpack testing effort now, I am trying to find any possible fix for Vite that will decrease the number of changed files as much as possible.

ideally changing the content of a single page should not change the hashes of entrypoint or other page files, for example.
yet, because of how vite does preloading, this will certainly happen - the change in the imported file will trigger a change in the entry file which includes the hashes of every child, which therefore will trigger change in the hashes of every other file which imports from the entrypoint. 🤯
there might be some ways to improve this, possibly with an import map (even just a single entry map would do, targeting the entry point).


libnotify: 0.8.2 -> 0.8.3

Changes: https://gitlab.gnome.org/GNOME/libnotify/-/blob/master/NEWS
Description of changes

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

10.rebuild-linux: 101-500

Ugh, let's try master I guess?


Gradient split

split method added to C gradient. if True will group spatial FDs as a block datacontainer.

Well done!