text:
Add (optional) support for c-style block comments

Hi, this is an awesome package, thanks.
I use block comments sometimes and noticed that the Docblockr support for these isn't as strong as for full docstrings.
I added an option "c_style_block_comments", defaulting off. With the setting off the current behaviour should be unchanged.
With it on, /* <enter> becomes
/*
 * <cursor here>
 */

And similarly, like when you push enter on the top line of an existing docstring it doesn't create a new one;
/* <cursor here; user pushes enter>Foo
 * ...
 */

becomes
/*
 * <cursor here>Foo
 * ...
 */

This is just a light usability tweak but it would be very nice to have.
Cheers
David

Thanks for your great PR. I just published your changes with version v0.9.0.

Awesome, thanks very much!
David

authors: MoritzKn davidhewitt

repo: nikhilkalige/docblockr


text:
keyscraper.js updated

now opens new tab with the json output

LGTM!

source: gharchive/pull-request

authors: nikhilmwarrier sudo-Mystic

license: MIT

license_type: permissive

license_source: github-api


text:
installing dryscrape / webkit-server on Mac El Capitan fails with C++ linking step

Trying to build dryscrape fails, manually trying to install webkit-server returns the following error...
(I'm running python using Anaconda)
$ sudo python setup.py install
running install
running build
cd src/ && /Applications/Xcode.app/Contents/Developer/usr/bin/make -f Makefile.webkit_server
g++ -headerpad_max_install_names -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -o webkit_server build/Version.o build/EnableLogging.o build/Authenticate.o build/SetConfirmAction.o build/SetPromptAction.o build/SetPromptText.o build/ClearPromptText.o build/JavascriptAlertMessages.o build/JavascriptConfirmMessages.o build/JavascriptPromptMessages.o build/IgnoreSslErrors.o build/ResizeWindow.o build/CurrentUrl.o build/ConsoleMessages.o build/main.o build/WebPage.o build/Server.o build/Connection.o build/Command.o build/SocketCommand.o build/Visit.o build/Reset.o build/Node.o build/JavascriptInvocation.o build/Evaluate.o build/Execute.o build/FrameFocus.o build/Response.o build/NetworkAccessManager.o build/NetworkCookieJar.o build/Header.o build/Render.o build/body.o build/Status.o build/Headers.o build/UnsupportedContentHandler.o build/SetCookie.o build/ClearCookies.o build/GetCookies.o build/CommandParser.o build/CommandFactory.o build/SetProxy.o build/NullCommand.o build/PageLoadingCommand.o build/SetTimeout.o build/GetTimeout.o build/SetSkipImageLoading.o build/WebPageManager.o build/WindowFocus.o build/GetWindowHandles.o build/GetWindowHandle.o build/TimeoutCommand.o build/SetUrlBlacklist.o build/NoOpReply.o build/JsonSerializer.o build/InvocationResult.o build/ErrorMessage.o build/Title.o build/FindCss.o build/JavascriptCommand.o build/FindXpath.o build/NetworkReplyProxy.o build/IgnoreDebugOutput.o build/Source.o build/SetHtml.o build/SetAttribute.o build/moc_Version.o build/moc_EnableLogging.o build/moc_Authenticate.o build/moc_SetConfirmAction.o build/moc_SetPromptAction.o build/moc_SetPromptText.o build/moc_ClearPromptText.o build/moc_JavascriptAlertMessages.o build/moc_JavascriptConfirmMessages.o build/moc_JavascriptPromptMessages.o build/moc_IgnoreSslErrors.o build/moc_ResizeWindow.o build/moc_CurrentUrl.o build/moc_ConsoleMessages.o build/moc_WebPage.o build/moc_Server.o build/moc_Connection.o build/moc_Command.o build/moc_SocketCommand.o build/moc_Visit.o build/moc_Reset.o build/moc_Node.o build/moc_JavascriptInvocation.o build/moc_Evaluate.o build/moc_Execute.o build/moc_FrameFocus.o build/moc_Response.o build/moc_NetworkAccessManager.o build/moc_NetworkCookieJar.o build/moc_Header.o build/moc_Render.o build/moc_Body.o build/moc_Status.o build/moc_Headers.o build/moc_UnsupportedContentHandler.o build/moc_SetCookie.o build/moc_ClearCookies.o build/moc_GetCookies.o build/moc_CommandParser.o build/moc_CommandFactory.o build/moc_SetProxy.o build/moc_NullCommand.o build/moc_PageLoadingCommand.o build/moc_SetSkipImageLoading.o build/moc_WebPageManager.o build/moc_WindowFocus.o build/moc_GetWindowHandles.o build/moc_GetWindowHandle.o build/moc_GetTimeout.o build/moc_SetTimeout.o build/moc_TimeoutCommand.o build/moc_SetUrlBlacklist.o build/moc_NoOpReply.o build/moc_JsonSerializer.o build/moc_ErrorMessage.o build/moc_Title.o build/moc_FindCss.o build/moc_JavascriptCommand.o build/moc_FindXpath.o build/moc_NetworkReplyProxy.o build/moc_Source.o build/moc_SetHtml.o build/moc_SetAttribute.o build/qrc_webkit_server.o    -L/Users/Gully/anaconda/lib -lQtWebKit -lQtGui -L/Users/Gully/anaconda/lib -lQtNetwork -lQtCore
Undefined symbols for architecture x86_64:
"__Unwind_Resume", referenced from:
Version::start() in Version.o
Authenticate::start() in Authenticate.o
SetConfirmAction::start() in SetConfirmAction.o
SetPromptAction::start() in SetPromptAction.o
SetPromptText::start() in SetPromptText.o
ClearPromptText::start() in ClearPromptText.o
JavascriptAlertMessages::start() in JavascriptAlertMessages.o
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [webkit_server] Error 1
make: *** [sub-src-webkit_server-pro-make_default-ordered] Error 2
error: [Errno 2] No such file or directory: 'src/webkit_server'

@GullyAPCBurns I hit the same issue and can kindly help advise how to solve it since you closed the issue? Thanks.

source: gharchive/issue

authors: GullyAPCBurns winnerineast

repo: niklasb/dryscrape

license: mit

license_source: bigquery


text:
IOS13.6 Html2canvas1.4.1 cannot generate poster

Please follow the general troubleshooting steps first:
Bug reports:
Html2canvas 1.4.1 cannot generate poster by wechat browser  in the ios 13.6 system. The page continuous loading.
Specifications:

html2canvas version tested with:1.4.1
Browser & version: wechat 8.0.30
Operating system:ios13.6

same question

try downgrade to version 1.0.0-rc.4

authors: cncodepanda lyx-js markgzl


text:
Flask hard

Pull Request Type
What kind of change does this PR introduce?

[x] Solved an issue/task
[x] Feature

What is the current behavior?
Added blog-app to flask-hard with db configuration
Issue Number: https://github.com/nikohoffren/fork-commit-merge/issues/1050
#hacksquad

This PR contains all the code for a blog-app made using Flask

This PR contains all the code for a blog-app made using Flask

This repository has only tasks that contributors can solve, we don't really add any example code here. Most of the tasks are as simple as possible, since this repository is mostly for beginners or people who are new in open source in general. You can create a new task if you like or try to solve some of our 120 different tasks that we have so far.

Closed for extra large size and dependency review failing.

authors: Abhishek-Mallick nikohoffren

repo: nikohoffren/fork-commit-merge


text:
IOS

IOS

@Amshaf123 https://pub.dev/packages/flutter_core_image_filters this is specifically for iOS


text:
README Update?

Hey I just whipped up a quick experiment to see if I get your Gem going with a webpack config.
I ran rails newApp --skip-javascript added my webpack config and followed your instructions. The only way I was able to load the main.js file webpack spits out for me was by using <%= javascript_bundle_tag 'main', skip_pipeline: true %> and then add the main.js files to Rails' assets/config/manifest.js file.
It took me several tries to get this going. Is this the intended way? Am I doing something wrong? If that's the intended way, would a README edit PR be welcome?

Thanks to send feedback. I haven’t tried the gem with the recent released Rails so it may not work well even if you follow the instruction written in READM, as you say.

Why did you need to add the main.js files to Rails' assets/config/manifest.js?

This happens if I dont
`

I'm using minipack with rails 6.0.3.1 and with webpack.
To insert the webpack I say
pack_options = {'data-turbolinks-track': 'reload', skip_pipeline: true}
javascript_bundles_with_chunks_tag(pack_name, pack_options)
styleesheet_bundles_with_chunks_tag(pack_name, pack_options)

which seems to be what you have done.  I don't touch either the Asset Pipeline manifest or the Minipack manifest (when things are going well. When not going well they often have clues).
The HTML ends up like this: (but with more entries).
<script src="/javascripts/vendors-application-b-60456616.8e14be0fdbe87f877f11.js" data-turbolinks-track="reload"></script>
...
<link rel="stylesheet" media="screen" href="/stylesheets/../stylesheets/2.8e14be0fdbe87f877f11.css" data-turbolinks-track="reload">
...

Rails demands that js be in public/javascripts, and that css be in public/stylesheets.  Perhaps I need to look again at my stylesheet path, it does look odd.

authors: anitagraham nikushi verpixelt

repo: nikushi/minipack


text:
Play tabla using keyboard

🚀 Feature
Currently tabla can be played by clicking on it I would like to work on it more and make it play using keyboard clicks

Assigned @nisha331

repo: nilisha-jais/Musicophilia


text:
Readjustment of contents of menubar in mobile view

The content of menu bar in mobile view was towards it's extreme right, which was not looking good. So, I changed it without altering menubar in web view.
Closes #383
Before:

After:

@nilisha-jais Can you please guide me in like what changes should I make to pass these checks?

@nilisha-jais Can you please guide me in like what changes should I make to pass these checks?

Please don't worry about these checks. these are just automated checks

authors: microsaurav nilisha-jais


text:
🛑 Coasthill NO-MRA-EC-LE is down

In ff34714, Coasthill NO-MRA-EC-LE ($URI_443_SERVER_3_NC_WEST) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Coasthill NO-MRA-EC-LE is back up in 8f1b1c1.

repo: nilsjha/upptime-pub


text:
Update the Usage section

Currently, we don't know how to use the template base on the current Usage content.
## Usage

Clone the repository

`git clone git@github.com:nimblehq/elixir-templates.git`

It's better if we could improve it to make it clear like what should we do after cloning the repo, do we need to run any script after that, ...
Thank you 🚀

Added in Version 2.0

repo: nimblehq/elixir-templates


text:
import the template step unclear and not working as expected

Describe the bug
I am not clear on step 14 in the instructions "import the template: paste the content of "logstash-syslog-dns-index.template_ELK7.x.json" into kibanas dev tools console"
What are the detailed steps to follow? Dev tools needs a command like PUT and an object definition to follow, e.g.
index a doc
PUT index/type/1
{
   "index_patterns":[
      "logstash-syslog-dns*"
   ],

To Reproduce
Paste the JSON from logstash-syslog-dns-index.template_ELK7.x.json with no command and get an error
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Kibana 7.1.1
Elasticsearch 7.1.1

thanks, I've missed that
fixed it in https://github.com/nin9s/elk-hole/blob/master/json/logstash-syslog-dns-index.template_ELK7.x.json

PUT worked great


text:
timestamp match format error

in 20-dns-syslog.conf
on line 222:
match => [ "date", "MMM  d HH:mm:ss","MMM dd HH:mm:ss" ]
should be:
match => [ "date", "MMM  dd HH:mm:ss","MMM dd HH:mm:ss" ]

did you try it? I wonder if there was a reason for formatting it like that
what issues do you have with "d"?


text:
Include file and commands order

Hi,
I'm currently have a ninja project with 2 ninja files, one including the other . The first is to manage the complete process while the second only compile and link my files
rule compile
  depfile = $builddir\$out.d
  deps = gcc
  command = $cc $cflags -c --depend $out.d  "$in" -o $out
  description = Building C file $in

rule link
  command = $linker $lflags $in -o $out
  description = Linking files to $axf

rule clean
  command = $rm -d $builddir
  description = Cleaning directory $builddir

rule before_1
  command = blahh blah
  description = Create sources list

rule before_2
  command = blahh
  description = Prepare files

rule after
  command = blahh
  description = Create .hex file

build before_1: before_1
build before_2: before_2
#---------------------------------------------------
# sub ninja files with sources to compile/link
#---------------------------------------------------
include sources.ninja

build after: after

and the include file:
build $builddir/source.o: compile source.c
build $builddir/$axf: link $builddir/source.o

The problem is that commands are not executed in the order at the include level.
the rule after is executed between the compilation and the link of the included ninja file . So it completely messed up my output files. I tried using the -j 1 option to be sure that it's not linked to concurrency job

This is working as intended: Ninja executes things in dependency order, not in the order they're in the manifest file. If you want to run commands in a certain order, you need to specify dependencies between them.
It's possible (and easy) to write a generator that runs commands in top-down order. Maybe one of the generators listed at https://github.com/ninja-build/ninja/wiki/List-of-generators-producing-ninja-build-files can do this; if not maybe you can use misc/ninja_syntax.py to write one yourself (just let each command write a stamp file as a side effect, and have the next command depend on the previous command's stamp file).

repo: ninja-build/ninja


text:
Configure.py fails

I have no idea what is going on here.
configure.py

Traceback (most recent call last):
  File "configure.py", line 324, in <module>
    if platform.msvc_needs_fs():
  File "configure.py", line 87, in msvc_needs_fs
    stderr=subprocess.PIPE)
  File "C:\Users\rjamd\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 775, in __init__
    restore_signals, start_new_session)
  File "C:\Users\rjamd\AppData\Local\Programs\Python\Python37\lib\subprocess.py", line 1178, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

Are you running from Visual Studio's command prompt?

Are you running from Visual Studio's command prompt?

Are you talking about the ones that prep the environment variables? No. I'm trying to use Clang Cmake and ninja. I don't understand the relationship between Visual Studio's build tools and the Clang/LLD/Cmake/Ninja workflow.

If you want to use CMake to build Ninja, there's no need to call configure.py :)

Instructions for using a compiler with the MS Visual C++ build tool-set:

Follow instructions for deciding what programming/build environment to use:

Microsoft Docs

Run the programming environment:

Click Start
Search and Run one of the following programming/build environments:

x86_x64 Cross Tools Command Prompt for VS 2019
x86 Native Tools Command Prompt for VS 2019
x64_x86 Cross Tools Command Prompt for VS 2019
x64 Native Tools Command Prompt for VS 2019
Developer Command Prompt for VS 2019

authors: AMDphreak jhasse


text:
[RESOLVED] Interface eth0(): High error rate (>2 for 5m)

Problem started at 14:39:29 on 2023.07.24
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Operational data: errors in: 0, errors out: 0
Original problem ID: 33001
Event details in Zabbix: http://192.168.232.99/tr_events.php?triggerid=23483&eventid=33001

Problem has been resolved in 3m 0s at 14:42:29 on 2023.07.24
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Original problem ID: 33001


text:
--bids-filter-file seems not working as supposed

I want to only run files in session ses-LOC with task-retinotopy.
I wrote my Filter.json as:

{
"t1w": {
"datatype": "anat",
"session": "ImageNet02",
"acquisition": null,
"suffix": "T1w"
},
"bold": {
"datatype": "func",
"session": "LOC",
"task": "retinotopy",
"suffix": "bold"
}
}

Becasue the doc on this method is sort of ambiguous to me, I am not sure about my usage.
And my cml follows:
fmriprep-docker $bids_fold $out_dir participant \  --skip-bids-validation --participant-label core02 \  --bids-filter-file $home/Filter.json \  --fs-license-file $license_file \  --output-spaces anat MNI152NLin6Asym:res-2 fsLR \  --cifti-output 91k -w $work_dir
But it didn't work well, fmriprep actually loading all the existed files in all session folds with all task labels, it really bothers me a lot.
BTW few more questions on fmriprep:
when --use-aroma is set on, the fmriprep cifti output will generated by which of the volume datas? (i.e. The denosied one ~desc-smoothAROMAnonaggr_bold.nii.gz or the couterpart ~desc-preproc_bold.nii.gz?)

I believe I have run into the same problem. Here's my json file:
{
  "bold":
  {
    "datatype": "func",
    "session": "TRT",
    "acquisition": "645",
    "suffix": "bold"
  },
  "t1w": {
    "datatype": "anat",
    "session": "TRT",
    "suffix": "T1w"
  }
}

If there's a problem with the content of this filter file, it's not clear to me compared with the example in the doc.
Along the same line, I have one suggestion: fMRIprep can raise a syntax error when passing an invalid json file.

It's possible that there's a bug here. Are you using public data, or something you should share?

I am running on the enhanced NKI dataset. For now I just delete all irelevant data for my analysis as a workaround.
Here's the full SGE cluster submission script:
#!/bin/bash
#$ -N dbg_fmriprep
#$ -pe openmp 8
#$ -l m_mem_free=4G
#$ -l 'h=!node069&!node077&!node076'

DATA_DIR=/research/cisc2/projects/myproject/enhanced-nki-dataset
SCRATCH_DIR=/research/cisc1/projects/myproject

singularity run --cleanenv \
                -B ${DATA_DIR}/data:/data \
                -B ${SCRATCH_DIR}/:/out \
		-B ${SCRATCH_DIR}/wd:/wd \
                ${HOME}/singularity-images/fmriprep-20.2.1.simg \
                --skip_bids_validation \
                --participant-label A00027167 \
		--bids-filter-file ${DATA_DIR}/tools/data/sub-A00027167_filter.json \
		--omp-nthreads 4 --nthreads 6 \
		--output-spaces MNI152NLin2009cAsym:res-2 \
                --fs-license-file ~/singularity-images/freesurfer_license.txt \
                --work-dir /wd \
                /data /out/ participant

I killed the job when I realise the filter was not working so I cannot provide the full output.
There's this warning from PyBIDS:
/usr/local/miniconda/lib/python3.7/site-packages/bids/layout/validation.py:46: UserWarning: The ability to pass arguments to BIDSLayout that control indexing is likely to be removed in future; possibly as early as PyBIDS 0.14. This includes the `config_filename`, `ignore`, `force_index`, and `index_metadata` arguments. The recommended usage pattern is to initialize a new BIDSLayoutIndexer with these arguments, and pass it to the BIDSLayout via the `indexer` argument.

Sorry for jumping in late here.
I think the problem should be fixed by https://github.com/nipreps/fmriprep/pull/2331
Without that fix, a non-existing file (or a file non-accessible to the docker/singularity container) would fail silently.
It was also failing if the JSON was not valid.
We should add it to the next LTS minor.

authors: GongZhengxin bpinsard effigies htwangtw

repo: nipreps/fmriprep


text:
Exception raised while executing Node _UploadMetric

What happened?
MRIQC crashed while attempting to upload metrics. Internet connectivity should not be an issue on this computer, and it looks like a variable intended to be a str was coded as something else?
What command did you use?
TEMPLATEFLOW_DIR=/ZPOOL/data/tools/templateflow
export APPTAINERENV_TEMPLATEFLOW_HOME=/opt/templateflow
singularity run --cleanenv \
-B ${TEMPLATEFLOW_DIR}:/opt/templateflow \
-B $maindir:/base \
-B $scratchdir:/scratch \
/ZPOOL/data/tools/mriqc-24.0.2.simg \
/base/bids /base/derivatives/mriqc \
participant --participant_label $sub \
-w /scratch

What version of the software are you running?
24.0.2
How are you running this software?
Singularity
Is your data BIDS valid?
Yes
Are you reusing any previously computed results?
No
Please copy and paste any relevant log output.
Node: _UploadMetrics1
Working directory: /scratch/mriqc_wf/funcMRIQC/5f1d50ce95794c9e867ecec5e22ed18a7961e99c/UploadMetrics/mapflow/_UploadMetrics1

Node inputs:

auth_token = 8sSYVI0XjFqacEMZ8wF4
email = <undefined>
endpoint = https://mriqc.nimh.nih.gov:443/api/v1
in_iqms = /base/derivatives/mriqc/sub-10803sp/func/sub-10803sp_task-sharedreward_acq-mb3me3ip0_echo-2_part-mag_bold.json
modality = undefined
strict = False

Traceback (most recent call last):
  File "/opt/conda/lib/python3.11/site-packages/mriqc/engine/plugin.py", line 64, in run_node
    result['result'] = node.run(updatehash=updatehash)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 527, in run
    result = self._run_interface(execute=True)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 645, in _run_interface
    return self._run_command(execute)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 771, in _run_command
    raise NodeExecutionError(msg)
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node _UploadMetrics1.

Traceback:
	Traceback (most recent call last):
	  File "/opt/conda/lib/python3.11/site-packages/nipype/interfaces/base/core.py", line 397, in run
	    runtime = self._run_interface(runtime)
	              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	  File "/opt/conda/lib/python3.11/site-packages/mriqc/interfaces/webapi.py", line 186, in _run_interface
	    errmsg = '\n'.join(
	             ^^^^^^^^^^
	TypeError: sequence item 6: expected str instance, bytes found

Additional information / screenshots
Data are available on OpenNeuro: https://openneuro.org/datasets/ds005085/versions/1.0.0

I am getting the same error, were you able to figure out a solution?

I ended up adding --notrack --no-sub to prevent any uploads. With those flags in place, it will run.

thank you!

I encountered the same problem with version 24.0.2 and solved it the same way ( thanks @DVSneuro ! )
A suggestion for the developers: The whole processing should not crash if the upload/submission fails as that can be quite frustrating, both in terms or repeating the computationally expensive processing as well as in terms of the time consuming debugging.
A warning/notification could be printed instead (possibly requesting a manual upload if those logs are super important for you ; )

authors: DVSneuro Metasoliton sparimoo95

repo: nipreps/mriqc


text:
list index out of range | spider.py@97

I have some problems. Is it same with #63 or #47 ?
[*] 2017-10-11 22:40 - fetching today's eBooks
[*] configuration file: /root/packtpub-crawler/config/prod.cfg
[*] getting daily free eBook
[*] fetching url... 200 | https://www.packtpub.com/packt/offers/free-learning
[*] fetching url... 200 | https://www.packtpub.com//packt/offers/free-learning?login=1
[-] <type 'exceptions.IndexError'> list index out of range | spider.py@97
Traceback (most recent call last):
  File "script/spider.py", line 97, in main
    packtpub.runDaily()
  File "/root/packtpub-crawler/script/packtpub.py", line 161, in runDaily
    self.__parseDailyBookInfo(soup)
  File "/root/packtpub-crawler/script/packtpub.py", line 93, in __parseDailyBookInfo
    self.info['url_claim'] = self.__url_base + div_target.select('a.twelve-days-claim')[0]['href']
IndexError: list index out of range
[*] no free eBook from newsletter right now
[*] done

Thanks, is a duplicate of #70

repo: niqdev/packtpub-crawler


text:
raise exception when importing on non-supported platforms

Added Appveyor testing to verify that importing distro fails on Windows.
Now skipping all tests if not on Linux.
Added ImportError Exception when importing from non-linux platforms.

Resolves #124

+1


text:
android mobile browser chrome did not work properly

I had test in mobile android, this plugin is did not work properly for chrome browser like firefox. When I click on any playlist, it not show video and not auto play. but on start up if I click play video and click any playlist it show and play video as well. My android 4.1.2 and Chrome v34.
Please test it on http://kamsan70.com
Thank you

+1 for this problem.

authors: socheth talonlzr

repo: nirvanatikku/jQuery-TubePlayer-Plugin


text:
Not compatible with Medianav Renault/Dacia

I tried both with Raspberry Pi 2 W and 4. Same situations
The Bluetooth connection is successful, but it remains in the loop on "searching for android auto..."
The connection with Android Auto does not appear on the car display

Thanks for informing. I believe most of these issues are coming due to the fact that we wait for the car to start the connection before connecting to the phone. I'll try to work on a change where we opportunistically connect to phone anyway regardless of car starting the connection.

Thanks for informing. I believe most of these issues are coming due to the fact that we wait for the car to start the connection before connecting to the phone. I'll try to work on a change where we opportunistically connect to phone anyway regardless of car starting the connection.

Thanks mate. i waiting for test

@Andreunto Please try the builds from #35, builds here, and see if it helps?

@Andreunto Please try the builds from #35, builds here, and see if it helps?

Thanks so much for the quick update.
Now the connection with the smartphone is easier (it used to take several attempts) but unfortunately the situation remains the same

The Bluetooth disconnect is OK, it should do that.

The Bluetooth disconnect is OK, it should do that.

Yes, but remain in  "searching for android auto..."

I've also a Dacia/Renault MediaDisplay (AndroidAuto without WiFi) but it works like a charm, also with the pre-build image

I've also a Dacia/Renault MediaDisplay (AndroidAuto without WiFi) but it works like a charm, also with the pre-build image

Which mediav model do you have? I have the MN3 and I just can't connect it

Which mediav model do you have? I have the Medianav Evolution 2 and I just can't connect it

In MediaNav Evolution Android Auto and Apple CarPlay should be native wireless (or, maybe, bluetooth) without additional dongles.. I found this information after purchasing my Dacia Jogger Hybrid. My device is the MediaDisplay with software V 6.0.10.0. I found in google that it require the minimal Android 11 version to works

Which mediav model do you have? I have the Medianav Evolution 2 and I just can't connect it

In MediaNav Evolution Android Auto and Apple CarPlay should be native wireless (or, maybe, bluetooth) without additional dongles.. I found this information after purchasing my Dacia Jogger Hybrid. My device is the MediaDisplay with software V 6.0.10.0. I found in google that it require the minimal Android 11 version to works

Medianav Evolution 2 it only has BT and AA via USB. It has no way to connect to AA or Carplay wireless

I tried with Raspberry Pi 2 W. Result is the same Smartphone was searching of Android Auto. I did some debugging. It looks that for some reason aawg is not listening on port 5288.  Server crashes ffter this message:
aawgd[398]: Frowarding data between TCP and USB
I tried to kill and start aawgd daemon couple of times and with a lot of luck I was able to run AA twice. Server didn't crash and there was communication messages in the log:
aawgd[336]: 527 bytes read from TCP
aawgd[336]: 527 bytes written to USB
Second finding is that sometimes after running aawgd board is rebooting.

@toek79 Looks like you're using the builds from one of the PRs, which has some issues. Please try the latest build from the main branch.

@nisargjhaveri yesterday I downloaded "main" branch and compiled by myself.
Today as you suggested I used last build from https://github.com/nisargjhaveri/WirelessAndroidAutoDongle/actions/runs/7978244678 and https://github.com/nisargjhaveri/WirelessAndroidAutoDongle/actions/runs/7994649602. In both cases situation is the same. Phone has problem with TCP connection:
aawgd[398]: Frowarding data between TCP and USB aawgd[282]: 0 bytes read from TCP
Strange thing. I am thinking what can cause the issue. I tried 2 Phones Oppo and Samsung.

I think problem is related to USB communication. In case I am able to run AA on radio logs look like below:
aawgd[318]: USB Manager: Switched to accessory gadget from default aawgd[318]: Opening usb accessory aawgd[318]: Forwarding data between TCP and USB aawgd[318]: Data forwarding: TCP, read_fd 9, write_fd8 aawgd[318]: Data forwarding: USB, read_fd 8, write_fd9 aawgd[318]: 10 bytes read from USB aawgd[318]: 10 bytes written to TCP aawgd[318]: 12 bytes read from TCP
Every time if AA works I see aawgd[318]: 10 bytes read from USB, in case AA doesn't work aawgd shows that 0 bytes was read from TCP.
I am note sure, but maybe problem is with changing USB mode (changing content of UDC file). Maybe there is some timing issue that is why it sometimes works. Another problem is that after changing USB mode Raspberry Pi sometimes reboots.
Still trying to find the root cause.

In my case the problem is when we first time change USB mode
echo 3f980000.usb > /sys/kernel/config/usb_gadget/accessory/UDC
It is causing USB power cycle of, board reboots, AA doesn't work.
Any idea how we can fix it without connecting second USB to 5V ? Second USB = Power USB.

aawgd[282]: 0 bytes read from TCP

This generally means that the TCP connection timed out before the communication could be started with usb.
Power cycle on enabling usb is new. Does the headunit do this for all devices when connected?

Headunit only have power cycle with Raspberry PI. Other devices like pendrive, Carlinkkit works fine.
I connected RPI to Ubuntu machine. It is interesting what I found in the logs:
RPI:
echo 3f980000.usb > /sys/kernel/config/usb_gadget/accessory/UD
PC
usb usb1-port9: attempt power cycle
I think this is the issue why RPI reboots. Headunit runs power cycle.
I am able to run AA over Wifi. I need to use second power supply and change code:
void UsbManager::writeGadgetFile(std::string gadgetName, std::string relativeFilePath, const char* content) {
    std::string gadgetFilePath = "/sys/kernel/config/usb_gadget/" + gadgetName + "/" + relativeFilePath;
    Logger::instance()->info("w_f: echo %s > %s\n",content , gadgetFilePath.c_str());
    FILE* gadgetFile = fopen(gadgetFilePath.c_str(), "w");
    fputs(content, gadgetFile);
    fputc('\n', gadgetFile);
    fclose(gadgetFile);
    usleep(2000 * 1000);
}

I added delay at the end.
After that hack, I have to kill and run aawgd process manually and AA works fine. ;-)

Headunit only have power cycle with Raspberry PI. Other devices like pendrive, Carlinkkit works fine. I connected RPI to Ubuntu machine. It is interesting what I found in the logs: RPI: echo 3f980000.usb > /sys/kernel/config/usb_gadget/accessory/UD PC usb usb1-port9: attempt power cycle I think this is the issue why RPI reboots. Headunit runs power cycle. I am able to run AA over Wifi. I need to use second power supply and change code:
void UsbManager::writeGadgetFile(std::string gadgetName, std::string relativeFilePath, const char* content) {
    std::string gadgetFilePath = "/sys/kernel/config/usb_gadget/" + gadgetName + "/" + relativeFilePath;
    Logger::instance()->info("w_f: echo %s > %s\n",content , gadgetFilePath.c_str());
    FILE* gadgetFile = fopen(gadgetFilePath.c_str(), "w");
    fputs(content, gadgetFile);
    fputc('\n', gadgetFile);
    fclose(gadgetFile);
    usleep(2000 * 1000);
}

I added delay at the end. After that hack, I have to kill and run aawgd process manually and AA works fine. ;-)

Hi, can you confirm have medianav? Because your progress is interesting

Hi @Andreunto. Yes, I have Medianav headunit from 2021. Did you have the same experience that RPI reboots?

I am the author of this post. I have the problems you can read in the first messages. Problems I've encountered with all versions released so far. Basically I have never been able to see Android Auto on the MediaV display. I'm not good at working with software, so I'm following your progress with great interest

@Andreunto by asking about "reboots issue" I meant do you see LED is going down for couple of seconds?  I would like to ensure that we are seeing the same problem.

@Andreunto by asking about "reboots issue" I meant do you see LED is going down for couple of seconds? I would like to ensure that we are seeing the same problem.

reboots happen to me with raspberry pi4 because the usb output of the medianav is not powerful enough to power the rpi4. With rpi2w I have no reboot

Interesting. I need to check another RPI board then.

@toek79, the observation that it works after adding the delay seems very interesting. In my understanding, this should even work with delay much smaller than 2 seconds. I've created #73 with a small delay of 0.1 seconds, which I believe Android is also using, we can adjust it as required.
Let me know if the builds from #73 work?

@toek79, the observation that it works after adding the delay seems very interesting. In my understanding, this should even work with delay much smaller than 2 seconds. I've created #73 with a small delay of 0.1 seconds, which I believe Android is also using, we can adjust it as required.
Let me know if the builds from #73 work?

Same situation for me

Sorry for late reply. I was quit busy and more focused on reboot issue. After investigation I found that, BCM2835 has HW bug which generates reboot problem. It is described here:

https://www.raspberrypi.com/documentation/computers/compute-module.html
https://github.com/raspberrypi/linux/issues/2684
https://github.com/raspberrypi/gpioexpander/issues/2

Quote from RPI site:
There is a bug in the BCM2835 (CM1) bootloader which returns a slightly incorrect USB packet to the host. Most USB hosts seem to ignore this benign bug and work fine; we do, however, see some USB ports that don’t work due to this bug. We don’t quite understand why some ports fail, as it doesn’t seem to be correlated with whether they are USB2 or USB3 (we have seen both types working), but it’s likely to be specific to the host controller and driver. This bug has been fixed in BCM2837.
I had USB issue/reboot issue with RPI zero and zero 2w. Both are based on BCM2835.
Now, I would like to try BCM2837 and RPI 3a+.
@Andreunto regarding your question, delay helped me a lot. AA worked all of the time, but ;-) I needed to kill and run aawgd manually from console. I added script which is checking if there is log in /var/log/messages which tells me that AA works fine. If AA doesn't work, script kills aawgd and run it one more time. I know it is not super smart solution, but works. I will share more details when I find solution for USB port reboots.

After investigation I found that, BCM2835 has HW bug which generates reboot problem.

That's unfortunate. :/ Thanks for investigating!

I needed to kill and run aawgd manually from console. I added script which is checking if there is log in /var/log/messages which tells me that AA works fine. If AA doesn't work, script kills aawgd and run it one more time. I know it is not super smart solution, but works. I will share more details when I find solution for USB port reboots.

When you get to it, could you please also share the logs along with the solution that, works for you? If I understood correctly, it works sometimes with the delay, and sometimes you still need to restart and let it reconnect, right?

@nisargjhaveri, @Andreunto finally it works ;-)
I am sharing diff where you can check what I changed:
changes.txt
It is important to add CONFIG_USB_DWC2_DEBUG, it fixed board reboots. I know it sounds stupid  and ridiculous, but now board works very stable. Logs probably add some delay that is why it is fixed. I also moved loading USB modules to S92usb_gadget init script. It fixed problem with USB enumeration (only observed if I connected RPI to Linux PC).
I also activated UART port of debugging purposes and added 1 sec. delay to writeGadgetFile function.
Tested many times and looks like it works.
@Andreunto if you want, I can share my local build via Google Drive.

@toek79 Yes mate, thanks!

https://drive.google.com/file/d/1rCPqlgRAKxzb3qSRNGD2LbeDbtRVbcp4/view?usp=sharing

@toek79, let's not share local builds here. You can share a branch with your changes or create a PR if you think it might help.

@Andreunto did you try what I shared?
@nisargjhaveri  sure, no problem. I will create my branch later on.

@toek79 Yes mate, is perfect worl! Thanks

@nisargjhaveri  I created my own fork.
If you are interested, I added all my changes in  this commit  Now it works as it should. ;-)
BTW. Thanks for sharing this amazing project. Well done !!!

@Andreunto
I have Renault Zoe from 2016 with R-Link1 (or maybe evolution, not sure), pic here
And from what I can see the problem is similar as yours. It has only a BT and AA only via an USB-wire.
My main problem is that when I plug in my android phone directly then a small AndroidAuto icon on the bottom will appear, I can click it and run AA without any issues; but when I use this dongle, then nothing happen after connecting this box in USB port of the car (AA icon on the bottom doesn't appear no matter how hard I tried). I read on the comments of this items that people has similar problems with R-Link1.
Do you have the same problem in your Dacia using this project?
I didn't test this project though - I am only trying to figure out/inform about the possible problem with those early Medianav/R-Link devices...

@nisargjhaveri
Hi, do you have plans to include @toek79's changes in your main repo?
I have similar media in my car, so I think I'll give it a try soon when I grab some spare Raspberry PI Zero 2 W for tests.
Please tell me one thing: Pi Zero 2 W has the USB Power port and OTG port. I assume OTG is for AA data, but can it be also powered from the same port? Otherwise I need to power it somehow from the car...

Hi, do you have plans to include @toek79's changes in your main repo?

There are multiple changes in the commit and some seems fragile as they seem to help with some race conditions somewhere. I'd be happy to take in PRs with more targeted fixes if possible.

Please tell me one thing: Pi Zero 2 W has the USB Power port and OTG port. I assume OTG is for AA data, but can it be also powered from the same port? Otherwise I need to power it somehow from the car...

Just connecting the OTG port should be enough as it should be able to power the RPi sufficiently in general.

@nisargjhaveri
Based on my previous experiences with mentioned above AA dongle and this issue (@Andreunto problems with Dacia's Medianav) I was wrongly believed that it won't work without @toek79's changes. I was wrong!
Today I installed your last released image on my Pi Zero 2 W and it just works! :)
So now I can confirm that your project it is working on the Renault Zoe 2016 with R-Link 1/evolution (with enabled wired AA).
I was not using it for a long time, but I hope it will continue to work great! :)
Much thanks for your time spent on this project!
It is working better then commercial boxes available on AliExpress and it is opensource !

Hi everyone, I can confirm that the latest version 0.4.0 installed on Raspberry Pi Zero 2 W, connected via OTG port in the Dacia Duster 2 facelift with MediaNav 4 with version 9.1 works.
There are problems only if you disconnect the USB and reconnect it because it is not certain that Android Auto will reconnect, so the advice is to always leave it connected, it would be good solve this problem so that Android Auto always starts.
I'll also throw out a nice idea for development, it would be nice to use the Raspberry as a storage for personal music and be able to read it as a multimedia source or be able to attach a memory stick with music to the Raspberry remaining USB port and be able to listen to it, I don't know if it already works, as soon as I can try to see if it works.

Hi,
Today for the first time during my experience I've got "Disconnected" info on the Nav screen of the car. My android phone seems to be still working fine. The problem is that it cannot reconnect again no matter how long I was waiting (I was also trying to reconnect on the phone forcing on/off Airplane mode). Finally i just rebooted the Raspberry and I was able to connect again.
So it seems that the Pi has stuck in some weird state.
Fortunately I was able to obtain the logs when it was failing to connect. Here it is:
https://skyboo.net/temp/aa/10.0.0.1_20240427150919.txt
@nisargjhaveri Maybe you'll find something useful... Maybe some changes from @toek79 branch would be helpful? No idea - just guessing...

@nisargjhaveri
If I have a loop with:
Jan  1 00:17:51 buildroot user.info aawgd[265]: AA Wireless NewConnection
Jan  1 00:17:51 buildroot user.info aawgd[265]: Path: /org/bluez/hci0/dev_7C_89_56_13_D0_BB, fd: 160
Jan  1 00:17:51 buildroot user.info aawgd[265]: Sending WifiStartRequest (ip: 10.0.0.1, port: 5288)
Jan  1 00:17:51 buildroot user.info aawgd[265]: Sent WifiStartRequest, messageId: 1, wrote 17 bytes
Jan  1 00:17:51 buildroot user.info aawgd[265]: Read WifiInfoRequest. length: 0, messageId: 2
Jan  1 00:17:51 buildroot user.info aawgd[265]: Sending WifiInfoResponse (ssid: AAWirelessDongle, bssid: 2c:cf:67:44:26:21)
Jan  1 00:17:51 buildroot user.info aawgd[265]: Sent WifiInfoResponse, messageId: 3, wrote 70 bytes
Jan  1 00:17:51 buildroot user.info aawgd[265]: Read WifiStartResponse. length: 2, messageId: 7
Jan  1 00:17:52 buildroot user.info aawgd[265]: Read WifiConnectStatus. length: 2, messageId: 6
Jan  1 00:17:52 buildroot user.info aawgd[265]: Bluetooth launch sequence completed
Jan  1 00:17:54 buildroot daemon.err bluetoothd[166]: src/profile.c:ext_io_disconnected() Unable to get io data for AA Wireless: getpeername: Transport endpoint is not connected (107)

Do you think that changing strategy to 1 or 2 might help or this is not related?

Hello there, I also have a Dacia (with media display) and I also had some issues... changing usbaccesory timeout seems to solve the issue. I'm still testing.
https://github.com/nisargjhaveri/WirelessAndroidAutoDongle/issues/98#issuecomment-2099430073

@hkfuertes Thanks! Is it sufficient to clone the repo with this change and then build it from this dir using docker-compose? Will it include the local change even uncommited?

Yes, if you want to test it, sure, put a 0 for infinite or a higher value and build. :)

authors: Andreunto eliosbrocchi gamelaster hkfuertes manio nisargjhaveri sport80 toek79

repo: nisargjhaveri/WirelessAndroidAutoDongle


text:
resolve fetchgit issue with nix 2.4

Adds allRefs = true; to the invocation of fetchGit
as opposed to repassing the commit hash as the ref, which
fails with nix version >=2.4
Fixes #91

Thanks for the PR. I'm finally able to look at this.

Thank you for the PR. I've integrated your work in https://github.com/nix-community/npmlock2nix/pull/124 which added more backwards compat and not just Nix 2.4 support.

Amazing. Thanks for all your work!

authors: andir tshaynik


text:
update wallet format to v2

the python api now is still v1,can you please update it to v2?

Agreed, I also think we should implement v2 wallet scheme


text:
Use GraphQL request predicates

https://github.com/spring-projects/spring-boot/commit/65ef8994001e178913d7ee5e297959e58e75d764

Not applicable in MultipartGraphQlHttpHandler

repo: nkonev/multipart-spring-graphql


text:
Better docs

We could make docs much better (and promote project):

Add rules list to README.md.
Add examples, why ES6 code could broke your production (like Safari and const problem).

@ai thanks for interest =)
I've added docs for each rule.
But I still don't know why you don't want to use babel. For me babel is postcss in JS world.

I've added "Why?" section, so I'm closing this.

Great. Thanks :)

authors: ai nkt


text:
Feature: Export randomCloid()

It's not currently possible (that I know of) to import and use the randomCloid() function. I copied the implementation into my code locally, but it'd be nice if this could be imported from your library.

I prefer this SDK to be low-level and only implement what is specified in the hyperliquid documentation.
As a compromise, it is possible to add a separate import point (example: import * as utils from "@nktkas/hyperliquid/utils"), but doing it only for randomCloid doesn't seem like a good idea to me. I'll come back to this idea when there are more reasons to implement it.

Devil's advocate: the client OID is a particular format required by Hyperliquid (i.e. it's not merely a UUIDv4 or other common format), which is why it's useful to users of the hyperliquid client library. Most users of this lib will end up reinventing that wheel otherwise as most will need it.

Devil's advocate: the client OID is a particular format required by Hyperliquid (i.e. it's not merely a UUIDv4 or other common format), which is why it's useful to users of the hyperliquid client library. Most users of this lib will end up reinventing that wheel otherwise as most will need it.

You have made me study this issue in more detail)
What is cloid? - A unique order identifier for a particular user with no guarantee of idempotency.
What is the difference between cloid and oid? - oid is assigned by the server, while cloid is assigned by the user.
What scenarios use random cloid instead of oid? - The only thing I could think of is sending requests asynchronously without waiting for a response from the server.
My opinion: I think this is an extremely rare use case and creating a separate import point just for this doesn't seem like a good idea.
Can you give more scenarios where randomCloid is specifically needed or more ideas what can be added to the utils import point?

Created a discussion https://github.com/nktkas/hyperliquid/discussions/9 on this topic.

repo: nktkas/hyperliquid


text:
EXCEPTION: b000ff before start of map

I have a WinCE bin file that's reporting the "EXCEPTION: b000ff before start of map" error.
map=88, off=00000800
EXCEPTION: b000ff before start of map

Where would I start on fixing this? I can provide the bin file.

0000007e: failed to load dll4
0000007e: failed to load dll3
map=133, off=00000800
EXCEPTION: b000ff before start of map

I think I have the same issue, or similar one.

repo: nlitsme/eimgfs


text:
Forward declare-only header?

Would it be possible to provide a header meant for forward declaring only? This would save roughly 10k lines of code for all the compilation units that do not really need the details of json but just a pointer/reference or the size of the nlohmann::json class.
Then we could do in header files:
#include <json_fd.hpp>

nlohmann::json *json_ptr;

This would allow me to speed up compilation of my project quite a bit, as I use your json project here and there, but turns out to be included in a large portion of the compilation units.

Oh gosh. There is an issue for this. #381

No problem! If you have any further idea, just add comments.

authors: mcourteaux nlohmann

repo: nlohmann/json


text:
Use UNIX timestamp for files.list API

Parameters ts_from and ts_to should be UNIX timestamp.
See examples of https://api.slack.com/methods/files.list.

Thank you for this!

authors: dlsniper najeira

repo: nlopes/slack


text:
[BUG] importing into vercel

this new update wouldnt let me update the fork so i had to delete everything and re do it all. When i try to redo the site thru vercel it gives me this error when its building/importing the repo.
14:59:44.243

league-page@1.1.1 build /vercel/path0
14:59:44.243
svelte-kit build
14:59:44.243
14:59:44.660
vite v2.5.7 building for production...
14:59:44.815
transforming...
14:59:48.028
✓ 43 modules transformed.
14:59:48.028
[rollup-plugin-dynamic-import-variables] Unexpected token (4:36)
14:59:48.028
file: /vercel/path0/src/lib/utils/leagueInfo.js:4:36
14:59:48.029
Unexpected token (4:36)
14:59:48.031
SyntaxError: Unexpected token (4:36)
14:59:48.031
at Parser.pp$4.raise (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:16958:13)
14:59:48.031
at Parser.pp.unexpected (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:14466:8)
14:59:48.031
at Parser.pp.semicolon (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:14443:64)
14:59:48.031
at Parser.pp$1.parseExpressionStatement (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:14924:8)
14:59:48.031
at Parser.pp$1.parseStatement (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:14659:24)
14:59:48.031
at Parser.pp$1.parseTopLevel (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:14523:21)
14:59:48.031
at Parser.parse (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:14315:15)
14:59:48.032
at Function.parse (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:14346:35)
14:59:48.032
at Graph.contextParse (/vercel/path0/node_modules/rollup/dist/shared/rollup.js:20344:38)
14:59:48.032
at Object.transform (/vercel/path0/node_modules/vite/dist/node/chunks/dep-63d4bd14.js:43069:27)
14:59:48.046
npm ERR! code ELIFECYCLE
14:59:48.046
npm ERR! errno 1
14:59:48.050
npm ERR! league-page@1.1.1 build: svelte-kit build
14:59:48.050
npm ERR! Exit status 1
14:59:48.050
npm ERR!
14:59:48.050
npm ERR! Failed at the league-page@1.1.1 build script.
14:59:48.050
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
14:59:48.062
14:59:48.062
npm ERR! A complete log of this run can be found in:
14:59:48.062
npm ERR!     /vercel/.npm/_logs/2021-09-13T18_59_48_051Z-debug.log
14:59:48.083
Error: Command "npm run build" exited with 1

You made a mistake in your leagueInfo file. Replace line 4 and 5 with the following:
export const dues = 100; // (optional) used in template constitution page
export const dynasty = false; // true for dynasty leagues, false for redraft and keeper
export const enableBlog = false; // requires VITE_CONTENTFUL_ACCESS_TOKEN and VITE_CONTENTFUL_SPACE environment variables

If that fixes it, let me know and I'll close the issue!

that fixed it thanks.

authors: mogaffar nmelhado

repo: nmelhado/league-page


text:
hdl.ast.Value: Add .to_signed() method

We currently have a .as_unsigned(), but if the MSB is set
then its numerical value will be changed by it.
Consider this case for the unsigned variables a and b of same width, where a < b:
a - b               # will underflow
a.as_unsigned() - b # value of a is changed if a[-1] == 1
a.to_unsigned() - b # correct

Sorry it took so long to get back to you!

a - b               # will underflow
a.as_unsigned() - b # value of a is changed if a[-1] == 1
a.to_unsigned() - b # correct

I assume you mean the following:
a.to_signed() - b # correct

We discussed your proposal on the last meeting. I agree that it addresses an issue with nMigen language as it exists. However, I have two concerns:

It would be very easy to confuse as_signed (whose function is already not entirely obvious) with to_signed (which differs in a subtle way).
The way to_signed works is a subset of how a shape conversion operator would work, i.e. Proposal 1 from #464 would make it unnecessary.

Because of these concerns I think the issue you are highlighting would be best addressed as a part of #464.

authors: pbsds whitequark

repo: nmigen/nmigen


text:
Wrong distance to vector at index 0 using cosine similarity

There seems to be something weird going on when calculating the distance of any vector to the vector at index 0 using cosine similarity. It is sometimes very high (around 1e21) or very low (around -1e21), which are both outside the range of cosine similarity.
Below is a toy example that shows this behavior:
In [165]: v = np.array([[1,0],[1,1],[0,1],[-1,1],[-1,0],[-1,-1],[0,-1],[1,-1]])

In [166]: index = Index(space="cosine", dim=2)

In [167]: index.init_index(max_elements=8, ef_construction=200, M=16)

In [168]: data_labels = np.arange(8)

In [169]: index.add_items(v, data_labels)

In [170]: index.knn_query(v[0],k=8)
Out[170]:
(array([[1, 7, 2, 6, 3, 5, 4, 0]], dtype=uint64),
 array([[  2.92893231e-01,   2.92893231e-01,   1.00000000e+00,
           1.00000000e+00,   1.70710683e+00,   1.70710683e+00,
           2.00000000e+00,   3.41255758e+21]], dtype=float32))

In [171]: index.knn_query(v[1],k=8)
Out[171]:
(array([[1, 2, 3, 7, 4, 6, 5, 0]], dtype=uint64),
 array([[  5.96046448e-08,   2.92893231e-01,   1.00000000e+00,
           1.00000000e+00,   1.70710683e+00,   1.70710683e+00,
           2.00000000e+00,   2.41304247e+21]], dtype=float32))

In [172]: index.knn_query(v[2],k=8)
Out[172]:
(array([[2, 1, 3, 0, 4, 5, 7, 6]], dtype=uint64),
 array([[ 0.        ,  0.29289323,  0.29289323,  1.        ,  1.        ,
          1.70710683,  1.70710683,  2.        ]], dtype=float32))

In [173]: index.knn_query(v[3],k=8)
Out[173]:
(array([[0, 3, 2, 4, 1, 5, 6, 7]], dtype=uint64),
 array([[ -2.41304247e+21,   5.96046448e-08,   2.92893231e-01,
           2.92893231e-01,   1.00000000e+00,   1.00000000e+00,
           1.70710683e+00,   2.00000000e+00]], dtype=float32))

In [174]: index.knn_query(v[4],k=8)
Out[174]:
(array([[0, 4, 3, 5, 2, 6, 1, 7]], dtype=uint64),
 array([[ -3.41255758e+21,   0.00000000e+00,   2.92893231e-01,
           2.92893231e-01,   1.00000000e+00,   1.00000000e+00,
           1.70710683e+00,   1.70710683e+00]], dtype=float32))

In [175]: index.knn_query(v[5],k=8)
Out[175]:
(array([[0, 5, 4, 6, 3, 7, 2, 1]], dtype=uint64),
 array([[ -2.41304247e+21,   5.96046448e-08,   2.92893231e-01,
           2.92893231e-01,   1.00000000e+00,   1.00000000e+00,
           1.70710683e+00,   2.00000000e+00]], dtype=float32))

In [176]: index.knn_query(v[6],k=8)
Out[176]:
(array([[6, 5, 7, 0, 4, 1, 3, 2]], dtype=uint64),
 array([[ 0.        ,  0.29289323,  0.29289323,  1.        ,  1.        ,
          1.70710683,  1.70710683,  2.        ]], dtype=float32))

In [177]: index.knn_query(v[7],k=8)
Out[177]:
(array([[7, 6, 1, 5, 2, 4, 3, 0]], dtype=uint64),
 array([[  5.96046448e-08,   2.92893231e-01,   1.00000000e+00,
           1.00000000e+00,   1.70710683e+00,   1.70710683e+00,
           2.00000000e+00,   2.41304247e+21]], dtype=float32))

All indices apart from 2 and 6 show this behavior (incidentally, those make a 90 degree angle with the vector at index 0).
I am currently at commit aca8f8b, if that's useful.

@dorukkilitcioglu Thank you for reporting the bug! Can you please check the https://github.com/nmslib/hnsw/tree/fix_ep branch. It should be fixed there.

Yep, that fixes it. Thanks for the quick reply & the quick fix!

Cool! Thank you!

authors: dorukkilitcioglu yurymalkov

repo: nmslib/hnsw


text:
gcc UBSan runtime error: load of misaligned address

I was testing the R bindings to hnswlib using the GCC UBSan support in rhub and the following runtime error is reported:
../inst/include/hnswalg.h:142:112: runtime error: load of misaligned address 0x55bc6b4768fc for type 'labeltype', which requires 8 byte alignment
0x55bc6b4768fc: note: pointer points here
  cd cc 4c 3e 02 00 00 00  00 00 00 00 09 00 00 00  00 00 00 00 02 00 00 00  01 00 00 00 04 00 00 00

I add a macro for error reporting to hnswalg.h so the line number is a bit off. It's referring to:
https://github.com/nmslib/hnswlib/blob/79c4ba49ae55afaef1e37bb52490e06d48c2d7ca/hnswlib/hnswalg.h#L135
My limited understanding of this error is that memcpy should be the preferred way of dealing with this rather than casting.
I am entirely unsure of the significance or validity of this, but I thought I would pass it on in case it's of interest.

Hi @jlmelville,
Many thanks for reporting the issue!
I agree, it is worth to change casting to memcpy. I'll check if it affects the performance, and if it is ok will update the master.

Hi @jlmelville! I have merged the fix to develop branch.
Can you check that it solves the problem?

Yes, that seems to have solved it. I no longer see that error in rhub.

Thanks for fixing, @yurymalkov! Closing.

authors: jlmelville yurymalkov

repo: nmslib/hnswlib


text:
rust: Add support of OVS DPDK

Add these lines to the example:
   ovs-db:
    other_config:
      dpdk-init: "true"

Tested on OVD 2.16. and DPDK 20.11.1, with NIC Intel XXV710.

repo: nmstate/nmstate


text:
Does it have PDF toolbar?

I installed this module but it is only showing one page of the PDF.
and the there is no toolbar on top of the pdf and scrolling does not work.
any help is appreciated

No, there is no toolbar, that is left for the implementor. You can change page by passing it via props. You can check the example implementation from the example directory.

Any suggestions on the toolbar implementations?

@dziamid, check sample/test pages that are included in react-pdf as of 1.6.0 :)

authors: BesatZardosht dziamid nnarhinen wojtekmaj

repo: nnarhinen/react-pdf


text:
Download link for latest luxtorpeda is one letter off resulting in a 404.

Trying to update luxtorpeda via protonutils luxtorpeda update results in a 404.
It is trying to download:
https://github.com/luxtorpeda-dev/luxtorpeda/releases/download/v64.0.0/luxtorpeda-64.0.0.tar.xz

The actual release download is:
https://github.com/luxtorpeda-dev/luxtorpeda/releases/download/v64.0.0/luxtorpeda-v64.0.0.tar.xz

The issue is the -64 versus -v64 resulting in an error 404 file not found.

Thanks for reporting! I fixed it and pushed v1.6.6.

authors: entrapta-dev nning

repo: nning/protonutils


text:
Fix memcopy in Tensor copy constructor

Current implementation of Tensor use custom copy constructor that copies memory. This should be changed to default not copying constructor

:octocat: cibot: Thank you for posting issue #281. The person in charge will reply soon.

authors: taos-ci zhoonit

repo: nnstreamer/nntrainer


text:
Hotfix/tizen7.0 ahub

Commit 1:     replace strerror with strerror_r
 - Replace strerror with strerror_r to make thread safe.

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>

Commit 2:     [ahub] fix ahub issue
 - cast unsigned value to signed value and check its value it overrides sign-bit.

Signed-off-by: hyeonseok lee <hs89.lee@samsung.com>

:memo: TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #2150. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://ci.nnstreamer.ai/.


text:
BLE supporting on Windows

My Windows 7 PC supports bluetooth 4.0:

But when I use noble.startScanning([], true), it throws an error:

Are USB adaptors always necessary whatever bluetooth 4.0 is supported in PC?
If so, is there anyway to use bluetooth 4.0 without a USB adaptor on a ble-native-supprted device?
OS: Windows 7
noble: 1.9.1

You need to do 2 things:
From here:

WinUSB driver setup for Bluetooth 4.0 USB adapter, using Zadig tool
Be sure to make a back-up of the original driver before replacing it, provided you will use this [WinUSB] driver instead.

Edit the allowed dongles, from here:

https://github.com/noble/node-bluetooth-hci-socket/blob/master/lib/usb.js#L14-L27

@sandeepmistry
This package works just fine on OS X with no problem. But the driver twitching on windows with Zadig is a real bummer. This makes the package impractical on windows for production purposes since it completely messes with the client's Bluetooth driver. (to the extent that the Bluetooth option completly vanishes from the taskbar and no one would want that.)
Is there any solution or workaround not to change the adapter's driver on windows? Just like the way it works on Mac. In the future updates maybe?
Thanks.

authors: ervinewell n3rd4i thefakhreddin

repo: noble/noble


text:
Add fs-extra module to dependencies in @node-red/util module

[x] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Proposed changes
When I tried the electron Node-RED using Node-RED v2.0 beta 2, I encountered a startup error.

I found that this problem came from a lack of dependencies in the @node-red/util module. Therefore, I added the fs-extra module as dependencies in the @node-red/util module. (Strangely, this problem didn't occur using Node-RED v1.3.5).
Checklist

[x] I have read the contribution guidelines
[ ] For non-bugfix PRs, I have discussed this change on the forum/slack team.
[x] I have run grunt to verify the unit tests pass
[ ] I have added suitable unit tests to cover the new/changed functionality

Coverage remained the same at 67.604% when pulling e81a6db9a3dbca6674e1a7fd30d8acf6ab32521f on kazuhitoyokoi:dev-fixdependencies into b2f5a259ab9f395d3e8988b0e5ab270c14b300f4 on node-red:dev.

This needs fixing in master as well.

Thank you for the fixing in the master branch. :)

@knolleary For dev and master branches, I submitted other pull requests related to this. Could you check them?

authors: coveralls kazuhitoyokoi knolleary

repo: node-red/node-red


text:
Palette: Remember category open/close state across reloads.

[ ] Bugfix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

Proposed changes
If you are working on some custom nodes and have them in a new category at the bottom of the list, it's nice to have the others closed even after a page reload.
Checklist

[x] I have read the contribution guidelines
[ ] For non-bugfix PRs, I have discussed this change on the forum/slack team.
[ ] I have run grunt to verify the unit tests pass
They seem to fail, but not because of this change.
[ ] I have added suitable unit tests to cover the new/changed functionality

Coverage remained the same at 68.193% when pulling a11827222224432dd0fcdccf879cceb5d4eaee13 on dreamair:feature/remember-category-state into 30ea300f65c7bdb880339601461e4001d4fbc0df on node-red:dev.

Hi Bruno, thank you for your contribution.
@knolleary This PR is part of what was introduced in #4634. It can therefore be closed as superseded by #4634.

authors: GogoVega coveralls dreamair


text:
fix edge case when passing zero value to skipBytes

If count === 0, the stream-parser will throw an error. https://github.com/TooTallNate/node-stream-parser/blob/master/index.js#L117

Is it possible to add test for this fix?
It seems, other formats also can be affected by this bug

Created issue in node-strea-parser https://github.com/TooTallNate/node-stream-parser/issues/6. May be author will agree to change upstream

@puzrin I have a TIFF file that's 4MB that exhibits the bug when I was trying to parse it, but it probably isn't a good idea to drop a file that large into the repo as a fixture. I checked the other formats, JPEG already had a workaround and none of the others had a dynamic skip that would lead to that condition.

Please. squash all to single commit
/cc @rlidwka take a look please

Published, with more fixes of the same type of bugs + tests.

authors: puzrin winglian

repo: nodeca/probe-image-size


text:
Passing Buffer type argument to Odb.write gives error

I tried passing in a buffer, Buffer.from('some string') to Odb.write(data, len, type), but it gives me this error
Error: Buffer data is required.

And if we look at the test for Odb.write, it also doesn't pass in Buffer either, just a string. Tried using a string instead of a Buffer, and then everything worked fine with no errors. https://github.com/nodegit/nodegit/blob/master/test/tests/odb.js#L49
Is everything working as intended? Is data supposed to be a string? If so, then the data's type should be string.

@nijynot From looking at the libgit2 header files, I think string is valid. Perhaps Buffer was correct back in 2014 (32f7838e5db23b044e9b7ea8b4af9d244c52bf5c), I'm not sure.

authors: nijynot rcjsuen

repo: nodegit/nodegit


text:
Start writing React components from Figma Designs

This is the issue that requires nodejs/nodejs.org to be already as a monorepo or have a way that we can import the React Components created from there;
We would also need to add the API Docs-specific Components to this repository within the mdx-react generator folder. Layouts (header, footer, navigation) must probably exist within the react-web generator (?).. I assume that a good chunk can be reused from the Node.js Website ones.
The Figma design is available here: https://www.figma.com/design/pu1vZPqNIM7BePd6W8APA5/Node.js?node-id=422-7923

I can help you with that

Update on that:

[x] nodejs/nodejs.org as a monorepo
[ ] i18n package
[ ] UI package

Once we've created the UI package, we can open an output suite to create the components.

authors: AugustinMauroy Avinashshiyani ovflowd

repo: nodejs/api-docs-tooling


text:
binding.gyp not found

I get the following error while attempting to run node-gyp rebuild in my powershell:
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (C:\Users\a\AppData\Roaming\npm\node_modules\node-gyp\lib\configure.js:345:16)
gyp ERR! stack     at ChildProcess.emit (events.js:127:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:12)
gyp ERR! System Windows_NT 10.0.17134
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\helen\\AppData\\Roaming\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\helen\Documents\GitHub\Bro-Time-Server
gyp ERR! node -v v9.7.1
gyp ERR! node-gyp -v v3.7.0
gyp ERR!

Hi @gt-c! If you are getting an error saying that node-gyp can't find your binding.gyp file, then it's likely you need to change directories into your project folder. You should be able to use node-gyp again after that.

repo: nodejs/node-gyp


text:
Use of a Broken or Risky Cryptographic Algorithm

Source code:
https://github.com/nodejs/node-gyp/blob/f0882b1264b2fa701adbc81a3be0b3cba80e333d/gyp/pylib/gyp/xcodeproj_file.py#L433
https://github.com/nodejs/node-gyp/blob/4d036526c5347ad6fb0394993bda05f8260f7ae4/gyp/pylib/gyp/generator/make.py#L1995
Description: This function uses the hashlib.sha1() function, which uses a hash algorithm that is considered weak. In recent years, researchers have demonstrated ways to breach many uses of previously-thought-safe hash functions such as MD5.
Remediation: Consider using a stronger algorithm in order to prevent attackers from being able to manipulate hash results. If this algorithm is being used to hash passwords, then consider using a strong computationally-hard algorithm such as PBKDF2 or bcrypt instead of a plain hashing algorithm.
References: CWE

please take it up with https://github.com/nodejs/gyp-next (or get a more intelligent code scanning tool)

authors: kerenren rvagg


text:
Test Issue created at Tue, 07 Feb 2023 16:28:51 GMT

Test issue body  Tue, 07 Feb 2023 16:28:51 GMT

Comment on issue at Tue, 07 Feb 2023 16:28:55 GMT

repo: nodemationqa/nodeQA


text:
Export shared getFormatter() method for grunt-nsp module

Ref: https://github.com/nodesecurity/grunt-nsp/issues/19
Saves having to copy-pasta that utility function to grunt-nsp and probably gulp-nsp.

good call! thanks @pdehaan

Not entirely related, but more of a side conversation, but I think we're also having some unexpected side effects from using shrinkwrap. In trying to debug this today, I realized that the package.json file uses some semver range operators so it looks like it would install "nsp": "^2.3.0", but because of the npm-shrinkwrap.json file, it will always only install exactly "version": "2.3.0" — which means we'd have to regenerate the npm-shrinkwrap.json file every tiem we release a new version of nsp.

are you referring to your app that uses nsp? do you have it in your devDependencies?

@nlf, sorry, I was referring to the grunt-nsp module directly.

ah, then yes you're absolutely correct. since nsp is the only dependency there though and it has its own shrinkwrap, i'll remove it from grunt-nsp. gulp-nsp only has one other dependency so i'll have to evaluate how i feel about removing the shrinkwrap there.

authors: nlf pdehaan

repo: nodesecurity/nsp


text:
Add link to github repo

In the website repo add the link to the github repo so that it is easy to find from the generated website.

@mhdawson take look on https://github.com/nodeshift/nodejs-reference-architecture/pull/82
That contains some minimal information how to publish website.

authors: mhdawson wtrocki

repo: nodeshift/nodejs-reference-architecture


text:
Searches not functioning

Searches don't update in the browser, and change the url to be:
localhost:8000/?
the log of search event is as follows:
2016-01-14T14:25:23.706Z ndj4goskoyfo/1452780787533/8010/search DEBUG	act	search       	IN	vrcsttjeuf3m/gneiv9at45zu	cmd:search,role:search	{role:search,cmd:search,query:request}	ENTRY	(ogg9h)	LISTEN	oozx0aoim26p/1452780919174/8267/web	-
2016-01-14T14:25:23.753Z ndj4goskoyfo/1452780787533/8010/search DEBUG	act	search       	OUT	vrcsttjeuf3m/gneiv9at45zu	cmd:search,role:search	{items:[{name:request,version:2.67.0,giturl:git+https://github.com/request/request.git,desc:Simplified HTTP req	EXIT	(ogg9h)	LISTEN	oozx0aoim26p/1452780919174/8267/web	47
Using the curl command to run the request does return a json object
Edit: This is the case for branches from i02 onward. Using the http api currently works

This is because of elastic search, fixes will be remerged soon.

authors: CodeWriterWriter mcdonnelldean

repo: nodezoo/nodezoo-workshop


text:
Grupo4 jjr

Take comment user

Take comment user

repo: noellopes/CarManufactoring


text:
Remonter tout ce qui est possible de la config du site à la config du thème

ex:
paginate: 18
enableRobotsTXT: true

@arnaudlevy  alors j'ai essayé, mais il semble que ce qu'on peut remonter est dans cette liste https://gohugo.io/getting-started/configuration/#merge-configuration-from-themes

Cool, si c'est au max !

authors: arnaudlevy sebousan

repo: noesya/osuny-hugo-theme


text:
fix(frontend): Error for when impl is stricter than trait

Description
Problem*
Resolves #5210
Summary*
For context it is good to start with the linked issue and the discussion.
In the linked issue discussion, a non-existent trait implementation would pass type checking and fail during monomorphization. It turns out the linked issue's error was not that the compiler should error with No impl found ... but rather that the impl has stricter requirements than the trait. When we move the where clause to the trait impl we get the expected no matching impl error as expected.
But now the following code from the issue will have this error:

We will also error if the object type in a trait constraint has different generics:
trait MyTrait { }

trait Bar<T> {
    fn bar<U>() where Option<T>: MyTrait;
}

impl<A> Bar<A> for () {
    fn bar<B>() where Option<B>: MyTrait {}
}

Will return the following error:

I have also attached a test showing how we get the expected no impl found error when the where clause is accurately placed on the trait impl rather than the trait impl method.
Additional Context
The way we attach trait impl where clauses onto methods did complicate things a little. We should consider maintaining a clearer separation for where clauses on impls and where clauses on functions.
Documentation*
Check one:

[X] No documentation needed.
[ ] Documentation included in this PR.
[ ] [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

[X] I have tested the changes locally.
[X] I have formatted the changes with Prettier and/or cargo fmt on default settings.

Looking at the issue in more detail now but doesn't this just boil down to prohibiting any trait bounds on the impl? Would this not be simpler + clearer than allowing it in the situation where it matches up with the trait?

@TomAFrench we'd still want to allow trait bounds on an impl's method if the corresponding trait method also requires that impl. It's not the most common feature but it does match Rust's behavior.

This is ready for review again and accounts for when the object type and/or the generics in the trait constraint differ. All tests are under noirc_frontend/test.rs. Let me know if there are any other tests you think would be good to include.
I also moved the trait impl elaboration logic into its own module as it was starting to get quite long and it would be good to split up the elaborator mod.rs file.
The PR looks kind of long but about half of the diff is tests and making the new trait_impls.rs file. The critical logic in this PR can be found under trait_impls.rs in the elaborator module.

Put back to a draft as some errors on aztec-nr. However, these may be errors that are causing panics as it does seem aztec was using this pattern a lot when it should have been error'ing out.

This is ready again. The aztec-nr failures are due to the error this PR brings up being triggered and some changes not being fully synced that are aztec-packages but not aztec-nr.

Looks like this still does not catch the case where the generics differ:
trait Foo<T> {
    fn foo<U>() where T: T2<T>;
}

impl<A> Foo<A> for () {
    // Should be A: T2<A>, but this erroneously passes
    fn foo<B>() where A: T2<B> {}
}

trait T2<C> {}

Looks like this still does not catch the case where the generics differ:

AH yes I missed accounting fro the trait generics. This case now fails with the following:

I have added a test in the frontend tests as well.

authors: TomAFrench jfecher vezenovm

repo: noir-lang/noir


text:
feat(opt): Reduce array cloning by initializing refcounts to 0, not 1

Description
Problem*
Summary*
I noticed after storing an array in a variable we were always issuing an inc_rc which lead to arrays having an rc of 2 to begin with instead of 1, meaning the first mutation would always be cloned.
Additional Context
Documentation*
Check one:

[x] No documentation needed.
[ ] Documentation included in this PR.
[ ] [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt on default settings.

This PR requires https://github.com/noir-lang/noir/pull/6585 first

Closing in favor of #6685


text:
Query parameter 'Code' to upstream service behind the kong

I am using this plugin for a long time. I have a use case, where there is an application hosted behind the kong. That application is having a query parameter named "code". Whenever we try to access the application with query parameter code, kong is being redirected to the recovery page.
Example:
https://kong/application1?code=xxxxxxx
Note: Application1 is hosted behind kong with kong-oidc plugin configured.

I know that it is in conflict with the actual authorization code oidc process. (as it also uses 'code' as a query parameter). But after a successful login, I am trying to use the upstream Application1's API with query parameter code (which is application-specific). Is there any way to acheive this?
@Trojan295 Need your help in understanding exactly what is happening and how can we fix (if any). Let me know. Thanks

Possible Solution:
The following is the snippet from the Utils.lua (line number 26).
local function tackle_slash(path)
   local args = ngx.req.get_uri_args()
   if args and args.code then
     return path
   elseif path == "/" then
     return "/cb"
   elseif path:sub(-1) == "/" then
     return path:sub(1, -2)
   else
     return path .. "/"
   end
 end

Here we are checking if the args (query params of a request) are having 'code' or not, if so, it will consider the request is for authorization so it passes the redirect_uri_path to lua-resty-openidc (which in turn triggers this if loop https://github.com/zmartzone/lua-resty-openidc/blob/master/lib/resty/openidc.lua#L1405).
So instead of just checking args, args.code, we will also check one more thing: referrer header value is from OP (IDP) or not. If it is then we will consider the request is for authorization and pass it to lua-resty-openidc. If not, we will treat that as upstreams query parameter 'code' and we will just proxy it (means it will go to the last else block in the above snippet).
local function tackle_slash(path)
   local args = ngx.req.get_uri_args()
   if args and args.code and referrer_header and (referrer_header:match("://(.-)/") == idp_domain)then
     return path
   elseif path == "/" then
     return "/cb"
   elseif path:sub(-1) == "/" then
     return path:sub(1, -2)
   else
     return path .. "/"
   end
 end

Note:
referrer_header = You can get it from request
idp_domainname = You can get it from configuration (as the internal IDP's domain name is static)
How about this?? I don't know whether this will work or not. This is just a theoretical approach.

repo: nokia/kong-oidc


text:
400 Referer header must match host

I get this error when using pouch DB find. My allDocs request for the same path works without issues. My pouch find request looks like this this.db.find({
selector: {_id: ''}
});
any help?

I believe this occurs when you use CouchDB 1.x, which doesn't support Mango queries. Please reopen if I have misdiagnosed.

authors: nolanlawson saniyusuf

repo: nolanlawson/pouchdb-find


text:
Slides get minimized when they are active

http://codepen.io/netk/pen/vKqAWQ --- Does anyone have a clue why it's responding like this with curalite widgets? It gets smaller and smaller with only "depth" option.

Codepen is not available, so i guess it is not actual anymore


text:
added touchend to next/prev/dots click events

I've been using Swiper on a desktop sized touch screen and needed to modify the code in order for the next & previous buttons to function.

Sorry, but this will cause wrong behavior on mobile devices, if you start swiping from somewhere and stop on (for example) Next button, it will cause slide to next slide, which can be not what user was expecting


text:
Swiper does not call slideChange start/end when parallax: true.

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Swiper Version: 4.5.0

Platform/Target and Browser Versions: ALL Platform

Live Link or JSFiddle/Codepen or website with isssue: PREFERABLY (IF YOU WANT YOUR ISSUE TO BE RESOLVED ASAP).

What you did
1、set parallax: true
2、drag to change slide
3、slideChange be called，but slideChangeStart and slideChangeEnd does not work...

There is no slideChangeStart and slideChangeEnd events https://github.com/nolimits4web/swiper/blob/Swiper4/API.md#events


text:
🛑 mastodon.1984.cz is down

In 329ef1a, mastodon.1984.cz (https://mastodon.1984.cz/nodeinfo/2.0) was down:

HTTP code: 0
Response time: 0 ms

Resolved: mastodon.1984.cz is back up in 116aed0 after 246 days, 15 hours, 38 minutes.

repo: nolog-it/mastodon-uptime


text:
🛑 f.cz is down

In 7173739, f.cz (https://f.cz/nodeinfo/2.0) was down:

HTTP code: 0
Response time: 0 ms

Resolved: f.cz is back up in c48246b after 5 minutes.


text:
window PC下资源不存在

通过 #22 配置
通过该食用指南配置
在centos上pm2运行的代理
在window PC客户端 -> 工具 配置了相应的代理和端口
有挺大一部分歌曲无法正常播放
列表显示有资源（歌曲没有灰掉）

但是同一个代理在 ios上通过小火箭使用
大部分歌曲都能正常播放 比如周杰伦的 一路向北

同环境同问题。
我这边是几乎全灭，所有无版权pc端网络错误，android端资源不存在。重新配置项目也不行，只能等 @nondanee 大大更新。

不知道了，我没啥问题啊
本地起个服务看看？

不知道了，我没啥问题啊
本地起个服务看看？

本地服务并修改host没问题
问题仅出在windowPC使用代理情况下
iphone使用同一个代理也很正常 T^T

那可能是远程匹配到的 url 本地播放不了
比如远程被分配了 A 地区的 CDN 链接，本机在 B 地区无法访问 A 地区的 CDN server
可以加上 -e 让播放也走远程试试看
还有之前测过 Windows 客户端好像不支持 -e https://music.163.com 的自签证书
用 -e http://music.163.com 试试

authors: nondanee runfi shugo-chara

repo: nondanee/UnblockNeteaseMusic


text:
Plugin: QQ闪照重现

插件名称：
QQ闪照重现
插件功能：
重新把闪照用图片方式发出
PyPI 项目名：
nonebot_plugin_flashre
插件 import 包名：
nonebot_plugin_flashre-1.0.tar.gz
插件项目仓库/主页链接：
https://github.com/LycanW/nonebot_plugin_flashre

请在pypi发布后再来发布插件

authors: LycanW yanyongyu


text:
修复单独被@报错问题，以及使机器人可以判断出在消息任意位置的@信息

Fix #296
修复单独被@报错问题，以及使机器人可以判断出在消息任意位置的@信息

你是不是关闭了admin的pr修改权限

你是不是关闭了admin的pr修改权限

开了

@yanyongyu 我还加了判断任意位置的At信息……只加这句的话还是只能判断开头的At……

@yanyongyu 我还加了判断任意位置的At信息……只加这句的话还是只能判断开头的At……

即便要修改也不应该在这里bugfix修改，而是新开一个feature request

authors: SinonJZH yanyongyu


text:
单词X-Ray无法被识别

如题，CET4词典中包括X-Ray这个单词，答案可能会为X-Ray，但在群中输入无法被bot识别和检测

https://github.com/noneplugin/nonebot-plugin-wordle/commit/e380dfdef6f2e65ed6914ab4edb905c21539b394

authors: MeetWq WindraiteLesd

repo: noneplugin/nonebot-plugin-wordle


text:
Does node-usb support bi-directional endpoints?

I'm trying to write a bulk transfer for the crazy radio dongle and they say that their endpoint 1 supports in and out, which seems to be valid in chrome.usb's bulkTransfer mechanism.  Does node-usb take this directional argument?  Perhaps in the data packet?  I know you say that isosynchronous is not supported, but this is different, right?  It looks like chrome.usb supports endpoint direction in its bulkTransfer and isosync is totally different.
In the following tests, you should be able to see that the endpoint is labeled with out, but the first test succeeds in reading.  The second test fails because the endpoint "in" needs to be read so the buffer can be cleared, however, I'm not sure how to do that in this scenario.  Any ideas, or is this even supported?
Thanks!
describe.only('Packet tests', function() {

        var iface = null;

        beforeEach(function() {
            radio = new Crazyradio();
            radio.debugLevel(4);
            device = radio.find();
        });

        afterEach(function(done){
            iface.release(true, function(err){
                console.log('releasing', err);
                radio.close(device, function(err, data){
                    console.log('after', err);
                    done();
                });
            });
        });

        it('should read a packet', function(done){
            radio.open(device, function(){

                iface = device.interface(0);
                iface.claim();

                var radioIn = iface.endpoints[1];

                console.log('radioIn', radioIn.direction, radioIn.transferType, radioIn.descriptor);

                radioIn.transfer(64, function(err, data){
                    console.log('in err / data', err, data);
                    done();
                });
            });
        });

        it('should send a packet', function(){

            radio.open(device, function(){

                iface = device.interface(0);
                iface.claim();

                var radioOut = iface.endpoints[1];

                console.log('radioOut', radioOut.direction, radioOut.transferType, radioOut.descriptor);

                //Preparing commander packet
                var packet = new ArrayBuffer(15);
                var dv = new DataView(packet);

                dv.setUint8(0, 0x30, true);      // CRTP header
                dv.setFloat32(1, 0.0, true);    // Roll
                dv.setFloat32(5, 0.0, true);   // Pitch
                dv.setFloat32(9, 0.0, true);     // Yaw
                dv.setUint16(13, 0.0, true);  // Thrust

                radioOut.transfer(packet, function(error){
                    console.log('out transfer callback', error);
                    done();
                });
            });
        });
    });

and here's the debug logs

> crazyradio-node-driver@0.0.1 test /Users/4m1r/Desktop/Crazyflie/crazyradio-node-driver
> mocha test.js

  CrazyRadio tests
    Packet tests
[timestamp] [threadID] facility level [function call] <message>
--------------------------------------------------------------------------------
[ 0.092762] [00000513] libusb: debug [libusb_get_device_list]
[ 0.092881] [00000513] libusb: debug [libusb_get_device_descriptor]
[ 0.092952] [00000513] libusb: debug [libusb_get_device_descriptor]
[ 0.092993] [00000513] libusb: debug [libusb_get_device_descriptor]
[ 0.094703] [00000513] libusb: debug [libusb_open] open 20.7
[ 0.094889] [00000513] libusb: debug [usbi_add_pollfd] add fd 22 events 1
[ 0.094903] [00000513] libusb: debug [darwin_open] device open for access
[ 0.094952] [00003f03] libusb: debug [handle_events] poll() returned 1
[ 0.094990] [00003f03] libusb: debug [handle_events] caught a fish on the control pipe
[ 0.095009] [00003f03] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.095015] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 0.095020] [00003f03] libusb: debug [handle_events] poll fds modified, reallocating
[ 0.095026] [00003f03] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
opening
[ 0.095904] [00000513] libusb: debug [libusb_claim_interface] interface 0
[ 0.096790] [00000513] libusb: debug [get_endpoints] building table of endpoints.
[ 0.096814] [00000513] libusb: debug [get_endpoints] interface: 0 pipe 1: dir: 1 number: 1
[ 0.096821] [00000513] libusb: debug [get_endpoints] interface: 0 pipe 2: dir: 0 number: 1
[ 0.096864] [00000513] libusb: debug [darwin_claim_interface] interface opened
radioIn out 2 { bLength: 7,
  bDescriptorType: 5,
  bEndpointAddress: 1,
  bmAttributes: 2,
  wMaxPacketSize: 64,
  bInterval: 6,
  bRefresh: 0,
  bSynchAddress: 0,
  extra: <Buffer > }
[ 0.099095] [00000513] libusb: debug [ep_to_pipeRef] converting ep address 0x01 to pipeRef and interface
[ 0.099108] [00000513] libusb: debug [ep_to_pipeRef] pipe 2 on interface 0 matches
[ 0.099325] [0000230f] libusb: debug [darwin_async_io_callback] an async io operation has completed
[ 0.099359] [00003f03] libusb: debug [handle_events] poll() returned 1
[ 0.099366] [00003f03] libusb: debug [op_handle_events] checking fd 22 with revents = 1
[ 0.099370] [00003f03] libusb: debug [darwin_handle_callback] handling bulk completion with kernel status 0
[ 0.099375] [00003f03] libusb: debug [usbi_handle_transfer_completion] transfer 0x10120d808 has callback 0x102b8b935
[ 0.099389] [00003f03] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.099393] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 0.099397] [00003f03] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
in err / data undefined undefined
      ✓ should read a packet
[ 0.101937] [00004603] libusb: debug [libusb_release_interface] interface 0
releasing undefined
[ 0.102882] [00000513] libusb: debug [libusb_close]
[ 0.102910] [00003f03] libusb: debug [handle_events] poll() returned 1
[ 0.102921] [00003f03] libusb: debug [handle_events] caught a fish on the control pipe
[ 0.102931] [00003f03] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.102937] [00003f03] libusb: debug [libusb_try_lock_events] someone else is modifying poll fds
[ 0.102942] [00003f03] libusb: debug [libusb_event_handler_active] someone else is modifying poll fds
[ 0.102947] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] another thread is doing event handling
[ 0.102998] [00000513] libusb: debug [usbi_remove_pollfd] remove fd 22
[ 0.103053] [00003f03] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.103065] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 0.103070] [00003f03] libusb: debug [handle_events] poll fds modified, reallocating
[ 0.103076] [00003f03] libusb: debug [handle_events] poll() 2 fds with timeout in 60000ms
after false
[ 0.103715] [00000513] libusb: debug [libusb_get_device_list]
[ 0.104119] [00000513] libusb: debug [libusb_open] open 20.7
[ 0.104220] [00000513] libusb: debug [usbi_add_pollfd] add fd 22 events 1
[ 0.104232] [00000513] libusb: debug [darwin_open] device open for access
[ 0.104257] [00003f03] libusb: debug [handle_events] poll() returned 1
[ 0.104272] [00003f03] libusb: debug [handle_events] caught a fish on the control pipe
[ 0.104283] [00003f03] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.104289] [00003f03] libusb: debug [libusb_try_lock_events] someone else is modifying poll fds
[ 0.104294] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] event handler was active but went away, retrying
[ 0.104299] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 0.104304] [00003f03] libusb: debug [handle_events] poll fds modified, reallocating
[ 0.104311] [00003f03] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
opening
[ 0.104699] [00000513] libusb: debug [libusb_claim_interface] interface 0
[ 0.105099] [00000513] libusb: debug [get_endpoints] building table of endpoints.
[ 0.105114] [00000513] libusb: debug [get_endpoints] interface: 0 pipe 1: dir: 1 number: 1
[ 0.105124] [00000513] libusb: debug [get_endpoints] interface: 0 pipe 2: dir: 0 number: 1
[ 0.105168] [00000513] libusb: debug [darwin_claim_interface] interface opened
radioOut out 2 { bLength: 7,
  bDescriptorType: 5,
  bEndpointAddress: 1,
  bmAttributes: 2,
  wMaxPacketSize: 64,
  bInterval: 6,
  bRefresh: 0,
  bSynchAddress: 0,
  extra: <Buffer > }
[ 0.106232] [00000513] libusb: debug [ep_to_pipeRef] converting ep address 0x01 to pipeRef and interface
[ 0.106248] [00000513] libusb: debug [ep_to_pipeRef] pipe 2 on interface 0 matches
      ✓ should send a packet
[ 0.107096] [00004503] libusb: debug [libusb_release_interface] interface 0
releasing undefined
      1) "after each" hook

  2 passing (22ms)
  1 failing

  1) CrazyRadio tests Packet tests "after each" hook:
     Uncaught Error: Can't close device with a pending request
      at Error (native)
      at Device.usb.Device.close (/Users/4m1r/Desktop/Crazyflie/crazyradio-node-driver/node_modules/usb/usb.js:43:7)
      at Crazyradio.close (/Users/4m1r/Desktop/Crazyflie/crazyradio-node-driver/index.js:61:12)
      at Interface.<anonymous> (/Users/4m1r/Desktop/Crazyflie/crazyradio-node-driver/test.js:463:23)
      at Device.<anonymous> (/Users/4m1r/Desktop/Crazyflie/crazyradio-node-driver/node_modules/usb/usb.js:200:7)

npm ERR! Test failed.  See above for more details.
[4m1r@Korgi:14:12:28 ~/Desktop/Crazyflie/crazyradio-node-driver]
$

Here's the driver and the rest of the tests, which work fine for configuration
https://github.com/adjavaherian/crazyradio-node-driver

USB endpoints aren't bidirectional, but the MSB of the endpoint address specifies the direction, and sometimes that bit is omitted when the direction is also specified. So there are actually two endpoints, 0x1 OUT and 0x81 IN, which node-usb will see as two separate endpoints.

Thanks @kevinmehall, that's what I'm seeing, but for some reason, my read from 0x81 never returns the callback.  Any ideas?
Here's the spec
before(function() {
            radio = new Crazyradio();
            radio.debugLevel(4);
            device = radio.find();
        });

        afterEach(function(done){
            var iface = device.interfaces[0];
            iface.release(true, function(err){ console.log(err) });
            done();
        });

        it.only('should read a packet', function(done){

            console.log('opening', device);
            device.open();
            console.log('open', device.interfaces[0]);

            var iface = device.interfaces[0];
                iface.claim();

            console.log('endpoints[0]', iface.endpoints[0]);

            var radioIn = iface.endpoints[0];
            var radioOut = iface.endpoints[1];

            console.log('radioOut', radioOut.direction, radioOut.transferType, radioOut.descriptor.bEndpointAddress);
            console.log('radioIn', radioIn.direction, radioIn.transferType, radioIn.descriptor.bEndpointAddress);

            radioOut.transfer([1], function(err){
                console.log('out cb', err);

                assert.equal(radioIn, iface.endpoint(0x81));

                radioIn.transfer(64, function(err, data){
                    console.log('in err / data', err, data);
                    done();
                });
            });
        });

and the log
> crazyradio-node-driver@0.0.1 test /Users/4m1r/Desktop/Crazyflie/crazyradio-node-driver
> mocha test.js

  CrazyRadio tests
    Packet tests
[timestamp] [threadID] facility level [function call] <message>
--------------------------------------------------------------------------------
[ 0.023562] [00000513] libusb: debug [libusb_get_device_list]
[ 0.023735] [00000513] libusb: debug [libusb_get_device_descriptor]
[ 0.023856] [00000513] libusb: debug [libusb_get_device_descriptor]
[ 0.023924] [00000513] libusb: debug [libusb_get_device_descriptor]
[ 0.024010] [00000513] libusb: debug [libusb_get_device_descriptor]
[ 0.024067] [00000513] libusb: debug [libusb_get_device_descriptor]
opening { busNumber: 20,
  deviceAddress: 26,
  deviceDescriptor:
   { bLength: 18,
     bDescriptorType: 1,
     bcdUSB: 512,
     bDeviceClass: 0,
     bDeviceSubClass: 0,
     bDeviceProtocol: 0,
     bMaxPacketSize0: 64,
     idVendor: 6421,
     idProduct: 30583,
     bcdDevice: 39251,
     iManufacturer: 1,
     iProduct: 2,
     iSerialNumber: 29,
     bNumConfigurations: 1 },
  portNumbers: [ 1 ] }
[ 0.029535] [00000513] libusb: debug [libusb_open] open 20.26
[ 0.029695] [00000513] libusb: debug [usbi_add_pollfd] add fd 22 events 1
[ 0.029709] [00000513] libusb: debug [darwin_open] device open for access
[ 0.029744] [00003f03] libusb: debug [handle_events] poll() returned 1
[ 0.029778] [00003f03] libusb: debug [handle_events] caught a fish on the control pipe
[ 0.029796] [00003f03] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.029802] [00003f03] libusb: debug [libusb_try_lock_events] someone else is modifying poll fds
[ 0.029805] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] event handler was active but went away, retrying
[ 0.029809] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 0.029812] [00003f03] libusb: debug [handle_events] poll fds modified, reallocating
[ 0.029816] [00003f03] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
open { device:
   { busNumber: 20,
     deviceAddress: 26,
     deviceDescriptor:
      { bLength: 18,
        bDescriptorType: 1,
        bcdUSB: 512,
        bDeviceClass: 0,
        bDeviceSubClass: 0,
        bDeviceProtocol: 0,
        bMaxPacketSize0: 64,
        idVendor: 6421,
        idProduct: 30583,
        bcdDevice: 39251,
        iManufacturer: 1,
        iProduct: 2,
        iSerialNumber: 29,
        bNumConfigurations: 1 },
     portNumbers: [ 1 ],
     interfaces: [ [Circular] ],
     _configDescriptor:
      { bLength: 9,
        bDescriptorType: 2,
        wTotalLength: 32,
        bNumInterfaces: 1,
        bConfigurationValue: 1,
        iConfiguration: 0,
        bmAttributes: 128,
        bMaxPower: 50,
        extra: <Buffer >,
        interfaces: [Object] } },
  id: 0,
  altSetting: 0,
  descriptor:
   { bLength: 9,
     bDescriptorType: 4,
     bInterfaceNumber: 0,
     bAlternateSetting: 0,
     bNumEndpoints: 2,
     bInterfaceClass: 255,
     bInterfaceSubClass: 255,
     bInterfaceProtocol: 0,
     iInterface: 0,
     extra: <Buffer >,
     endpoints: [ [Object], [Object] ] },
  interfaceNumber: 0,
  endpoints:
   [ { device: [Object],
       descriptor: [Object],
       address: 129,
       transferType: 2 },
     { device: [Object],
       descriptor: [Object],
       address: 1,
       transferType: 2 } ] }
[ 0.031801] [00000513] libusb: debug [libusb_claim_interface] interface 0
[ 0.032741] [00000513] libusb: debug [get_endpoints] building table of endpoints.
[ 0.032774] [00000513] libusb: debug [get_endpoints] interface: 0 pipe 1: dir: 1 number: 1
[ 0.032786] [00000513] libusb: debug [get_endpoints] interface: 0 pipe 2: dir: 0 number: 1
[ 0.032846] [00000513] libusb: debug [darwin_claim_interface] interface opened
endpoints[0] { device:
   { busNumber: 20,
     deviceAddress: 26,
     deviceDescriptor:
      { bLength: 18,
        bDescriptorType: 1,
        bcdUSB: 512,
        bDeviceClass: 0,
        bDeviceSubClass: 0,
        bDeviceProtocol: 0,
        bMaxPacketSize0: 64,
        idVendor: 6421,
        idProduct: 30583,
        bcdDevice: 39251,
        iManufacturer: 1,
        iProduct: 2,
        iSerialNumber: 29,
        bNumConfigurations: 1 },
     portNumbers: [ 1 ],
     interfaces: [ [Object] ],
     _configDescriptor:
      { bLength: 9,
        bDescriptorType: 2,
        wTotalLength: 32,
        bNumInterfaces: 1,
        bConfigurationValue: 1,
        iConfiguration: 0,
        bmAttributes: 128,
        bMaxPower: 50,
        extra: <Buffer >,
        interfaces: [Object] } },
  descriptor:
   { bLength: 7,
     bDescriptorType: 5,
     bEndpointAddress: 129,
     bmAttributes: 2,
     wMaxPacketSize: 64,
     bInterval: 6,
     bRefresh: 0,
     bSynchAddress: 0,
     extra: <Buffer > },
  address: 129,
  transferType: 2 }
radioOut out 2 1
radioIn in 2 129
[ 0.034498] [00000513] libusb: debug [ep_to_pipeRef] converting ep address 0x01 to pipeRef and interface
[ 0.034513] [00000513] libusb: debug [ep_to_pipeRef] pipe 2 on interface 0 matches
[ 0.034681] [0000230f] libusb: debug [darwin_async_io_callback] an async io operation has completed
[ 0.034715] [00003f03] libusb: debug [handle_events] poll() returned 1
[ 0.034725] [00003f03] libusb: debug [op_handle_events] checking fd 22 with revents = 1
[ 0.034747] [00003f03] libusb: debug [darwin_handle_callback] handling bulk completion with kernel status 0
[ 0.034756] [00003f03] libusb: debug [usbi_handle_transfer_completion] transfer 0x1039007a8 has callback 0x103b51935
[ 0.034775] [00003f03] libusb: debug [libusb_get_next_timeout] no URBs, no timeout!
[ 0.034781] [00003f03] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 0.034786] [00003f03] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
out cb undefined
[ 0.035264] [00000513] libusb: debug [ep_to_pipeRef] converting ep address 0x81 to pipeRef and interface
[ 0.035291] [00000513] libusb: debug [ep_to_pipeRef] pipe 1 on interface 0 matches
      1) should read a packet
[ 2.034030] [00004703] libusb: debug [libusb_release_interface] interface 0
undefined

  0 passing (2s)
  1 failing

  1) CrazyRadio tests Packet tests should read a packet:
     Error: timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.
      at null.<anonymous> (/usr/local/lib/node_modules/mocha/lib/runnable.js:170:19)
      at Timer.listOnTimeout (timers.js:119:15)

That looks right, so I'd guess that the device is simply not sending you a packet within the timeout. You might have to send it a control transfer to enable something, or a command that makes it reply.

authors: adjavaherian kevinmehall

repo: nonolith/node-usb