text:
pip goes broken after executed once

HI, I've meet some thing confusing.
My OS: Linux xxx 3.10.0-514.10.2.el7.x86_64 #1 SMP Fri Mar 3 00:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Docker version: Docker version 19.03.12, build 48a66213fe
Here's a simplified Dockerfile:
FROM python:3.9.2
RUN pip -V
RUN pip -V

As you see I just run pip -V twice, but the second time failed when building, as output blow:
Sending build context to Docker daemon  3.072kB
Step 1/3 : FROM python:3.9.2
 ---> 587b1bc803b3
Step 2/3 : RUN pip -V
 ---> Running in 615a91246707
pip 21.0.1 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
Removing intermediate container 615a91246707
 ---> bd03269b2b98
Step 3/3 : RUN pip -V
 ---> Running in 9299dd7727b9
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 5, in <module>
    from pip._internal.cli.main import main
ModuleNotFoundError: No module named 'pip._internal.cli.main'
The command '/bin/sh -c pip -V' returned a non-zero code: 1

Then I tried more to figure out——check the module:
FROM python:3.9.2
RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
RUN pip -V
RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
RUN pip -V

It seems the directory was truncated by the first call:
Sending build context to Docker daemon  3.072kB
Step 1/5 : FROM python:3.9.2
 ---> 587b1bc803b3
Step 2/5 : RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
 ---> Running in 21114b59ecef
total 124
-rw-r--r-- 1 root root   136 Mar 31  2021 __init__.py
drwxr-xr-x 2 root root  4096 Mar 31  2021 __pycache__
-rw-r--r-- 1 root root  6711 Mar 31  2021 autocompletion.py
-rw-r--r-- 1 root root  8127 Mar 31  2021 base_command.py
-rw-r--r-- 1 root root 29547 Mar 31  2021 cmdoptions.py
-rw-r--r-- 1 root root   978 Mar 31  2021 command_context.py
-rw-r--r-- 1 root root  2641 Mar 31  2021 main.py
-rw-r--r-- 1 root root  2894 Mar 31  2021 main_parser.py
-rw-r--r-- 1 root root 10404 Mar 31  2021 parser.py
-rw-r--r-- 1 root root  9083 Mar 31  2021 progress_bars.py
-rw-r--r-- 1 root root 16470 Mar 31  2021 req_command.py
-rw-r--r-- 1 root root  5614 Mar 31  2021 spinners.py
-rw-r--r-- 1 root root   122 Mar 31  2021 status_codes.py
Removing intermediate container 21114b59ecef
 ---> 576b8657143f
Step 3/5 : RUN pip -V
 ---> Running in 67e738c4c85d
pip 21.0.1 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
Removing intermediate container 67e738c4c85d
 ---> c4839cd9e25c
Step 4/5 : RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
 ---> Running in 091cb210b63c
total 4
drwxr-xr-x 1 root root 4096 Apr  3 19:05 __pycache__
Removing intermediate container 091cb210b63c
 ---> f7fa9134164d
Step 5/5 : RUN pip -V
 ---> Running in c495d95680fa
Traceback (most recent call last):
  File "/usr/local/bin/pip", line 5, in <module>
    from pip._internal.cli.main import main
ModuleNotFoundError: No module named 'pip._internal.cli.main'
The command '/bin/sh -c pip -V' returned a non-zero code: 1

I tried other versions like python:3.9.0 and python:3.9.1, It's all good.
But some different error occured with latest python:3.9.12:
Sending build context to Docker daemon  3.072kB
Step 1/3 : FROM python:3.9.12
 ---> 782717491ec4
Step 2/3 : RUN pip -V
 ---> Running in 051cf6e2f062
pip 22.0.4 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
Removing intermediate container 051cf6e2f062
 ---> 8c4f19f36f9d
Step 3/3 : RUN pip -V
 ---> Running in 7bee2bbcf432
Python path configuration:
  PYTHONHOME = (not set)
  PYTHONPATH = (not set)
  program name = '/usr/local/bin/python'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/usr/local/bin/python'
  sys.base_prefix = '/usr/local'
  sys.base_exec_prefix = '/usr/local'
  sys.platlibdir = 'lib'
  sys.executable = '/usr/local/bin/python'
  sys.prefix = '/usr/local'
  sys.exec_prefix = '/usr/local'
  sys.path = [
    '/usr/local/lib/python39.zip',
    '/usr/local/lib/python3.9',
    '/usr/local/lib/python3.9/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
LookupError: no codec search functions registered: can't find encoding

Current thread 0x00007f83aa620740 (most recent call first):
<no Python frame>
The command '/bin/sh -c pip -V' returned a non-zero code: 1

As for the error with 3.9.2, It seems to be resolved by upgrade pip first:
FROM python:3.9.2
RUN pip install --upgrade pip
RUN pip -V
RUN pip -V

But I'm not sure is this the right way.

** Btw: Still have no idea about the error with 3.9.12 **

I've checked the layers with `dive`, it looks like the `pip -V` command removed tons of files and added tons of `__pycache__`

I'm not able to reproduce

 docker build test 1
$ docker build -t python:test - << EOF
FROM python:3.9.2
RUN pip -V
RUN pip -V
EOF

Sending build context to Docker daemon  2.048kB
Step 1/3 : FROM python:3.9.2
 ---> 587b1bc803b3
Step 2/3 : RUN pip -V
 ---> Running in e7bef78ebf83
pip 21.0.1 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
Removing intermediate container e7bef78ebf83
 ---> 0fbf0f8d3fbb
Step 3/3 : RUN pip -V
 ---> Running in d2b922785bf3
pip 21.0.1 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
Removing intermediate container d2b922785bf3
 ---> 76e26f7f9bff
Successfully built 76e26f7f9bff
Successfully tagged python:test

 docker build test 2
$ docker build -t python:test - << EOF
FROM python:3.9.2
RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
RUN pip -V
RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
RUN pip -V
EOF

Sending build context to Docker daemon  2.048kB
Step 1/5 : FROM python:3.9.2
 ---> 587b1bc803b3
Step 2/5 : RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
 ---> Running in c055ce16e1e3
total 124
-rw-r--r-- 1 root root   136 Mar 31  2021 __init__.py
drwxr-xr-x 2 root root  4096 Mar 31  2021 __pycache__
-rw-r--r-- 1 root root  6711 Mar 31  2021 autocompletion.py
-rw-r--r-- 1 root root  8127 Mar 31  2021 base_command.py
-rw-r--r-- 1 root root 29547 Mar 31  2021 cmdoptions.py
-rw-r--r-- 1 root root   978 Mar 31  2021 command_context.py
-rw-r--r-- 1 root root  2641 Mar 31  2021 main.py
-rw-r--r-- 1 root root  2894 Mar 31  2021 main_parser.py
-rw-r--r-- 1 root root 10404 Mar 31  2021 parser.py
-rw-r--r-- 1 root root  9083 Mar 31  2021 progress_bars.py
-rw-r--r-- 1 root root 16470 Mar 31  2021 req_command.py
-rw-r--r-- 1 root root  5614 Mar 31  2021 spinners.py
-rw-r--r-- 1 root root   122 Mar 31  2021 status_codes.py
Removing intermediate container c055ce16e1e3
 ---> ebe8d7de4887
Step 3/5 : RUN pip -V
 ---> Running in 254e6c131863
pip 21.0.1 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
Removing intermediate container 254e6c131863
 ---> 25303bf57b6f
Step 4/5 : RUN ls -l /usr/local/lib/python3.9/site-packages/pip/_internal/cli
 ---> Running in c150be88b05a
total 124
-rw-r--r-- 1 root root   136 Mar 31  2021 __init__.py
drwxr-xr-x 1 root root  4096 Apr  4 21:18 __pycache__
-rw-r--r-- 1 root root  6711 Mar 31  2021 autocompletion.py
-rw-r--r-- 1 root root  8127 Mar 31  2021 base_command.py
-rw-r--r-- 1 root root 29547 Mar 31  2021 cmdoptions.py
-rw-r--r-- 1 root root   978 Mar 31  2021 command_context.py
-rw-r--r-- 1 root root  2641 Mar 31  2021 main.py
-rw-r--r-- 1 root root  2894 Mar 31  2021 main_parser.py
-rw-r--r-- 1 root root 10404 Mar 31  2021 parser.py
-rw-r--r-- 1 root root  9083 Mar 31  2021 progress_bars.py
-rw-r--r-- 1 root root 16470 Mar 31  2021 req_command.py
-rw-r--r-- 1 root root  5614 Mar 31  2021 spinners.py
-rw-r--r-- 1 root root   122 Mar 31  2021 status_codes.py
Removing intermediate container c150be88b05a
 ---> 20a32da9b783
Step 5/5 : RUN pip -V
 ---> Running in 6494370f87a2
pip 21.0.1 from /usr/local/lib/python3.9/site-packages/pip (python 3.9)
Removing intermediate container 6494370f87a2
 ---> eb333c630aa9
Successfully built eb333c630aa9
Successfully tagged python:test

I also tested it on labs.play-with-docker.com

It seems like something with the host's environment, maybe resource or hardware related

thx,
I tried on another host with kernel 3.10.0-1160.25.1.el7.x86_64, all things good.
Seems it may occured with some certain host with legacy kernel version.

authors: butflame wglambert

repo: docker-library/python


text:
2.0 is not recognized by composer/packagist

If I use the entry "docker-php/docker-php": "^2.0", with the correct minimum stability option, I have this error:
sullivan@35f49be3ac73:/code$ composer up docker-php/docker-php --with-dependencies
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - The requested package docker-php/docker-php ^2.0 exists as docker-php/docker-php[1.21.0, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.x-dev, 1.22.0, 1.22.1, 1.22.2, 1.22.3, 1.22.x-dev, 1.23.0, 1.23.1, 1.23.2, 1.23.x-dev, 1.24.0, 1.24.x-dev, dev-2.0-dev, dev-feature/artax-amp, dev-master, v0.1.0, v0.2.0, v0.2.1, v0.2.2, v0.2.3, v0.3.0, v0.4.0, v0.4.1, v0.4.2, v0.4.3, v0.4.4, v0.5.0] but these are rejected by your constraint.

This is because the branch is not considered as 2.x-dev on packagist: https://packagist.org/packages/docker-php/docker-php#dev-2.0-dev
Changing the branch alias to 2.x-dev might resolve the issue.

It is released so there should be no problem anymore

source: gharchive/issue

authors: Soullivaneuh joelwurtz

repo: docker-php/docker-php

license: mit

license_type: permissive

license_source: bigquery


text:
Replace deislabs/duffle dependency with deislabs/cnab-go

The revision used for cnab-go is coming from this PR - https://github.com/deislabs/cnab-go/pull/2

Updated to point to deislabs/cnab-go on master.

See https://github.com/deislabs/duffle/pull/681 on how this is used in Duffle.

source: gharchive/pull-request

repo: docker/cnab-to-oci

license_source: github-api


text:
v2 protocol token authentication with Docker Hub failing

Hi folks, I'm following the doc at https://docs.docker.com/registry/spec/auth/token/ and trying to obtain a token anonymously and get manifest of some public repository on Docker Hub, say, ahmet/wagl. It's a bit hard as the doc doesn't point out URLs for many requests but I'm doing this:
1. Try to get manifest:
curl -i https://index.docker.io/v2/ahmet/wagl/manifests/latest

HTTP/1.1 401 Unauthorized
Content-Type: application/json; charset=utf-8
Docker-Distribution-Api-Version: registry/2.0
Www-Authenticate: Bearer realm="https://auth.docker.io/token",service="registry.docker.io",scope="repository:ahmet/wagl:pull"

2. Get token anonymously
curl https://auth.docker.io/token\?service\=registry.docker.io\&scope\=repository:ahmet/wagl:pull

{"token":"eyJhbGciOiJFUzI1NiIsInR5c...

actually this is where the doc doesn't match the behavior. The response object only has "token" field and not "access_token", "expires_in", "issued_at" fields.
3. Fetch manifest:
$ TOKEN=eyJhbGciOiJFUzI1NiIsI
$ curl -i -H "Authorization: Bearer $TOKEN" https://index.docker.io/v2/ahmet/wagl/manifests/latest
HTTP/1.1 401 Unauthorized
Content-Type: application/json; charset=utf-8
Docker-Distribution-Api-Version: registry/2.0
Www-Authenticate: Bearer realm="https://auth.docker.io/token",service="registry.docker.io",scope="repository:ahmet/wagl:pull",error="invalid_token"
Date: Thu, 31 Mar 2016 19:51:14 GMT
Content-Length: 169
Strict-Transport-Security: max-age=31536000

{"errors":[{"code":"UNAUTHORIZED","message":"access to the requested resource is not authorized","detail":[{"Type":"repository","Name":"ahmet/wagl","Action":"pull"}]}]}

Any ideas why this might be failing?

It works for me.
In step 3 are you abbreviating the token environment variable for clarity? (or actually setting it to eyJhbGciOiJFUzI1NiIsI) ?

@RichardScothern darn, it just worked for me, too. Must be some copy/paste issue even though I tried a number of times.

Having the exact same issue with one of my public repo... tried a 1000 times but still get:
{
  "errors": [
    {
      "code": "UNAUTHORIZED",
      "message": "authentication required",
      "detail": [
        {
          "Type": "repository",
          "Name": "xxxxx/xxxx-data-dev",
          "Action": "pull"
        }
      ]
    }
  ]
}

It Actually looks like the token expired after 5 minutes or something... Trying to get a long life token adding &offline_token=true but it doesn't look like it's doing anything

Hi everyone. It works for me when I do it on regular public repositories. But it doesn't seem to work when I try doing the same steps for official repositories (generating tokens only for pulling). Does anybody know why this is the case?

same here, solved by using registry.hub.docker.com

Huh, I have no idea what the underlying issue is, but while using node-docker-registry-client my token auth was failing when trying to pull nginx:1.15 from registry-1.docker.io...but using registry.hub.docker.com as the registry base URL fixed it, without changing any of my code. Thanks for the tip @dgoo2308 :)

repo: docker/distribution


text:
Clarify requirement of Docker-Content-Digest

The V2 API should be serviceable over static web servers. Requiring the Docker-Content-Digest header on requests will make these harder to accomplish. From the specification:

The Docker-Content-Digest header returns the canonical digest of the uploaded blob which may differ from the provided digest. Most clients may ignore the value but if it is used, the client should verify the value against the uploaded blob data.

We need to ensure that the above applies to all uses of Docker-Content-Digest, not just the uploads.
Please see https://groups.google.com/forum/#!topic/docker-dev/zyKH0pnyWnI for discussion.
cc @dmcgowan

We should validate this against #387 before merging.  Docker 1.6.x should happily accept pulling digests without this header.

authors: dmcgowan stevvooe


text:
Feedback for: machine/drivers/rackspace.md

URL: machine/drivers/rackspace.md
I've tried using this example providing username, api-key, and region and it fails
docker-machine create --driver rackspace --rackspace-username=XXXXXXXX --rackspace-api-key=XXXXXXXX --rackspace-region=DFW test-docker2

Running pre-create checks...
Creating machine...
(test-docker2) Creating machine...
Error creating machine: Error in driver during machine creation: Expected HTTP response code [201 202] when accessing [POST https://dfw.servers.api.rackspacecloud.com/v2/XXXXXXX/servers], but got 403 instead
403 Forbidden

Access was denied to this resource.

 Exactly 1 isolated network(s) must be attached

The username I am using has full product access.

@nathanleclaire any ideas on this, or what I should do with it in terms of docs?

@londoncalling Not sure -- @patakijv this seems more an issue for the Machine repo. Can we move discussion there please?

Closing this issue, as I've created a new one on the docker/machine/ repository per @nathanleclaire

authors: londoncalling nathanleclaire patakijv


text:
404 at /desktop/linux/

I found a broken link : https://docs.docker.com/desktop/linux/
I arrived on this page through: https://www.docker.com/

Thanks for reporting! Looks like https://github.com/docker/docker.github.io/pull/15219 removed the pages, but didn't add redirects; I opened a pull request to fix this; https://github.com/docker/docker.github.io/pull/15231

authors: ShaneMoreno thaJeztah


text:
update docker-compose autocomplete docs

File: compose/completion.md
There is difference between docs and md file. Docs seems confusing because numbering is wrong but as i go through the completion.md file, it is in correct manner. so have a look at it and update the docs.
I have attached both screenshot.
docs file :-

md file :-

@rahulpatil-99 this was fixed by https://github.com/docker/docker.github.io/pull/8516. Thanks for reporting the issue!


text:
Move Google Analytics to include, and prepare for making it optional

@usha-mandya @jdrouet PTAL

FWIW, I noticed we don't have the "noscript" variant of GTM included in our pages (https://developers.google.com/tag-manager/quickstart); do we want to track users that have javascript disables? (probably not a large number, given that the site doesn't perform well with it disabled)


text:
added cloud azure video, better links on other vids, how-to for vids …

what's changed

added video to topic on how to create swarms on Azure with Docker Cloud
improved link formatting on other videos in Cloud (builds, test automation)
added info and an example on how to create these cool video links to the docs test page

Reviewers, fyi
@pkennedyr @friism  @mstanleyjones @joaofnfernandes
Signed-off-by: Victoria Bialas victoria.bialas@docker.com

LGTM!

authors: londoncalling pkennedyr


text:
Fix Windows support dump to use version number

Proposed changes
Change the docker support dump to use ucp-dsinfo-win:2.2.2
vs
ucp-dsoinfo-win
as the latter uses the latest tag which doesn't exist.

Unreleased project version (optional)

Related issues (optional)

Sorry for taking so long to check this. Thanks for the contribution 🚀

authors: gitamiller joaofnfernandes


text:
Nav sidebar links hover cursor fix

Proposed changes
Cursor pointer have been added to nav sidebar menu links on hover.

Deploy preview for docsdocker ready!
Built with commit e0afc86189a0c3691511b695181080b09427fe83
https://deploy-preview-7492--docsdocker.netlify.com

authors: GordonTheTurtle artywhite


text:
Change note on workloads on managers

Proposed changes

Change note on workloads on managers on https://docs.docker.com/ee/ucp/admin/install/system-requirements/

Related issues (optional)
https://github.com/docker/docker.github.io/issues/9714

Deploy preview for docsdocker ready!
Built with commit f538fdaa6743db9a71bb387752f7c2e6a40b53d4
https://deploy-preview-9756--docsdocker.netlify.com

@mklamb @david-yu PTAL and confirm accuracy of changes. Thanks.

LGTM

@usha-mandya Can you review and approve this PR? Thanks!

authors: GordonTheTurtle mklamb traci-morrison


text:
does the ARG support default parameter?

does the ARG support default parameter?
eg:
ARG PARAM1 123456
ARG PARAM2 654321
thanks for your help!

If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
For more information about reporting issues, see CONTRIBUTING.md.
You don't have to include this information if this is a feature request
(This is an automated, informational response)

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
For more information about reporting issues, see CONTRIBUTING.md.
You don't have to include this information if this is a feature request
(This is an automated, informational response)

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

authors: GordonTheTurtle junneyang

repo: docker/docker


text:
No way to kill rogue task

I have a rogue task eating up all my CPU trying to start a container that will never start.
There seems to be no way to get rid of this task other than scaling down to zero.

You can docker rm -f it and the scheduler will reschedule it. (haven't tried if stop will also on a service)

ping @stevvooe PTAL

@cpuguy83 Do you want to do this from the manager nodes? How are you detecting the undesired condition?

@stevvooe Yes from a manager.
My specific case was a docker bug causing high CPU usage on a particular node where the task was scheduled.
While it would still be a nice to have to be able to kill off a task, today I would be able to scale down the service be N-1 to resolve it (in theory, haven't tested, but supposed to work now).
Where as when I had the issue, the task in question was the last task to be stopped when scaling down so I had to scale down to 0 and no guarantee that the task wouldn't land on the same node when I scaled up again.

@cpuguy83 So, the correct mitigation strategy would be something like:

Pause/Drain node (no more containers scheduled there).
Kill task (swarmctl task rm in swarmkit, not available in docker).

That would ensure the new task isn't routed back to the problem node.
Sounds like there is a use case for docker task rm.

@stevvooe Oh yeah, you are right, I forgot about pause/drain.

interesting for this topic.
one question, how about let manager know the task is unhealthy, then let schedule to handle it, or kill it or parse/drain it.

@cpuguy83 do you think health checks are a solution for this, or do we want to have a docker task kill (or similar) command?

While a healthcheck could accomplish this, at that point it's not really a "rogue" task.


text:
Stack deploy stopped working as expected

I am not sure if this is the right place to post. If there's a better channel to escalate this issue, please let me know and I'll be happy to do it.
I have a swarm of about 15 physical nodes. I've been deploying a stack of three services on them for the past 2 hours without any issues.
The stack is composed of (mongo from docker hub, and two apps from private docker hub)
Suddenly, the deployment stopped and 1 our of three services does not run.  It is always one of the two private services.
I inspected the /var/log/syslog but I don't see any errors. What else can I do to trouble shoot?

Could this be related to https://github.com/docker/docker/issues/31698 ? However, I don't see the errors in the logs.

It seems I've reached a limit to how many containers I can deploy? Is it possible that the issue is in one of networks that is shared by all containers? For example, I have proxy network shared by one container in each stack.
I have over 50 stacks already running.
The way I figured our it is by removing another stack and my example in the screenshot immediately worked. However, when I attempted to restore the other stack, it experienced the same issue.

@rommik Please follow the issue template https://github.com/docker/docker/blob/master/.github/ISSUE_TEMPLATE.md . Include daemon logs from the affected nodes(in debug mode if possible) and the steps you used to produce the problem and steps that you used to verify it.
cc @sanimej in case some of these network warnings points to anything

@tonistiigi thank you for your reply.  My issue is related to https://github.com/docker/docker/issues/31019

authors: rommik tonistiigi


text:
Update docs for HTTP_PROXY

Update docs to account for the changes introduced in #10739 (which shouldn't have been merged so fast, my bad).

LGTM - @fredlf @jamtur01

@icecrime the important thing is to know when the doc needs to be published :)

LGTM

LGTM

authors: SvenDowideit fredlf icecrime jamtur01


text:
Fix: Docker Daemon didn't send actual actions client ask for to Token Server

daemon commit pull and push action values for authorization on pull session,
that seems incorrect.
So I fix it, to use pull action on pull session, and use pull and push
actions on push session.
Such bug on api-trust.
Signed-off-by: xiekeyang xiekeyang@huawei.com

This is sensible cleanup. Priority wise, not sure I'd classify it as a bug.
The token server will only issue tokens for the permissions you actually have, not all the permissions that you ask for. This may mean you have more permissions than necessary for a pull, but that wont break anything.

@endophage  and @stevvooe ,
I change my PR, to fix the actual actions only in graph/registry, not including trust mod. and use the parameters type of ...string . Please take a look. Thanks a lot!

@dmcgowan Shouldn't NewTokenHandler resolve and request the appropriate scope?

I really don't have an opinion on whether it should or shouldn't. David is right that "This may mean you have more permissions than necessary for a pull, but that wont break anything". While I think keeping scope small is ideal, if we were to switch to a longer term token model I think it will be better to have the maximum scope. However the token server "should" support the additional scopes, so it is not a bug and not "necessary". My opinion is we should avoid this sort of unnecessary change.

@dmcgowan The scope request is sent to authenticate server which issuer defined. auth server should know the appropriate scope, and then decide if the account has the permission to scope actions. if daemon  don't send the appropriate scope actions, for example:

account want to pull a public image which can only be pulled by users, but daemon send pull and push actions to auth server.
server will regard the actions as push, and denied the request.
without scope, server is hard to authenticate user's behavior.
I learn some auth server design, that use scope action as a necessary condition. I'm not sure if it is a bug. But it really impact on pull and push session authorization.
So could you please take my comment into consideration? Thanks a lot!

I agree with @xiekeyang that we should request only auth scopes for the action we want to perform.
LGTM.

@calavera Part of the issue here is that the token contract is between the issuer and the consumer (in this case, the registry). The client asks the issuer for the permissions and then passes the opaque token to the registry, at which time it may find that the required permissions are not available. The client has no ability, nor should it have said ability, to validate whether the permissions are sufficient until they are tested against an authority.
Either way, this model of passing in the required tokens at transport creation is slightly broken. The permissions should be detected as requests come through the transport and they should be resolved at that time, eliding this extra complexity. This also lets the client decide how it wants to manage permissions. For example, a careful client can build up the token over several requests, whereas other extremes may request a token for each request or request all permissions at once.
The actual bug here is in non-compliant token endpoints that incorrectly return an error when a certain level of permissions is not available. A token with empty scopes is just as valid as a token with all scopes but it is up to the registry to make the decision about validity. I'm not sure if @jlhawn clarified this in the specification. Effectively, the decision as to whether a token provides the client the requested operation is completely the responsibility of the registry's authority.

@calavera I agree with you. There a question that needs to be answered around the token server however: what should the behaviour be when a user requests permissions they don't have? Our current implementation will issue a token with only the permissions the user actually has, so while it's cleaner to request only the permissions needed, no error is raised by over-requesting.
I believe others (@xiekeyang?) that have written their own token servers, have designed them such that the token server will refuse to issue a token if it can't satisfy all the permissions requested.
This discussion should be taken elsewhere (@stevvooe: do we have an appropriate place to discuss and/or document our expectations for a token server?).
As I said above, this is good, sensible cleanup so I'm happy to give my LGTM now that the issues identified earlier have been addressed.

@endophage Do I agree with @calavera in the principle that "we should request only auth scopes for the action we want to perform"? Yes. However, we must temper this with other considerations.
This is less of a discussion than a description of the contract for obtaining tokens and the responsibility of validating them. With the described model above, well-implemented clients will only have to comply with the token API. Everything else, including the permissions and policy error response codes, can remain opaque. If we adopt a strict model, where the authentication server is expected to meet the requested scopes and validate, it is effectively an API change, which is demonstrated by this PR. Not only does it change the expectation of the responses from the token server, but it also requires us to define a policy error reporting mechanism in the token API, in addition to that already provided by the registry API.
The current model allows us to opaquely swap out the token scheme without changing the clients implementation, as long as the client keeps track of which tokens provided which permissions.
Conversely, an implementation may preemptively return all of the token permissions in a single token for the user, if it deems it necessary. It may not yet know it has all those permissions until it requests them from the token server, but this should be okay. Let's take the situation where a fat token is issued, then unused permissions are taken away. Would it be an error to take away permissions from a token that already had a set of permissions that were never originally requested by the client? In the current model, this is trivially implemented in a backwards compatible manner. With a strict model, the correct behavior is less apparent.
The correct answer to this PR would be for the implementor of the authentication server to issue the tokens without the requested scope, rather than an error. This condition is not described in the specification as an error and implementations that return an error under these conditions are simply not in compliance. It is rather unfortunate that the original implementation was more careful about the requested permissions, making this lack of clarity in the specification unapparent until now. We can be flexible here, but considering this is a new protocol, there is no reason these new implementations shouldn't comply with the original interpretation.
I know understanding why this is all related is subtle, but if we look at the token acquisition process, it becomes somewhat apparent. Specifically, during the course of a registry bound request, we may want to request a new or updated token. If the auth endpoint may return an error that the client doesn't have necessary scopes, we must return an http error for a request that never egressed to the target endpoint. While this is a problem in Go's net/http package, it is also a question of policy error handling. The auth server doesn't have an API to describe policy errors and allow a client to resolve them. This is part of the registry API or whatever service has the responsibility to validate the tokens.
TL; DR LGTM with the acknowledgement that @xiekeyang's auth token server implementation is not compliant.

@stevvooe
Thanks a lot for your explain. I agree with you that auth server should provide exact permission. So, I would cancel this PR.
Then, the actions query in Requesting a Token API becomes invalid.
GET /v2/token/?service=registry.docker.com&scope=repository:samalba/my-app:push&account=jlhawn

Do you think we should remove it from API, and update related spec?
Thanks a lot!

@xiekeyang We are updating the token spec in https://github.com/docker/distribution/pull/973 to clarify this.
I don't see any problems with merging this PR.
LGTM

@calavera @stevvooe I think we have two LGTM's here; is this ready to merge?

Yup, thank you all for the reviews and changes. :tada:

authors: calavera dmcgowan endophage stevvooe thaJeztah xiekeyang


text:
ProcessWord support UTF-8

modified PorcessWord to working normally for UTF-8 strings.
fixed #16793
Signed-off-by: Daehyeok Mun daehyeok@gmail.com

nice. can we get some testcases?

as @duglin says, having tests would be awesome.

Sorry, I forgot to testing..... I added test case for UTF-8 strings using Korean words "안녕하세요" (it's mean hello). I write new test case based on previous test case.

Oh Cool ! Unicode all the things 🙌
ありがとう
고맙습니다

thanks for the tests - very nice.
Just a few comments/questions on the code.

@duglin you right. I confused \000 need for multiline .... I remove/rewrite code related with \000

@daehyeok please squash your commits
Other than that, LGTM

@duglin squashed, Thanks

LGTM 🐰

Merging 😍
ping @thaJeztah putting impact/changelog maybe ?

Yah, we can do that

authors: calavera daehyeok duglin thaJeztah vdemeester


text:
Windows: Fix go test in execdriver\lxc

Signed-off-by: John Howard jhoward@microsoft.com
I'm going through trying to get unit tests running on Windows (make test-unit). There are several packages with compile errors on non-Linux. This fixes daemon\execdriver\lxc so that go test doesn't throw a compile error.

LGTM


text:
Update grimes to 15ecf9414859b16a8a19ac6748a622a5498d57e3

This fixes an issue when wait4 returns a 0 return status causing the
reaping loop to continue to run.
Signed-off-by: Michael Crosby crosbymichael@gmail.com

https://github.com/crosbymichael/grimes/compare/f207601a8d19a534cc90d9e26e037e9931ccb9db...15ecf9414859b16a8a19ac6748a622a5498d57e3
LGTM

LGTM

authors: LK4D4 crosbymichael tonistiigi


text:
[17.03.1] cluster: Renew the context after communicating with the registry

Cherry-pick of #31586
When pinning by digest, the registry might be slow or unresponsive. This
could cause the context to already be expired by the time UpdateService
or CreateService is called. We want digest pinning to be a best-effort
operation, so it's problematic if a slow or misbehaving registry
prevents the service operation from completing. Replace the context
after communicating with the registry, so we have a fresh timeout for
the gRPC call.

@aaronlehmann please update changelog then.

@tiborvass: done

LGTM

Ping @vieux to decide

ping @vieux - did you discuss with @aaronlehmann ?

Let's wait for a .2 if it ever happen to include this one.

In that case, why close the PR? Wouldn't it be better to merge it to the branch so we don't forget it if we do a .2?

@vieux Agree with @aaronlehmann we can still merge it.

Looks like I'm not able to reopen this one, so if we decide on 17.03.2, we'll need a new PR unfortunately

re-opened: #33117

authors: aaronlehmann thaJeztah tiborvass vieux


text:
README.md: Attempt to direct downstream bug reports to downstream bug…

… tracker
We get a small but steady stream of Docker for Mac bug reports filled against
Hyperkit, many of which are not actually Hyperkit issues. Try and direct users
to file the bugs downstream by default so that they can be more effectively
triaged.
Signed-off-by: Ian Campbell ian.campbell@docker.com

LGTM. Merging

repo: docker/hyperkit


text:
Error

Expected behavior
Actual behavior
Information about the Issue
Steps to reproduce the behavior

...
...

No information provided or steps to replicate - Closing 😞

authors: FrenchBen beratuslu

repo: docker/kitematic


text:
Cherry-pick for 1.12.x: Run API check to assert xfrm modules

When docker is run inside a container, the infrastructure
needed by modprobe is not always available, causing the
xfrm module load to fail even when these modules are already
loaded or builtin in the kernel.
In case of probe failure, before declaring the failure,
run an API check by attempting the creation of
a NETLINK_XFRM socket.

Signed-off-by: Alessandro Boch aboch@docker.com

👍

authors: aboch mavenugo

repo: docker/libnetwork


text:
Custom labels configuration

As describe in this issue 24306, labels defined in daemon.json are ignored if any label flag exists in the command line used to start the daemon.
docker-machine runs the daemon with a label flag --label provider=??? preventing any custom configuration.
Can this label be declared in the daemon.json ?

+1 on using a daemon.json for all options that docker machine set; I think this'll also simplify configuration for all platforms (e.g. No differences between systemd and upstart systems)

so for the current state, will it be safe to generalize:
do NOT to pass engine configuration options when using docker-machine create ?
e.g among the following 2 examples, the first is better practice?

$ docker-machine create -d virtualbox \
    gdns

then create/edit /etc/docker/daemon.json
then run sudo service docker restart

$ docker-machine create -d virtualbox \
    --engine-opt dns=8.8.8.8 \
    --engine-opt log-driver=syslog \
    gdns

not a maintainer here, but perhaps passing options should be reflected in the daemon.json that machine creates

authors: malain pazams thaJeztah

repo: docker/machine


text:
Google when swarm should create an endpoint on port 3376

Right now I have to enable it manually which kind of limit the usefulness of this amazing tool in first place.
Thanks

I'm checking this now but it looks like it should be working: https://github.com/docker/machine/blob/master/drivers/google/compute_util.go#L105

This didn't create the swarm port
docker-machine create --driver google --google-project XXXX --google-zone us-central1-a --google-machine-type n1-highmem-2 --swarm --swarm-master --swarm-discovery token://YYYYY swarm-master

ok thanks -- checking

:+1:

Everything looks ok to me:
ehazlett machine> docker-machine ls
NAME        ACTIVE   DRIVER       STATE     URL                          SWARM
gce-swarm   *        google       Running   tcp://107.178.215.204:2376   gce-swarm (master)
ehazlett machine> docker $(docker-machine config --swarm gce-swarm) info
Containers: 2
Nodes: 1
 gce-swarm: 107.178.215.204:2376
  └ Containers: 2
  └ Reserved CPUs: 0 / 1
  └ Reserved Memory: 0 B / 3.615 GiB

What version of Machine are you using?

➜ audify git:(master) ✗ docker-machine --version
docker-machine version 0.1.0

ah ok -- can you try the latest RC available here: https://github.com/docker/machine/releases/tag/v0.2.0-rc3

Hi, I've download the 0.2.0 version HEAD from https://github.com/docker/machine/releases/download/v0.2.0/docker-machine_darwin-amd64 , and the 3376 port rule wasn't created for me. I still had to manually create a firewall rule in GCE. Wondering if it made it into this release.

Hi, this is still an issue with docker-machine version 0.3.0-dev (fec8b4a) and is getting annoying, because GCE will re-arrange node ips and firewall rules won't apply after docker-machine stop/start.
See this session transcription:
08:11:00::docker-964 ♨ >  docker-machine ls
NAME           ACTIVE   DRIVER       STATE     URL                         SWARM
gce1                    google       Running   tcp://104.154.95.34:2376    gce1 (master)
gce2                    google       Running   tcp://104.154.84.165:2376   gce1
gce3                    google       Running   tcp://130.211.182.1:2376    gce1
swarm-master            virtualbox   Stopped                               swarm-master (master)
swarm-node-1            virtualbox   Stopped                               swarm-master
swarm-node-2            virtualbox   Stopped                               swarm-master
08:11:06::docker-964 ♨ >  echo $DOCKER_HOST
tcp://104.154.95.34:3376
08:11:13::docker-964 ♨ >  docker info
FATA[0032] An error occurred trying to connect: Get https://104.154.95.34:3376/v1.18/info: dial tcp 104.154.95.34:3376: i/o timeout
08:11:54::docker-964 ♨ >

This is related to e.g. Azure (same problem) #640
The only mention of port 3376 I found was in the integration tests and AWS driver https://github.com/docker/machine/blob/2efadeaf090cc2c9228678c421c6869c95d21252/drivers/amazonec2/amazonec2.go#L35 - looks like they've implemented it there, but not for any other provider.

This should work if you specify the host to be a Swarm master.  See https://github.com/docker/machine/blob/master/drivers/google/compute_util.go#L103.
Closing.  Please re-open if you still experience the issue.  Thanks!

@ehazlett this is not the case, hence this issue report. Both the original author and I designate the host to be a swarm master, please see below:
02:41:32::docker-964 ♨ >  docker-machine create \
>                --driver google \
>                --google-zone $GOOGLE_ZONE \
>                --google-machine-type $GOOGLE_MACHINE_TYPE \
>                --google-project $GOOGLE_PROJECT \
>                --swarm \
>                --swarm-master \
>                --swarm-discovery "token://xxx" \
>                $GOOGLE_NODENAME
...
Creating host...
Generating SSH Key
Creating instance.
Waiting for Instance...
Uploading SSH Key
Waiting for SSH Key
To see how to connect Docker to this machine, run: docker-machine env gce1
02:43:41::docker-964 ♨ >  docker-machine ls
NAME               ACTIVE   DRIVER   STATE     URL                                        SWARM
gce1               *        google   Running   tcp://104.154.76.147:2376                  gce1 (master)
02:43:52::docker-964 ♨ >  eval $(docker-machine env gce1)
02:44:07::docker-964 ♨ >  docker info
Containers: 2
Images: 7
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 11
 Dirperm1 Supported: true
Execution Driver: native-0.2
Kernel Version: 3.16.0-31-generic
Operating System: Ubuntu 14.04.2 LTS
CPUs: 2
Total Memory: 7.306 GiB
Name: gce1
ID: DPOG:EIOT:ORQK:2SRO:LQYH:DTGN:TKLX:LW76:6LSD:4AEE:S3OT:25OG
Username: aperepel
Registry: [https://index.docker.io/v1/]
WARNING: No swap limit support
Labels:
 provider=google
02:44:26::docker-964 ♨ >  eval $(docker-machine env --swarm gce1)
02:44:36::docker-964 ♨ >  docker info
FATA[0032] An error occurred trying to connect: Get https://104.154.76.147:3376/v1.18/info: dial tcp 104.154.76.147:3376: i/o timeout
02:45:11::docker-964 ♨ >

Ok.  I will take a look.  Thanks!

@ehazlett can you please reopen the issue too? i can see how it can get lost in the swarm of release preparations.

I see what's going on - the code checks for the presence of the docker-machines firewall rule, and doesn't dig in (making different assumptions from what I had in mind). The old rule was created by a previous docker-machine version. Once deleted, the rule got re-created with port 3376 open.
However, my approach was to tag a machine as a docker-swam and open the 3376 port only to this machine (remove the rule on machine delete as well). Current code just opens 3376 for every node - not ideal, as it increases an attack surface, but I guess ok for now. Thanks!

@aperepel yw -- i agree it widens the attack surface, however, with changing IPs (office vs. home, etc) I think we would run into connection issues often.  Thus, we choose to use all access (with TLS) by default and allow the user to change if desired.  Thanks for the feedback!

authors: aperepel ehazlett imton


text:
Bump version for release candidate

Signed-off-by: Nathan LeClaire nathan.leclaire@gmail.com

LGTM

:tada:

authors: nathanleclaire thaJeztah


text:
Fix gocyclo warning

Part of #815
Signed-off-by: Hu Keping hukeping@huawei.com

Can one of the admins verify this patch?

jenkins, test this please

thanks for the cleanup, LGTM!

jenkins, test this please

LGTM pending CI - thanks @HuKeping!

ping :)

thank you @HuKeping!

authors: HuKeping cyli docker-jenkins riyazdf

repo: docker/notary


text:
Installing plugin without Docker Desktop

What would you like to be added:
When trying to install the plugin without Docker Desktop I was seeing the error "docker is not installed; refusing to install to '~/.docker/cli-plugins". After some investigation I realised that Docker Desktop creates the .docker folder, and that if I create the .docker folder manually the plugin can then be installed. Can the install script be updated to create the .docker folder if the user is not using Docker Desktop?
Why is this needed:
Allows for installation of the plugin without Docker Desktop.

I assume  install.sh was tested on Mac with Docker Desktop installed.
For Linux kinda OS, could be a check $OSTYPE with mkdir -p ~/.docker/cli-plugins .  or push to dockerhub, then user can run  docker plugin install sbom

Experienced this problem on Nvidia Jetson TX2. Docker command line is definitely installed. Created $HOME/.docker and was able to run install.sh.

authors: Luskidoo drjasonharrison zdtsw

repo: docker/sbom-cli-plugin


text:
Add template support for network aliases

This is at least a piece of #2207...

👍 👍 A use-case:

deploys a global service named svc1
deploy a service named svc2
from svc2 wants to contact the container from svc1 that sits on its machine (note: no ports exposed, svc1 and svc2 are in the same network)

If svc1 can template its network-alias, then it can include {{.Node.Id}} such that svc2 can use its node-id to target the svc1 instance in that machine.

Any updates on this? Definetely useful

Any update?

?

I would also like this.
Its especially useful, when running a seperate nginx and php service accross multiple nodes.
And you only want nginx-node01 to hit php-node01, because you are using an external HOST loadbalancer like Cloudflare.

I would also like to use this to run an Elasticsearch Cluster with Metricbeat

Any updates??? Using templates and making alias stick to the hostname solves a lot of problems with node-bound software like zookeeper and Kafka

authors: benturner cirocosta firecow iTaybb mustafaakin stepan-romankov tom-x1 upcFrost

repo: docker/swarmkit


text:
Fallback to secondary DNS servers upon retires

If the first upstream DNS server fails to respond then the guest will retry, today we would forward the retry to the same server, whereas on a native system it would try the next server in resolv.conf. This makes vpnkit more susceptible to errors due to a flakey upsteam server.
To resolve this keep track of in progress DNS requests and if we observe a reuse of a transaction id round-robin through the upstream servers instead of reusing the first.

If I'm reading this control flow correctly, changes to /etc/resolv.conf won't be noticed if they occur between retries for the same transaction ID, as Resolv_conf.get () is only called in the unparseable-packet or non-retry cases.  I found this a bit surprising; is it intended?

Yes, it kept things simpler.

This PR is definitely an improvement on the previous behavior, and I think it's mergeable as is.  Thanks for the patch, @ijc25 !

LGTM

authors: avsm ijc25 yomimono

repo: docker/vpnkit


text:
Configure Dockerfile for filler microservice [Close #2]

We have prepared PR for filler Dockerfile.
Please review.

close #2

authors: janis-vitols skibish


text:
multiple autoPlayInterval values

Hi, is it possible to assign a different auto play intervals?
For instance:
img1 --> 3000
img2 --> 5000
img3 --> 5000
img4 --> 10000
thanks for your support!

I don't think this makes sense for this package to have this. However, you could manually trigger this if needed with your own timers.

authors: dockleryxk steolits

repo: dockleryxk/ng-simple-slideshow


text:
Add BeforeEndDrag and EndDrag event

Hello, I'm a novice at GitHub. Forgive my rudeness please.
I need handle something before EndDrag event. So I add BeforeEndDrag event that is called before EndDrag. It also support EndDrag event for DockContent.

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

authors: CLAassistant silentgrant

repo: dockpanelsuite/dockpanelsuite


text:
Remove Composer memory limit

Set COMPOSER_MEMORY_LIMIT=-1 to remove the memory limit for Composer. This way, it's one less memory limit setting that needs to be adjusted, the other two being PHP's memory_limit and then the VM memory limit (on Mac and Win).

Actually, we should drop the PHP cli memory limit altogether:
memory_limit = -1

repo: docksal/service-cli


text:
Use Debian Stretch as previous versions have been archived.

If you install Debian packages via .docksal/cli/Dockerfile, this will cause your build to fail because the Debian Jessie repositories have been archived. This update to using the latest version, Debian Stretch.
https://unix.stackexchange.com/questions/508724/failed-to-fetch-jessie-backports-repository
https://gitter.im/docksal/community-support?at=5c9b8edb6a3d2e230d33e566

We could also mirror the php structure by creating -stretch containers

@charginghawk the official php-fpm images are on Debian 9 (stretch) and have been there for a while, e.g.:
7.1.27-fpm-stretch, 7.1-fpm-stretch, 7.1.27-fpm, 7.1-fpm (7.1/stretch/fpm/Dockerfile)

There should be no references to jessie repos in docksal/cli since v2.4.0:
https://github.com/docksal/service-cli/releases/tag/v2.4.0
I'm not sure how you ended up with packages pulled from jessie repos.

authors: charginghawk lmakarov


text:
Update 3.7 - Implementing Just Enough Administration.ps1

Hi Thomas!

Good catch!

authors: PaulDash doctordns

license: MIT


text:
Doctrine superclass inheritance - indexes are not inherited

/**
 * @MappedSuperclass
 * @Table(indexes={@Index(name="idx", columns={"name"})})
 */
class BaseSuperClass
{
    /** @Column(type="string") */
    protected $name;

    // ... more fields and methods
}

/** @Entity */
class EntitySubClass extends BaseSuperClass
{
    /** @Id @Column(type="integer") */
    private $id;

    // ... more fields and methods
}

Name index is not inherited from BaseSuperClass, it there any way to achieve this?

@Table is not valid on a mappedsuperclass.
On 10 Jul 2016 16:46, "Yoan Arnaudov" notifications@github.com wrote:

/**

@MappedSuperclass

@Table(indexes={@Index(name="idx", columns={"name"})})
/
class BaseSuperClass
{
/* @Column(type="string") */
protected $name;
// ... more fields and methods
}

/** @Entity /
class EntitySubClass extends BaseSuperClass
{
/* @Id @Column(type="integer") */
private $id;
// ... more fields and methods

}
Name index is not inherited from BaseSuperClass, it there any way to
achieve this?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/doctrine/doctrine2/issues/5928, or mute the thread
https://github.com/notifications/unsubscribe/AAJakHTYvOtepqSIm5ZYPA1b08TXvRmAks5qUQXSgaJpZM4JI2Uw
.

Okay, but is there any way to achieve this?

@nacholibre One could only hope.

@nacholibre or @Ocramius, Did you find a way to inherit indexes with a mapped superclass?  I have tons of entities that would benefit from such a structure.

Did you find a way to inherit indexes with a mapped superclass?

Listeners - simply attach a listener that, when the metadata loads, adds the indexes to all classes that are instance of a certain mapped superclass.

I posted a full solution for the listener suggested by @Ocramius at https://stackoverflow.com/a/60029840/1668200

authors: Ocramius ThomasLandauer alexgurrola nacholibre


text:
Site CSS makes it less usable on ultrawide monitors

Reference issue: https://github.com/learning-rust/site/issues/62

I opened a PR if you're interested
https://github.com/docura/docura/pull/2/files

Hi @EthanStandel ,
Thanks for your feedback.

Actually I tested these custom zooms on a QHD monitor; I thought it's better adding a custom zoom especially for the devices like TVs.
However I added these in a rush and recently saw this can conflict with #article->width: 66.64vw as well.

So I also think it's better remove these custom zooms for the moment.
Thanks again for the feedback :)

Absolutely, and thank you for the fantastic resource of https://learning-rust.github.io/!

authors: EthanStandel dumindu

repo: docura/docura


text:
++[XXX FULL Video]— One Girl One Frog Video Original Video Link One Girl One Frog Video Viral On Social Media X Trending Now

44 seconds ago
L𝚎aked Video One Girl One Frog Original Video Viral Video L𝚎aked on X Twitter Telegram
[-wATCH-]— One Girl One Frog Video Original Video Link One Girl One Frog Video Viral On Social Media X Trending Now
[-wATCH-]— One Girl One Frog ʟᴇᴀᴋᴇᴅ Video ᴠɪʀᴀʟ On Social Media ˣ ᵀʷⁱᵗᵗᵉʳ
[-wATCH-]— One Girl One Frog ʟᴇᴀᴋᴇᴅ Video ᴠɪʀᴀʟ On Social Media ˣ ᵀʷⁱᵗᵗᵉʳ
[-wATCH-]— One Girl One Frog Video Original Video Link One Girl One Frog Video Viral On Social Media X Trending Now
One Girl One Frog Original Video video took the internet by storm and amazed viewers on various social media platforms. One Girl One Frog, a young and talented digital creator, recently became famous thanks to this interesting video.
L𝚎aked Video One Girl One Frog Original Video Viral Video L𝚎aked on X Twitter
One Girl One Frog Original Video video oficial twitter
L𝚎aked Video One Girl One Frog Original Video Viral Video L𝚎aked on X Twitter..yjhgrdafassf
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

3

authors: MishayDupler williamswilt

repo: doczjs/docz


text:
18+ NEW S.E.X@PORN@VIDEOS]*5 Girls 5 Rocket Video Original Video Link 5 Girls 5 Rocket Leaked Video Viral On Social Media X TikTok Trending

18 seconds ago
L𝚎aked Video 5 Girls 5 Rocket Video Tutorial Original Video Viral Video L𝚎aked on X Twitter Telegram
┌──────────────•✧✧•────────────────┐
└────────────── •✧✧• ────────────────┘
5 Girls 5 Rocket Video Tutorial Original Video video took the internet by storm and amazed viewers on various social media platforms. 5 Girls 5 Rocket Video Tutorial, a young and talented digital creator, recently became famous thanks to this interesting video.
L𝚎aked Video 5 Girls 5 Rocket Video Tutorial Original Video Viral Video L𝚎aked on X Twitter
5 Girls 5 Rocket Video Tutorial Original Video video oficial twitter
L𝚎aked Video 5 Girls 5 Rocket Video Tutorial Original Video Viral Video L𝚎aked on X Twitter
[-wATCH-]— 5 Girls 5 Rocket Video Original Video Link 5 Girls 5 Rocket Video Viral On Social Media X Trending Now
[-wATCH-]— 5 Girls 5 Rocket ʟᴇᴀᴋᴇᴅ Video ᴠɪʀᴀʟ On Social Media ˣ ᵀʷⁱᵗᵗᵉʳ
[-wATCH-]— 5 Girls 5 Rocket ʟᴇᴀᴋᴇᴅ Video ᴠɪʀᴀʟ On Social Media ˣ ᵀʷⁱᵗᵗᵉʳ
[-wATCH-]— 5 Girls 5 Rocket Video Original Video Link 5 Girls 5 Rocket Video Viral On Social Media X Trending Now
+'[ORIGINAL!!VIRAL!] 5 Girls 5 Rocket MMS Video Link Original Full Video Viral On Social Media X Telegram Trending Now
[+WATCH@VIRAL+] Latest Viral Leaked 5 Girls 5 Rocket Original Full Video Viral On Social Media X Trending Now 5 Girls 5 Rocket's Viral Leaked
[!!Tending!!+] 5 Girls 5 Rocket Official Leaked Video Original Full Video Original Video Link Tanu Rawat Video Viral On Social Media X Trending Now
!!+(Link-Viral)!! MMS Malayalam Actress 5 Girls 5 Rocket Viral Video Trending videos MMS Malayalam actress 5 Girls 5 Rocket's On Social Media X Telegram Trending Now
++(Full video!!)*Malayalam 5 Girls 5 Rocket's Viral Leaked Video On Social Media X twitter Trending videos MMS Malayalam actress 5 Girls 5 Rocket's private
5 Girls 5 Rocket Original Video video took the internet by storm and amazed viewers on various social media platforms. 5 Girls 5 Rocket, a young and talented digital creator, recently became famous thanks to this interesting video.
L𝚎aked Video 5 Girls 5 Rocket Original Video Viral Video L𝚎aked on X Twitter
5 Girls 5 Rocket Original Video video oficial twitter
L𝚎aked Video 5 Girls 5 Rocket Original Video Viral Video L𝚎aked on X Twitter..y
The video reportedly showcases her in a Malayalam actress 5 Girls 5 Rocket's private, Actress 5 Girls 5 Rocket About Prabhas, Instagram video by 5 Girls 5 Rocket.5 Girls 5 Rocket MMS Leak Controversy Explained: Malayalam Actress Falls Victim After Maryam Faisal, Minahil Malik | Viral Video · By Poorva Karki
5 Girls 5 Rocket is a prominent actress and model, primarily known for her work in the regional film industries of South India, particularly in Malayalam, Telugu, and Tamil cinema. She has become a popular name due to her engaging presence both in films and on social media.
Early Life and Background
5 Girls 5 Rocket was born and raised in India, though specific details about her date of birth and early life are not widely publicized. As with many models and actresses, 5 Girls 5 Rocket's journey to fame started with her interest in the fashion and entertainment industry. She began her career as a model, participating in various photoshoots and fashion events before transitioning into acting. Her striking looks and charming personality helped her establish a strong presence in the fashion industry, which eventually opened doors to film roles.
Career in Film
5 Girls 5 Rocket made her acting debut in the South Indian film industry and quickly gained attention for her talent and screen presence. She appeared in Malayalam, Telugu, and Tamil films, earning recognition for her roles in films like:
Varalaru Mukkiyam (2022) – A Malayalam film that brought 5 Girls 5 Rocket significant attention. It was well-received for its engaging story and the performances of the cast, including 5 Girls 5 Rocket's.
Nadhikalil Sundari Yamuna (2021) – Another Malayalam film in which 5 Girls 5 Rocket showcased her acting skills alongside popular actors. Her performance in this film was noted for its emotional depth.
Laggam (2021) – This movie was a notable part of her filmography, where she played a key role and worked alongside established actors in the Tamil film industry.
5 Girls 5 Rocket has also worked in various Telugu-language films, collaborating with leading actors and directors. As her career continued to grow, she established herself as a sought-after actress in the regional film industry, recognized for her versatility and ability to portray a wide range of characters.
Social Media Influence
Apart from acting, 5 Girls 5 Rocket is highly active on social media platforms like Instagram, where she has gained a significant following of over 1 million followers. She uses her platform to share personal moments, behind-the-scenes glimpses of her work, and to promote fashion and lifestyle products. Her social media presence has helped her become a well-known influencer, with brands often partnering with her for promotions.
Her posts often feature her in stylish outfits, showcasing her fashion sense, and engaging in various lifestyle activities. This aspect of her career has helped her build a strong fanbase among younger audiences who follow her for both entertainment and fashion inspiration.
Controversies
Recently, 5 Girls 5 Rocket has been involved in a controversy surrounding the alleged leaking of a private video. The video went viral across social media platforms like Twitter, Telegram, and others, sparking significant debate and public attention. The authenticity of the video has yet to be confirmed, and 5 Girls 5 Rocket’s team has not issued an official statement on the matter. The controversy raised concerns about privacy, the ethics of sharing personal content, and the impact of such incidents on an individual's career and mental health.
This situation highlights the increasing risks celebrities face in the digital age, where personal moments can easily become public. The leak of private content has been a growing issue in the entertainment industry, often leading to discussions about the right to privacy and the responsibilities of both the media and the public when it comes to respecting personal boundaries.
Personal Life
Despite her rising fame, 5 Girls 5 Rocket is known to keep her personal life relatively private. She has not shared many details about her family, relationships, or early years, focusing more on her professional career and public persona. Like many in the entertainment industry, she occasionally shares glimpses of her personal life on social media, but she tends to maintain a level of distance between her work and private affairs.
Future Prospects
With her growing popularity on social media and her established presence in regional cinema, 5 Girls 5 Rocket is expected to continue making strides in her career. She has shown the potential for a long-lasting career, both in acting and in the world of digital influence. As her popularity continues to rise, there could be more exciting opportunities for her, both within the South Indian film industry and beyond.
Conclusion
5 Girls 5 Rocket is an emerging star in the Indian entertainment industry, known for her roles in Malayalam, Tamil, and Telugu films, as well as her substantial influence on social media. She has built a successful career by combining acting with modeling and online presence. However, like many celebrities, she also faces the challenges of privacy and public scrutiny, especially in the age of viral content. 5 Girls 5 Rocket's journey highlights both the opportunities and risks associated with fame in the modern digital era.
If you'd like to know more specific details or have other questions about her career, feel free to ask!
[EXCLUSIVE▔] 5 Girls 5 Rocket Video Original Video Link 5 Girls 5 Rocket Video Viral On Social Media X Trending Now. Link Link
(Trending Now) 5 Girls 5 Rocket Viral Video Link On Social
(Trending) 5 Girls 5 Rocket Video Leaked Go Viral - forum topic
5 Girls 5 Rocket Viral Video Link
(Trending!VIRAL) 5 Girls 5 Rocket Viral Video Link On Social
VIRAL!] 5 Girls 5 Rocket's Leaked Video Original Full Video
(++Watch Video++) 5 Girls 5 Rocket Viral Video
[!!VIRAL+] 5 Girls 5 Rocket Leaked Video Original Full Video

2

sfdsf

authors: AshlenArnot Dahhnn556 Proutassj


text:
[!Full*Video!] Maris Racal and Anthony Jennings Original Video Trending Maris Racal & Anthony Jennings Viral Video Telegram Links (18+)

44 seconds ago
L𝚎aked Video Maris Racal and Anthony Jennings Original Video Viral Video L𝚎aked on X Twitter Telegram
[-𝐅𝐔𝐋𝐋-𝐕𝐈𝐑𝐀𝐋-]— Maris Racal and Anthony Jennings Video Original Video Link Maris Racal and Anthony Jennings Video Viral On Social Media X Now [1U2M3N]
[-wATCH-]— Maris Racal and Anthony Jennings Video Original Video Link Maris Racal and Anthony Jennings Video Viral On Social Media X Trending Now
[-wATCH-]— Maris Racal and Anthony Jennings Video Original Video Link Maris Racal and Anthony Jennings Video Viral On Social Media X Trending Now
[-wATCH-]— Maris Racal and Anthony Jennings ʟᴇᴀᴋᴇᴅ Video ᴠɪʀᴀʟ On Social Media ˣ ᵀʷⁱᵗᵗᵉʳ
[-wATCH-]— Maris Racal and Anthony Jennings ʟᴇᴀᴋᴇᴅ Video ᴠɪʀᴀʟ On Social Media ˣ ᵀʷⁱᵗᵗᵉʳ
[-wATCH-]— Maris Racal and Anthony Jennings Video Original Video Link Maris Racal and Anthony Jennings Video Viral On Social Media X Trending Now
Maris Racal and Anthony Jennings Original Video video took the internet by storm and amazed viewers on various social media platforms. Maris Racal and Anthony Jennings, a young and talented digital creator, recently became famous thanks to this interesting video.
L𝚎aked Video Maris Racal and Anthony Jennings Original Video Viral Video L𝚎aked on X Twitter
Maris Racal and Anthony Jennings Original Video video oficial twitter
L𝚎aked Video Maris Racal and Anthony Jennings Original Video Viral Video L𝚎aked on X Twitter..
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

2

 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link

 🟢 ➤ ➤ ➤ 🌐 𝖢𝗅𝗂𝖼𝗄 𝖧𝖾𝗋𝖾 𝖳𝗈 𝗅𝗂𝗇𝗄 Viral Video Link
 🔴 ➤►𝖣𝖮𝖶𝖭𝖫𝖮𝖠𝖣👉👉 Viral Video Link

 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link

 🟢 ➤ ➤ ➤ 🌐 𝖢𝗅𝗂𝖼𝗄 𝖧𝖾𝗋𝖾 𝖳𝗈 𝗅𝗂𝗇𝗄 Viral Video Link
 🔴 ➤►𝖣𝖮𝖶𝖭𝖫𝖮𝖠𝖣👉👉 Viral Video Link

 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link

 🟢 ➤ ➤ ➤ 🌐 𝖢𝗅𝗂𝖼𝗄 𝖧𝖾𝗋𝖾 𝖳𝗈 𝗅𝗂𝗇𝗄 Viral Video Link
 🔴 ➤►𝖣𝖮𝖶𝖭𝖫𝖮𝖠𝖣👉👉 Viral Video Link

 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link

 🟢 ➤ ➤ ➤ 🌐 𝖢𝗅𝗂𝖼𝗄 𝖧𝖾𝗋𝖾 𝖳𝗈 𝗅𝗂𝗇𝗄 Viral Video Link
 🔴 ➤►𝖣𝖮𝖶𝖭𝖫𝖮𝖠𝖣👉👉 Viral Video Link

 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link

 🟢 ➤ ➤ ➤ 🌐 𝖢𝗅𝗂𝖼𝗄 𝖧𝖾𝗋𝖾 𝖳𝗈 𝗅𝗂𝗇𝗄 Viral Video Link
 🔴 ➤►𝖣𝖮𝖶𝖭𝖫𝖮𝖠𝖣👉👉 Viral Video Link

 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link

 🟢 ➤ ➤ ➤ 🌐 𝖢𝗅𝗂𝖼𝗄 𝖧𝖾𝗋𝖾 𝖳𝗈 𝗅𝗂𝗇𝗄 Viral Video Link
 🔴 ➤►𝖣𝖮𝖶𝖭𝖫𝖮𝖠𝖣👉👉 Viral Video Link

 🟢 WATCH NOW 🌐 ➤ ➤ ➤ CLICK HERE 𝖳𝗈 𝗅𝗂𝗇𝗄
 🔴 WATCH NOW 👉👉 ➤► ➤► Viral Video Link
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

authors: Gwendlyon jenifferbond ufamugnifhs


text:
Add graceful shutdown

This change add graceful shutdown to plugin.
Now we try to write batch that we accumulate before shutdown. If it takes more than 1 second - we go out.

Fixed in https://github.com/dodopizza/jaeger-kusto/pull/13

authors: ArtemTrofimushkin holyslon

repo: dodopizza/jaeger-kusto


text:
A device which mines using solar power

Feature Request
Describe the Feature Request

A one-piece device that sits under the sun (maybe in your yard, or on your roof) and mines dogecoin. This will encourage dogecoin and renewable energy.

What does this have to do with dogecoin as a project. This is just a change in the way you mine doge.
You could power your pc off solar energy and mine dogecoin with that.

I encourage someone (maybe you, the original poster) to start a side business to make little mining rigs for perhaps quasi-confused parents to buy for their children under the proposition of teaching them for the future (which is genuine).
That would be lucrative, and would achieve what you've outlined, even if not directly applicable to the codebase.
Heck, maybe I'll do that. I would be happy if someone reads this and I see news of it happening.
External tag warranted

@m-luck Thanks I got your point.

Genuinely encouraging this! I see you're a programmer that is at least capable of some adequately hard things (Arch). ;)
Thanks for posting!

A one-piece device that sits under the sun (maybe in your yard, or on your roof) and mines dogecoin. This will encourage dogecoin and renewable energy.

Just get a solar panel and an scrypt miner and plug it into the solar panel.

authors: AadityaMunjal danielkp1234 delbonis m-luck

repo: dogecoin/dogecoin


text:
Also upload movie files

The upload command currently only handles static images:
https://github.com/dogsheep/photos-to-sqlite/blob/d939455af00e07866686457ee2fcb9b2d1b7194e/photos_to_sqlite/utils.py#L26-L33
Need to cover movies taken by my phone and DSLR too.

>>> def ext_counts(directory):
...     counts = {}
...     for path in pathlib.Path(directory).glob("**/*"):
...         ext = path.suffix
...         counts[ext] = counts.get(ext, 0) + 1
...     return counts
...
>>>
>>> ext_counts("/Users/simon/Pictures/Photos Library.photoslibrary/originals")
{'': 16, '.heic': 15478, '.jpeg': 21691, '.mov': 946, '.png': 2262, '.gif': 38, '.mp4': 116, '.aae': 2}

I'm going to leave this until I have the mechanism for associating a live photo video with the photo.

repo: dogsheep/photos-to-sqlite


text:
World of Warcraft, renderpass issue?

I'm not entirely sure this is a DXVK issue, but I think it is. Without DXVK enabled, the problem does not show. When changing Vulkan driver from RADV to AMDGPU, the issue is exactly the same. So I'm leaning towards that this is a dxvk related.
In certain situations in World of Warcraft, when specific windows are opened or specific spell effects showing, there is a huge slowdown. The simplest example to trigger this is to open the Appearances tab (shift+p, select Appearances tab in the window). The framerate goes down to approx 50-60% of the "normal" value while the window is opened, and is restored when closed.
Example:
Window not opened (regular scene with average amount of players / objects visible): https://i.imgur.com/jK0eQsq.png
Window opened (same scene, only static window visible): https://i.imgur.com/5HQWvFl.png
As you can see in the screenshot above, the "renderpasses" count almost exactly doubles when the window opens. Usually with many players / complex objects in view the drawcalls increase, while the renderpasses stay roughly the same. The increased drawcalls in the screenshot was mostly due to more players in view at the time of the second screenshot, normally when opening the window the drawcalls increase by ~200.
Software information
World of Warcraft, 7/10 quality setting
System information

GPU: Radeon R9 290X
Driver: 18.2.4
Wine version: 3.18 staging
DXVK version: 0.91

Apitrace file(s)
Took a while to log in and start game, but when started I opened / closed the problematic window a few times before exiting:

https://drive.google.com/file/d/1I6i4CoFjOSXAak685YyLT2J8NOPXRGvr/view?usp=sharing (note, 6 GB file!)

Log files
Can't see anything interesting here, but here they are anyways:

d3d11.log: https://pastebin.com/5DfZNgFJ
dxgi.log: https://pastebin.com/pzfSmpjT

100 render passes is still in the normal. As far as I can tell, there's no bug here.

You might be right, I just wanted to ask the question to see if this was something that can be improved, as it is an annoyance.
What is odd though is that even if you face a wall (ie few things to render = high fps), it drops from say 200 fps to < 100 when opening that static window. No slowdown is noticed without DXVK or on the windows version.
Anyway, if there is no bug here to be fixed, feel free to close this issue. Thanks for the feedback :)

Was not really able to reproduce a huge problem with nVidia.
Standing in Boralus, i have 70'ish fps, and opening the Appearance tab i dropped 5-7 fps, and renderpasses changed from 50 -> 90 at most (so almost double).
I do however remember SOME issues with this when doing mouseover + shift to compare gear, but kinda think this got fixed with a addon update (but MIGHT have been a dxvk or driver update a while back).

It might be my old GPU (290X), that is also only supporting vulkan 1.1.70 that might be the issue. I have at least tried updating Mesa, Vulkan amd DXVK to the latest version without success.

Closing this as there does not seem to be any reproducible issue here

authors: ErikEklund SveSop doitsujin

repo: doitsujin/dxvk

license: Zlib


text:
DokanNet.dll tries to load dokan.dll, but the appropriate bindings are in dokan1.dll

All of the native methods that DokanNet.dll binds to are located in dokan1.dll, but the p/invoke bindings specify dokan.dll.  I had to copy dokan1.dll from the Dokany installation directory to dokan.dll in my application directory to get it to work.
Version: Dokan.Net v1.0.8
Dokany version: v1.0.5

@kyanha You are using an old version of the dokannet. The name has been changed in a long time.

authors: Liryna kyanha

repo: dokan-dev/dokan-dotnet


text:
rtl small fix -> text-align still is left

text-align still is left on message

i fix it with this change :
.iziToast-rtl .iziToast-body p, .iziToast-rtl .iziToast-body strong : { text-align: right; }
and result:

but still i think would be nice if we have an option for font-size
thanks for your great work

Thank you for your contribution.

authors: dolce molikh

repo: dolce/iziToast


text:
Following the tutorial

Great tutorial, found the odd typo.

Nice catch! 👍

@joelhoisko I see https://dolittle.io/tutorials/getting-started/typescript/ its still "and and".
Does that mean the website needs to be manually rebuilt?

It should be fixed now. The website is actually built from our Documentation repository which has all the relevant repositories that contain documentation (like this one) as submodules. These submodules need to be updated manually to trigger the website to rebuild.
It's not a good system and we should definitely have a pipeline/action for this.

authors: freshteapot joelhoisko

repo: dolittle/Learning


text:
Consider using http.ServeContent instead of io.Copy

Hello.
I read your nice tutorial.https://cloud.google.com/community/tutorials/cloud-run-golang-gcs-proxy
I needed a simple proxy.
The problem I encountered is that some files cannot be displayed in safari.
The cause is that it does not support HTTP range requests.
https://blog.logrocket.com/streaming-video-in-safari/
golang supports HTTP range requests.
io.Copy -> http.ServeContent
https://stackoverflow.com/questions/36540610/how-to-serve-http-partial-content-with-go
https://pkg.go.dev/net/http#ServeContent
The main benefit of ServeContent over io.Copy is that it handles Range requests properly, sets the MIME type, and handles If-Match, If-Unmodified-Since, If-None-Match, If-Modified-Since, and If-Range requests.

Thank you for reading.

Hi,
Sorry it took me so long to get back to you. I hit a very busy period at work and family. I imagine you may have moved on and used another proxy/architecture by now, but I still wanted to look into this.
So, I looked into it today. I'd like to use http.ServeContent, and I think I did consider it at one point when originally writing this. There are a few reasons I don't think we can do that in this proxy.
http.ServeContent requires an io.ReadSeeker for the content argument, and the media stream I get back from GCS is not seekable (it's an io.Reader). Converting between the two is not easy. The trivial conversion is to load the response into a bytes.Buffer and make a ReadSeeker from that... but that requires loading the whole response into memory which will break streaming, and convert this proxy to a store-and-forward design. Then, I thought I could just implement the seek method to discard bytes up to the seek offset, and hope that http.ServeContent will never try to "rewind" the stream and seek to an earlier offset. However, I'm pretty sure it does exactly that, because of this line from the docs linked above:
The content's Seek method must work: ServeContent uses a seek to the end of the content to determine its size.

So, even with a "fast-forward" seeker, ServeContent would force it to read all bytes just to get the size :( Then, it's going to have to seek back to offset=0 (or the first byte of the range(s)). So the ReadSeeker conversion has to rewind. Therefore, this will only work if we load all of the response bytes into memory before serving any.
We might be able to circumvent this by decoupling the 1:1 FE:BE request model I have in the proxy, and do multiple BE requests, like one for each seek, but I think this would lead to balooning ops cost and possibly egress fees from overread/terminated reads. It'd also probably be slow.
For what it's worth, I gave this an evening's effort, seen in this branch. Unfortunately it doesn't work, and I'm fairly sure it's precisely because ServeContent wants to rewind the seeker. Beyond that, I also noted some undefined behaviors if one uses Ranges with filter pipelines that change body contents.
I think instead of getting all the goodies of http.ServeContent (which are unfortunately not worth the store-and-forward cost), we could implement support for the Range header directly, which should make Safari happier. I know it likes to send Range headers even for full-size requests sometimes.

Thank you for working in your busy schedule.
It's a pity that we can't include the seek feature.
I understand that the seek function is not suitable for gcs-proxy-cloud-run.
I close this issue.
Thank you.

authors: ToMGitHubN domZippilli

repo: domZippilli/gcs-proxy-cloud-run


text:
Swashbuckle does not work with ASP .Net core 3.1

I followed this tutorial here (https://docs.microsoft.com/en-us/aspnet/core/tutorials/getting-started-with-swashbuckle?view=aspnetcore-3.1&tabs=visual-studio) and this is the error I'm getting after I run the application:

I'm working with ASP .Net Core 3.1, Swashbuckle.AspNetCore 5.0.0 and Microsoft.OpenApi 1.1.4.

I see, but that did not help - clean, rebuild did not help. manually removed all "bin" and "obj" folders but still nothing helped me. This issue happened after upgrading your package from 5.0.0-rc4 to 5.0.0

Same here! After I upgraded from 5.0.0-rc4 to 5.0.0 I started getting the same error. At the end I downgraded back to 5.0.0-rc4 and it works now.

@TonyTroeff or @tautvydasversockas - obviously I can't repro your issue, otherwise my entire integration test suite would be failing. As I can't do much without a local repro, perhaps one of you could take a few mins to create a minimal application from scratch that repro's the issue and then post it to Github where I can pull it down and take a look?

@domaindrivendev and @TonyTroeff - I think I found the issue.
My nuget packages before swagger upgrade:

Swashbuckle.AspNetCore - Version="5.0.0-rc4"
Swashbuckle.AspNetCore.Swagger - Version="5.0.0-rc4"
Swashbuckle.AspNetCore.SwaggerUI - Version="5.0.0-rc4"
MicroElements.Swashbuckle.FluentValidation - Version="3.0.0-rc.2"

I upgraded first three of them to version 5.0.0 and the swagger started throwing errors.
However, while debugging I realised that MicroElements.Swashbuckle.FluentValidation nuget has newer version 3.0.0-rc.5. I upgraded MicroElements.Swashbuckle.FluentValidation to version 3.0.0-rc.5 and the issue seems to be gone.
All in all, it seems that MicroElements.Swashbuckle.FluentValidation nuget version 3.0.0-rc.2 doesn't work very well with other version 5.0.0 swagger nuget packages (at least one of the first 3).
I think this issue can be closed :)


text:
Check sequential tests with identical conditions

Detect code like the following:
if x == 0 {
	println(x)
}
if x == 0 {
	println(x + 1)
}

and suggest merging the two ifs into one, or fixing the conditionals.
Do not flag instances where the first if reassigns the values of any variables involved in the condition. For simplicity restrict to conditionals that use variables, constants and built-ins only.

Test cases:
func fn1(x int) {
	if x == 0 {
		println(x)
	}
	if x == 0 { // MATCH
		println(x + 1)
	}
}

func fn2(x int) {
	if x == 0 {
		println(x)
	}
	println("divider")
	if x == 0 {
		println(x + 1)
	}
}

func fn3(x int) {
	if x == 0 {
		x = gen()
	}
	if x == 0 {
		println(x + 1)
	}
}

func gen() int { return 0 }

func fn4(x int) {
	if x > gen() {
		println(x)
	}
	if x > gen() {
		println(x)
	}
}

repo: dominikh/go-staticcheck


text:
Python dependency

Hi!
At present the user is required to manually install the domino_data Python package. I have added this to the .onLoad() function so that the domino_data Python package is installed during the installation of DominoDataR.
I have tested these changes in a fresh RStudio workspace on Domino Data Lab.
This MR also contains commits from https://github.com/dominodatalab/r-domino-data/pull/2. Please resolve that first before considering this.
Thanks, Andrew.

This is excellent, although I would place the code inside a dedicated function (DominoDataR::setup() perhaps?) rather than doing so much inside onLoad
I also found out over the weekend that it's possible to do this on installation instead of onLoad.
https://cran.r-project.org/doc/manuals/R-exts.html#Configure-and-cleanup
Here's an example of a configure file that does some setup during installation but only if not inside a CI/CD environment: https://github.com/swarm-lab/Rvision/blob/master/configure
I think this may be a good option. The configure script can call the setup() function.

@ddl-gabrielhaim and @daattali I have updated the PR.

Now uses configure script to installed Python libraries at install time (thanks to @daattali for the suggestion).
Still uses .onLoad() to ensure that the correct Python executable is chose by {reticulate}.

@ddl-gabrielhaim could you please review these changes. If you're happy then would be great to merge this in today.

I've added pre-commit. It, in turn, has fixed all of the files without \n at the end.
Very happy to set up the CI. Would be good to have some unit tests too, which could also be triggered via CI.
Moved the scripts/ folder under inst/.
Factored that code out into an exported py_install() function.

@daattali is there anything else?

Cool I've actually never used commit hooks before
The function name py_install() should probably be changed to anything else, just so that it's not overwriting reticulate::py_install. If you load both reticulate and this package, then py_install() would refer to a different function depending on which one you loaded first.
Tests would always be welcomed but even without tests the first step is to just run usethis::use_github_action_check_standard() in order to make sure the package builds and passes basic smoke tests. (Although I'd do that as a separate PR because it really has nothing to do with the python dependency)

Hi @daattali,

I have renamed the py_install() function. The original name was chosen because this is what you stipulated here.
I have added the framework for GitHub actions and created a separate merge request. I agree that some tests would be good. But could we just focus on getting this chunk of work merged and then move on to these other things?

Thanks, Andrew.

I was stuck on this for a few days because I wasn't able to get the package to clearnly install always, and I found the issue and now it's fixed https://github.com/apache/arrow/pull/14744
Thanks for all the help in getting this pacakge to install cleanly, it does seem to work now 🥳
To answer your two comments:

I have renamed the py_install() function. The original name was chosen because this is what you stipulated here.

Are you sure you renamed it in this branch? I still see py_install() defined and used. Also, what I meant by the earlier comment was that the call to py_install() -- referring to reticulate::py_install() -- should be done in a function that's exported, so that this setup step can be done manually at any time. For example, if the configure script did not run or succeed for some reason, it'd be good to have a sort of "setup" function that I could run

could we just focus on getting this chunk of work merged and then move on to these other things

Yep I agree completely, that's exactly what I meant in my comment -- that tests are great but those can come later, even without tests it's still useful to have a GitHub Action that builds the package just to make sure there are no errors!
I also agree with doing that in a separate PR. In a similar vein, I think half the files in this PR should be done separately and removed from this PR to keep the git history clean.

@ddl-gabrielhaim I have resolved the merge conflict. Would you mind please merging this today? :pray: Thanks!

It looks like one of the commits you intended to include here was in a different branch https://github.com/datawookie/DominoDataR/commit/227029f9de130ee80906e3d504710f84158f5aa7 and the precommit hook and lintr shouldn't be bundled in with this PR
Might be best to copy over the changes into a new PR because the commits here are getting messy and it's going to cause a bit of a mess in the history

I also just noticed that in that misplaced commit, the call to py_install() from inside python-setup.R wasn't updated to the new function name

It has now. See 8464a1284200161cd09f2559b3d4974ce73b16f5.

🎉  @ddl-gabrielhaim sorry for the huge convo, this should be ready

@ddl-gabrielhaim can we please merge this? Thanks.

@datawookie tests are failing beause the py_domino_data_install() is not documented. Can you add documentation to it and run roxygen? I tried doing that myself but because this PR is coming from your git repo and not from a branch on this repository, I'm not sure how to do that

Sorted.

It's strange all these PRs keep being dirtied with merges from other commits, do you know what's causing that? Something in this workflow isn't good and might be worth spending the time to understand how to do cleaner PRs

Suggest merging it into branch on target repository and then rebasing against the main branch.

closing in favour of #11

authors: daattali datawookie

repo: dominodatalab/DominoDataR


text:
iOS 13: deviceorientation error for showCompass

Getting error "no device motion or orientation events will be fired until permission has been requested and granted". I think DeviceOrientationEvent.requestPermission() should be called in _activate()

Can you send a PR?

@domoritz #255

authors: domoritz sveine

repo: domoritz/leaflet-locatecontrol


text:
编译完成后运行./TensorRTYOLOV3报错

您好：
麻烦问一下，您是否出现过如下的问题呢？
看之前的Issues,我现在使用的是TensorRT 7.0 .
但是运行时报错，我查看了已经生成了onnx.trt文件
运行./TensorRTYOLOV3报错如下：

Input filename:   ../model_dump/yolov3.onnx
ONNX IR version:  0.0.3
Opset version:    7
Producer name:    NVIDIA TensorRT sample
Producer version:
Domain:
Model version:    0
Doc string:
[03/15/2020-15:32:02] [I] [TRT] Some tactics do not have sufficient workspace memory to run. Increasing workspace size may increase performance, please check verbose output.
[03/15/2020-15:33:15] [I] [TRT] Detected 1 inputs and 3 output network tensors.
jinle
buffer:0x3ea265f4
buffer:0x3ea265f8
buffer:0x3ea265fc
buffer:0x3ea26600
jinle
buffer:0x3ea265f4
buffer:0x3ea265f8
buffer:0x3ea265fc
buffer:0x3ea26600
jinle
buffer:0x3ea265f4
buffer:0x3ea265f8
buffer:0x3ea265fc
buffer:0x3ea26600
[03/15/2020-15:33:32] [W] [TRT] Current optimization profile is: 0. Please ensure there are no enqueued operations pending in this context prior to switching profiles
[03/15/2020-15:33:32] [W] [TRT] Current optimization profile is: 0. Please ensure there are no enqueued operations pending in this context prior to switching profiles
[03/15/2020-15:33:32] [E] [TRT] ../rtSafe/safeRuntime.cpp (25) - Cuda Error in allocate: 2 (out of memory)
[03/15/2020-15:33:32] [E] [TRT] FAILED_ALLOCATION: std::exception
Segmentation fault (core dumped)

你的电脑显存不够使吧，out of memory。

你的电脑显存不够使吧，out of memory。

看报错像，但是我是1080TI,11G的显存。
并且程序运行了。生成了onnx.trt文件 文件
执行trtnet.GetEngine();时报的错
执行trtnet.doDetect(data.data(),0, -1);推理时中断的

你可以自己打断点调试一下吗？详细定位一下在哪一行给跪了。。

你可以自己打断点调试一下吗？详细定位一下在哪一行给跪了。。

3q,我明天自己调试一下，我暂时在调试其他程序。有什么问题在交流，谢谢！

你可以自己打断点调试一下吗？详细定位一下在哪一行给跪了。。

3q,我明天自己调试一下，我暂时在调试其他程序。有什么问题在交流，谢谢！

我也遇到了同样的问题，trt文件生成都没有问题，执行视频文件推理的时候报这个错误，然后中断了，请问你找到原因了吗

请问您找到原因了吗？我也是这样的，但不像是内存简单益处。


text:
Lieu relatif à 2 autres lieux

Le scénario suivant ne fonctionne pas alors qu’il devrait être supporté d’après la documentation:
Le salon est un lieu. Le couloir est un lieu. La cuisine est un lieu au sud du salon et au nord du couloir.

La formulation prévue dans la documentation fonctionne:
La falaise se trouve à l'est de la forêt, en haut de la crique et à l'ouest de la plage.

repo: donjonfi/donjon


text:
Investigate reports of compatibility issues with aframe-react

Have heard from a couple of people that the combination isn't working for them. Need to investigate why that is. Couple thoughts up front:

Perhaps requirement of calling registerAll() isn't apparent.
Perhaps default react build puts components at the end of <body />, where it's too late for them to register.

@donmccurdy to add to this ticket- most of what I have tried so far from your collection has worked with aframe-react however I am running into an issue with the json-loader -- I exported a model from blender as both .obj and .json (json corresponding to THREE's json standards)- I could load it in fine as a .obj but not a .json -- console error is:
VM3592:1 Uncaught SyntaxError: Unexpected token o in JSON at position 0
    at JSON.parse (<anonymous>)

Chrome 59.0.3071.115 / MacOS 10.12.6

Seems like you've isolated the issue now – just a heads up to say that I'm using the master branch version and the components are properly registering for me with aframe-react now that they're being registered inline.  👍

Thanks @benjaminleonard that's good to know! Anyway yes, things will be registered inline with the next release. 😅

authors: benjaminleonard donmccurdy jlieb10

repo: donmccurdy/aframe-extras


text:
Physics not active on new components

I'm surely doing something wrong here, but here is a super basic example of what I'm trying to do (real implementation is in aframe-react).
# html snippet
<a-scene id="myscene" physics="debug: true">

</a-scene>

From console in browser:
var box = document.createElement('a-box')
box.setAttribute('dynamic-body', '');
document.getElementById('myscene').appendChild(box)

The box is appended with the proper dynamic-body attribute, but it acts as though it is a normal entity with no physics attached.
Do I need to create a custom component in order for this to work properly?

Hi @thenayr — your code looks OK to me. Here's a similar example of my own, which does work. A common issue is getting the order of scripts right. Generally, you'll need:
<head>
  ...
  <!-- aframe.js -->
  <!-- aframe-physics-system.js and any other scripts registering components -->
</head>
<body>
...
<a-scene> ... </a-scene>
<script>
document.querySelector('a-scene').addEventListener('render-target-loaded', function () {
  // any code that appends things to the scene
});
</script>
</body>

Code that appends to the scene can also live be put inside a component (in which case it should be included before the scene, as shown here.

Thanks.
Looks like the key here was no setting the attribute dynamic-body prior to appending the element:
# Doesn't work
var box = document.createElement('a-box')
box.setAttribute('dynamic-body', '');
document.getElementById('myscene').appendChild(box)

# Does work
var box = document.createElement('a-box')
document.getElementById('myscene').appendChild(box)
box.setAttribute('dynamic-body', '');

Here is my React implementation (full disclosure, this code is probably gross):
import React from 'react';
import ReactDom from 'react-dom';
import {Entity} from 'aframe-react';

class Pod extends React.Component {

    constructor(props) {
        super(props);
        this.state = {
            name: props.name,
            color: props.color
        }
    }

    componentDidMount() {
        ReactDom.findDOMNode(this).setAttribute('dynamic-body', '');
    }

    render() {
        return(
            <Entity
            id={`${this.state.name}`}
            key={`${this.state.name}`}
            geometry={{ primitive: 'box' }}
            shape="box"
            material={`color: ${this.state.color}; metalness:0.7`} >
                <Entity light={{type: 'point', color: '#63C7B2', intensity: '0.2'}} position="0 0 0" />
            </Entity>
        )
    }
}

export default Pod;

Possibly related to: https://github.com/ngokevin/aframe-react/pull/43

Not sure about react (some separate issues opened about that) but AFAIK physics is working ok with new entities now.

authors: donmccurdy jesstelford thenayr

repo: donmccurdy/aframe-physics-system


text:
Upgraded to latest version of Kotlin (M12) and Dropwizard (0.8.1).

I could only get HelloWorldConfiguration working with Jackson by providing an empty default constructor and an annotated JsonCreator constructor. It might be that my Kotlin-fu is just too weak...

Thanks @snorbi07, I'll look through this today!

@snorbi07 if you want to make the change to the HelloWorldConfiguration, I'd be happy to merge in your PR.  Cheers!

Sure, I'll make the change this evening.

That's great.  Thanks again for your pull request @snorbi07!

My pleasure! Thanks for providing a starting point!

Sorry @snorbi07, I didn't see the notification that the PR was updated.  Merged!

Np. Thanks for the merge!

repo: doomspork/kotlin-dropwizard


text:
When I attempt to make multiple requests at once I get a lot of PageErrors (parallel or sequential) even on valid items

When I do these one at a time they all resolve with a page, when I do more than ten at a time they start to throw pageerrors.  I made a little code sample that perfectly illustrates the issue:
const wiki = require('wikipedia');

const subjects = [ "University of Washington", "USC Gould School of Law", "Watergate", "Supreme Court", "Justice Clarence Thomas", "Harlan Crow", "resignation", "impeachment", "public trust", "code of ethics", "University of Washington", "USC Gould School of Law", "Watergate", "Supreme Court", "Justice Clarence Thomas", "Harlan Crow", "resignation", "impeachment", "public trust", "code of ethics" ];

async function GetWikiSummary(subject) {
    let result = {};

	try {
        result.subject = subject;
		const page = await wiki.page(subject);
        result.canonicalurl = page.canonicalurl;
	} catch (error) {
        result.error = error;
	}

    return result;
}

async function getWikiSummaries(subjects) {
    const results = [];

    for (const subject of subjects) {
      try {
        const summary = await GetWikiSummary(subject);
        results.push(summary);
      } catch (error) {
        results.push({ subject });
      }
    }

    return results;
}

console.log("Starting");

(async () => {
    const converted = await getWikiSummaries(subjects);
    //const converted = await GetWikiSummary('impeachment');
    console.log(JSON.stringify(converted, null, 2));
})();

console.log("Done");

the list is actually duplicated items to show that the first 10 resolve and the last 10 (even though they are the same) will throw page errors.  If I have a lost of 20 items what is the recommended way to get 20?
the result of the above code looks like this:
Done
[
  {
    "subject": "University of Washington",
    "canonicalurl": "https://en.wikipedia.org/wiki/University_of_Washington"
  },
  {
    "subject": "USC Gould School of Law",
    "canonicalurl": "https://en.wikipedia.org/wiki/USC_Gould_School_of_Law"
  },
  {
    "subject": "Watergate",
    "canonicalurl": "https://en.wikipedia.org/wiki/Watergate_scandal"
  },
  {
    "subject": "Supreme Court",
    "canonicalurl": "https://en.wikipedia.org/wiki/Supreme_court"
  },
  {
    "subject": "Justice Clarence Thomas",
    "canonicalurl": "https://en.wikipedia.org/wiki/Clarence_Thomas"
  },
  {
    "subject": "Harlan Crow",
    "canonicalurl": "https://en.wikipedia.org/wiki/Harlan_Crow"
  },
  {
    "subject": "resignation",
    "canonicalurl": "https://en.wikipedia.org/wiki/Resignation"
  },
  {
    "subject": "impeachment",
    "canonicalurl": "https://en.wikipedia.org/wiki/Impeachment"
  },
  {
    "subject": "public trust",
    "canonicalurl": "https://en.wikipedia.org/wiki/Public_trust"
  },
  {
    "subject": "code of ethics",
    "canonicalurl": "https://en.wikipedia.org/wiki/Ethical_code"
  },
  {
    "subject": "University of Washington",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "USC Gould School of Law",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "Watergate",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "Supreme Court",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "Justice Clarence Thomas",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "Harlan Crow",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "resignation",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "impeachment",
    "error": {
      "name": "pageError"
    }
  },
  {
    "subject": "public trust",
    "canonicalurl": "https://en.wikipedia.org/wiki/Public_trust"
  },
  {
    "subject": "code of ethics",
    "error": {
      "name": "pageError"
    }
  }
]

Thanks for the help!

As per https://www.mediawiki.org/wiki/API:REST_API#Request_limit - I can see that wikipedia recommends waiting for an API to finish before actually calling another one. It is interesting if we can figure out exactly what this limit is and document it - @contractorwolf
Changing the wiki as per #50, might improve the limits as you can keep your own custom user agent which may be helpful in the long run.

authors: contractorwolf dopecodez

repo: dopecodez/Wikipedia