documenting a metaprogrammed superclass

class Relation < ROM::Relation[:sql]
end

This inherits from a dynamically created class. Yard complains about it like this:
[warn]: in YARD::Handlers::Ruby::ClassHandler: Undocumentable superclass (class was added without superclass)
        in file 'lib/mygem/engines/modules/database/sql/acl.rb':18:

        18: class Relation < ROM::Relation[:sql]

I tried using @!parse before and after, like # @!parse class Relation < ROM::Relation, which results in syntax errors, ...
How to do this properly?

OS: [Enter operating system / version here] Ubuntu 22.04
Ruby version (ruby -v): ruby 3.2.0 (2022-12-25 revision a528908271) [x86_64-linux]
YARD version (yard -v): yard 0.9.28

First a technical note here: if you are using the @!parse directive, you must provide valid Ruby code-- in this case, you are missing an end token in your class declaration:
# @!parse class Relation < ROM::Relation; end

That said, this won't stop the warning because, in a way, you are already addressing the warning properly, and this is in many senses expected behavior even though it might seem surprising.
The @!parse directive is orthogonal to any warnings YARD may generate. YARD is warning you that this specific line of code is undocumentable. There is no way to know that your directive is "correcting" the warning, or that you are doing it correctly (more on this below). By the same token, even if the directive was declared correctly, it does not take away from the fact that this line of code will forever remain unparseable by YARD, which is what it is warning you about.
It's worth noting that this is a warning, and if you know about it and have no further actions to take, you can safely ignore it. YARD will show the parent class in the way you've declared it in the parse directive (if done properly).
The underlying more interesting part here is that using ROM::Relation isn't technically correct:
irb(main):003:0> require 'rom-sql'
=> true
irb(main):004:0> ROM::Relation[:sql]
=> ROM::SQL::Relation

Note that ROM::SQL::Relation is not the same ROM::Relation class you are using, and although they may offer the exact same API surface area, it is not fully correct to use that parse line.
This brings me to the crux of the issue, and why YARD warns you about these things: this static tool cannot accurately parse a superclass when the superclass is declared dynamically. For that reason, YARD will always warn about this situation so that you can attentively address it.
In your case, the correct way to address the issue, without warnings would be to avoid dynamism and declare the class using the correct superclass from the start:
class Relation < ROM::SQL::Relation
end

This would both correct the warning as well as your API documentation.


Bug report tool not generating the zip file on desktop

Microsoft PowerToys version
0.43.0
Running as admin

[X] Yes

Area(s) with issue?
General
Steps to reproduce

Right-click on the tray icon and click Report Bug.
The message box "Bug report .zip file has been created on your desktop" appears, the OK button clicked.

✔ Expected Behavior
The bug report .zip file should be created on the desktop.
❌ Actual Behavior
There is no file created on the desktop. (Shell location: shell:desktop)
Other Software
Windows version: Windows 11 build 22000.120

@franky920920 thanks for reporting this! Can you verify that this only happens with v0.43.0? If you re-install v0.41.4, is the issue still there?

@dedavis6797 Nope. v0.41.4 get the same issue. Screenshot attached.
Update: My Windows has update to Windows 11 build 22000.132. The issue still occurred on both v0.43.0 and 0.41.4

I've just tested it out on Windows 11 and it generated the zip file. It's named something like PowerToysReport_{timestamp}.zip.
Might this have something to do with the Unicode path? Can you please share the full path for your Desktop?

@jaimecbernardo Sure, this is my full desktop path:
C:\Users\frank\OneDrive\桌面

I believe it is a known issue. We created an issue https://github.com/kuba--/zip/issues/156 to address it.
@franky920920

Go to C:\Program Files\PowerToys\Tools
Run BugReportTool.exe
Post a screenshot of the terminal

@mykhailopylyp Here you go!

@franky920920
Thank you for following up! As a workaround try the following steps

Go to C:\Program Files\PowerToys\Tools
Run BugReportTool.exe {a path where bug report should be generated}. Make sure the passed path contains only ASCII characters(try Latin letters)
Check if a bug report is generated in the passed folder

Let us know if it works for you

@mykhailopylyp Yes. This workaround works! See screenshot below:

Blocked by https://github.com/kuba--/zip/issues/156

Fixed in 0.47

I was having the problem with the Bug reporter tool not running in v0.49.1. Bug ID #14270 is mine.
I tried running the tool manually from the installation folders as recommended above, and it works correctly.
Note-
On this machine I have PT installed in C:\Program Files\Microsoft\PowerToys not the default location. Could this be the cause of the UI failing to find + execute the bug reporter?  (i.e. a default pathname hard coded somewhere, and the real PT install location is not being pushed onto the PATH at run time?

I still have this same problem. It works if I run the actual tool in the installation folder, but not if I use the icon in the system tray menu.


Jump back to a previous page depending on how a question is answered

Are you requesting a feature, reporting a bug or ask a question?
Asking a question.
What is the current behavior?
In my current survey, it's a linear survey where each question leads to the next. The onComplete results in one of two onComplete screens depending on how the user answers the survey questions.
What is the expected behavior?
I added a question at the end of my survey that tells the user how they answered a specific question. Is it possible to jump back to another page of the survey if the user made a mistake and wants to go back?
This is what I have tried so far:
    survey.onValueChanged.add(function (sender, options){
        if (options.name === "endOfSurveyCheck" && options.value === "No"){
	        survey.currentPageNo = 1;
        }
    });

@AndehWong, hello! It is possible, please try survey.currentPageNo = n And you can find it in the doc: https://surveyjs.io/Documentation/Library/?id=surveymodel (please type "currentPageNo" in search field)

@AndehWong, hello! Could you please check this example https://plnkr.co/edit/5zYgb5Rc1jfAyA5U7MgL?p=preview. Will it help you?


Runtime error due to forgotten name normalization, probably in tail call optimization

While this program works:
import Html

go n = if n > 0 then go (n-1) else 1

main = Html.text (toString (go 5))

this one doesn't:
import Html

go n' = if n' > 0 then go (n'-1) else 1

main = Html.text (toString (go 5))

(Check at http://elm-lang.org/try)
It appears that somewhere during tail call optimization, the name n' is not properly escaped, so the ' is interpreted as start of a string literal.
@evancz or @JoeyEremondi, does this ring a bell with you?

Can you paste the relevant JS in here as well?
Should be a pretty easy fix.

Elm.Main = Elm.Main || {};
Elm.Main.make = function (_elm) {
   "use strict";
   _elm.Main = _elm.Main || {};
   if (_elm.Main.values) return _elm.Main.values;
   var _U = Elm.Native.Utils.make(_elm),
   $Basics = Elm.Basics.make(_elm),
   $Debug = Elm.Debug.make(_elm),
   $Html = Elm.Html.make(_elm),
   $List = Elm.List.make(_elm),
   $Maybe = Elm.Maybe.make(_elm),
   $Result = Elm.Result.make(_elm),
   $Signal = Elm.Signal.make(_elm);
   var _op = {};
   var go = function (n$) {
      go: while (true) if (_U.cmp(n$,0) > 0) {
            var _v0 = n$ - 1;
            n' = _v0;
            continue go;
         } else return 1;
   };
   var main = $Html.text($Basics.toString(go(5)));
   return _elm.Main.values = {_op: _op,go: go,main: main};
};

Most likely, one or more calls of Generate.JavaScript.Variable.safe need to be added somewhere in the tail call optimization code.

Please add an expected js test for it and send a PR. It will make fixing it
much quicker.
On Wednesday, January 6, 2016, Janis Voigtländer<EMAIL_ADDRESS>wrote:

Most likely, one or more calls of Generate.JavaScript.Variable.safe
https://github.com/elm-lang/elm-compiler/blob/2521c5e9c03c89354bb0773bdd0bfb3e197b9d32/src/Generate/JavaScript/Variable.hs#L87-L92
need to be added somewhere in the tail call optimization code.
—
Reply to this email directly or view it on GitHub
https://github.com/elm-lang/elm-compiler/issues/1226#issuecomment-169284077
.

Sorry, but I have to ask: Is there any evidence that bugs are fixed sooner if tests exist for them?

https://github.com/elm-lang/elm-compiler/pull/1250

@jvoigtlaender No there is not. But I believe it's better to break the task into smaller pieces and involve more people. Otherwise Evan gets stuck doing everything.

Yes, yes. I was being a bit snarky, sorry about that. I added a test case above.
About breaking the task into smaller pieces, though: That means that there are now two tickets vying for Evan's attention, namely the bug report ticket and the test case PR. So that might actually not help at all with speeding things up. See, for example, the test case PR https://github.com/elm-lang/elm-compiler/pull/1201 for another bug. That PR remains unmerged, even though it is "just" a test case. I wouldn't be surprised if at some point the underlying bug https://github.com/elm-lang/elm-compiler/issues/1200 gets fixed sooner than the test case is merged. Some procedure is not working here, I'm afraid.

Maybe this is turning into too much meta, but:

But I believe it's better to break the task into smaller pieces and involve more people. Otherwise Evan gets stuck doing everything.

My impression by now is that involving more people in submitting pull requests is not enough, as long as not more people are getting involved in merging pull requests as well.

Okay, I have found the place where the normalization was missing. Fixed in https://github.com/elm-lang/elm-compiler/pull/1251.

You are right about too many issues. Now that you have a fix, you should merge your fix with your test case and close this bug. Then there will be only one PR for Evan to review.


Better docs around the three graph databases.

This is a note to improve the documentation around the factSystem, botFacts and userFacts. How each are used and how to get information in and out.

Work in progress, but it has started.


Add exemple proxy mistake whith nginx sitting behind an ELB

closes #970
Signed-off-by: Louis Kottmann<EMAIL_ADDRESS>

@LouisKottmann Thank you for the contribution. I have a little feedback in line. I hope it is not too much to address.
@dmp42 This document is nginx only. Is there a place where we should add this for other deployments? Load Balancing Considerations might be the right spot for a blurb about this problem.

@stevvooe I think I would like to have a separate load-balancing-considerations document (a "recipe"), with the existing content of the section you pointed out, plus the additional work from @LouisKottmann
Reasoning is: I would like to keep deploying.md to a digestable, short-enough size, pointing to more specific use-cases (load-balancing / high avail being an advanced topic).
wdyt?

@dmp42 "Load Balancing Considerations" may apply to any recipe. We just need to add a short blurb in there that explains that only one load balancer, ideally the first, needs to set the 'X-Forwarded` header or it won't work correctly. We can have the specifics in the individual recipes.

@LouisKottmann Ping! Could you add the clarifications about ELB having to be in HTTP/HTTPS mode? We'll take care of the other aspects elsewhere.

@stevvooe  Ok sure, I'll do it at lunch break

@stevvooe done

LGTM


Just trying to run the following header interactively (F9) and it is not working.

Description
Just trying to run the following header interactively (F9) and it is not working:
import os
import time
import pickle
import argparse
import sys
import shutil
from os.path import dirname, abspath, realpath
from PIL import Image as Img
from wand.image import Image
What is the expected output? What do you see instead?
Please provide any additional information below
File "/home/ocolluphid/anaconda3/lib/python3.6/site-packages/spyder/app/mainwindow.py", line 2473, in execute_in_external_console
console.execute_code(lines)
File "/home/ocolluphid/anaconda3/lib/python3.6/site-packages/spyder/plugins/ipythonconsole.py", line 970, in execute_code
sw.execute(to_text_string(lines))
File "/home/ocolluphid/anaconda3/lib/python3.6/site-packages/qtconsole/history_console_widget.py", line 47, in execute
source, hidden, interactive)
File "/home/ocolluphid/anaconda3/lib/python3.6/site-packages/qtconsole/console_widget.py", line 632, in execute
self._execute(source, hidden)
File "/home/ocolluphid/anaconda3/lib/python3.6/site-packages/qtconsole/frontend_widget.py", line 294, in _execute
msg_id = self.kernel_client.execute(source, hidden)
AttributeError: 'NoneType' object has no attribute 'execute'
Version and main components

Spyder Version: 3.2.5
Python Version: 3.6.4
Qt Versions: 5.9.6, PyQt5 5.9.2 on Linux

Dependencies
pyflakes >=0.6.0 :  1.6.0 (OK)
pycodestyle >=2.3:  2.3.1 (OK)
pygments >=2.0   :  2.2.0 (OK)
pandas >=0.13.1  :  0.22.0 (OK)
numpy >=1.7      :  1.13.1 (OK)
sphinx >=0.6.6   :  1.6.3 (OK)
rope >=0.9.4     :  0.10.7 (OK)
jedi >=0.9.0     :  0.11.0 (OK)
psutil >=0.3     :  5.4.1 (OK)
nbconvert >=4.0  :  5.3.1 (OK)
sympy >=0.7.3    :  1.1.1 (OK)
cython >=0.21    :  0.27.3 (OK)
qtconsole >=4.2.0:  4.3.1 (OK)
IPython >=4.0    :  6.2.1 (OK)
pylint >=0.25    :  1.7.4 (OK)

This is fixed in our latest version (3.3.1). Please update by opening the Anaconda Prompt and running there
conda update spyder


app.dockerfile and worker.dockerfile, missing packages for arm-based systems (I think)

First of all: I'm a noob, yet sometimes beeing lucky utilizing search engines

**So, what I observed:

On a raspberry pi 4 (Linux raspberrypi 5.4.51-v7l+, Docker version 19.03.12, build 48a6621)
when trying the git clone https://github.com/ciur/papermerge papermerge-proj; cd papermerge-proj/docker/1.4;
docker-compose up -d
after a while I get "Error: Please make sure the libxml2 and libxslt development packages are installed."

**What I did to make it work

Installing the missing dependencys by hand led to other missing pieces
..and some language specifics when the containers complained in the logs
I ended up adding these lines to the "apt-get install" section in app.dockerfile:

libxml2-dev
libxslt-dev
libpq-dev
libffi-dev
python3-dev
libssl-dev
tesseract-ocr
tesseract-ocr-deu
tesseract-ocr-eng \

... and those to the worker.dockerfile:

libxml2-dev
libxslt-dev
libffi-dev
libssl-dev
libpq-dev \

and then it seemed to work (as far as I can tell)

**Remark:

I got the impression, that with those packages added the worker- and the app-image are nearly the same only difference to be startup scripts.
But please, again...take into consideration: I am a noob.
And I started this debugging approach a while ago in papermerge version 1.4
and I now simply re-did the "add above lines" after docker-compuse up did not work on the 1.5rc ...which still worked

Hope, I didn't waste your time.
Regards and thanks a lot for your work.

hi @n00B17!  Thank you for your report! I am really happy that you managed to run Papermerge on RaspberryPi!
At this point I am not sure why those packages were missing as I am not aware of all differences between ubuntu based linux distro and the one you run on RaspberryPI.
I will investigate.

Em primeiro lugar: sou um novato, mas às vezes tenho sorte ao utilizar mecanismos de pesquisa

** Então, o que observei:

Em um raspberry pi 4 (Linux raspberrypi 5.4.51-v7l +, Docker versão 19.03.12, compilação 48a6621)
ao tentar o clone git https://github.com/ciur/papermerge papermerge-proj; cd papermerge-proj / docker / 1.4;
docker-compose up -d
depois de um tempo, recebo "Erro: certifique-se de que os pacotes de desenvolvimento libxml2 e libxslt estejam instalados."

** O que eu fiz para fazer funcionar

A instalação manual das dependências que faltavam levou a outras peças que faltavam
..e algumas especificidades de linguagem quando os contêineres reclamaram nos logs
Acabei adicionando essas linhas à seção "apt-get install" no app.dockerfile:

libxml2-dev
libxslt-dev
libpq-dev
libffi-dev
python3-dev
libssl-dev
tesseract-ocr
tesseract-ocr-deu
tesseract-ocr-eng \

... e aqueles para o worker.dockerfile:

libxml2-dev
libxslt-dev
libffi-dev
libssl-dev
libpq-dev \

e então pareceu funcionar (pelo que eu posso dizer)

**Observação:

Tive a impressão de que, com esses pacotes adicionados, a imagem do trabalhador e do aplicativo são quase a mesma única diferença para os scripts de inicialização.
Mas, por favor, novamente ... leve em consideração: eu sou um novato.
E eu comecei essa abordagem de depuração um tempo atrás, no papermerge versão 1.4
e agora simplesmente refiz o "add above lines" depois que docker-compuse up não funcionou no 1.5rc ... que ainda funcionou

Hope, não perdi seu tempo.
Atenciosamente e muito obrigado pelo seu trabalho.

First of all: I'm a noob, yet sometimes beeing lucky utilizing search engines

**So, what I observed:

On a raspberry pi 4 (Linux raspberrypi 5.4.51-v7l+, Docker version 19.03.12, build 48a6621)
when trying the git clone https://github.com/ciur/papermerge papermerge-proj; cd papermerge-proj/docker/1.4;
docker-compose up -d
after a while I get "Error: Please make sure the libxml2 and libxslt development packages are installed."

**What I did to make it work

Installing the missing dependencys by hand led to other missing pieces
..and some language specifics when the containers complained in the logs
I ended up adding these lines to the "apt-get install" section in app.dockerfile:

libxml2-dev
libxslt-dev
libpq-dev
libffi-dev
python3-dev
libssl-dev
tesseract-ocr
tesseract-ocr-deu
tesseract-ocr-eng \

... and those to the worker.dockerfile:

libxml2-dev
libxslt-dev
libffi-dev
libssl-dev
libpq-dev \

and then it seemed to work (as far as I can tell)

**Remark:

I got the impression, that with those packages added the worker- and the app-image are nearly the same only difference to be startup scripts.
But please, again...take into consideration: I am a noob.
And I started this debugging approach a while ago in papermerge version 1.4
and I now simply re-did the "add above lines" after docker-compuse up did not work on the 1.5rc ...which still worked

Hope, I didn't waste your time.
Regards and thanks a lot for your work.

Hi.
Can you post the complete docker-compose code?
I am trying to install it in an rpi too. I have little knowledge of docker and docker-compose.
I appreciate any help.

It is actually not the docker-compose part that I changed.
Trying to describe in detail:
In the commandline I did:
git clone git@github.com:ciur/papermerge.git
cd docker/1.4/

In that directory I then edited 'app.dockerfile' and 'worker.dockerfile. Mine now look like this:
app.dockerfile.txt
worker.dockerfile.txt
With those changed files it then on the comandline did
docker-compose up
...and it worked
Please, if you are a noob like me ... make sure you remove the file extension '.txt' from those files I uploaded before doing the docker-compose up
(I had to add them for the upload to this post as the github issue thingy here did not let me otherwise)
In other words, the start of my 'app.dockerfile' looks like this now...:
FROM ubuntu:20.04

LABEL maintainer="Eugen Ciur<EMAIL_ADDRESS>
ARG DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
 && apt-get install -y \
                    build-essential \
                    vim \
                    python3 \
                    python3-pip \
                    python3-venv \
                    virtualenv \
                    poppler-utils \
                    git \
                    imagemagick \
                    pdftk-java \
                    apache2 \
                    apache2-dev \
                    locales \
			libxml2-dev \     # lines I added
			libxslt-dev \     # lines I added
			libpq-dev \     # lines I added
			libffi-dev \     # lines I added
			python3-dev \     # lines I added
			libssl-dev \     # lines I added
			tesseract-ocr \     # lines I added
			tesseract-ocr-deu \     # lines I added
			tesseract-ocr-eng \     # lines I added

 && rm -rf /var/lib/apt/lists/* \
 && pip3 install --upgrade pip

#---not end of the file...but anything after this I did not touch---

...and the start of my 'worker.dockerfile' like this:
FROM ubuntu:20.04

LABEL maintainer="Eugen Ciur<EMAIL_ADDRESS>
ARG DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
 && apt-get install -y \
                    build-essential \
                    vim \
                    python3 \
                    python3-pip \
                    python3-venv \
                    virtualenv \
                    poppler-utils \
                    git \
                    imagemagick \
                    pdftk-java \
                    locales \
			 libxml2-dev \     # lines I added
			libxslt-dev \     # lines I added
			libffi-dev \     # lines I added
			libssl-dev \     # lines I added
			libpq-dev \     # lines I added

                    tesseract-ocr \
                    tesseract-ocr-deu \
                    tesseract-ocr-eng \
                    tesseract-ocr-fra \
                    tesseract-ocr-rus \
                    tesseract-ocr-ron \
                    tesseract-ocr-spa \
 && rm -rf /var/lib/apt/lists/* \
 && pip3 install --upgrade pip

#---not end of the file...but anything after this I did not touch---

Hope this isn't confusing.
Regards


Release notes for 8.0.0-beta1

@lockewritesdocs is on the docs rota this week so I've re-assigned him as reviewer. Thanks @jakelandis, @lockewritesdocs!

@elasticmachine run docs

@elasticmachine test this please


[BotBuilder-AI] Make BotBuilder AI web compatible

Fixes issue #620.
Must be merged with PR #909.
Description
Remove or replace NodeJS dependent libraries, and make the BotBuilder-AI library fully web-compatible.
Changes

Replace request-promise-native with node-fetch
@azure/cognitiveservices-luis-runtime was fixed in pr # 844
html-entities should be removed to keep parity with the .NET version. We will be creating a Pull Request with this change and more detailed information regarding this decision.
Remove request since it was unused.

Details
We searched through the library looking for any incompatible dependencies to remove.
The libraries already identified by the original issue report as ones to be removed were:
•	request-promise-native - Suggested to be replaced by node-fetch
•	azure-cognitiveservices-luis-runtime - Suggested to be replaced by @azure/cognitiveservices-luis-runtime
•	html-entities - To analyze for a replacement
request-promise-native was removed and replaced by node-fetch
html-entities was straight out removed and its removal documented at PR 909
azure-cognitiveservices-luis-runtime had been already removed by a previous commit at e6016d4226656378aa1a370e022a8755e25e3609
Furthermore, we researched the compatibility of the rest of the dependencies in BotBuilder-AI looking for some more libraries that could break compatibility with web deployment. The remaining dependencies then were:

Testing
We used the dependencies' documentation, when specified, to check which libraries were ready for web.
For a better, practical way, to test the web-compatibility of the library we set to deploy a bot to the web and make calls to the BotBuilder-AI. That would both allow us to test any changes we would make as well as the current state of compatibility of the library.
Looking at the index.ts file, several of BotBuilder-AI exports are internally-used structures; and aside from those, the two major exports are LuisRecognizer and QnAMaker. We made test calls to both in order for the bot to query these services.

As our bot we chose to use the browser echobot project (since it's a bot that can be deployed to web and run on a browser) and modify part of its code to make calls to BotBuilder-AI. We made some dummy calls at the beginning of the processActivity method, meaning the code would be triggered any time a conversation state or a message update arrived.

To check the response, we added the result to the existing echobot response

We got correct responses both querying the QnA service

and the LUIS service:

Since the library is apparently already correctly working when deployed online (after the removals specified at the top of this post) we only ended up removing request as a dependency since we found it was unused. The rest of the dependencies performed correctly when calling the library from a web bot.

Pull Request Test Coverage Report for Build #2255

5 of 5 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.005%) to 85.75%

Totals

Change from base Build #2252:
0.005%

Covered Lines:
3262

Relevant Lines:
3668

💛  - Coveralls

@stevengum Can you review + merge this in today?

@cleemullins there's some minor code cleanup and the package-lock.json for the library needs to be updated, but after those changes are in this one is good to go.
@GasparAcevedoZainSouthworks


Simplify synonyms

Checklist
Thank you for contributing to QuantumToolbox.jl! Please make sure you have finished the following tasks before opening the PR.

[x] Please read Contributing to QuantumToolbox.jl.
[x] Any code changes were done in a way that does not break public API.
[x] Appropriate tests were added and tested locally by running: make test.
[x] Any code changes should be julia formatted by running: make format.
[x] All documents (in docs/ folder) related to code changes were updated and able to build locally by running: make docs.
[x] (If necessary) the CHANGELOG.md should be updated (regarding to the code changes) and built by running: make changelog.

Request for a review after you have completed all the tasks. If you have not finished them all, you can also open a Draft Pull Request to let the others know this on-going work.
Description
As title
Related issues or PRs
closes #354

The similar code quality error is showing again, but this time is related to ssesolve (last time was sesolve)...
Do you have any idea @@?

Mmmm. Let me try a few things.

Would it be related to the c_ops ?
cause the type of c_ops seems unclear in making H_eff_evo


Cow: Watch upipayment-navy.vercel

Cow requests the watch of the watch_keyword upipayment-navy\.vercel. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

upipayment-navy\.vercel has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Dragonrage in Charcoal HQ


Traceback when trying to create an environment w/ interpreter specified by its path

Can't create an environment with the Python interpreter specified on the command-line (don't know if other options work since I only have py on my PATH).
Describe your environment

OS Type: Windows 10
Python version: 3.6.4
Pipenv version: 1.11.5

Expected result
A virtual environment is created.
Actual result
An exception was raised.
Steps to replicate
> py -3 -m pipenv --python C:\Users\brcan\AppData\Local\Programs\Python\Python36\python.exe
Creating a virtualenv for this project…
Using C:\Users\brcan\AppData\Local\Programs\Python\Python36\python.exe to create virtualenv…
Already using interpreter C:\Users\brcan\AppData\Local\Programs\Python\Python36\python.exe
Using base prefix 'C:\\Users\\brcan\\AppData\\Local\\Programs\\Python\\Python36'
New python executable in C:\Users\brcan\.virtualenvs\bunk-M_X9FcBv\Scripts\python.exe
Installing setuptools, pip, wheel...done.

Virtualenv location:
Traceback (most recent call last):
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\__main__.py", line 4, in <module>
    cli()
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\vendor\click\core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\vendor\click\core.py", line 697, in main
    rv = self.invoke(ctx)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\vendor\click\core.py", line 1043, in invoke
    return Command.invoke(self, ctx)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\vendor\click\core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\vendor\click\core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\vendor\click\decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\cli.py", line 154, in cli
    core.ensure_project(three=three, python=python, warn=True, site_packages=site_packages)
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\core.py", line 638, in ensure_project
    crayons.green(shorten_path(path_to_python))
  File "C:\Users\brcan\AppData\Local\Programs\Python\Python36\lib\site-packages\pipenv\core.py", line 698, in shorten_path
    short = os.sep.join([s[0] if len(s) > (len('2long4')) else s for s in location.split(os.sep)])
AttributeError: 'NoneType' object has no attribute 'split'

I apologize for there being so many issues with Windows — our userbase on Windows is small, so we don't get many reports.
We do test on windows, though!

P.S. Want to write a breaking test? :)

wow I haven't ever seen that one before....

No problem about the breakage; I realize I'm trailblazing here. 😄 I'm happy to keep trying and filing issues as I come across them to help out, so no hard feelings at all on my end.
As for writing the test, I will see if I can find the time but I unfortunately can't make any promises ATM (I'm still playing catch-up with stuff that backed up from our latest release of VS Code which added pipenv support 😉 ).

Just trying to @brettcannon into becoming a committer :)

You can make him a committer but that probably doesn't guarantee he'll ever commit anything :p

@techalchemy I can guarantee it makes not guarantees, just ask Nathaniel Smith about how much I have contributed to Trio after getting committer rights 😉

I think I’ve got it. The problem is not Windows-specific, but happens when you don’t have any python command available in PATH at all. Un*x systems typically always have a system-wide python, which is likely why no-one found out until now.

Aha! Nice catch, @uranusjr!

I’ll produce a pull request later (at work right now).

@kennethreitz Are you open to adding type-checking to some code paths (with something like mypy)? It would prevent some of these problems in the future.

I think that would just add maintenance burden (and I’m not personally a fan of commented mypy typing, prefer hardcoded style).
Sent from my iPhone

On Mar 8, 2018, at 8:55 PM, Tzu-ping Chung<EMAIL_ADDRESS>wrote:
@kennethreitz Are you open to adding type-checking to some code paths (with something like mypy)? It would prevent some of these problems in the future.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


Windows phone (real device) has been pass as ios iphone mobile

I have added the device.js
It works fine, however I am encountering a problem with windows phone.
Every time I test it on my test phone NOKIA Lumina 830 the device comes as: ios iphone mobile portrait
If I use chrome extension to change the user agent to Win phone, it is fine however seems to not working on the real device.
I get the browser as it should be:
Mozilla/5.0 (Mobile; Windows Phone 8.1; Android 4.0; ARM; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Lumia 830) like iPhone OS 7_0_3 Mac OS X AppleWebKit/537 (KHTML, like Gecko) Mobile Safari/537
Am I doing anything wrong?
Regards,
Paulo Branco

@paulobranco I think the "like iPhone" portion might be the issue.

could be related to #93
@paulobranco can you test with the last version (0.2.6)?


monitor_size is hardcoded

Hello, thanks for sharing this awesome project!
I noticed that in config/settings.py. The monitor size is hardcoded as:
{
     "width": 1920,
     "height": 1080,
 }

Is that intentional? I figured out that you can get the monitor size using pyautogui.size().

@outday29 It is automatically detected later when a screenshot is being captured. This value is simply a default that was added with accurate mode and should probably be removed


fix: make json fields work

I ran into a problem where a json field would return {} even though it was set (and returned in api call).
I'm new to Zod but it seems z.object({}) would only work for empty objects.
Unless there would be a way to supply a custom validator I think z.unknown (or z.any) is the best we can do.

Thanks for the feedback. I hadn't tested json fields until now in my own project so this one slipped through.
While your approach of using unknown would work, I added a new option to supply your own schema for json fields. This way we can let users decide if they want to have types (that will also be enforced) or if unknown is sufficient for their use case.
I've published v0.4.0-rc.2 in #9 with this new feature. Maybe you can try it out and let me know if it works for you. My initial tests seem promising so far.


Distinguish tapping on Done and Cancel button in SwiftUIPhotosCropView

Currently, when using SwiftUIPhotosCropView, there’s no way of telling whether the user tapped Cancel button or Done button in the Crop view because the same callback function is passed to cropViewController.handlers.didFinish and cropViewController.handlers.didCancel. There's a simple and straightforward solution for that, I implemented 2 distinct functions: onDone, which is called when user taps the Done button (passed to cropViewController.handlers.didFinish), and onCancel, which is called when user taps the Cancel button (passed to cropViewController.handlers.didCancel).

@andre0805 hi! thanks!


Intro to shipwright - Part 2

Blog post for part 2, introducing the build APIs and install
instructions.
Update links for part 1.

/lgtm


Change maven-repo names to be unique

Summary
Change maven-repo names to be unique
Please check the relevant options

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Dependency update
[x] Refactoring
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] This change requires a documentation update
[ ] This change requires execution against OCP (use run tests phrase in comment)

Checklist:

[ ] Example scenarios has been updated / added
[ ] Methods and classes used in PR scenarios are meaningful
[x] Commits are well encapsulated and follow the best practices

Thanks!


[Key Vault] Improve exception documentation in docstrings

There are two problems with KV's current documentation of exceptions in docstrings:

We add a :class: flag before exception types, which can interfere with rendering/linking in docs.
We don't provide descriptions of the conditions for an exception.

For example,
:raises: :class:`~azure.core.exceptions.HttpResponseError`

should instead be
:raises ~azure.core.exceptions.HttpResponseError: if the HTTP request fails

Closing as this has since been resolved.


Allow LogDensityProblems.logdensity to take a named tuple

Dear Team!
Some samplers such as MH want to provide LogDensityProblems.logdensity with a named tuple of parameters.
However, LogDensityProblems.logdensity only suports passing the parameters as a vector.
At the moment this is bypassed in Turing by passing the named tuple to the VarInfo, using DynamicPPL to evaluate the logp at that VarInfo and then resetting the VarInfo to its old state (see code below, also here:)
const MHLogDensityFunction{M<:Model,S<:Sampler{<:MH},V<:AbstractVarInfo} = Turing.LogDensityFunction{V,M,<:DynamicPPL.SamplingContext{<:S}}

function LogDensityProblems.logdensity(f::MHLogDensityFunction, x::NamedTuple)
    # TODO: Make this work with immutable `f.varinfo` too.
    sampler = DynamicPPL.getsampler(f)
    vi = f.varinfo

    x_old, lj_old = vi[sampler], getlogp(vi)
    set_namedtuple!(vi, x)
    vi_new = last(DynamicPPL.evaluate!!(f.model, vi, f.context))
    lj = getlogp(vi_new)

    # Reset old `vi`.
    setindex!!(vi, x_old, sampler)
    setlogp!!(vi, lj_old)

    return lj
end

Is there a better way of doing this?
All the best and thank you for your take,
Jaime

TransformVariables is the proto-typical examples of how to transform vectors (in unconstrained spaces) to NamedTuples of parameters in the (possibly) constrained space. It's also used in the LogDensityProblems docs: https://docs.julialang.org/en/v1/manual/types/#man-custom-pretty-printing
The interface of logdensity is supposed to be simple and predictable - and generally it is only guaranteed that a logdensity problem supports array-like inputs of the correct length. As in the docs, you can always make your logdensity problem a callable struct that accepts inputs of other types such as NamedTuples. To use this in a package you have to be certain though that the supported problems always accept the desired arguments.


NoSuchMethodException: org.apache.spark.ui.SparkUI.appUIAddress() on spark 2.2

build details:

notebook version : master
scala version : 2.11.8
spark version : 2.2.0
spark nightly : false
hadoop version : 2.7.2
with hive : true
with parquet : true
package type : zip

env: Windows 10, Jdk 8
error details:
Exception in thread "Thread-13" java.lang.NoSuchMethodException: org.apache.spark.ui.SparkUI.appUIAddress()
        at java.lang.Class.getMethod(Class.java:1786)
        at org.apache.spark.ui.notebook.front.gadgets.SparkMonitor$$anonfun$2.apply(SparkMonitor.scala:44)
        at org.apache.spark.ui.notebook.front.gadgets.SparkMonitor$$anonfun$2.apply(SparkMonitor.scala:43)
        at scala.Option.map(Option.scala:146)
        at org.apache.spark.ui.notebook.front.gadgets.SparkMonitor.sparkUiLink(SparkMonitor.scala:43)
        at org.apache.spark.ui.notebook.front.gadgets.SparkMonitor$$anon$1.run(SparkMonitor.scala:147)

this shouldn't prevent spark-notebook from working OK, right?
only this is logged as an error and there's no Spark UI link...?
so apparently, spark 2.2.x changed this method... will need to update
https://github.com/spark-notebook/spark-notebook/blob/a746b48b7ac376f2e8edea73e50d435640620308/modules/common/src/main/scala/notebook/front/gadgets/SparkMonitor.scala#L38-L50

you're right @vidma , thanks for your response


check hash of a whole cd/dvd in drive

I inserted a dvd in my D:\ drive I would like to know its hash

Not sure it does that currently - that's interesting.

closing due to age feel free to reopen


SERIALIZER_JSON

You have removed SERIALIZER_JSON from https://github.com/aerospike/aerospike-client-php/blob/master/doc/aerospike.md
But constant still present

Gotcha. Constant is going :skull:


Fixing some performance bottlenecks

pprofile tests
test.py
from glob import glob
from os.path import isdir
from charset_normalizer import detect

def performance_compare(size_coeff):
    if not isdir("./char-dataset"):
        print("This script require https://github.com/Ousret/char-dataset to be cloned on package root directory")
        exit(1)
    for tbt_path in sorted(glob("./char-dataset/**/*.*")):
        with open(tbt_path, "rb") as fp:
            content = fp.read() * size_coeff
        detect(content)

if __name__ == "__main__":
    performance_compare(1)

Before
pprofile --format callgrind --out cachegrind.out.original.test test.py

Time: 838.97 s.
cachegrind.out.original.zip

After commits
pprofile --format callgrind --out cachegrind.out.commits.test test.py

Time: 698.53 s.
cachegrind.out.commits.zip

line_profiler test before changes:
kernprof -lv performance.py

Total time: 3.58387 s
File: /charset_normalizer-master/charset_normalizer/md.py
Function: feed at line 140

Line #      Hits         Time  Per Hit   % Time  Line Contents
==============================================================
   140                                               @profile
   141                                               def feed(self, character: str) -> None:
<PHONE_NUMBER>    1089618.0      0.2     30.4          if (
<PHONE_NUMBER>     899525.0      0.4     25.1              character.isspace() is False  # includes \n \t \r \v
<PHONE_NUMBER>     721900.0      0.3     20.1              and character.isprintable() is False
   145     14760       4099.0      0.3      0.1              and character != "\x1A"  # Why? Its the ASCII substitute character.
   146                                                   ):
   147     14585       4963.0      0.3      0.1              self._unprintable_count += 1
<PHONE_NUMBER>     863770.0      0.3     24.1          self._character_count += 1

line_profiler test after changes:
kernprof -lv performance.py

Total time: 1.62655 s
File: /charset_normalizer-enhanced/charset_normalizer/md.py
Function: feed at line 141

Line #      Hits         Time  Per Hit   % Time  Line Contents
==============================================================
   141                                               @profile
   142                                               def feed(self, character: str) -> None:
<PHONE_NUMBER>     821098.0      0.3     50.5          if is_unprintable(character):
   144     14585       4548.0      0.3      0.3              self._unprintable_count += 1
<PHONE_NUMBER>     800900.0      0.3     49.2          self._character_count += 1

Total time: 0.008891 s
File: /charset_normalizer-enhanced/charset_normalizer/utils.py
Function: is_unprintable at line 201

Line #      Hits         Time  Per Hit   % Time  Line Contents
==============================================================
   201                                           @lru_cache(maxsize=UTF8_MAXIMAL_ALLOCATION)
   202                                           @profile
   203                                           def is_unprintable(character: str) -> bool:
   204     14995       3686.0      0.2     41.5      if (
   205      7354       2635.0      0.4     29.6          character.isspace() is False  # includes \n \t \r \v
   206      7338       2419.0      0.3     27.2          and character.isprintable() is False
   207       303         84.0      0.3      0.9          and character != "\x1A"  # Why? Its the ASCII substitute character.
   208                                                   ):
   209       302         67.0      0.2      0.8          return True

Before commits and mypyc compilation
--> Charset-Normalizer Conclusions
   --> Avg: 0.0239454577s
   --> 99th: 0.242043105s
   --> 95th: 0.130321793s
   --> 50th: 0.009998223s

After commits and mypyc compilation
--> Charset-Normalizer Conclusions
   --> Avg: 0.010750019589361701s
   --> 99th: 0.112227622s
   --> 95th: 0.054715067s
   --> 50th: 0.00445089s

Tests /bin/performance.py without dir char-dataset/None

1) size-increase = 1
python3 performance.py -s 1

Before
--> Charset-Normalizer Conclusions
   --> Avg: 0.03203997867803838s
   --> 99th: 0.34011s
   --> 95th: 0.16578s
   --> 50th: 0.01472s

After commits and mypyc compilation
--> Charset-Normalizer Conclusions
   --> Avg: 0.01026181236673774s
   --> 99th: 0.10958s
   --> 95th: 0.05292s
   --> 50th: 0.00413s

2) size-increase = 10
python3 performance.py -s 10

Before
--> Charset-Normalizer Conclusions
   --> Avg: 0.02120435064935065s
   --> 99th: 0.42033s
   --> 95th: 0.08811s
   --> 50th: 0.00393s

After commits and mypyc compilation
--> Charset-Normalizer Conclusions
   --> Avg: 0.0105862987012987s
   --> 99th: 0.13491s
   --> 95th: 0.03586s
   --> 50th: 0.00137s

3) size-increase = 100
python3 performance.py -s 100

Before
--> Charset-Normalizer Conclusions
   --> Avg: 0.05665621212121212s
   --> 99th: 1.70197s
   --> 95th: 0.14022s
   --> 50th: 0.00617s

After commits and mypyc compilation
--> Charset-Normalizer Conclusions
   --> Avg: 0.04496573593073593s
   --> 99th: 1.64798s
   --> 95th: 0.1104s
   --> 50th: 0.0037s

I also made a heat map with vprof.
heatmap_test.py
from glob import glob
from os.path import isdir
from charset_normalizer import detect

def get_data():
    if not isdir("./char-dataset"):
        print("This script require https://github.com/Ousret/char-dataset to be cloned on package root directory")
        exit(1)
    data = []
    for tbt_path in sorted(glob("./char-dataset/**/*.*")):
        with open(tbt_path, "rb") as fp:
            content = fp.read()
            data.append(content)
    return data

def performance_compare(size_coeff):
    data = get_data()
    len_data = len(data)
    for i,d in enumerate(data, start=1):
        d = d[:750]
        detect(d)
        print(f"{i}/{len_data}")

if __name__ == "__main__":
    performance_compare(1)

vprof test
vprof -c h heatmap_test.py

result
vprof_commited.zip
There are no more bottlenecks. Speeding up is now a matter of rewriting code in cython.

Codecov Report

Merging #183 (ba3945b) into master (37c89a4) will decrease coverage by 0.13%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #183      +/-   ##
==========================================
- Coverage   89.40%   89.27%   -0.14%
==========================================
  Files          11       11
  Lines        1199     1203       +4
==========================================
+ Hits         1072     1074       +2
- Misses        127      129       +2

Impacted Files
Coverage Δ

charset_normalizer/cd.py
96.34% <100.00%> (+0.02%)
:arrow_up:

charset_normalizer/md.py
96.71% <100.00%> (+0.01%)
:arrow_up:

charset_normalizer/utils.py
84.45% <100.00%> (-0.58%)
:arrow_down:

charset_normalizer/legacy.py
96.29% <0.00%> (-0.48%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 37c89a4...ba3945b. Read the comment docs.

I did my tests and filled in the table, the performance increased by 20% with size_coeff = 1
ptest.zip
difference.xlsx

Performance comparison table

performance_comparison.xlsx

+1 small correction

I'm done.

I'm done.

Everything looks good. Let's proceed/move on.
A bit of caution with the expressed delays by GHA. We never know what VM is behind or how scaled.
Consider using factor between chardet and charset-normalizer.

Everything looks good. Let's proceed/move on.
A bit of caution with the expressed delays by GHA. We never know what VM is behind or how scaled. Consider using factor between chardet and charset-normalizer.

Performance comparison
181 : https://github.com/Ousret/charset_normalizer/pull/181 / performance test
183 : https://github.com/Ousret/charset_normalizer/pull/183 / performance test
Summary

performance_comparison.xlsx


setupGlobalOptOverrides not working in all cases

The function setupGlobalOptOverrides isn't recovering the original backspace on all cases, so far i have identified these situations that it doesn't return the original backspace:

When  i try to hit <C-c> to exit insert mode.
In this config the q doesn't works:

vim.api.nvim_create_autocmd('filetype', {
  group = augroup 'close_with_q',
  pattern = {
    'grug-far',
  },
  callback = function(event)
    vim.bo[event.buf].buflisted = false
    vim.keymap.set('n', 'q', '<cmd>close<cr>', {
      buffer = event.buf,
      silent = true,
      desc = 'quit buffer',
    })
  end,
})

Closing the window on <C-w> q doesn't works.
Closing on !bd also doesn't works.

The only key that worked was exiting insert mode with <ESC> and <C-o> .
This was the change i made to keep track of it:
local function setupGlobalOptOverrides(buf, context)
  local originalBackspaceOpt = vim.deepcopy(vim.opt.backspace:get())
  local function onInsertEnter()
    -- this prevents backspacing over eol when clearing an input line
    -- for a better user experience
    vim.opt.backspace:remove('eol')
    vim.notify("original" .. vim.inspect(originalBackspaceOpt))
  end
  local function onInsertLeave()
    vim.notify("before" .. vim.inspect(originalBackspaceOpt))
    vim.opt.backspace = originalBackspaceOpt
    vim.notify("after" .. vim.inspect(vim.opt.backspace:get()))
  end

I know this isn't wrong, since InsertLeave in the docs says that it doesn't work on <C-c> but I don't think this is intented behavior, since then if the user doesn't know what key to press to exit insert mode and/or closes the buffer/window, the original backspace won't be recovered.

hi @Sofistico, good catch! Hmm, backspace option being global is such a pain!
Maybe we need to do things on BufLeave instead. I'll take a look

@Sofistico can you check on latest? I think it should be fixed now 🤞

Yep, it's fixed.
Thx for fixing it so fast!

No problem! Thanks for confirming! 👍


Change processors and mappings to include specification of FAQ

Currently, we are associating FAQ's with sub-pages. We need them to be associated with offices as well, so it seems that forcing the sub_page and the office to specify the FAQ makes the most sense. This adds the related_faq field that contains the slug of the FAQ to retrieve.
@dpford


errors: add a benchmark comparing stack trace performance

Cost is roughly 1600 ns to 6000 ns depending on the stack size. Adds two additional allocations.
BenchmarkErrors/pkg/errors-stack-10-4         	 1000000	      1676 ns/op	     320 B/op	       3 allocs/op
BenchmarkErrors/errors-stack-10-4             	20000000	        64.9 ns/op	      16 B/op	       1 allocs/op
BenchmarkErrors/pkg/errors-stack-100-4        	  500000	      3058 ns/op	     320 B/op	       3 allocs/op
BenchmarkErrors/errors-stack-100-4            	 3000000	       472 ns/op	      16 B/op	       1 allocs/op
BenchmarkErrors/pkg/errors-stack-1000-4       	  200000	     10685 ns/op	     320 B/op	       3 allocs/op
BenchmarkErrors/errors-stack-1000-4           	  300000	      4523 ns/op	      16 B/op	       1 allocs/op
Fixes #72

Nice use of the new sub benchmark feature. 👍


Cannot "remove from default" a deleted stream

Hello
I can't remove a deleted stream from the list of default stream when a new users joins the organization, is it a bug or I have missed a function ?

@timabbott This is fixed in master, after 1.5, by 96fc6f237246861070db4221d8c1af08b8d70915 and f28158d3016b0888e0b5850808a4dca13a259d61.
@sulian I am closing this, because we've fixed in on master, but we haven't released it yet.  Thanks for reporting this!

As a workaround until that is released, you should be able to fix this using the ./manage set_default_streams tool.

Thanks you

"./manage.py set_default_streams" doesn't work. It DOES NOT remove the DEACTIVATED stream that is problematic. Is there a way to manually remove it from the database? Please don't post answers that DON'T WORK.

Also, I just installed Zulip using the latest build and your fix from March is NOT in it.  So this issue is not closed.

Ok, I am re-opening the issue.  Just to be clear, the fix is only on master, so you will still need to either wait for 1.6 to be released, or you will need to build your own tarball off of master.  It's probably easiest to discuss this on https://chat.zulip.org/.

If you need to remove it manually from the database, use ./manage.py dbshell and look for zerver_defaultstream.

1.6 was released some time ago, so closing this.


Relax the MXNet check in make_predictions

Description of changes:

Relax the MXNet check in make_predictions, which should fix the doc building process.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Please tag this pr with at least one of these labels to make our release process faster: BREAKING, new feature, bug fix, other change, dev setup

Change included in #3188


tensorflow.python.framework.errors_impl.InvalidArgumentError:

this error appears when i start train.py
tensorflow.python.framework.errors_impl.InvalidArgumentError: Unsuccessful TensorSliceReader constructor: Failed to get matching files on C:/tensorflow1/models/research/object_detection/faster_rcnn_inception_v2_coco_2018_01_28/model.ckpt: Not found: FindFirstFile failed for: C:/tensorflow1/models/research/object_detection/faster_rcnn_inception_v2_coco_2018_01_28 : The system cannot find the path specified.
; No such process
any solution?

What does your config look like? Check to make sure that path exists

What does your config look like? Check to make sure that path exists

model {
faster_rcnn {
num_classes: 6
image_resizer {
keep_aspect_ratio_resizer {
min_dimension: 600
max_dimension: 1024
}
}
feature_extractor {
type: 'faster_rcnn_inception_v2'
first_stage_features_stride: 16
}
first_stage_anchor_generator {
grid_anchor_generator {
scales: [0.25, 0.5, 1.0, 2.0]
aspect_ratios: [0.5, 1.0, 2.0]
height_stride: 16
width_stride: 16
}
}
first_stage_box_predictor_conv_hyperparams {
op: CONV
regularizer {
l2_regularizer {
weight: 0.0
}
}
initializer {
truncated_normal_initializer {
stddev: 0.01
}
}
}
first_stage_nms_score_threshold: 0.0
first_stage_nms_iou_threshold: 0.7
first_stage_max_proposals: 300
first_stage_localization_loss_weight: 2.0
first_stage_objectness_loss_weight: 1.0
initial_crop_size: 14
maxpool_kernel_size: 2
maxpool_stride: 2
second_stage_box_predictor {
mask_rcnn_box_predictor {
use_dropout: false
dropout_keep_probability: 1.0
fc_hyperparams {
op: FC
regularizer {
l2_regularizer {
weight: 0.0
}
}
initializer {
variance_scaling_initializer {
factor: 1.0
uniform: true
mode: FAN_AVG
}
}
}
}
}
second_stage_post_processing {
batch_non_max_suppression {
score_threshold: 0.0
iou_threshold: 0.6
max_detections_per_class: 100
max_total_detections: 300
}
score_converter: SOFTMAX
}
second_stage_localization_loss_weight: 2.0
second_stage_classification_loss_weight: 1.0
}
}
train_config: {
batch_size: 1
optimizer {
momentum_optimizer: {
learning_rate: {
manual_step_learning_rate {
initial_learning_rate: 0.0002
schedule {
step: 900000
learning_rate: .00002
}
schedule {
step: 1200000
learning_rate: .000002
}
}
}
momentum_optimizer_value: 0.9
}
use_moving_average: false
}
gradient_clipping_by_norm: 10.0
fine_tune_checkpoint: "C:/tensorflow1/models/research/object_detection/faster_rcnn_inception_v2_coco_2018_01_28/model.ckpt"
from_detection_checkpoint: true
load_all_detection_checkpoint_vars: true
Note: The below line limits the training process to 200K steps, which we
empirically found to be sufficient enough to train the pets dataset. This
effectively bypasses the learning rate schedule (the learning rate will
never decay). Remove the below line to train indefinitely.
num_steps: 200000
data_augmentation_options {
random_horizontal_flip {
}
}
}
train_input_reader: {
tf_record_input_reader {
input_path: "C:/tensorflow1/models/research/object_detection/train.record"
}
label_map_path: "C:/tensorflow1/models/research/object_detection/training/labelmap.pbtxt"
}
eval_config: {
metrics_set: "coco_detection_metrics"
num_examples: 67
}
eval_input_reader: {
tf_record_input_reader {
input_path: "C:/tensorflow1/models/research/object_detection/test.record"
}
label_map_path: "C:/tensorflow1/models/research/object_detection/training/labelmap.pbtxt"
shuffle: false
num_readers: 1
}
any idea?

Your training config looks good to me.
It would appear that TF is saying it can't find the 'faster_rcnn_inception_v2_coco_2018_01_28' folder in 'object_detection'. Check to make sure that folder exists. Then, within that folder, you have the frozen checkpoint files.
If it does exist, send a screenshot of your object_detection directory and the 'faster_rcnn_inception_v2_coco_2018_01_28' directory.

Your training config looks good to me.
It would appear that TF is saying it can't find the 'faster_rcnn_inception_v2_coco_2018_01_28' folder in 'object_detection'. Check to make sure that folder exists. Then, within that folder, you have the frozen checkpoint files.
If it does exist, send a screenshot of your object_detection directory and the 'faster_rcnn_inception_v2_coco_2018_01_28' directory.

i just add faster_rcnn_inception_v2_coco_2018_01_28 at object detection. after that, I start training again and this new one error appears
tensorflow.python.framework.errors_impl.NotFoundError: Unsuccessful TensorSliceReader constructor: Failed to find any matching files for C:/tensorflow1/models/research/object_detection/faster_rcnn_inception_v2_pets
I had added faster_rcnn_inception_v2_pets to my training folder sir

Your training config looks good to me.
It would appear that TF is saying it can't find the 'faster_rcnn_inception_v2_coco_2018_01_28' folder in 'object_detection'. Check to make sure that folder exists. Then, within that folder, you have the frozen checkpoint files.
If it does exist, send a screenshot of your object_detection directory and the 'faster_rcnn_inception_v2_coco_2018_01_28' directory.

i just add faster_rcnn_inception_v2_coco_2018_01_28 at object detection. after that, I start training again and this new one error appears
this = _pywrap_tensorflow_internal.new_CheckpointReader(filename)
tensorflow.python.framework.errors_impl.NotFoundError: Unsuccessful TensorSliceReader constructor: Failed to find any matching files for C:/tensorflow1/models/research/object_detection/faster_rcnn_inception_v2_pets
I had added faster_rcnn_inception_v2_pets to my training folder

Add the folder to your object_detection directory, not your training directory.
Enter it here: C:/tensorflow1/models/research/object_detection
NOT here: C:/tensorflow1/models/research/object_detection/training
Follow the path that is having the error. Make sure you can find every folder in that path, as displayed. If you can find it, double click on it and find the next folder in the path.
Once all of the folders exists as displayed above, make sure your frozen graph files are in the 'faster_rcnn_inception_v2_pets' folder.


Build failed because of Kotlin Gradle plugin version

🐛 Bug Report
When I have added the library to my project it failed to build.
FAILURE: Build failed with an exception.

What went wrong:
The Android Gradle plugin supports only Kotlin Gradle plugin version 1.3.0 and higher.
The following dependencies do not satisfy the required version:
project ':permission_handler' -> org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.71

Expected behavior
Build should be successful
Reproduction steps
Add the library to project with androidX support
Version: 1.x
Platform:

[ ] :iphone: iOS
[v] :robot: Android

Same here.

Should be solved in version 2.1.3 of the plugin which was released 11th of Februari


Create cis.txt

Computer and Information Sciences,
Ain Shams University
https://cis.asu.edu.eg/

@AmrElsehemy I am sorry, the domain cis.asu.edu.eg is removed from our trusted domains list because it was abused in the past. If you are the student of this school, please enroll to GitHub Student Developer Program. Then apply for JetBrains educational subscription with your GitHub account (GitHub tab at https://www.jetbrains.com/shop/eform/students).


scheduled-query must move to 2021-02-01-preview ASAP

az feedback auto-generates most of the information requested below, as of CLI version 2.0.62

Describe the bug
Scheduled Query Rules (Azure Log Search Alerts) plans to publish a new stable API version by end of October.
The new stable API version will be: 2021-08-01.
Traces shown to us by CSS have indicated that the CLI is currently using API version 2020-05-01-preview.
Please move away from the 2020-05-01-preview API version.
API version 2021-02-01-preview is already public and offers the same features and identical structure and defaults as 2021-08-01, which have changed since 2020-05-01-preview.
We ask you to to please move to 2021-02-01-preview ASAP, and later to 2021-08-01 as soon as it becomes GA.

monitor

@avjerafi, It's already been done in PR https://github.com/Azure/azure-cli-extensions/pull/3753

Please create another feature request issue when 2021-08-01 is ready.

@avjerafi, It's already been done in PR Azure/azure-cli-extensions#3753

Thank you Kai. Can you please direct me to where could I have found this fact in the code in the repo? I looked everywhere for evidence of the api versions being used for scheduled-query before submitting this issue, but failed to find any.


When the pugixml is updated, the sv literal may no longer be applicable.

In TranslationHelper.cpp at line 28:

The pugixml used by adxe is from this fork: https://github.com/halx99/pugixml with string_view support


Helpers to figure out status bar height/navigation bar height?

I know that the status bar is always either 20 or 40 points (if you are in a call) and also that the navigation bar has a standard height if it's present.  And I'm happy to keep writing code that uses these values ... but it would be nice not to have to worry about it.
I can always calculate these off the statusBarFrame or topLayoutGuide ... but I have to do this on every screen.
Is there something I'm missing in motion-kit that would give me reliable access to these metrics in the layout code, in a nicely abstracted don't-have-to-worry about-it way?  Seems like the frame helpers could let me reference the origin of the visible screen.
Right now I am using a UIView to contain everything else, and positioning it at 0,20, '100%', '100% - 20pt'
And I need to use one of the above techniques to make sure it's not 40.
Am I missing an opportunity for elegance here?

I assign the UIViewController's topLayoutGuide in viewDidLoad, that usually does the trick.  If you're relying only on frame code, you can still use the value, just assign it in viewWillLayoutSubviews, e.g.
def viewWillLayoutSubviews
  super
  layout.top_layout_guide = topLayoutGuide.length
end

Thanks!  Sorry to ask a dumb question, but I see that topLayoutGuide is a property of the view controller
-- is top_layout_guide a property of MotionKit::Layout?  When I try to set it, I get
undefined method `top_layout_guide=' for #<MyLayout:0x119f64220>:MyLayout

No I just made it up, you'll have to add it and respond to it in your layout.

On May 10, 2016, at 1:01 PM, David Hersey<EMAIL_ADDRESS>wrote:
Thanks! Sorry to ask a dumb question, but I see that topLayoutGuide is a property of the view controller
-- is top_layout_guide a property of MotionKit::Layout? When I try to set it, I get
undefined method `top_layout_guide=' for #MyLayout:0x119f64220:MyLayout
―
You are receiving this because you commented.
Reply to this email directly or view it on GitHub

Got it, makes sense.   Still musing on how to handle this transparently in MK.

If you come up with something elegant, I'd be interested in including it in motion-kit!

On May 10, 2016, at 4:39 PM, David Hersey<EMAIL_ADDRESS>wrote:
Got it, makes sense. Still musing on how to handle this transparently in MK.
―
You are receiving this because you commented.
Reply to this email directly or view it on GitHub

You bet -- will let you know if it comes to fruit.

Just getting back to this -- I'm using ProMotion and am finding it hard to coordinate the setting of the layout guide and the layout of the view.  In ViewDidLoad (or in PM on_load) the topLayoutGuide.length is still 0.
By the time it gets to viewWillLayoutSubviews it's there. Some logging:
"ON_LOAD: 0.0"
"WILL_APPEAR: 0.0"
"WILL LAYOUT: 64.0"
"DID LAYOUT: 64.0"
"ON_APPEAR: 64.0"

ProMotion suggest putting the Layout code in on_load. Not sure if there's a solid reason for this, but it seems to make sense.  So I tried setting @layout.top_layout_guide = self.topLayoutGuide.length in viewWillLayoutSubviews then calling @layout.build but I found that the layout evaluates its blocks on instantiation (in on_load) so the top_layout_guide is not available.
So I moved the code that creates the layout and builds it to on_appear (similar to viewDidAppear).  That works, but I'm feeling that's a little late.  I tried putting it in viewWillLayoutSubviews and viewDidLayoutSubviews but both of them created recursive loops.
  def viewDidLayoutSubviews
    mp "DID LAYOUT: #{self.topLayoutGuide.length}"
    super
    @layout = WeLayout.new(root: self.view)
    @layout.on :express {express_feeling true}
    @layout.on :locate {locate_user false}
    @layout.top_layout_guide =  self.topLayoutGuide.length
    @layout.build
<EMAIL_ADDRESS>
  end

So I guess  I'm stuck with on_appear ... or hardcoding the top_layout_guide in on_load. Am I missing something?

This should be a two step process:

Create the layout in on_load
Update the layout when the guide changes

either:

assign the topLayoutGuide, and use the reapply! feature of motion-kit to update based on the length of that guide or
assign topLayoutGuide.length during viewWillLayoutSubviews, and again use reapply! to move views based on that value.

Either way, you'll want to animate that change, so that when the user takes a call, the layout adjusts accordingly.
This is kind of an unfortunate "wart" in ios view programming, in my opinion.  It's not really clear how to take the status bar into account, and since it NEVER changes during development (in the simulator), it's easy to forget about. :-/

On May 17, 2016, at 12:04 PM, David Hersey<EMAIL_ADDRESS>wrote:
Just getting back to this -- I'm using ProMotion and am finding it hard to coordinate the setting of the layout guide and the layout of the view. In ViewDidLoad (or in PM on_load) the topLayoutGuide.length is still 0.
By the time it gets to viewWillLayoutSubviews it's there. Some logging:
"ON_LOAD: 0.0"
"WILL_APPEAR: 0.0"
"WILL LAYOUT: 64.0"
"DID LAYOUT: 64.0"
"ON_APPEAR: 64.0"
ProMotion suggest putting the Layout code in on_load. Not sure if there's a solid reason for this, but it seems to make sense. So I tried setting @layout.top_layout_guide = self.topLayoutGuide.length in viewWillLayoutSubviews then calling @layout.build but I found that the layout evaluates its blocks on instantiation (in on_load) so the top_layout_guide is not available.
So I moved the code that creates the layout and builds it to on_appear (similar to viewDidAppear). That works, but I'm feeling that's a little late. I tried putting it in viewWillLayoutSubviews and viewDidLayoutSubviews but both of them created recursive loops.
def viewDidLayoutSubviews
mp "DID LAYOUT: #{self.topLayoutGuide.length}"
super
@layout = WeLayout.new(root: self.view)
@layout.on :express {express_feeling true}
@layout.on :locate {locate_user false}
@layout.top_layout_guide =  self.topLayoutGuide.length
@layout.build
<EMAIL_ADDRESS>end
So I guess I'm stuck with on_appear ... or hardcoding the top_layout_guide in on_load. Am I missing something?
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub https://github.com/motion-kit/motion-kit/issues/133#issuecomment-219802892

Ok, this is where I wound up:
in screen.rb:
  def viewWillLayoutSubviews
    if @layout
      @layout.top_layout_guide =  self.topLayoutGuide.length
      @layout.reapply!
    end
  end

in layout.rb:
 def topic_filters_style
      ...
    constraints do
      x.equals(:superview)
      @topic_filters_top_constraint = y.equals(:superview).plus(self.top_layout_guide)
      width.equals(:superview)
      height.equals(44)
    end
    reapply do
      @topic_filters_top_constraint.equals(self.top_layout_guide)
    end
  end

Fortunately I only have 1 subview anchored to the superview.  If I had more, I would enclose all of them in another subview and add this code only once, and anchor all of the others to that subview.
Thinking about how this could be better .... we would ideally have some kind of other anchor for constraints -- instead of :superview it could be :top_layout.  Then there would have to be an update injected from the containing view to the layout.  Is there any existing mechanism for the layout to observe/reference the containing view?  If not, we could default :top_layout to simply equal :superview and provide a method for the programmer to use to update it -- something like mk_synchronize_top_layout.
Maybe this would be easier in mk_2 where the layout IS the view.


I tried to install this packages in my project on windows then return this error

I tried to install this packages in my project on windows then return this error
composer require spatie/pdf-to-image
Problem 1 - spatie/pdf-to-image 1.8.1 requires ext-imagick * -> the requested PHP extension imagick is missing from your system. - spatie/pdf-to-image 1.8.0 requires ext-imagick * -> the requested PHP extension imagick is missing from your system. - Installation request for spatie/pdf-to-image ^1.8 -> satisfiable by spatie/pdf-to-image[1.8.0, 1.8.1].
To enable extensions, verify that they are enabled in your .ini files: - C:\wamp64\bin\php\php7.1.16\php.ini You can also run php --ini inside terminal to see which files are used by PHP in CLI mode.
Installation failed, deleting ./composer.json.
I already had this question but it was closed without me having an answer.

You probably don't have imagick installed correctly. The PHP configuration that handles cli requests is mostly differente from the PHP configuration that handles web request. Probably you don't have imagick installed on the php cli process.
This is not an issue with this package. Please use google, stack overflow or another public resource to research and fix this problem.
Should you find an error with this package, open up a PR with a failing test for me to fix.


[Tx-listener] Health Checks are blocked with metrics

Health checks are failing in tx-listener, following logs give details

https://consensys.slack.com/archives/GL56NTRDK/p1648548879365219

Issue cannot be reproduced


update node requirements to node v14

fixes #7473
I have run all the local JS scripts and had no issues, built and also validated several UI interactions
Note: I attempted to update to Node v16 and that did not work well (multiple test failures and other issues)

See also

https://github.com/wagtail/docker-wagtail-develop/pull/30
https://github.com/wagtail/vagrant-wagtail-develop/pull/30

@Stormheg thanks heaps, I have merged this in.
I also noticed it felt much faster on Node 14.


SVG scaling bug

Here’s a fun one: This SVG of the Rust mascot behaves weirdly when being resized with Squoosh. My hunch is it’s gotta do with the viewbox, but @jakearchibald knows SVG much better than I do. PTAL?
SVG:
rustacean-flat-happy.svg.zip

(lol @ GitHub allowing .zip but not .svg)

this bug still exist in v2, adding as good first issue.

This bug still exists. Not sure if it's a good first issue after all ;)
Currently this blocks converting SVG images to raster formats.


[Customer SDK] Login flow has thrown code AUTHENTICATION with Error: Invalid access token

[Customer SDK] Login flow has thrown code AUTHENTICATION with Error: Invalid access token.
Any solution?
<LiveChat license="<LICENSE_ID>" redirectUri="https://example.org" clientId="<APP_CLIENT_ID>" />
"react-native": "0.59.8",
"react-native-livechat": "^2.0.1"

hello @vibincp I didn't find any way to write to you but like this. please I have a question: in your implementation, didn't you get a white view covering your page when the app is opened for the first time? if you did and fixed it, please show me how. this is my email<EMAIL_ADDRESS>thanks

hello @vibincp I didn't find any way to write to you but like this. please I have a question: in your implementation, didn't you get a white view covering your page when the app is opened for the first time? if you did and fixed it, please show me how. this is my email<EMAIL_ADDRESS>thanks

@gevAizen Initially I'm getting the chat window with a white screen and that chat icon, then  leading to this access token issue, Did you get any solution for this ?
thanks.


Deploy and configure a BC instance of IndyScan to to scan the CANdy and BCovrin ledgers

Deploy an instance of IndyScan into OpenShift or AWS configured to scan the CANdy and BCovrin ledgers.
Required Work:

Determine whether OpenShift or AWS would be a better hosting platform.  Cost and maintenance wise OpenShift may be better long term.
Deploy and configure the instance to scan the CANdy and BCovrin ledgers.
BC Gov branding?
Secure the interfaces.  See note here; Security Warning.

Acceptance Criteria:

A functional instance of IndyScan, scanning the CANdy dev, test, and prod ledgers
A separate functional instance of IndyScan, scanning the BCovrin dev-greenlight, greenlight, dev, test, and prod ledgers.

Basic instructions for running IndyScan using docker compose:

https://github.com/Patrik-Stas/indyscan/tree/master/start
You can ignore the part about the npm install and verify.

Example docker compose configuration and settings for the Sovrin networks:

https://github.com/Patrik-Stas/indyscan/tree/master/ci/integration-sovrin
This lays out the configuration files that need to be included and provides an example of how to configure IndyScan to scan the networks.
Raw docker compose commands can be found in the make file; https://github.com/Patrik-Stas/indyscan/blob/master/ci/integration-sovrin/Makefile

Based on this I figure we could have something running on OpenShift within a few hours.  Developing and testing the configurations for CANdy and BCovrin using docker compose could be done in under and hour.
Although a single instance could be configured to scan both CANdy and BCovrin networks it's best to keep them separate.

@WadeBarnes I believe this is done - maybe just partially?

Partially, just for BCovrin Test; http://test.bcovrin.vonx.io:3707/home/BCOVRIN_TEST

Do we need to run one for CANdy, or is the IDLab one sufficient?

Do we need to run one for CANdy, or is the IDLab one sufficient?

They had talked about retiring their instance due to availability concerns with their ISP that was out of their control.  That was a while back.  Not sure if it's still a concern.  That's the only reason the CANdy environments are on the list.

I believe  dev-greenlight, greenlight, and prod (BCovrin) ledgers are all either retired or never were actively used.
CANdy is the only set of ledgers that is still a maybe: I suggest we close this issue and log a new one to tackle CANdy if and when necessary.

Confirmed.  Everything other that BCovrin-Test and the CANdy ledgers have been retired and decommissioned.
https://candyscan.idlab.org in hosted by IDLab, but they have expressed this should not be considered a permanent solution.


Feature/time ordered json queue

Addresses #45
Partially addresses #43
Makes incoming data truly time-ordered.

Fixes #36


does not support table format???

such as
|header1|header2|header3|
|---|---|---|

such as
|header1|header2|header3|
|---|---|---|

You must write first data row:
| header1 | header2 | header3 |
| ---| ---| ---|
| 123| 123| 123|


NodeJS: Copy .proto files on gapic generation

Where is the artifacts section of the circleci report?

I am confused how circleci artifacts work, as I don't see consistent report in my experience.
Since your change is simple, the error report is good enough, and you only need to add one line into library_example.golden.
"

  assert expected == set(actual), \

        "Check the actual output at %s" % actual_output_file

E       AssertionError: Check the actual output at /usr/src/artman/test/golden/actual_library_example.golden
E       assert {'/csharp/goo...Grpc.cs', ...} == {'/csharp/goog...Grpc.cs', ...}
E         Extra items in the right set:
E         '/js/library_example-v1/proto/google/example/library/v1/library.proto'
E         Use -v to get the full diff
"

@ethanbao Where is the artifacts section of the circleci report?


Could you please kindly offer guidance how can I change the model in the mod , I have encountered some trouble

Thank you very much for creating this mod! Could you please spare some time to kindly offer some guidance? If you are not willing to answer, I am also very grateful to you.
I uesd assetbundle browser ,tried to building my own assets (model and audio) in Unity, and the audio could be replaced, but the girl's model completely disappeared and became invisible.
I would like to know how you building assets. I converted an FBX model to prefab format, and the prefab format was a mesh(named Body) and a bone(named metarig), with a .mat Material. The bone binding is the same as the model bone in your mod. After building assets, there will be no error when running in the game, but I can't see the model. I tried for a long time and didn't understand what the problem was.

This is the unity project that has the HDRP shaders that you need for your renderer to show in game. The Girl uses HDRP Unlit by default

This is the unity project that has the HDRP shaders that you need for your renderer to show in game. The Girl uses HDRP Unlit by default

WOW,cool! Thank you very much!  I will try it.

This is the unity project that has the HDRP shaders that you need for your renderer to show in game. The Girl uses HDRP Unlit by default

Thank you again for your answer! I have resolved the issue of not being able to render, thank you very much!


Monolog RedisHandler with predis Client does'nt work.

Hello everyone, i'm just starting this week to play with redis, i tried to post my logs into redis db but i think there is a mistake in the redisHandler at this section (l.68):
        $this->redis->multiExec(function($multi) use ($key, $buffer) {
            foreach ($buffer as $record) {
                $multi->rpush($key, $record);
            }
        });

The multiExec is supposed to be a command Id and the callable the attached argument for the createCommand method. But, when look into the redis documentation multiExec is'nt defined (edit. or that's a method removed into the predis Client).
So please, somebody more expert than me could fix that or explain me something that i missed.
So for a temporary solution i changed the function by:
            foreach ($buffer as $record) {
                $this->redis->rpush($key, $record);
            }

I think the callable had a performance reason to be, there probably a better solution.

Monolog handler has been removed in favor of native implementation.


feat: new list proposal

Only to familiarize yourself with the approach. Work still in progress

new verion with hooks here https://github.com/gravity-ui/uikit/pull/1090


Design QA: App bar + nav bar

Moved issues to appropriate release + closing epic (letting final issues stand on their own)


Bookmark Bug

The bookmark feature is acting buggy. Chrome vs 50, OSX.

Unable to bookmark/favorite kata (Molecule to Atoms by romanzes)
Bookmark/favorite dropdown stays frozen open after mouse leaves

Chrome v55, FF on Windows works okay. The bookmark bug seems only to manifest in Chrome OSX.

The bug that prevented bookmarking is fixed now.


Shouldn't it be Memcached?

I've noticed around the project a lot of typos on Memcached... Namely the project address itself (Memchaced). In the code sample, the class is named memchached as well.
As this might seem a more profound change, I didn't try to create a PR for it.

+1


No way to invalidate header once it has been created

StickyHeaderDecoration.getHeader has the section:
if (mHeaderCache.containsKey(key)) {
    return mHeaderCache.get(key);
} else {

Thus once a header has been added to the cache there it will never be regenerated. Calling any of the notify* methods on the adapter have no effect.

You can call clearHeaderCache:
decorator.clearHeaderCache()
https://github.com/edubarr/header-decor/blob/master/lib/src/main/java/ca/barrenechea/widget/recyclerview/decoration/StickyHeaderDecoration.java#L89

thanks, that will be helpful. A way to invalidate a header specifically (like notifyItemChange(i)) would be a nice optimization.


Small Glitch

So the challenges request you to "Change the 0 so the difference is 12.", but instead you can just change the var to = 12 .
Challenge Waypoint: Subtract One Number from Another with JavaScript has an issue.
User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:44.0) Gecko/20100101 Firefox/44.0.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:
var difference = 45 - 0;

var difference = 12;

Good point. We can check to make sure there is only one instance of the word difference and that the number 45 is still there.

I think this issue is still persisting.

@pallavrustogi Can you please explain what you mean?  The code has been changed.  If your code is different you may try hitting the "reset" button to refresh it to the new code.


Add multiprocessing for oob_importances

Wanted to suggest parallelizing the oob importance calculation in order to speed it up, since the importances can be calculated independently for each feature.
In my use case, I saw a >8x reduction in runtime after parallelizing and would be happy to contribute the code needed to implement this.

I'd LOVE to see a pull request for that or even sample code.  I barely figured out how to get OOB samples from sklearn ;)


Using nullable parameter causes strange deployment error

Bicep version
Bicep CLI version 0.22.6 (d62b94db31)
Describe the bug
After refactoring one of our templates to deploy an AKS cluster and perform the required role assignments associated with it I'm running into a strange issue. After making a seemingly innocent change to the role assignment templates to use nullable parameters, it now consistently fails that part of the deployment with the following error:
The 'location' property must be specified for 'rg-aks-shared-prd-01'. Please see https://aka.ms/deploy-to-subscription for usage details. (Code: InvalidDeployment)

A template for repro is shown below, but this is basically the only thing that was changed in the template:
without nullable param, works:
@description('A description for the role assignment.')
param RoleAssignmentDescription string = '' // <= without nullable param
// ...
// ...
resource RoleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
  name: guid('${RoleAssignmentName}-${ManagedClusterResourceGroup_Existing.name}-${ManagedCluster_Existing.name}-${ContainerRegistry_Existing.name}-${RoleDefinitionId}-${PrincipalId}')
  scope: ContainerRegistry_Existing
  properties: {
    roleDefinitionId: RoleDefinition.id
    principalId: PrincipalId
    description: !empty(RoleAssignmentDescription) ? RoleAssignmentDescription : null // <= without nullable param
  }
}

with nullable param, doesn't work:
@description('A description for the role assignment.')
param RoleAssignmentDescription string? // <= with nullable param
// ...
// ...
resource RoleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
  name: guid('${RoleAssignmentName}-${ManagedClusterResourceGroup_Existing.name}-${ManagedCluster_Existing.name}-${ContainerRegistry_Existing.name}-${RoleDefinitionId}-${PrincipalId}')
  scope: ContainerRegistry_Existing
  properties: {
    roleDefinitionId: RoleDefinition.id
    principalId: PrincipalId
    description: RoleAssignmentDescription! // <= with nullable param
  }
}

To Reproduce
@description('The name of the managed Kubernetes cluster.')
param ManagedClusterName string
@description('The name of the resource group of the managed cluster.')
param ManagedClusterResourceGroupName string
@description('The subscription id of the managed cluster.')
param ManagedClusterSubscriptionId string = subscription().subscriptionId
@description('The name of the container registry.')
param ContainerRegistryName string
@description('The name of the role assignment.')
param RoleAssignmentName string
@description('The id of the role definition that should be assigned to the user principal.')
param RoleDefinitionId string
@description('A description for the role assignment.')
param RoleAssignmentDescription string? // <= This seems to cause the issue
@description('The principal id for the role assignment.')
param PrincipalId string

resource RoleDefinition 'Microsoft.Authorization/roleDefinitions@2022-04-01' existing = {
  name: RoleDefinitionId
}

resource ContainerRegistry_Existing 'Microsoft.ContainerRegistry/registries@2023-07-01' existing = {
  name: ContainerRegistryName
}

resource ManagedClusterResourceGroup_Existing 'Microsoft.Resources/resourceGroups@2023-07-01' existing = {
  name: ManagedClusterResourceGroupName
  scope: subscription(ManagedClusterSubscriptionId)
}

resource ManagedCluster_Existing 'Microsoft.ContainerService/managedClusters@2023-08-01' existing = {
  name: ManagedClusterName
  scope: ManagedClusterResourceGroup_Existing
}

resource RoleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
  name: guid('${RoleAssignmentName}-${ManagedClusterResourceGroup_Existing.name}-${ManagedCluster_Existing.name}-${ContainerRegistry_Existing.name}-${RoleDefinitionId}-${PrincipalId}')
  scope: ContainerRegistry_Existing
  properties: {
    roleDefinitionId: RoleDefinition.id
    principalId: PrincipalId
    description: RoleAssignmentDescription!
  }
}

Deploy the template at the resource group scope where the container registry is located. This will generate the error:
The 'location' property must be specified for 'rg-aks-shared-prd-01'. Please see https://aka.ms/deploy-to-subscription for usage details. (Code: InvalidDeployment)

Additional context
N/A

Closing as duplicate of #11914. The backend fix is not yet fully rolled out.


Added a new cryogenics chemical - Doxarubixadone!

About the PR

Seeing as Slimes have become more widespread on the Nanotrasen brand stations, Nanotrasen has decided to purchase the recipe for Doxarubixadone to treat genetical damages done by said Slimes.
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl: Dynexust

add: Interdyne Pharmaceutics has pushed a new chemical on the market, Doxarubixadone, which cryogenically heals cellular damage.

Slimes deal cellular damage?
I dont think cellular damage should be so easily healable.

Slimes do as a matter of fact deal cellular damage! However, as a matter of fact I do not consider this easily curable given that a cryopod is necessary for healing it as an alternative to Phalanximine, which already cures cellular damage with a small drawback of radiation. I felt as if the cryopods could use some flavour besides being solely used for Cryoxadone.

I feel like this is just sidestepping that a random ai mob does cellular damage?

I feel like this is just sidestepping that a random ai mob does cellular damage?

Was that not intended?

Simply creating this chem is harder than both creating and applying phanalaxamine, which, for one thing, doesn't need a plasma catalyst. That's not even including the cryo pod.
If phanalaxamine is balanced, this chem is balanced.

cryo chems are based, sounds good to me

actually now that i think about it, we could really convert a lot of problematic chems to cryo triggers

we already have phalanx that turn 2 cellular into 2 rad damage

we already have phalanx that turn 2 cellular into 2 rad damage

ok but this requires you to put them into cryo

we already have phalanx that turn 2 cellular into 2 rad damage

ok but this requires you to put them into cryo

yeah... what prevent more from making 10u phalanx/Hyro pills? this will treat the cellular damage at the same rate, no tedious setup, no cryo needed, no "waste" of cryoxadone


[0.4] drop support of PHP 5.4 ?

Is there any good reason to keep PHP 5.4 ? It's a release with bugfix only while PHP7 is on the rails.
As soon as ratchet 0.4 will be release, it will be deprecated, releasing a tool that allow deprecated usage is not so awesome... Especially when it can bother you because of missing features.

Not everyone is on PHP7 yet and that will take time. There are a lot of changes in 0.4 and I don't want to leave many developers stranded just for the sake of pushing 7. I could bump the version to 5.5 or maybe 5.6 but since none of the new language features in those versions are being used I don't see the point.

I understand that support for PHP7 too early. My point is on bumping to 5.5.
This version number is motivated by the Symfony 3.0 php version support. Also as PHP 5.5 is far to not be supported anymore it's legit to me to make this choice.
Of course if it's a problem in any way and 5.6 features are needed, better go directly with 5.6. But well, IMO 5.5 is enough for next release of ratchet.
A bit out of topic. But why ratchet does not follow semver ?

I'll take a look and consider 5.5 as a requirement, but again, as none of the language features are used I don't see the value in forcing someone who might be stuck on 5.4 for what ever reason.
Ratchet does follow semver, see this comment


Warn package authors when uploading a semver2 package through the web site

This PR is a proposal we can start working from. Awaiting final wording from @anangaur.
I'd suggest to have the warning as close as possible to the submit button to ensure maximum visibility (people don't always read messages at the top of the page).
When a package has a semver2 version itself:

When a package has a non-semver2 version, but is considered semver2 due to a dependency declaration:

Ping @anangaur

I agree we should make a differentiation. And this differentiation should be conistent across sever and client. The text needs some minor tweaks though and a Fwd link and I will be able to provide the same, later.
I see the following cases:

The package itself is SemVer 2 - Msg1
2a. Package has dependencies declared in SemVer 2 - Msg 2
2b. Package has dependecy declared as SemVer 1 but the package itself is SemVer 2 (due to build metadata) - Msg 2

@anangaur about case 2b: I think what you describe there is what we understood to be a non-goal. There's no way we can detect that a dependency that would be resolved is semver2 for a given non-semver2 dependency version range. That would require analysis of all restore graphs, which is currently not taken into account to determine whether the package is semver2. So we can only detect two cases: 1 and 2a (or just 2 :))

Thanks for the reviews! Holding off until I receive final wording from @anangaur.

@xavierdecoster I thought we can still figure out case 2b not for all dependencies but for 1st level. Atleast thats what I understood based on the discussions with @joelverhagen and @ryuyu
Case 1: We should be able to detect PackageA is SemVer 2 as direct dependency is SemVer 2
PackageA 1.0.0
|--- PackageB 2.0.0 (SemVer 2 as the real version is 2.0.0+buildmetadata)
Case 2: We cannot determine Package A to be SemVer 2 as the dependency is deeper than 1 level. Here PackageC is dependent on a SemVer package and not PackageA directly.
PackageA 1.0.0
|--- PackageC 3.0.0
........| --- PackageB 2.0.0 (SemVer 2 as the real version is 2.0.0+buildmetadata)

@anangaur @joelverhagen @ryuyu let's have the discussion here, as hallway discussions don't make it across the ocean ;)
So, we can indeed query case 1, but isn't that raising a warning on what may be a temporary situation?
The nuspec itself does not contain any semver2 version or version range, and at any point in time, a semver2 package dependency that matches the minimum constraint may be listed or unlisted.
e.g. we may not be raising the warning at upload time when the lowest package version matching the lowerbound is v2.0.1. A week later, 2.0.0+metadata is unlisted, still matching the constraint, turning this package suddenly into a semver2 package.
The opposite may also be true: we warn about the package being semver2 when 2.0.0+metadata is the lowerbound best match, whilst it may be unlisted some time later and a semver1 package version becomes the best match for this lowerbound.
In both cases, the (lack of) warning may be experienced as inconsistent, whilst now we only take into account what is physically in the nuspec. I much prefer consistency and easy to understand warnings :)

Correct me here, if I am misunderstanding something

The package itself is SemVer 2 - Msg1
2a. Package has dependencies declared in SemVer 2 - Msg 2
2b. Package has dependecy declared as SemVer 1 but the package itself is SemVer 2 (due to build  metadata) - Msg 2

Isn't 1. and 2b. the same described here?

@shishirx34 rephrased (to how I understood it :))

2b. Package has dependecy declared as SemVer 1 but the available dependency matching default dependency resolution Lowest itself is SemVer 2 (due to build metadata) - Msg 2

@xavierdecoster  thanks for rephrasing. The flip side of not reporting warning for 2b is that the publisher will be happy but the package will still end up being not compatible on the older clients. Now finding out the real issue here would be non-trivial for the publisher when this issue is reported.

See my comment here on Case 3: https://github.com/NuGet/NuGetGallery/issues/4215#issuecomment-311272659

I do want to point out that none of the server APIs are considering the package to be SemVer 2.0.0 in Case 3.
These packages are not considered to be SemVer 2.0.0 and e.g. NOT HIDDEN on V2 OData endpoints, as all we check is the package's nuspec manifest.
This is one of the edge cases described in the non-goals (paragraph 2) that may lead to (gracefully handled) restore failures on non-SemVer2 compatible clients.


Provide an alternative plugin to download files

To be able to download the files, instead of hitting the /files server endpoint.
This depends on the upstream 3.1 lab packages (alpha 5 or greater, to be published).

As noted over on https://github.com/jtpio/jupyterlite/issues/40#issuecomment-821981458, i think maintaining files in some form would actually be quite helpful for users. A custom plugin will still be required, for sure, for localStorage-only files, but things like images, embedded, vidoes etc. really don't need to go into localstorage... until we have a video editor!

I assume this can be closed, given #89?

Yes, closing in favor of #89.


Add retry in monitoring jobs for server time outs

@xavierdecoster can you please provide context?

@yishaigalatzer I have no clue :) Looks obsolete to me.


[QUESTION] How to specify json data input in docs for request?

Question
How can I make my Input parameters show up in the swagger docs for a JSON request? I make requests like this ...
curl 'http://<IP_ADDRESS>:5000/predict' -H "Content-Type: application/json" --data '{"data": ["string1", "string2"]}'
from fastapi import FastAPI
from starlette.requests import Request
from pydantic import BaseModel
from typing import List

app = FastAPI()

class Prediction(BaseModel):
    term: str
    label: str
    score: str

class Output(BaseModel):
    success: bool
    prediction: List[Prediction] = []

# .. this is probably wrong.
class Input(Request, BaseModel):
    data: List[str] = []

@app.post('/predict', response_model=Output)
async def predict(request: Input):

    data = Output(success=False)

    try:
        params = await request.json()
    except Exception as e:
        print(e)
    ...
    data.success = True
    return data

Swagger docs without input parameters

I would like this to show the input schema so the user knows they're supposed to POST with {"data": [list of strings])

Shouldn't this
class Input(Request, BaseModel):
    data: List[str] = []

be this
class Input(BaseModel):
    data: List[str] = []

I don't think you need Request in your input model.

Then the await request.json() won't work since request is just Input and not a starlette.requests.Request

@Shane-Neeley
You don't need to await request.json(). You can take @iishyfishyy's advice:
class Input(BaseModel):
    data: List[str] = []
...
async def predict(request: Input):
    ...
    # Prints ['string1', 'string2'] in your example
    print(request.data)
    ...

fastapi will take care of deserializing the body into request for you, so there's no need to await request.json(). Also note that it will show up as a "Request body." "Parameter" is for url (query) params.

That did the trick. Thank you.

Thanks for the help here everyone! :cake:
Thanks @Shane-Neeley for reporting back and closing the issue :+1:


Can't map object to abstract|interface with AsObjectMapper

I try manually map object to interface impl, with AsObjectMapper, but always get error
Trying to instantiate "TargetInterface", but it is not instantiable. You might solve this problem by adding an "InheritanceMap" to the class, so the mapper will know which concrete class to instantiate.

It's then you try SourceInterface class map to certain class like
final readonly class Mapper
{
    public function map(SourceInterface $source): Target
    {
        /*....*/
     }
}

But get error on opposite direction
final readonly class Mapper
{
    public function map(Source $source): TargetInterface
    {
        /*....*/
     }
}

The bug is there, and should be fixed by the related PR. However, I got a different error message here. Try clearing your cache, and try again, my guess you will now get "Target class ... is not a valid class". If correct, then we have a cache invalidation bug that should be fixed for dev environment.


Add pytest suite for seal5

In which direction should this go?

Smoke tests?
Functional
Wall ...

@jokap11 sorry for the late response.
here I would like to focus on the Python-only tests (aka no LLVM compilation involved)
these are the test levels that are appropriate:

First, minimal unit tests should be added for verifying small helper/utility functions used in the codebase.
Next we can add integration tests for testing specific submodules/components (such as transforms/backends) independently (using dummy inputs and comparing the resulting metamodel or generated patches with the expected output)
Finally there are more complex test-cases which involve more than one component or include running multiple steps in the seal5 flow. I am not planning to add specific tests cases for these as they should (hopefully) show up in the end-to-end examples based on real-world inputs.

I hope this answers your question. I think to get this started we should start with the ones which are very simple (aka level 1). We should probably also add coverage support to see which files/functions lack proper testing.


Move routers under one namespace

It seems to me a bit illogical to have Pimple and Symfony under separate namespaces. They should be grouped by their functionality, not their vendor name.

+1 makes sense i think, try a PR and ill see what i think

Closed by #147