No Effect from Including spectrumLibrary.msp

Describing the issue
I'm using MetaMorpherus for O-glycopeptide search and facing an issue. Regardless of whether I include 'spectrumLibrary.msp' in the databases, the results remain unchanged. My spectral library is sourced from a larger dataset via MetaMorpherus and exported from MetaDraw to spectrumLibrary.msp directly. Why does the inclusion or exclusion of 'spectrumLibrary.msp' not affect the outcomes? Any guidance on the spectral library generation and spectral library searching would be appreciated.
Reproducing the error

Protein database

spectrumLibrary.txt
mucin_4.txt

Mass spectrometry file types

Settings

Example datafiles

Expected behavior for GUI

Screenshots

Desktop information

Additional context

Thanks for the report. spectrum library is not yet integrated into the O-glyco search. you can however, write spectra in the MetaDraw function. And you can reload those spectra into MetaDraw and view them as mirror plots. Also, in metadraw, a spectrum similarity will be calculated.
We will keep this open and see if we can add this new feature.


*:added the doc 'development-workflow.md'

What problem does this PR solve?
The document can help contributor how to do development workflow.
What is changed and how it works?
I just added a document and update the document CONTRIBUTING.md.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 3 committers have signed the CLA.:white_check_mark: nolouch:white_check_mark: elitecodegroovy:x: superadminsuperadmin seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

please close the PR if superadmin account blocks the license/cla


Input Plugin not working on mobile devices-

Hello,
I am using this phaser input plugin in my game, but it is not working on mobile devices/tablets? What could be be the problem?
https://github.com/orange-games/phaser-input
It is working fine on desktop, but when i tried on ipad and even on android mobile typing text  is not happening.
This is the code-
//enable plugin for text input
game.add.plugin(PhaserInput.Plugin);
    //textfield
   var  name=game.add.inputField(200, 230, {
        font: '29px casual',
        fill: '#000',
        width: 380,
        padding: 10,
        borderWidth: 4,
        borderColor: '#169AC5',
        borderRadius: 20,
        placeHolder:'Name',
        placeHolderColor:'#00549C',
        textAlign:'center',
        type: PhaserInput.InputType.text

    });

Thanks in advance.

For me this works on my android with Chrome v60.0.3112.116, Next week I should be able to check iOS too, but also your code works fine for me when I added it to the example, do you happen to use some form of scaling that might disturb the default hit area of the elements?
Does the keyboard appear? or does the input field just stay empty after typing.

Hello,
I have tested this on ipad with Chrome v40.0.2214.73 and it is not working, problem is- text box is appearing and if i click on it keyboard also appears,  but when we start typing nothing is typing. No  am not doing any scaling.

This one: http://fbrq.io/phaser-input/example/ worked fine for me on both Chrome and Safari on iPhone 6, how is that for you?

@AleBles This one  ( http://fbrq.io/phaser-input/example/ ) does work on mobile. Could it be possible that this is due to the other phaser plugin involved (Phaser Nineslice) ?

@VasilikiLoukoumi which version of Phaser are you using?

@AleBles I am using Phaser v2.10.0.

I think the issue here is that this plugin doesn't work correctly with phaser-ce, I've been only using it together with phaser 2.6.2.
With phaser 3 released this week I also have no intention making it work with phaser-ce as well. I do accept PR's if someone is willing to investigate/fix.

Have you tried disabling zoom in your config settings and also not call startFocus()? I did and I got the input to work, but the world scaling is still a bit messy. It is like the game moves up and i have to scroll up to see what I have written. This only happens on mobile devices, works fine on mini tablets.

It works if you put this meta tag in your html file,

!!

I'm having the same issue, using "phaser-ce" if I click the input on mobile (android/iPhone) the keyboard pops upa and hides immediately, the input looses focus directly after clicking, if i hold my finger down on the input for some seconds then the keyboard stays open and you can input values as the focus is not lost, but this is not acceptable for users to input values having to wait until the keyboard stays fix.

I'm having the same issue, using "phaser-ce" if I click the input on mobile (android/iPhone) the keyboard pops upa and hides immediately, the input looses focus directly after clicking, if i hold my finger down on the input for some seconds then the keyboard stays open and you can input values as the focus is not lost, but this is not acceptable for users to input values having to wait until the keyboard stays fix.

Hi @PonyOny
Have you got any solution for it?

I'm having the same issue, using "phaser-ce" if I click the input on mobile (android/iPhone) the keyboard pops upa and hides immediately, the input looses focus directly after clicking, if i hold my finger down on the input for some seconds then the keyboard stays open and you can input values as the focus is not lost, but this is not acceptable for users to input values having to wait until the keyboard stays fix.

Hi @PonyOny
Have you got any solution for it?


'Non-existent config key: MODEL.CLIP'

while running visualize_zeroshot_inference.sh i grt the error as  'Non-existent config key: MODEL.CLIP' so can anyone help me with this ??

@sekar1112 We have not met this error before. One possibility is that your installation is not correct. For example, you installed original Detectron2 but not our RegionCLIP. In this case, the code only has the config keys from Detectron2 and cannot find our keys (MODEL.CLIP). You can strictly follow our installation and try again.

while running visualize_zeroshot_inference.sh i grt the error as 'Non-existent config key: MODEL.CLIP' so can anyone help me with this ??

I meet the same problem, how do you solve it?

I meet the same problem, case I strictly followed your installation, but it comes that your version is wrong, so I installed original Detectron2. But original Detectron2 'Non-existent config key: MODEL.CLIP'. so what should i do to install your detectron


GH: Ensure account used get's propagated down the graph

Some nodes take Stream Url as input, and return another Stream Url (i.e. the send node).
When no account is provided, we'll always consistently pick the correct one, but if a different account is provided on the input stream, the output stream will not have this information attached, leading to situations where 2 chained operations will use 2 distinct accounts.
This is quite easy to solve with the introduction on StreamWrapper.SetAccount() we can easily add the account info on the stream wrapper to preserve it down the line.
What does this fix?
It will prevent having inconsistent users being picked in sequential operations. Once a user is attached to a stream url, we'll assume any further operations should use that user unless otherwise specified by overriding it.

Reviewed with @paloknapo


App must target Android 13 (API level 33) or higher

upgrade android app to target 33+
confirm working in emulator, builds, no (new) errors in logs
depend on https://github.com/shapeshift/mobile-app/pull/97 being merged first

Update: 1 stood for 1 minute, not 1 week

I think we can also close this one due to the new release we've done


[BUG]:  Unusable for me. Something about prisma client.

How are you running AnythingLLM?
Docker (local)
What happened?
Downloaded the appimage, tried to run it.
Selected lmstudio and the included embedder.
Would not create a workspace just kept saying undefined.
Could not close it because it opens full screen with no controls. Had to force close it.
Re-opening it showed what I can only assume was the main window. Tried to create a workspace again but it errored.
I see this error:
Prisma Client could not locate the Query Engine for runtime "rhel-openssl-3.0.x".

This happened because Prisma Client was generated for "debian-openssl-3.0.x", but the actual deployment required "rhel-openssl-3.0.x".
Add "rhel-openssl-3.0.x" to `binaryTargets` in the "schema.prisma" file and run `prisma generate` after saving it:

generator client {
  provider      = "prisma-client-js"
  binaryTargets = ["native", "rhel-openssl-3.0.x"]
}

The following locations have been searched:
  /tmp/.mount_gearle8zoSqp/resources/backend/node_modules/.prisma/client
  /tmp/.mount_gearle8zoSqp/resources/backend/node_modules/@prisma/client
  /home/tim/Documents/anything-llm-desktop/anything-llm/server/node_modules/@prisma/client
  /tmp/prisma-engines
  /tmp/.mount_gearle8zoSqp/resources/backend/prisma

Are there known steps to reproduce?
No response

Duplicate of https://github.com/Mintplex-Labs/anything-llm/issues/898
The solution is in there. Basically need to unbundle app image, run a command, and it will work. Has to do with a build issue on bundling. It is being working on in that issue.

Gotcha thanks. I'll just use a different solution for now until there is a non-broken build.


Recommended database rule setting?

Hello,
Right now I have my furebase db rules setup as seen below, but I am not sure if this is considered sufficient, or what a more secure and typical example might look like that would work for a system like this.
I am wondering if anyone happens to have any sort of recommended database rule set for this/allowing a user to save data to their own "users" document? (/users/{userId})
Thanks,
-MH
rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if request.auth.uid != null;
    }
  }
}

Looks good for me. However, I am not security specialist. I recommend to post this question on stackoverflow, and tag with 'firestore' so that firebase security specialists get nitified.


Calendar LU file has invalid chars in German

What project is affected?
Calendar
What language is this in?
CLI tools
What happens?
Run botskills connect to add multi-language calendar skill, but the German LU model has characters that aren't parsed correctly.
What are the steps to reproduce this issue?
Install dependencies:

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
What were you expecting to happen?
All languages add successfully.
Can you share any logs, error output, etc.?
Updating Dispatch
Adding skill to Dispatch
Parsing en-us CalendarLuModel-en LU file
Parsing de-de CalendarLuModel-de LU file
Parsing es-es CalendarLuModel-es LU file
Parsing fr-fr CalendarLuModel-fr LU file
Parsing it-it CalendarLuModel-it LU file
Parsing zh-cn CalendarLuModel-zh LU file
There was an error while connecting the Skill to the Assistant:
Executing dispatch add for the en-us CalendarLuModel-en LU file
Error: An error ocurred while updating the Dispatch model:
Error: There was an error in the ludown parse command:
Command: ludown parse toluis --in "..\..\..\..\..\skills\csharp\calendarskill\Deployment\Resources\LU\de-de\Calendar.lu" --luis_culture de-de --out_folder "..\..\..\..\..\skills\csharp\calendarskill\Deployment\Resources\LU\de-de" --out calendar.luis
Error: The execution of the ludown command failed with the following error:
line 1906:20 token recognition error at: 'ü'
line 1926:19 token recognition error at: 'ö'
line 1946:21 token recognition error at: 'ß'
line 1950:21 token recognition error at: 'ß'
line 1952:21 token recognition error at: 'ß'
line 1982:22 token recognition error at: 'ä'

File: ..\..\..\..\..\skills\csharp\calendarskill\Deployment\Resources\LU\en-us\calendar.luis added to bf-virtual-assistant-skills-next_en-us_Dispatch.dispatch

Any screenshots or additional context?

same issue as https://github.com/microsoft/botframework-skills/issues/46

Passes with the latest botskills updates (at least the token recognition error), closing!


Update moshi to 1.13

Changes

Update moshi to 1.13
GithubRepoListResponseItem  does not use @Keep annotation

Codecov Report

Merging #161 (d879aa1) into main (35deff8) will increase coverage by 0.57%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##               main     #161      +/-   ##
============================================
+ Coverage     29.64%   30.21%   +0.57%
- Complexity       37       38       +1
============================================
  Files            55       55
  Lines           695      695
  Branches         93       93
============================================
+ Hits            206      210       +4
+ Misses          487      483       -4
  Partials          2        2

Impacted Files
Coverage Δ

...emplate/api/response/GithubRepoListResponseItem.kt
100.00% <100.00%> (+36.36%)
:arrow_up:

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 35deff8...d879aa1. Read the comment docs.


Please add a license

Thanks for publishing this project! I'm sure it will be useful for many.
Could you please add a license? I believe you can add one easily here: https://github.com/gmpetrov/utlimate-saas-js/community/license/new?template=MIT
Thank you!

✅ LICENCE


Refactor everything

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

132 of 289 (45.67%)  changed or added relevant lines in 8 files are covered.
25 unchanged lines in 5 files lost coverage.
Overall coverage increased (+2.8%) to 34.249%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/EasyPDF/ClassEasyPDF-Barcode.cs
5
11
45.45%

src/EasyPDF/ClassEasyPDF.cs
9
15
60.0%

src/EasyPDF/LineDashStyle.cs
5
14
35.71%

src/EasyPDF/ClassEasyPDF-Pictures.cs
0
15
0.0%

src/EasyPDF/Font.cs
22
43
51.16%

src/EasyPDF/LineStyle.cs
11
33
33.33%

src/EasyPDF/ClassEasyPDF-Text.cs
29
67
43.28%

src/EasyPDF/ClassEasyPDF-Lines.cs
51
91
56.04%

Files with Coverage Reduction
New Missed Lines
%

src/EasyPDF/ClassEasyPDF-Barcode.cs
1
28.3%

src/EasyPDF/ClassEasyPDF-Pictures.cs
2
0%

src/EasyPDF/ClassEasyPDF.cs
3
40.16%

src/EasyPDF/ClassEasyPDF-Lines.cs
7
47.46%

src/EasyPDF/ClassEasyPDF-Text.cs
12
31.95%

Totals

Change from base Build<PHONE_NUMBER>:
2.8%

Covered Lines:
346

Relevant Lines:
932

💛  - Coveralls


win-1 is in Quarantine state.

Type of Request
bug
Infrastructure Environment
LUCI, Github, Cocoon scheduler, Autosubmit, etc...
What is happening?
win-1 is in Quarantine state.

Steps to reproduce
Step 1:
Step 2:
..
Step n:
Expected results
I expect to see X when Y is finished.

This is dup of https://github.com/flutter/flutter/issues/144776.


Behaviour of BlockOperator when blocks are not set explicitly

I have a question about the BlockOperator class.
In the header file it says  'If a block is not set, it is assumed to be a zero block' and my understanding of this sentence would be that said block is set to all zeros , but it seems that when a block is not set explicitly, it is just NULL.
Is this a bug or a wrong understanding of the description?
Thanks in advance!

Hi, @enjoh ,
We generally think in terms of sparse operators which only store data for non-zero entries.  Therefore, if an entire block is zero there's no reason to explicitly set its entries to zero because those entries simply don't exist in the sparsity pattern.  When the block operator is applied, either via Mult or MultTranspose, any NULL blocks are skipped which has the same effect as multiplying by zero but is much more efficient.
I suppose a more accurate comment would be "Any blocks which are not explicitly set are treated as being equal to zero when the block operator is applied."
Best wishes,
Mark

Hello Mar,
thanks a lot for your answer, this makes sense.
Regards,
Johannes


Support manual trace flushing interface

Describe the feature
Ref: https://github.com/vercel/next.js/pull/35803#discussion_r842021435=
Unlike my expectations, cleanup_env_hook will not be called when parent process exists forcefully, like process.exit(). Since our trace teardown relies on cleanup_env entirely, there's no way caller can manually flushes trace in that case.
We may want to expose an interface to close subscribers manually, along with existing cleanup hoop.
Babel plugin or link to the feature description
No response
Additional context
No response

relavant: https://github.com/thoren-d/tracing-chrome/pull/10


CFE allows desugaring iterable of callable type in for-each to a function type

(Analyzer allows this too)
Take this program:
class C {
  void call() {}
}

void foo(Iterable<C> iterable, C c) {
  for (void Function() f in [c /*1*/]) { // This makes sense
    f;
  }

  for (void Function() f in iterable) { // Why is this allowed?
    f;
  }
}

void main() {
  foo([C(), C()], C());
}

The spec says:

Let e be an expression whose static type is an interface
type that has a method named call. In the case where the context type for e
is a function type or the type Function, e is treated as e.call.

I understand why the first is allowed: c /*1*/ has a static type which is an interface type with a call method, and a context type which is a function type.
I don't understand why the second is allowed. In void Function() f in iterable, there is no expression whose static type is an interface type that has a method named call.
Analyzer allows this too but I'm considering it a bug that should be fixed.

Thanks @eernstg I will re-word this issue then; the analyzer does not do any desugaring, as far as I know; as I'm rewriting how we do implicit tear-off conversion, I think analayzer's behavior will chang to not allow this conversion in a for-each, which would be a bug.


Whats the best way to upgrade?

I see you have all poured a lot of hard work in this since I installed many months ago. (ps my site its running strong thanks!) Whats the best way to upgrade an existing installation?

You can use git pull if you are on the master branch to get the latest production code running on your system/server. They push the new code base to your host.

Ok great thanks!

Hi, dont forget to update the packages installed in your Python Environment (virtualenv)
Use " pip install -r requirements/requirements.txt"  to upgrade.
If any problem, please recreate your env from scratch

Thanks Bruno I won't.
On Oct 9, 2015 5:20 PM, "Bruno Rocha"<EMAIL_ADDRESS>wrote:

Hi, dont forget to update the packages installed in your Python
Environment (virtualenv)
Use " pip install -r requirements/requirements.txt" to upgrade.
If any problem, please recreate your env from scratch
—
Reply to this email directly or view it on GitHub
https://github.com/quokkaproject/quokka/issues/306#issuecomment-146988496
.

In trying to fix it  myself I bit the  bullet and made a new virtualenv and started over with the exception of my database and local_settings.py  file but I am still getting this error below in my quokka.log. Can someone help me make sense of this   please what am I missing here.

INFO in before_request [./quokka/ext/before_request.py:9]:
Called only once, when the first request comes in
Traceback (most recent call last):
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/werkzeug/wsgi.py", line 650, in call
return app(environ, start_response)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1836, in call
return self.wsgi_app(environ, start_response)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1403, in handle_exception
reraise(exc_type, exc_value, tb)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1817, in wsgi_app
response = self.full_dispatch_request()
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1477, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1381, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1475, in full_dispatch_request
rv = self.dispatch_request()
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/app.py", line 1461, in dispatch_request
return self.view_functionsrule.endpoint
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/views.py", line 84, in view
return self.dispatch_request(*args, **kwargs)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/views.py", line 149, in dispatch_request
return meth(*args, **kwargs)
File "./quokka/core/views.py", line 144, in get
channel=channel)
File "./quokka/core/templates.py", line 16, in render_template
return render_theme_template(theme, template, **context)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/quokka_themes/init.py", line 191, in render_theme_templat
e
return render_template(last, **context)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/templating.py", line 127, in render_template
return _render(ctx.app.jinja_env.get_or_select_template(template_name_or_list),
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/jinja2/environment.py", line 851, in get_or_select_template
return self.get_template(template_name_or_list, parent, globals)
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/jinja2/environment.py", line 812, in get_template
return self._load_template(name, self.make_globals(globals))
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/jinja2/environment.py", line 774, in _load_template
cache_key = self.loader.get_source(self, name)[1]
File "/home/quokka/quokkaenv/local/lib/python2.7/site-packages/flask/templating.py", line 64, in get_source
raise TemplateNotFound(template)
jinja2.exceptions.TemplateNotFound: content/portal_list.html
[pid: 4000|app: 0|req: 1/1] <IP_ADDRESS> () {44 vars in 1167 bytes} [Sat Oct 10 18:34:44 2015] GET / => generated 0 bytes in 49
0 msecs (HTTP/1.1 500) 0 headers in 0 bytes (0 switches on core 0)

I fixed it. Thanks anyway.

@eurabilis  how did you solve this problem?I want get help from your condition


winrm process hangs

I've encountered an issue where winrm hangs while waiting for processes to complete on a t1.micro, but the processes are no longer running on the remote host.  The winrshost.exe processes are still around (in this case I'm running git clone).
This was encountered when running git clone 4 times in 4 different directories (in parallel).

I've also noticed that winrm doesn't seem to detect when the remote end disconnects. If I run sysprep /shutdown my winrm client hangs forever.


feat: Implement TryJoin for tuples up to 12 elements

Closes #25
This was quite easy: it's the opposite of RaceOk for tuples.

Fixed the implementation, I was very very wrong in the previous one


EmrEtlRunner: turn empty S3 directory detections through Sluice into EMR steps

This brings up-to-date EmrEtlRunner's "dead man's handle" detection of existing data in the pipeline, where the existence of that data means that a previous run is ongoing (or has failed partway through). EmrEtlRunner uses this detection to prevent itself from running.
In fact, this is a flawed approach. The problem is that the existence of data in the checked folders is not a sufficient check to determine whether another pipeline run is ongoing (or failed). This is because it takes an amount of time to boot a new pipeline run in EMR, during which time no data has been written, and so this prior ongoing run cannot be detected.
This was a far smaller problem before #276, because previously the file moves were done by Sluice, and the file moves to processing folder were commenced within a few second of startup, so the window for this race condition was just a few seconds, not 5-12 minutes.
The better alternative to this ticket is to use an end-to-end locking mechanism, similar to the locking mechanism found in Dataflow Runner.

De-scheduling


Issue with custom certification authority

Hi.
flask-oidc==1.3.0
python 3.6.5
flask 0.12.2
ubuntu 16.4.3
I setup everything to login with keycloak. Everything worked as expected if run against keycloak over HTTP.
Then I configured keycloak over HTTPS with a certificate created from a self signed CA:

flask redirect the browser to keycloak (no SSL issue because I imported the custom CA on my laptop)
I can do the login phase on keycloak
keycloak redirect the browser to flask (/oidc_callback)
flask return http code 500, error:

::ffff:<IP_ADDRESS> - - [2018-03-31 21:19:23] "GET / HTTP/1.1" 302 2133 0.031266
Traceback (most recent call last):
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/gevent/pywsgi.py", line 935, in handle_one_response
    self.run_application()
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/gevent/pywsgi.py", line 908, in run_application
    self.result = self.application(self.environ, self.start_response)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1997, in __call__
    return self.wsgi_app(environ, start_response)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1985, in wsgi_app
    response = self.handle_exception(e)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1540, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
    raise value
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
    raise value
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/flask_oidc/__init__.py", line 650, in _oidc_callback
    credentials = flow.step2_exchange(code)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/oauth2client/_helpers.py", line 133, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/oauth2client/client.py", line 2054, in step2_exchange
    http, self.token_uri, method='POST', body=body, headers=headers)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/oauth2client/transport.py", line 282, in request
    connection_type=connection_type)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/httplib2/__init__.py", line 1514, in request
    (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/httplib2/__init__.py", line 1264, in _request
    (response, content) = self._conn_request(conn, request_uri, method, body, headers)
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/httplib2/__init__.py", line 1187, in _conn_request
    conn.connect()
  File "/root/.virtualenvs/spy-registry-kjDCNykl/lib/python3.6/site-packages/httplib2/__init__.py", line 1013, in connect
    self.sock = self._context.wrap_socket(sock, server_hostname=self.host)
  File "/opt/python36/lib/python3.6/ssl.py", line 407, in wrap_socket
  _context=self, _session=session)
 File "/opt/python36/lib/python3.6/ssl.py", line 814, in __init__
   self.do_handshake()
 File "/opt/python36/lib/python3.6/ssl.py", line 1068, in do_handshake
   self._sslobj.do_handshake()
 File "/opt/python36/lib/python3.6/ssl.py", line 689, in do_handshake
   self._sslobj.do_handshake()
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:833)
Sat Mar 31 21:19:23 2018 {'REMOTE_ADDR': '::ffff:<IP_ADDRESS>', 'REMOTE_PORT': '46558', 'HTTP_HOST': '<IP_ADDRESS>:6000', (hidden keys: 30)} failed with SSLError

I suppose the problem is in these rows (flask_oidc/__init__.py, method _oidc_callback):
        # make a request to IdP to exchange the auth code for OAuth credentials
        flow = self._flow_for_request()
        credentials = flow.step2_exchange(code)
        id_token = credentials.id_token

I think flask tries to communicate with keycloak and the SSL handshake fails.
Custom CA cert is imported in system ca store where flask runs.
I tried to use the following env vars:

REQUESTS_CA_BUNDLE
PYTHONHTTPSVERIFY
SSL_CERT_DIR
SSL_CERT_FILE

but no way to get rid of the issue.
I tried to follow the code, but I missed myself in it.
Thanks

I have exctly the same problem and I haven't found any solution to bypass that error at the moment.
I've tried to create an unverified ssl context, but without any success:
ssl._create_default_https_context = ssl._create_unverified_context

@trourance as a workaround I configured userinfo_uri, token_uri, token_introspection_uri with the http endpoint. This is my client_secret.json:
{
    "web": {
        "issuer": "https://auth.spy.local/auth/realms/Spy",
        "auth_uri": "https://auth.spy.local/auth/realms/Spy/protocol/openid-connect/auth",
        "client_id": "spy-registry",
        "client_secret": "0be4d4c7-4d82-4951-86ba-1deb8bca5c08",
        "redirect_uris": [
            "https://registry.spy.local/oidc_callback"
        ],
        "userinfo_uri": "http://<IP_ADDRESS>:8080/auth/realms/Spy/protocol/openid-connect/userinfo",
        "token_uri": "http://<IP_ADDRESS>:8080/auth/realms/Spy/protocol/openid-connect/token",
        "token_introspection_uri": "http://<IP_ADDRESS>:8080/auth/realms/Spy/protocol/openid-connect/token/introspect"
    }
}

Hope this can help you in the meantime

@njordr Thank you so much, your workaround works perfectly.

Btw, I have the same issue when using a perfectly valid certificate. It's impossible at the moment to use https at all and it's a blocker.

@njordr I've found the workaround. The problem comes from the httplib2 library which uses its own ca file to validate the ssl certificates. You can add your own ca certificate to this file and enable https endpoints in client_secret.json:
cat myca-cert.crt >> [path_to_python_libs]/httplib2/cacerts.txt
HTH

@trourance great, thanks a lot

Yeah, so this depends on your deployment of httplib2 and the fact that it uses its own CA.
I do not think I want to really support overriding that from inside flask-oidc, and people should instead add the CA to the file that httplib2 uses as CA file.

cat myca-cert.crt >> [path_to_python_libs]/certifi/cacert.pem did it for me


rego support: evaluate most important builtins that have to be implemented host side

The Rego languge provides a series of functions that can be used by policy authors, these are called "built-ins".
Some of these built-ins are automatically "bundled" with the final Wasm file, others have to be provided by the WebAssembly execution host.
This page provides a list of all the built-ins offered by OPA. The "Wasm support" column clearly states which ones are automatically provided (:white_check_mark:) and which are instead "SDK-dependent".
Goals of this issue: identify the most used Rego built-ins
This can be achieved by looking at the policies defined here:

gatekeeper policies: https://github.com/open-policy-agent/gatekeeper-library
OPA: https://github.com/open-policy-agent/library/tree/master/kubernetes

This is part of https://github.com/kubewarden/policy-evaluator/issues/14

I've created this simple CLI tool that scans a directory recursively and analyzes all the Rego file it finds. For each file, the tool identifies the built-ins that must be provided by the SDK. Finally the tool provides an overview of all the SDK dependent built-ins found, and how many Rego files are actually referencing them.
I ran the tool against the gatekeeper and the OPA library repositories. The results are shown below.
Gatekeeper library
Running the tool against a checkout of the repository produces the following output:
Rego files analyzed: 29
List of builtins that have to be provided by the SDK

NAME   	OCCURRENCES
sprintf	28

That means the 28/29 files are using the sprintf built-in. Note well: the function could be used more than once per file, but we don't care about that.
OPA library
This repository contains multiple folders. Each folder has a specific use case in mind: Kubernetes, terraform, AWS, Istio,...
Right now we care only about the Kubernetes policies. Pointing the tool against the kubernetes directory produces the following output:
Rego files analyzed: 19
List of builtins that have to be provided by the SDK

NAME      	OCCURRENCES
sprintf   	5
cast_array	1
http.send 	1

Something worth of note: the cast_array built-in function cannot be found inside of the official built-ins documentation.

I think we can consider this card done.


Configurable delete range

PTAL

Do we still need to support the test without DeleteRange now?
Rest LGTM
PTAL @huachaohuang @BusyJay

LGTM

@zhangjinpeng1987 I think we can merge this, and use delete range as default in our all tests now.

/run-all-tests


Dependency not found in ui test

I have implemented custom link to check if rsa generate() uses bits less than 2048.
I did include openssl in the cargo dependencies including dev-dependencies but it doesn't find openssl crate when I run cargo test
use openssl::rsa::{Rsa, Padding};
fn main() {
    let rsa = Rsa::generate(1024).unwrap();
    let padding = Padding::PKCS1;
    let src: Vec<u8> = msg.into_bytes();
    let mut dest : Vec<u8> = vec![0;512];
    let _ = rsa.public_encrypt(&src, dest.as_mut_slice(), padding).unwrap();
}

Thanks a lot for this report. Could you share your code so that I could try to reproduce the failure?

Never mind. I am able to reproduce the bug. I am looking into it.

Thank you for dylint. I have been trying to figure out how to build custom links and dynamically load without modifying clippy.  Goal is to implement OWASP top 10. Let me know if you have done any work in this area.

Thanks again for filing this issue. Here is a short term fix until I can find a good long term solution.
If you add ui/main.rs as bin target to your Cargo.toml file, you can run cargo build -v to see the flags passed to rustc. You can then extract the flags used for linking and pass those in DYLINT_RUSTFLAGS.
Specifically, I added this to my Cargo.toml file:
[[bin]]
name = "ui"
path = "ui/main.rs"

Running cargo build -v, I then saw this:
     Running `rustc --crate-name ui --edition=2018 ui/main.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C split-debuginfo=unpacked -C debuginfo=2 -C metadata=4d4070dbb894c4b2 --out-dir /Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps -C linker=dylint-link -C incremental=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/incremental -L dependency=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps --extern clippy_utils=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps/libclippy_utils-4d989874afb6f43d.rlib --extern dylint_linting=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps/libdylint_linting-f23ae2b3c8af1f5b.rlib --extern if_chain=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps/libif_chain-295c1290813174bb.rlib --extern openssl=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps/libopenssl-16fe22e03505d944.rlib -L<EMAIL_ADDRESS>
From that I extracted, the relevant --edition, -L flags, --extern flags. I then ran:
DYLINT_RUSTFLAGS="--edition=2018 -L dependency=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps --extern openssl=/Users/sam.moelius/github/trailofbits/dylint-template/target/debug/deps/libopenssl-16fe22e03505d944.rlib -L<EMAIL_ADDRESS>cargo test

And the test built and ran.
To reiterate: this is just a workaround. I intend to find a better long term solution. I'll leave the issue open until then.

Goal is to implement OWASP top 10. Let me know if you have done any work in this area.

I haven't, but I think that is a fantastic idea.

@rohitjoshi I think I've found a reasonable solution. Would you be able to verify that it solves your use case before I merge?
The solution is here: https://github.com/trailofbits/dylint/pull/20
In a nutshell, it adds two functions to dylint_testing: ui_test_example and uit_test_examples. I'll describe the former first.
One declares an example as one normally would in their Cargo.toml file, e.g.:
[[example]]
name = "ui"
path = "ui/main.rs"

Then, in their lib.rs file, they would use ui_test_example instead of ui_test, e.g., something like:
#[test]
fn ui() {
    dylint_testing::ui_test_example(env!("CARGO_PKG_NAME"), "ui");
}

where "ui" is the example's name.
uit_test_examples is similar, except it tests all declared examples, so there is no second argument.
There's a complete example here: https://github.com/trailofbits/dylint/tree/e767217b26376d7cf708e1bd9469776c68d79a2b/examples/question_mark_in_expression
Would you be able to try this out and see if it works for you?
Adding the following to your Cargo.toml file should allow you to use this version:
[patch.crates-io]
dylint_internal = { git = "https://github.com/smoelius/dylint" }
dylint_testing = { git = "https://github.com/smoelius/dylint" }

Hey, @rohitjoshi. I've used #20 in some of my own work, and I'm reasonably confident it works how I want it to.
Still, do you want to give it a shot before I merge?

I went ahead and merged #20 and pushed a new version. I think those changes address this issue, so I am going to close it.
Thanks again for this report, @rohitjoshi. Feel free to reopen the issue if you still have problems.
Also, please keep us updated on your OWASP top 10 project. Very interested to hear how it goes!

Sorry, I am on vacation . Will validate once back.

Sorry, I am on vacation . Will validate once back.

No worries. Enjoy!


Add lazyLoad option and more examples in the demo

I tested with up to 10k slides. At that point it seems fine with devtools closed, but devtools adds a fair bit of lag, so I left it at 1k slides in the demo.

This looks great. Let me give this a solid run through first and then we'll get this merged.

Any chance this might make it into a release soon?


🔨 Implement command options (subcommands)

Feature
Implement subcommands. So that eg the following data gets sent to discord:
{
    "name": "permissions",
    "description": "Get or edit permissions for a user or a role",
    "options": [
        {
            "name": "user",
            "description": "Get or edit permissions for a user",
            "type": 2, // 2 is type SUB_COMMAND_GROUP
            "options": [
                {
                    "name": "get",
                    "description": "Get permissions for a user",
                    "type": 1, // 1 is type SUB_COMMAND
                    "options": [
                        {
                            "name": "user",
                            "description": "The user to get",
                            "type": 6, // 6 is type USER
                            "required": true
                        },
                        {
                            "name": "channel",
                            "description": "The channel permissions to get. If omitted, the guild permissions will be returned",
                            "type": 7, // 7 is type CHANNEL
                            "required": false
                        }
                    ]
                },
                {
                    "name": "edit",
                    "description": "Edit permissions for a user",
                    "type": 1,
                    "options": [
                        {
                            "name": "user",
                            "description": "The user to edit",
                            "type": 6,
                            "required": true
                        },
                        {
                            "name": "channel",
                            "description": "The channel permissions to edit. If omitted, the guild permissions will be edited",
                            "type": 7,
                            "required": false
                        }
                    ]
                }
            ]
        },
        {
            "name": "role",
            "description": "Get or edit permissions for a role",
            "type": 2,
            "options": [
                {
                    "name": "get",
                    "description": "Get permissions for a role",
                    "type": 1,
                    "options": [
                        {
                            "name": "role",
                            "description": "The role to get",
                            "type": 8, // 8 is type ROLE
                            "required": true
                        },
                        {
                            "name": "channel",
                            "description": "The channel permissions to get. If omitted, the guild permissions will be returned",
                            "type": 7,
                            "required": false
                        }
                    ]
                },
                {
                    "name": "edit",
                    "description": "Edit permissions for a role",
                    "type": 1,
                    "options": [
                        {
                            "name": "role",
                            "description": "The role to edit",
                            "type": 8,
                            "required": true
                        },
                        {
                            "name": "channel",
                            "description": "The channel permissions to edit. If omitted, the guild permissions will be edited",
                            "type": 7,
                            "required": false
                        }
                    ]
                }
            ]
        }
    ]
}

Code implementation
Open for discussion, please post suggestions on how you'd like to use this in the lib.
Useful link(s)
https://discord.com/developers/docs/interactions/application-commands#application-command-object-application-command-option-structure

@mwath yeah, like I said I'd like to do it through type annotations. (So your Using the function as type hint). Which is a system that could work. But I also quote: I just haven't figured out yet how to do groups properly.
Thanks for the suggestions tho, and its great to see that we're on the same page. 😊

Any ideas? I'd like to pick something so someone can get started on this cause i feel like this will never happen otherwise.
Right now im leaning torwards @mwath's third idea.

newest idea
cmd = Command(name='cmd', description=...)

@command(description="description", parent=cmd)
async def sub1(self, arg1: str):
    return arg1

@command(description="description", parent=cmd)
async def sub2(self, arg1: str, arg2: str):
    return arg1 + arg2

Using a parent argument will lead to less code duplication

Different stolen implementations
Hikari Lightbulb
tldr SUPER jank because the group is the second string in @lightbulb.command I rate 2/10
import lightbulb

bot = lightbulb.BotApp(..., prefix="!")

@bot.command
@lightbulb.command("foo", "test group")
@lightbulb.implements(lightbulb.PrefixCommandGroup)
async def foo(ctx: lightbulb.Context) -> None:
    await ctx.respond("invoked foo")

Hikari Tanjun not very bloated. I like this method.
top_group = component.with_slash_command(tanjun.slash_command_group("places", "get info about places"))
nested_group = top_group.with_command(tanjun.slash_command_group("interaction", "say hello or something!"))

@nested_group.with_command
#A LOT MORE BLOAT HERE

Could be cool
class Bot(Client):
    @command(...)
    @group("")
    @subgroup("")
    def comamnd_here():
        ...

I still prefer the one from 18 days ago currently, but ig we can make a poll vote or something

Guess ill go with that method since it seems really maintainable


Unknown database error

The most simple docker install throws this error.
docker run --rm -it ghost:alpine
connect ECONNREFUSED <IP_ADDRESS>:3306

"Unknown database error"

Then, the container exits with code 2.

Since 5.x, ghost upstream has moved away from sqlite as a supported configuration, so an external database is required.
There is an example docker-compose file on the Docker Hub readme:
https://github.com/docker-library/docs/tree/94f25a1ea232fabf717d8871e9d30e691dd06c3a/ghost#-via-docker-stack-deploy-or-docker-compose


Match regions for licenses and resource account numbers.

[Enter feedback here]
When assigning a Microsoft Teams Phone Resource Account license, make it clear to select the region in which the account is assigned to from the drop down list at the top of the license selection page.  Otherwise when searching for a phone number to assign to a Resource Account, if the regions don't match, you won't see your number.  For example, if the region in licenses is set to United Kingdom, and the resource account number is a US number, only +44 numbers will be listed.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 81fa6268-92b2-546f-9200-f323bb48e90e
Version Independent ID: 6ce89bc0-ae69-b6f1-df50-532e46b2e67b
Content: Manage resource accounts for service numbers - Microsoft Teams
Content Source: Teams/manage-resource-accounts.md
Service: msteams
GitHub Login: @DaniEASmith
Microsoft Alias: danismith

Thanks for your feedback!


Mobile players can now move on the board

Depends on #29

My 2c on the UI: When the player has to choose a tile to push, don't make the non-acceptable tiles grey - this makes it hard to see the actual row/column movement because the insertion changes both the position and the color of the tiles. Instead, change the color of the tiles that can be pushed.

My 2c on the UI: When the player has to choose a tile to push, don't make the non-acceptable tiles grey - this makes it hard to see the actual row/column movement because the insertion changes both the position and the color of the tiles. Instead, change the color of the tiles that can be pushed.

Can we discuss this later and implment it in a future pr ?


Fully remove MiqLdap and LDAP as a supported external authentication option

We were previously in the process of deprecating MiqLdap support. However, that got put on hold. It is currently supported, but it needs to be configured manually because it has since been remove from the authentication settings UI.
There is also a script that performs an inline conversion of an MiqLdap configuration to external auth through Apache. It should be tested and updated if necessary for work with the latest version of ManageIQ

Duplicate of https://github.com/ManageIQ/manageiq/issues/20017


Changing language crashes the Picotorrent

When I try to change the UI language, PicoTorrent asks for a restart. After accepting restart, the following error emerges: "Failed to create a connection to server 'PicoTorrent' on topic 'ApplicationOptions': a client's attempt to establish a conversation has failed." Picotorent doesn't start on its own after that. After manually starting Picotorrent, the program works without problems and with changed UI language.
Spotted on Windows 10 ( v. 20H2) with Picotorrent 0.25.0.

Same here. PicoTorrent started with my current locale (pt-BR) but I wanted to change the display language to English. After clicking on 'OK to restart application', this error is thrown:

Opening the log, the only thing strange to me is that the from locale is appended with a NUL char:

There is an old report about this error in #640


diagnostics: pull in latest docs automatically

Connects-to: https://github.com/balena-io/device-diagnostics/issues/110
Change-type: minor
Signed-off-by: Matthew McGinn<EMAIL_ADDRESS>

Looks great. I tested locally and am seeing the correct latest DIAGNOSE_VERSION=4.9.2 vs DIAGNOSE_VERSION=4.8.0 which is currently live on the docs.

@garethtdavies the only tricky part here is that these docs go "live" in the repo before necessarily being deployed to balenaCloud. I still think it's better to autoupdate them, but maybe this needs more careful consideration to tightly couple the two.

Right, we could also version the fetch-external.sh script rather than pulling from master though I'm not aware of any way we could (automatically) update that based off balenaCloud deployments.
We also have the flip side where the docs are not updated even on an upstream change (unless there is a docs release), though that seems easier to resolve if we can find a suitable trigger.

@xginn8 also, see steps 2-3 here which I missed in my review 😕 https://github.com/balena-io/docs#adding-external-documentation which are required for the edit link to populate correctly. This was implemented for those other external repos via this PR https://github.com/balena-io/docs/pull/1211/files
Given we have similar issues currently, I'd be in favor of either merging as is (with the above steps added) or manually adding the docs versions to the fetch-external.sh script. I don't have any sense of how much current master could diverge from currently deployed balenaCloud, but if meaningful perhaps fixing to a version is the best approach which at least resolves the single source of truth issue.

@xginn8 also, see steps 2-3 here which I missed in my review confused https://github.com/balena-io/docs#adding-external-documentation which are required for the edit link to populate correctly. This was implemented for those other external repos via this PR https://github.com/balena-io/docs/pull/1211/files
Given we have similar issues currently, I'd be in favor of either merging as is (with the above steps added) or manually adding the docs versions to the fetch-external.sh script. I don't have any sense of how much current master could diverge from currently deployed balenaCloud, but if meaningful perhaps fixing to a version is the best approach which at least resolves the single source of truth issue.

Thanks for pointing those out, sorry I missed them the first time around! I will merge as-is, I don't think it's a show-stopper but just wanted to point it out.


Can't produce the right query with query builder

Hi :-),
I'm trying to make an equivalent to this query with the query builder :
SELECT "a".*
FROM "action" AS "a"
WHERE	"a"."ifplId" IN ('1234')
AND "a"."when" = (
	SELECT MAX ("b"."when")
	FROM "action" AS "b"
	WHERE "a"."ifplId" = "b"."ifplId"
);

I tried with the raw method and it works.
const actions = knex.raw(`
      SELECT "a".*
      FROM "action" AS "a"
      WHERE	"a"."ifplId" IN (:ifplIds)
      AND "a"."when" = (
      	SELECT MAX ("b"."when")
      	FROM "action" AS "b"
      	WHERE "a"."ifplId" = "b"."ifplId"
      );`,
      { ifplIds: ifplIds.join(',') },
).toString; // produce the sql above

If I use the query builder, I don't succeed to have the right SQL.
const actions = knex
  .queryBuilder()
  .select('a.id')
  .select('a.when ')
  .from('action AS a')
  .whereIn('a.ifplId', ifplIds)
  .andWhere('a.when', '=', qb => {
    qb
      .max('b.when')
      .from('action AS b')
      .where('b.ifplId', '=', 'a.ifplId');
  })
  .toString();

It produces :
select "a"."id", "a"."when"
from "action" as "a"
where "a"."ifplId" in ('1234')
and "a"."when" = (
    select max("b"."when")
    from "action" as "b"
    where "b"."ifplId" = 'a.ifplId' // here is the error
)

Is it a bug or did I make an error ?
Thanks in advance. :-D

.where('b.ifplId', '=', 'a.ifplId');

->
.where('b.ifplId', '=', knex.raw('??', [ 'a.ifplId' ]));

Thanks :-D


WIP - [Ref-080] Finished Component and story for Viewing Volunteer Calendar

WIP - [Ref-080] Finished Component and story for Viewing Volunteer Calendar

Sending through my latest work as per the sprint


Open database failing in production

OPEN database fails in production. Database is working as expected in debug mode. Because I am also using typeorm in conjunction with this project I am not sure which library is causing the error.
Expected Behavior

Database should open and initialize tables successfully in production and debug modes.
Current Behavior

Database is opening in debug mode and failing in production
Steps to Reproduce (for bugs)

Using typeorm I have created entities in the following form:
import { EntitySchema } from 'typeorm';
import { StorageModel } from '../models/StorageModel';

export default new EntitySchema({
  name: 'Storage',
  target: StorageModel,
  columns: {
    key: { type: 'text', primary: true },
    value: { type: 'text' },
  },
});

Then I am opening database with the following config:
createConnection({
      name: 'db.sqlite',
      type: 'react-native',
      database: 'react-native',
      location: 'default',
      // logging: ['error', 'query', 'schema'],
      synchronize: true,
      entities: [
        Translation,
        User,
        Post,
        Download,
        Asset,
        Option,
        QueuedRequest,
        Storage,
        HelpItem,
      ],
    });

In debug the database opens correctly and I have used it to create many features. It was going very well until I tried building the release apk. I get the following error in adb logcat...
08-08 19:04:52.174 19954 20022 I ReactNativeJS: OPEN database: react-native
08-08 19:04:52.340 19954 20032 E SQLiteLog: (1) near ")": syntax error
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: SQLitePlugin.executeSql[Batch]() failed
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: android.database.sqlite.SQLiteException: near ")": syntax error (code 1): , while compiling: CREATE TABLE "temporary_t" ()
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:895)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:506)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:726)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1428)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1367)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at org.pgsqlite.SQLitePlugin.executeSqlStatementQuery(SQLitePlugin.java:805)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at org.pgsqlite.SQLitePlugin.executeSqlBatch(SQLitePlugin.java:712)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at org.pgsqlite.SQLitePlugin.access$100(SQLitePlugin.java:49)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at org.pgsqlite.SQLitePlugin$DBRunner.run(SQLitePlugin.java:927)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
08-08 19:04:52.340 19954 20032 E unknown:SQLitePlugin: 	at java.lang.Thread.run(Thread.java:764)

Context

Using react-native-sqlite-storage with typeorm to build offline support for a react-native app.
Your Environment

React Native SQLite Storage Version used: 3.3.10 and also on 3.2.0
React Native version used: 0.60.0
Operating System and version (simulator or device): LG G6 Android 8.0.0
IDE used: Android Studio
Link to your project: Private client project SRY

There is a syntax error is the SQL that you're sending. createConnection is not this library's API call.

Any update on this one? Experiencing the same issue.

what is the issue? createConnection is not this library's API call.

I have the same issue, while debug is OK and release is failed with the same error.


Move async logic out of the client, address #248

Fixes #248
Follow on work in consequent PRs are:

Move to a single queue solution
Refactor the delete code to a method like pollInstance
write complete unit tests for corner cases

@vaikas-google generally, :+1: on moving the polling logic out of the broker client and into the controller. looks like this is going in the right direction

@vaikas-google you should be able to rebase onto #648 now

Moving to 0.0.5 since this is still in progress

One main thing: do we really need a separate method to handle polling?  Experience writing controllers like this tells me that's it's much easier long-term to keep all of the logic into a single transaction script.

@pmorie adding more code into a single method (notice I already pulled out some stuff out of there) that's already was pushing 400 lines, adding more if/else serial logic seems totally wrong to me. It's very difficult already to test much of this stuff because the methods are so large and breaking into smaller more manageable chunks seems like a much better approach both for understanding the code base, and for being able to write more focused unit tests.Note that here's nothing preventing us from adding a call from  reconcileInstance to pollServiceInstance method later from the reconcileInstance if that's what we want to d since  it's pulled into it's own method. So, yes, imho we really do need to create a separate method that actually handles the polling so that it can be tested more easily instead of adding more logic into one giant serial reconcile method.

Ok, I want to add couple of more tests for deprovisioning, but please take another look.

@vaikas-google LGTM, but tests failed

@vaikas-google are you comfortable folding #732 & #733 into this? I don't want to double work on those if you intend to do it. I also don't want to make a bunch of merge collisions later. What do you think?

@MHBauer

@vaikas-google are you comfortable folding #732 & #733 into this? I don't want to double work on those if you intend to do it. I also don't want to make a bunch of merge collisions later. What do you think?

Ville and I talked a lot about this yesterday, and I think this PR is really, really big, and pushes things significantly in the right direction.  I'd personally prefer to get this in as-is and do some immediate follow ups (of which there are others we want to do besides the ones you named).

Also, I have people effectively blocked by this that need it.

Sounds good to me. That's where I'm about.

I'm not sure what you mean fold them in. I think last_operation is now handled by this PR correctly. Also the polling interval is now changeable and uses exp. backoff and I think we could make it configurable, but would rather not fold into this pr.

@MHBauer does that mean your are LGTM on this PR?

I have a couple datapoints from @jmrodri and @spadgett that this in conjunction with #757 works correctly for async provisioning, so I think we should merge this.

Looks good to me, some small nits but nothing to do with the underlying architecture.

Don't let me hold it up. I was in the middle of a review but had to go present.
I've got a broker I can try with this.

I'm going to merge this in good faith because we have good data from @jmrodri and @spadgett that this and #757 collectively make async much better.


[Feature]Add  method Elements.Befor(Node node)

#953

Thanks, but most of this diff is irrelevant and duplicating the Cleaner about the place (?). Not appropriate to merge.


double dipping new guy

I have accidently made my tokens twice from tow diffrent issuers because i was under the iumpresion it did not wor the first time now in my wallat it shows the STV token i made but twice how evr they noth say zero which is why i started over anyway, It showed zero anbd gave nme this error
"Cannot read property 'render' of undefined" at https://stellar.expert/explorer/public/asset/STV-GAPWGFM4ZNKXG5U7IEXMIQCXXSMP2X2ZAWDMECWDMNRKZ5EBQ7OFRDWZ?filter=orderbook
TypeError: Cannot read property 'render' of undefined
at le (https://stellar.expert/distr/explorer.js:1:135673)
at Zi (https://stellar.expert/distr/app.js?v=0.15.20:2:523629)
at Es (https://stellar.expert/distr/app.js?v=0.15.20:2:569679)
at yu (https://stellar.expert/distr/app.js?v=0.15.20:2:562421)
at mu (https://stellar.expert/distr/app.js?v=0.15.20:2:562346)
at su (https://stellar.expert/distr/app.js?v=0.15.20:2:559376)
at https://stellar.expert/distr/app.js?v=0.15.20:2:511017
at t.unstable_runWithPriority (https://stellar.expert/distr/app.js?v=0.15.20:2:586073)
at Qo (https://stellar.expert/distr/app.js?v=0.15.20:2:510726)
at Yo (https://stellar.expert/distr/app.js?v=0.15.20:2:510962)

The problem has been fixed a week ago.
Sorry for the delay with response and all inconveniences. We have to deal with a huge wave of support request.


Allow Full Access is off

Hello. When I launch keyboard without allowing full access it crashes. The crash happens before the init method is called. Please, help me find out how to solve this problem

Do you see this behavior when running the project as is? Because I do not see this issue.


Rhel8 integration tests

What does this PR do?
Run CLI tests against appliance running on RHEL

What's changed? Why were these changes made?

Added a new step in Jenkins file
Added a new docker file for test on RHEL
Docker compose file

Updated Conjur image version
Added Appliance container
Added cli container

How should the reviewer approach this PR, especially if manual tests are required?

No regression

What ticket does this PR close?
Resolves #181
Checklists
Change log

[ ] The CHANGELOG has been updated, or
[x] This PR does not include user-facing changes and doesn't require a CHANGELOG update

Test coverage

[ ] This PR includes new unit and integration tests to go with the code changes, or
[ ] The changes in this PR do not require tests

Documentation

[ ] Docs (e.g. READMEs) were updated in this PR, and/or there is a follow-on issue to update docs, or
[x] This PR does not require updating any documentation

@eranha  left some comments :) fantastic work!


support us section mobile friendly

made support us section - mobile friendly and added some scale hover effect.
Closes #200 , made the changes with suggestions from #266
// desktop

//mobile

made support us section - mobile friendly and added some scale hover effect.
Closes #200 , made the changes with suggestions from #266
// desktop

//mobile

Nice work.
Feedback:

In the mobile view, as per a good UX flow, the name of the author should be below the quote instead of being beside it.

You can change the concluding line as " Support us and help us assist you better" [ Remember in Business Communication one should always try to use different words to convey a common message]

@smaranjitghose i have  made the changes as suggested.


Airside playback updates

This change is

What was the issue that made this close and not merge?  @rlutes


Datepicker Position top / bottom

The date-picker always open at bottom of page.
But it some case it may be needed to open at top, please check this screenshot:

Ideally here if component automatically adjust based on window then it would be great.

I needed to change the position of the calendar box to be on the top of the input.
Here is how I achieved it:
#litepie label + div {
    @apply md:top-auto md:bottom-16;
}

/*
* If you are using the default left placement of the arrow
*/
.litepie-datepicker.place-left::before {
    @apply md:top-auto md:bottom-0 md:rotate-[135deg] md:translate-x-2/4 md:translate-y-2/4
}

/*
* If you are using the right placement of the arrow
*/
.litepie-datepicker.place-right::before {
    @apply md:top-auto md:bottom-0 md:rotate-[135deg] md:translate-x-2/4 md:translate-y-2/4
}

Here is the result:

@jatinthapar1910 Hopefully it helps


Queryroutes outputs fee value for wrong channel

Background
lncli queryroutes shows fee for the wrong channel.
For my test i set the basefee to the following values:
A->B is 0 sat, B->C 10 sat, C->D 20 sat, but queryroutes shows the 10 sat fee for A->B, 20 for B->C and 0 for C->D:
bash-4.4# lncli --network=simnet queryroutes 0295d50da9904a063b4f92251eb7f828cbc75a3410d210fd2853a47f8e318456ea 100
{
    "routes": [
        {
            "total_time_lock": 724,
            "total_fees": "30",
            "total_amt": "130",
            "hops": [
                {
                    "chan_id": "440904162803712",
                    "chan_capacity": "977800",
                    "amt_to_forward": "120",
                    "fee": "10",
                    "expiry": 580,
                    "amt_to_forward_msat": "120000",
                    "fee_msat": "10000"
                },
                {
                    "chan_id": "450799767453696",
                    "chan_capacity": "1000000",
                    "amt_to_forward": "100",
                    "fee": "20",
                    "expiry": 436,
                    "amt_to_forward_msat": "100000",
                    "fee_msat": "20000"
                },
                {
                    "chan_id": "460695372103680",
                    "chan_capacity": "1000000",
                    "amt_to_forward": "100",
                    "fee": "0",
                    "expiry": 436,
                    "amt_to_forward_msat": "100000",
                    "fee_msat": "0"
                }
            ],
            "total_fees_msat": "30000",
            "total_amt_msat": "130000"
        }
    ]
}

Is there a specific reason why it's displayed like that or is it a bug?
I think that output is very confusing, because it let's you think you're paying fees to yourself and that the last channel has no fees.
Also the "expiry" and "amt_to_forward" values seem to be shifted in the same way by 1 channel.
Your environment
version: 0.5.0-beta commit=e9809c715ecba644ee86b4324822235f862dfccb
simnet with 4 nodes (docker)
Steps to reproduce
Set up 4 nodes with channels A-B,B-C,C-D and set the fee for each channel to a different value with lncli updatechanpolicy.
Check the fees with lncli queryroutes from node A to D.
Expected behaviour
The fee value should match witch the correct channel id.
Actual behaviour
The values are shifted by 1 channel.

The fee field in its current interpretation shows the fee that will be paid for the next hop of the current hop. So in this case, the first hop will pay a fee of 10 satoshis for the second hop, which matches with the policies that you've set on each channel. I do agree this is perhaps unintuitive and could use a better name to clarify its meaning.

The first element in the hops list gives you:

The channel id of the channel between the source node and the node that is the first hop. This is the incoming channel of the first hop node.
The fee that will be withheld by that hop for forwarding the payment. This based on the outgoing channel policy of the first hop node.

The queryroutes output is as expected, but it is indeed confusing because properties of both incoming and outgoing connections of a node are mixed in the same (array) element.

The fee there is the fee we pay to the node for that hop. So the fees aren't really wrong, but may not be displayed how you'd initially expect them to be. As A you never pay a fee to the first hop, but you pay them for transit to the second hop. By hop here I mean node rather than edge.


Support for renamed redis commands

fixes #29

hi @houtmanj, it doesn't seem the email listed in this pr's git commit (link) shows up on our records as having signed the cla, can you double check please?

@jsvd I just confirmed my email adress and received the contract on the email address from the patch.
I assume the data propagation takes a little while, but everything should be fine now.

@jsvd here you are.
The build seems a little shaky though.  Just now it failed on a java compilation errors and last week there was a timing issue.  One of the rspec tests seemed to be checking the duration of a sleep orso.

version 3.4.0 has been shipped with this feature https://github.com/logstash-plugins/logstash-input-redis/blob/master/CHANGELOG.md#340


Port qwik-playgroun to qwik

Migrate app from react to qwik
Allow running the app in the browser with serviceworkers

Done!


Allow options in acquireLease/releaseLease functions

To set the leaseDuration.

Warnings

:warning:
Please include a Pivotal story at the beginning of the PR title (see below).

Example of PR titles that include pivotal stories:

single story: [#123456] my PR title
multiple stories: [#123456,#123457,#123458] my PR title

  Generated by :no_entry_sign: dangerJS against af96cee6d18af0fe7d9f00569e886d92368a05c2

Released v0.6.4


Fix build.gradle dependency

Make the sourcesJar Gradle task depend on the generateVersionFile task to ensure the version file is generated before creating the sources JAR.
Fixes a gradle warning.

#79  👈
main

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

Join @zack13532 and the rest of your teammates on  Graphite

Merge activity

Aug 6, 10:14 AM EDT: @zack13532 merged this pull request with Graphite.


Example Code Documentation Error in func updateReachability()

Describe the bug
At this link in the docs under Retrieving the current network path -> Closurs
the following example code is missing a ')' and will not compile.
func updateReachability() {
    NetworkMonitor.networkPath(completionHandler: { (path: NWPath) in
        // Do something with `path`
    }
}

The code should be
func updateReachability() {
        NetworkMonitor.networkPath(completionHandler: { (path: NWPath) in
            // Do something with `path`
        }) // <--- this parenthesis is missing.
}

or just
func updateReachability() {
        NetworkMonitor.networkPath() { (path: NWPath) in
            // Do something with `path`
        }
}

Fixed in release 1.5.1


Mistake in the documentation

Hey João,
There is a small mistake in the documentation.

Thank you)

Oops, sorry, I'll update the docs. Thanks for reporting!

:tada: This issue has been resolved in version 3.0.0-pre.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 3.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


fix(healthcheck) Use pair instead ipair for hcs weak table

This PR fixes an issue with active healthchecks being disabled after sometime when targets are being removed/added to an upstream in kong.
This PR is based on https://github.com/Kong/lua-resty-healthcheck/pull/78 but for lua-resty-healthcheck version 1.5.0 used in kong 2.8.0.
Steps to reproduce the issue.

In a new shell run docker-compose up with following docker-compose.yml

version: '3.7'

volumes:
  kong_data: {}

networks:
  kong-net:
    external: false

services:
  kong:
    image: kong:2.8.0
    depends_on:
      - db
    environment:
      KONG_LOG_LEVEL: debug
      KONG_NGINX_DAEMON: "off"
      KONG_ADMIN_LISTEN: <IP_ADDRESS>:8001
      KONG_ADMIN_ACCESS_LOG: /dev/stdout
      KONG_ADMIN_ERROR_LOG: /dev/stderr
      KONG_PROXY_LISTEN: <IP_ADDRESS>:8000
      KONG_PROXY_ACCESS_LOG: /dev/stdout
      KONG_PROXY_ERROR_LOG: /dev/stderr
      KONG_NGINX_WORKER_PROCESSES: "2"
      KONG_DATABASE: postgres
      KONG_PG_DATABASE: kong
      KONG_PG_HOST: db
      KONG_PG_USER: kong
      KONG_PG_PASSWORD: kong
    ports:
      - 8000:8000
      - 8001:8001
    healthcheck:
      test: ["CMD", "kong", "health"]
      interval: 10s
      timeout: 10s
      retries: 10
    restart: on-failure
    networks:
      - kong-net

  kong-migrations:
    image: kong:2.8.0
    command: kong migrations bootstrap
    environment:
      KONG_DATABASE: postgres
      KONG_PG_DATABASE: kong
      KONG_PG_HOST: db
      KONG_PG_USER: kong
      KONG_PG_PASSWORD: kong
    depends_on:
      - db
    restart: on-failure
    networks:
      - kong-net

  kong-migrations-up:
    image: kong:2.8.0
    command: kong migrations up && kong migrations finish
    environment:
      KONG_DATABASE: postgres
      KONG_PG_DATABASE: kong
      KONG_PG_HOST: db
      KONG_PG_USER: kong
      KONG_PG_PASSWORD: kong
    depends_on:
      - db
    restart: on-failure
    networks:
      - kong-net

  db:
    image: postgres:12
    environment:
      POSTGRES_DB: kong
      POSTGRES_USER: kong
      POSTGRES_PASSWORD: kong
    healthcheck:
      interval: 5s
      retries: 10
      test:
      - CMD
      - pg_isready
      - --dbname=kong
      - --username=kong
      timeout: 10s
    stop_signal: SIGKILL
    restart: on-failure
    networks:
      - kong-net
    volumes:
      - kong_data:/var/lib/postgresql/data

It starts a single kong node and a postgres db.

In a new shell setup a kong service, a route and  an upstream with 2 targets running (in the directory with docker-compose.yml from step 1):

#!/usr/bin/env bash

curl -s -X POST http://localhost:8001/services \
     --data name=example_service \
     --data host='example_upstream'

curl -s -X POST http://localhost:8001/services/example_service/routes \
     --data 'paths[]=/mock' \
     --data name=mocking

curl -s -X POST http://localhost:8001/upstreams \
     --data name=example_upstream

curl -s -X POST http://localhost:8001/upstreams/example_upstream/targets \
     --data target='mockbin.org:80'

curl -s -X POST http://localhost:8001/upstreams/example_upstream/targets \
     --data target='httpbin.org:80'

curl -X PATCH -H 'content-type: application/json' http://localhost:8001/upstreams/example_upstream \
     -d @- << EOF
{
  "healthchecks": {
    "active": {
      "healthy": {
        "interval": 5,
        "successes": 2
      },
      "unhealthy": {
        "http_failures": 3,
        "interval": 2,
        "timeouts": 5
      }
    },
    "passive": {
      "unhealthy": {
        "http_failures": 3,
        "timeouts": 5
      },
      "healthy": {
        "successes": 2
      }
    }
  }
}
EOF

At this point active healthchecks should be running for both targets and in the shell from step 1 should periodically appear logs  like
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'mockbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'mockbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'httpbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'httpbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'httpbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'httpbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'httpbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:13 [debug] 1111#0: *439 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) Reporting 'httpbin.org (<IP_ADDRESS>:80)' (got HTTP 200)
kong_1                | 2022/03/09 21:17:14 [debug] 1111#0: *119 [lua] healthcheck.lua:1235: log(): [healthcheck] (0fdb1f6d-5629-472b-ac71-8680db1ae231:example_upstream) checking unhealthy targets: nothing to do

indicating that active healthchecks are working.

To quicker reproduce the issue run:

docker-compose exec -u 0 kong bash -c "sed -i '1590 i collectgarbage("collect")' /usr/local/share/lua/5.1/resty/healthcheck.lua"

It adds a line to run one complete cycle of garbage collection.

Reload kong after library change running:

docker-compose exec kong bash -c "kong reload"

When kong is reloaded and working again delete one target running:

curl -X DELETE "localhost:8001/upstreams/example_upstream/targets/httpbin.org:80"

Looking at logs active healthchecks are disabled now for all targets in example_upstream but they shouldn't.
When passive healthcheck fails for all targets in the example_upstream kong returns eventually

{"message":"failure to get a peer from the ring-balancer"}

even after targets are healthy again.
Changing ipairs to pairs while iterating over hcs table fixes the issue.

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

@locao as you released lua-resty-healthcheck 1.5.0 can you help to have my change released? What needs to be done to have the library bump in kong also if my change makes sense?

Hi @kayano! Thanks for your contribution!
I will release a new version of this module with your fix. For the Kong side, we need to bump the dependency and also release a new version.


”HAȚEG”, ”Nălațvad”, ”Silvașu de Jos”, ”Silvașu de Sus” are listed in the drop-down menu

Description:
When user writes ”HAȚEG”, ”Nălațvad”, ”Silvașu de Jos”, ”Silvașu de Sus” the locations appear in the drop-down menu next to the comune and the county witch is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "HAȚEG"

Expected results
The location appears in the drop-down menu as "Oraș HAȚEG, HUNEDOARA (HAȚEG)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Nălațvad"

Expected results
The location appears in the drop-down menu as "Sat Nălațvad, HUNEDOARA (HAȚEG)".

Step 3
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 6
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 7
Write in the search bar "Silvașu de Sus"

Expected results
The location appears in the drop-down menu as "Sat Silvașu de Sus, HUNEDOARA (HAȚEG)".


Detect when file system watching thread stops

It seems that under some circumstances, the file system watching thread stops. We observed this in our performance tests on Linux: #15115.
Gradle should detect that the thread is not active any more, and react accordingly as to any other failure with file system watching.

cc: @gradle/execution

In order to detect whether or not the file system watching thread is still alive, we probably need some changes on the native platform side as well.

Fixed via https://github.com/gradle/gradle/pull/15160.


Test against Python 3.9

Not sure if you'd want to remove py37-dj{22,30} at this point.

Thanks, already added!


ASP.NET Core 2 Jwt Auth with Azure B2C // IDX10500: Signature validation failed. No security keys were provided to validate the signature.

I am facing an issue with Jwt Authentication.
I have an ASP.NET Core 2 WepApi which also serves my SPA App (Its a Vue-App) The SPA App gets the Token from Azure B2C via the MSAL.js library from Microsoft.
When i hit the WebApi where i need to Authorize i get the following error:
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[1]
      Failed to validate the token [MyTokenHere]
Microsoft.IdentityModel.Tokens.SecurityTokenInvalidSignatureException: IDX10500: Signature validation failed. No security keys were provided to validate the signature.
   at System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateSignature(String token, TokenValidationParameters validationParameters)
   at System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler.ValidateToken(String token, TokenValidationParameters validationParameters, SecurityToken& validatedToken)
   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.<HandleAuthenticateAsync>d__6.MoveNext()
info: Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler[7]
      Bearer was not authenticated. Failure message: IDX10500: Signature validation failed. No security keys were provided to validate the signature.

In the browser i get a 401
GET http://localhost:51420/api/values 401 (Unauthorized)

I face the very same issue with the sample Application provided here An ASP.NET Core web API with Azure AD B2C (with their tanant)
Maybe its a general issue with the validation of Azure B2C Tokens.
Here is my Startup.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.SpaServices.Webpack;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.IdentityModel.Tokens;
using VueTemplate.SignalR;

namespace VueTemplate
{
    public class Startup
    {
        public string Authority { get; set; } = "https://login.microsoftonline.com/tfp/[MyB2CTenant]/[MyPolicy]/v2.0/";

        public string ClientId { get; set; } = [MyApplicationId];

        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();
            services.AddSignalR();
            services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
            .AddJwtBearer(options => new JwtBearerOptions() {
                Authority = Authority,
                Audience = ClientId,
                Events = new JwtBearerEvents() { OnAuthenticationFailed = AuthenticationFailed  }
            });
        }

        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseWebpackDevMiddleware(new WebpackDevMiddlewareOptions() {
                    HotModuleReplacement = true
                });
            }
            else {
                app.UseExceptionHandler("/Home/Error");
            }

            app.UseAuthentication();

            app.UseStaticFiles();

            app.UseSignalR(routes => {
                routes.MapHub<ChatHub>("Hub/Chat");
            });

            app.UseMvc(routes => {
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}"
                );

                routes.MapSpaFallbackRoute(
                    name: "spa-fallback",
                    defaults: new { controller = "Home", action = "Index" }
                );
            });
        }

        private Task AuthenticationFailed(AuthenticationFailedContext arg)
        {
            // For debugging purposes only!
            var s = $"AuthenticationFailed: {arg.Exception.Message}";
            arg.Response.ContentLength = s.Length;
            arg.Response.Body.Write(Encoding.UTF8.GetBytes(s), 0, s.Length);
            return Task.FromResult(0);
        }
    }
}

ValuesController.cs
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace VueTemplate.Controllers
{
    [Authorize]
    [Route("api/[controller]/")]
    public class ValuesController : Controller
    {
        [HttpGet]
        public IActionResult Get() {
            return Ok(new int[] { 1, 2, 3, 4 });
        }
    }
}

This issue was moved to aspnet/Security#1466


UAR-90: Created update journey interrupt card page

JIRA link
https://companieshouse.atlassian.net/browse/UAR-90
Change description

Created update journey interrupt card page

Work checklist

[ ] Tests added where applicable
[ ] UI changes meet accessibility criteria

Merge instructions
We are committed to keeping commit history clean, consistent and linear.  A BREAKING CHANGE can be part of commits of any type,
types other than fix: and feat: are allowed, for example build:, chore:, ci:, docs:, style:, refactor:, perf:, test:, and others,
footers other than BREAKING CHANGE: <description> may be provided.

Do we need navigation control here? Don't think we are recording anything in the session so nothing to check?


Get dynamic notifcation sender data

This PR closes #1061
I have added dynamic data for request sender. Now, the link also work which when clicked navigate to user profile.

Hi @Palakkgoyal can you please resolve the merge conflict?

I resolve the conflict. Can you please check.


SAWO Labs link not working

The SAWO Labs link (https://sawolabs.com/) does not work anymore, I'm currently trying to get in contact with the SAWO Labs team to see if this is just a temporary problem or if maybe the project has been dropped. I'll update this issue once I get an answere.

Thank you @maesion, let's leave this issue open for a little while then.

Thank you @maesion, let's leave this issue open for a little while then.

SAWO Labs can be removed.
David Leal (Community Coach on the SAWO Community Discord) told me the following:
"The whole community's dead now, it's no longer being maintained since over a year."


MongoObserver crashes on large metrics

When running some very long training runs with loss logged after every epoch, we are running into issues of MongoObserver crashing with error message

Resulting document after update is larger than 16777216

Losing logging for a long (possibly promising!) run is quite frustrating. I understand this limit is hard-coded into Mongo, but it seems GridFS is used for artifacts to avoid such limits. Can a similar technique be applied to metrics?
A workaround for now is to save the metrics as artifacts, but this prevents us from using the nice visualization tools present in, for example, the Omniboard frontend.

Hi, I absolute understand the frustration with an observer crashing in a long running experiment and we definitely need to endeavor to make it a lot more fault tolerant!
However, I believe that your error not really due to too large metrics, but rather to the captured output. Metrics are stored in separate documents than the experiment and only contain timestamps, steps and metrics value. Yet long running experiments often produce a lot out standard output that in the end blows up the document. I recommend to turn of output capturing with a filter like:
ex.captured_out_filter = lambda text: "Output capturing turned off."
Please check if you had a lot of captured out or if it really was the metrics document that caused the problem.

I thought it may be output too, but we are only saving 100s of lines of output per experiment. On the other hand, we are saving loss and a few other metrics every epoch for 100,000s of epochs, which is why I suspect this is the cause.

Wow I did not expect an experiment to have so many epochs. In this case we need to consider saving metrics in a different form as you suggested. Many distributing across different documents or something. Until then I would recommend you to use incense which should give to quick visualizations as well if you save metrics as a CSV or pickle file.

Thanks for the recommendation to check out incense! This seems handy to manipulate metrics in the meanwhile.

I also have this issue. There are some metrics, such as training loss, that I log at every batch and not just every epoch. This quickly runs into the 16mb limit. For now, I will probably have to store/display those metrics in another way, such as tensorboard. But a workaround/fix here would be very helpful since one of the main appeals of sacred is having a unified system for all information about an experiment.


Create KeyRingInfo.getExpirationDate(use)

@tomholub wrote:

OpenPGP.js has methods for getExpirationDate(use=ANY), getExpirationDate(use=SIGNING), getExpirationDate(use=ENCRYPTION).
Then it will evaluate combination of primary and subkeys holistically to figure out if the key can be used for that purpose as a whole. This would be very helpful for us.

I guess this method should check all available keys on the key ring and determine the nearest/farthest expiration date of any available key with the given usage.

I think it should return the furthest date that the combination of primary key and its subkeys is still usable, for a certain usecase (signing, encryption, or any)

In other words, what is the farthest date that I could still sign an item with this key (for example) without throwing an error. The library likely already has some functionality internally to make these decisions.

This has now been implemented :)


Fix detection of numeric value when parsing short options

Problem
The parsing behaviour changes depending on whether the last character in group is a number, switching between a group of boolean options and an option taking a value. See https://github.com/minimistjs/minimist/issues/2#issue-1410232307
For example:
$ node example/parse.js -a1
{ _: [], a: 1 }

$ node example/parse.js -a1b
{ '1': true, _: [], a: true, b: true }

$ node example/parse.js -a1b2
{ _: [], a: '1b2' }

$ node example/parse.js -a1b2c
{ '1': true, '2': true, _: [], a: true, b: true, c: true }

Solution
Per https://github.com/minimistjs/minimist/issues/2#issuecomment-1279821340
There is a bug in the code detecting whether the remaining characters in the argument are a number. If the argument ends in a number it is treated as a number, even if there are letters before that.
The search /-?\d+(\.\d*)?(e-?\d+)?$/ is not anchored at the start and thinks 1b2 is a number because it ends in a number. So it treats -a1b2 like -a123 and assigns the "number" to the a option.

This change makes the short option parsing work as intended, but changes the parse results and will be a breaking change for some users. (Albeit, as is any change!)

How likely is it that anyone will have been relying on the incorrect, and untested, results?

The potentially broken use case I have in mind is a short option value that for external reasons consistently ends in a number. A user might have discovered that the value could be put straight after the short option. For example:
enrol --course=COSC201
enrol -c COSC201
enrol -c=COSC201
enrol -cCOSC201   <-- only works like above due to bug

This might be rare since:

The README includes an example of short flags expanding into multiple individual flags, and using space separated values, so examples of how to use as intended. i.e. -x 3, -y 4, -n5, and -abc:

$ node example/parse.js -x 3 -y 4 -n5 -abc --beep=boop foo bar baz

The incorrect behaviour only happened for values ending in a number, so user might discover it was not a reliable way of supplying value even if they stumbled across it.

I don't recall issues mentioning the variant behaviour (but weak evidence, not sure how far back through the old open bugs I read or retained!).

I checked what yargs does, as the most evolved optimist descendent:
try-yargs $ node index.js -ABC123
{ _: [], A: true, B: true, C: 123, '$0': 'index.js' }

Old minimist:
try-minimist $ node index.js -ABC123
{ _: [], flag: false, A: 'BC123' }

And on this branch minimist does:
$ node index.js -ABC123
{ _: [], flag: false, A: true, B: true, C: 123 }

I agree this is better/more intuitive behavior. It would, however, be quite a breaking change.

Marking as semver-major (copied the text and colours from qs)
If this comes up a lot in issues, or if we decide never to do a major, can reconsider.

This was reported as an issue on the original Minimist repo:
https://web.archive.org/web/20200904203146/https://github.com/substack/minimist/issues/50

node ../minimist/example/parse.js -ab1
{ _: [], a: 'b1' }
But the behavior I was expecting was: { _: [], a: true, b: 1 }

And a duplicate report on original Minimist repo:
Incorrectly parsed values while short param end with number
https://web.archive.org/web/20200904203609/https://github.com/substack/minimist/issues/103/

minimist(['-a2']) // => { _: [], a: 2 }

minimist(['-abc']) // => { _: [], a: true, b: true, c: true }

minimist(['-abc2']) // => { _: [], a: 'bc2' }  why not { _: [], a: true, b: true, c: 2 }?


Add websocket disconnect when all subscriptions are closed

Issue #, if available:
An underlying websocket remains open even after all subscriptions are closed.
Description of changes:
Forcefully close the websocket connection when there are no more subscriptions on the socket, by

setting internal state of the connection provider to disconnected
call socket.disconnect (Starscream method).

We had decided on this approach of cleaning up the socket so that new subscriptions will trigger fresh instantiations of the socket, and thus connection handshake process. That way, the internal state of the connection provider is more often than not synchronzied to the actual state of the socket connection.
Take internet connectivity for an example. If the socket gets into a bad state while the connection provider does not receive a disconnect event, then our internal state maintains a connected state. We then rely on the keep alive to check the staleness of the connection which will take 5 minutes before the internal state is deemed not connected.
Now let's assume a new subscription is attempted on the existing broken socket which has an internal state of connected, we simply write a message on the socket and react to the callbacks such as didReceiveMessage. It's not clear exactly what the behavior is for Starscream socket implementation and if we never get a message back, the subscription remains in a connecting state and never transitions to connected.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

since we have decided on separate package, this PR no longer accurate. However, now I am faced with making a change over in https://github.com/aws-amplify/aws-appsync-realtime-client-ios and then having integration tests over in Amplify repo. Next steps will probably be

Make this change over in the appsync-realtime-client repo. there are no integration tests there so perhaps it will be useful to add more unit test or integration tests there.
I have a meeting with ivan to set up circleCI + fastlane for automated test runs + pod release
Publish "1.0.1" of AppSyncRealTimeClient and consume it in amplify, and add this integration test back at the same time

PR over in shared package https://github.com/aws-amplify/aws-appsync-realtime-client-ios/pull/8


Please remove unnecessary files

pycache, .pyc etc.
They are generated automatically during installation.
Thanks.

@noiromo could you please fix this, so that I can publish your plugin?
Thanks.


Update test import story and documentation

Documented the 'tmt test export' example.
Updated the 'tmt test import' example with additional fields.
Added the 'extra-summary' key into the export story details.

It seems to me that this PR is mostly about replacing 'convert' with 'import' (as well as adding bunch of docs).
However there is still quite a lot of references to 'convert' in the test name.
Wouldn't it make sense to use only 'import'?

The test example can be used for testing / experimenting with both import and export, thus I think the general name convert make sense here as it is not related to import only. Does that make sense?

Sure.

Thanks for the review.


Tags disappear from the editor

How to reproduce the bug:

Add gas station
add fuels
add payment types
select any other feature and select this gas station again
the tags are still there but not in the editor.

after:

It also affects other categories

@maro-21 Thanks for reporting! This regression was most likely introduced in 2.19.0.